ID:270120
 
Ppl, i want to know, how i make a load system that loads the same savefile on every server, for dont have players losing levels...
For that, you'll want to do client-side saving(where each client has a savefile, usually of their own characters or some such). Look up Import() and Export().

Hiead
In response to Hiead
Hiead wrote:
For that, you'll want to do client-side saving(where each client has a savefile, usually of their own characters or some such). Look up Import() and Export().

Hiead

wow, so fast...
In response to Pharaoh Atem
I must've coincidentally refreshed the browser a minute after you posted. =P

Hiead
In response to Hiead
Hiead wrote:
I must've coincidentally refreshed the browser a minute after you posted. =P

Hiead
mob
verb
Save()
var/savefile/F = new(ckey)
F["last_x"] << x//\__
F["last_y"] << y//This is used to access an element of a list.
F["last_z"] << z///---
Write(F)//Saves the vars.
usr.client.Export(F)
usr<<"<B>Your progress has been saved.</B>"


mob
proc
Load2()
if(usr.Level >= 1)
var/client_file = Import()
if(client_file)
var/savefile/F = new(client_file)//reads and loads your name
Read(F)//reads the saved vars that you have
var/last_x//\__
var/last_y//This part of the code loads your last location.
var/last_z///---
F["last_x"] >> last_x
F["last_y"] >> last_y
F["last_z"] >> last_z
if(usr.ZS==1)
src.client.screen += list(new /obj/HUD/Zero)
usr.verbs += /mob/Symbol_Skills/Zero/verb/Ultimate_Saber
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.CS==1)
src.client.screen += list(new /obj/HUD/Colonel)
usr.verbs += /mob/Symbol_Skills/Colonel/verb/ScreenDivide
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.DS==1)
src.client.screen += list(new /obj/HUD/Desert)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.ShS==1)
src.client.screen += list(new /obj/HUD/Shadow)
usr.verbs += /mob/Symbol_Skills/Shadowman/verb/Multi_Shuriken
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.DuoS==1)
src.client.screen += list(new /obj/HUD/Duo)
usr.verbs += /mob/Symbol_Skills/Duo/verb/PowerBoost
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.FS==1)
src.client.screen += list(new /obj/HUD/Fire)
usr.verbs += /mob/Symbol_Skills/Fire/verb/FireShot
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.GS==1)
src.client.screen += list(new /obj/HUD/Glyde)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.GutS==1)
src.client.screen += list(new /obj/HUD/Guts)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.JS==1)
src.client.screen += list(new /obj/HUD/Junk)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.KS==1)
src.client.screen += list(new /obj/HUD/Knight)
usr.verbs += /mob/Symbol_Skills/KnightMan/verb/Royal_Wrecking_Ball
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.MagS==1)
src.client.screen += list(new /obj/HUD/Magnet)
usr.verbs += /mob/Symbol_Skills/MagnetMan/verb/Magnet_Missile
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.MedS==1)
src.client.screen += list(new /obj/HUD/Meddy)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.MegS==1)
src.client.screen += list(new /obj/HUD/Mega)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.MegDS==1)
src.client.screen += list(new /obj/HUD/MegaDS)
usr.verbs += /mob/Symbol_Skills/MegaDS/verb/DarkShot
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.MS==1)
src.client.screen += list(new /obj/HUD/Metal)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.NS==1)
src.client.screen += list(new /obj/HUD/Normal)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.NumS==1)
src.client.screen += list(new /obj/HUD/Number)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.PS==1)
src.client.screen += list(new /obj/HUD/Proto)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.RS==1)
src.client.screen += list(new /obj/HUD/Roll)
usr.verbs += /mob/Symbol_Skills/Roll/verb/Roll_Arrow
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.SS==1)
src.client.screen += list(new /obj/HUD/Search)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.SeS==1)
src.client.screen += list(new /obj/HUD/Serenade)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.SkS==1)
src.client.screen += list(new /obj/HUD/Skull)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.SwS==1)
src.client.screen += list(new /obj/HUD/Sword)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.WS==1)
src.client.screen += list(new /obj/HUD/Wood)
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(usr.Greiga==1)
src.client.screen += list(new /obj/HUD/Greiga)
usr.verbs += /mob/Beast_Out/Greiga/verb/Slash
if(usr.Falzer==1)
src.client.screen += list(new /obj/HUD/Falzer)
usr.verbs += /mob/Beast_Out/Falzer/verb/Fly
if(usr.GuildOfficer == 1) // if the user is an officer
usr.verbs += typesof(/mob/GuildOfficerCommands/verb) //add all the guild officer commands
if(usr.InGuild == 1) // if the user is in a guild
usr.verbs += typesof(/mob/GuildCommands/verb) // add the necessary verbs
if(usr.key == "Pharaoh Atem")
usr.verbs += typesof(/obj/GM_Pharaoh_Atem/verb)
usr.verbs += typesof(/obj/Volcano_Gigachip/verb)
usr.verbs += typesof(/obj/Summoner/verb)
usr.AdminXX = 1
usr.pett = 1
if(usr.key == "JeanPana")
usr.verbs += typesof(/obj/GM_Jean_Pana/verb)
usr.verbs += typesof(/obj/Twister_Gigachip/verb)
usr.verbs += typesof(/obj/Summoner/verb)
usr.AdminXX = 1
usr.pett = 1
if(usr.key == "Supreme Zero")
usr.verbs += typesof(/obj/GM_Supreme_Zero/verb)
usr.verbs += typesof(/obj/SoulDestroyer_Gigachip/verb)
usr.verbs += typesof(/obj/Summoner/verb)
usr.AdminXX = 1
usr.pett = 1
if(usr.key == "Hatijack")
usr.verbs += typesof(/obj/GM_Hatijack/verb)
usr.verbs += typesof(/obj/Gaia_Gigachip/verb)
usr.verbs += typesof(/obj/Summoner/verb)
usr.AdminXX = 1
usr.pett = 1
if(usr.Django == 1)
usr.verbs += /mob/Icon_verb/verb/Django_Icon
if(usr.DarkSoul == 1)
usr.verbs += /mob/Icon_verb/verb/DarkProtoman_Icon
if(usr.TALEFING == 1)
usr.verbs += /mob/Combos/verb/Talefing
if(usr.LIFESABER == 1)
usr.verbs += /mob/Combos/verb/LifeSaber
if(usr.MULTIGUN == 1)
usr.verbs += /mob/Combos/verb/Multigun
if(usr.NVchip == 1)
usr.verbs += typesof(/obj/Neovari_chip/verb)
if(usr.LSchip == 1)
usr.verbs += typesof(/obj/LifeSword_chip/verb)
if(usr.ZCchip == 1)
usr.verbs += typesof(/obj/Zetacann_chip/verb)
if(usr.BXchip == 1)
usr.verbs += typesof(/obj/Boxer_chip/verb)
usr.check()
loc = locate(last_x, last_y, last_z)
usr << "<B>[usr.key] Savefile loaded sucessfull</B>"//says they have logged in
usr.CreateName()<dm>

