Angband 3.1.0 beta released

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • takkaria
    Veteran
    • Apr 2007
    • 1951

    Angband 3.1.0 beta released

    Well, it took some time, but finally there's a beta version out... get it while it's fresh!

    Source: http://rephial.org/downloads/3.1/ang...1.0beta.tar.gz
    Windows compile: http://rephial.org/downloads/3.1/ang....0beta-win.zip
    OS X compile: http://rephial.org/downloads/3.1/Ang....0beta-osx.dmg

    There are a lot of changes in this release. The most notable are that the UI has been tweaked, refined and generally twiddled so it should be the easiest-to-use release ever. Other than that, there should be less junk and some new item kinds. Underneath all this is some fairly wide-ranging code cleanup and rewriting.

    There is no exhaustive changelog for this release since the changes are so wide-ranging. However, a fairly complete one is attached to the end of this post. Please post bug reports to this forum prefixed with "bug in 3.1", because that'll help me keep track of them. This release is not complete, and new releases will probably stay in beta through to 3.1.3 or so, so if you have issue with anything, please make it known!


    Changelog:

    Code:
    Angband 3.1.0
    =============
    
    This is an Angband development version -- it may be buggy, so be warned!
    
    Special thanks for this release go to: Eytan Zweig, pelpel, Kenneth Boyd,
    J.D. White, Eddie Grove, Rowan Beentje, Nick McConnell, Gabriel
    Cunningham, Shanoah Alkire, Alexander Philips, mikon, Antony Sidwell,
    Joe Buck, Erik Osheim, d_m, Antoine, and all the alpha- and beta- testers
    who downloaded the game, sometimes in an extremely shaky state, and played
    it anyway.
    
    Noticeable up-front UI changes
    ------------------------------
    
     * Add EyAngband-style quickstart option.
     * Notes, like NPP and FA, except with brand new code by J.D. White.
       (#10)
     * Add a trap detection indicator.  Also, colour the edges of trap-
       detected areas green. (#19)
     * Make status bar display all timed effects, left-to-right, which
       involves moving the dungeon level to the bottom of the left-hand
       display. (#191)
     * Add show_lists option, which is the same as always_show_lists in
       Ey. (#25)
     * Auto-wield birth items (#24)
     * Change the object information screen quite a bit: (#214, #26)
       - Show average damage for weapons and ammo (#26)
       - Make descriptions a fair bit terser (#399)
       - Show breakage chance for ammo
       - Track item origin, so every item has a tag telling you where it
         came from (#149)
     * Monster recall changes (part of #152)
       - some colouring removed, some added
       - Monster's depth is in red if it's beyond maximum depth, light
         green otherwise.
       - more information is known about monsters before they are killed
     * Add how many items the player already has when buying something at
       the store.  (closes #151)
     * Allow use of the space bar to advance a screenful in all
       menus.  (#244)
     * Make all menus wraparound at the top/bottom.  (#244)
     * Monster recall display now cycles through monsters in level order,
       not in the order that the monster definition file is written
       in.  (#302)
     * Add an indication of maximum capacity in the inventory
       display.  (#358)
     * Menus should use 1234567890 as little as possible for "tags".  (#292)
     * Remove the "depth_in_feet" option, instead displaying both the
       dungeon level and the depth everywhere.
     * Ensure that store-bought and birth-given torches have the same number
       of turns for stacking purposes.
     * Death screen now uses scrollable menu. (#416)
     * Drop squelched items
     * Append {tried} to tried items in the object browser (r606)
     * Put {tried} items before untried items in the object browser
     * The monster list display has a little more colour-coding
     * Death menu now uses a scrolly menu.
     * Preserve mode has a sensible description again.
     * Try and differentiate the level feelings more.
     * Add the moderately well-tested "lazy movement" patch which allows a 
       movement delay to be set, during which it is possible to choose a
       second direction.  This means that up and left in quick succession
       can be translated to an actual diagonal.  This may improve some
       people's laptop playing experience without resorting to the
       roguelike keyset.
     * Add bigscreen support to the self-knowledge screen.
     * Make inscriptions like "!k!k!k" prompt multiple times again.  (#492)
     * Make monster XP and native depth always known, even without
       kills.  (#596)
     * Rejig social status a bit -- it rises with level from a certain baseline.
     * Display various skills numerically on the character sheet, rather than
       with text.  This is like Eddie's patch, but a bit more polished.
     * Add a "display item list" command and term window.  (Thanks to Eric
       Osheim)
     * Add method of death to the character dump.  (#501)
     * Tell the payer when timed effects increase or decrease as the result
       of effects.  (idea by Eddie Grove)
     * Windows versions now use hashes and percent signs for walls until
       there's time to sort out all existing fonts to be Vista-compatible.
       (#232)
     * Squelch 'K'ind feature now available in the roguelike keyset. (#339)
    
    
    Gameplay changes
    ----------------
    
    There are some pretty big gameplay changes.
    
    The object list has been reworked quite a bit.  It is a bit more
    varied and has less duplication.  Some items have been removed and
    others added.  The new items have had relatively little testing and
    may be gone again next release.
     - The number of items that monsters drop has been reduced drastically.
     - Potions tend to appear in stacks now.
     - The range of food items has been reduced.
     - Healing heal a proportion of wounds, not just a set value-- this
       makes all the potions useful.
     - Add a selection of "gain one, lose one" stat potions to replace the
       old stat loss potions-- they guarantee a stat to raise and reduce one
       randomly.
     - The Elven Rings have a variety of healings, at the suggestion of
       Timo.  Also, apply some other changes from the TV-patch (r428)
     - Replace the sustain {stat} rings with sustain mind and sustain body,
       providing three sustains each.
     - (#543) Make ammo of slay evil/venom apply to Mithril ammo too.
    
    Gold drops have also been reworked.  By the end of the game, there is
    about 3.6x less gold per drop than in any earlier version or Angband
    or Moria, but the amount per drop at the beginning of the dungeon 
    is quite similar to pre-existing levels.  You may be interested in
    looking at http://rephial.org/research/avg_gold_drop.pdf for an
    illustration.
    
    Magic mapping and detection use the same-sized rectangular area around
    the player regardless of screen size.
    
    Fear now carries a to-hit penalty to missile weapons of 20, as well as
    giving an AC bonus of 8.  It also increases the failure chance of
    spells, but spells that cure fear have been made harder to fail to 
    balance this out.
    
    Birth:
     * Make point-based points worth less gold.
     * Minimum starting gold is 200AU.
     * Add an option to start the character with 500AU but no equipment.
     * Point-based character generation is now equivalent to best available
       from the autoroller.  (Eddie Grove)
     * All characters start with WoR.
    
    Stores:
     * Phase Door is now a staple item.
     * Start stocking deeper items as the character descends.
     * Rewrite the rules for shopkeepers
       - Remove individual-shopkeeper and race-based price changes from the
         store code, to make it easier to balance pricing.
       - Adjust adj_chr_gold[] values upwards to represent the average-110%
         inflation usually applied by the individual-shopkeeper greed
         values.  This should really be applied to the object.txt file
         instead, though.
    
    ID:
     * Make ID reveal all powers of an object, and remove *ID*.  (#158)
     * Make pseudo-id not occur whilst resting, but also make pseudo-ID
       lengths shorter (by a little over half) to compensate.
     * Some items, when worn long enough, get automatically ID'd
     * Items pseudo-id'd as {average} are automatically ID'd, and thus will
       stack properly
     * Make wands/staffs stack even when un-ID'd
     * Pseudo-ID obviously excellent items as {excellent} when possible
       (e.g. brands/slays/obvious stat bonuses).
     * Remove "good" pseudo-ID, replace with "magical" -- for non-cursed
       non-average non-ego non-artifacts
     * Add "strange" pseudo-ID, for when items have mixed blessings
     * Stop automatically cursing all bad weaponry
     * Make weak pseudo-id notice the difference between magical and
       excellent
     * Allow any/all rings/amulets to be cursed if the game wants to
       generate a "bad" item.  This is liable to be rethought in the future.
    
    A small selection of other changes:
     * Remove autoscum.  (#365) -- really?
     * Add minimum depths for each kind of trap.  As such, only teleport and
       confusion traps occur at dlev1.  This should help some people.
     * Make the rogue slightly better at combat than the ranger, based on Timo's sugges
       tion.  (Message-ID: <651vknF2cvjl2U1@mid.individual.net>)
     * Lower the distance missile weapons can fire into the 10-14 grids range.
     * Make monster arrow attacks sometimes miss.  (#537)
     * Some improvements to monster AI.
    
    
    Port
    ----
    
     * X11: Add -x commandline option for choosing the location of the
       settings file (#333, patch by morth)
     * GTK2: Continue work; add term windows, graphics, etc. and also some
       special dedicated display windows, like "messages" and "monster
       list". (shanoah)
     * OS X: the OS X version is now a universal binary, and runs faster,
       better, quicker, and with more sound than before.  (Rowan Beentje)
    
    
    Code-level
    ----------
    
    Monster HP is now specified as an average value around which to
    randomise, instead of using a "12d5"-type calculation.  Uniques always
    have the number of HPs specified in the monster.txt file, like before.
    This is copied from Ey.
    
    A lot of code-level cleanup has been applied to this release, much of it
    still in flux.  Many new files have been split out of existing files,
    which should now have much more self-explanitory names.  The player/, 
    monster/ and object/ subdirectories have been created, to aid seperation
    of code.
    
    There is also a new generic effects handler so that all item activations
    and use abilities share the same code; this replaces use-obj.c and a lot
    of descriptions from lib/edit/object.txt. (#234)
    
    Memory handling has been reviewed.  Now, all code should assume that
    allocation will succeed, just like it did already.  There is also a
    realloc()-style function along with its own hook.  string_make() has
    been modified to no longer return a "const char *", and so all the code
    now only uses "const" when it means "const".  Some macros have been
    removed.
    
    "Elly" rewrote the message and quark packages, previously in util.c,
    and in the process split them out into their own z- files.  The z-msg
    package is now much more understandable but marginally less "efficient",
    and certainly less "optimised".
    
    Option definitions have moved to option.h, and the names and
    descriptions for options have moved to option.c.  Option data is now
    stored in a much more visually compact way, much more suitable for
    editing than the old system was. (#64)
    
    Additionally, a new file API has been introduced which combines the
    previous mishmash of fd_*() and my_f*() calls into a simpler, better
    documented interface.  (#137)
    
    Store stocking is specified in lib/edit/store.txt now, in a reasonably
    flexible format.
    
    A fair bit of work has gone into allowing item names to be used in the
    edit files rather than the tval/sval numbers.  For example, see the
    new store.txt file; but also the lib/pref/ graphics files, and the
    starting items in the p_class.txt file, amongst others.  This is a
    fairly easy thing to do and is a massive massive usability enhancement.
    It means that invalid item references are caught much sooner, since if
    an item is removed, all references to its name become invalid.
    
    Set up an event system for UI display updates, where the game
    communicates with the UI by sending messages saying that something's
    changed that the UI might be interested in, rather than deciding that
    specific things should be redraw.  The main screen updates all use this
    system now.  Amongst other things, this system should help things like
    the borg and graphical frontends, because they can hook right into
    changes in state.  (#348)
    
    object1.c and object2.c have been split out into a series of files,
    obj-{desc,make,ui,util}.c.  This makes it much easier to remember what
    is where.  Also, object_desc() has seen a rewrite, so hopefully it's a
    lot more hackable now.
    
    The beginnings of an organised code documentation scheme have started,
    using doxygen.  Makefile.std provides an easy mechanism to generate docs
    (try "make docs").
    
    Other assorted changes:
     * Remove a whole load of useless or unused configuration options from
       config.h.
     * "make -f Makefile.inc depgen" will output "Makefile.new", which then
       contains up-to-date dependencies for the project.
     * Add "flags" back to object_type, removing the need for the hacky
       "xtra" bytes.  This paves the way for e.g. fireproofing scrolls
       later. (#120)
     * Makefile for MSVC/NMAKE command-line build.  Currently works with
       MSVC 6+; flags could use tweaking for MSVC 8+.
     * Clean up racial and class skill values into arrays.  (Kenneth Boyd)
     * Use header file guards in all header files, and use a consistent
       naming scheme for them ("Elly")
     * Add a very basic test harness for "unit testing" of the game's code,
       though this is barely used at present.  Thanks to Fennec for cleaning
       this up a bit.
     * Introduce the one_in_() notation to the game, for percentile dice.
     * Move to using randint0() and randint1() for random numbers.
     * Add proper transparency to the PNG files.  (fixes #270; thanks to Rowan Beentje
     * Move to using flags[6] for monster flags rather than individual flagsets.
     * Score code moved to score.c and extensively refactored.
    takkaria whispers something about options. -more-
  • Colbey
    Apprentice
    • Feb 2008
    • 51

    #2
    Thanks takkaria and everyone else for your hard work! This is really exciting!

    Comment

    • pndrev
      Scout
      • Sep 2008
      • 38

      #3
      Congrats on such a majour release! I'll be sure to grab it, it's been so a long time since I played [V].

      Comment

      • Zikke
        Veteran
        • Jun 2008
        • 1069

        #4
        Woohoo! Going to give it a shot.
        A(3.1.0b) CWS "Fyren_V" NEW L:50 DL:127 A++ R+++ Sp+ w:The Great Axe of Eonwe
        A/FA W H- D c-- !f PV+++ s? d P++ M+
        C- S+ I- !So B ac++ GHB? SQ? !RQ V F:

        Comment

        • chem
          Adept
          • Sep 2007
          • 150

          #5
          If you want a full GPL release, after a few minutes of googling, I've found Ross E Becker (author of parts of the windows port).

          This is undoubtedly him, based on his old angband email address and work history:
          Deep Systems Admin, with broad experience. Work experience covers Networking- (LAN, WAN,&#8230; Experience: Asurion Location: Vancouver 169 connections on LinkedIn. View Ross Becker&#8217;s profile on LinkedIn, a professional community of 1 billion members.



          His email is not listed at either site, but he can be contacted via a free linkedin account (he has 67 connections there and appears to be active _at least_ as recently as August) or perhaps via his company's general info mail.
          Last edited by chem; January 7, 2009, 18:54. Reason: edit: I do not mean to imply Ross owns that company (that seems unlikely)

          Comment

          • fingolfin37
            Rookie
            • Jan 2009
            • 4

            #6
            compatibility

            Hello, I'm new here. Is there savefile compatibility with 3.0.9? I was unable to wait for the new version to be released, and (inexplicably) find myself with a pretty promising character I'd like to shift to 3.1.

            If there is compatibility, do I just copy over the char file and the .prf file? Or is anything else required?

            Comment

            • takkaria
              Veteran
              • Apr 2007
              • 1951

              #7
              Originally posted by fingolfin37
              Hello, I'm new here. Is there savefile compatibility with 3.0.9? I was unable to wait for the new version to be released, and (inexplicably) find myself with a pretty promising character I'd like to shift to 3.1.

              If there is compatibility, do I just copy over the char file and the .prf file? Or is anything else required?
              There's no savefile compatibility between versions, no-- the changes mean there's no meaningful translation for a lot of items from 3.0.x to 3.1.
              takkaria whispers something about options. -more-

              Comment

              • Pete Mack
                Prophet
                • Apr 2007
                • 6883

                #8
                I just want to support Andrew on this: at some point, save file compatibility had to be broken to clean up the cruft in the txt files. Translating save files across such a massive change has insufficient value compared with the effort. Play out your game with 3.0.9; you can change a few of the object types to match the new gameplay. (The early rods of detect treasure are the only really huge change.

                Comment

                • takkaria
                  Veteran
                  • Apr 2007
                  • 1951

                  #9
                  Originally posted by Pete Mack
                  I just want to support Andrew on this: at some point, save file compatibility had to be broken to clean up the cruft in the txt files. Translating save files across such a massive change has insufficient value compared with the effort. Play out your game with 3.0.9; you can change a few of the object types to match the new gameplay. (The early rods of detect treasure are the only really huge change.
                  I really should have mentioned this in the announce post more clearly, but I totally forgot about it. Oops.
                  takkaria whispers something about options. -more-

                  Comment

                  • takkaria
                    Veteran
                    • Apr 2007
                    • 1951

                    #10
                    Originally posted by chem
                    If you want a full GPL release, after a few minutes of googling, I've found Ross E Becker (author of parts of the windows port).

                    This is undoubtedly him, based on his old angband email address and work history:
                    Deep Systems Admin, with broad experience. Work experience covers Networking- (LAN, WAN,&#8230; Experience: Asurion Location: Vancouver 169 connections on LinkedIn. View Ross Becker&#8217;s profile on LinkedIn, a professional community of 1 billion members.



                    His email is not listed at either site, but he can be contacted via a free linkedin account (he has 67 connections there and appears to be active _at least_ as recently as August) or perhaps via his company's general info mail.
                    I've emailed the company's general info mail. Let's see what we get from that.
                    takkaria whispers something about options. -more-

                    Comment

                    • fingolfin37
                      Rookie
                      • Jan 2009
                      • 4

                      #11
                      Originally posted by takkaria
                      There's no savefile compatibility between versions, no-- the changes mean there's no meaningful translation for a lot of items from 3.0.x to 3.1.
                      Ok thanks -- I'm just really looking forward to trying out the new version. I guess that means that I'll be slightly less frustrated if my 3.0.9 character YASD's.

                      Comment

                      • takkaria
                        Veteran
                        • Apr 2007
                        • 1951

                        #12
                        Ross replied, and angband 3.1 beta is thus available, with the exceptions noted in copying.txt, under either the Angband or GPL licences. Happy times.
                        takkaria whispers something about options. -more-

                        Comment

                        • chem
                          Adept
                          • Sep 2007
                          • 150

                          #13
                          Originally posted by takkaria
                          Ross replied, and angband 3.1 beta is thus available, with the exceptions noted in copying.txt, under either the Angband or GPL licences. Happy times.
                          hooray! epic project complete! congrats

                          Comment

                          • Nick
                            Vanilla maintainer
                            • Apr 2007
                            • 9637

                            #14
                            Originally posted by takkaria
                            Ross replied, and angband 3.1 beta is thus available, with the exceptions noted in copying.txt, under either the Angband or GPL licences. Happy times.
                            Cool! Now if someone could successfully contact Frank Galligan (aka Bolt Vanderhuge (!)), we'd be able to get a GPL Windows CE port too.

                            More than one person has tried email...
                            One for the Dark Lord on his dark throne
                            In the Land of Mordor where the Shadows lie.

                            Comment

                            • PowerDiver
                              Prophet
                              • Mar 2008
                              • 2820

                              #15
                              Originally posted by takkaria
                              Ross replied, and angband 3.1 beta is thus available, with the exceptions noted in copying.txt, under either the Angband or GPL licences. Happy times.
                              Isn't this worthy of its own thread as a big announcement?

                              Comment

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