ProjectsWhat's NewDownloadsCommunitySupportCompany
Forum Index » S.T.A.L.K.E.R.: Shadow of Chernobyl Forum » Mod discussion
Compatibility with new patches

1 2 | Next 10 events »| All Messages
Posted by/on
Question/AnswerMake Newest Up Sort by Descending
  13:58:55  14 November 2007
profilee-mailreply Message URLTo the Top
Don Reba
Bishop and Councilor of War
(Moderator)

 

 
On forum: 12/04/2002
Messages: 11553
Compatibility with new patches

NatVac

This is for the US version:

The large file size is due to the inclusion of the 1.0004 gamedata.dbb (unchanged) and modsmp_military_2.xdb0.

The bin directory is essentially replaced, including the OpenAL stuff.

The only new file in the STALKER installation directory is gamedata.dbc, dated 2007/10/24. The all.spawn is not changed, nor is game.graph.

Changed files:

bin
wrap_oal.dll - old, but will replace any update
OpenAL32.dll - new date, will replace any update
BugTrap.dll
xrCore.dll
xrNetServer.dll
xrParticles.dll
xrCDB.dll
xrXMLParser.dll
xrLUA.dll
xrSound.dll
xrGameSpy.dll
xrD3D9-Null.dll
ode.dll
xrCPU_Pipe.dll
xrRender_R2.dll
xrRender_R1.dll
xrGame.dll
XR_3DA.exe

bindedicated
XR_3DA.exe

gamedata.dbcconfig
system.ltx - current_server_entity_version is now 7 instead of 6

gamedata.dbcconfigui - all multiplayer fixes
message_box.xml
ui_mm_mp.xml
ui_mm_mp_tabclient.xml
ui_mm_mp_taboptions.xml

gamedata.dbcscripts
dialog_manager.script - optimized, uses different number/strings conversions
task_manager.script - optimized, uses different number/strings conversions*
ui_mm_mp_join.script
ui_mm_mp_options.script
ui_mp_main.script
xr_motivator.script - minor version change support for the dialog manager

*No, they didn't fix the reputation bug. Again.

mods
mp_military_2.xdb0




It's my quick guess that the Bes dialog fix is not really affected.

The problem there might have been that the number was too large in 1.0004 new engine code. Instead of fixing the engine to work as it did in 1.0003, they changed both the engine code and the script code to use strings instead of numbers.

The primary change is to the signature of dlg:AddPhrase():

What is in 1.0004 lua_help.script (not updated by 1.0005):

class CPhraseDialog {
function AddPhrase(string, number, number, number);
}

What's used by dialog_manager.script and task_manager.script via dlg:AddPhrase() calls:

function AddPhrase(string, string, string, number);

Essentially, the former arguments passed as numbers are now passed as strings: 0 => "0", 1 => "1", etc. The only exception to this I've seen so far is that -1 is now passed as an empty string: "" in a couple of places.

While 1.0004 saved games can be read by 1.0005, it won't work the other way; 1.0005 introduces a change to the save game format.

It's either have two versions of the corresponding scripts or have a smart script set that works with both.




Nothing in that set of files is incompatible with 1.0005 except possibly the current_server_entity_version value of 6; it's 7 in 1.0005. But you say that 6 works? Interesting. Probably not for multiplayer, though.

The changes to the game engine are unknown right now (at least to me), except those that are shown by what is changed in the scripts that call game engine functions. Other than the multiplayer changes, the only difference is the change in the GPhraseDialog function AddPhrase() API* call.

In version 1.0004, the parameters passed by this call were a string followed by three numbers. In 1.0005, the parameters are three strings followed by a number.

Every place that you use dlg:AddPhrase() to get a CPhraseScript object in your custom code will have to be changed.

In many cases this will be just a simple change. For example, the 1.0004 line:

    dlg:AddPhrase("tm_reward_complete", 0, 1, -10000)


becomes this in 1.0005:

    dlg:AddPhrase("tm_reward_complete", "0", "1", -10000)


You can convert numeric variables via tostring(), as shown when you compare task_manager.script in the two versions.

The problem with this is the need to then support two independent versions of your code, or tell everyone you are abandoning 1.0004 (or not supporting 1.0005, if you choose not to do this).

I propose an alternative: use a façade, a routine that checks the version of the engine and then makes the correct call, in your 1.0004 script:

function dlg_AddPhrase(name, phrase_id, phr_id_2, offset)
    if self.script_version == 6 then
        return dlg:AddPhrase(name, phrase_id, phr_id_2, offset)
    elseif self.script_version >= 7 then
        local phr2string;
        if phr_id_2 == -1 then
            phr2string = ""
        else
            phr2string = tostring(phr_id_2)
        end
        return dlg:AddPhrase(name, tostring(phrase_id), phr2string, offset)
    end
end


Then change all your dlg:AddPhrase() calls to dlg_AddPhrase() calls. More is needed; you'll need to set the script_version based on the engine if it is not available (or correct).

