Orc captain attacking just after game load

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Magnate
    Angband Devteam member
    • May 2007
    • 5110

    #16
    Originally posted by PowerDiver
    It seems that the line is working as described by the comment except on game load.

    The question is whether you think the player should always get the first move, even if he falls through a trap door and lands next to much faster monsters. If so, then the change I suggested earlier is correct. If not, a fair amount of work needs to be done.
    I closed the duplicate ticket (#1147) - Takk had already reported this as #1058. Most of the discussion is on #572. IMO it would suffice to ensure that the player always get the first move on a new level, however he arrives there, and also after accidental summoning (undetected trap or unIDd scroll or staff, but not known/IDd).
    "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

    Comment

    • PowerDiver
      Prophet
      • Mar 2008
      • 2820

      #17
      Originally posted by Magnate
      I closed the duplicate ticket (#1147) - Takk had already reported this as #1058. Most of the discussion is on #572. IMO it would suffice to ensure that the player always get the first move on a new level, however he arrives there, and also after accidental summoning (undetected trap or unIDd scroll or staff, but not known/IDd).
      They seem like separate issues. The right way to fix summonees and waking monsters is to start them with -100 energy. We continue to pay the price for the initial choice to make so many things bytes that should have been ints. We should change all bytes and shorts to ints and break the savefiles once rather than dealing with this stupid issue over and over.

      No one seems to care much about energy on new levels. I think it's a little unfair to start the player at 100 and the monsters at around 10. Probably everyone should start at 100. Then the player gets the first move from the tiebreaker, but the monsters aren't penalized.

      Personally, I think the player should start at 0 and the monsters at 100. They should get the move on you when you appear from a recall, not vice versa. I know I'm in a minority here.

      Doing things properly in terms of setting energy_usage seems like too much effort, so a quick fix seems appropriate. I've been playtesting with debugging printfs and changing to
      Code:
              /* Give player minimum energy to start a new level, but do not reduce higher value from savefile for level in progress */
              if (p_ptr->energy < INITIAL_DUNGEON_ENERGY)
                      p_ptr->energy = INITIAL_DUNGEON_ENERGY;
      seems to work as intended.

      Comment

      • buzzkill
        Prophet
        • May 2008
        • 2939

        #18
        Originally posted by PowerDiver
        Personally, I think the player should start at 0 and the monsters at 100. They should get the move on you when you appear from a recall, not vice versa. I know I'm in a minority here.
        Couldn't we start both monsters and player with a random amount of energy, not guaranteeing the player the first move, but (probably) not being left to move last either.
        www.mediafire.com/buzzkill - Get your 32x32 tiles here. UT32 now compatible Ironband and Quickband 9/6/2012.
        My banding life on Buzzkill's ladder.

        Comment

        • PowerDiver
          Prophet
          • Mar 2008
          • 2820

          #19
          Originally posted by buzzkill
          Couldn't we start both monsters and player with a random amount of energy, not guaranteeing the player the first move, but (probably) not being left to move last either.
          You'll have to be more specific about what you mean.

          If you start the player at 50 energy and a double-speed monster at 15 energy, the monster will still go first. That's true of an entire pack of time hounds if the player is at speed+5 even if some of the hounds are 20% less energetic than average.

          Comment

          • Hariolor
            Swordsman
            • Sep 2008
            • 289

            #20
            Originally posted by PowerDiver
            You'll have to be more specific about what you mean.

            If you start the player at 50 energy and a double-speed monster at 15 energy, the monster will still go first. That's true of an entire pack of time hounds if the player is at speed+5 even if some of the hounds are 20% less energetic than average.
            If the player is normal speed, and the monster is double-speed, it doesn't seem unfair that the monster goes first, does it?

            Comment

            • PowerDiver
              Prophet
              • Mar 2008
              • 2820

              #21
              Originally posted by Hariolor
              If the player is normal speed, and the monster is double-speed, it doesn't seem unfair that the monster goes first, does it?
              Fair? To be fair, the player should be at the same disadvantage when summoned to a level compared to monsters on the level, as symmetrically summonees are made to be in comparison to the player when summoning happens during battle. Fair has nothing to do with it. Ain't gonna happen unless a meanie like me is put in control.

              The goal is to stop the player from being insta-killed when he lands on a new level in a room with a pack of time hounds. That's what the buggy line of code that caused the OP to die was trying to accomplish.

              The ticket about avoiding unavoidable deaths has been around long enough for Takkaria to squash it if he opposed it, so presumably he is on board with the general idea. I believe the policy is set, and it's now a question of implementation details.

              Comment

              • buzzkill
                Prophet
                • May 2008
                • 2939

                #22
                Originally posted by PowerDiver
                You'll have to be more specific about what you mean.

                If you start the player at 50 energy and a double-speed monster at 15 energy, the monster will still go first. That's true of an entire pack of time hounds if the player is at speed+5 even if some of the hounds are 20% less energetic than average.
                I'm not exactly sure what the inner workings of Angband are so I don't even know if this is possible, but I was thinking that each individual monster, as well as the player, would receive a (unique) random amount of energy. Thus, if the player were to descend into a pack of equal speed enemies, he would likely take his turn somewhere in the middle of the first round of combat. As Hariolor said, faster monsters being more likely to move first is only fair, and anything with double speed would always go first (as it should be). I guess players would adopt the tactic of hasting themselves before descending if second-move survival was questionable, and even that wouldn't guarantee anything. It's definitely a big move toward making the game harder (and more realistic).... and yet another happy stair-scumming deterrent.
                www.mediafire.com/buzzkill - Get your 32x32 tiles here. UT32 now compatible Ironband and Quickband 9/6/2012.
                My banding life on Buzzkill's ladder.

                Comment

                • LostTemplar
                  Knight
                  • Aug 2009
                  • 670

                  #23
                  Most monsters are sleeping anyway, so this will only make hounds more dangerous, but they are already bad enough.

                  Comment

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