Thread: Ambermoon
View Single Post
Old 23 June 2009, 18:50   #191
st-th
Bad Taste Development
st-th's Avatar
 
Join Date: Jul 2008
Location: Bonn / Germany
Age: 46
Posts: 48
Progress on v1.08 is steady, but rather slow for all kinds of reasons.

As I said before, I will release my first update when most of the important things on my to-do list are addressed. This isn't the case yet, and probably won't be for the next couple of months if development speed stays the same as it has been over the last few weeks .

The good news is that the things I have finished work nicely. A few highlights:

There's an "auto de-runer" now. If you're like me and can't be bothered to decode all these runes by yourself, turn this one on and let the game do it for you.

I have added support for ProPack (a.k.a. Rob Northen Cruncher / RNC). Since the LOB cruncher Thalion used is apparently not publically available, support for another packer is needed to be able to pack the new text files. ProPack is "industrial proven" and creates files that are ~30% smaller than LOB. You could actually repack *all* files and the game would fit on 7 or maybe even only 6 disks.

Completely new memory allocator - this is probably the most important code patch so far. The original code has many problems, depending on memory configuration and fragmentation: It can allocate only CHIP memory, leaving megabytes of FAST memory unused. It can starve the OS into a "no memory" situation (this causes the "not enough memory to load saved game" bug on SFS partitions). It can simply loop forever if a race condition is triggered. It can cause $715F0041 gurus upon startup and quitting if you use the TLSFMem patch. In fact, it only works by chance, because it depends on scratch register content. All this in approx. 400 bytes of assembly code . My own code fixes all that and also always allocates memory for all internal "memory slots". This seems to fix or at least reduce the "eagle landing crash" bug as well. However, there are still a few issues in the game's memory pool functions which need to be addressed.

All external #?_Texts.amb files can be completely rebuilt from scratch now. This fixes all text parser related crashes, but obviously not the numerous inconsistencies contained in the texts themselves. I've already started to go over these files text-for-text, comparing them to the German version and correcting the most obvious and important things, but it will take some time before this can be considered "good enough for release".

Many text strings stored in the main executables have been re-translated, item names and attributes corrected. Text layout has been improved a bit here and there. Much more to do, esp. the main text table which contains 300 strings.

I have also found a few new issues / bugs . The most notable:

You can't trigger two messages in the Thalion Office. The texts are present in the data file, but they won't be loaded and displayed. The first one is when you look at the elevator: >>> A LARGE SIGN HANGS ON THE DOOR: "I AM THE WEAKEST LIFT THERE IS!" <<< The other is when you try to climb up the stairs: >>> JUST AS YOU CLIMB ONTO THE LOWEST STEP YOU HEAR A HUMMING SOUND FROM ABOVE AND THEN A LOUD CRY. FRIGHTENED, YOU MOVE BACK. <<< This is only cosmetic, but kinda weird. Maybe they got removed on purpose, so people don't think there's more to it? While in the Thalion Office... The English version also has a pimped-up "Mando's Sword" compared to the German one. I've pimped it up even more as I use it for testing purposes , it's a cheater weapon anyway.

Uncursing items doesn't work at all. Dito for the German version. As there is only one cursed item in the whole game (Schlangenhelm / Snake Helmet), this is only important if you actually equip the thing as you can't remove it anymore and it cripples the character's stats badly. Trying to cast "remove curses" randomly? destroys objects you wear and messes up character stats. If I can't fix this one, I'll probably make the helmet uncursed and change the spell's name and effect so they won't have a chance to ruin people's games.
st-th is offline  
 
Page generated in 0.05431 seconds with 9 queries