I plan to release an update to the ZRP in a couple of days that should work with either 1.0004 or 1.0005, if testing goes well.

_____________
*Application Programming Interface - a set of function calls in a module (like a DLL) that are made available to other modules. Here, the game engine has a set of published interface calls given in lua_help.script -- which is not a real script, just a help file that is automatically generated. The problem is that the file no longer matches the reality of the new engine code's API.
  18:02:22  16 November 2007
profilee-mailreply Message URLTo the Top
vokac
(Senior)
 
On forum: 04/20/2007
Messages: 92
You said that they changed the save game file.

I can load 1.0004 games and play them, however if I then try to load a 1.0005 game I get a CTD.

I am using the trader mod, and the endurance mod.

The game says it is version 1.0005, but all I can load are the 1.0004 games any ideas?

This includes auto, quick, and normal saves.
  19:03:02  16 November 2007
profilee-mailreply Message URLTo the Top
NatVac
Senior Resident
 

 
On forum: 06/15/2007
Messages: 4189
One or both of the mods might not be directly compatible. You may have to contact the mod developer for an update.

Here's something you can try, first:

Do you have a <STALKER_install_dir>\gamedata\config\system.ltx file? If so, it might need to be updated; it is overriding the one in the 1.0005 patch. The saves you made previously while using 1.0005 with the older 1.0004 system.ltx file are not valid.

Edit the file with a text editor. Look for this line:

current_server_entity_version = 6

Change the 6 to a 7. Save and try again.

There may other problems, but start with this.
  19:25:06  16 November 2007
profilee-mailreply Message URLTo the Top
vokac
(Senior)
 
On forum: 04/20/2007
Messages: 92
will do, and will post the results when I get home from work.

Thank You.
  00:28:41  17 November 2007
profilee-mailreply Message URLTo the Top
vokac
(Senior)
 
On forum: 04/20/2007
Messages: 92
Edit the file with a text editor. Look for this line:

current_server_entity_version = 6

Change the 6 to a 7. Save and try again.


the above worked and allowed me to open new save games after I made the changes, saves before the change but after the update still will not open, but not biggie. I just get to somethings over.

Thank you very much for your quick and correct answer
  12:42:26  6 January 2008
profilee-mailreply Message URLTo the Top
Kaine
Senior Resident
 

 
On forum: 04/05/2007
Messages: 354
Excuse me please if I sound like a moron... but this thread seems entirely without context.

Is the info above relevant to the 1.0005 patch or does it detail the changes in the 1.0004 patch? I want to convert some mods from 1.0004 to 1.0005 so I'd like to know if this is what I need or whether there were more changes between 1.0004 and 1.0005...
  13:17:37  6 January 2008
profilee-mailreply Message URLTo the Top
barin
scripter
(Resident)

 

 
On forum: 09/12/2007
Messages: 702

---QUOTATION---
Excuse me please if I sound like a moron... but this thread seems entirely without context.

Is the info above relevant to the 1.0005 patch or does it detail the changes in the 1.0004 patch? I want to convert some mods from 1.0004 to 1.0005 so I'd like to know if this is what I need or whether there were more changes between 1.0004 and 1.0005...
---END QUOTATION---



This thread is about differences between 1.0004 and 1.0005 patches, i.e. exactly what you need to know if you want to make 1.0004 mods compatible with 1.0005
  09:34:24  8 January 2008
profilee-mailreply Message URLTo the Top
Kaine
Senior Resident
 

 
On forum: 04/05/2007
Messages: 354

---QUOTATION---
Excuse me please if I sound like a moron... but this thread seems entirely without context.

Is the info above relevant to the 1.0005 patch or does it detail the changes in the 1.0004 patch? I want to convert some mods from 1.0004 to 1.0005 so I'd like to know if this is what I need or whether there were more changes between 1.0004 and 1.0005...

This thread is about differences between 1.0004 and 1.0005 patches, i.e. exactly what you need to know if you want to make 1.0004 mods compatible with 1.0005
---END QUOTATION---



hot thanks.
  09:06:16  22 July 2010
profilee-mailreply Message URLTo the Top
NatVac
Senior Resident
 

 
On forum: 06/15/2007
Messages: 4189
{imperialreign} had this to say about patch 1.0006 (minor edits by me):

¯¯¯¯¯¯¯¯¯¯
"Well, [there are] 3 versions, actually - the North American v1.006 release (2.825 MB), the Russian v1.006 release (13.202 MB), and the World Wide v1.006 release (7.869 MB).

The patch adds database gamedata.dbd - which seems consistent across all versions (at 99KB). The only changes to actual game files are:

gamedata\config\mp\weapons_mp\weapons_mp.ltx
gamedata\config\ui\ui_mm_mp_tabclient.xml
gamedata\config\ui\ui_mm_mp_taboptions.xml
gamedata\scripts\ui_mm_mp_join.script
gamedata\scripts\ui_mm_mp_options.script
gamedata\scripts\ui_mp_main.script

