example.com/path/to/article
000 points · username · 0 hours ago
example.com2 points · 0 comments · 4 hours ago · umvi
I started developing Pragma Twice over 4 years ago after playing Untrusted and loving it. It took so long to develop because I'm not a full time game developer... between my actual job, my kids, and my own self-motivation, it's taken a lot longer than I originally hoped to get this game shipped! It's definitely what you might call a passion project. Anyway, I plan to keep iterating on it, so give it a spin and let me know what you think!
A few technical details/challenges:
- The game was originally written in vanilla JavaScript, but I later converted it to TypeScript (which had an astonishing ROI)
- Uses PixiJS for the graphics and a custom game engine built around Web Workers + SharedArrayBuffer for sandboxing and guarding against things like infinite loops
- The web version is hosted on GitHub Pages, which was challenging because of the SharedArrayBuffer requirement (I use https://github.com/gzuidhof/coi-serviceworker to work around this)
- The linux/windows versions use Electron
- Uses CodeMirror for in-game editor/console
- Levels built with LDtk
- Automated game testing with Puppeteer
Steam: https://store.steampowered.com/app/3528840/Pragma_Twice/
Dev Notes: https://www.bryanpg.com/games/pragma_twice
No comments.