Post reply

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.
Name:
Email:
Subject:
Message icon:

Verification:
Type the letters shown in the picture
Listen to the letters / Request another image

Type the letters shown in the picture:
What color is grass?:
What is the seventh word in this sentence?:
What is five minus two (use the full word)?:

shortcuts: hit alt+s to submit/post or alt+p to preview


Topic Summary

Posted by: neroman
« on: January 13, 2007, 01:22:20 PM »

I just gave it a go, but couldnt getthe .jar file to work. It keeps giving me a Java Virtual Machine Error "Could not find the main class. Program will exit" even after i rename it to "jar -jar Beregostcrashfixer.jar"

I made the post already so hopefully i'm just doing something wrong and it will be fixed
Posted by: Miloch
« on: January 13, 2007, 03:34:38 AM »

Try using the 1.1 version in Ascension64's link immediately above yours.  He found some additional forms of saved game corruption fixed in this version (which also has an easier user interface).  He'll probably also be interested in your saved game.
Posted by: neroman
« on: January 13, 2007, 03:03:55 AM »

i can provide the saved game folder to whoever needs it..just let me know how to get it to you
Posted by: neroman
« on: January 13, 2007, 03:01:00 AM »

I still cannot get my saved game to work after applying the fix.

My steps were as follows:

Im playing baldurs gate tutu, and the game is installed in C:\Program Files\BaldursGateTutu

I dled the .tp2 file, the weidu.exe (from the weidu198.zip) and the near infinity jar, and threw them all into my game directory

i renamed the weidu.exe to the SETUP-Crashfix.exe

i used near infinity to decompress my quick save game

I went to the decompressed game folder (path: C:\Program Files\BaldursGateTutu\_000000001-Quick-Save) and copy/pasted the FW3300.ARE file to the main game directory (C:\Program Files\BaldursGateTutu)

I rain the SETUP-Crashfix.exe  - it asked me to press "I" to intsall, whereupon it logs the following:

"Copying and patching 1 file . . .

No errors detected.

SUCCESSFULY INSTALLED {Beregot crash fixer]

Press ENTER to exit"

I take the FW3300.ARE file and copy-paste it back into the decompressed folder, and use near infinity to recompress the saved game

Upon runniing the BG tutu and trying to  loading the saved game, it still crashes


Any ideas?

Posted by: Ascension64
« on: January 03, 2007, 09:23:46 PM »

OK, with my novice skills in Java, I've written a Java class that does exactly the same thing as the Setup-CrashFix.tp2. Use it in exactly the same way except in step 9, you need to start it by "java Beregost". I'll see if I can get FredSRichardson to include this in NearInfinity, although it will definitely need a few modifications. With extremely few comments in the NI source code, it is really hard to make sense of.

Class is no longer available. See this instead.
Posted by: Miloch
« on: December 22, 2006, 07:13:17 PM »