errors:
simple1.dm:567:error:Import:undefined proc


Whats wrong?
In response to Pharaoh Atem
Pharaoh Atem wrote:
Whats wrong?

Good gads, everything. You put usr in a proc. You're duplicating the same code in a zillion places. You have type paths set up as BG, BG2, BG3, etc. when you should only be creating a single object and letting it create all the others. You're using if(var==1) to test a true/false value instead of if(var). You have a zillion different true/false vars (CS, ZS, DS, ShS, etc.) that are obviously mutually exclusive and so should be a single var with different possible values.

Before you even attempt to work with client-side savefiles, you need to fix the above.

Lummox JR
In response to Lummox JR
Lummox JR wrote:
Pharaoh Atem wrote:
Whats wrong?

Good gads, everything. You put usr in a proc. You're duplicating the same code in a zillion places. You have type paths set up as BG, BG2, BG3, etc. when you should only be creating a single object and letting it create all the others. You're using if(var==1) to test a true/false value instead of if(var). You have a zillion different true/false vars (CS, ZS, DS, ShS, etc.) that are obviously mutually exclusive and so should be a single var with different possible values.

Before you even attempt to work with client-side savefiles, you need to fix the above.

Lummox JR

omg, usr in proc!
but why Import() its an undefined proc?
In response to Pharaoh Atem
Pharaoh Atem wrote:
but why Import() its an undefined proc?

Well, I'd look for it, but I'd rather not spend my night hunting for a line of code mixed into a jungle of repetitious code. =/

