Manic coder on a mission: FlatRedBall game engine, Tiled Map Editor, and you.

I’ve been busy. Like a manic coder on a mission busy, and I love it. I haven’t been this driven about anything in a long time, and I am loving every second of it.

About a month ago, Joel Martinez introduced me to FlatRedBall. I posted a quick blog post about it, but I did not do justice to this amazing engine. Not only is the engine the best thing since sliced bread (I will never do game development without it ever again), but the people there are AMAZING.

Let’s talk for a second about Victor Chelaru. Where do I begin? He created FlatRedBall on a philosphy. Basically, he was touched by the thorough, selfless help of a random stranger on the forums named Teej, and he uses that experience to drive development efforts at FRB. I am seriously impressed with his work ethic and desire to help others. That’s enough about Vic and FRB, though. As I said, I have been busy.

I have been working on an X-Com type game for a few months now, mostly prior to finding out about FRB. I had an extremely simple prototype that was unbelievably complex under the covers when I wrote it straight up with XNA. FlatRedBall nearly trivializes the work I did there, but that is a good thing. With the FRB engine at my disposal, I can just whip up an isometric tile map, slap a NodeNetwork on it, and have a sprite pathfinding to its heart’s content in 2.5d. Well, now I can, but there was a major piece missing when I arrived to all the FRB goodness.

So I filled the gap. I wrote a Tiled Map Editor to FlatRedBall toolkit which I am now calling TMXGlue.

Basically what this tool does is plug right into Glue (I will write about glue eventually I’m sure) and allow you to add tiled maps directly to your game and have them displaying immediately. Not only is there support for orthogonal and isometric maps and tilesets, but both types work with object layers in TMX for collision and node network generation, generating NodeNetwork and ShapeCollection which you can use in game for A* pathfinding and collisions however you want.

I am constantly working to improve this system, so please leave comments here if you have anything you would like to contribute, see added, or if you find anything completely broken. You can also drop me a note on twitter if you prefer to.