Fallout 2 Restoration Project 2.2 - OPEN BETA (ie NOT FINAL)

Status
Not open for further replies.
Sduibek said:
Well not sure if my opinion matters but if Start/End combat on each map load fixes it, I think the 1 second of that during each map load is much better than crashes. Everybody hates crashes.
Of course your opinion matters.

We're basically trying to figure out a way to use the enter/exit combat hack to fix the problem but be the least intrusive (i.e. not on every map enter). Or best case to work around it via sfall somehow.

Darek/Timeslip: Can you post save games that suffer from the explosive crash so that I can try them on my end?
 
Haha this is crazy. Why do we get so different results?

Can you first confirm if you plant the explosives right when you load the map, or if you leave the map and come back again to do it.
Like I've said before, I don't see any crashes on maps I've just loaded.

Oh wait, I just tried your scenario 1 step by step and I got the crash. I didn't see it because I didn't run back and forth enough.
So there are actually two different scenarios, one with an insta-crash and the other corrupting the map (sort of).

Your Scenario:
1. Plant 5 explosives on the President. (need this many to kill him)(ON LOADED MAP)
2. Leave the map to the reactor area (exit above the President)
3. Come back to the President map.
4. Leave the map to the reactor area again.
5. BOOM CRASH.

Sfall fix don't work, gives good pointers unlike mine that gives bad.


My scenario 1:
1. Load game, leave to reactor map and come back, as it won't crash on load game.
2. Plant dynamite (easier to use the vault suit female near the stairs as she usually only needs one explosive).
3. Leave map or hang around and wait for it to blow.
4. Instant crash

If combat is started anytime after step 1 but before step 4, it will not crash. Using Timeslip's fix will also fix it.


I got one more scenario where the sfall fix won't help. Planting explosives on the ground.

My Scenario 2:
1. Go to the reactor map and plant explosives on the ground next to one of the scientists.
2. Run to the President map to trigger the explosion. Scientist dies.
3. Go back to reactor map.
4. Go back to President map. Crash!

If you during step 3 enter/exit combat, step 4 will no longer crash.


I should probably mention that in both of my scenarios I used sneak when planting explosives, though it probably don't have any effect.
When i tried your scenario 1, I was caught but got no reaction so I could just keep planting them.
Also, to make it even more confusing, when I tried your scenario 1 style and killed the vault suit girl with only 1 explosive it didn't want to crash. But when I used 2 explosives it did. So maybe the amount of explosives matter, or rather that there are two or more separate explosions fucks it up.
 
Darek said:
Can you first confirm if you plant the explosives right when you load the map, or if you leave the map and come back again to do it.
I always did it right after loading the game, but it doesn't matter if I leave the map first and then come back to run through my test steps.


Darek said:
My scenario 1:
1. Load game, leave to reactor map and come back, as it won't crash on load game.
2. Plant dynamite (easier to use the vault suit female near the stairs as she usually only needs one explosive).
3. Leave map or hang around and wait for it to blow.
4. Instant crash

If combat is started anytime after step 1 but before step 4, it will not crash. Using Timeslip's fix will also fix it.
I don't get an instant crash here, but I do get a crash if do the exact steps in my scenario (of course instead killing the vault female this time). Sfall doesn't help either. It prints out a null pointer and then prints out a valid pointer.


Darek said:
My Scenario 2:
1. Go to the reactor map and plant explosives on the ground next to one of the scientists.
2. Run to the President map to trigger the explosion. Scientist dies.
3. Go back to reactor map.
4. Go back to President map. Crash!
Same results if I plant explosives on the scientist. It took several bombs though. I wasn't able to successfully plant them next to him without getting caught, so I just went with planting them on him.


Darek said:
I should probably mention that in both of my scenarios I used sneak when planting explosives, though it probably don't have any effect.
I've always been using sneak too.

Darek said:
When i tried your scenario 1, I was caught but got no reaction so I could just keep planting them.
Happens to me too, but I've done these tests so much it didn't seem to affect the crashing.

Darek said:
Also, to make it even more confusing, when I tried your scenario 1 style and killed the vault suit girl with only 1 explosive it didn't want to crash. But when I used 2 explosives it did. So maybe the amount of explosives matter, or rather that there are two or more separate explosions fucks it up.
Interesting. I always have to use more than 1 explosive for all my tests, but I'll keep trying to see if I can get a kill with just 1 bomb.
 
killap said:
Darek said:
My scenario 1:
1. Load game, leave to reactor map and come back, as it won't crash on load game.
2. Plant dynamite (easier to use the vault suit female near the stairs as she usually only needs one explosive).
3. Leave map or hang around and wait for it to blow.
4. Instant crash

