Cæsar's Salads is a game made for Capra's booth at the JavaZone 2025 conference in Norway. Participants played the game and submitted their high scores to win prices at the end of each day. The game is written in Kotlin using the Pulse Engine. This repo contains the full source code with some code cleanup and comments added after the event.
- Build the game with:
gradlew build - Run it with:
java -jar build/libs/caesars-salads-1.0.jar(acceptslevel_1orlevel_2as first argument)
- Create a ZIP file containing a Windows release (.exe file) and bundled JRE with:
gradlew buildWin64Release - Unzip the file and run
caesars-salads-1.0.exe
application-dev.cfgSetsaveDirectoryto the absolute path of the projects resource folder anddevMode = trueinit-dev.pesTo get hot-reloading of assets and shaders working uncomment thewatchFileChangecommand and set the path to the projects resource folder.
- Run the
main()function in the GameMain class. - Press "Start Game" in the main menu, then press the
F2key to open the scene editor. - Here you can edit the level.
- To save the current level and play it, press
F2again. - If the
saveDirectoryis configured correctly, the level files in the scenes folder should now be updated. - To switch level, either press
File -> Open...in the editor and choose thelevel_2.scnfile or go to the main menu, open the console withF1and typelevel_1orlevel_2.
The game was developed and tested on Windows 11. No testing has been done on other platforms, but the engine should run
on Mac and Linux as well. The game's lighting requires a capable GPU to run smoothly. The target system had an
Nvidia RTX 4070 and a 1080p monitor. If the game runs poorly, try lowering the lightTexScale in the Global Illumination
system found in the scene editor. Also, make sure the game is running on a dedicated GPU and not integrated graphics if your
machine has both.
