Angband Forums

Angband Forums (http://angband.oook.cz/forum/index.php)
-   Vanilla (http://angband.oook.cz/forum/forumdisplay.php?f=3)
-   -   Changelog for nightlies (http://angband.oook.cz/forum/showthread.php?t=4307)

myshkin April 10, 2011 08:18

Changelog for nightlies
 
With the release of the latest nightly, I thought it would be useful to assemble a log of all the changes since the release of 3.2.0. I tried to err on the side of inclusion, and so the log is rather long to read. Where clear, I have noted a trac bug or a staging branch git commit ID to go along with the change. In each section, I attempted to put the most notable changes first, but of course this is a subjective matter. Also, it is entirely possible that I have missed important changes; I worked largely from git comments and trac headlines. If you notice something missing, please let us know.

Code:

Gameplay changes
================
        Refactoring of and enhancements to cave generation code, including circular rooms, labyrinths, and cavern levels
  #571  Multiple pval support
#261,#1163 Move fear, blindness, and confusion from resists to protections, and separate damage resistance from effect resistance
        Fix behavior of '8' squares in vaults
  #1364  Fix leather boots' rarity (and other object.txt fixes)
  #718  Make enchantment scrolls rare in the shops
  #1250  Stat drain now repairs on level up.  Remove restore stat potions from the game.
  #1347  Make monster haste/slow temporary status effects
4bafa79  Make teleport-other a bolt and make destruction remove artifacts.
0ce7858  Remove confusion as a breath attack, along with bronze monsters/DSM
496053b  Remove brands from elemental rings
8cd902c  Remove percentage healing, switch to CLW/CSW/CCW healing 20/40/60 HP respectively.
  #318  Consolidate duplicate monster entries
  #598  Make time attacks less evil
  #855  Allow running from detection edge
  #1061  Add command to hide/unhide squelchables
  #1095  Add scrolls of restore item
  #1096  Drain charged (RBE_UN_POWER) should only drain as many changes as a recharge gives
  #1311  Being confused and walking into a wall now costs a turn
  #1335  Walkover of unIDd artifacts no longer given away by definite article
  #1338  Characters no longer start out with bad equipment
  #1340  Fix to-hit bonus for randarts
  #1345  Make Wrath, Ulmo, and Erebor match base item dice sides and weight
  #1346  Make item effects that change monster status ID properly again.
  #1348  Fix, refactor broken specific summons
  #1350  STUPID living monsters no longer immune to life drain
  #1357  Labyrinths can no longer have double doors
  #1365  Normal DSMs contribute to level rating
  #1366  Wand of dragon breath now learned with use
  #1383  Earthquake weapons with multiple blows stop attacking if the target gets moved by a quake
2ef38bc  Move the 'jump' command to '(W)alk into a trap'
4656bb7  Add a neutral gender
ce06a19  Scale no_selling gold multiplier in early levels, and reduce money from selling by 2/3rds
dfcb3c7  Added FRIEND flag and put it on some monsters.
        Make lurkers, mimics, and creeping coins somewhat more convincing.
759ab76  Tone down flask of oil damage
7c679b1  Remove random (pointless) curses
26955b0  Replace individual rating boosts with a general rating boost for each item based on its power
35bc80d  Make rings of strength appear lower
0354181  Use fuzzy matching for summoning a monster by name.
0dd2bca  Change level feeling calculation for nests/pits.
        Create doors, create stairs, and glyph of warding push items in adjacent squares away.
889d204  Change damage to max values instead of averages for monster spells
582adf5  Make artifacts not be actually created in birth_no_artifacts
520beb7  Nullfame's improvements to monster power evaluation
7dda40c  Change Paurnimmen's cold brand to x2 rather than x3.

User interface
==============
        Major input layer refactor: remove macros, create internal keyset, provide facility for recognizing modifier keys
        Add buzzkill's updated tiles
        Add skill, race, class info to birth UI
  #820  Adam Bolt tileset element mappings wrong
  #1012  Show build version in dumps
  #1060  Replacing "destroy"ing with "squelch this item"
  #1074  More colored data in monster recall.
  #1149  Allow gtk-settings.prf to accept nonpositive window positions.
  #1157  SDL/OS X: Handle transparency properly for 8x8 tiles
  #1218  Remove some options related to squelch, highlighting, display
  #1247  Knowledge browser: prevent going off the edge of the screen in double/triple tile mode
  #1291  Fix monster knowledge and recall to respect purple_uniques
  #1301  Fix comparisons and merging of inscriptions in object stacking
  #1320  Weak characters now display next "extra blow" correctly
  #1321  Inventory term window no longer has a gray "(nothing)" string in the Burden line
  #1342  <player> no longer appears on monster list
  #1358  Numpad keys work for more users
  #1360  Fixed title display for second and subsequent pages of high score list
  #1362  Fix FOV update for HAS_LITE (thanks Zaxx)
  #1363  Make Ar-Pharazon flicker, and change up some of the canine coloring
  #1385  Correct keycode for F6 key
eb8c440  Make message printing use fewer lines when possible
73da897  Make hints from the store more common and less verbose
72cd70a  Re-enable solid walls for windows
57c2709  Give death molds ATTR_FLICKER
09d70f8  Fix the ordering of races in the birth menu
33987fa  Use <angle brackets> for pvals so that two pvals are not confused with (+hit,+dam)
2f1995f  Fix dropping items so that they duplicate inscriptions if necessary
fe23cdf  Fix minimap ('M') display
84d37e8  Fix UI issue with aborting ENTER menu
3e8eab5  Fix noticing of brands on wield
bf121bd  Ensure that branded jewelry displays active_verb on wield
9c5ac7e  Replace delay factor with the far more intuitive "time in milliseconds"
a24e54c  Display tile selections in decimal
c2558c4  Improve (e)quipment command output, especially while naked
90eb258  Renamed novices
5d336f8  Changed pain message to not depend on display character
00291f1  Remove the cheat_peek option
c789b91  option_dump() now saves macros and keymaps
f6afd24  Add monster recall for NONLIVING flag.
        Various code cleanup and improvements for main-gcu
e177bf1  Allow overriding of keymaps
cde42c9  Make C-x immediately exit death screen
3534656  Added support for new keycode KC_BEGIN (keypad 5). Added keypad support for running and tunneling to pref.prf.

Other bugs fixed
==================
  #1116  Changing squelch options triggers item drops
  #1304  Crash from broken randart flags
  #1305  Fix divide by zero error in monster recall
  #1309  Allow -w switch to resurrect with +ve hp
  #1322  Make sure that p_ptr->object_idx changes appropriately when the inventory changes via pickup, drop, wield, sell, etc.
  #1326  Savefile does not record town level properly
  #1329  extra ! in flag_is_subset
  #1330  Crash using @Z1 inscription
  #1333  Fix parse error in font-x11.prf
  #1337  Crash in nightlies on firing while confused
  #1339  Fix documentation of flag_next()
  #1352  Hang with compacting monsters on char start
  #1355  Fix crash when wielding unid'd bow of extra might
  #1356  Force cap of gold drops to MAX_SHORT.
  #1359  Fix undersized char buffer in textui_cmd_destroy()
  #1361  Using non-existent item by number causes crash
d17cd80  Fix bug marking certain players as cheaters erroneously
4a37e73  Fix birth UI crash
28ec660  Fix broken compiling recipes and unnecessary warnings in Makefile.osx
65c6693  Fix longstanding birth unit test failures
e7f62d1  Fix 32-bit warning on tests/parse/p-info
480b5ba  Prevent messages about damaged items referring to post-damage values
0a3519f  Patch by agoodman to support 64-bit windows
aea0d9e  Fix multiple-msg() bug and tunnelling assert() failure
04a533e  Fix assert failure in resist display
551abfd  Fix randarts init crash
7843139  Fix ammo breakage and make breakage message more timely.
b3ba869  Removed extra write in wr_monsters() to fix savefile bug.
a551de0  Fix wielding all items at birth
c842733  Prevent trap creation from hanging in the town, or overwriting a feature.
62814eb  Fix off-by-one error in RNG
8dda678  Make cheat options correctly set score options.
5c994a8  Fix chargen bug with player basic subwindow
53ab89f  Remove unnecessary gcu test that fails on netbsd
8e56cf3  Fix crash bug for monsters without a race, and move monster pain indexes so that they're only used at init-time.
cb6178b  Add some assert()s in the history code, and fix history_add_full() to work for history entries that don't involve artifacts.
bce53a8  Fix bug/warning with hex string parsing
52328bb  Fix crashing bug with monster recall
68ce8b0  Fix off-by-one error in FLAG_SIZE (spotted by nick)

Coding changes
==============
        Major parser refactoring and cleanup
        Major object edit file and description refactoring
        Introduction of object/slays.c and slay_table[]
        Support for monster and object templates
        Refactoring of shooting/throwing code in attack.c
        Refactoring of monster pain messages
        Refactoring of timed statuses
  #803  Refactoring of monster spell code
        Refactoring of object flag code
  #786  Add stats collection functionality to wizard mode; create pseudo-UI module for running stats collection
  #269  Clean up various functions related to messages
  #1101  Clean up and document savefiles
  #1302  Reconcile test and sdl initialization strategies
  #1306  Fix clean target in Makefile
  #1349  Replace some uses of memset() with of_wipe() and of_setall()
e7f1e57  Remove Term_user hook
f2581f1  Make cmd-obj.c entirely game code, and cmd3.c all UI code
0c4786c  Changes to text files to separate pvals onto their own line, pending parser changes.
6be460d  New menu API that allows dynamic building of menus easily
2d9142f  Reduce the size of the options table
fac5a00  Remove the distinction between birth and adult options
e772ff5  Fix some mingw build warnings
        Include more headers in the windows module to remove warnings
af18edb  Move declaration of "size_t i" out of for-loop to help VS people
dd1005a  Use exit status to communicate failure in run-tests
d1eca17  Update unit test to indicate new version number
b1eae2d  Tidy up defines.h and remove EGO_ indices
1b2f8cf  Remove use of read/write in favor of fread/fwrite
6ab4caa  Remove reference to removed file for Windows packaging
        Port of SVN pkg_src to use git
bd405d9  Add 'make splint' target and make changes to allow splint to run
aff4a87  Move autoinscriptions into object_kind struct
212fdfe  Remove many of the hardcoded spell limits
a2d44ae  Cleanup in defines.h
        Refactoring of pickup and autopickup code
443d455  make clean should remove angband.o
9d666ff  Refactor bolt/ball spell graphics
        Clean up preferences files
68703fc  Added "ICKY" monster flag, and changed monster nests/pits to use monster flags only
b79a91b  Symbol lookup is no longer hardcoded. Still needs to be tweaked for some symbols.
        Changes needed by APW for the borg
4aebe45  Fix confusing case of variable overloading in dump_features()
d688933  cptr -> const char *
3a60662  Use object flags in player state structure.
ee8a236  Make recharge() function more readable
17faa5b  Use Makefile.src in nds port
2479457  Added circular queue implementation
cb0d5da  Make the r-info parser test compile again.
        Refactor obj-make.c
0a781c0  Move from o_ptr->name2 to o_ptr->ego
        Wiz-mode improvements: add commands for full monster recall, wiping monster memory, buffing character
f41a2da  Use fuzzy matching for artifacts.
630fb5a  Move monster pits/nests to an edit file.
7e0256c  Removed autoinsc_dump() and squelch_dump()
63d0d0c  Replace calls to mem_alloc and then memset(0) with calls to mem_zalloc
dbbc506  Remove o_ptr->name1, replace it with a direct reference to the artifact it is of.
3d73679  Added assert to avoid looking up kinds with tval == 0. Added corresponding checks to make_fake_artifact(), store_base_power(), and parse_frequencies().
6b79843  Correct r_info test_g0 to test_c0 and add test_t0 (which currently fails!)
a44e44d  Make init_gtk correctly report failure
9aacfdc  Remove old monster power hack from .raw file days.
cc1cdc7  Remove LOG_PRINT*() macros and beef up file_putf()/file_vputf()
9f9527d  Redo breakage_chance() and improve attack.c comments
488c9cd  Add check_state function to look up an permanent equivalents of TMD_ flags (e.g. OF_AFRAID)
f9d00a5  Remove bashism from configure.ac (closes Debian bug #619695)
84bde09  Add flags for x2 brands for later use.

Documentation changes
=====================
57d8bde  Include copying.txt and faq.txt in OSX documentation
6e4b389  Added (T) command to help file.


ulrichvonbek April 10, 2011 14:31

Quote:

Remove confusion as a breath attack, along with bronze monsters/DSM
- Sniff, I like the bronze monsters and DSM.

Quote:

Make Wrath, Ulmo, and Erebor match base item dice sides and weight
- Does this greatly simplify the code? I don't have a problem with artifact versions of a weapon being different than the base.

Magnate April 10, 2011 14:37

Quote:

Originally Posted by ulrichvonbek (Post 50937)
Does this greatly simplify the code? I don't have a problem with artifact versions of a weapon being different than the base.

No, it doesn't. It was another of Eddie's many requests which got actioned ;-)

Derakon April 10, 2011 17:21

I always rather liked how the Trident of Wrath was horribly heavy. It was nice flavor. I don't feel strongly about the dice though.

You guys sure have been busy! Congrats on all you've accomplished.

ulrichvonbek April 10, 2011 17:32

I have fond feelings for big heavy ToW since my recent winner had it most of the game. I was willing to use it as my final weapon, but GoP showed up.

PowerDiver April 10, 2011 18:04

Quote:

Originally Posted by Magnate (Post 50938)
No, it doesn't. It was another of Eddie's many requests which got actioned ;-)

It was explained to me that there was a general rule that sides are supposed to be the same for artifacts. It wasn't a request, rather I just reported a bug. FWIW my first preference is that the trident of wrath be changed to a different base object.

IMO if it has a different weight, it is a different base object.

The reason I noticed was an attempt to make item damage effects go after base properties instead of plusses.

[edit] I misread the original. The changes in weight are surely 100% due to me. I'd still be happy with different base objects.

Nick April 11, 2011 01:46

Quote:

Originally Posted by myshkin (Post 50922)
With the release of the latest nightly, I thought it would be useful to assemble a log of all the changes since the release of 3.2.0.

You can have no idea how useful. Thank you so much. I kiss your feet.

myshkin April 11, 2011 01:56

Quote:

Originally Posted by Nick (Post 50976)
You can have no idea how useful. Thank you so much. I kiss your feet.

I am glad you find it useful. I might defer the feet-kissing to my hobbit assistant, though. :) Please note that, as long as the list is, I did omit and combine some changes, and so the list is not comprehensive. Small typo fixes and code cleanups didn't make the list, for example. Also, of course, it is already out of date.

Magnate April 11, 2011 20:15

Quote:

Originally Posted by myshkin (Post 50977)
I am glad you find it useful. I might defer the feet-kissing to my hobbit assistant, though. :) Please note that, as long as the list is, I did omit and combine some changes, and so the list is not comprehensive. Small typo fixes and code cleanups didn't make the list, for example. Also, of course, it is already out of date.

