Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rprouse/mainframemayhem
https://github.com/rprouse/mainframemayhem
Last synced: 24 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/rprouse/mainframemayhem
- Owner: rprouse
- License: mit
- Created: 2023-02-05T22:21:52.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-24T14:23:55.000Z (8 months ago)
- Last Synced: 2024-04-14T11:53:12.946Z (7 months ago)
- Language: C
- Size: 350 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Mainframe Mayhem
## Requirements
1. [GDBK 2020](https://github.com/gbdk-2020/gbdk-2020) SDK. See the [Docs](https://gbdk-2020.github.io/gbdk-2020/docs/api/docs_releases.html).
2. [Make](https://gnuwin32.sourceforge.net/packages/make.htm) for Windows in the path.
3. [.NET 7](https://dotnet.microsoft.com/) to parse the level files.## Parselevels
This .NET program takes levels in a simple TXT format and converts them
to C code to add into the `levels.h` file. The level files are in the `res\levels`
directory.This program looks at each level and skips levels that are bigger than 18x20 squares.
If a level is taller than it is wide, it rotates the level to fit better on the
Gameboy screen. It then centers the level if it is smaller than 18x20.Lastly, it compresses the levels using a simple run length encoding (RLE) format
inspired by the the Sokoban XSB format, but modified to take fewer bytes of memory
on the Gameboy.Running the batch file `Generatelevels.cmd` will regenerate the levels.
## Credits
The game uses levels created by [David W. Skinner](http://www.abelmartin.com/rj/sokobanJS/Skinner/David%20W.%20Skinner%20-%20Sokoban.htm)
and Yoshio Murase. This game is under the [MIT License](LICENSE).