1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2025-12-10 09:32:29 +01:00

Updated Increasing of game limits (markdown)

J-PIE-314
2024-04-05 15:25:20 -05:00
parent 436c5402ce
commit 4914b60303

@@ -1,16 +1,8 @@
In November 2021, OpenRCT2 introduced the new save format (NSF) to the develop version, after working on it (on and off) for several years. With version v0.4.0, it also found its way to a release.
After being worked on for several years, OpenRCT2 introduced the new save format (NSF) to a develop version in November 2021. By April of the next year, the NSF found its way to a release with version [v0.4.0](https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.4.0).
This new save format was needed to solve several limitations of the old SV6 format, which was inherited from vanilla RCT2 and used to save parks until that point. (It is still possible to _import_ SV6 parks, and that will never change. The same applies to SV4 saves.)
Up until that point, OpenRCT2 was still using vanilla RCT2's formats for saving games and scenarios: SV6 and SC6 respectively. The old formats had many limits and technical restrictions, as seen below:
Some of the technical restrictions of the SV6 format were:
* Some of the game structures only allow usually one or two bytes for indexing.
* The space allocated for these structures is fixed in the original game memory, so we can't just raise it.
* Changing structures would lead to saved games and scenarios would no longer be compatible with RCT2.
As such, we needed a wholly new save format.
# SV6 limits
Amount | What
Max | What
------ | ----
128 | Ride types
252 | Small scenery types
@@ -33,3 +25,11 @@ Amount | What
2 | Peep spawns
4 | Park entrances
Some of the technical restrictions of the vanilla formats are:
* Some of the game structures only allow one or two bytes for indexing.
* The space allocated for these structures cannot be raised as it is fixed in the original game memory.
* Changing structures makes SV6 saved games and SC6 scenarios incompatible with vanilla RCT2.
As such, to greatly expand the capabilities of OpenRCT2, it was essential to create a wholly new save format.
We created one PARK format to replace both the SV6 and SC6 formats. Due to the aforementioned technical restrictions of the vanilla formats, the new save format is not compatible with vanilla RCT2. (It is still possible to _import_ SV6 saves and SC6 scenarios however, and that will never change. The same applies to SV4 saves from RCT1.) The lastest release using vanilla formats for saves is [v0.3.5.1](https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.3.5.1).