Not until the next nightly, it isn't!

Derakon April 11, 2011 20:29

Quote:

Originally Posted by Magnate (Post 51020)
Not until the next nightly, it isn't!

You keep using that word. I do not think it means what you think it means. ;)

myshkin April 11, 2011 20:44

Quote:

Originally Posted by Derakon (Post 51022)
You keep using that word. I do not think it means what you think it means. ;)

Inconceivable!

myshkin April 11, 2011 20:45

Quote:

Originally Posted by Magnate (Post 51020)
Not until the next nightly, it isn't!

To be fair, for Nick's purposes, whether changes have made it into the next nightly doesn't matter so much.

Magnate April 11, 2011 20:45

Quote:

Originally Posted by Derakon (Post 51022)
You keep using that word. I do not think it means what you think it means. ;)

Hey it wasn't me - I spent the first several months thinking they were built nightly, instead of every four hours or whatever it is. But at least we can all understand a definition unique to this forum: a version built within four hours of any changes to the master branch of the official development repo. To be fair, I think a month is the longest gap between nightlies since they started being built. It will probably stay that way too ...

Derakon April 11, 2011 21:20

I suspect the main source of potential confusion is that normally people expect "nightlies" to include everything that everyone has been working on -- the latest state of all development work, even if that work is incomplete. Because we're using a distributed VCS where each developer can take advantage of source control without worrying about inflicting incomplete work on others, though, this isn't actually happening -- stuff goes out to mainline only when it's dev-stable, and thus mainline gets modified much less often. I suppose you could grab d_m's nightly or Magnate's nightly or takkaria's nightly and get something more recent than what's in mainline, if you really wanted to.

