Fallout 2 mod FO2 Engine Tweaks (Sfall)

killap said:
2. Can't recall if this happens with all followers, but I know Vic suffers from it. If a follower is knocked out in combat and you leave the map, then (again not sure if this always happens) when you enter another map the follower will be unresponsive and acts like a container when you click on him. He'll keep following you around though. I have a save game with Vic in this state.
This happened to me with Marcus once. I didn't report it because I didn't know exactly the cause, and thought I had too few info to give a useful report.
 
A third candidate which often plagues users:

3. When you enter a map, most of it will be covered with blackness that you can then wipe away and see the normal map. I've noticed this happening after long playthroughs, especially if you load lots of maps in one sitting.
 
killap said:
1. Planting explosives on a critter and leaving the map to have it explode causes the game to crash. Can't remember if it's all the time, but it is definitely frequent. Darek discovered that if you enter combat mode briefly (before planting the explosives), exit combat mode, and then leave the map, no crash happens.
It crashes when someone dies from the explosion. Period.
Leaving the map just triggers the explosives instantly, but you will get the same end if you just hang around waiting for the timer to reach zero.
If you have been in combat mode on that map or if you have loaded a savegame directly to that map it will not crash.
Also I think I tested that it was nothing script related by removing all scripts, but I can't really remember for sure.


killap said:
Can't recall if this happens with all followers, but I know Vic suffers from it. If a follower is knocked out in combat and you leave the map, then (again not sure if this always happens) when you enter another map the follower will be unresponsive and acts like a container when you click on him. He'll keep following you around though. I have a save game with Vic in this state
I don't think I ever got to the bottom of this, and I don't think I ever managed to make them act up like that (unresponsive container) in-game by knocking them out several times. I did however manage it (or at least something very similar) by removing their timed events que after they had been knocked out.
I'm sure I wrote something about it, let's see if I can find it.
Here it is...
NPCs that gets knocked out get the Prone status or ((critter_state(self_obj) bwand 2) == 2). They are also added to the timer events queue.
If you rest for 10 min, just let time pass for a minute or just hit next turn while in combat mode (sometimes more than once), they will come to.
That means get up and lose the prone status. This all works great.
Oh, and by prone status I mean they are treated as containers, their animation don't necessarily have to show them lying down.

If you change map before they have come to, they lose the prone status but not the standing up animation from the timer event. Basically, they are not knocked out, but they are still lying down on the ground, just that the animation is not showing it. I don't think this cause any problems (NPCs work as normal), but you may see them fall flat and then stand up again whenever it's time for them to come to.
They don't seem to play the stand up animation while in combat mode.

Marcus for some reason is different than the other NPCs. He will only be prone while in combat. As soon as you exit combat mode he will lose the prone status (but not prone animation). If you walk away far enough from him to trigger his 'follow you' code or if you leave the map, he will follow you around as normal but his animations will be a bit off (they can stop in the middle of a motion). His stand up animation to get back to normal will only happen while in combat mode, not by passing time.

If a critter gets knocked out and the timer event breaks/goes missing he will forevermore be nothing but a walking container. It can be fixed by hex editing the current map save file. The critter is defined as 18000 + his script number, so Myron is 18160 (or 46 F0 in hex). Search for that and shortly after the last instance of it is the place to edit.
EDIT: well, knocking him out again and letting him come to will fix him as well, I guess that's a better solution.

I haven't really been able to trigger any bigger issues (like NPCs refusing to take part in combat).
I'm pretty sure I got someones save earlier where Sulik wasn't responsive until after a few rounds of combat, but I can't remember shit and also I lost everything Fallout related I had in a hard-drive crash a while back.

I'll take that save from you killap ;)
Maybe I can find something more, or at least reconfirm my previous thoughts.
 
Darek said:
I'll take that save from you killap ;)
Maybe I can find something more, or at least reconfirm my previous thoughts.
First post in the Random Encounter bug section of the RP wiki. It as misreported as a map issue, when the behavior of Vic is like the issue at hand.

Also, wow I forgot how much research you did on that issue. That's a great bit of info!
 
