the Phrozen Forums
  General Mod Making
  Help With Save File

Post New Topic  Post A Reply
profile | register | preferences | faq | search

UBBFriend: Email This Page to Someone! next newest topic | next oldest topic
Author Topic:   Help With Save File
jbunnelle
Serf

Posts: 2
From:
Registered: Jan 2002

posted 25 January 2002 08:44     Click Here to See the Profile for jbunnelle   Click Here to Email jbunnelle        Reply w/Quote   
I just need clarification on when the Save file is changed when a new mod is loaded. Right now I have a seperate Save file for every mod that I load along with the mod's MPQ. Can I just use one master Save file and designate by use of an acronym which character goes with which mod? In other words, will starting the game up with a new mod change the stats/inventory of ALL characters existing in the Save file or just the ones actually loaded to play? Any input would be appreciated.

IP Logged

Axalon
Honorary Warlord

Posts: 2243
From: New England, USA
Registered: Dec 2001

posted 25 January 2002 09:18     Click Here to See the Profile for Axalon   Click Here to Email Axalon        Reply w/Quote   
You should play it safe by always making a back-up of your 'save file' and your 'Patch_D2.mpq' before you install a new mod ... because a new mod will always effect these two files ... I always make a back-up of those files when I make any changes to the game

------------------
"To dream a life, or to live a dream ... only through desire shall the sleeper awaken."

IP Logged

jbunnelle
Serf

Posts: 2
From:
Registered: Jan 2002

posted 25 January 2002 10:42     Click Here to See the Profile for jbunnelle   Click Here to Email jbunnelle        Reply w/Quote   
Yes, I make back-ups as well. I was just wondering if characters from different mods could co-exist in the same Save folder, as long as each character is loaded under its respective mod. Since the new MPQ swapper just came out, if I could just have one Save folder for everything, I could start the game without the file shuffle. This won't be so bad later except that right now I'm testing out several of the mods to see which one I prefer.

IP Logged

Axalon
Honorary Warlord

Posts: 2243
From: New England, USA
Registered: Dec 2001

posted 25 January 2002 11:20     Click Here to See the Profile for Axalon   Click Here to Email Axalon        Reply w/Quote   
Hi, I took a little lunch break Anyway, The charactors should co-exist within the same folder without giving you any problems, and as you said, along as you load each charactor into it's respective mod accordingly ... it should work the way you want without giving you trouble Still, just to be on the safe side, make a back-up and do a test run ... Everything should work fine ... then you can go ahead and use that method without any worries from then on Your idea is very good, and I might even use it myself ... hehehe... Ok, my friend

------------------
"To dream a life, or to live a dream ... only through desire shall the sleeper awaken."

IP Logged

Myhrginoc
Honorary Warlord

Posts: 1326
From: Percussion U
Registered: Dec 2001

posted 25 January 2002 17:44     Click Here to See the Profile for Myhrginoc   Click Here to Email Myhrginoc        Reply w/Quote   
Foxbat wrote a nice little VBS script for keeping your mods well organized in folders. I amended it slightly to include the d2win.dll file. Use this script, organize your mods as below, and you don't have to shuffle files.

I copy the mod file(s) and the script file in a folder inside the Diablo II folder, e.g. Eastern Sun in folder ...\Diablo II\EasternSun. Then I create a new Save folder underneath, e.g. ...\Diablo II\EasternSun\save. The script redirects the registry key for D2 saves. Copy the text between the asterisk lines into a VBS file. When you start the mod, you will see only those characters in that mod's save folder.

