update some documentation
This commit is contained in:
@@ -63,16 +63,16 @@ newserv supports several versions of PSO. Specifically:
|
||||
*Notes:*
|
||||
1. *DC support has only been tested with the US versions of PSO DC. Other versions probably don't work, but will be easy to add. Please submit a GitHub issue if you have a non-US DC version, and can provide a log from a connection attempt.*
|
||||
2. *This version only supports the modem adapter, which Dolphin does not currently emulate, so it's difficult to test.*
|
||||
3. *Episode 3 players can download quests, join lobbies, create and join games, trade cards, and participate in card auctions. CARD battles are also implemented but are not well-tested. Spectator teams and tournaments are not implemented.*
|
||||
3. *Episode 3 players can download quests, join lobbies, create and join games, trade cards, and participate in card auctions. CARD battles are implemented but are not well-tested. Spectator teams are partially implemented, but are entirely untested. Tournaments are not implemented.*
|
||||
4. *newserv's implementation of PSOX is based on disassembly of the client executable; it has never been tested with a real client and most likely doesn't work.*
|
||||
5. *Some basic features are not implemented in Blue Burst games, so the games are not very playable. A lot of work has to be done to get BB games to a playable state.*
|
||||
6. *Support for PSO Dreamcast Trial Edition is very incomplete and probably never will be complete. This is really just exploring a curiosity that sheds some light on early network engineering done by Sega, not an actual attempt at supporting this version of the game.*
|
||||
|
||||
## Usage
|
||||
|
||||
Currently newserv should build on macOS and Ubuntu. It will likely work on other Linux flavors too. It should work on Windows as well, but I haven't tested it - the build process could be very manual. Cygwin is likely the easiest Windows environment in which to build newserv.
|
||||
Currently newserv should build on macOS and Ubuntu. It will likely work on other Linux flavors too. It should work on Windows as well, but I haven't tested it recently - the build process could be very manual. Cygwin is likely the easiest Windows environment in which to build newserv.
|
||||
|
||||
There is a probably-not-too-old macOS ARM64 release on the newserv GitHub repository. You may need to install libevent manually even if you use this release (run `brew install libevent`).
|
||||
There is a fairly recent macOS ARM64 release on the newserv GitHub repository. You may need to install libevent manually even if you use this release (run `brew install libevent`).
|
||||
|
||||
If you're using an older AMD64 Mac, you're running Linux, or you just want to build newserv yourself, here's what you do:
|
||||
1. Make sure you have CMake and libevent installed. (`brew install cmake libevent` on macOS, `sudo apt-get install cmake libevent-dev` on most Linuxes)
|
||||
|
||||
@@ -31,7 +31,7 @@ enum BehaviorFlag {
|
||||
ENABLE_STATUS_MESSAGES = 0x00000010,
|
||||
LOAD_CARD_TEXT = 0x00000020,
|
||||
ENABLE_RECORDING = 0x00000040,
|
||||
ENABLE_MASKING = 0x00000080,
|
||||
DISABLE_MASKING = 0x00000080,
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -149,7 +149,7 @@ void Server::send(const void* data, size_t size) const {
|
||||
}
|
||||
|
||||
string masked_data;
|
||||
if (this->base()->data_index->behavior_flags & BehaviorFlag::ENABLE_MASKING) {
|
||||
if (!(this->base()->data_index->behavior_flags & BehaviorFlag::DISABLE_MASKING)) {
|
||||
if (size >= 8) {
|
||||
masked_data.assign(reinterpret_cast<const char*>(data), size);
|
||||
uint8_t mask_key = (random_object<uint32_t>() % 0xFF) + 1;
|
||||
|
||||
@@ -253,18 +253,18 @@
|
||||
// by bitwise-OR'ing together the following values:
|
||||
// 0x00000001 => Disable deck verification entirely
|
||||
// 0x00000002 => Disable owned card count check during deck verification (this
|
||||
// enables the use of the non-saveable Have All Cards code, but
|
||||
// retains all the other validity checks)
|
||||
// 0x00000004 => Allow card with the D1 and D2 ranks to be used in battle
|
||||
// enables the use of the non-saveable Have All Cards Action
|
||||
// Replay code, but retains all the other validity checks)
|
||||
// 0x00000004 => Allow cards with the D1 and D2 ranks to be used in battle
|
||||
// 0x00000008 => Disable overall and per-phase battle time limits, regardless
|
||||
// of the options chosen during battle setup
|
||||
// of the values chosen during battle rules setup
|
||||
// 0x00000010 => Enable debug messages in Episode 3 games and battles
|
||||
// 0x00000020 => Load card text as well as card definitions (has no behavioral
|
||||
// effects; this flag exists to be used internally when the
|
||||
// --show-ep3-data option is given)
|
||||
// effects in games; this flag exists to be used internally when
|
||||
// the --show-ep3-data option is given)
|
||||
// 0x00000040 => Enable battle recording (after a battle, players can save the
|
||||
// recording with the $saverec <filename> command)
|
||||
// 0x00000080 => Enable command masking during battles
|
||||
// 0x00000080 => Disable command masking during battles
|
||||
"Episode3BehaviorFlags": 0x00000002,
|
||||
|
||||
// Episode 3 card auction configuration. CardAuctionPoints specifies how many
|
||||
|
||||
Reference in New Issue
Block a user