Isometric Coordinate Algorithms

Just thought I’d share the final functions I settled on for isometric coordinate calculations. Unlike most of the others I’ve seen around the web, these account for: * Origin offset * Tile-based position offset * Varied scale * Any aspect ratio (not just 2:1) def GetScreenPositionForTile(self, map_pos, view, origin, offset, delta=None): if self.projection == Layer.Projections.BirdsEye:…

Civ-Like Game Idea

An idea for a civ-like game has been banging around in my head for a while, and I wanted to put some ideas down. The layered node structure I’ve been working on gave me the idea, as I thought it would apply very well to a game that takes place on multiple levels of scale.…

Layered Board Structure for 2D Games

I’ve found that in more complex 2D games, I end up maintaining several “boards” containing 2D arrays of objects. Generally I have a base board to hold the floor, a terrain board for walls and other structural objects, a feature or object board for smaller items, and an actor board. The feature and actor boards…

Pathfinding algorithms in Demon Keeper

While ZedZed required only simple directional pathfinding (zombies are stupid, so advanced pathfinding is not needed), Demon Keeper required some more advanced techniques to facilitate targeting. I found a great A* tutorial, and some great additional information, which helped me get started, but it wasn’t quite what I needed. The first thing I did was…