If you still have such a save game (particularly around a point where it's prone to crashing) we would be interested in checking it out.  I've heard of at least a couple other folks who can reproduce this glitch in vanilla BG1 but as yet, haven't been able to obtain any data.
Posted by: Elhoim
« on: December 21, 2006, 12:20:34 PM »

I had some Beregost crashs in a BG installation with Baldurash and Dudley fixes. The good thing was that they didn´t corrupt my saves.
Posted by: Miloch
« on: December 15, 2006, 03:06:35 AM »

Edited my earlier procedure to use Ascension64's crash fixer instead (also included a link for the code).  As the name implies, this will fix a saved game that crashes on load.  But to repeat Ascension64's post elsewhere, if you have a saved game prone to crashing, we'd like it for testing for a more comprehensive fix to this problem.

As a side note, I came across someone who has hit this problem on a vanilla patched BG1 with no mods or conversions (Tutu/BGT) or even TotSC.  Hopefully I can get more data on this and draw some conclusions from it (doubtful but who knows).
Posted by: Miloch
« on: November 25, 2006, 10:54:50 AM »

And for the record, just fixing the erroneous spell slot back to spell level 5/wizard 1 on the actor will circumvent the crashing, even on a game I had that would CTD on load.  That is, if you want a somewhat less crude solution than deleting the actor (or overwriting the saved FW3300/AR6700 with an "uncorrupted" area). :P  I can't reproduce the crash after making this fix, even in heavy stress-testing moving between Beregost and other areas multiple times.  And this is on a saved game that would previously crash roughly 20% of the time when moving from Beregost to another area.  But yeah... I guess that doesn't necessarily mean we've pinpointed the cause of the corruption.  >:(

Must... Kill... Bereghost...
Posted by: Miloch
« on: November 25, 2006, 10:13:13 AM »

Yes, the corruption is in spell level slot 5.  Why didn't you say you'd found this out earlier? :P  Instead of Spell level: 5, Type: Wizard (1) it has become Spell level: 16399, Type: Unknown (8228).

So what could be causing a corruption on a random CRE/actor in a particular slot in a particular area (but only in most cases, when moving from that area to another)? ???

I really thought it was an EAGLE at first.  They fit the pattern, by introducing a random element via the RANDFLY script.  The first game I had that crashed really bad (wouldn't even load on startup) gave me an error "Actor #2 (EAGLE [5220.1642]) is out of map' in DLTCEP.  But I guess that's normal behaviour for an eagle since they fly onscreen from off the map.  Anyway, removing the eagle (even all 3 of them) had no effect, and they're present in other areas, so I discarded that theory.

I get some other errors about invalid door opening messages but I assume that's immaterial too since I get it when loading other areas.  And I get this sort of thing when running NI in batch (or using the debug console):
Code: [Select]
Hole: BALDUR.GAM off: 54h len: 96
Hole: BALDUR.GAM off: 174h len: 1920
Hole: BALDUR.GAM off: 1444h len: 29764
Hole: BALDUR.GAM off: 8948h len: 15296
Hole: BALDUR.GAM off: d0dch len: 105440
Hole: BALDUR.GAM off: 2cc5ch len: 400

Is that normal?  I get it even when looking at the standard BALDUR.GAM template (at least the first couple offsets).  If I try opening that in DLTCEP I get "Game loaded with errors (corrected)."  Be nice to know what it considered to be errors, but the log shows nothing.  I do notice in NI the "Non-player characters" section has the same character a bunch of times and no others (a seemingly random character, could be Kivan on one game, Montaron on another) and this may be what DLTCEP fixes, since I have a list of different NPCs when I load the .GAM file.

Any ideas?  The truth is out there...
Posted by: Ascension64
« on: November 25, 2006, 06:07:01 AM »

I haven't physically tested it, but I don't think that fixes the problem permanently. A few of the savegames I've 'collected' over recent years that have crashes while loading Beregost have an actor corruption, but not in the same actor --- one day it might be an Eagle, and another day it might be a Commoner. Here are three instances where I've reported the corruption in AR6700.ARE (this is the BGT version of the area, but it happens similarly in Tutu's FW3300.ARE):

[01]kharan5876
AR6700.ARE - corrupt Actor 23 spell memorization level 5 for MTOWBE at (3092,2388)
hex offset 0x7d64 reads: ff ff 01 12

[02]kharan5876
AR6700.ARE - corrupt Actor 3 spell memorization level 5 for EAGLE at (3732,1300)
hex offset 0x2974 reads: b7 00 00 00

[01]Holod
AR6700.ARE - corrupt Actor 12 spell memorization level 5 for MTOWBE_B at (3535,2873)
hex offset 0x4f28 reads: ff ff 01 12

I think I've reported this a long time ago, but the corruption in the save game always occurs at the spell memorization level 5 slot. And to repeat another thing, it doesn't help us prevent the crashes happening in the first place. It does, however, allow us to manually fix savegames that become corrupted.

P.S. Miloch, you might want to check that the corruption occurs in spell memorization level 5.
Posted by: berelinde
« on: November 24, 2006, 10:57:32 PM »

Give me time. I'll manage it.
Posted by: Macready
« on: November 24, 2006, 10:54:52 PM »

Hello -

Hopefully you are right -- it would certainly be nice to put this glitch to bed.

Please do post if you try this and are still able to break the game.
Posted by: Miloch
« on: November 24, 2006, 10:30:05 PM »

Ok, well I went through a lot more than this to find the problem but you don't want to hear about that... seriously.  You just want to fix the problem, right?

Edit: 15 December 2006
Thanks to Ascension64, we have a "saved game fixer" that should restore any saved game prone to crashing without noticeable data loss.

This is the procedure for fixing a saved game corrupted by a Beregost crash.  "Game folder" means the folder where you've installed EasyTutu, Tutu, BGT or BG1.
1. Back up the saved game you want to fix (by copying and pasting the folder somewhere else).
2. Download SETUP-Crashfix.tp2 and save it in your game folder.
3. Download WeiDU.exe (or copy an existing WeiDU or a mod's .exe) and rename it SETUP-Crashfix.exe in your game folder.
4. Load up Near Infinity in your game folder.
5. Expand the Save folder and expand the saved game to be fixed.
6. Click on BALDUR.SAV and Decompress it.
(http://sony.dynalias.com/bg/savfix1.gif)
7. Toggle to your game folder in your OS (e.g. with Windows Explorer).  There should now be a subfolder containing your decompressed saved game files (e.g. C:\Games\EasyTutu\_000000001-Test1\).
8. Locate the file FW3300.ARE (or AR6700.ARE for BGT or AR3300.ARE for BG1) in this subfolder.  Copy and paste it one level up in your main game folder.
9. Run SETUP-Crashfix.exe.  If you've done everything correctly, you get a message indicating a successful fix and the Crash Fixer uninstalls itself.
10. Copy the fixed FW3300.ARE and paste it into your temporary decompressed subfolder (the one starting with an underscore).
11. Toggle back to Near Infinity and Compress to rebuild the .SAV file (click Overwrite, OK when prompted).
12. Close Near Infinity and fire up Tutu (or BGT or BG1).
13. Enjoy a crash-free Beregost.  Visit the many pubs.  Order a round for the house at each one.

Technically, what happens in a Beregost-crashing saved game is that a random creature in the area experiences mage spell memorization corruption in its level 5 slot (we don't know how, as yet).  What the Crash Fixer does is looks for such corruption and if it finds it, zeroes it out.  This isn't a problem data-wise, since it affects only NPCs in the area.  The highest level NPC able to cast mage spells is Silke, and she can only cast up to level 4.

After this fix, I haven't been able to reproduce the crash, but do let us know if you experience a recurrence.
Posted by: berelinde
« on: November 24, 2006, 08:35:40 PM »

Well drink up, man! I want to hear what you did!