File Details

Download this file | Go to files list

2010 (c) Alexey "KamikaZze", reconstruction of behavior scheme "Companions"
This version is for original game. Tested with patches 1.0005 and 1.0006
Fully translated to english.
Many thanks to kolinkoff YouTube user for supplying me the english version of original game and for the testing - this made my release possible. Thanks again to kolinkoff!

Anticipating some questions I have to say the following:

This is not a clone of "Partners" mod and not its conversion; this scheme has been written almost from scratch, but in this scheme I used one of "Partners" algorithms (jumping of NPC between locations) by Dmitry Roshchin aka Red75 and for that my acknowledgements to him. The idea proved to be convenient and very viable. In fact I've just adjusted the implementation of his method so that its use does not interfere with the normal operation of conventional NPCs in smart terrains. This scheme is based on a small scheme xr_companion from original and the builds by Sergei Vinnichenko. This scheme worked in a build 2205 but in release it was disabled. As useless apparently - it haven't been finished.

So that's the companions. This behavior scheme allows you to invite NPC as a companion and together explore the Zone. Idea of reconstructing this scheme was born when I saw it initially in build 2205 and decided to revive for our global mod - OGSE (Old Good Stalker Evolution). In this case I tried to give scheme maximum flexibility and functionality as much as been possible, while also tried to avoid potential problems - so that the player didn't required to nurse his mate, pulling him out of any trouble.

WARNING! During the operation of the scheme it had been discovered that some (fairly rare) NPCs behave strangely when hiring - do not go after the Player, staring dully into space, do not pass through the levels. It is a conflict between the behavior scheme and built-in logic, it happens mostly with guards of scripting camps. If you hired such NPC - leave it alone and hire another.

Also in this package included custom gamegraph of original game corrected by me especially for this behavior scheme. The length of all transitions between locations had been reduced to a minimum and eventually your partner overcomes transitions between locations almost immediately - within 10-20 game minutes (1-2 real time minutes).


So in OGSM and AMK too, if I remember correctly, you can use custom gamegraph completely painless, as they wasn't changed it. If, however, you install it on the mod which already contains edited gamegraph (ANY mod with new locations) game will behave unpredictably, or new locations became unreachable, so don't even try.

The main features of the scheme:

1. Mate follows you wisely - no chasing stray dogs and wild boars, no trying to chase them through the entire location, so don't panic.
2. If you decide to escape combat - a partner will escape with you, not reacting to the enemy. This allows us to get out of the fire without the risk of once again taking the fight against superior enemy forces.
3. With a partner you can direct exchange goods for no price - via trade menu. Exchange is free which is convenient.
4. All settings are stored in a special scheme repository inside the companion's packet - for this I used utility functions from a library of utilities for working with net packets - m_net_utils (SIMBION: SHOC mod), author Artos. The library is included.
5. Mate can disguise armor when used in conjunction with the scheme xrs_armor, author xStream. Modified for this purpose scheme xrs_armor attached. Notice that it's not acivated just from box and needs to be edited before use.
6. To use mods in which player can join the factions the scheme supports the following factions companions: a loner, duty, freedom, gangster, zombie (the latter experimental, working but not very good). Moreover, each faction in the scheme have their own style of dialogs. For the integration scheme in such mods you should check IDs of factions in function community_by_actor (actor_comm) and, if needed, rewrite. Companions can be hired only from the faction to which player now belongs. In addition to the binder of scheme immediately entered evaluators of behavior schemes xrs_grenade, xrs_medic, rx_bandage, rx_facer, rx_reload, and anomaly_evader, so that it can be used together with xr_companions with minimal adjustments together with anomalies evade packs of logic and the arms manager (from AI Pack).
7. Following restrictions apply to the hiring of teammates:

1) You cannot hire quest NPCs (for obvious reasons)
2) Player has bad reputation in faction
3) This is some of the prisoners
4) Player experience is lower than NPC
5) Player much more experienced than NPC (beginners are afraid to go with the experienced stalkers, fearing that they use them as a "jemmy")
6) The Player already have a partner (with a little edits this scheme could support more than one partner, but for me it was not appropriate as heavily disbalancing the game, so I did not do it - and please don't ask - if you are skilled enough you can add this yourself)
7) Player from other faction (can be turned off if necessary: edit in the header of xr_companions.script parameter other_factions_switch)
8) Too many companions were died with Player

8. Yes, the scheme is counting and recording "death toll". If you had lost in action more than 4 NPCs they will refuse to go with you. To correct the situation you may treat wounded stalkers. For each saved life you will write off one victim.
9. The scheme has the following behavior types:

1) Follow me
2) Wait here
3) Sneak after me
4) Hide here

Moreover, for each of these scheme has three modes of aggression:

1) Normal
2) Reduced aggression (allows companion to come closer to the enemy)
3) Low (companion hides his weapons and not engages in battle until he or Player obtains some damage)

This set of functions allows the use of team-mate in the cases when it is necessary to make ambush or covertly change position. In addition, it can hide in safety so that it didn't attract enemy attention.
10. Especially for a partner I've prescribed additional state types on the basis of a panic run that he didn't get lost from Player when Player runs in haste.
11. You can use the radio to instruct your mate what to do. Radio works within a radius of a-life (about 150 meters). Also be aware if you left your partner behind and go beyond a-life radius (about 150 meters) he will most likely go to the camp.

Download this file | Go to files list