[Announce] NPPAngband 0.5.1 WIP 2

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • nppangband
    NPPAngband Maintainer
    • Dec 2008
    • 926

    [Announce] NPPAngband 0.5.1 WIP 2

    NPP 0.5.1 WIP2 has been uploaded. This is mostly a major clode cleanup. It now compiles cleanly with cygwin with no warnings ( I work with main-win.c.0. Probably about 40-50 bugs were fixed from WIP-1. The main new feature is mouse support for most of the options screens (accessed by '=') using the modern Angband code. This also includes addding the itemlist window from Angband.

    People trying to compile using other main-xxx.c files and makefiles should have a much easier time now. Please let me know what changes I need to make for any other makefile or main-xxx.c. And thanks to those who gave WIP-1 a try.

    The links are:

    source:


    Windows executable:




    Thanks again to all willing to give this version a test. It should be fairly playable by now, but please save often.

    -Jeff
    NPPAngband current home page: http://nppangband.bitshepherd.net/
    Source code repository:
    https://github.com/nppangband/NPPAngband_QT
    Downloads:
    https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57
  • d_m
    Angband Devteam member
    • Aug 2008
    • 1517

    #2
    So, this might just be user error, but I wasn't able to compile WIP-2 on Linux.

    There were about 6 fatal warnings (mostly redefinitions between externs.h and other files) which I did fix. However, there were *tons* of warnings about unreachable code. Some of these warnings were coming from system libraries like /usr/lib/bits/unistd.h, so I think at least some are bogus.

    The compile ultimately failed because it was trying to pull cairo in unconditionally. I think I can get it working but so far no luck.
    linux->xterm->screen->pmacs

    Comment

    • d_m
      Angband Devteam member
      • Aug 2008
      • 1517

      #3
      OK, I got it compiling and running on Linux... I will make a patch for you once it seems to be working OK.

      One bug I hit really quickly is that NPP wants to store prefs in $HOME/.angband/NPP0.5.1-WIP2 but doesn't actually create this directory. So after character creation it crashes.

      I found that path via strace and I assume that if I manually create the directory it'll be fine, but obviously it would be good for the game to do it automatically.
      linux->xterm->screen->pmacs

      Comment

      • nppangband
        NPPAngband Maintainer
        • Dec 2008
        • 926

        #4
        Which makefile are you using? It must involve #defines that aren't #defined for main-win.x.

        One thing I did between WIP1 and WIP2 is make sure most of the NPP.h files are practically identical to the Angband h files, and the different code moved to separate files. The main difference on all of the z-**** files was all of the extended character code and I moved that to its own file. All the main-xxx files and most of the .h files are straight out of Angband 3.1.2v2.

        And again, many thanks for helping me out.
        NPPAngband current home page: http://nppangband.bitshepherd.net/
        Source code repository:
        https://github.com/nppangband/NPPAngband_QT
        Downloads:
        https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

        Comment

        • nppangband
          NPPAngband Maintainer
          • Dec 2008
          • 926

          #5
          Originally posted by d_m

          One bug I hit really quickly is that NPP wants to store prefs in $HOME/.angband/NPP0.5.1-WIP2 but doesn't actually create this directory. So after character creation it crashes.
          Should there be another director made in init2.c? I thought it had all of the directories that Angband has, plus NPP/lib/bones for player ghosts.

          I miss Diego, my NPP co-maintainer, for many reasons, but one is that he works in Linux, and I work in windows, so between the two of us we could catch most of the bugs that happen on the various OSs.
          NPPAngband current home page: http://nppangband.bitshepherd.net/
          Source code repository:
          https://github.com/nppangband/NPPAngband_QT
          Downloads:
          https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

          Comment

          • d_m
            Angband Devteam member
            • Aug 2008
            • 1517

            #6
            Here are the changes I had to make to get it to compile. Some of these changes are quick and dirty so you probably shoudn't just apply the patch. That said, all the changes were necessary for it to build for me.
            Attached Files
            linux->xterm->screen->pmacs

            Comment

            • d_m
              Angband Devteam member
              • Aug 2008
              • 1517

              #7
              Originally posted by nppangband
              Should there be another director made in init2.c? I thought it had all of the directories that Angband has, plus NPP/lib/bones for player ghosts.

              I miss Diego, my NPP co-maintainer, for many reasons, but one is that he works in Linux, and I work in windows, so between the two of us we could catch most of the bugs that happen on the various OSs.
              This turned out to be a problem related to autotools (used by V but not be NPP). The z-file.c program uses symbols like HAS_MKDIR to make the file handling functions work. So when I'm building NPP those variables aren't set (they get set by ./configure in V I thnk). I added -DHAS_MKDIR to Makefile.std and then the directory got created correctly.

              Probably I should change the V code so if you aren't on WINDOWS and don't have HAS_MKDIR then it will crash during compilation. The "default" behavior isn't very helpful (basically everything just fails).

              Also, two bugs from playtesting so far:

              1. Sometimes when @ runs for a bit it doesn't reappear when the run is over... you have to move manually or do some other action and then the @ sign reappears. It doesn't seem to always happen but it was happening enough that it kept throwing me off.

              2. the item name/enscript in shops gets drawn under the weight, so if you have an item with a long name/inscription the closing part of the inscription can actually appear to the right of the weigth ("behind" it).
              linux->xterm->screen->pmacs

              Comment

              • nppangband
                NPPAngband Maintainer
                • Dec 2008
                • 926

                #8
                Originally posted by d_m
                Here are the changes I had to make to get it to compile. Some of these changes are quick and dirty so you probably shoudn't just apply the patch. That said, all the changes were necessary for it to build for me.
                Again, thank you. Most of those changes involved redundant delcarations of functions or variables. As for the changes to the makefiles, I assume the long-term solution is to add the src/gtk/ subdirectory where the cairo files are located. I added them.
                NPPAngband current home page: http://nppangband.bitshepherd.net/
                Source code repository:
                https://github.com/nppangband/NPPAngband_QT
                Downloads:
                https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

                Comment

                • nppangband
                  NPPAngband Maintainer
                  • Dec 2008
                  • 926

                  #9
                  Originally posted by d_m

                  Also, two bugs from playtesting so far:

                  1. Sometimes when @ runs for a bit it doesn't reappear when the run is over... you have to move manually or do some other action and then the @ sign reappears. It doesn't seem to always happen but it was happening enough that it kept throwing me off.
                  I noticed that too. I fixed the problem. If it is really annoying you, the fix is in cave.c in map_info. Around line 1505, this line should read (delete the second condition about running):

                  /* Handle "player" */
                  else if (m_idx < 0)

                  Not that it affects gameplay, but right after that, around line 1560, near the end of map_info, there is a related "else if" statement that can be completely deleted. This bug came up when I removed the "hide player while running" option.


                  Originally posted by d_m

                  2. the item name/enscript in shops gets drawn under the weight, so if you have an item with a long name/inscription the closing part of the inscription can actually appear to the right of the weigth ("behind" it).
                  Yes, some of the calls to object_desc are wrong. This is because I am still using the old object_desc function from Angband 3.0.6. Sometime between 3.0.6 and 3.1.2 it got a re-write, and where I incorporated updated Angband code I haven't always called the function properly. Sometimes an object name is going to print with either too much or too little information. I am updating object_desc this week, and then these bugs should go away.
                  NPPAngband current home page: http://nppangband.bitshepherd.net/
                  Source code repository:
                  https://github.com/nppangband/NPPAngband_QT
                  Downloads:
                  https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

                  Comment

                  • ekolis
                    Knight
                    • Apr 2007
                    • 921

                    #10
                    I can't get help on options: "cannot load option.txt" - the file is called options.txt, not option.txt!

                    edit: also, the "Please choose an item to examine" message in shops behaves weird when you get it several times in a row... and where is the "depth in feet" option hiding?! I wanna turn it off!

                    And I found a "rapier of slays" in the store... the examine screen says it slays orcs though...

                    And I tried to buy 99 arrows costing $1 apiece when I had $127... but I can't afford it, according to the game! What is this, fractional gold? When I bought twenty of them, I wound up with 98 gold remaining, so I had somehow spent 29 gold total... WTF?!

                    Do druids have some hidden combat penalties or something? I hit a black naga with one out of ten of my arrows, and could barely scratch anything with a dagger, but I still had +0,+0 on the char screen!

                    The set-trap command seems to be set to autorepeat, which is quite annoying!

                    Sometimes, when running, @ randomly disappears...

                    I was confused by a scintillating colored gas trap while BLIND? What, is it not just the colors that are confusing?
                    Last edited by ekolis; August 23, 2010, 18:05.
                    You read the scroll labeled NOBIMUS UPSCOTI...
                    You are surrounded by a stasis field!
                    The tengu tries to teleport, but fails!

                    Comment

                    • murphy
                      Adept
                      • Sep 2009
                      • 101

                      #11
                      Hi,

                      to get past the directory creation problem the necessary flag is -DHAVE_MKDIR rather than -DHAS_MDKIR .

                      also for my system I have to do gcu only compile, which means I had to hack up the Makefile.src and Makefile.std [maybe also Makefile.inc for vanilla] to get rid of gtk/* and maybe also snd-sdl.o as dependencies [had to do similar hacking to get vanilla angband to compile too ... so this isn't an issue specific to NPP]

                      the src/gtk/*.c stuff won't compile for me because I dont have the gtk system header files. but they aren't really dependencies for gcu only compile, so maybe at some point it would be nice to clean up the makefiles so that gcu and x11 dependencies don't get mixed together

                      Comment

                      • nppangband
                        NPPAngband Maintainer
                        • Dec 2008
                        • 926

                        #12
                        Originally posted by ekolis
                        I can't get help on options: "cannot load option.txt" - the file is called options.txt, not option.txt!
                        Fixed. Thanks.

                        Originally posted by ekolis
                        edit: also, the "Please choose an item to examine" message in shops behaves weird when you get it several times in a row... and where is the "depth in feet" option hiding?! I wanna turn it off!
                        Consistent with vanilla, Depth in feet is the standard now, and the option has been removed. On the sidebar both are displayed.

                        Originally posted by ekolis
                        And I found a "rapier of slays" in the store... the examine screen says it slays orcs though...
                        the "slays" ego item is similar to all of the "of slay orc/troll/dragon" ego items in vanilla. Only there is one called "of slays" and the actual slays are randomly assigned. Same deal with armor of resist elements, weapons of *slays", and a couple other ego types. Also, these egos have a chance of having more than one resist/slay/etc. Sometimes you will find one with 3-4.

                        Originally posted by ekolis
                        And I tried to buy 99 arrows costing $1 apiece when I had $127... but I can't afford it, according to the game! What is this, fractional gold? When I bought twenty of them, I wound up with 98 gold remaining, so I had somehow spent 29 gold total... WTF?!
                        I believe this is also consistent with Angband. It used to come up with the price for one, round, then multiply. Now the function calculates the price for a group of items, rather than find the price for one and then multiply by the number. So, yes, these things happen. Have people complained about it in Vanilla?


                        Originally posted by ekolis
                        Do druids have some hidden combat penalties or something? I hit a black naga with one out of ten of my arrows, and could barely scratch anything with a dagger, but I still had +0,+0 on the char screen!
                        Druids are incompetent with weapons/archery, even worse than mages. BUt they have the most powerful spells in the game.

                        Originally posted by ekolis
                        The set-trap command seems to be set to autorepeat, which is quite annoying!
                        Copy and Paste error. I fixed this too. Thanks.


                        Originally posted by ekolis
                        Sometimes, when running, @ randomly disappears...
                        I fixed this. Posting an update tonight...

                        Originally posted by ekolis
                        I was confused by a scintillating colored gas trap while BLIND? What, is it not just the colors that are confusing?
                        The confusion is caused by the gas that the player is breathing. Although I must admit we did not think about blindness when we named that trap.

                        Thanks for the feedback. That @ dissappearing during a run is incredibly annoying, so I am posting WIP2a tonight.
                        NPPAngband current home page: http://nppangband.bitshepherd.net/
                        Source code repository:
                        https://github.com/nppangband/NPPAngband_QT
                        Downloads:
                        https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

                        Comment

                        • nppangband
                          NPPAngband Maintainer
                          • Dec 2008
                          • 926

                          #13
                          Originally posted by murphy
                          Hi,

                          to get past the directory creation problem the necessary flag is -DHAVE_MKDIR rather than -DHAS_MDKIR .
                          How about the simple low tech solution of me just including the directory in the default download. Does that work?

                          I am open to suggestions about the makefiles, and I will definitely follow whatever Vanilla does to solve the problem.
                          NPPAngband current home page: http://nppangband.bitshepherd.net/
                          Source code repository:
                          https://github.com/nppangband/NPPAngband_QT
                          Downloads:
                          https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

                          Comment

                          • nppangband
                            NPPAngband Maintainer
                            • Dec 2008
                            • 926

                            #14
                            Version WIP-2a hs replaced WIP-2. There was an annoying bug that prevented the player from being displayed at the end of running, and I fixed around a half-dozen other bugs. Also made a bunch of changes suggested by d_m to help compiling on linux systems.

                            The new links are:

                            source:


                            Windows executable:
                            NPPAngband current home page: http://nppangband.bitshepherd.net/
                            Source code repository:
                            https://github.com/nppangband/NPPAngband_QT
                            Downloads:
                            https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57

                            Comment

                            • ekolis
                              Knight
                              • Apr 2007
                              • 921

                              #15
                              Thanks!
                              You read the scroll labeled NOBIMUS UPSCOTI...
                              You are surrounded by a stasis field!
                              The tengu tries to teleport, but fails!

                              Comment

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