Mirage Source http://miragesource.net/forums/ |
|
Folder Saving http://miragesource.net/forums/viewtopic.php?f=210&t=2170 |
Page 1 of 1 |
Author: | DarkX [ Wed Jun 27, 2007 4:59 pm ] |
Post subject: | Folder Saving |
Ok I was going to make binary files, but I can't find the tutorial I was wanting to use for it. So instead until' then I want to have each players profile saved into their own folder such as (PlayersName folder) inside = playersName.ini, playerE-mail.ini, & PlayersPet.ini. If anyone could help me out with it I would be extremely appreciative. Thanks, later, Korrey D. |
Author: | Styre [ Wed Jun 27, 2007 7:34 pm ] |
Post subject: | Re: Folder Saving |
Look at the way the accounts are saved, and then chage it the way you want. I'd like to have dived more into this for ya, but, I'm tired and want to sleep. EDIT: Server Side you'd need to change to Sub SavePlayer and the Sub LoadPlayer. Dunno hwo to do it yet ,, cause I'm not really familliar yet with saving and loading of files |
Author: | Rezeyu [ Thu Jun 28, 2007 7:22 pm ] |
Post subject: | Re: Folder Saving |
Back when I made Playerworlds games, I used to use folders to sort quests and such. Only mine was kinda reversed.. where I had the name of the quest as a folder, then a (playername).ini that was created.. a kind of flag system. Mine were set up like this: (Taken from my PW Main.AS) Code: Sub OnScriptedTile(Player) Dim FileSystem,filename Filename = GetPlayerName(player) Set FileSystem = CreateObject("Scripting.FileSystemObject") '... etc Code: Case 20
If GetPlayerX(player) = 9 and GetPlayerY(player) = 3 Then If FileSystem.FolderExists("C:\Documents and Settings\Owner\My Documents\Player Worlds\The Plane\Server\accounts\bank\Cookbook\" & filename) Then Call PlayerMessage(player,"You have already read this book!",15) Else Call PlayerMessage(player,"You browse the pages of the cookbook.",10) Call PlayerMessage(player,"[+100 EXP]",15) Call GivePlayerEXP(player, +100) Call CheckPlayerLevel(Player) Call FileSystem.CreateFolder("C:\Documents and Settings\Owner\My Documents\Player Worlds\The Plane\Server\accounts\bank\Cookbook\" & filename) End If End If |
Author: | DarkX [ Sun Jul 08, 2007 11:48 pm ] |
Post subject: | Re: Folder Saving |
ok I was looking at the code that you posted and the code that is already in miragesource, and I'm not sure but I'm not really around my VB6 right now so do you think this will work? Code: Sub SavePlayer(ByVal Index As Long)
Dim FileName As String Dim i As Long Dim n As Long FileName = App.Path & "\Accounts\" & Trim(player(index).Name) & Trim(Player(Index).Login) & ".ini" Call PutVar(FileName, "GENERAL", "Login", Trim(Player(Index).Login)) Call PutVar(FileName, "GENERAL", "Password", Trim(Player(Index).Password)) For i = 1 To MAX_CHARS ' General Call PutVar(FileName, "CHAR" & i, "Name", Trim(Player(Index).Char(i).Name)) Call PutVar(FileName, "CHAR" & i, "Class", STR(Player(Index).Char(i).Class)) Call PutVar(FileName, "CHAR" & i, "Sex", STR(Player(Index).Char(i).Sex)) Call PutVar(FileName, "CHAR" & i, "Sprite", STR(Player(Index).Char(i).Sprite)) Call PutVar(FileName, "CHAR" & i, "Level", STR(Player(Index).Char(i).Level)) Call PutVar(FileName, "CHAR" & i, "Exp", STR(Player(Index).Char(i).Exp)) Call PutVar(FileName, "CHAR" & i, "Access", STR(Player(Index).Char(i).Access)) Call PutVar(FileName, "CHAR" & i, "PK", STR(Player(Index).Char(i).PK)) Call PutVar(FileName, "CHAR" & i, "Guild", STR(Player(Index).Char(i).Guild)) ' Vitals Call PutVar(FileName, "CHAR" & i, "HP", STR(Player(Index).Char(i).HP)) Call PutVar(FileName, "CHAR" & i, "MP", STR(Player(Index).Char(i).MP)) Call PutVar(FileName, "CHAR" & i, "SP", STR(Player(Index).Char(i).SP)) ' Stats Call PutVar(FileName, "CHAR" & i, "STR", STR(Player(Index).Char(i).STR)) Call PutVar(FileName, "CHAR" & i, "DEF", STR(Player(Index).Char(i).DEF)) Call PutVar(FileName, "CHAR" & i, "SPEED", STR(Player(Index).Char(i).SPEED)) Call PutVar(FileName, "CHAR" & i, "MAGI", STR(Player(Index).Char(i).MAGI)) Call PutVar(FileName, "CHAR" & i, "POINTS", STR(Player(Index).Char(i).POINTS)) ' Worn equipment Call PutVar(FileName, "CHAR" & i, "ArmorSlot", STR(Player(Index).Char(i).ArmorSlot)) Call PutVar(FileName, "CHAR" & i, "WeaponSlot", STR(Player(Index).Char(i).WeaponSlot)) Call PutVar(FileName, "CHAR" & i, "HelmetSlot", STR(Player(Index).Char(i).HelmetSlot)) Call PutVar(FileName, "CHAR" & i, "ShieldSlot", STR(Player(Index).Char(i).ShieldSlot)) ' Check to make sure that they aren't on map 0, if so reset'm If Player(Index).Char(i).Map = 0 Then Player(Index).Char(i).Map = START_MAP Player(Index).Char(i).x = START_X Player(Index).Char(i).y = START_Y End If ' Position Call PutVar(FileName, "CHAR" & i, "Map", STR(Player(Index).Char(i).Map)) Call PutVar(FileName, "CHAR" & i, "X", STR(Player(Index).Char(i).x)) Call PutVar(FileName, "CHAR" & i, "Y", STR(Player(Index).Char(i).y)) Call PutVar(FileName, "CHAR" & i, "Dir", STR(Player(Index).Char(i).Dir)) ' Inventory For n = 1 To MAX_INV Call PutVar(FileName, "CHAR" & i, "InvItemNum" & n, STR(Player(Index).Char(i).Inv(n).Num)) Call PutVar(FileName, "CHAR" & i, "InvItemVal" & n, STR(Player(Index).Char(i).Inv(n).Value)) Call PutVar(FileName, "CHAR" & i, "InvItemDur" & n, STR(Player(Index).Char(i).Inv(n).Dur)) Next n ' Spells For n = 1 To MAX_PLAYER_SPELLS Call PutVar(FileName, "CHAR" & i, "Spell" & n, STR(Player(Index).Char(i).Spell(n))) Next n Next i Sub LoadPlayer(ByVal Index As Long, ByVal Name As String) Dim FileName As String Dim i As Long Dim n As Long Call ClearPlayer(Index) FileName = App.Path & "\Accounts\" & Trim(Player(Index).Name) & Trim(Name) & ".ini" Player(Index).Login = GetVar(FileName, "GENERAL", "Login") Player(Index).Password = GetVar(FileName, "GENERAL", "Password") For i = 1 To MAX_CHARS ' General Player(Index).Char(i).Name = GetVar(FileName, "CHAR" & i, "Name") Player(Index).Char(i).Sex = Val(GetVar(FileName, "CHAR" & i, "Sex")) Player(Index).Char(i).Class = Val(GetVar(FileName, "CHAR" & i, "Class")) Player(Index).Char(i).Sprite = Val(GetVar(FileName, "CHAR" & i, "Sprite")) Player(Index).Char(i).Level = Val(GetVar(FileName, "CHAR" & i, "Level")) Player(Index).Char(i).Exp = Val(GetVar(FileName, "CHAR" & i, "Exp")) Player(Index).Char(i).Access = Val(GetVar(FileName, "CHAR" & i, "Access")) Player(Index).Char(i).PK = Val(GetVar(FileName, "CHAR" & i, "PK")) Player(Index).Char(i).Guild = Val(GetVar(FileName, "CHAR" & i, "Guild")) ' Vitals Player(Index).Char(i).HP = Val(GetVar(FileName, "CHAR" & i, "HP")) Player(Index).Char(i).MP = Val(GetVar(FileName, "CHAR" & i, "MP")) Player(Index).Char(i).SP = Val(GetVar(FileName, "CHAR" & i, "SP")) ' Stats Player(Index).Char(i).STR = Val(GetVar(FileName, "CHAR" & i, "STR")) Player(Index).Char(i).DEF = Val(GetVar(FileName, "CHAR" & i, "DEF")) Player(Index).Char(i).SPEED = Val(GetVar(FileName, "CHAR" & i, "SPEED")) Player(Index).Char(i).MAGI = Val(GetVar(FileName, "CHAR" & i, "MAGI")) Player(Index).Char(i).POINTS = Val(GetVar(FileName, "CHAR" & i, "POINTS")) ' Worn equipment Player(Index).Char(i).ArmorSlot = Val(GetVar(FileName, "CHAR" & i, "ArmorSlot")) Player(Index).Char(i).WeaponSlot = Val(GetVar(FileName, "CHAR" & i, "WeaponSlot")) Player(Index).Char(i).HelmetSlot = Val(GetVar(FileName, "CHAR" & i, "HelmetSlot")) Player(Index).Char(i).ShieldSlot = Val(GetVar(FileName, "CHAR" & i, "ShieldSlot")) ' Position Player(Index).Char(i).Map = Val(GetVar(FileName, "CHAR" & i, "Map")) Player(Index).Char(i).x = Val(GetVar(FileName, "CHAR" & i, "X")) Player(Index).Char(i).y = Val(GetVar(FileName, "CHAR" & i, "Y")) Player(Index).Char(i).Dir = Val(GetVar(FileName, "CHAR" & i, "Dir")) ' Check to make sure that they aren't on map 0, if so reset'm If Player(Index).Char(i).Map = 0 Then Player(Index).Char(i).Map = START_MAP Player(Index).Char(i).x = START_X Player(Index).Char(i).y = START_Y End If ' Inventory For n = 1 To MAX_INV Player(Index).Char(i).Inv(n).Num = Val(GetVar(FileName, "CHAR" & i, "InvItemNum" & n)) Player(Index).Char(i).Inv(n).Value = Val(GetVar(FileName, "CHAR" & i, "InvItemVal" & n)) Player(Index).Char(i).Inv(n).Dur = Val(GetVar(FileName, "CHAR" & i, "InvItemDur" & n)) Next n ' Spells For n = 1 To MAX_PLAYER_SPELLS Player(Index).Char(i).Spell(n) = Val(GetVar(FileName, "CHAR" & i, "Spell" & n)) Next n Next i End Sub |
Author: | Matt [ Sun Jul 08, 2007 11:50 pm ] |
Post subject: | Re: Folder Saving |
You forgot the [/code]. |
Author: | DarkX [ Sun Jul 08, 2007 11:52 pm ] |
Post subject: | Re: Folder Saving |
I fixed it. |
Author: | Lea [ Mon Jul 09, 2007 12:06 am ] |
Post subject: | Re: Folder Saving |
Not quite, you're forgetting a backslash in FileName I think that should work though. |
Author: | DarkX [ Mon Jul 09, 2007 3:55 pm ] |
Post subject: | Re: Folder Saving |
so what your saying is something like this? Code: Trim(player(index).Name) & "\" & Trim(Player(Index).Login)
|
Author: | Shadow Dragon [ Sun Aug 17, 2008 7:55 pm ] |
Post subject: | Re: Folder Saving |
Sorry to necro post, but I was wondering if anyone has fixed this tutorial. Since DarkX did awhile ago but lost his source code with some incident with his computer. Could anyone post the code if they figured it out or could help me understand it since DarkX will NOT tell me how to do it... Since he is probably using it as a personal thing. I tried the code above and it highlights the .name part of the saving process Thanks for any help. |
Author: | DarkX [ Sun Aug 17, 2008 8:48 pm ] |
Post subject: | Re: Folder Saving |
I told you Eric IF I knew how I did it I would show you, but I can not remember what I had coded to make the file system work, so I will see if I can get the hard drive working and retrieve it but I doubt it. |
Page 1 of 1 | All times are UTC |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |