Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Development

Reply
 
Thread Tools Display Modes
Old July 1, 2011, 21:04   #21
Starhawk
Adept
 
Join Date: Sep 2010
Location: Indianapolis IN, USA
Posts: 246
Starhawk is on a distinguished road
Just my two cents, I'm playing this nightly:

23 Jun 2011 at 23:08 UTC, revision 431faa7

And I have had this error twice, both times when killing a cutpurse. Hope that helps.

edit: and if it matters, i'm on Windows XP.
Starhawk is offline   Reply With Quote
Old July 1, 2011, 21:22   #22
Max Stats
Swordsman
 
Join Date: Jun 2010
Posts: 324
Max Stats is on a distinguished road
I had assumed that it was triggered by an invalid object in the monster drop, but I'm almost certain I recall it happening in town after killing an Aimless-looking Merchant (which drops only gold). However, I'm only almost certain. But it might be worth looking into gold drops rather than object drops, just in case, since Cutpurses are also frequent gold-droppers.

Side note: The monster recall for the Cutpurse says it can carry up to seven objects or treasures! Is this right? That's a lot of drops, and maybe the reason why the previous poster encountered the bug with Cutpurses is that they generate more opportunities for the bug to hit.
Max Stats is offline   Reply With Quote
Old July 1, 2011, 21:25   #23
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 8,924
Derakon is on a distinguished road
If it's a problem with dropping money, then it should be comparatively easy to trigger by rolling up a wizard and killing hydras.

The cutpurse's max drop might be influenced by its ability to pick up items. I know some *bands have had buggy monster memory because the character sees e.g. a poltergeist drop the entire contents of a vault. I haven't checked to see if Vanilla has the same problem though. Ideally the number in the monster memory should reflect the number of items the monster can have in inventory when it is generated.
Derakon is offline   Reply With Quote
Old July 1, 2011, 21:48   #24
CunningGabe
Swordsman
 
Join Date: Feb 2008
Location: Boston, MA
Posts: 250
CunningGabe is on a distinguished road
The cutpurse and aimless merchant can also both take items off the ground. Maybe that's the problem somehow.
CunningGabe is offline   Reply With Quote
Old July 1, 2011, 21:50   #25
Max Stats
Swordsman
 
Join Date: Jun 2010
Posts: 324
Max Stats is on a distinguished road
I do notice that in obj-make.c make_object has a test for null kind but make_gold does not. I will do the hydra test and see what happens. Problem is, this bug seems to only appear when you aren't trying to make it appear.
Max Stats is offline   Reply With Quote
Old July 2, 2011, 03:03   #26
Max Stats
Swordsman
 
Join Date: Jun 2010
Posts: 324
Max Stats is on a distinguished road
I put in a test for null kind in make_gold and added a message that would announce that it had happened. Played awhile, got the bug again, but never saw the message. Maybe the gold route isn't it. Now I've added a similar test and message to make_object, including the monster index (if any) for which the object was created. Hoping that this will give me a heads up when the object is created (which should be when the monster is created) and I can watch for the monster that will be carrying it. If I get the bug without seeing either message, I don't know what that will mean.

EDIT: The bug happened for me on a master thief. Don't know if there is any connection to the previous poster's Cutpurse experience.
Max Stats is offline   Reply With Quote
Old July 2, 2011, 03:58   #27
CunningGabe
Swordsman
 
Join Date: Feb 2008
Location: Boston, MA
Posts: 250
CunningGabe is on a distinguished road
I'm getting close. The problem seems to be with compacting objects and monster inventories. I don't have time to track it down completely right now, but it seems that after compact_objects(0) is called, then some monsters are left with references to dead objects. Maybe there's a fencepost error somewhere, so that everything in monster inventory except for one object is updated correctly?
CunningGabe is offline   Reply With Quote
Old July 2, 2011, 06:55   #28
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 8,924
Derakon is on a distinguished road
I'd guess it has something to do with monsters that pick up objects, personally. So perhaps objects that have been dropped are eligible for compacting even if they're currently in monster inventories?
Derakon is offline   Reply With Quote
Old July 2, 2011, 11:22   #29
Nomad
Knight
 
Nomad's Avatar
 
Join Date: Sep 2010
Location: England
Posts: 958
Nomad is on a distinguished road
Quote:
Originally Posted by Derakon View Post
I'd guess it has something to do with monsters that pick up objects, personally.
Ah! I can definitely confirm that the storm giant that triggered the crash in that screencap I posted had picked up off a great hammer from the ground, because I remember being irritated that it had done it both the first time and when I replayed the level from my save.

I also got the crash fighting a group of black puddings in a corridor. Which I would recommend as possibly your best chance of reproducing it, since you end up with big piles of objects picked up and dropped.

I know nothing of how the code works, but is it possible the monsters are picking up objects between the player auto-dropping them because they've been marked as squelch and the squelch actually happening?
Nomad is offline   Reply With Quote
Old July 2, 2011, 12:46   #30
Max Stats
Swordsman
 
Join Date: Jun 2010
Posts: 324
Max Stats is on a distinguished road
Quote:
Originally Posted by CunningGabe View Post
I'm getting close. The problem seems to be with compacting objects and monster inventories. I don't have time to track it down completely right now, but it seems that after compact_objects(0) is called, then some monsters are left with references to dead objects. Maybe there's a fencepost error somewhere, so that everything in monster inventory except for one object is updated correctly?
The bug is frequently triggered with more than one object. For awhile, I had inserted code printing a message every time a null kind was encountered and attempting to continue, and sometimes I remember seeing three messages (always one after the other immediately upon monster death).

I was surprised to find that Angband still compacted objects. I thought this was a relic from the old days of computers with much more limited memory and processor speed. I know there still has to be a theoretical maximum, I just assumed that it could be set high enough that it would never be reached except in extreme circumstances.

I am also curious that I didn't see the "Compacting objects..." message before this bug. In fact, I don't recall ever seeing this message in recent times. That being said, this theory makes a lot of sense, given that make_object seems pretty robust about not creating objects will null kind, and the bug normally takes a long time to manifest. I guess the best way to go is to drastically lower the threshold for compacting objects and create lots of monsters that steal/pick up objects.
Max Stats is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Crash bug Napsterbater Vanilla 6 February 26, 2011 10:56
r1953 crash bug Zikke Vanilla 14 March 11, 2010 04:32
Crash Bug? Rizwan Vanilla 4 February 25, 2010 13:58
Death mold description bug? Rizwan Vanilla 3 June 22, 2009 08:30
[FA] Crash Bug Zikke Variants 8 February 19, 2009 05:20


All times are GMT +1. The time now is 23:39.


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