The other changes are all engine library and core files. The RUS and WW version also include updates to the disk-check app, whereas the NA version cut's the disk-check entirely. Updated per RUS version:

BattlEye\
bugtrap.dll
ode.dll
openAL32.dll
Protect.dll
Protect.drv
Protect.exe
XR_3DA.exe
xrCDB.dll
xrCore.dll
xrCPU_pipe.dll
xrD3D9-Null.dll
xrgame.dll
xrgamespy.dll
xrLUA.dll
xrNetServer.dll
xrParticles.dll
xrRender_R1.dll
xrRender_R2.dll
xrSound.dll
xrSMLParser.dll


North America version updates exactly the same, except for the protect_xx.xxx. World Wide version updates exactly the same, except for updates to the check_disk application."

¯¯¯¯¯¯¯¯¯¯
This indicates that there's no new system.ltx, which means that you don't have to change the current_server_entity_version from the value of 7 for patch 1.0006; you can treat it the same as patch 1.0005 for script processing. Single-player mods that work with 1.0005 will work with 1.0006.

Unpatched - current_server_entity_version = 5
Patch 1.0001-1.0004 - current_server_entity_version = 6
Patch 1.0005 and 1.0006 - current_server_entity_version = 7

Patch 1.0006 is not cumulative; it requires a game prepatched to version 1.0005.

Note that patch 1.0006 has a multiplayer vulnerability and has been (sort of, somewhat) recalled by the developer for that reason. My only observations as a third party: it has a lot of new log spam, and it might be useful for addressing some wide-screen font issues.
  08:22:52  9 August 2010
profilee-mailreply Message URLTo the Top
Dabur - Stalker
Dabur
(Resident)

 

 
On forum: 06/20/2010
Messages: 601

---QUOTATION---
{imperialreign} had this to say about patch 1.0006 (minor edits by me):

¯¯¯¯¯¯¯¯¯¯
"Well, [there are] 3 versions, actually - the North American v1.006 release (2.825 MB), the Russian v1.006 release (13.202 MB), and the World Wide v1.006 release (7.869 MB).

The patch adds database gamedata.dbd - which seems consistent across all versions (at 99KB). The only changes to actual game files are:

gamedata\config\mp\weapons_mp\weapons_mp.ltx
gamedata\config\ui\ui_mm_mp_tabclient.xml
gamedata\config\ui\ui_mm_mp_taboptions.xml
gamedata\scripts\ui_mm_mp_join.script
gamedata\scripts\ui_mm_mp_options.script
gamedata\scripts\ui_mp_main.script

The other changes are all engine library and core files. The RUS and WW version also include updates to the disk-check app, whereas the NA version cut's the disk-check entirely. Updated per RUS version:

BattlEye\
bugtrap.dll
ode.dll
openAL32.dll
Protect.dll
Protect.drv
Protect.exe
XR_3DA.exe
xrCDB.dll
xrCore.dll
xrCPU_pipe.dll
xrD3D9-Null.dll
xrgame.dll
xrgamespy.dll
xrLUA.dll
xrNetServer.dll
xrParticles.dll
xrRender_R1.dll
xrRender_R2.dll
xrSound.dll
xrSMLParser.dll


North America version updates exactly the same, except for the protect_xx.xxx. World Wide version updates exactly the same, except for updates to the check_disk application."

¯¯¯¯¯¯¯¯¯¯
This indicates that there's no new system.ltx, which means that you don't have to change the current_server_entity_version from the value of 7 for patch 1.0006; you can treat it the same as patch 1.0005 for script processing. Single-player mods that work with 1.0005 will work with 1.0006.

Unpatched - current_server_entity_version = 5
Patch 1.0001-1.0004 - current_server_entity_version = 6
Patch 1.0005 and 1.0006 - current_server_entity_version = 7

Patch 1.0006 is not cumulative; it requires a game prepatched to version 1.0005.

Note that patch 1.0006 has a multiplayer vulnerability and has been (sort of, somewhat) recalled by the developer for that reason. My only observations as a third party: it has a lot of new log spam, and it might be useful for addressing some wide-screen font issues.
---END QUOTATION---



hi ,

include at least two russian pre release patches also , ... and one us / world pre release , ....

wide screen problems ? check your graphics drivers and soft , all works fine on nvid , samsung , sony , fujitsu and fujitsu siemens wide screens will adapt themselfs and work great ! on all three games

have a nice day
 
Each word should be at least 3 characters long.
Search:    
Search conditions:    - spaces as AND    - spaces as OR   
 
Forum Index » S.T.A.L.K.E.R.: Shadow of Chernobyl Forum » Mod discussion
 

All short dates are in Month-Day-Year format.


 

Copyright © 1995-2017 GSC Game World. All rights reserved.
This site is best viewed in Internet Explorer 4.xx and up and Javascript enabled. Webmaster.
Opera Software products are not supported.
If any problem concerning the site functioning under Opera Software appears apply
to Opera Software technical support service.