@ killap

Yeah that's the same issue I had with Sulik on a save I got from someone else. I have never been able to make that happen on my own saves. Basically the timer event is set to only trigger the 'wake up' sequence while in combat mode. Perhaps only that part of the data is written to the event que and the rest goes missing or wrong. I have no idea why or how it does that for some people but never for me. They will stay unconscious until you let a round of combat pass (well, until it's their turn in combat really).

That is mostly guessing though as I'm not all that good with hex.
I mean I was able to figure out that function 24 of save.dat is the event que and that entries about the NPCs and the player gets put here, stuff like duration of drug influence and getting knocked out also goes here. Oh, and that "rm_timer_event" will remove ALL timer events in the que for the specified critter and not only from the "Timed Event Procedure" in the scripts.
But I do not know what all the data in the que means.
 
About sfall
Whether to increase the function:
Modify dialogue text color
Turned on or off the mouse movement in the text color changes
 
Can anything be done, or indeed, has anything been done about the considerably game-unbalancing combat bug that causes corpses to obstruct burst fire?

In my opinion, this is one of the very worst engine bugs in FO2, as it significantly affects combat and majorly impacts the weapon balance. It makes every single burst weapon markedly less useful than intended by the game developers.

If you are aware of the bug, you can very often maneuver around it and avoid its crippling effect, but that is not always possible, and even when it is, there is a cost (an action point cost for moving away from the dead critters).

The more dead critters you have around you, the harder it becomes to keep track of which hexes are affected -- where burst fire can be used effectively and where it will be practically useless. In scenarios where you are surrounded by numerous dead multi-hex critters (large deathclaws, centaurs), burst fire will be 95% useless.

Interestingly, FO1 does not have this bug, so it might not be something deeply inherent in the engine.

Apologies if this bug has already been discussed in this thread. Ninety-six pages are a lot to read through.
 
CorpseLineOfFireFix. I believe it's on by default, although you can change it from 1 to 2 for a stronger effect.

Actually, I'm not entirely sure that effects bursts... It might only help for the first shot.
 
@Timeslip

There have been a few complaints about how critters choose targets during a fight.

Others have suggested that a critter chooses a target at the beginning of a fight and does not change their target if blocked, only when their target is dead will they change to a new target.

Could you confirm this is controlled by the engine, please?

If yes to above:
Could you verify if a critter will not change it's target if blocked, please?

Could you also check if having a critter choose a new target at the beginning of each round; if they are blocked from getting to/hitting their target or their target is dead, can be done, please?
 
I would rather they pick a target every turn, not only if they are blocked.
As I was the one (or one of them) that Glovz was referring to, I want to mention that I haven't done any testing, but that was how it felt. Maybe they do pick targets but they are just too stupid to pick a better one(or prefer to keep the one they chose the fist time)? Also I don't know how big effect their target setting in their AI has. It also feels that most/every critter will switch target to the player if you attack them. Again, I haven't verified anything, but it would be great to know more of how it works exactly, and if anything could be improved.
 
killap said:
The pipboy is disabled per map and there isn't a way (afaik) via normal scripting to toggle it. Unless there is a way to do this via sfall (or the option is added in a future version) we can't do anything about it.
Any thoughts Timeslip?
 
I notice that with OverrideCriticalTable=2, it's impossible to cripple Frank Horrigan or even score damage with some multiplier. Is that intentional?
 
gvx said:
Can you increase Inventory.cpp in translation?
Those strings don't need to appear in translation.ini; they're message numbers 542 and 543 in PROTO.MSG. Those default english strings are only used if they're missing from the message file.

Edit: And the S: is message 35 in INVENTRY.MSG
 
This feature that is working in Fallout 1 is broken in Fallout 2.

