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

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 02-11-2014, 04:50 AM
NatedogEZ's Avatar
NatedogEZ
Developer
 
Join Date: Dec 2012
Posts: 515
Default Trading untargetable NPCs?

Was this live like? Currently you can trade with ANY npc no matter what.

I added a few lines into trade request to make NPCs with bodytype 11 to deny all trades.. which does work just fine.

Anyone know?
Reply With Quote
  #2  
Old 02-11-2014, 08:23 AM
dagulus2
Hill Giant
 
Join Date: Feb 2013
Posts: 220
Default

Is the spire spirit that wizards have to hand items to in their later epic untargetable?

Or the living void thing in the revamped CT?
Reply With Quote
  #3  
Old 02-11-2014, 09:02 AM
NatedogEZ's Avatar
NatedogEZ
Developer
 
Join Date: Dec 2012
Posts: 515
Default

The living void is target type 23 (Monster)

Not sure what the other NPC is that you are talking about.

But I can't think of a single NPC on live that required a turn in to an npc that you could not target... hmmm

Its nice to make big NPCs targettype 11 and invisible man with neat effects.. but the crappy thing is you can accidentally trade them stuff :(

Could maybe make it a rule value for no trading to Targettype 11 (No Target)
Reply With Quote
  #4  
Old 02-11-2014, 10:41 AM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

post a diff, this is a good change. Type 11 should not be tradable.
Reply With Quote
  #5  
Old 02-11-2014, 05:51 PM
NatedogEZ's Avatar
NatedogEZ
Developer
 
Join Date: Dec 2012
Posts: 515
Default

Here is a diff of it... was a small change


Code:
--- "client_packet.cpp"	
+++ "client_packet.cpp"	
@@ -4782,6 +4782,10 @@
 	else if (tradee && (tradee->IsNPC() || tradee->IsBot())) {
 #endif
 		//npcs always accept
+		if (tradee->GetBodyType() == 11) {
+			//Do not allow trades with NO TARGET Npcs
+			return;
+		} else {
 		trade->Start(msg->to_mob_id);
 
 		EQApplicationPacket* outapp = new EQApplicationPacket(OP_TradeRequestAck, sizeof(TradeRequest_Struct));
@@ -4791,6 +4795,7 @@
 		FastQueuePacket(&outapp);
 		safe_delete(outapp);
 	}
+	}
 	return;
 }
Reply With Quote
  #6  
Old 02-11-2014, 07:03 PM
dagulus2
Hill Giant
 
Join Date: Feb 2013
Posts: 220
Default

Quote:
Originally Posted by NatedogEZ View Post
Not sure what the other NPC is that you are talking about.
I think it was called 'Spacial Distortion', its part of the 3.0 epic and I don't think its in the PEQ database. I have no idea if its targetable or not. TBH its probably best to make them untradeable and people can work around any corner cases (if any actually exist) later.
Reply With Quote
Reply


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 12:20 AM.


 

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 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3