S.T.A.L.K.E.R.: Call of Pripyat

S.T.A.L.K.E.R.: Call of Pripyat

517 次評價
An Introduction to Modding
由 syronくらい 發表
Aimed at people that haven't modded any S.T.A.L.K.E.R. game before and are interested in learning the basics. Using S.T.A.L.K.E.R.: Call of Pripyat Version 1.6.02 (Steam Release).
8
8
5
19
2
4
3
   
獎勵
加入最愛
已加入最愛
移除最愛
I. Foreword
This guide is meant to introduce you to the very basics of modding any game of the S.T.A.L.K.E.R. franchise (which works the same way in all of the games), however the variables in section III and IV have only been tested in Call of Pripyat and I can not guarantee that changing the exact same variables in Shadow of Chernobyl or Clear Sky will wield the same results (they most likely would, since it's the same engine, but there are exceptions).

Keep in mind that what we're about to do is more like tweaking than actual modding, but the S.T.A.L.K.E.R. community refers to it as modding so we will as well. Technically we are modifying some variables I guess.

Also there's only so much one can do by simply editing the original game files, but it enables us to do quite a few cool things already.

Before we start, you might want to download Notepad++[notepad-plus-plus.org], a free source code editor that is superior to Windows' Notepad in every regard and will become very handy later on. It does also work with just Notepad though.

You're also going to need a file archiver such as WinRAR[www.rarlab.com] or 7-Zip[www.7-zip.org] to unzip the extractor.

Now Get Out Of Here, Stalker.. and to section II! heh.
II. Preparations
For starters, you'll have to find the fsgame.ltx which should be located within your Steam folder:

32-bit Systems:

[...]\Program Files\Steam\SteamApps\common\Stalker Call of Pripyat\fsgame.ltx

64-bit Systems:

[...]\Program Files (x86)\Steam\SteamApps\common\Stalker Call of Pripyat\fsgame.ltx

For the rest of this guide, I'll only be giving the paths for 64-bit systems. If you're running a 32-bit system, everything will simply be located in the “Program Files” folder instead.

Now open fsgame.ltx and search the following line..

$game_data$ = false| true| $fs_root$| gamedata\

..and change it into

$game_data$ = true| true| $fs_root$| gamedata\

Done. From now on, we'll just have to put our modified files (+ folder trees *) into the gamedata folder and the game will automatically over-write the corresponding vanilla game files at its start.

* What is a folder tree? What I'm referring to as a folder tree here is the folder structure / the path a file is located in. Here's a visual example (The folders "branch out" from our computer's root directory):

🗀 Local Disk (C:)
└🗀 Program Files (x86)
⠀└🗀 Steam
⠀⠀└🗀 SteamApps
⠀⠀⠀└🗀 common
⠀⠀⠀⠀└🗀 Stalker Call of Pripyat
⠀⠀⠀⠀⠀└🗀 gamedata

So this is what I'm talking about whenever I mention a folder tree later on in the guide.

If you've never installed a mod prior to this (which I guess you haven't, considering you're reading this guide), there won't be a gamedata folder. We'll simply create one in our game's root directory:

[...]\Program Files (x86)\Steam\SteamApps\common\Stalker Call of Pripyat\gamedata

This inevitably needs to be done prior to your first ever modification, unless it's a big mod that has automated the process.

Now that we've made our game moddable (and created our gamedata folder), you can either download mods and just follow the instructions that come with them (which will often tell you to do the exact same things we've just done and to paste some files into your gamedata folder) or extract the game files (resources\resources.db*) into our gamedata folder and start messing with them on our own. We'll do the latter.

In order to extract the game files, we'll need an extractor/unpacker. We'll be using the most official extractor available, created by Don Reba who's a moderator on the official GSC Game World forum. Unfortunately, the download link in his original post[www.gsc-game.com] no longer redirects to the correct file. Fortunately, I downloaded the original file before Codeplex' demise so here it is:

Once you click the link below, the file will download immediately!

S.T.A.L.K.E.R. Database Extractor[www.dropbox.com]

It's a little more difficult to use, but unlike other extractors, it works for every S.T.A.L.K.E.R. game, so that's a big plus. Here's a quick tutorial on how to use it (also, if you scroll down, I've attached a screenshot of what it's supposed to look like when you're ready to extract):