Magnate April 11, 2011 21:42

Quote:

Originally Posted by Derakon (Post 51029)
I suspect the main source of potential confusion is that normally people expect "nightlies" to include everything that everyone has been working on -- the latest state of all development work, even if that work is incomplete. Because we're using a distributed VCS where each developer can take advantage of source control without worrying about inflicting incomplete work on others, though, this isn't actually happening -- stuff goes out to mainline only when it's dev-stable, and thus mainline gets modified much less often. I suppose you could grab d_m's nightly or Magnate's nightly or takkaria's nightly and get something more recent than what's in mainline, if you really wanted to.

Well, that's simply us (the devteam) being careless with references to unfinished work, I think. To all intents and purposes the nightlies *are* the latest state of all development work - apart from the stuff that doesn't compile yet and/or has bugs rendering it unplayable. As soon as one of us gets a branch to a point where it compiles cleanly and doesn't crash in the first few minutes, it goes into staging. The idea of staging is that we compile and playtest each other's "finished" stuff, which picks up a whole load of embarrassing bugs that would otherwise spoil the nightlies. We have a rule that the person who puts stuff in staging cannot the put their own stuff into the nightlies, though this is occasionally relaxed when things are slow or takk is in a hurry. People could in theory build from the staging branch and help find bugs in it, but we took a decision not to provide builds from it on a regular basis because that would render the nightlies pointless.

