The game timer, for instance, has a VCR with which it prints text to on each tick of the game clock.Īnother component in the system, the RenderingPipeline, handles printing each game object to the main output canvas. Game objects (such as the score or time displays) each have their own personal VCR, dedicated to drawing whatever is needed for that instance. Essentially, VCR’s are responsible for creating off-screen canvas instances and holding them in memory. The VCR (or Virtual Canvas Renderer) is a primary component in the game engine. At the end of the project, the only third-party package used in the code was for a psuedo-random number generator, which was pretty cool. Prior to this game, I had done a bit of canvas work (see: demos from other blog posts), so I felt prepared for the most part. I wanted to build the entire experience within canvas, simply more as a challenge to myself than anything. The ‘engine’ for the game was written from scratch in TypeScript, which was a fun challenge to tackle. I’d consider this more of a tertiary mechanic as it’s not super integral to the game, but keeps things interesting for point-centric players. Using the same selected peg for multiple jumps results in a point bonus for each consecutive jump made with that peg. This mechanic aids in clearing the board, but at about half the value of clearing the area ‘manually’.Ĭheckers bonus. When a user jumps an explosive peg, the immediate surrounding area is (mostly) destroyed. This affects gameplay in that players now have a greater challenge in clearing the board, but also a greater opportunity for points.Įxploding pegs. Some pegs require multiple jumps to be removed from the board. These mechanics work with helping/hindering board clearing and affording the user more points, which in turn leads the user to play differently than they might play normal peg solitaire. Outside of the standard peg solitaire rules outlined above and the ‘peg jump’ mechanic, I added a handful of secondary mechanics to the game. The game itself is enjoyable, too, and I feel I made the right choice in secondary mechanics. Given the time constraint of three days, and self-assigning the task of building the game from scratch, I’m very happy with the result! I tackled a lot of technical challenges that probably weren’t really meant to be touched on, but ultimately it was a very fulfilling learning experience.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |