Competition 88

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

    #31
    Originally posted by PowerDiver
    I need a ruling. My comp char's gloves of thievery somehow got cursed with "no running". I.e. if I wield them, shift + direction does not let me run. I have no idea how it happened. I can't even guess what kind of data structure corruption could cause such a problem.

    To what extent am I allowed to debug? It will undoubtedly involve save scumming to debug properly.

    I could just toss the gloves, finish the char, and debug later. That's probably the fair answer since if it happened to a non-coder they might not have any other option, but I figured I might as well ask.
    Separate the debugging from the playing. Back up the savefile when you're in a safe corridor and reload it as many times as you need to solve the problem, but don't go anywhere except run down that corridor until you're done debugging.

    Fair?
    "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

    Comment

    • Nick
      Vanilla maintainer
      • Apr 2007
      • 9637

      #32
      Originally posted by PowerDiver
      To what extent am I allowed to debug? It will undoubtedly involve save scumming to debug properly.
      I think I speak for everyone when I say do what you need to. It's not like anyone really suspects that you're going to savescum to get an advantage.
      One for the Dark Lord on his dark throne
      In the Land of Mordor where the Shadows lie.

      Comment

      • Jungle_Boy
        Swordsman
        • Nov 2008
        • 434

        #33
        Originally posted by Nick
        I think I speak for everyone when I say do what you need to. It's not like anyone really suspects that you're going to savescum to get an advantage.
        I agree, one of the reasons we have these comps is to get some extensive playtesting to fix exactly this sort of thing so go ahead and fix it.
        My first winner: http://angband.oook.cz/ladder-show.php?id=10138

        Comment

        • PowerDiver
          Prophet
          • Mar 2008
          • 2820

          #34
          So I found that there was no inscrutable data structure bug.

          The gloves put me up to 100% searching. Running code calls searching code with each step to see if you notice something as you move. The searching code wants to save you the embarrassment of repeated searching when you know nothing is there, so it disturbs if searching is 100%. Ergo no running.

          Now that 's' autorepeats 10 times, I think the disturb might actually be useful when you are actively searching. I guess I shouldn't simply remove the disturb. Or maybe the disturb should be removed, but the repeat counter on searching should never exceed 1 when searching is 100%. But I have gotten into the habit of using 's' as shorthand to wait 10 player turns for an approaching monster ...

          I could mangle the code so that the disturb happens except when running. That kind of solution often leads to unintended consequences down the road.

          No solution I can think of appeals to me. Is any solution obvious to any of you?

          Comment

          • Sirridan
            Knight
            • May 2009
            • 560

            #35
            Call the searching code from running, but pass a flag saying you're running, so not to disturb if nothing is found?

            Comment

            • PowerDiver
              Prophet
              • Mar 2008
              • 2820

              #36
              Originally posted by Sirridan
              Call the searching code from running, but pass a flag saying you're running, so not to disturb if nothing is found?
              That's just an implementation detail. The question is what behavior is desirable.

              The more I think about it, the surer I am that I would never search for the purpose of searching once I have a searching skill of 100%. I am using detections to find things, and magical disarm on chests without bothering to search first. The only reason I search is to stay in place without risking an autopickup using '5', or because the 's' key is easier to press for whatever reason than the '5' key.

              I am pretty certain now that the right answer is just to remove the disturb. That way, 's' remains the "wait 10 turns", which is the main way it should be used. If you have 100% searching, you shouldn't search anyway except the turn after you teleport or switch levels since you already found everything when you moved to your current spot.

              Comment

              • Derakon
                Prophet
                • Dec 2009
                • 9022

                #37
                What about when someone summons traps around you?

                Comment

                • PowerDiver
                  Prophet
                  • Mar 2008
                  • 2820

                  #38
                  Originally posted by Derakon
                  What about when someone summons traps around you?
                  I'd detect by reflex forgetting I could search with certainty . In any case, the search would succeed and that would disturb you, so you don't need another disturb on the 's' command.

                  Comment

                  • PowerDiver
                    Prophet
                    • Mar 2008
                    • 2820

                    #39
                    Originally posted by Derakon
                    What about when someone summons traps around you?
                    I'd detect by reflex forgetting I could search with certainty . In any case, the search would succeed and that would disturb you, so you don't need another disturb on the 's' command.

                    Comment

                    • Magnate
                      Angband Devteam member
                      • May 2007
                      • 5110

                      #40
                      Originally posted by Timo Pietilä
                      Strange rPoison case. No rPoison until 4450'. Then after one single "killthemall" -case against immunity to cold -dragon pit, I have suddenly three sources of rPoison. Not one of them are ring of Resist Poison.

                      Also RoS have been successfully avoiding me even after killing at least ~30 "drop good" monsters and countless number of lesser "drop something" monsters deeper than 4000'. Best boots are stealth-boots, have found only "slow descend" and "Free Action" boots. Stat-potions are avoiding me. Top three healing-potions are rare.

                      Have seen at least 15 Gondolin weapons. All of them lacking extra ability. I'm guessing they all got either See Inv or FA as extra ability.

                      There is something wrong in item distribution.
                      Just to torment you, I just found my first =rpois at 1800', with only the second Leisa to get that far.
                      "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

                        #41
                        I noticed a quirk of the scoring method. If your bottleneck is a device activation, for example the Palantir, you pay a *penalty* for speed. If you wait around for recharge, be it resting or killing hapless demons, the more speed you have the more player turns accumulate while you await the recharge.

                        Comment

                        • fizzix
                          Prophet
                          • Aug 2009
                          • 3025

                          #42
                          Originally posted by PowerDiver
                          I noticed a quirk of the scoring method. If your bottleneck is a device activation, for example the Palantir, you pay a *penalty* for speed. If you wait around for recharge, be it resting or killing hapless demons, the more speed you have the more player turns accumulate while you await the recharge.
                          the same thing occurs when resting to generate HP/SP i believe.

                          Comment

                          • Magnate
                            Angband Devteam member
                            • May 2007
                            • 5110

                            #43
                            Originally posted by fizzix
                            the same thing occurs when resting to generate HP/SP i believe.
                            This (the penalty for speed while waiting for recharging or recovering hp/sp) is similar to the "penalty" for extra shots (one player turn per shot). I'm firmly with Eddie - player-turns needs to be a count of total energy used (divided by 100, I guess).
                            "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                            Comment

                            • Timo Pietilä
                              Prophet
                              • Apr 2007
                              • 4096

                              #44
                              Originally posted by Magnate
                              This (the penalty for speed while waiting for recharging or recovering hp/sp) is similar to the "penalty" for extra shots (one player turn per shot). I'm firmly with Eddie - player-turns needs to be a count of total energy used (divided by 100, I guess).
                              I disagree about that. One player turn is one action player makes. If that means resting and waiting takes more turns, then resting takes more turns. Same with extra shots. One extra shot is one action. IMO that is accurate measurement of player turns.

                              For competition speed can mean more turns for some odd cases, but competition is no reason to change to way to count actual actions.

                              Comment

                              • Magnate
                                Angband Devteam member
                                • May 2007
                                • 5110

                                #45
                                Originally posted by Timo Pietilä
                                I disagree about that. One player turn is one action player makes. If that means resting and waiting takes more turns, then resting takes more turns. Same with extra shots. One extra shot is one action. IMO that is accurate measurement of player turns.

                                For competition speed can mean more turns for some odd cases, but competition is no reason to change to way to count actual actions.
                                For a long time I held exactly that opinion, which is why we started counting player turns in the first place. But the main reason to do so was to eliminate the advantage that early speed finds gave when counting game turns. Since counting player turns actually penalises early speed finds, we've just swapped one inaccurate measure for another. Counting total energy used is completely independent of speed, which is what makes it so attractive. It also solves the extra shots problem, which is a nice side effect.

                                However, I do appreciate your position that we should be counting player decisions, and if you're lucky enough to have extra speed that gives you extra player turns on which to make decisions, we should count those. But to do this properly we'd need to make recharge times constant in player turns rather than game turns, and this offends some people. Personally I hate the fact that extra speed makes you wait longer for things to recharge, but some people find this 'consistent'.

                                EDIT: I think my point here is that Eddie's issue about being penalised while waiting for recharges is as much an artefact of the absolutism of recharge times as it is of the counting of player turns. Which is ironic, because IIRC Eddie is one of the people who believes recharge times should be absolute (i.e. independent of player speed). Personally I think it would be entirely consistent to set recharge times in player turns - especially since things don't recharge unless you're carrying them!
                                Last edited by Magnate; June 15, 2010, 09:29.
                                "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                                Comment

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