There are sometimes branches that are finished but are too radical to go into nightlies without further testing - fizzix's AC changes are the only one that comes to mind, and I'd like to see them in nightlies eventually but haven't had time to playtest them yet. In theory git means that there could be lots of branches like that, but the testing community is small (and largely doesn't compile its own versions), so it's dispiriting to do a ton of work on radical changes and then have nobody use it. So people don't do that very often.

N.B. "nightly" refers to packages that are auto-built and put up at rephial.org for download, and that's only the master branch. To play from staging, or from any individual dev's branches, you'd need to compile it yourself. Nothing to stop you doing that, of course.

SSK April 12, 2011 03:29

Quote:

Originally Posted by ulrichvonbek (Post 50937)
- Sniff, I like the bronze monsters and DSM.

- Does this greatly simplify the code? I don't have a problem with artifact versions of a weapon being different than the base.

Hey guys, still using Derakon's nightly build from February.

I really liked artifacts having a few more dice on some occasions than the base.

What's weird in the build I am using is that with now TWO weapons, the dice changes reverted randomly to base in the middle of the game!

For instance:
1) I had been using Anduril from 3.2.0 and sometime after coming over to the nightly it reverted to 2d5 from 3d5. Fine. I figured it was a change, but I had expected it to be back to 2d5 immediately on my starting up the nightly--it happened some time later tho.

