Angband 2.7.9v6

From Angband Wiki
Jump to navigation Jump to search

Background

Version 2.7.9v6 was released on 14th April 1996 by Ben Harrison as part of the series of release leading up to the intended-to-be-stable 2.8.0. As such, it consisted almost entirely of bugfixes and behind-the-scenes tweaks. It also improved handling of old savefiles, something Ben thought particularly important in "stable" releases.

Changelist

   The savefile loading process was repaired and improved. It is now possible to correctly load pre-2.7.0 savefiles, including old "MacAngband 1.0" savefiles, old "MacAngband 2.0.3" savefiles, old "PC Angband 1.4" savefiles.
   The Borg has been updated, and is no longer included with the official source archive, but can now be found in "\/angband\/Borg/", along with various other materials related to the Borg. There is a new "Borg" section on the Official Angband Home Page.
   The "debug" commands have been separated from "wizard mode", with their own "savefile marker" flag, and independent verification of usage, similar to the method used for the "borg" commands.
   The "-w" option will now allow you to correctly restore a dead character, using the "cheat death" code. The "cheat death" code now kicks in after the player has "died", and cancels the "death".
   The "updateview()" and "updatelite()" functions were optimized (again) since "update_view()" is a major bottleneck when resting.
   The class titles were restored, with one title per five levels.
   The source files were re-formatted, using four space indentation per block, and aligned stand-alone curly braces. A few of the "main-xxx.c" files were ignored because they were beyond repair.
   The "mirror" window can now be used to show debugging messages (currently used only for the Borg).
   The "mirror" window can now be used to show an overhead view of the map (normally updated only when the map sector changes).
   The "windows" now work correctly with the Windows version. Note that the scrolls bars were removed, and all windows are resizable, up to the maximum size of 80x24.
   The "lib" folder now "works" with older Macintosh computers.
   Memory wiping now clears inscriptions generated by "sensing".
   Reading unknown scrolls of identify is no longer dangerous, and using unaware wands/staffs/etc now works correctly with the choice window.
   The "handlestuff()" function was broken into three sub-functions, "noticestuff()", "updatestuff()", and "redrawstuff()", each using a separate bit flag set, for various reasons. The "notice_stuff()" function now handles everything which can only be done between player turns, including pack rearrangement.
   The colors for "main-ibm.c" and "main-win.c" were changed slightly to match the "official" colors (red, light red, and violet), and "main-win.c" was changed to use the new "colortable" array. The "Termuser()" hook in "main-win.c" is now used to allow the user to force complex color or palette abilities.
   All messages are now split if they exceed 72 characters.
   The "msgprint()" and "getxxx()" functions have been changed, primarily to simplify the "msg_print()" function. The top line of the screen should now, in general, be used only for "messages", temporary queries, and certain special full screen interactions.
   Player ghosts are no longer created, nor loaded from savefiles. They will not be restored until the player ghost code has been completely rewritten.
   The refueling code was repaired and improved.
   Item inscriptions now resist destruction by stacking.
   Changing the "rogue-like commands" option works "better".
   Some more options were removed or modified slightly.
   Artifacts are marked "(charging)" when they are charging.
   The "DELAYRINFO_TEXT" compilation option is now functional, and allows the "monster race descriptions" to be read from disk as needed, instead of keeping them in memory and using 60K.
   The "verification" code was moved from "initfilepaths()" to "show_news()", allowing system-specific path modification.