Advertisement Jump to content
Sign in to follow this  

Map Editor / Tools Programming

This topic is 4906 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Anyone have any good links on developing tools for tile-based games [map editors, etc]? Preferably something in c# or another .NET language. I was also thinking of maybe using XML to store map data but haven't really heard of people doing it that way before so if someone had thoughts on that subject as well I would be happy to hear about it. thanks in advance! [not sure if I should have this in Beginner's or this forum?]

Share this post

Link to post
Share on other sites

I also didnt find a level editor to my liking so i decided to write one. If you plan it in advance and you can get a simple one done very fast in dotNET.
my Level Editor is not yet complete,
it is meant for a platform game (but i guess can edit any square tile levels).
it saves the map to an XML and is written in C#...
exactly what you asked for... however as said its not yet finished :(
it will take me at least a month or two (or three... im working on it with like 0.1% of my time...)

as for the xml, im not sure its such an advantage since the core of the level is the layers data (2d array of tile indexs, 0xFFFFFFFF for empty cell) and it is too ugly to be understood/edited by human hand and to my understanding that is one of the big advantages of xml. I chose XML because i didnt want to set a fixed format and wanted compatibility (i.e. editor v0.3 can load files from v0.2 even though back then layers didnt have alpha). A level format that has the layer data in some sort of one char per tile (row per line) will be much easier to read and edit. I may rewrite the save/load for another format.

features (so far):
- multiple layers (each moving at its own speed for fake 3d platform style)
- each tile type can be rotated/flipped, alpha/color filtered
- each layer can also be with alpha/color filter which applies to entire layer (on top of the tile filters)
- save/load to xml files (tileset+level data in same file atm)
- "rips" tiles from bitmap
- pencil/box editing tools

missing features:
- copy-paste (editing large maps without it is too hard!)
- more editing tools (flood fill? line?)
- sprite inserting
- script inserting
- undo/redo (again, without it editing is hard...)

im now working on an SDL/OpenGL based engine to load the maps that the editor creates. But since im a student and addicted to many computer games, programming progresses very slowly...

why did i post this? dont know! i guess im excited i finally started programming a game (after years of wanting to and researching) i wanted to tell someone my progress (and no one around me is intereseted)


[Edited by - Iftah on August 15, 2005 6:12:10 PM]

Share this post

Link to post
Share on other sites
Sorry, never found any articles on building tools in C#, but I also wrote my own in C# w/ MDX

map ed. screenshot

supports 3 layers of 64x64 tga tiles, tile rotations, tile flips, alpha blending, texture browser, grid, resize, views (turning views of layers on/off), tile fill, tile prefabs, and color masking to highlight only tiles on the current layer being edited. Also supports lights (only seen as icons), point entities, and block entities.

maps are saved to xml, and then a compiler does lighting calculations and saves to a binary format.

I also wrote a tool for particle fx (also c# w/ MDX)

particle fx editor screenshot

Unfortunately, these tools are somewhat heavily tied to the needs of the engine (64x64 tiles, must use tga files, must use quake 2 pak files, tiles must be described in XML tile definition files, etc.). I was planning on doing generic versions which would be more friendly with other engines, but I haven't gotten around to it.

Anyway, if your interested, I could provide you with executables and/or source code (code is very messy, both these tools were done at a time when I was still learning many of the fundamentals of C#). Also if you need any help or have any questions, just ask.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!