JOY OF PROGRAMMING - Software Engineering Simulator

Use real Python code to automate machines, robots, drones and more: Program self-driving vehicles; crack passwords; apply machine learning; automate logistics; use image processing to guide missiles. Gain real coding skills and solve exciting bite-sized programming challenges.

Thanks to everyone in the community for their help in identifying and squashing bugs and suggesting crucial gameplay and QoL improvements. Today's update brings the game to version 0.5.4. You can find the full changelog below, two highlights are: [img]{STEAM_CLAN_IMAGE}/43325028/7949fc8b08e383ab2aabed92baff4ee46c9a29f9.gif[/img] Fully draggable and resizable code window (though remember using VSCode is also always an option) [img]{STEAM_CLAN_IMAGE}/43325028/cfc95e39ad610bde71a57c9451ac9d443ef784a3.jpg[/img] Customizable controls, with mouse sensitivity, mouse lock and mouse invert. Remember, if you'd like to receive these updates 1-2 days early, I invite you to enable the "pre_release" beta channel in your Steam client. To do that, simply right click JOY OF PROGRAMMING, select Properties, then Betas and select pre_release: [url={STEAM_CLAN_IMAGE}/43325028/b5ad7af2c5e18e07ca5e9d27645356b034fde1d5.png][img]{STEAM_CLAN_IMAGE}/43325028/15b6c6edc2fab83fdcc0d60b17357798361d4ce1.png[/img][/url] Also I'd like to invite you to the game's official Discord channel, where a lot of the discussion about future developments and the current programming challenges happen. [url=https://discord.com/invite/2ZrdzkNeBP]https://discord.com/invite/2ZrdzkNeBP[/url] [h2]Changelog v0.5.4[/h2] [code] - Added mouse invert, mouse sensitivity and mouse lock settings - Added user key customization for most actions - Added draggable and resizable code window. Size and position is saved persistently. - Holding Left ALT now highlights all entities in the current level. - Added 1 new way to quit the game to the house level - Added rate limit warnings if getters or setters are called repeatedly without sleep() or outside SimEnv.run_main() - Added get_is_moving() to AirliftCrane - Added small indicator cube to center of TriggerZone - Improved log window: Will not minimize anymore while mouse hovering. Added manual minimize toggle as well. - Improved workshop file handling. Changing title is now possible. - Improved workshop subscription handling. Files should now download/update while the game is running. - Improved stability of level editor to not lose level code on testing. Removed line highlighting during level construction. - Fixed leaderboard top10, top3, top2, top1 achievements not being awarded correctly (would only award highest instead of all) - Fixed histogram percentile achievements not being awarded correctly (would only award highest instead of all) - Fixed not being able to import downloaded leaderboard scripts - Fixed leaderboards showing a download script button even if there is no script attached - Fixed rotation_limits not being clamped (on MovablePlatform for example) - Fixed rare null pointer exception in first person mode - Fixed PyramidPuzzle level getting stuck at 75% - Fixed timing of Goals display (would sometimes not update on level complete) - Fixed RobotArm not resetting to its initial position - Fixed potential hang-up of code editor when importing modules - Fixed ESC key not working properly when viewing certificates - Fixed int getters not reading negative values (e.g. RaceCar get_gear) [/code] Note: A new weekly challenge is planned to be available on Sunday. Happy Coding!