Fallout 1 Manual said:
Reserve Movement. If you hold down the CTRL key while
clicking to move, you will reserve enough action points to perform the
current action for the active item. If you want enough AP left over to
shoot your target, but you want to get as close to it as possible (to get
the best possible chance to hit), then hold down the CTRL key when
you click to move. Example: You have 9 AP. Your current weapon is
a Colt 6520. It costs 5 AP to shoot the gun. If you hold CTRL down
when you click on a hex that is 8 hexes away, you will only move (9-
5) 4 hexes towards the destination hex. You will have 5 AP remaining,
just enough to shoot the pistol.
It only works if you hold down the CTRL button when you have equal or less APs required to perform the attack.
If you have more APs when pushing CTRL it will not stop where it should and instead spend all APs.

Is this something that could be fixed?
 
Darek said:
This feature that is working in Fallout 1 is broken in Fallout 2.

Fallout 1 Manual said:
Reserve Movement. If you hold down the CTRL key while
clicking to move, you will reserve enough action points to perform the
current action for the active item. If you want enough AP left over to
shoot your target, but you want to get as close to it as possible (to get
the best possible chance to hit), then hold down the CTRL key when
you click to move. Example: You have 9 AP. Your current weapon is
a Colt 6520. It costs 5 AP to shoot the gun. If you hold CTRL down
when you click on a hex that is 8 hexes away, you will only move (9-
5) 4 hexes towards the destination hex. You will have 5 AP remaining,
just enough to shoot the pistol.
It only works if you hold down the CTRL button when you have equal or less APs required to perform the attack.
If you have more APs when pushing CTRL it will not stop where it should and instead spend all APs.

Is this something that could be fixed?
Damn I didn't even know this feature existed. Cool.
 
lol, I never heard of that too, even though I was reading the manual over and over a million years ago.
 
I have two requests for sfall:

1) Can the prompt whether you want to continue the game after the slideshow be disabled?
Looking at our designs, it seems post-game-end play should be disabled in MR. We can do that by simply killing the PC after the slideshow, or trapping him/her on a map without exit, but it would look much neater if the option to continue playing was simply disabled.

Request number 2 is more difficult to explain, so background first:

I added code to the player character's script which summons certain effects when an item is used on the player character. For instance, it is featured in our bleeding system (where you need to use a certain item to stop the bleeding), and I also intend to use this mechanism to make new skill books.
It works fine if you use the items from your active hand (i.e. you click on the item in the middle of your interface and point at the player), or when you hold down left mouse key on the player, select the pocket option (Use Item) and choose the desired item from the pop-up window.
However, if you open the inventory and hold down left mouse key on the item and choose the hand option (Use Item), the scripted effects are not applied.

Example: On my MR playthrough I have some pills that stop the bleeding/HP loss. It is a 'drug' type item, with the "Use On" option enabled, which grants you 2-5 HP (proto effect) and pauses the bleeding for several hours (scripted effect).
If I use it from my active hand, or by holding down the mouse button on my character, it works as intended. However, if I open the inventory screen and use the item from there, only the 2-5 HP effect set up in the prototype of this item works, but the "pause bleeding" effect, which is scripted in the player's script, does not.

So, request:
2) Can the abovementioned 'bug' be fixed in sfall, or maybe you can recommend how to circumnavigate it with some kind of global script?

Thank you in advance!
 
It should be possible if you kill the game after the slideshow. Something along

Code:
endgame_slideshow;
signal_end_game;

Can't test it right now, but I think that's how I did it in my mod.

However, if you open the inventory and hold down left mouse key on the item and choose the hand option (Use Item), the scripted effects are not applied.

It works, but the item must have special Flags set in the proto file. Give it the "UseOn" and NOT "Use" flag. Also it does only work with normal items, not with drugs, if I remember correct. So you will need to script the whole effect. Pretty annoying, but I couldn't find any other way that worked good.


/Edit: While we are at it, is there a script command to close the inventory?
 
NovaRain said:
I notice that with OverrideCriticalTable=2, it's impossible to cripple Frank Horrigan or even score damage with some multiplier. Is that intentional?

There's no way this is intentional; I've had situations where I cause zero damage to Frank with criticals (5 with Living Anatomy), but cause totally normal damage from non-criticals. Something is very wrong here and I don't know what, but it certainly makes that fight a hell of a lot harder.
 
Back
Top