Open red-kangaroo opened 3 years ago
I guess it could be a clash with dungeon index + deungeonLevel index when creating the filename.
See the dungeon indexes:
#define RANDOM 0
#define ELPURI_CAVE 1
#define ATTNAM 2
#define NEW_ATTNAM 3
#define UNDER_WATER_TUNNEL 4
#define EMPTY_AREA 5
#define XINROCH_TOMB 6
#define BLACK_MARKET 7
#define ASLONA_CASTLE 8
#define REBEL_CAMP 9
#define GOBLIN_FORT 10
#define FUNGAL_CAVE 11
#define PYRAMID 12
#define MONDEDR 13
#define IRINOX 14
#define DARK_FOREST 15
GloomyCaves.dat, has 13 levels!
It will clash with:
Now some filenames will end with: .111 # ELPURI_CAVE level 11 .111 # FUNGAL_CAVE level 1 !!!
A way to fix this would be to put some non numeric char between dungeon and level when creating the filenames, could be: .1_11 .11_1
EDIT: it may be simple to patch:
./Main/Source/dungeon.cpp
void dungeon::SaveLevel(cfestring& SaveName, int Number, truth DeleteAfterwards)
{
outputfile SaveFile(SaveName + '.' + Index + '_' + Number);
level* dungeon::LoadLevel(cfestring& SaveName, int Number)
{
inputfile SaveFile(SaveName + '.' + Index + '_' + Number);
and do the same about bones files.
A player reported that they entered GC1 and the floor it pulled was just the salt mines from the goblin hideout in Aslona. Going down a floor immediately put them in GC6 and going back up then in the Enner cave. They later had a repeat with GC2 being generated with a bone file from fungal caves.