Deep Kranzky

Kranzky's Dairy

2021-02-25

After a lot of focused work on Gumshoe, I reached a milestone that allowed me to put together a simple, complete game, which is currently playable online. It’s fun, and easy for others to pick up and try. But all this rushing meant that some refactoring and tidying up was in order, and, instead of doing that, I decided to descend the procedural generation rabbit-hole.

I’ve finally come up for air, releasing RnDB into the public domain as evidence that I was actually doing something. Over the coming weekend I’ll finish that off, perhaps recording an explanatory video.

It’s an itch I’ve been longing to scratch for a while, having first has the idea while working on LA Noire at Team Bondi in 2005. So great to get it done and shipped in just a week or so of intensive work.

Beetlefeet, Maxxor, Chr15m and I have established “The Punk Collective”, which is a support group of sorts for solo developers, and our first gathering at a coffee shop mid-week was super productive and inspiring. The aim between now at the next gathering will be to knock off all of the Gumshoe overhaul work, together with back-end integration. Beyond that, I’d love to get back to HackTile, but who knows really?

We also bumped into Shrydar during our meeting, who was grabbing a fluorescent green milkshake, and brought us the sad news that the coffee shop will soon be closing down, which will be the end of an era. We briefly discussed leasing some office space somewhere, as I’d enthused everyone about the Loonshots Nursery idea. We’ll see where that goes.

Shrydar is still coding c64 demos, which is totally awesome to see.

2021-02-09

Have spent the last week or so working on Gumshoe, a GGJ project that I started with Beetlefeet, using the lets-punk project template. Here’s a screenshot.

Gumshoe

It’s destined to be a text-based roguelike detective game. But it’s also a crash course in using Quasar and Vue, and I am back-porting all of the improvements I make to the lets-punk template, and then porting them over to hacktile.

I have established a very comformatble hack-refactor-polish loop, whereby I quickly implement a new feature, then refactor the code to settle it down (as it often means code needs to be dry’ed up or improved elsewhere), and I then polish the UI, adding transitions and animations and making sure it’s responsive and works across all devices.

Have it working as a PWA on Android and iOS, with update notifications too. It’s feeling very slick. We’ve also exited lockdown and kids are back at school, so feeling even more productive.

Aim is to ship Gumshoe to get feeback from friends towards the end of this month, and then transition back to hacktile for most of my time.

2021-02-01

Over the last week I did some tidying-up work on the Hacktile project, and back-ported some changes to the LetsPunk template. I then used that template to start a new project, Gumshoe, for the GGJ. It’s a procedurally-generated detective game, but it is also an excuse for me to learn more about Quasar and Vue, and practise UI coding, so it will benefit other projects too.

Demo here: gumshoe.kranzky.com

I will continue working on this in tandem with HackTile, switching between the two projects to maintain enthusiasm, and back-porting changes to the core framework that I make as I continue to learn.

In other news, we are in hard lockdown for five days. The kids should have started school today, but summer holidays have been extended for a week.

2021-01-21

We have life.

Conway

Apart from being sucked into US politics, I’ve spent the last week integrating PixiJS and Quasar/Vue to come up with a basic interface for viewing Conway’s life, including drawing cells into the screen.

It was finicky getting the 320x192 screen to resize correctly and render crisply, and to handle fullscreen, resizing, desktop and mobile, visibility and so on, but it all Mostly Works (tm) now, so I can focus on functionality.

Next steps are:

  • Add some more UI for editing the playfield
  • Implement an EntityManager and EntityPool
  • Refactor the Engine to use Rules that fire Actions to mutate State
  • Allow these Rules to be edited in the UI

2021-01-15

Finished the gem and updated the template repo, but didn’t go down the path of working on UI as planned. Instead, I started a new repo from the template so I can play around with PixiJS and perhaps build the HackTile prototype more quickly. Got that set up and deploying to hacktile.kranzky.com

2021-01-12

Worked on adding specs and coverage to both repos, and implemented Quasar as planned. Added all models, actions, views, services and workers. Has to switch to another service (ipstack) for doing geo-lookup of IP addresses when processing sessions. Working now on getting all specs passing, and then adding routes and swagger API documentation generation before testing the authentication flow. After that I’ll get working on the template repo to expose all of these features in the UI. Fun!

2021-01-09

Sorted out GitHub actions to get both the Punk! and Let’s Punk! projects to run tests and to ship to production when a release is created from a tag in GitHub.

Project is now available here: punk.kranzky.com

Next steps are:

  • Get specs implemented for both projects
  • Get code coverage report for both projects
  • Implement Quasar in the template project for better UI
  • Implement tenants, users, groups and sessions in the gem project
  • Update the template project to showcase these
  • Record a screencast of how these things work
  • Officially release both repos

Once that is all done, I will use the template repo to reproduce the 2010 POC.