Hidden character dumps -- why?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • gglibertine
    Adept
    • Dec 2007
    • 234

    Hidden character dumps -- why?

    OK, I get why the savefiles are hidden. But does it really make sense to tell the user you're putting the character dump in one place, only to hide it in another, completely different place, requiring them to search their entire computer to locate it?
  • Nick
    Vanilla maintainer
    • Apr 2007
    • 9647

    #2
    Where did you expect to find them, and where did you actually find them?

    Maybe we need context-sensitive help on this one
    One for the Dark Lord on his dark throne
    In the Land of Mordor where the Shadows lie.

    Comment

    • gglibertine
      Adept
      • Dec 2007
      • 234

      #3
      Originally posted by Nick
      Where did you expect to find them, and where did you actually find them?

      Maybe we need context-sensitive help on this one
      The game told me it was placing the dump in C:Program Files (x86)\angband-4.0.3\lib\user\Falad.txt.

      Where I actually found it was C:\Users\meredith\AppData\Local\VirtualStore\Progr am Files (x86)\angband-4.0.3\lib\user.

      Likewise, my savefiles are hidden in the same hierarchy under \lib\user\save.

      The 3.x versions never did this to me, and I'm using the default Windows download version unmodified.

      (When I view this on the forums, the second path puts a mystery space in the word "Program" that isn't there when I try to edit it, for the record.)

      Comment

      • Nick
        Vanilla maintainer
        • Apr 2007
        • 9647

        #4
        Originally posted by gglibertine
        The game told me it was placing the dump in C:Program Files (x86)\angband-4.0.3\lib\user\Falad.txt.

        Where I actually found it was C:\Users\meredith\AppData\Local\VirtualStore\Progr am Files (x86)\angband-4.0.3\lib\user.
        OK. It looks like this is dependent on where your angband-4.0.3 folder is - I think Windows may be doing special things with it when it's in Program Files. What happens if, say, you put it on your desktop?
        One for the Dark Lord on his dark throne
        In the Land of Mordor where the Shadows lie.

        Comment

        • krugar
          Apprentice
          • Sep 2010
          • 76

          #5
          Originally posted by Nick
          OK. It looks like this is dependent on where your angband-4.0.3 folder is - I think Windows may be doing special things with it when it's in Program Files.
          Indeed it does. Starting with Vista, applications are generally barred from write access to C:\Program Files\ and all mutable settings and application data defaults to the c:\Users\[user]\AppData folder. It's akin to the home folder in Linux.

          Because Angband is letting Windows decide, it is going to the VirtualStore subfolder. But once you branch out the code to accommodate for Windows Vista+ rules, it is possible to have all the data and settings for Angband saved in c:\Users\[user]\AppData\Roaming\Angband\

          You can replace "Roaming" with "Local". The former will allow for settings and save files to be accessed by users on roaming setups. So, generally speaking, Roaming is a better option, for a game type of application. The appadata folder location is defined in the %APPDATA% environment variable. There are a few other useful env vars. But I suspect you will want to read some more on this.

          @gglibertine
          I usually put applications like text-based roguelikes inside a C:\Games\ folder when using my Windows machine (which frankly is becoming rarer and rarer these days). Some applications are just designed in a way (or have been ported from other systems to Windows) that don't follow Windows folder structure. Linux does a good job handling misbheaving applications and only rarely won't it be able to create a .application folder in your home folder. But Windows is actually weird when asked to decide. Hence that VirtualStore nonsense.
          Last edited by krugar; November 24, 2015, 01:14.

          Comment

          • Timo Pietilä
            Prophet
            • Apr 2007
            • 4096

            #6
            Originally posted by krugar
            @gglibertine
            I usually put applications like text-based roguelikes inside a C:\Games\ folder when using my Windows machine (which frankly is becoming rarer and rarer these days). Some applications are just designed in a way (or have been ported from other systems to Windows) that don't follow Windows folder structure. Linux does a good job handling misbheaving applications and only rarely won't it be able to create a .application folder in your home folder. But Windows is actually weird when asked to decide. Hence that VirtualStore nonsense.
            I do that same for antiquated games. Modern Windows actually does quite good job for tricking programs thinking that they do that crappy stuff they used to do in year when they originally were made. Downward compatibility with insanely stupid (usually ported, like you said) softwares requires it to do all kinds of tricks to make user not notice that software can't actually do what it used to.

            Maybe windows port of angband should make chardumps and saved games in users profile, or in %public%\angband\user -directory if you want them to be accessible to everyone using the computer.

            Comment

            • gglibertine
              Adept
              • Dec 2007
              • 234

              #7
              Originally posted by krugar
              Indeed it does. Starting with Vista, applications are generally barred from write access to C:\Program Files\ and all mutable settings and application data defaults to the c:\Users\[user]\AppData folder. It's akin to the home folder in Linux.

              Because Angband is letting Windows decide, it is going to the VirtualStore subfolder. But once you branch out the code to accommodate for Windows Vista+ rules, it is possible to have all the data and settings for Angband saved in c:\Users\[user]\AppData\Roaming\Angband\

              You can replace "Roaming" with "Local". The former will allow for settings and save files to be accessed by users on roaming setups. So, generally speaking, Roaming is a better option, for a game type of application. The appadata folder location is defined in the %APPDATA% environment variable. There are a few other useful env vars. But I suspect you will want to read some more on this.

              @gglibertine
              I usually put applications like text-based roguelikes inside a C:\Games\ folder when using my Windows machine (which frankly is becoming rarer and rarer these days). Some applications are just designed in a way (or have been ported from other systems to Windows) that don't follow Windows folder structure. Linux does a good job handling misbheaving applications and only rarely won't it be able to create a .application folder in your home folder. But Windows is actually weird when asked to decide. Hence that VirtualStore nonsense.
              Interesting. I just tried again with 3.5.0 (which is still installed, also in Program Files (x86)), and files appear in the expected directories. So something about the way Angband saves files may have changed between versions?

              Comment

              • Rydel
                Apprentice
                • Jul 2008
                • 89

                #8
                Typically, I'd avoid putting programs that don't use an installer in Program Files. Windows like to do tricky stuff with the the %APPDATA% and ProgramData folders that can be rather unexpected.
                I'm trying to think of an analogy, and the best I can come up with is Angband is like fishing for sharks, and Sil is like hunting a bear with a pocket knife and a pair of chopsticks. It's not great. -Nick

                Comment

                • Timo Pietilä
                  Prophet
                  • Apr 2007
                  • 4096

                  #9
                  Originally posted by gglibertine
                  So something about the way Angband saves files may have changed between versions?
                  Pretty much entire function has been rewritten from scratch AFAIK. Everything, not something

                  Comment

                  • Nick
                    Vanilla maintainer
                    • Apr 2007
                    • 9647

                    #10
                    Originally posted by gglibertine
                    Interesting. I just tried again with 3.5.0 (which is still installed, also in Program Files (x86)), and files appear in the expected directories. So something about the way Angband saves files may have changed between versions?
                    IIRC there were some changes in the way paths were determined to unify across the different ports.
                    One for the Dark Lord on his dark throne
                    In the Land of Mordor where the Shadows lie.

                    Comment

                    • brbrbr
                      Adept
                      • Sep 2015
                      • 110

                      #11
                      Related information:
                      By default my Antivirus consider Angband as untrustable application, so it runs it in virtual environment. It is completely transparent for the user, except the normal file locations are getting changed behind the scene.
                      So instead of game folder, savefiles were put into .\..VirtualRoot..\

                      The solution for me was to mark Angband as "safe" application in antivirus settings.

                      Comment

                      • MattB
                        Veteran
                        • Mar 2013
                        • 1214

                        #12
                        Originally posted by brbrbr
                        The solution for me was to mark Angband as "safe" application in antivirus settings.
                        Rule #1 of Angband: you are NEVER 'safe'.

                        Comment

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