2. When I load with/without the src.LoadSave() line, there's a copy of me sitting at the default coords upon login. Upon right clicking I found that there's also a null icon with the name of my key there.
mob/proc
LoadSave()
var/savefile/F = new("Players/[ckey(key)].sav")
Read(F)
src.loc = locate(Sx,Sy,Sz)
world<<output("<center><b>World:</b> <font color=silver>[src]</font> (<font color=silver>[src.key]</font>) is now <font color=green>online</font>!","World")
OnlinePlayers += src
src.HealthHUDUpdate()
src.ChakraHUDUpdate()
src.StaminaHUDUpdate()
src.ExperienceHUDUpdate()
src.LoginStuff()
src.verbs -= typesof("/mob/Logging/verb")
winset(src,"default","is-disabled=false;focus=true")
winset(src,"MainMenu","is-visible=false")
mob/Logging/verb
LoadCharacter()
set hidden = 1
if(fexists("Players/[ckey(key)].sav"))
client.CharacterSelect()
src.LoadSave()
client/proc
SaveCharacter()
var/list/L = Savefiles()
var/savefile/S = new("Players/[ckey(key)].sav")
S["/saves/[mob.name]"] << mob
S["coords"] << locate(mob.x,mob.y,mob.z)
S["verbs"] << mob.verbs
if(!(mob.name in L))
L.Add(mob.name)
S["/saveList"] << L
LoadCharacter(File)
var/list/L = Savefiles()
var/savefile/S = new("Players/[ckey(key)].sav")
var/mob/M
if(!(File in L)) return 0
S["/saves/[File]"] >> M
M.loc = S["coords"]
M.verbs = S["verbs"]
return M
Savefiles()
var/list/L
var/savefile/S = new("Players/[ckey(key)].sav")
S["/saveList"] >> L
if(!L) L=new/list
return L
DeleteCharacter()
var/file = input("Which character would you like to delete?","Delete") in Savefiles()
switch(alert("You are about to permanently delete [file]. Are you sure?","Confirmation","No","Yes"))
if("Yes") fdel(file)
CharacterSelect()
var/file = input("Which character would you like to load?","Load") in Savefiles()
mob = LoadCharacter(file)
And why are you using that piece of code if you don't even know what it does?