familiarcycle

Coldcut v1.1

1/19/2020

Version 1.1 of Coldcut is now available!

Download from the new landing page: https://lanekelly.github.io/coldcut/.

What's new in v1.1?

Two new games! Both popular forks of the main AIDungeon:

I also added the ability for two games to share models. Both AIDungeon and thadunge2 use the same model, and it doesn't make sense to download it twice. Only one copy of the model is kept on disk, and strategically placed in the right location when the user starts either game. Whichever game is installed second will also have a faster installation time since the model won't need downloading.

Internals

The Coldcut codebase also transformed from a glorified shell script into something with actual structure. The impetus was the need to share code amongst the three installation processes.

Two major components were added.

First was the Installer, which handles the installation UX flow and dispatches control to individual installers to actually install each game.

Second was the ModelManager, which handles game-model compatibility, download, and placement. It holds all the smarts for allowing multiple games to share the same model.

Deduping code is more art than science. The Coldcut codebase, particularly the installers, still have sections of duplicated code. I'm not happy with it, but it's not hurting codebase ergonomics too much yet. At this point, I'm afraid of sacrificing flexibility.

Enjoy!

Try out v1.1 and let me know what you think. I'm fond of the thadunge2 fork with its expanded command palette.

Reach me on Twitter, or file an issue on GitHub.