After you fix all of the things Lummox pointed out, post your new code (mark with a comment where you want me to look for Import(), if it's still giving you problems), and I'll try to look into it.

Hiead
In response to Pharaoh Atem
Pharaoh Atem wrote:
omg, usr in proc!
but why Import() its an undefined proc?

It's not undefined; it just doesn't belong to your mob. Mind you, Hiead said you should look up Import(), not simply plop it into your code at random.

As for usr in the proc, that's a huge problem but it's actually not the worst problem. The worst problem is the organizational one I mentioned, with umpteen kazillion different vars like DS, CS, ZS, ShS, QS, NthS, and BS. If only one of those is true at a time, then obviously a single var could replace them all, with a different number--or string--for each setting. You need to fix these design flaws before you get your save system working, or else you'll end up having to wipe everything when the collapse of your code inevitably forces you to change it later.

So first, deal with the problems at hand. Then look up Import() and Export(). And by "look up" I mean, as Hiead meant, you should look at Import() and Export() in the reference and examine each one, at which point you will find what you need to handle client-side savefiles. But don't do that search until you fix the rest of the problem, or you'll be loading and saving gibberish.

Lummox JR
In response to Hiead
Hiead wrote:
Pharaoh Atem wrote:
but why Import() its an undefined proc?

Well, I'd look for it, but I'd rather not spend my night hunting for a line of code mixed into a jungle of repetitious code. =/

After you fix all of the things Lummox pointed out, post your new code (mark with a comment where you want me to look for Import(), if it's still giving you problems), and I'll try to look into it.

Hiead
mob
verb
Load()
set category = "Commands"
if(src.Level >= 8)
var/client_file = usr.client.Import()
if(client_file)
var/savefile/F = new(client_file)//reads and loads your name
Read(F)//reads the saved vars that you have
var/last_x//\__
var/last_y//This part of the code loads your last location.
var/last_z///---
F["last_x"] >> last_x
F["last_y"] >> last_y
F["last_z"] >> last_z
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(src.ZS==1)
src.client.screen += list(new /obj/HUD/Zero)
src.verbs += /mob/Symbol_Skills/Zero/verb/Ultimate_Saber
if(src.CS==1)
src.client.screen += list(new /obj/HUD/Colonel)
src.verbs += /mob/Symbol_Skills/Colonel/verb/ScreenDivide
if(src.DS==1)
src.client.screen += list(new /obj/HUD/Desert)
if(src.ShS==1)
src.client.screen += list(new /obj/HUD/Shadow)
src.verbs += /mob/Symbol_Skills/Shadowman/verb/Multi_Shuriken
if(src.DuoS==1)
src.client.screen += list(new /obj/HUD/Duo)
src.verbs += /mob/Symbol_Skills/Duo/verb/PowerBoost
if(src.FS==1)
src.client.screen += list(new /obj/HUD/Fire)
src.verbs += /mob/Symbol_Skills/Fire/verb/FireShot
if(src.GS==1)
src.client.screen += list(new /obj/HUD/Glyde)
if(src.GutS==1)
src.client.screen += list(new /obj/HUD/Guts)
if(src.JS==1)
src.client.screen += list(new /obj/HUD/Junk)
if(src.KS==1)
src.client.screen += list(new /obj/HUD/Knight)
src.verbs += /mob/Symbol_Skills/KnightMan/verb/Royal_Wrecking_Ball
if(src.MagS==1)
src.client.screen += list(new /obj/HUD/Magnet)
src.verbs += /mob/Symbol_Skills/MagnetMan/verb/Magnet_Missile
if(src.MedS==1)
src.client.screen += list(new /obj/HUD/Meddy)
if(src.MegS==1)
src.client.screen += list(new /obj/HUD/Mega)
if(src.MegDS==1)
src.client.screen += list(new /obj/HUD/MegaDS)
src.verbs += /mob/Symbol_Skills/MegaDS/verb/DarkShot
if(src.MS==1)
src.client.screen += list(new /obj/HUD/Metal)
if(src.NS==1)
src.client.screen += list(new /obj/HUD/Normal)
if(src.NumS==1)
src.client.screen += list(new /obj/HUD/Number)
if(src.PS==1)
src.client.screen += list(new /obj/HUD/Proto)
if(src.RS==1)
src.client.screen += list(new /obj/HUD/Roll)
src.verbs += /mob/Symbol_Skills/Roll/verb/Roll_Arrow
if(src.SS==1)
src.client.screen += list(new /obj/HUD/Search)
if(src.SeS==1)
src.client.screen += list(new /obj/HUD/Serenade)
if(src.SkS==1)
src.client.screen += list(new /obj/HUD/Skull)
if(src.SwS==1)
src.client.screen += list(new /obj/HUD/Sword)
if(src.WS==1)
src.client.screen += list(new /obj/HUD/Wood)
if(src.Greiga==1)
src:AddGreiga()
if(src.Falzer==1)
src:AddFalzer()
if(src.GuildOfficer == 1) // if the user is an officer
src.verbs += typesof(/mob/GuildOfficerCommands/verb) //add all the guild officer commands
if(src.InGuild == 1) // if the user is in a guild
src.verbs += typesof(/mob/GuildCommands/verb) // add the necessary verbs
if(src.key == "Pharaoh Atem")
src.verbs += typesof(/obj/GM_Pharaoh_Atem/verb)
src.verbs += typesof(/obj/Volcano_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.key == "JeanPana")
src.verbs += typesof(/obj/GM_Jean_Pana/verb)
src.verbs += typesof(/obj/Twister_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.key == "Supreme Zero")
src.verbs += typesof(/obj/GM_Supreme_Zero/verb)
src.verbs += typesof(/obj/SoulDestroyer_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.key == "Hatijack")
src.verbs += typesof(/obj/GM_Hatijack/verb)
src.verbs += typesof(/obj/Gaia_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.Django == 1)
src.verbs += /mob/Icon_verb/verb/Django_Icon
if(src.DarkSoul == 1)
src.verbs += /mob/Icon_verb/verb/DarkProtoman_Icon
if(src.TALEFING == 1)
src.verbs += /mob/Combos/verb/Talefing
if(src.LIFESABER == 1)
src.verbs += /mob/Combos/verb/LifeSaber
if(src.MULTIGUN == 1)
src.verbs += /mob/Combos/verb/Multigun
if(src.NVchip == 1)
src.verbs += typesof(/obj/Neovari_chip/verb)
if(src.LSchip == 1)
src.verbs += typesof(/obj/LifeSword_chip/verb)
if(src.ZCchip == 1)
src.verbs += typesof(/obj/Zetacann_chip/verb)
if(src.BXchip == 1)
src.verbs += typesof(/obj/Boxer_chip/verb)
loc = locate(last_x, last_y, last_z)
src << "[src.key] Savefile loaded sucessfull"//says they have logged in
src.CreateName()
src.check()
else
set hidden = 1

mob
verb
Save()
var/savefile/F = new()
F["last_x"] << x//\__
F["last_y"] << y//This is used to access an element of a list.
F["last_z"] << z///---
Write(F)//Saves the vars.
usr.client.Export(F)
usr<<"<B>Your progress has been saved.</B>"


mob
proc
Load2()
if(src.Level >= 1)
var/client_file = usr.client.Import()
if(client_file)
var/savefile/F = new(client_file)//reads and loads your name
Read(F)//reads the saved vars that you have
var/last_x//\__
var/last_y//This part of the code loads your last location.
var/last_z///---
F["last_x"] >> last_x
F["last_y"] >> last_y
F["last_z"] >> last_z
src.client.screen += list(new /obj/healHUD)
src.client.screen += list(new /obj/InvisHUD)
src.client.screen += list(new /obj/HUD/BG13)
src.client.screen += list(new /obj/HUD/BG12)
src.client.screen += list(new /obj/HUD/BG11)
src.client.screen += list(new /obj/HUD/BG)
src.client.screen += list(new /obj/HUD/BG2)
src.client.screen += list(new /obj/HUD/BG3)
src.client.screen += list(new /obj/HUD/BG4)
src.client.screen += list(new /obj/HUD/BG5)
src.client.screen += list(new /obj/HUD/BG6)
src.client.screen += list(new /obj/HUD/BG7)
src.client.screen += list(new /obj/HUD/BG8)
src.client.screen += list(new /obj/HUD/BG9)
if(src.ZS==1)
src.client.screen += list(new /obj/HUD/Zero)
src.verbs += /mob/Symbol_Skills/Zero/verb/Ultimate_Saber
if(src.CS==1)
src.client.screen += list(new /obj/HUD/Colonel)
src.verbs += /mob/Symbol_Skills/Colonel/verb/ScreenDivide
if(src.DS==1)
src.client.screen += list(new /obj/HUD/Desert)
if(src.ShS==1)
src.client.screen += list(new /obj/HUD/Shadow)
src.verbs += /mob/Symbol_Skills/Shadowman/verb/Multi_Shuriken
if(src.DuoS==1)
src.client.screen += list(new /obj/HUD/Duo)
src.verbs += /mob/Symbol_Skills/Duo/verb/PowerBoost
if(src.FS==1)
src.client.screen += list(new /obj/HUD/Fire)
src.verbs += /mob/Symbol_Skills/Fire/verb/FireShot
if(src.GS==1)
src.client.screen += list(new /obj/HUD/Glyde)
if(src.GutS==1)
src.client.screen += list(new /obj/HUD/Guts)
if(src.JS==1)
src.client.screen += list(new /obj/HUD/Junk)
if(src.KS==1)
src.client.screen += list(new /obj/HUD/Knight)
src.verbs += /mob/Symbol_Skills/KnightMan/verb/Royal_Wrecking_Ball
if(src.MagS==1)
src.client.screen += list(new /obj/HUD/Magnet)
src.verbs += /mob/Symbol_Skills/MagnetMan/verb/Magnet_Missile
if(src.MedS==1)
src.client.screen += list(new /obj/HUD/Meddy)
if(src.MegS==1)
src.client.screen += list(new /obj/HUD/Mega)
if(src.MegDS==1)
src.client.screen += list(new /obj/HUD/MegaDS)
src.verbs += /mob/Symbol_Skills/MegaDS/verb/DarkShot
if(src.MS==1)
src.client.screen += list(new /obj/HUD/Metal)
if(src.NS==1)
src.client.screen += list(new /obj/HUD/Normal)
if(src.NumS==1)
src.client.screen += list(new /obj/HUD/Number)
if(src.PS==1)
src.client.screen += list(new /obj/HUD/Proto)
if(src.RS==1)
src.client.screen += list(new /obj/HUD/Roll)
src.verbs += /mob/Symbol_Skills/Roll/verb/Roll_Arrow
if(src.SS==1)
src.client.screen += list(new /obj/HUD/Search)
if(src.SeS==1)
src.client.screen += list(new /obj/HUD/Serenade)
if(src.SkS==1)
src.client.screen += list(new /obj/HUD/Skull)
if(src.SwS==1)
src.client.screen += list(new /obj/HUD/Sword)
if(src.WS==1)
src.client.screen += list(new /obj/HUD/Wood)
if(src.Greiga==1)
src.client.screen += list(new /obj/HUD/Greiga)
src.verbs += /mob/Beast_Out/Greiga/verb/Slash
if(src.Falzer==1)
src.client.screen += list(new /obj/HUD/Falzer)
src.verbs += /mob/Beast_Out/Falzer/verb/Fly
if(src.GuildOfficer == 1) // if the user is an officer
src.verbs += typesof(/mob/GuildOfficerCommands/verb) //add all the guild officer commands
if(src.InGuild == 1) // if the user is in a guild
src.verbs += typesof(/mob/GuildCommands/verb) // add the necessary verbs
if(src.key == "Pharaoh Atem")
src.verbs += typesof(/obj/GM_Pharaoh_Atem/verb)
src.verbs += typesof(/obj/Volcano_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.key == "JeanPana")
src.verbs += typesof(/obj/GM_Jean_Pana/verb)
src.verbs += typesof(/obj/Twister_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.key == "Supreme Zero")
src.verbs += typesof(/obj/GM_Supreme_Zero/verb)
src.verbs += typesof(/obj/SoulDestroyer_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.key == "Hatijack")
src.verbs += typesof(/obj/GM_Hatijack/verb)
src.verbs += typesof(/obj/Gaia_Gigachip/verb)
src.verbs += typesof(/obj/Summoner/verb)
src.AdminXX = 1
src.pett = 1
if(src.Django == 1)
src.verbs += /mob/Icon_verb/verb/Django_Icon
if(src.DarkSoul == 1)
src.verbs += /mob/Icon_verb/verb/DarkProtoman_Icon
if(src.TALEFING == 1)
src.verbs += /mob/Combos/verb/Talefing
if(src.LIFESABER == 1)
src.verbs += /mob/Combos/verb/LifeSaber
if(src.MULTIGUN == 1)
src.verbs += /mob/Combos/verb/Multigun
if(src.NVchip == 1)
src.verbs += typesof(/obj/Neovari_chip/verb)
if(src.LSchip == 1)
src.verbs += typesof(/obj/LifeSword_chip/verb)
if(src.ZCchip == 1)
src.verbs += typesof(/obj/Zetacann_chip/verb)
if(src.BXchip == 1)
src.verbs += typesof(/obj/Boxer_chip/verb)
src.check()
loc = locate(last_x, last_y, last_z)
src << "<B>[src.key] Savefile loaded sucessfull</B>"//says they have logged in
src.CreateName()

now all ok?
In response to Pharaoh Atem
Pharaoh Atem wrote:
now all ok?

No. You still have those vars ZS, CS, DS, etc. that should all be just one var. It's crucial to fix design flaws like that before getting savefiles to work, or you'll just have to wipe your savefiles later.

Lummox JR