Preparing for 4.2 release

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Nick
    Vanilla maintainer
    • Apr 2007
    • 9634

    #61
    Originally posted by Sphara
    Little bug on Beorn. In monster description, his human form is supposed to move at normal speed and bear form is supposed to move quickly (+10). Still, Beorn has normal speed in both forms.
    Yeah, that's actually intended (it's meant to be only the race that changes), but silly in the case of speed. I'll change that.
    One for the Dark Lord on his dark throne
    In the Land of Mordor where the Shadows lie.

    Comment

    • wobbly
      Prophet
      • May 2012
      • 2629

      #62
      Shouldn't it be everything but hps? I'd expect AC to change for instance. I'm also a little curious about what happens if something shapechanges into a breeder.

      Comment

      • Ingwe Ingweron
        Veteran
        • Jan 2009
        • 2129

        #63
        I think it's wrong that shape-changed monsters get the high-end powers of the new shape. You might look like Huan, or even get the hitpoints, but really, you get all the supreme powers too? And what about shape-changing into things with spell powers? Did the shape-changer get an instant education that took years for the actual one to learn?
        “We're more of the love, blood, and rhetoric school. Well, we can do you blood and love without the rhetoric, and we can do you blood and rhetoric without the love, and we can do you all three concurrent or consecutive. But we can't give you love and rhetoric without the blood. Blood is compulsory. They're all blood, you see.”
        ― Tom Stoppard, Rosencrantz and Guildenstern are Dead

        Comment

        • Nick
          Vanilla maintainer
          • Apr 2007
          • 9634

          #64
          Originally posted by Ingwe Ingweron
          I think it's wrong that shape-changed monsters get the high-end powers of the new shape. You might look like Huan, or even get the hitpoints, but really, you get all the supreme powers too? And what about shape-changing into things with spell powers? Did the shape-changer get an instant education that took years for the actual one to learn?
          The big shapechangers are Maiar, so yeah, I reckon they can do anything they set their minds to.

          Originally posted by wobbly
          Shouldn't it be everything but hps? I'd expect AC to change for instance. I'm also a little curious about what happens if something shapechanges into a breeder.
          As far as what the actual mechanics go, when a monster changes currently they just change their race. So they keep their current hitpoints, status effects, and inventory, but for many things it is the race that is looked at - spellcasting and other abilities, hearing, smell, AC are all examples. For detail, look at what is in struct monster_race and what is in struct monster in monster.h. Speed is a special case because, while average speed is defined in the race, speed for an individual monster is allocated at birth, and may be a couple of points above or below average. Consequently speed needs to be changed when the player changes.
          One for the Dark Lord on his dark throne
          In the Land of Mordor where the Shadows lie.

          Comment

          • PowerWyrm
            Prophet
            • Apr 2008
            • 2986

            #65
            Just something I spotted while porting some stuff to PWMAngband...

            File: player-util.c

            Code:
            void player_over_exert(struct player *p, int flag, int chance, int amount)
            {
            ...
            player_stat_dec(player, STAT_CON, perm);
            ...
            player_inc_timed(player, TMD_PARALYZED, randint1(amount),
            ...
            }
            One day you should get rid of that "player" global variable... And the "cave" one while you're at it...
            PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

            Comment

            • Nick
              Vanilla maintainer
              • Apr 2007
              • 9634

              #66
              OK, new builds up on the nightlies page and angband.live which will probably break savefiles (although probably not if the character's food counter is below 1/2). Changes are a couple of bugfixes plus a biggish rework of food; in detail:
              • Shapechanging monsters adopt the speed of their new shape
              • Character state of nourishment is now referred to in most places as a percentage
              • There is a permanent hunger meter displaying the percentage, along with the usual hunger descriptions
              • Full now starts at 80% nourished, and the player loses 1 speed with every 2% above that
              • No more gorged status or vomiting
              • Regeneration now goes faster the more nourished the player is, including when they are full
              • Druids' Herbal Healing has been replaced by Rapid Regeneration, which gives phased healing over several turns (as before) at the cost of 10% nourishment per turn, and Herbal Curing, which cures the same status conditions as before plus Black Breath
              • Rangers get Herbal Curing but not Rapid Regeneration
              • Necromancers in the early stage of vampire form where they still get HP and nourishment from their bite attack are immune from slowing due to fullness
              • Satisfy Hunger (both scrolls and spells) now sets the player to 50% nourished; Elvish Waybread sets to 75% (or gives no nourishment if the player is already above 75%)


              These are quite big changes, which aim to integrate the food system more thoroughly into the game. I think they work well, but let me know how they play.
              One for the Dark Lord on his dark throne
              In the Land of Mordor where the Shadows lie.

              Comment

              • Nick
                Vanilla maintainer
                • Apr 2007
                • 9634

                #67
                Originally posted by PowerWyrm
                Just something I spotted while porting some stuff to PWMAngband...

                File: player-util.c

                Code:
                void player_over_exert(struct player *p, int flag, int chance, int amount)
                {
                ...
                player_stat_dec(player, STAT_CON, perm);
                ...
                player_inc_timed(player, TMD_PARALYZED, randint1(amount),
                ...
                }
                One day you should get rid of that "player" global variable... And the "cave" one while you're at it...
                Thanks. You're right, of course, but not tonight
                One for the Dark Lord on his dark throne
                In the Land of Mordor where the Shadows lie.

                Comment

                • PowerWyrm
                  Prophet
                  • Apr 2008
                  • 2986

                  #68
                  Looking at the change that adds random attack to bloodlust-affected characters... it involves modifying the process_command() function. Ouch... When I look at this function in PWMAngband... it's a client function. This means modifying the code like in V doesn't prevent anyone from hacking the client and removing/tweaking it. Not something that I would want...

                  Now looking where I could implement that on the server instead... it seems the best location would be the "has_energy" function which rejects commands if the player doesn't have enough energy to act. Including the code there and returning "false" when a random attack occurs should work fine.
                  PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

                  Comment

                  • PowerWyrm
                    Prophet
                    • Apr 2008
                    • 2986

                    #69
                    File player-attack.c, about shield bashes:

                    Code:
                    bool attempt_shield_bash(struct player *p, struct monster *mon, bool *fear, int *blows)
                    {
                    ...
                    
                    	/* Players bash more often when they see a real need: */
                    ...
                    if (weapon->dd * weapon->ds * (*blows) < shield->dd * shield->ds * 3)
                    {
                    		/* ... or armed with a puny weapon */
                    bash_chance *= 2;
                    }
                    }
                    Problem: blows is always 0 (see py_attack), so the x2 buff always applies for all weapons...
                    PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

                    Comment

                    • mrfy
                      Swordsman
                      • Jul 2015
                      • 328

                      #70
                      Originally posted by Nick
                      OK, new builds up on the nightlies page and angband.live which will probably break savefiles (although probably not if the character's food counter is below 1/2). Changes are a couple of bugfixes plus a biggish rework of food; in detail:
                      • Satisfy Hunger (both scrolls and spells) now sets the player to 50% nourished; Elvish Waybread sets to 75% (or gives no nourishment if the player is already above 75%)
                      FYI, my savefile didn't break and when I started my food was at 99%. Rested and down to 76%, when for a whim I cast Satisfy Hunger (I'm trying out the revamped Ranger class). Food drops to 49%. Shouldn't the Satisfy Hunger verse just do nothing and leave you at 76%?

                      Later I ate two slime molds (yum!) which take me to 83% and slow, so I cast Satisfy Hunger and back to normal 49%. I can also verify that the Satisfy Hunger scroll acts the same way.
                      Last edited by mrfy; June 26, 2019, 16:55.

                      Comment

                      • fph
                        Veteran
                        • Apr 2009
                        • 1030

                        #71
                        Originally posted by mrfy
                        FYI, my savefile didn't break and when I started my food was at 99%. Rested and down to 76%, when for a whim I cast Satisfy Hunger (I'm trying out the revamped Ranger class). Food drops to 49%. Shouldn't the Satisfy Hunger verse just do nothing and leave you at 76%?

                        Later I ate two slime molds (yum!) which take me to 83% and slow, so I cast Satisfy Hunger and back to normal 49%. I can also verify that the Satisfy Hunger scroll acts the same way.
                        Satisfy Hunger putting you at 50% even when you are above that is by design, I think. It has always been this way: the spell is both a way to cure hunger and to ensure that the next 2 or 30 CCW potions won't leave you gorged.
                        --
                        Dive fast, die young, leave a high-CHA corpse.

                        Comment

                        • Pete Mack
                          Prophet
                          • Apr 2007
                          • 6883

                          #72
                          Reading that function signature, I *do* wish it included const correctness. All those mysterious pointers, and I am trying to figure out what arguments might change underfoot!

                          Comment

                          • Pete Mack
                            Prophet
                            • Apr 2007
                            • 6883

                            #73
                            Satisfy hunger used to put you at, but not above, satiation. It was a dangerous spell if you planned to get into a big fight. Having it as a replacement for potions of salt water is a much better solution.

                            Comment

                            • Ingwe Ingweron
                              Veteran
                              • Jan 2009
                              • 2129

                              #74
                              Originally posted by Nick
                              ...a biggish rework of food; in detail:...
                              • Character state of nourishment is now referred to in most places as a percentage
                              • There is a permanent hunger meter displaying the percentage, along with the usual hunger descriptions
                              • Full now starts at 80% nourished, and the player loses 1 speed with every 2% above that
                              • No more gorged status or vomiting
                              • Regeneration now goes faster the more nourished the player is, including when they are full
                              • Necromancers in the early stage of vampire form where they still get HP and nourishment from their bite attack are immune from slowing due to fullness
                              • Satisfy Hunger (both scrolls and spells) now sets the player to 50% nourished; Elvish Waybread sets to 75% (or gives no nourishment if the player is already above 75%)


                              These are quite big changes, which aim to integrate the food system more thoroughly into the game. I think they work well, but let me know how they play.
                              While still not a fan of the "hunger" mechanic, though I may be converted over time once I get used to it again, I think these changes make it much more manageable and much less of a "gotcha". Thank you, Nick! One question, I can't tell for certain, but it seems to me that Slow Digestion isn't working very well anymore, if at all. Am I imagining this, or did the changes break Slow Digestion?
                              “We're more of the love, blood, and rhetoric school. Well, we can do you blood and love without the rhetoric, and we can do you blood and rhetoric without the love, and we can do you all three concurrent or consecutive. But we can't give you love and rhetoric without the blood. Blood is compulsory. They're all blood, you see.”
                              ― Tom Stoppard, Rosencrantz and Guildenstern are Dead

                              Comment

                              • Nick
                                Vanilla maintainer
                                • Apr 2007
                                • 9634

                                #75
                                Originally posted by Ingwe Ingweron
                                One question, I can't tell for certain, but it seems to me that Slow Digestion isn't working very well anymore, if at all. Am I imagining this, or did the changes break Slow Digestion?
                                It should work just as before - it divides the amount of food digested by 5. Other things have changed around it which may make it feel different; I believe I haven't broken it.

                                PowerWyrm - keep it up
                                One for the Dark Lord on his dark throne
                                In the Land of Mordor where the Shadows lie.

                                Comment

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