[Un/FA] Nowhere town... aargh!!!

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • andrewdoull
    Unangband maintainer
    • Apr 2007
    • 872

    [Un/FA] Nowhere town... aargh!!!

    Nowhere town has just invaded Unangband SVN!!!!

    I wonder how it got in there... clearly it can't be stopped.
    The Roflwtfzomgbbq Quylthulg summons L33t Paladins -more-
    In UnAngband, the level dives you.
    ASCII Dreams: http://roguelikedeveloper.blogspot.com
    Unangband: http://unangband.blogspot.com
  • Nick
    Vanilla maintainer
    • Apr 2007
    • 9634

    #2
    Originally posted by andrewdoull
    Nowhere town has just invaded Unangband SVN!!!!

    I wonder how it got in there... clearly it can't be stopped.
    Cool. I always like to see my innovations taken up by other variants...
    One for the Dark Lord on his dark throne
    In the Land of Mordor where the Shadows lie.

    Comment

    • Daven_26d1
      Adept
      • Jun 2007
      • 211

      #3
      Nowhere town??
      You sold a Broken Sword (1d2) (-2,-4) {average} (j) for 1 gold.
      The shopkeeper howls in agony!
      You say "Dude, the clue is in the name...".

      Comment

      • Seany C
        Swordsman
        • Apr 2007
        • 283

        #4
        It's a magical place that arrives in FAa (and Un now?) when a @ tries to access an illegal level (i.e. one that the code doesn't allow for)...

        Comment

        • Daven_26d1
          Adept
          • Jun 2007
          • 211

          #5
          Oh, I see...

          A bit like what I reported here then?



          I did think Andrew was watching his threads more closely, but I guess I have to report major bugs like this more directly in future...

          ...berlios.de best for you el maintani?
          You sold a Broken Sword (1d2) (-2,-4) {average} (j) for 1 gold.
          The shopkeeper howls in agony!
          You say "Dude, the clue is in the name...".

          Comment

          • Seany C
            Swordsman
            • Apr 2007
            • 283

            #6
            This one?

            >>
            Sometimes (seems to be certain dungeons, not intermittent) when recalling or using a magical staircase, your character finds him/herself on an "<" on entering the top level map, away from the ">" that leads to the dungeon. In Trollshaw forest (tested Trollshaw a few times and this always happens), I was able to reach level 3, then 2, 1, 0, -1 and -2 by climbing stairs. Oooops! Levels 1-3 were the Trollshaw outdoor map, but with "arena-level" rooms (ie no corridors were visible because the map started open) levels above that were empty Outdoor map but still had gold, monsters etc. I saved at level -2 and this broke my savefile, though I did hang onto the savefile.
            >>

            Sounds similar - if I understand it correctly (Nick?!), in FAa, "Nowhere Town" is a default response to the player trying to commit an illegal action (such as going upstairs to Level -1) which stops the game from crashing altogether - it shouldn't break your savefile and it should be possible to go back 'down' to DL0 and normality again, though. I've not had a chance to try Un yet so I don't know how Andrew's handled it there...

            Comment

            • Psi
              Knight
              • Apr 2007
              • 870

              #7
              Except you are stuck in Nowhere Town unless you have a means of recall.

              Comment

              • Seany C
                Swordsman
                • Apr 2007
                • 283

                #8
                Ah- I've never found it yet so I assumed that it had stairs back to DL Zero...
                maybe it ought to include a shop containing one (100% discounted) Word of Recall...

                Comment

                • Nick
                  Vanilla maintainer
                  • Apr 2007
                  • 9634

                  #9
                  Originally posted by Seany C
                  Sounds similar - if I understand it correctly (Nick?!), in FAa, "Nowhere Town" is a default response to the player trying to commit an illegal action (such as going upstairs to Level -1) which stops the game from crashing altogether - it shouldn't break your savefile and it should be possible to go back 'down' to DL0 and normality again, though.
                  Yeah, that's about right. As Psi says, though, you can't get out without recall, as there are no stairs. And at present there is no record of anyone finding Nowhere Town in 0.3.0 (although it has shown up in notes...)
                  One for the Dark Lord on his dark throne
                  In the Land of Mordor where the Shadows lie.

                  Comment

                  • Bandobras
                    Knight
                    • Apr 2007
                    • 726

                    #10
                    Un Nowhere Town is way better than that: you have 8 shops so you should be able to buy WOR. It probably even has townfolk you can kill for money (until this is fixed) to save for that WOR. There is probably a problem here, though --- WOR will take you back to the top level of your current wilderness --- the Nowhere Town in this case. I'd like WOR to take you to your hometown instead, to save wilderness travel (not that it's too difficult now that you cannot starve when traveling (until fixed, of course)).

                    Congratulations, in advance, to the first person that arrives in Nowhere Town in Un (without source/save tweaking). I have 2 ideas how this could be done.

                    The bug with stairs up in wilderness is fixed in SVN, so this will not work.

                    Comment

                    • Daven_26d1
                      Adept
                      • Jun 2007
                      • 211

                      #11
                      So nowhere town is a kinda catch(oops!); throw(lucky_break); mechanism?

                      Why have shops and townsfolk? Have one building (the home of nowhere man or something) which provides a 0g service to return you to your hometown; then add a nice description with a joke, and a point about a reporting your success.

                      If you really want to make a competition about it, drop the PoG on the floor or a randart if the player already has it. Prevent standard WoR working, as you can't trluy test something that technically shouldn't happen.
                      You sold a Broken Sword (1d2) (-2,-4) {average} (j) for 1 gold.
                      The shopkeeper howls in agony!
                      You say "Dude, the clue is in the name...".

                      Comment

                      • Bandobras
                        Knight
                        • Apr 2007
                        • 726

                        #12
                        Originally posted by Daven_26d1
                        So nowhere town is a kinda catch(oops!); throw(lucky_break); mechanism?
                        Unintentionally and very rarely (I hope), but a good idea --- will have to remember when tweaking travel code.

                        Why have shops and townsfolk? Have one building (the home of nowhere man or something)
                        OK, will implement.

                        which provides a 0g service to return you to your hometown;
                        This one is tricky. When/if WOR gets you to home town, a shop with only WOR (and possibly some rare items, for the reward) will do the trick in the easiest way.

                        then add a nice description with a joke, and a point about a reporting your success.
                        This, and actually several in-jokes, are already there.

                        Prevent standard WoR working, as you can't trluy test something that technically shouldn't happen.
                        I don't know if I understand you correctly. WOR will never get you to Nowhere Town, unless you are already there (I hope).

                        Comment

                        • Daven_26d1
                          Adept
                          • Jun 2007
                          • 211

                          #13
                          I don't know if I understand you correctly. WOR will never get you to Nowhere Town, unless you are already there (I hope).
                          Sorry, should have been clearer, I meant disallow WoR from within nowhere town, but if standard WoR is the easiest escape to implement then so be it. My idea of using a second mechanism for getting out was simply based on this logic (bear in mind I never did much source diving for *bands, and none for Un):

                          1 - If you end up somewhere you shouldnt, its probably one of those bugs were certain values are still floating around in memory or in the savefile, an easy problem to protect against, but difficult to enforce "codewide" if you like. Kinda like climbing the stairs up from trollshaw, stair code says "d_level -=1" or something, Dungeon generation attempts to use a bad value (0-1), and just about gets away with it. Nowhere town should be a proper catch all exception (I would test at the start of floor creation whether the player is at an allowed depth of an allowed dungeon, and deposit them in nowhere if not).

                          2 - WoR is unusual in Un, because dungeons can go up or down, there are several locations, etc. The idea of a unique service, used only for this purpose, that does a clean and steady job of overwriting all values (memory or file) with the appropriate ones for your hometown just sounds more robust to me, and indeed you can approach as a nice tight function with a single purpose. The "challenge" for testers then becomes one of doing something weird & not ending up in nowhere - exponentially reducing already scarce bug-reports (for this issue) and almost certainly making anything that does come in easier to solve.

                          For even better handling, I would have it refresh any other values regarding savefiles/player state in memory that can safely be refreshed (again, difficult to explain what I mean without knowing the sources); potentially nowhere town will save you not just from bugs, but possibly a couple of wrong bits in a savefile that caused the problem in the first place. Not often, possibly never, but why not?

                          EDIT - "This would be tricky" -- how so? It's difficult to move the player? I guess this is where my lack of source savvy makes me fall down...
                          Last edited by Daven_26d1; November 29, 2007, 15:55.
                          You sold a Broken Sword (1d2) (-2,-4) {average} (j) for 1 gold.
                          The shopkeeper howls in agony!
                          You say "Dude, the clue is in the name...".

                          Comment

                          • Bandobras
                            Knight
                            • Apr 2007
                            • 726

                            #14
                            "This would be tricky" -- how so? It's difficult to move the player? I guess this is where my lack of source savvy makes me fall down...
                            Tricky, like in having to touch 2 script files (Un has more of them, which is generally very good) and 2 C files to implement the special "bail out of Nowhere Town" shop service, instead of 1--2 script files in case of just making WOR available (and instead of a lot hacking in 2 C files in V, I suppose, which is not as scripted as Un).

                            Edit: you ideas about cleaning up game state are sound; feel free to implement them.

                            Edit2: implemented in SVN the special shops for Nowhere Town. Since WOR won't work for now, you have a shop with maps that will get you out of the trouble (but perhaps into another ).

                            Edit3: obviously it is against the rules of the the Nowhere Town competition to use wizard or debugging mode...

                            Edit4: Ouch, it does not work, because maps fail for dungeons with no natural exits (like when you are lost in Moria).

                            Edit5: Corrected, now only Moria is map-less. Paths of the Dead are now way easier...

                            Edit6: Reverted back; Paths were exploitable...
                            Last edited by Bandobras; November 30, 2007, 23:19.

                            Comment

                            • Nick
                              Vanilla maintainer
                              • Apr 2007
                              • 9634

                              #15
                              Originally posted by Nick
                              Yeah, that's about right. As Psi says, though, you can't get out without recall, as there are no stairs. And at present there is no record of anyone finding Nowhere Town in 0.3.0 (although it has shown up in notes...)
                              Also, unlike it seems to be in Un, Nowhere Town was unintentional on my part in FA. I needed somewhere called Nowhere (if you take my meaning) to show recall points that hadn't been set yet, but the player was never meant to get there. When I first heard about it I thought it was a joke.
                              One for the Dark Lord on his dark throne
                              In the Land of Mordor where the Shadows lie.

                              Comment

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