Bugs and issues in 4.1.2

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • Nick
    replied
    Originally posted by Ingwe Ingweron
    Any ETA on this bug-fix? It's such a pain in the butt having to pick up weapons from the floor, wield them, remember the blow/damage amounts, re-wield principal weapon, then compare. It was so much better when Inspecting the weapon on the ground or in the pack gave accurate information.
    I will try to get back to it before too long. Should be easy now PowerWyrm has done all the work for me

    Leave a comment:


  • PowerWyrm
    replied
    There are still issues with room of chambers after fixing the above... When you highlight inner and outer walls, there are normal isolated walls remaining inside the layout... and some isolated floor tiles around them (with outer walls around those floors and walls). This feels wrong.

    Leave a comment:


  • PowerWyrm
    replied
    Originally posted by PowerWyrm
    Stair placement inside rooms of chambers:



    This is as horrible as stairing inside a Hellpit or similar GV...
    Ok found the reason why... the code never creates outer walls, so the rooms are pierced by corridors instead of being connected from the outside. The faulty code:

    Code:
    			if (square_iswall_inner(c, y, x)) {
    				for (d = 0; d < 9; d++) {
    					/* Extract adjacent location */
    					int yy = y + ddy_ddd[d];
    					int xx = x + ddx_ddd[d];
    
    					/* Look for dungeon granite */
    					if ((c->squares[yy][xx].feat == FEAT_GRANITE) && 
    						(!square_iswall_inner(c, [B][COLOR="Red"]y, x[/COLOR][/B])) &&
    						(!square_iswall_outer(c, [B][COLOR="Red"]y, x[/COLOR][/B])) &&
    						(!square_iswall_solid(c, [B][COLOR="Red"]y, x[/COLOR][/B])))
    					{
    						/* Turn me into outer wall. */
    						set_marked_granite(c, y, x, SQUARE_WALL_OUTER);
    
    						/* Done; */
    						break;
    					}
    				}
    }
    /me thinks it should be "yy" and "xx" there...

    Leave a comment:


  • PowerWyrm
    replied
    Stair placement inside rooms of chambers:



    This is as horrible as stairing inside a Hellpit or similar GV...

    Leave a comment:


  • Ingwe Ingweron
    replied
    Originally posted by PowerWyrm
    Looking at the code, the only difference is that now it uses calc_bonuses() instead of doing some hack for off weapon extra blows....
    I completely defer to you and Nick about the code. All I know is that, it seems to me, damage shown for a weapon in the pack or on the floor should be the same as if wielded (and whatever weapon actually in hand were not wielded).

    Leave a comment:


  • PowerWyrm
    replied
    From dungeon_profile.txt:

    # Very rare rooms (rarity = 2)
    room:monster pit:0:11:33:5:1:2:8
    room:monster nest:0:11:33:5:1:2:16
    room:Medium vault:0:22:33:30:0:2:38
    room:Lesser vault:0:22:33:20:0:2:55

    Doesn't matter if the cutoff of the last entry isn't 100?

    Leave a comment:


  • PowerWyrm
    replied
    Originally posted by Ingwe Ingweron
    Any ETA on this bug-fix? It's such a pain in the butt having to pick up weapons from the floor, wield them, remember the blow/damage amounts, re-wield principal weapon, then compare. It was so much better when Inspecting the weapon on the ground or in the pack gave accurate information.
    Looking at the code, the only difference is that now it uses calc_bonuses() instead of doing some hack for off weapon extra blows.

    Old code:

    Code:
    extra_blows = 0;
    -
    -	/* Start with blows from the weapon being examined */
    -	extra_blows += obj->known->modifiers[OBJ_MOD_BLOWS];
    -
    -	/* Then we need to look for extra blows on other items, as
    -	 * state does not track these */
    -	for (i = 0; i < player->body.count; i++) {
    -		struct object *helper = slot_object(player, i);
    -
    -		if ((i == slot_by_name(player, "weapon")) || !helper)
    -			continue;
    -
    -		extra_blows += helper->known->modifiers[OBJ_MOD_BLOWS];
    -	}
    The problem I think is that calc_bonuses() doesn't handle modifiers properly:

    Code:
    /* Apply modifiers */
    			state->stat_add[STAT_STR] += obj->modifiers[OBJ_MOD_STR]
    * p->obj_k->modifiers[OBJ_MOD_STR];
    ...
    extra_blows += obj->modifiers[OBJ_MOD_BLOWS]
    * p->obj_k->modifiers[OBJ_MOD_BLOWS];
    I think the code should use the known part here, not rune knowledge. In PWMAngband, I have:

    Code:
    s32b modifiers[OBJ_MOD_MAX];
    
    for (j = 0; j < OBJ_MOD_MAX; j++) {
    modifiers[j] = obj->modifiers[j];
    if (known_only && !object_is_known(p, obj) && !object_modifier_is_known(obj, j, aware)) modifiers[j] = 0;
    }
    ...
    extra_blows += modifiers[OBJ_MOD_BLOWS];

    Leave a comment:


  • Ingwe Ingweron
    replied
    Originally posted by Nick
    The only reason I haven't reproduced the weapon description thing is that I haven't tried yet
    Any ETA on this bug-fix? It's such a pain in the butt having to pick up weapons from the floor, wield them, remember the blow/damage amounts, re-wield principal weapon, then compare. It was so much better when Inspecting the weapon on the ground or in the pack gave accurate information.

    Leave a comment:


  • Nick
    replied
    Originally posted by Sky
    where are my stairs ?
    They're not your stairs, they're Morgoth's

    Leave a comment:


  • Sky
    replied
    it doesnt have to be that one situation, and yet i still feel stairs should be more evenly spread out. i'm ok with a "stairs room" that has 2+ stairs in it arranged in a cool way, but that should count as 1 stair, not multiple.

    Leave a comment:


  • Tibarius
    replied
    stairs location

    Originally posted by Sky
    recently stairs placement has changed, instead of being randomly distributed, they are mostly placed in small side corridors or in some select rooms. however, they can now be all bunched up in the same spot, 5-6 down stairs all in one 5x5 room, with nothing else in the rest of the dungeon. if you want to get out of the level, but cannot get past that one 1-shot mob who is sitting between you and ALL THE STAIRS IN THE LEVEL, that can be a problem.
    Yes i noticed it too that sometimes stairs are not realy distributed over the level. I hadn't such a situation yet you describe.

    Leave a comment:


  • Sky
    replied
    recently stairs placement has changed, instead of being randomly distributed, they are mostly placed in small side corridors or in some select rooms. however, they can now be all bunched up in the same spot, 5-6 down stairs all in one 5x5 room, with nothing else in the rest of the dungeon. if you want to get out of the level, but cannot get past that one 1-shot mob who is sitting between you and ALL THE STAIRS IN THE LEVEL, that can be a problem.

    Leave a comment:


  • Derakon
    replied
    They're eluding me as well, so why don't you explicate a bit?

    Leave a comment:


  • Sky
    replied
    i see that the implications of my question have eluded you.

    Leave a comment:


  • PowerWyrm
    replied
    Obviously in an area you didnt explore... Bottom right area at the end of the small corridor seems to be the most likely place.

    Leave a comment:

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