Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Bug Reports

Development::Bug Reports Post detailed bug reports and what you would like to see next in the emu here.

Reply
 
Thread Tools Display Modes
  #1  
Old 09-18-2005, 11:25 AM
Dakaar
Sarnak
 
Join Date: Apr 2003
Posts: 53
Default

In Attack.cpp line ~1,165
in Client:eath()
this line :
entity_list.QueueClients(this, &app);

Shouldnt it be:
entity_list.QueueClients(this,app); ?

I am at work and just going over the code.

Im thinking maybe its a problem in Corpse::Corpse ? If someone could post older versions of the functions to compare with? Thanks

Also, consider going through NPC:eath and seeing hwo the two corpses are handled and whats different? Just grasping at straws here..

Was addcorpse function changed around the time of rewarditem code? I see the arguments that get passed got simplified alot, could be something there..

looking at npc::death.. Shouldnt the entity_listQueueClients(this,app); in Client:eath be entitylist.QueueClients(other,app); ?

Last edited by Dakaar; 09-18-2005 at 07:52 PM..
Reply With Quote
  #2  
Old 09-18-2005, 12:07 PM
vRandom
Sarnak
 
Join Date: Jun 2005
Posts: 91
Default

I think the best way to look at the older code would be to browse the cvs, http://cvs.sourceforge.net/viewcvs.py/eqemulator

vRandom
Reply With Quote
  #3  
Old 09-18-2005, 12:28 PM
Dakaar
Sarnak
 
Join Date: Apr 2003
Posts: 53
Default

The biggest thing that perplexes me.

Is when I kill another character, their corpse briefly appears before it fades away, and if i try to loot during this period, the server crashes.


Having a hell of a time trying to figure out whats wrong.
One thing I notice is that corpse::corpse() constructor changed, but everything else seems practically identical!

SetPKItem() just changes a single variable directly ... its a one line function so I doubt thats it...

CorpseDecayTimer.Disabled is used instead of set to 0 in the new code, might have something to do with it, as thats exactly what the corpse does, is instantly decay, as far as the client can see.

Does SendCorpsesBulkZone crash because in Client:eath the app packet does nto get deleted before a new one is sent?

Someone should try SendZoneCorpses() instead and see if it works!


UPDATE: SendZoneCorpse() to the corpse player makes it so that if you quickly loot before teh 'corpse' disappears, the server wont crash,so thats progress.

When I tried looting, I got an error the "LOOTING FOOKED3", and that is only displayed when the corpse object is not a corpse(or is null), soo i think its more of the wrong corpse being looted!

SendZoneCorpse(other); doesnt seem to do anything..

one thing i notice, is if the client isnt grouped, he doesnt get permission to loot corpse?

Last edited by Dakaar; 09-19-2005 at 03:06 AM..
Reply With Quote
  #4  
Old 09-18-2005, 10:16 PM
Magoth78
Discordant
 
Join Date: Jun 2003
Posts: 345
Default

The only fix (very ghetto) i've found is the use of SendCorpsesBulkZone. But, it makes the player on who it's sent, crashing.

Mob::Addcorpse() is the same as it's been on old version and I don't think that the problem comes from attack.cpp. The only new thing added is the PKitem and PvPvariable added, wich is working perfectly.


There is also an other problem about corpse. A corpse be rezzed without having the dead player's approbation.


I remember LethalEncounter fixed it quickly just after he added the Pkitem/pvpvariable thing. But i don't think the fix has been sent to Sourceforge.
__________________
User's projects:
-- Original EMPIRE I/II and Factions! servers
-- Web GM Portal
-- EQoffline/bots
Reply With Quote
  #5  
Old 09-19-2005, 04:38 AM
Dakaar
Sarnak
 
Join Date: Apr 2003
Posts: 53
Default

Was really tired last night... Soo ignore some of that

The big question, is why does sendcorpsesbulk crash the player, and what can be done to prevent that!

I tried making a packet with just the new corpse, but I dont think that worked , using the template of sendcorpsesbulk
Reply With Quote
  #6  
Old 09-19-2005, 10:59 AM
Dakaar
Sarnak
 
Join Date: Apr 2003
Posts: 53
Default

This bug occurs because the new_corpse's id and the client's id are the same. when a player dies, that id is despawned.. the corpse gets despawned with the client.

The corpse and the client need to have differing ids.

Everything is working perfectly on my server, will have a fix in a few

Last edited by Dakaar; 09-19-2005 at 07:28 PM..
Reply With Quote
  #7  
Old 09-19-2005, 06:02 PM
Magoth78
Discordant
 
Join Date: Jun 2003
Posts: 345
Default

Nice one there., I've been searching for some times and did not find anything interesting.

Also, did u notice any bug when a player is killed by 'Pain and Suffering'? looks like his corpse just poofs.
__________________
User's projects:
-- Original EMPIRE I/II and Factions! servers
-- Web GM Portal
-- EQoffline/bots
Reply With Quote
Reply

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

   

All times are GMT -4. The time now is 03:27 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3