1.
Extract the extractor.7z file to your desktop (or wherever, doesn't matter).

2.
Create a folder called database in your Stalker root folder:

[...]\Program Files (x86)\Steam\SteamApps\common\Stalker Call of Pripyat\database

- Why? I thought you said we were going to extract our game files into the gamedata folder?

Yes, but what we'll actually do is take the game files we're gonna modify (+ folder trees) and copy these into our gamedata folder. This way we'll always have a vanilla game file source (in the database folder) without having to extract them again first. We also avoid problems like the language being rus(sian) ([...]\gamedata\configs\localization.ltx) in the extracted game files.

3.
Run the extractor.exe

4.
Enter both paths (check the screenshot below if you're unsure on what to enter & don't forget to change your path accordingly if you're running a 32-bit system!) and remember we're using the database folder for Output. Don't forget to choose the right game from the dropdown menu.

5.
Press Update

6.
Select all of the files (Left Mouse Button & Shift + LMB) (you can also use the filter function if you're only looking to extract specific files, which we aren't).

7.
Press Extract selected

8.
Now it will seem like the application has crashed but it hasn't, once it starts working again (which could take a few minutes) you'll know that the extraction has finished.

III. First Modification
WEIGHT LIMIT
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Now that we've set up everything, our first modification is gonna be to change the weight limit. As I've said before, we will copy the necessary files (+ folder trees) from our database folder, paste them into our gamedata folder and only edit the copied files in the gamedata folder. We'll need two files for our little weight mod:

[...]\database\configs\system.ltx

[...]\database\configs\creatures\actor.ltx

It's up to you whether you copy the entire configs folder into your gamedata folder and delete everything we don't need or only copy the system.ltx and actor.ltx and recreate their folder trees manually. However you can't just copy the system.ltx and actor.ltx into your gamedata folder, it won't work. They'll need to be located within a configs (and configs\creatures) folder, whether copied or created manually. So after you're done your paths are supposed to look like this:

[...]\gamedata\configs\system.ltx

[...]\gamedata\configs\creatures\actor.ltx

Now open this new system.ltx and search (Ctrl + F) for the max_weight value and change it like this:

max_weight = 50
     ↓
max_weight = 100

This alters the value of how much your character can carry before his stamina decreases a lot. Save and move on.

Next up, open the new actor.ltx and search for the max_item_mass value:

max_item_mass = 35 ;50.0
      ↓
max_item_mass = 100 ;50.0

The first number needs to be the same value as max_weight (100 in this example). Ignore everything behind the semicolon “;” since it's only an annotation and won't affect anything. Finally, change the max_walk_weight value:

max_walk_weight = 60
      ↓
max_walk_weight = 115

This defines how much weight our character can carry before he won't be able to walk anymore. It always has to be at least the same value as max_weight (and consequently max_item_mass). Save and...

Congratulations! You've successfully created your first, very own weight mod! Wasn't too hard now, was it? There's a ton of files in your database folder (36.954 to be precise) just waiting for you to fiddle around with. Google can be a great starting point for finding new mods and values to play around with. I've also added a list of sources and some of the most popular mods at the end of this guide.
IV. Additional Modding Suggestions
ARMOR DEGRADATION
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Take the file and the corresponding folder tree from

[...]\database\configs\misc\outfit.ltx

and proceed like in section III.

Ctrl + F for immunities] (including the square bracket “]”) within outfit.ltx. You should find all the different outfit immunities (starting with [sect_novice_outfit_immunities]), change them as you see fit (0.0 = 100% immunity and no degradation, 1.0 = 0% immunity). After you've made your adjustments you can just copy & paste everything from burn_immunity to fire_wound_immunity and replace it for the different outfits, it's always the same variables.

[sect_novice_outfit_immunities] burn_immunity = 0.05 strike_immunity = 0.0 shock_immunity = 0.05 wound_immunity = 0.05 radiation_immunity = 0.0 telepatic_immunity = 0.0 chemical_burn_immunity = 0.05 explosion_immunity = 0.05 fire_wound_immunity = 0.02

By the way, there's also a way to change actor immunities (“Godmode”) in actor.ltx if you're looking to do that instead. Search for [actor_immunities_gd_novice], [actor_immunities_gd_stalker], [actor_immunities_gd_veteran], [actor_immunities_gd_master] and change everything to 0.0 as you would for outfit immunities.

MOVEMENT VALUES
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
I've added explanations for all of these values, feel free to experiment with them. You can find these in the actor.ltx:

[...]\database\configs\creatures\actor.ltx

jump_speed = 6. #jumping height crouch_coef = 0.30 ;0.45 #speed while crouching climb_coef = 0.7 #speed while climbing (e.g. stairs) run_coef = 2.0 ;2.1 #running speed (= standard movement speed) sprint_koef = 2.5 ;1.9 ;2.6 #sprinting speed run_back_coef = 1.8 #backwards running speed walk_back_coef = 0.5 #backwards walking speed air_control_param = 0.1 #parameter controlling directional movement speed while in air walk_accel = 19; 20 ;18.1 ;17 #walking speed

