Writing my own dialogue scripting language

Magicore Anomala is an Amiga game I'm working on. Watch the newest gameplay demo in full: Link

I made Doki Doki Literature Club using Ren'Py, a Python-based visual novel engine that has some staggering capabilities. But thinking about it, there are tons of games with visual novel-like dialogue features—maybe even the majority of them at this point.

How is dialogue implemented in these games? Do most of them use existing dialogue scripting libraries, or are they more often spinning up their own solution? I have no idea, but given the extremely specific features and limitations of Magicore, I had no choice but to create my entire stack from scratch (like literally everything else in the game engine).

[more...]

Shattering the Magicore 8-color limit

Watch the newest gameplay demo of Magicore Anomala: Link

The technology behind Magicore Anomala requires the background to be 8 colors or less, although any Amiga fan will know that the system is capable of a rather incredible color range. As with many classic systems, Amiga's hardware limitations are extremely fascinating and follow rules that can be cleverly bent.

[more...]

Decoding Impossible Mission 2 for Amiga

Impossible Mission (legally distinct from its extremely obvious permutation) was one of the more popular games on Commodore 64, and I think it still has its charm. I think the mechanics like basing floor detection on the position of your foot, and the unadjustable front-flip jump, make for an interesting game design study.

I missed out on the famous original and grew up with Impossible Mission II on Amiga, released in 1988. The gameplay is quite similar, and I think it's a bit of a hidden gem, especially given how few people in my demographic (millenials in North America) have heard of Impossible Mission or have even played a game on C64 or Amiga.

So, as any reasonable enjoyer of a video game does, I started to reverse engineer it.

[more...]

Hot loading code on Amiga, the dumb way

In my opinion, an understated programming skill—one that only comes with experience—is knowing when to be "good practice", when to be clever, and when to be dumb. Today, we're being dumb.

[more...]

Coding the anime "woosh" screen on Amiga

The Amiga was a spectacle of graphics and sound when it debuted in 1985. While it can trivially display colorful images like in the above example, doing so in the context of a game engine presents a lot of unique challenges.

[more...]