I am making a roguelike card game like dream quest, and I want to improve my dungeon/level save method.
Here's what my levels look like:
I checked dream quest saves but I don't like their method because it uses a simple text file for all the information. it's also really messy, repetitive and not extendable.
I used the format below for the first couple of months:
[ [ "Wall", "Wall", "Room", "Room", "Room", "Merchant", "Room", "Room", "Wall", "Wall", ], [ "Wall", "Wall", ... ] ]
But at the time I did not have multiple enemies, merchants, items. I simply read the file by using an enum which matched the strings used in the save format (item, enemy, merchant etc.) then passed them into an array to create the board.
As I started to create different kinds of enemies, items, and merchants, my current game wouldn't support this. I don't want to create an enum like
enemy1, enemy2, enemy3 ...
How can I improve the scalability & legibility of this save game format, so I don't have to keep adding new enum categories for each variety of content?