https://github.com/olithissen/monkeybusiness
A Scumm V5 script extractor to get all quotes from Monkey Island (But should work with all V5 game files)
https://github.com/olithissen/monkeybusiness
java monkey-island scumm-games-parser scummvm
Last synced: 21 days ago
JSON representation
A Scumm V5 script extractor to get all quotes from Monkey Island (But should work with all V5 game files)
- Host: GitHub
- URL: https://github.com/olithissen/monkeybusiness
- Owner: olithissen
- Created: 2020-12-14T16:12:51.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2023-11-16T10:35:55.000Z (over 1 year ago)
- Last Synced: 2025-03-30T15:47:00.667Z (about 2 months ago)
- Topics: java, monkey-island, scumm-games-parser, scummvm
- Language: Java
- Homepage:
- Size: 62.5 KB
- Stars: 4
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Monkey Business
A poor Scumm v5 script extractor ...
The back story to this project is covered in my blog post ["A deep dive into the SCUMM bytecode"](https://tonick.net/p/2021/03/a-deep-dive-into-the-scumm-bytecode/)## Requirements
* Java 21 (Tested with Temurin 21)
* Maven (Tested with Maven 3.9.5)## Build
```
mvn clean test
mvn package
```A successful build will leave you with a `monkeybusiness.jar` in the `target` directory.
### A note on testing
For obvious reasons the project does not contain any game files.
Nontheless testing with them makes a lot of sense.
(And to be honest: You'll need them anyway if you want to do anyting with this project...)
So JUnit assumes a file named `monkey.001` in `src/test/resources` but will skip certain tests if the file is not available.
This will not affect other unit-tests.Furthermore there is a special "test" called `MonkeyBusinessTest#createRegressiveTestFiles`.
It will extract all available opcodes from a provided game file to create special one-opcode-scripts in `src/test/resources/opcodes`.
This can come in handy for testing special opcdes in isolation.## Run
```
java -jar monkeybusiness.jar "path/to/your/monkey.001"
```## Troubleshooting
* **Somehow it's not reading my game files:** Make sure that it's a SCUMM V5 file. Older game versions like the EGA version are SCUMM V4 which is very different from V5.