Been awhile since I’ve posted, so here’s where we are…
Work has slowed down as I’ve entered the second half of the game’s content. It was bound to happen, unfortunately.
Part of this is due to the necessity of creating new graphics for maps that only existed as concepts. I also decided, as the maps I was working on had a distinctly “Arabian Nights” feel, that I wanted some more graphics to make the maps more interesting. (low tables, cushions for seats, rugs, etc.)
This had me thinking at one point, why not just dynamically load patterns for maps? Each map would have a tile set and then run-length-encoded map data, possibly followed by elevation in one huge block. There would be a slight delay as it built the character set out but then I could literally have any tile I wanted on any map.
I decided not to do it, at least for now. Creating maps in such a system would be a major pain in the ass.
- You would have to designate what tiles you wanted before you started even drawing it.
- The map editor would be a major pain to write; I may have to resort to writing an external C# tool to do it instead of on the TI itself
- Animated tiles becomes messy and potentially a problem. Right now it’s hard-coded for speed and efficiency
- Compression of maps is nice but not strictly necessary, I got plenty of disk space
Maybe for a sequel I could do something like this but for now I think I can get by without it.
The other slow going work is the quests and story-line, which were broadly written but lacked detail. (Rather like how George Lucas had a rough idea of what was going to happen in the prequels early on but no concrete story.) Now I have to actually sit down and think and fill things in.
Part of this also requires some research on my part. My favorite resources for historical and mythological information are, not surprisingly, RPG game books! Steve Jackson Games produced a huge number of world books for their GURPS system in the 1990’s, and all of them are invaluable sources of information on not just gaming but cultural aspects of the settings.
I try and keep my Progress page updated with the latest numbers, so stay tuned!
Good job fighting off the feature creep! It can be hard to switch from writing technical code to pure creation, don’t get discouraged! You have a bunch of us out here pulling for you!
Thank you! I’ll admit I spent a bit of time trying to figure out a map compression algorithm.
Unfortunately with how my maps are put together, RLE is not efficient. Since I like using two tiles for the same terrain type a lot, that means there isn’t a lot of continuous run-on tiles to compress. An LZW algorithm makes more sense, storing the common sequences in a map and then creating a dictionary out of them. This is a complex enough problem it’s easy to say “If you REALLY want that do it later!”
I’ve made enough room in existing sets to accommodate all the maps I need I think… I’m working on special graphics now.
I have a hybrid plan of sorts as well. I’ve made room in the map headers for “character set overrides” so that I could have a base character set (like “buildings”) and then override it to change out walls, floors, etc. That’s on the back burner for now though, and only if it proves really necessary.