Hello all.
I’m thinking of doing a project where I re-create a game some of you might know; Tibia. For those who don’t, please check out a few screenshots.
http://www.gamershell.com/static/screenshots/13432/295188_full.jpg
I’ve gotten started on the project, and I’m thinking of designing it all from scratch. In order to start really working on the ‘game’ itself, I need 3 things.
1. I need a tile map.
Now, I’ve seen a couple tutorial videos on tile maps, but I’m still not sure what the best way is. In my opinion, I’d just make a series of quads, for example 10,000x10,000 for the first floor, and above that, another floor of the same size. My concern is that loading all of this would be a huge burden on memory or performance, even though all you had is quads with textures and transparency. Should this be a concern? Do i need to use a large plane instead? Or is there a way I can have map of 10k x 10k and only have a player load the 100 tiles closes to them, in each direction, and then load more as they move?
2. I need to edit the map
I need to be able to stack sprites on top of each other to create the classic Tibia map. I was thinking it would be easier to tie this functionality into the game, where I could essentially design the map from within the game. For example, you click on a location, it places a quad, you pick a texture, you pick a stack height (its position above or below other tiles/quads). Or does it make more sense to design a map editor outside of the game?
3. I need to load and save the map
Again, I’m not sure how to do this. Of course I could just create a text file, or an xml file and save values to it, and load them back. For example, at tile 0,0,0 there is a tile with sprite 11345 and on top of that is a tile 11297, etc etc. But I’m worried about performance, and efficiency. Also, how does this feature tie in with the map editor? Could I load and save the map from within the game?
I’d appreciate any help in understanding these concepts. Thank you for taking the time to read.