Sanctimonia: Font Rasterization
Kevin Fishburne has posted a video illustrating the tedium of preparing a font for use in a game.
He has also made the completed font available through the Sanctimonia website.
Oh, and from last week, here’s the video he released demonstrating fauna affinity. It’s a lengthy one, but still interesting in its presentation of the systems he has implemented:
Thanks WtF. I’m 37 as of yesterday (though still awake), so I’ll consider this a b-day present. 🙂 Though the number 37 makes me feel unholy old, I still feel like a kid programming my way through the equivalent of a first kiss. When I was a teenager and inexorably spaghetti-coded myself into an inescapable corner, each day brought an increasing sense of dread as I began to realize I was succumbing to a then unknown enemy. I’ve learned a lot since then, and as with many things I used to be have evolved into my former self’s polar opposite. I’m going to finish this one, basically, and then some.
The first video is an excuse to blast some music I like. The second is a genuine demonstration of fauna’s capabilities, though fauna goal logic still requires minor debugging. As it stands fauna have goal tiers where their current goal may be overridden by a higher one at any time. The pursuit of food takes precedence over the desire to reproduce, for example, while the inability to breathe reigns supreme over things like migrating to a preferred elevation range. The length and color of the lines in the second video represent goal targets and types. A red line means a fauna is hunting what’s on the other end of the line. A blue line means they’re seeking oxygen (water or land depending on whether they have lungs or gills). A gray line means they’re seeking their preferred elevation range. A light blue line is their affinity vector, which is a combination of their like and dislike of multiple players and other fauna which is added to their current goal logic vector.
An example of the latter is two starving fish hunting each other: a duel to satisfy the stomach. If the player (or other fauna) has sufficiently terrorized the two fish and moves between them, they will circumvent the terrorist while still hunting each other. I tested this and witnessed it in-client.
While I haven’t yet implemented the mechanics necessary to create positive affinity (feeding animals), the infrastructure is in place. It will allow players to befriend animals who will then protect them according to their affinity for them. When the target of a fauna’s negative affinity dies the affinity is cleared (neutral), but when the affinity is positive it will be slowly reduced. This will allow animals with a high positive affinity for a dead fauna or player to continue to follow and defend their corpse. This should enable some touching scenarios, as have been demonstrated in the real world (particularly among dogs).
Sorry for the long post, and thanks for the shout-out.