mirror of
https://github.com/misternebula/quantum-space-buddies.git
synced 2024-12-29 03:28:26 +00:00
stuff
This commit is contained in:
parent
1c050e07db
commit
fd5231e9b2
162
README.md
162
README.md
@ -4,10 +4,13 @@
|
||||
![GitHub release (latest by date)](https://img.shields.io/github/v/release/misternebula/quantum-space-buddies?style=flat-square)
|
||||
![GitHub Release Date](https://img.shields.io/github/release-date/misternebula/quantum-space-buddies?label=last%20release&style=flat-square)
|
||||
![GitHub all releases](https://img.shields.io/github/downloads/misternebula/quantum-space-buddies/total?style=flat-square)
|
||||
![GitHub release (latest by date)](https://img.shields.io/github/downloads/misternebula/quantum-space-buddies/latest/total?style=flat-square)
|
||||
![GitHub last commit (branch)](https://img.shields.io/github/last-commit/misternebula/quantum-space-buddies/dev?label=last%20commit%20to%20dev&style=flat-square)
|
||||
|
||||
Quantum Space Buddies (QSB) is a multiplayer mod for Outer Wilds. The mod uses the OWML mod loader and customized UNET code (internally referred to as QNet or QuantumUNET) for networking.
|
||||
|
||||
# Spoilers within!
|
||||
|
||||
## License
|
||||
|
||||
QNet code adapted in part from Unity Technologies' UNET.
|
||||
@ -27,98 +30,6 @@ GNU Affero General Public License for more details.
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
<!-- TOC -->
|
||||
|
||||
- [FAQs](#frequently-asked-questions)
|
||||
- [Requirements](#requirements)
|
||||
- [Compatibility with other mods](#compatibility-with-other-mods)
|
||||
- [What is synced?](#what-is-currently-synced)
|
||||
- [Why can't I connect?](#why-cant-i-connect-to-a-server)
|
||||
- [Installation](#installation)
|
||||
- [Easy installation (recommended)](#easy-installation-recommended)
|
||||
- [Manual installation](#manual-installation)
|
||||
- [Playing as a client](#playing-as-a-client)
|
||||
- [Playing as a host](#playing-as-a-host)
|
||||
- [Development Setup](#development-setup)
|
||||
- [Authors and Special Thanks](#authors-and-special-thanks)
|
||||
- [Help / Discuss development / Whatever](#help--discuss-development--whatever)
|
||||
|
||||
<!-- /TOC -->
|
||||
|
||||
## Frequently Asked Questions
|
||||
|
||||
### Requirements
|
||||
- Latest version of OWML.
|
||||
- Latest version of Mod Manager. (If using)
|
||||
- Latest version of Outer Wilds. (Epic version preferred, as Steam version is untestable. **We cannot guarantee QSB, or OWML, will work on cracked/pirated versions of Outer Wilds. Do not come asking us for help when using pirated versions.**)
|
||||
- Fast and stable internet connection, upload and download.
|
||||
- Above minimum Outer Wilds system requirements.
|
||||
- Knowledge on port forwarding and router/network configuration. We can be tech support for the mod, not your router or computer.
|
||||
|
||||
### Compatibility with other mods
|
||||
TL;DR - Don't use any mods with QSB that aren't marked as QSB compatible.
|
||||
|
||||
QSB relies on exact orders of objects found using Resources.FindObjectsOfTypeAll to sync objects, so any mod that changes the hierarchy at all risks breaking QSB. Also, QSB relies on certain game events being called when things happen in-game. Any mod that makes these things happen without calling the correct events will break QSB. Some mods will work fine and have been tested, like CrouchMod. Others may only work partly, like EnableDebugMode and TAICheat.
|
||||
**NomaiVR compatibility is currently not planned and likely will never happen, due to extensive changes needed to both mods for it to work.**
|
||||
|
||||
### What is currently synced?
|
||||
|
||||
| System / Mechanic | Synced? |
|
||||
| :---: | :---: |
|
||||
| Anglerfish | Yes |
|
||||
| Brittle Hollow fragments | Yes |
|
||||
| Campfires | Yes |
|
||||
| Conversations with NPCs | Yes |
|
||||
| Discovering signals/frequencies | Yes |
|
||||
| Eye of the Universe ancient glade | No |
|
||||
| Eye of the Universe instrument hunt | No |
|
||||
| Eye of the Universe jam session | No |
|
||||
| Eye of the Universe quantum lightning | No |
|
||||
| Geysers | Yes |
|
||||
| Items | Yes |
|
||||
| Jellyfish | No |
|
||||
| Marshmallow roasting | Yes |
|
||||
| Meteors | Yes |
|
||||
| Museum statue | Yes |
|
||||
| NPC animations | Yes |
|
||||
| Nomai orbs | Yes |
|
||||
| Nomai shuttle | Kind of |
|
||||
| Orbital Probe Cannon (direction) | No |
|
||||
| Player animation | Yes |
|
||||
| Player position | Yes |
|
||||
| Player tools | Yes |
|
||||
| Projection pools | Yes |
|
||||
| Quantum objects | Yes |
|
||||
| Repairing ship parts | Yes |
|
||||
| Repairing "satellite" parts | No |
|
||||
| Ship | Yes |
|
||||
| Ship log | Yes |
|
||||
| Solanum | Yes |
|
||||
| Timber Hearth satellite | Yes |
|
||||
| Tornadoes | No |
|
||||
|
||||
QSB also changes some mechanics of the base game, to better fit a multiplayer experience. These include :
|
||||
- Adding dialogue boxes above NPC and player heads, so other players can "listen in" on conversations.
|
||||
- Quantum objects check observations from all players and all player probes.
|
||||
- When dying from any cause other than the supernova, the ATP black hole, or the end of the game, the player respawns instantly at Timber Hearth.
|
||||
- While at least one player is in them, players can walk into and out of projection pools at will, and everything will work as expected.
|
||||
- The ship's electrical systems remain on if any player is in the ship.
|
||||
- The ship's hatch functions differently, allowing multiple players to enter/exit without much annoyance.
|
||||
|
||||
### Why can't I connect to a server?
|
||||
#### For the host :
|
||||
- Open port 7777 TCP and UDP on your router. If access the internet through multiple layers of routers, the port will need to be opened on every router.
|
||||
- Open port 7777 TCP and UDP in and out on your firewall. Some AVs might block you editing firewall settings, so check with your specific software.
|
||||
- Make sure you are giving your public IPv4 address to your clients.
|
||||
#### For the client :
|
||||
- Open port 7777 TCP and UDP in and out on your firewall. Some AVs might block you editing firewall settings, so check with your specific software.
|
||||
- Sometimes, it has helped to change your network profile to "private".
|
||||
- Make sure you are putting the right address into the address box.
|
||||
|
||||
If nothing here works, many people have got QSB working through programs such as Hamachi. Also make sure you are not running through a VPN while trying to connect.
|
||||
|
||||
Note - _nebula has no idea how Hamachi works and has never used it, so don't ask them for help setting it up! As said before, we are tech support for the mod. If you cannot connect to someone, or someone cannot connect to you, **that is not QSB's fault.**
|
||||
|
||||
## Installation
|
||||
|
||||
### Easy installation (recommended)
|
||||
@ -137,7 +48,7 @@ Note - _nebula has no idea how Hamachi works and has never used it, so don't ask
|
||||
## Playing as a client
|
||||
|
||||
- Run the game.
|
||||
- On the title/pause menu, select "MULTIPLAYER (CONNECT)".
|
||||
- On the title menu, select "CONNECT TO MULTIPLAYER".
|
||||
- Enter the public IP address of the host.
|
||||
- Hit connect, and pray.
|
||||
|
||||
@ -145,9 +56,66 @@ Note - _nebula has no idea how Hamachi works and has never used it, so don't ask
|
||||
|
||||
- Open port `7777` on your router.
|
||||
- Run the game.
|
||||
- On the title/pause menu, select "MULTIPLAYER (HOST)".
|
||||
- On the pause menu, select "OPEN TO MULTIPLAYER".
|
||||
- Give your external IPv4 address to your clients ([like what you see here](http://whatismyip.host/)).
|
||||
|
||||
## Frequently Asked Questions
|
||||
|
||||
#### Requirements
|
||||
- Latest version of OWML.
|
||||
- Latest version of Mod Manager. (If using)
|
||||
- Latest version of Outer Wilds. (Epic version preferred, as Steam version is untestable. **We cannot guarantee QSB, or OWML, will work on cracked/pirated versions of Outer Wilds. Do not come asking us for help when using pirated versions.**)
|
||||
- Fast and stable internet connection, upload and download.
|
||||
- Above minimum Outer Wilds system requirements.
|
||||
- Knowledge on port forwarding and router/network configuration. We can be tech support for the mod, not your router or computer.
|
||||
|
||||
#### Compatibility with other mods
|
||||
TL;DR - Don't use any mods with QSB that aren't marked as QSB compatible.
|
||||
|
||||
QSB relies on exact orders of objects found using Resources.FindObjectsOfTypeAll to sync objects, so any mod that changes the hierarchy at all risks breaking QSB. Also, QSB relies on certain game events being called when things happen in-game. Any mod that makes these things happen without calling the correct events will break QSB. Some mods will work fine and have been tested, like CrouchMod. Others may only work partly, like EnableDebugMode and TAICheat.
|
||||
|
||||
#### Will you make this compatible with NomaiVR?
|
||||
|
||||
Short answer : No.
|
||||
|
||||
Long answer : Pay me enough money, and maybe I'll consider it.
|
||||
|
||||
#### Why can't a Steam game connect to an Epic game, and vice versa? Do you hate Steam/Epic?
|
||||
|
||||
QSB is incompatible between game vendors because of how it works at a base level. Not because I dislike Steam or Epic.
|
||||
|
||||
Technical explanation : QSB relies on the orders of lists returned by certain Unity methods to be the same on all clients. For Unity objects, these are (probably) ordered by AssetID or InstanceID. These IDs are different across different game builds. The Epic and Steam versions are different builds. Therefore, the lists are ordered differently and everything breaks.
|
||||
|
||||
#### Why can't I connect to a server?
|
||||
##### For the host :
|
||||
- Open port 7777 TCP and UDP on your router. If access the internet through multiple layers of routers, the port will need to be opened on every router.
|
||||
- Open port 7777 TCP and UDP in and out on your firewall. Some AVs might block you editing firewall settings, so check with your specific software.
|
||||
- Make sure you are giving your public IPv4 address to your clients.
|
||||
##### For the client :
|
||||
- Open port 7777 TCP and UDP in and out on your firewall. Some AVs might block you editing firewall settings, so check with your specific software.
|
||||
- Sometimes, it has helped to change your network profile to "private".
|
||||
- Make sure you are putting the right address into the address box.
|
||||
|
||||
If nothing here works, many people have got QSB working through programs such as Hamachi. Also make sure you are not running through a VPN while trying to connect.
|
||||
|
||||
Note - _nebula has no idea how Hamachi works and has never used it, so don't ask them for help setting it up! As said before, we are tech support for the mod. If you cannot connect to someone, or someone cannot connect to you, **that is not QSB's fault.**
|
||||
|
||||
#### Why do I keep getting thrown around the ship?
|
||||
Boring boring physics stuff. The velocity of the ship is synced, as well as the angular velocity. However, this velocity is not also applied to the player. (Or it is sometimes. I don't 100% know.) This means the ship will accelerate, leaving the player "behind". Which makes you fly into the walls alot.
|
||||
So really there's nothing we can do about this. I disabled damage by impact inside the ship, so if you die inside the ship while it is flying then that is a bug.
|
||||
|
||||
#### What's the difference between QSB and Outer Wilds Online?
|
||||
|
||||
QSB is a fully synced game. The other players are actually there in the world, and can affect things. The loop starts/ends at the same time for everyone, and you share ship logs / signal discoveries.
|
||||
|
||||
Outer Wilds Online is not multiplayer. The other players cannot affect your game, and do not contribute to anything in your save. The loop is entirely per-player.
|
||||
|
||||
#### Why would someone make this mod? Seems like a lot of effort for no reward.
|
||||
|
||||
Good question.
|
||||
|
||||
Let me know if you find an answer.
|
||||
|
||||
## Development Setup
|
||||
|
||||
- [Download the Outer Wilds Mod Manager](https://github.com/raicuparta/ow-mod-manager) and install it anywhere you like;
|
||||
@ -196,14 +164,14 @@ It is also recommended to lower all graphics settings to minimum, be in windowed
|
||||
### Authors
|
||||
|
||||
- [\_nebula](https://github.com/misternebula) - Developer of v0.3 onwards
|
||||
- [AmazingAlek](https://github.com/amazingalek) - On-and-off developer and sometimes code tidy-er
|
||||
- [Raicuparta](https://github.com/Raicuparta) - Developer of v0.1 - v0.2
|
||||
- [Will Corby](https://github.com/JohnCorby) - Co-developer of 0.13.0 onwards.
|
||||
- [AmazingAlek](https://github.com/amazingalek) - Developer of v0.1.0 - v0.7.1.
|
||||
- [Raicuparta](https://github.com/Raicuparta) - Developer of v0.1.0 - v0.2.0.
|
||||
|
||||
### Contributers
|
||||
|
||||
- [ShoosGun](https://github.com/ShoosGun)
|
||||
- [Chris Yeninas](https://github.com/PhantomGamers)
|
||||
- [Will Corby](https://github.com/JohnCorby)
|
||||
|
||||
### Special Thanks
|
||||
- Thanks to Logan Ver Hoef for help with the game code.
|
||||
|
Loading…
Reference in New Issue
Block a user