Persistent levels

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

    #31
    Originally posted by kaypy
    Word of Recall seems to keep x,y location fixed, which may leave you stuck in a wall or worse yet off the valid map area for a savefile wrecking crash.

    I'll go poke around in the source now and see if I can come up with a patch for it.
    Problem is in prepare_next_level(), which assumes the player is arriving via stairs. Feel free to fix it, otherwise I will before too long
    One for the Dark Lord on his dark throne
    In the Land of Mordor where the Shadows lie.

    Comment

    • kaypy
      Swordsman
      • May 2009
      • 294

      #32
      Oops, hadn't noticed a new post had come in (it was on the next page)

      There should be a first pass patch on github now

      It should probably use a similar approach to the teleport code, but I wanted to get something up quick...

      (my first thought was to call into the teleport routine, but its kinda linked into the player-activation stuff, also the range isnt really relevant for level creation time...)

      Comment

      • kaypy
        Swordsman
        • May 2009
        • 294

        #33
        Originally posted by kaypy
        BTW, I am seeing a fair amount of code like
        Code:
        level_by_depth(p->depth + 1)
        in the new code.

        Does that cooperate with the stair_skip constant?
        I double checked this and the stair connections break if stair_skip is set to != 1

        There is also the matter of z_info->max_depth.

        dungeon_get_next_level is almost what you want here, but unfortunately it is set to also block on quest levels...

        ...

        Hmm. If create stair is disabled, does killing Sauron work?...

        Comment

        • Nick
          Vanilla maintainer
          • Apr 2007
          • 9631

          #34
          Thanks, I'll look at this properly soon.
          One for the Dark Lord on his dark throne
          In the Land of Mordor where the Shadows lie.

          Comment

          • Sky
            Veteran
            • Oct 2016
            • 2321

            #35
            got another unrecoverable crash.

            recalling back to town gave me a "invalid player location" error, and a broken save file.
            "i can take this dracolich"

            Comment

            • kaypy
              Swordsman
              • May 2009
              • 294

              #36
              Originally posted by Sky
              got another unrecoverable crash.
              This is the one I just put up a patch for...

              (The patch will stop the initial crash- I dont *think* it will recover the file though...)

              Comment

              • kaypy
                Swordsman
                • May 2009
                • 294

                #37
                I've got a seg fault here if I recall.

                savefile.zip

                The stack trace points at something in the sdl font handling, but I doubt that is where memory is getting first mishandled...

                I am running with the recall patches, but they dont do anything interesting with memory, so I woudn't guess the problem is there?

                Hmm. I wonder what happens if I wander up to the top-left where my code may not be called at all? (This might also be a way to test against unpatched code without the out-of-bounds crash interfering)

                ...

                it still crashes on the top-left area...

                Comment

                • Nick
                  Vanilla maintainer
                  • Apr 2007
                  • 9631

                  #38
                  Originally posted by kaypy
                  I've got a seg fault here if I recall.

                  [ATTACH]1586[/ATTACH]

                  The stack trace points at something in the sdl font handling, but I doubt that is where memory is getting first mishandled...
                  Found it, it's bad string handling in savefile loading. I'll get a fix up soon.

                  EDIT: Correction, that's a small problem that doesn't cause the crash. There's a bigger issue I haven't nailed down yet.
                  One for the Dark Lord on his dark throne
                  In the Land of Mordor where the Shadows lie.

                  Comment

                  • Nick
                    Vanilla maintainer
                    • Apr 2007
                    • 9631

                    #39
                    OK, latest build fixes the problem, that savefile should work fine now.
                    One for the Dark Lord on his dark throne
                    In the Land of Mordor where the Shadows lie.

                    Comment

                    • kaypy
                      Swordsman
                      • May 2009
                      • 294

                      #40
                      That got it. Thanks

                      Comment

                      • Sky
                        Veteran
                        • Oct 2016
                        • 2321

                        #41
                        ok, all working for now (i hope no more DL99 bugs). it's .. weird, to play like this.
                        big advantage for sell_on play, as you can go back to DLs with a ton of gear on the floor waiting to be sold, not so sure about what's it gonna be like down to DL90 though.
                        Also, i feel kinda dumb for not enabling the $ option, as i can never really lose any artifacts.

                        I have a question, though. i read a DD by accident and actually went back up to clear those 5 levels, and somewhere along the way i met Grishnak .. and lost sight of him. Is he stuck on that level forever? Can he be summoned elsewhere, by a mob, or a trap or staff of summon?
                        What happens if i find a greater vault with many big uniques, does it mean i can leave them behind and they won't show up for the final fight?
                        "i can take this dracolich"

                        Comment

                        • PowerWyrm
                          Prophet
                          • Apr 2008
                          • 2986

                          #42
                          Originally posted by Sky
                          What happens if i find a greater vault with many big uniques, does it mean i can leave them behind and they won't show up for the final fight?
                          Exactly, that's the big advantage of persistent levels.
                          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
                            • 9631

                            #43
                            Originally posted by Sky
                            I have a question, though. i read a DD by accident and actually went back up to clear those 5 levels, and somewhere along the way i met Grishnak .. and lost sight of him. Is he stuck on that level forever? Can he be summoned elsewhere, by a mob, or a trap or staff of summon?
                            What happens if i find a greater vault with many big uniques, does it mean i can leave them behind and they won't show up for the final fight?
                            For now. I'm thinking about having the monster populations of levels gradually change as time passes, but haven't implemented anything like that yet.
                            One for the Dark Lord on his dark throne
                            In the Land of Mordor where the Shadows lie.

                            Comment

                            • Sky
                              Veteran
                              • Oct 2016
                              • 2321

                              #44
                              this *might* seem unrelated, but it's very, very important that you give player-cast ice-storm and ice-balls a percentage chance of turning lava tiles into rubble. if a pit fiend decides to turn half a level into lava, the patient player needs to be able to return it to normal with a bit of work.
                              this already happens with mobs' ice breaths.
                              "i can take this dracolich"

                              Comment

                              • Sky
                                Veteran
                                • Oct 2016
                                • 2321

                                #45
                                ok, this persistent levels thingie is much harder than normal play. we ought to have some sort of "autoscum for good levels" birth options again.
                                "i can take this dracolich"

                                Comment

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