If combat is started anytime after step 1 but before step 4, it will not crash. Using Timeslip's fix will also fix it.
I don't get an instant crash here, but I do get a crash if do the exact steps in my scenario (of course instead killing the vault female this time). Sfall doesn't help either. It prints out a null pointer and then prints out a valid pointer.
You forgot to switch back to the default sfall.dll when testing my scenario, didn't you ;)
I'm guessing sfall doesn't actually do anything when pointer is null, meaning it checks for one problem only.
 
Darek said:
You forgot to switch back to the default sfall.dll when testing my scenario, didn't you ;)
Maybe. :look:

Okay, interesting:

1. Load game
2. Go to reactor map.
3. Come back to president map.
4. Plant explosives on vault girl.
5. Go to reactor map.
6. BOOM CRASH.

OR

1. Load game.
2. Plant explosives on vault girl.
3. Go to reactor map.
4. Come back to president map.
5. Go to reactor map.
6. BOOM CRASH.

So going to the reactor map right after loading the game brought on the insta-crash. But really in the end the scenarios are similar because I go to the reactor map twice, it just depends when I go to it. Timeslip's new sfall does fix the first scenario I just outlined, but there is still a crash if I do the second scenario OR if I do the first but do more back and forth with the maps.
 
Yeah but I think the amount of explosives matters too.
The more the merrier (crashing).

I have a hard time getting vault suit girl to crash with only two explosives, it happens only sometimes.
Often it just reports "ptr is null" and nothing more. Then it don't crash.
Then I've seen "bad ptr" and on a line below "valid ptr". I guess one explosive was good and the other bad. I think anytime you get a "valid ptr" it will crash when changing maps a couple of times.

Furthermore, when blowing up the President with 5 explosives, only two of them reported giving any damage.
Plus I got a ptr is null, and two valid ptr's.
 
Interestingly, this doesn't seem limited to Fallout 2 engine, so I will make sure to implement whatever fix you guys discover.

1. Put live dynamite on a police officer in Oldtown.
2. Left map to Downtown [got message that police officer took ~35 points of damage]
3. Went back to Oldtown, everything fine.
4. Left map to Downtown, crash.

Speaking of which, how do we change how much damage the dynamite and plastic explosives do?
 
killap said:
Sduibek said:
Can combat mode be initiated via script? If so you could do something like this:

If (anycritter) has ProID tickingbomb in inventory, set Localvar1 = 1

Upon critter death, if Localvar1 = 1 then initiate and immediately end Combat Mode
Yeah, that could work and I believe this is something Darek had proposed to me awhile back. I believe my response was "Eww". But, I suppose it's better than having the game crash and burn. Or people can just stop doing cheap assassinations. ;)

This. Just my two cents, but if you guys can't find the root of the problem please don't go implementing invasive "fixes" like the ones Sduibek and (to a lesser extent) Darek are proposing. The player tries to cheat; the game crashes. Don't make a bigger problem out of this than it really is.
 
JimTheDinosaur said:
killap said:
Sduibek said:
Can combat mode be initiated via script? If so you could do something like this:

If (anycritter) has ProID tickingbomb in inventory, set Localvar1 = 1

Upon critter death, if Localvar1 = 1 then initiate and immediately end Combat Mode
Yeah, that could work and I believe this is something Darek had proposed to me awhile back. I believe my response was "Eww". But, I suppose it's better than having the game crash and burn. Or people can just stop doing cheap assassinations. ;)

This. Just my two cents, but if you guys can't find the root of the problem please don't go implementing invasive "fixes" like the ones Sduibek and (to a lesser extent) Darek are proposing. The player tries to cheat; the game crashes. Don't make a bigger problem out of this than it really is.
Personally I don't see it as cheating whatsoever, but :shrug: I think of it more as:

1) creative use of items
or 2) a way to use Sneak and Steal to your benefit in a game where their use is marginal.

Not everyone has a code of honor or whatever while playing. If it's fun and effective, I see no problems with it. "People shouldn't X" is a stupid argument (no offense Darek) because if those people are enjoying themselves, why should we give a shit why they do it. What matters is they're having fun and got a crash.

EDIT: Furthermore, Fallout is specifically designed as an Anything Goes and Multiple Solutions To Everything game. That was the stance of the developers. I believe dropping bombs in people's pants to murder them falls under Anything Goes and Multiple Solutions.
 
Hmmm... if the change Timeslip implemented appears to fix the dynamite issue sometimes and not others and the sequence of running between maps is a factor, might this issue be a race condition?

Is there a way to determine the order of events currently occurring and seeing if they differ at any given time?
 
Sduibek said:
Personally I don't see it as cheating whatsoever, but :shrug: I think of it more as:

1) creative use of items
or 2) a way to use Sneak and Steal to your benefit in a game where their use is marginal.

