Nightlies embark on long journey towards 3.3
Collapse
X
-
It was a deliberate change - ticket #855. FWIW, I share your preference for the earlier behaviour and argued against the change, but was outvoted.There was a change made with running. It used to be that when your run stopped you at the border of trap detection, if you tried to run again you would not move. Now, the second run succeeds. Was this done on purpose, or by accident? I think I prefer the earlier behavior, but if the change was made on purpose that will allow some useful overloading of the run command, for example to jump into traps.Leave a comment:
-
There was a change made with running. It used to be that when your run stopped you at the border of trap detection, if you tried to run again you would not move. Now, the second run succeeds. Was this done on purpose, or by accident? I think I prefer the earlier behavior, but if the change was made on purpose that will allow some useful overloading of the run command, for example to jump into traps.Leave a comment:
-
You don't want to be mallocing strings, ever. If this is some sort of religious coding style, then a much better solution is to bloat the object_type with an array of chars large enough to hold the max allowed inscription.Leave a comment:
-
No, the current thinking is that globals are bad and should be removed where possible. I didn't do this refactor so I don't know what the solution was (a linked list, maybe?), but it's been reverted for the time being.Why would you change that? That means when you fire an arrow, you either have to generate a new string or else you have to keep reference counts. Either way lies madness.
I thought in this code linked lists are considered too dangerous to implement. Reference counts are an order of magnitude worse.Leave a comment:
-
Why would you change that? That means when you fire an arrow, you either have to generate a new string or else you have to keep reference counts. Either way lies madness.
I thought in this code linked lists are considered too dangerous to implement. Reference counts are an order of magnitude worse.Leave a comment:
-
Yes, that went in a week or two ago. The clue should be in the resists screen: rConf is now shown as pConf and is grouped with pFear and pBlnd.I identified a blessed weapon because my pack was full and I had a rod of ID. Usually I test-wield, and toss blessed weapons unless they have ESP. This one provided protection from confusion, and I did a double-take before realizing the long-awaited changes of some high resists into abilities must be in 3.3 dev already.Leave a comment:
-
The memory leaks were caused by the *removal* of the quark array. It used to work exactly as you describe, then we tried to remove the global quark array and make inscriptions a property of each object, but that caused the leaks. We reverted to the quark arrangement until we've rationalised all the object copying and modification code, to make it easier to debug quark removal next time.Wait a minute. A memory leak with quarks shouldn't be possible unless you are working too hard. Store the strings sequentially in a huge array, and don't ever remove anything. On level change, do garbage collection and compact the array. Is whatever alternative that is in use now worth the effort?Leave a comment:
-
I identified a blessed weapon because my pack was full and I had a rod of ID. Usually I test-wield, and toss blessed weapons unless they have ESP. This one provided protection from confusion, and I did a double-take before realizing the long-awaited changes of some high resists into abilities must be in 3.3 dev already.Leave a comment:
-
Wait a minute. A memory leak with quarks shouldn't be possible unless you are working too hard. Store the strings sequentially in a huge array, and don't ever remove anything. On level change, do garbage collection and compact the array. Is whatever alternative that is in use now worth the effort?Leave a comment:
-
-
This is because the memory-leak-causing inscriptions change (quark removal) was reverted in between, nuking the fix. Sorry. Was there a ticket I can reopen?Leave a comment:
-
This had been fixed in what I got from git clone on 2011/01/03 but has reverted to buggy behavior [uninscribed not merging with inscribed] in what I got from git clone on 2011/01/13.In yet another strangeness, I had two staves of teleport stacked and a third one unstacked in my pack that did not merge. The cause has something to do with my !* autoinscription. When I uninscribed the one, they merged and kept the !*. Of course, my savefile may be corrupted by the back-and-forth.Leave a comment:
-
OK, with that info I know where the problem is: wield_item():cmd-obj.c needs fixing to take account of how inscriptions work now. Previously, they were stored as references into a big array of inscriptions that was never freed, only added to (quarks). Now each item contains its own inscription, and what's happening is wield_item hasn't been modified to take account of that. Not got the time to figure it out myself for a little while, though...I guess I am running through gdb for the forseeable future. I don't yet know if this is reproducible. I started up again, shot a few arrows inscribed f0 [4 I think] and then a bunch with no inscription. I plan to save and reload, but first I'll copy some messages.
I really wish recent messages got dumped in the char dump even when you didn't just die.
A couple messages with increasing numbers:
You combine 57 arrows (1d4) (+0, +0) {f0} in your quiver (n).
Then several increases with the f0 missing up to 63
You combine 59 arrows (1d4) (+0, +0) {} in your quiver (n).
Somewhere in there I wield one arrow of wounding into the quiver. Then I pick up another arrow, I think one I shot from the ones with empty {} inscription.
You have 62 arrows (1d4) (+0, +0) {0C-??}
where the ?? are chars I do not know how to type, first a + over a - and second a superscore [an _ but up high]
Woohoo! -- it saved and reloaded with the strange inscription. Savefile available if you want it.Leave a comment:
-
I guess I am running through gdb for the forseeable future. I don't yet know if this is reproducible. I started up again, shot a few arrows inscribed f0 [4 I think] and then a bunch with no inscription. I plan to save and reload, but first I'll copy some messages.
I really wish recent messages got dumped in the char dump even when you didn't just die.
A couple messages with increasing numbers:
You combine 57 arrows (1d4) (+0, +0) {f0} in your quiver (n).
Then several increases with the f0 missing up to 63
You combine 59 arrows (1d4) (+0, +0) {} in your quiver (n).
Somewhere in there I wield one arrow of wounding into the quiver. Then I pick up another arrow, I think one I shot from the ones with empty {} inscription.
You have 62 arrows (1d4) (+0, +0) {0C-??}
where the ?? are chars I do not know how to type, first a + over a - and second a superscore [an _ but up high]
Woohoo! -- it saved and reloaded with the strange inscription. Savefile available if you want it.Leave a comment:
Leave a comment: