JOY OF PROGRAMMING – Software Engineering Simulator
Table of Contents
About This Game #
JOY OF PROGRAMMING – Software Engineering Simulator is an immersive 3D programming puzzle game about automating and controlling realistic machines, robots, drones and more using real Python code. Build actual coding skills while playing, solve exciting bite-sized programming challenges and progress to unlock new programming features and improved machinery. Prior programming knowledge recommended.Automate logistics to quickly transport items Stabilize robots with control feedback (PIDs) Write navigation code for cars Crack passwords with brute-force Solve classical algorithms and data-structures Accurately control sniper rifles Use image processing to count coins Apply computer vision to guide missiles Get it now and dive into your programming adventure!
A Fair Warning #
JOY OF PROGRAMMING is not a casual game. In fact, it is one of the most difficult games on Steam. It offers the real programming experience: Lots of thinking, hard work, gathering information, debugging and some frustrations. But you will also learn new skills, become a better developer, and most of all enjoy that sweet sensation of finally cracking a hard problem.
Features #
- Tutorial levels to get you started with the programming concepts in JOY OF PROGRAMMING
- Create your own puzzles with the included level-editor
- Find collectible factsheets with interesting computer-science tidbits
- Earn stars by completing levels and use them to unlock new programming features
- Work towards achieving many different certificates for completing all levels in one category
- Real programming: No pseudo code, no imaginary language. Instead, fully functional python code with your favourite packages like numpy, pandas, scipy, pillow, sklearn and more. Some basic prior programming knowledge (in Python or otherwise) and a strong interested in programming is recommended.
- In-game IDE: A codemirror based in-game Python IDE offers syntax highlighting, auto-completion, docstring tooltips, debugging, auto-indentation, code-folding, copy/paste and undo/redo. Advanced users can also opt to use external IDEs like VSCode or PyCharm instead.
- Realistic challenges: From robotics to abstract algorithms and creative coding – the full breadth and depth of computer-science awaits.
- Open puzzle design: Each level has many different valid solutions.
- Clear goals: Each level has one mandatory goal and up to three optional goals.
- Immediate feedback: Never wonder whether your code is working. Get immediate, incremental feedback on each good (or bad) step towards a working solution.
- Performance metrics: Compare your best solution anonymously with others with respect to speed, memory usage and code length.
- No hard locks: Never get stuck on a single level, there are always several open challenges available.
- Optionally submit your solution and your code to the leaderboards and share it with the world.
Designed By A Computer Science Professor #
The game is developed primarily by a single developer, who also happens to be a computer science professor. An accompanying Youtube series by the developer is in the works to showcase example solutions for each level and walk through them step-by-step. Explaining the reasoning and programming principles along the way to help beginners get into the game and learn actual programming. The series will also feature selected community solutions to discuss other approaches and potential improvements.
Level Editor and Modding Support #
An innovative Python based level editor allows creating and scripting new challenges, which can also be shared via the game’s Workshop. Most current levels and all future levels included with the game are created with this editor. Support for importing custom assets like 3d objects, sound files, videos and images is planned to be included by the end of Early Access.Happy Coding and get JOY OF PROGRAMMING now!