Move Guest and Staff pickup to the new game action. Rework the game
action so that only one game action is required for the two game
commands. Remove the final game command with a callback.
1. Check in SignSetStlyeAction query was accidentally inverting value of
wallFound boolean
2. Code in action execution was not looping through the tile elements to find
the correct wall piece like the query did (which meant just fixing 1. would
cause a segfault)
Moved code to find relevant wall tile element into new helper function
banner_get_scrolling_wall_tile_element() in Banner; use in both query and action
to avoid any duplication of search logic.
Code to check if selected edge style is valid was passing the wrong object type
(surface instead of edge) to GetLoadedObject, causing that method to warn that
the selected edge style index was out-of-range.
* Add initial interface.
* Implement move operator in MemoryStream
* Add pod array serialisation traits.
* Add push_back with move semantics to CircularBuffer
* Initial implementation of GameStateSnapshots
* Add GameStateSnapshots to Context.
* Add mp_desync console command.
* Compare sprite data and fill change list.
* Minor changes.
* Proof of concept.
* Calculate offset instead of using offsetof
* Implement game state difference detection
* Update mp_desync console command.
* Fix identification of sprite remove/add.
* Fix crash when only one peep in park when using mp_desync
* Output state differences into user directory desync folder.
* Add desync debugging as an option.
* Add information to network status when a desync report was created.
* Cast to proper type for %llu.
* Update xcode project
* Add more information to the diffed data.
* Remove client-only relevant fields.
* Cleanup.
* Add better name output for misc sprites
* Add srand0 and tick information to the output
* Bump up network version
* Cleanup
* Set desync_debugging to false as default
* Apply suggestions
In OpenRCT2, when vehicles roll backward on a long, flat track piece,
they would eventually change their direction of movement and move
forward instead, after their velocity reached -4095. The acceleration
due to rolling resistance and drag changes to 0 at that point, which
caused the "implicit boost" up to a velocity of ~+32k (close to 2km/h)
to trigger.
The behavior is different in vanilla RCT2, where vehicles just keep on
very slowly rolling backwards.
This commit disables the "implicit forward boost" for vehicles rolling
backward to mimic vanilla RCT2 behavior.
* First pass at action.
* Version 2. Do all the work in Network.cpp
* Mark game command as complete
* Make requested changes
* Increment of network version