/roton

Cross-platform ZZT and Super ZZT clone in C#.

Primary LanguageC#ISC LicenseISC

Roton (with Lyon frontend)

license

Description

Roton is an emulation of the ZZT and Super ZZT game creation engines written in C#.

Lyon is an application that runs an instance of Roton's emulation and presents it via SDL.

Build instructions

All platforms need the .NET Core SDK. We developed with 2.2, but newer versions of v2.x should work fine.

Windows

Clone the repository. Modern versions of Visual Studio and Jetbrains Rider should work. Restore packages, build and run as usual.

It can also be built and run from the command line. We've included publish.bat for this purpose, which will build and plop out Lyon in the Deploy folder.

macOS and Linux

After cloning the repository, enter the directory with Roton.sln and type dotnet build. The .NET Core SDK will then retrieve all of the packages that it needs to build Lyon and Roton. After the build process completes, type dotnet run --project Lyon to run the newly built project.

IDEs that support .NET Core, such as JetBrains Rider or Visual Studio Code, should be able to manage the build process as long as the SDK is installed.

It can also be built and run from the command line. We've included publish.sh for this purpose, which will build and plop out Lyon in the Deploy folder.

Where can I learn more about ZZT?

  • https://museumofzzt.com/ - a preservation site for all things ZZT. The original games can be found here, plus a massive library of others from the community over the years. Administered by Dr. Dos. (The developers really appreciate this site.)
  • http://zzt.org/fora/ - if you want to immerse yourself in the culture and in-jokes, this forum has preserved everything since 2003. Be warned: it's a bit juvenile in there.

How can I contribute to Roton?

Contributions are accepted differently depending on the nature of the contribution.

ZZT emulation fixes

Odd things found in Roton's emulation methods are very likely a product of the reverse engineering process. Changes can be submitted, but often times it's better to file a bug than to commit code to the emulator core unless you've verified using the provided IDA databases. These databases are stored in the IDBs folder.

Lyon, frontend fixes

Fixes to the frontend or SDL integration are very welcome!

Process

Get in touch with either @SaxxonPike or @Spectere once you've finished your work so it can be approved for inclusion in the master branch.