
Posts: 3822
Joined: 16 Sep 2007, 22:00
KaM Skill Level: Skilled
ICQ: 269127056
Website: http://lewin.hodgman.id.au
Yahoo Messenger: lewinlewinhodgman
Location: Australia
Managing maps and saves downloaded in lobby
This is one of the last things on the todo list before we start beta testing the next release. We need a solution to the current situation where downloading a map/save with the same name as a map/save you already have will require you to overwrite the existing one, and also your maps list fills up with maps you downloaded once but don't actually want to play again.
I think I've come up with a good solution, but I want to see what you all think:
Saves:
As I see it, there's no reason to ever keep a downloaded save. You just want to download it, play it, and after that you don't care. If for some reason you want to keep it, just save it from within the game after it starts (saving in MP only saves on your own computer now, previously it used to save on everyone's computer so you could load without transfering).
Therefore for saves I suggest a downloaded save is always stored under the name "downloaded" (downloaded.sav, downloaded.bas, downloaded.rpl) and if it already exists it overwrites without confirming (since you don't care about the save from the last time you downloaded one in the lobby).
Maps:
We create a new folder for downloaded maps separate to MapsMP. Lets call it MapsDL. When you download a map in the lobby it goes into this folder. If the map name already exists, it renames it to something like "Golden Cliffs (2)" (so the lobby will not need to prompt you about overwriting existing maps since nothing is ever overwritten).
However, the contents of the MapsDL folder is not shown in the regular map lists in game (lobby and map editor), since often you don't care about keeping a map you downloaded from a lobby (fills up your maps list with unwanted maps). Instead, there is a "Manage downloaded maps" menu somewhere which shows you the contents of MapsDL (including a column for the date/time that you downloaded it). Then there is a button you can click to save that downloaded map into your official maps folder (MapsMP), letting you save it as whatever name you want (and letting you overwrite an official map if you choose to). There's also a button to delete maps from the download folder.
This means that you can jump into any lobby and click download without worrying about filling up your maps list with some random map that you don't care about, and you don't have to worry about overwriting an official map if the host has modified Golden Cliffs without changing the name. However, perhaps after playing the map you decide "I want to keep this one", then you can choose to save it.
What do you think? I'd like some feedback before I implement it.
Minor after thought: Rather than saving as "Golden Cliffs (2)" if the map already exists in MapsDL, everything that gets save into MapsDL has its checksum/hash append to it, but the game doesn't show these. So if you browse to MapsDL you see "Golden Cliffs.a73e8f0c" and "Golden Cliffs.8b40cb71", but when you go to "Manage downloaded maps" in-game you will only see two maps with the name "Golden Cliffs", however the date/time that they were downloaded will be different.