********************
'Create a shell object
Set Shell = WScript.CreateObject("WScript.Shell")
'Get path to Diablo II EXE from registry
D2Path = Shell.RegRead("HKCU\Software\Blizzard Entertainment\Diablo II\InstallPath")& "\"
'Create a file system object
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
'Get the current directory folder object
Set Folder = FSO.GetFolder(".")
'Get full pathname of current directory and append save dir name
Dir = Folder.Path & "\Save\"
'Get file object for D2Client.dll in Diablo directory
Set ClientDLL = FSO.GetFile(D2Path & "D2Client.dll")
Set GameDLL = FSO.GetFile(D2Path & "D2Game.dll")
Set CommonDLL = FSO.GetFile(D2Path & "D2Common.dll")
Set WinDLL = FSO.GetFile(D2Path & "D2Win.dll")
'If Diablo path is not the current directory run MOD otherwise just fix up
If Folder.Path & "\" <> D2Path Then
'Check if a D2Client.dll exists in the current directory
If FSO.FileExists(Folder.Path & "\D2Client.dll") Then
'Rename DLL in Diablo directory
ClientDLL.Move (D2Path & "D2Client.baq")
End If
'Check if a D2Game.dll exists in the current directory
If FSO.FileExists(Folder.Path & "\D2Game.dll") Then
'Rename DLL in Diablo directory
GameDLL.Move (D2Path & "D2Game.baq")
End If
'Check if a D2Common.dll exists in the current directory
If FSO.FileExists(Folder.Path & "\D2Common.dll") Then
'Rename DLL in Diablo directory
CommonDLL.Move (D2Path & "D2Common.baq")
End If
'Check if a D2Win.dll exists in the current directory
If FSO.FileExists(Folder.Path & "\D2Win.dll") Then
'Rename DLL in Diablo directory
WinDLL.Move (D2Path & "D2Win.baq")
End If
'Get current save folder
SaveDir = Shell.RegRead("HKCU\Software\Blizzard Entertainment\Diablo II\Save Path")
'Write our new save directory in the registry
Shell.RegWrite "HKCU\Software\Blizzard Entertainment\Diablo II\Save Path", Dir, "REG_SZ"
'Ensure script gets to clean up if launching Diablo II fails
on error resume next
'Launch Diablo II normally and wait for it to finish
Result = Shell.Run(chr(34) & D2Path & "Game.exe" & chr(34), 1, TRUE)
End If
If ClientDLL.Name = "D2Client.baq" Then
ClientDLL.Move (D2Path & "D2Client.dll")
End If
If GameDLL.Name = "D2Game.baq" Then
GameDLL.Move (D2Path & "D2Game.dll")
End If
If CommonDLL.Name = "D2Common.baq" Then
CommonDLL.Move (D2Path & "D2Common.dll")
End If
If WinDLL.Name = "D2Win.baq" Then
WinDLL.Move (D2Path & "D2Win.dll")
End If
'Restore previous save directory setting in registry
Shell.RegWrite "HKCU\Software\Blizzard Entertainment\Diablo II\Save Path", SaveDir, "REG_SZ"
***************

If you add the -w switch to the game load line [...D2Path & "Game.exe" & chr(34) & " -w" & chr(34)...], it will start in windowed mode. If you add -direct -txt switches, be sure you have the direct-run folders properly structured inside the mod's folder or it won't work.

[This message has been edited by Myhrginoc (edited 25 January 2002).]

IP Logged

iowan
Forum Admin.

Posts: 766
From: Netherlands
Registered: Jan 2001

posted 10 March 2002 12:42     Click Here to See the Profile for iowan   Click Here to Email iowan        Reply w/Quote   Visit iowan's Homepage!
if anybody emails me what needs to be done exactly , i could try and change that vb script file into a program so maybe we could have the same thing done with a few clicks of a button , kinda like my mod launcher

IP Logged

Myhrginoc
Honorary Warlord

Posts: 1326
From: Percussion U
Registered: Dec 2001

posted 10 March 2002 14:39     Click Here to See the Profile for Myhrginoc   Click Here to Email Myhrginoc        Reply w/Quote   
No program is needed, unless your machine doesn't understand VBS (standard with Win 98SE at least). To use, copy-paste the section between the asterisk lines into a new Notepad file, and name it with a VBS extension. Then click on the file from Windows Explorer, it works just like a DOS batch file. But if anything is out of whack (like you didn't put the CD-ROM in) you get no error messages.

Also, as we get further into modding the DLLs we would need to add more handler blocks into the script. This one just covers the four DLLs listed.

------------------
"The difference between the right word and the almost right word is the difference between lightning and the lightning bug." -- Mark Twain

IP Logged

All times are Central Standard Time

next newest topic | next oldest topic

Administrative Options: Close Topic | Archive/Move | Delete Topic
Post New Topic  Post A Reply
Hop to:

Contact Us | The PhrozenKeep

© PhrozenKeep.com . all buttons made by the Evilenglishman . swords and shields by DigiBO.


Ultimate Bulletin Board 5.47c