dungeon_profile.txt

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Tibarius
    Swordsman
    • Jun 2011
    • 429

    dungeon_profile.txt

    So after taking a look at dungeon_profile.txt that seems to be the place where i can configure all the stuff out that does not belong into this game to my understanding - yipee.

    (A) Unluckily labyrinths have a cutoff of -1. That means i cannot prevent them from being generated modifying the .txt file. You need to change code to prevent them from appearing, right?

    (B) If i copy the section of 'Cavern' with a cutoff of 10 behind the next part of classic, the game hangs up entering a level. Why is that? The explanation at the beginning of the file says lower cutoffs sections are just ignored. So this description is not true in all cases?

    (C) It seems i can remove cavern levels if i set the cutoff just to -1. Correct?
    Blondes are more fun!
  • wobbly
    Prophet
    • May 2012
    • 2631

    #2
    Originally posted by Tibarius
    (C) It seems i can remove cavern levels if i set the cutoff just to -1. Correct?
    yes

    Originally posted by Tibarius
    (A) Unluckily labyrinths have a cutoff of -1. That means i cannot prevent them from being generated modifying the .txt file. You need to change code to prevent them from appearing, right?
    yes. Moria & labyrinth levels are placed in the code itself. They are not that difficult to remove if you know how to compile (there are instructions pinned somewhere on the forum). The relevant section of generate.c

    Code:
    /* Make the profile choice */
    
    	if (p->depth == 0) {
    
    		profile = find_cave_profile("town");
    
    	} else if (is_quest(p->depth) && !OPT(p, birth_levels_persist)) {
    
    		/* Quest levels must be normal levels */
    
    		profile = find_cave_profile("classic");
    
    	} else if (labyrinth_check(p->depth)) {
    
    		profile = find_cave_profile("labyrinth");
    
    	} else if ((p->depth >= 10) && (p->depth < 40) && one_in_(40)) {
    
    		profile = find_cave_profile("moria");
    
    	} else {
    
    		int pick = randint0(200);
    
    		size_t i;
    
    		for (i = 0; i < z_info->profile_max; i++) {
    
    			profile = &cave_profiles[i];
    
    			if (profile->cutoff >= pick) break;
    
    		}
    
    	}

    Comment

    Working...
    😀
    😂
    🥰
    😘
    🤢
    😎
    😞
    😡
    👍
    👎