2) I found the Glaive of Pain while using the nightly. It was 9d6. Great. Huge weapon. I've been using it for a while. Earlier today I whacked a bunch of lesser balrogs and the Balrog of Moria with it and it ate them up. Suddenly this eve I start whacking a Dracolisk, and it just isnt crunching through nicely, and I look up and suddenly the Glaive of Pain has reverted to 2d6! Doh!

How can this happen that weapons are changing as I use the program? I didnt update the build at all...

Again, I liked the variety in the game from having some artifacts have more dice than the base.

Derakon April 12, 2011 03:33

That's the second time that bug's been reported, so I guess the devs can't ignore it now. ;)

SSK April 12, 2011 03:50

Quote:

Originally Posted by Derakon (Post 51062)
That's the second time that bug's been reported, so I guess the devs can't ignore it now. ;)

Oh good, someone else noticed it.

p.s. Devs: I **LOVE** the description of the Knights Templar and your diatribe against sanctimoniousness. Keep up that good work. HATE evangelism and sanctimoniousness...

Derakon April 12, 2011 03:55

Er, the description of the Knight Templar's been around for years...

I just tried to jump to dlvl 127 with a wizard and Angband crashed. Console says "Assertion failed: (lev < MAX_DEPTH), function apply_magic, file object/obj-make.c, line 596."

