luxtorpeda icon indicating copy to clipboard operation
luxtorpeda copied to clipboard

Engine Request - Roller Coster Tycoon based games

Open neuromancer opened this issue 4 years ago • 6 comments

Engines:

  • https://github.com/OpenRCT2/OpenRCT2
  • https://github.com/OpenLoco/OpenLoco

Games:

  • https://store.steampowered.com/app/285310/RollerCoaster_Tycoon_Deluxe/
  • https://store.steampowered.com/app/285330/RollerCoaster_Tycoon_2_Triple_Thrill_Pack/
  • https://store.steampowered.com/app/356430/Chris_Sawyers_Locomotion/

neuromancer avatar Aug 06 '19 18:08 neuromancer

Such a great find! And it should be fairly easy to package as well. I don't own these games (added to the wishlist), but it's not a blocker.

dreamer avatar Aug 06 '19 18:08 dreamer

I can test RollerCoaster Tycoon 2 Triple Thrill Pack, just let me know when there is a package for that.

neuromancer avatar Aug 06 '19 19:08 neuromancer

Someone just gifted me a copy of RollerCoaster Tycoon 2, so I consider the priority of this package bumped up significantly ;)

Putting it on agenda in wiki page; I will try to release initial package ASAP.

dreamer avatar Aug 10 '19 22:08 dreamer

It seems like OpenRCT2 does not support https://store.steampowered.com/app/285310/RollerCoaster_Tycoon_Deluxe/ - is there some other project handling it, or some development branch?

dreamer avatar Aug 10 '19 23:08 dreamer

I found this: https://github.com/OpenRCT2/OpenRCT2/wiki/Loading-RCT1-scenarios-and-data

neuromancer avatar Aug 11 '19 01:08 neuromancer

Packaging OpenRCT2 turned out to be more problematic than expected:

  • several dependencies missing from Steam Runtime (not a problem, but a nuisance) - one of those dependencies (libzip) needs to be patched to work with an ancient version of header files provided by steam runtime
  • dependency on libicu (not a blocker, but a problem - SR provides libicu only in 32-bit version, and even this version is too old for OpenRCT2); we might need to cooperate with OpenRCT2 devs to make this dependency less crucial. Fortunately ICU moved away from SVN to Git recently, so that makes it so much easier to use it libicu as a submodule.
  • C++17 usage throughout the code. Last version that could be compiled with gcc provided in Steam Runtime was 1.2.0

These issues combined convinced me to try a different approach for this package - I am going to to build for Debian stable instead of Steam Runtime and statically link all additional libraries - in theory, we should get a binaries runnable on all modern distros (at least until C++20 will start hitting the packages) - that would leave out only users of old (but still supported) Ubuntu LTS releases.

If anyone is interested in helping, the WIP OpenRCT2 package is here: https://gitlab.com/luxtorpeda/packages/openrct2 (check out additional branches - master is left in unbuildable state until we'll find a solution).

OpenRCT2 devs are very helpful and can be easily reached through gitter chat, so that makes it easier :)

dreamer avatar Aug 13 '19 09:08 dreamer