You only have to edit the values in front of the first semicolon “;”. Keep in mind that falling from great heights or running into objects at high velocity will damage/kill you without making further adjustments to your game files (increase ph_crash_speed_min in actor.ltx). It's also worth noting that although run_coef is the standard movement speed in game, technically walk_accel is the base speed and all the other variables derive from it (coefficients). So if you change walk_accel, everything except air_control_param and jump_speed will be affected.

HEAD BOBBING
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
The following values alter the amount of sway while running/walking/limping, setting it to 0 will entirely remove bobbing:

[...]\database\configs\misc\effectors.ltx

[bobbing_effector] run_amplitude = 0.0075 #running walk_amplitude = 0.005 #walking limp_amplitude = 0.011 #limping

There's also a quick-and-dirty fix: Put cam_inert 0 into the console ingame.

SELLING CONDITION
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Traders in Call of Pripyat refuse to buy equipment with less than 70% condition, we can fix that in these .ltx:

[...]\database\configs\misc\trade\trade_zat_b30_stalker_trader.ltx

[...]\database\configs\misc\trade\trade_jup_b202_stalker_barmen.ltx

[...]\database\configs\misc\trade\trade_generic.ltx

Search for this line

buy_item_condition_factor = 0.7

and change it as you see fit (0 will make them accept items of any condition, 0.6 = minimum 60% etc.).

CROSSHAIR
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
You can alter the crosshair settings in:

[...]\database\configs\system.ltx

[hud_cursor] cross_length = 0.015 #size of the outer crosshair lines min_radius = 0.0 #N/A max_radius = 1.0 #N/A radius_lerp_speed = 0.08 #N/A cross_color = 0.7,0.7,0.7,0.5 #N/A disp_scale = 0.08 #N/A

You can also just disable the dynamic crosshair by typing cl_dynamiccrosshair off into the console ingame.

Personally I'm just using cross_length = 0.005 and cl_dynamiccrosshair off. I've been experimenting with the other variables and some seem to do nothing whereas others act quite strange. Maybe you can make more sense of it.
114 則留言
syronくらい  [作者] 2024 年 7 月 27 日 下午 12:56 
Thanks to everyone helping out each other! I usually won't reply, not because I'm ignoring anyone but because I simply have no clue.

Unfortunately, S.T.A.L.K.E.R. 2 was delayed 'til Nov 20th 2024 the other day :(. But fortunately, the modding scene is as alive as ever from what I can tell with new stuff releasing all the time :).

Good Hunting, Stalkers o7
Gorilla 2 2024 年 7 月 27 日 下午 12:27 
@unturned gamer

Sort of. if i remember correctly there is a stat that determines how much durability each shot uses, i believe it is "condition_queue_shot_dec" or "condition_shot_dec". but you can also modify the probability of misfires from the condition, to soft remove it that way. those stats are "misfire_probability" "misfire_start_prob" and misfire_end_prob."

As for health in config>creatures there is every creatures file, Actor is the player. for that i dont know if you can increase your health, but you can apply damage resistance under the "actor_immunities" section. its set per difficulty with decimal percentages. strike_immunity 0.6 means you take 60% damage from that source. so 0.0 would be totally immune.

As for creature health, you can modify that in their config file by editing the health stat directly. its "heath=[number]" though in my experience its hard to tell if this does anything.
unturned gamer 2024 年 7 月 27 日 上午 9:03 
Is there a way to prevent weapon degradation?
unturned gamer 2024 年 7 月 20 日 下午 9:47 
How does one edit the health stats? specifically main health
Gorilla 2 2024 年 3 月 11 日 下午 1:34 
I learn something new everyday
ButtStorm 2024 年 3 月 11 日 上午 8:31 
@Uncle Slime
"no real way to do it easily, since there arent mod managers for STALKER as far as i know."

- Yes there is. GIT
usulist 2024 年 2 月 8 日 下午 8:20 
my good sire, i noticed after making all the changes that still radioactive items in your inventory can send you quick to radiation heaven. is there a modifier to mitigate such malefaction?
CTOЯТИ 2024 年 1 月 17 日 上午 5:11 
really usefull guide, thank you
Lumis 2024 年 1 月 8 日 下午 7:59 
thank you very much, the language change worked, another question: is there a way to modify the amount of money without having to start a new game?
Zforgetaboutit 2024 年 1 月 8 日 上午 11:41 
Thanks for this article.