ID:2199786
 
Code:
        Save_1()
if(!src||!mob) return
Ranking(mob)
if(fexists("Player Saves/[mob.ckey]/Options.sav")) fdel("Player Saves/[mob.ckey]/Options.sav")
var/savefile/csave
var/GML=mob.GMLevel
if(key==world.host) mob.GMLevel=0
csave = new ("Player Saves/[mob.ckey]/Options.sav","-1")
csave["Tutorial"] << mob.Tutorial
csave["Jailed"] << mob.jailed
csave["Jail Time"] << mob.jail_time
csave["Muted"] << mob.muted
csave["Mute Time"] << mob.mute_time
if(key!=world.host) csave["GMLevel"] << mob.GMLevel
csave["AM"] << mob.AdnM
csave["GMLock"] << mob.GMLock
csave["AHM"] << mob.adminhelpmute
csave["MK"] << mob.mkallow
csave["Storage"] << mob.personal_storage
csave["HasStorage"] << mob.has_storage
if(fexists("Player Saves/[mob.ckey]/Save File [mob.save_filec].sav")) fdel("Player Saves/[mob.ckey]/Save File [mob.save_filec].sav")
var/savefile/save
save = new ("Player Saves/[mob.ckey]/Save File [mob.save_filec].sav","-1")
save["Name"] << mob.name
save["mob"] << mob
save["x"] << mob.x
save["y"] << mob.y
save["z"] << mob.z
mob:SetScores()
mob.GMLevel=GML
if(mob.notifysave&&mob.afk_time<5) src<<"<font color=red>Game Saved."


Problem description:For some reason that i cant fucking find out this saving proc isn't working properly. What happens is i join the game a couple moments inthe game and the autosave(which happens every 90 seconds after this) happens and the save proc works just fine, but every single autosave that happens after this doesn't overwrite the first save, which means that the first save of the character is never overwriten by any saving command... Anyone got any idea why?(I'm messing around in the Dark Apocalypse open source, trying to learn some stuff and such)

Tell you what first try to start simple. Then slowly add the other stuff. Lets starts it off with this
atom/movable/var
tmp/cansave = 0
zco = 0
yco = 0
xco = 0

mob/proc
Savenow()
set name ="Save"
if(src.cansave)
var/savefile/F = new("players/[usr.key].sav")
src.xco = src.x
src.yco = src.y
src.zco = src.z
F["Name"] << src.name
Write(F)


Try to slowly add to this.
Also please check and see what happens if you manual save. With what you posted.
You shouldn't be calling Write() manually, it's usually better to do:

F["whatever"] << src


Which handles the saving and gives you control over where in the file the data will go. It also calls Write() so you can add special handling as an override. Calling Read() and Write() manually is rarely recommended.
Oh i see thats interesting.