SSK April 12, 2011 04:17

Quote:

Originally Posted by Derakon (Post 51062)
That's the second time that bug's been reported, so I guess the devs can't ignore it now. ;)

BTW I tried to restore the dice of the artifacts with scroll of restore item--didn't recognize them as being damaged LOL. Damaged by the code, not by the monsters/dungeon heh.

myshkin April 12, 2011 08:47

Quote:

Originally Posted by Derakon (Post 51065)
I just tried to jump to dlvl 127 with a wizard and Angband crashed. Console says "Assertion failed: (lev < MAX_DEPTH), function apply_magic, file object/obj-make.c, line 596."

Confirmed and logged as trac ticket #1393. Thanks for the report.

myshkin April 12, 2011 08:53

Quote:

Originally Posted by SSK (Post 51061)
I really liked artifacts having a few more dice on some occasions than the base.

They still do; for example, normal tridents are 1d10, while the Trident of Ulmo is 4d10. It used to be 4d8, but d_m changed it to have the same number of sides as the base weapon.

Quote:

Originally Posted by SSK (Post 51061)
What's weird in the build I am using is that with now TWO weapons, the dice changes reverted randomly to base in the middle of the game!

I have little concept of how this could happen. Do you have a savefile that has one of these weapons?

Magnate April 12, 2011 09:05

Quote:

Originally Posted by Derakon (Post 51062)
That's the second time that bug's been reported, so I guess the devs can't ignore it now. ;)

Sorry, I missed the first time. Is there a savefile anywhere?

(And presumably this isn't caused by the 9th April nightly, if it's been spotted before.)

Hobbels April 12, 2011 09:52

I have posted a savefile here.

http://angband.oook.cz/forum/showthread.php?t=4299

Magnate April 12, 2011 10:42

Quote:

Originally Posted by Hobbels (Post 51084)

Ok thanks, I will look into it. I had about a month off, so missed most of the changes that went into the 9th March nightly, so it will take me a while to work this out. I have absolutely no idea why this should happen, but if I can consistently reproduce the conditions which cause it, it should be possible to figure it out.

Hobbels April 12, 2011 11:58

I lost the extra dice of the dagger Angrist after saving and exiting the game. After loading the dagger had only 1d4. So it's probably an issue with saving and loading.

Magnate April 12, 2011 12:18

Quote:

Originally Posted by Hobbels (Post 51086)
I lost the extra dice of the dagger Angrist after saving and exiting the game. After loading the dagger had only 1d4. So it's probably an issue with saving and loading.

Ah. That makes it a whole lot easier!

Thanks. I will test with your savefile, and others.

myshkin April 12, 2011 14:11

I thought I'd already posted elsewhere on oook, but I guess not. Confirmed and logged as trac ticket #1398.


All times are GMT +1. The time now is 10:35.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.