Slightly changed the format of nancy.dat:
- curtain animation frames are no longer stored
- number of cursor TYPES is stored instead of number of
non-item cursors
- map access IDs were moved to a separate chunk outside
the general GameConstants
- GameConstants now stores the ID of the event flag
that gets set after the player has won the game
at least once before.
Added a patch for a softlock between day 2 and 3, as well
as one at the very end of day 3. Added a patch for a buggy
scene that won't work properly without subtitles. Both of
these patches are supposed to be distributed by HeR, but
the file on their website does not actually contain them;
thus, they're both homebrew.
Added code for reading .cif files, and combining them into
a ciftree, which is then to be written to nancy.dat. Removed
the nancy2_patchtree binary file, and added the four source
files in its place.
Added facilities for embedding game patches into nancy.dat
Added two game patches for nancy2:
- one of the original patches, as distributed by the original
devs. Specifically, only the patch to extend the end-game
timer; there exists another patch that fixes an error when
double-clicking a specific cupboard, but that's caused by
an engine bug that does not exist in ScummVM.
- a new, custom patch that fixes a nasty softlock caused
by incorrect dependencies in a certain scene.
More fields needed to be added to each nancy game's entry
in nancy.dat. Since this would've required bumping up the
file version anyway, the opportunity was taken to rework
its structure so future changes are smoother.
The new format is based around sections, each with a tag
denoting its contents, and an offset for easy skipping.
Conditions for dialogue, goodbyes, and hints have an
additional type field, with the newly-added difficulty type
being required by nancy5's data. Data for sound
channel types has also been added, since nancy4 and up
changed the structure of the channel data. And lastly, files
that were incorrectly using spaces for indentation have been
switched to tabs.