Not everyone has a code of honor or whatever while playing. If it's fun and effective, I see no problems with it. "People shouldn't X" is a stupid argument (no offense Darek) because if those people are enjoying themselves, why should we give a shit why they do it. What matters is they're having fun and got a crash.

EDIT: Furthermore, Fallout is specifically designed as an Anything Goes and Multiple Solutions To Everything game. That was the stance of the developers. I believe dropping bombs in people's pants to murder them falls under Anything Goes and Multiple Solutions.

Of course dropping dynamite in someone's pants is fun; the devs definitely thought so. They also made it so that you couldn't use it as an exploit by usually making a lot of people go hostile when you do it. The fact that players have managed to use it as an exploit by leaving the map is very clever and all, but you can't say that this fits with the "stance of the developers". Nobody purposefully designs a game to be exploitable.

It also has nothing to do with having a "code of honor"; like I said, by all means fix the problem. But don't then go overboard and cause the player to enter/exit combat every map entry like you proposed just to facilitate an exploit when you can't fix the underlying problem.
 
JimTheDinosaur said:
This. Just my two cents, but if you guys can't find the root of the problem please don't go implementing invasive "fixes" like the ones Sduibek and (to a lesser extent) Darek are proposing. The player tries to cheat; the game crashes. Don't make a bigger problem out of this than it really is.
I'm certainly not going to add something that enters/exits combat upon every map load and nor am I going to implement something completely along the lines of what Darek had, since it's still too invasive for my tastes: If I hadn't entered combat and then arm some explosives, his code will enter/exit combat to counter the eventual bug. I can see many situations where this can happen and would cause great annoyance.

I'm in the process of creating something that is ONLY triggered ONCE at the map of where the explosion took place and only if a critter died as a result of the explosion. Combined with Timeslip's new test dll, this seems to cover all the crash situations I can reproduce with my current save game. Yes the game will enter/exit combat once, which may seem odd, but it fixes the problem. If I am successful with this experiment, then I will consider making it an option in the installer. However, only those who go around using explosives to kill people will benefit, and if you don't go around doing this, then you won't be bothered by the fix or even know it's there. Really, everyone wins.
 
Sduibek said:
(no offense Darek)
That wasn't me. :lol:

@ JimTheDinosaur
The game crashes even if you hang around the map and wait for the explosion to go off (which sfall now fix). And what if the transition between maps after that makes it crash too (a scenario I haven't checked). Then it's no longer an exploit, is it?

Furthermore, I haven't ever been all that keen on "my fix" either.
I have talked about the issue and my code before, not mainly to get it included, but rather for people to understand the issue, see how it can be fixed and hopefully improve it or come up with a better solution.
I thought it was better than nothing. Maybe. You know until a better solution comes up. Which by the looks of things, it just might.
If killap gets it right the only ones who will see that half second of enter/exit combat are those who otherwise would have gotten a crash. I don't think they will mind.
 
killap, once the code is finalized (if you do end up coding something for this) if you would please PM me that code I'd greatly appreciate it. I didn't realize this was even an issue before, so including that fix (for those that need it) in the next version of FIXT is something I plan to do. I trust ya'll to figure out the least invasive version (based on the discussion so far) so I'd rather use your code than make my own fix.

What exactly does Timeslip's fix do? Is it something that can be implemented using actual scripting? (in an SSL file)

Thanks <3
 
@Sduibek
Sadly all elements of this fix won't work for F1. I'll be using hook scripts that are only available in sfall for F2. And, Timeslip's latest fix is in the dll she compiles for F2, not F1.
 
Just finished Fallout for the first time and now I'm eagerly awaiting the final version of this mod so I can play through Fallout 2!
 
killap said:
Darek/Timeslip: Can you post save games that suffer from the explosive crash so that I can try them on my end?
Unfortunately my fallout 2 install is so screwed up with my own junk that I can't load anyone elses games and no-one else can read mine. I should make a clean install and an RP install at some point...

This is my current action plan, for what it's worth:
*Visit gecko, run a script that kills all critters on the map other than the one I'm experimenting on. Go back to modoc, save.
*Restart the game, run to gecko, run a script that loops over all critters and adds a hardware break-on-write breakpoint on the problem field of each critter. (Which is why I needed to kill them all off; intel processors only allow 4 hardware breakpoints at once, iirc)
*Start combat, identify the function that sets the value to 0.
*If that function is a leaf function that doesn't call anything else, add a call to it at the start of the explosives code. If not, try and find out what other fields it resets, and do them all manually.
*drink cider.

Hopefully that will result in a more robust fix than my current hack.
 
WHATUP BEARDUDE think we'll see a release date soon? mad hyped for this game be like religion to the eyes and ears for anybody going to lose focus on this project prince scholar set em straight :p
 
Status
Not open for further replies.
Back
Top