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

Development::Feature Requests Post suggestions/feature requests here.

Reply
 
Thread Tools Display Modes
  #1  
Old 11-08-2006, 03:54 PM
bufferofnewbies
Hill Giant
 
Join Date: Dec 2005
Location: Lurking in KY
Posts: 239
Default No drop/ no trade flag rule

I was wondering if someone better at coding than myself (read as: pretty much anyone in the world except Al Gore) would think about trying to set up a new rule_value for setting a flag to indicate what level of account status could ignore the no drop rule.

This way GMs can bypass the restrictions of it when needing to recompensate a player w/o having to go through such a silly series of events as makeing a killable npc with the item in it's loot list for them to kill.

With the rule system, different servers could set this access to balance for any special status accounts they have placed into their server without having to rewrite coding that might change in a future patch.
Reply With Quote
  #2  
Old 11-09-2006, 05:18 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

That's a great plan. The fun side of it is then Emulator GMs can use the excuse "Sorry, only a lead GM can summon and hand out no-drop items. I will escalate your ticket to a lead"... and the player can feel like Live again.



But seriously, good idea.
Reply With Quote
  #3  
Old 11-09-2006, 10:52 PM
Rogean's Avatar
Rogean
Administrator
 
Join Date: Jul 2003
Location: Massachusetts
Posts: 708
Default

That is currently not possible for us because the restriction to transfer no-drop items is handled client-side. If you try to trade a no-drop item your client will say "no" and won't even ask the server.

GM's On live can do it because they actually run a completely seperate compiled version of the client that we don't have access to.
__________________
EQEmulator Developer / Administrator
Reply With Quote
  #4  
Old 11-10-2006, 02:40 AM
bufferofnewbies
Hill Giant
 
Join Date: Dec 2005
Location: Lurking in KY
Posts: 239
Default

ahh rats. Was worth a shot. Thanks for the update.

Guess It's back to #spawn I_Have_Your_Stuff_Playername and equiping him.
Reply With Quote
  #5  
Old 11-10-2006, 07:30 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

BoN, you might be able to make a clever quest script out of it. If someone needs a no-drop item, give them a tradeable "token" to turn in to a specific NPC (lost-n-found dept? heh) and when that NPC gets that token, that ND item is spawned for the player.

Imagine the exploits.
Reply With Quote
  #6  
Old 11-10-2006, 07:39 AM
bufferofnewbies
Hill Giant
 
Join Date: Dec 2005
Location: Lurking in KY
Posts: 239
Default

I was truely thinking about trying to fool the dbase into thinking the GM is on a FV regulation server. Since there is a flag for FV no drop. Not sure if that is still applicable if it's a client side lock, but I love to break things while I experiment. Actually, Im not even sure if I can figure out how to set that up/ if it is even possible.

But such is life.. You never know how far you can go, until you at least try to go there.

Thanks for the replies all. The bigger stuff I usually leave to people more experienced for now, as I still have so much small work to do here it is like walking through a swamp. But this I plan to make some time for, to at least try to figure out how the server is setting itself up in the coding. I'm like a kid in a candy store here, Oww. My tummy aches...
Reply With Quote
  #7  
Old 11-10-2006, 08:01 AM
LostZaphod
Sarnak
 
Join Date: May 2006
Posts: 43
Default

I think you sould be able to change the summon item to use the target of the summoner. The problem is if the summoner inputs the wrong value you would never know.

in command.cpp is

void command_summonitem(Client *c, const Seperator *sep)

with in the if's it could be checked if a target is selected and then summon to their cursor.

this is some ruff UNTESTED code....
Code:
Mob *t;
if(c->GetTarget()){		// have target
	t=c->GetTarget();
	t->CastToClient()->SummonItem(itemid);
}
else
{
c->SummonItem(itemid);
}

Last edited by LostZaphod; 11-10-2006 at 04:15 PM..
Reply With Quote
  #8  
Old 11-10-2006, 08:24 AM
bufferofnewbies
Hill Giant
 
Join Date: Dec 2005
Location: Lurking in KY
Posts: 239
Default

Now that is a very nice design fix. Simple, elegant.. and without the need of excessive delving into things best left untouched. Thanks for the insight.
Reply With Quote
  #9  
Old 11-10-2006, 05:27 PM
Rogean's Avatar
Rogean
Administrator
 
Join Date: Jul 2003
Location: Massachusetts
Posts: 708
Default

Quote:
Originally Posted by bufferofnewbies
I was truely thinking about trying to fool the dbase into thinking the GM is on a FV regulation server. Since there is a flag for FV no drop. Not sure if that is still applicable if it's a client side lock, but I love to break things while I experiment.
That isn't a bad idea. The only problem is that we don't know how to tell the client that its on a FV Type server (Its probably among a lot of the unknown values in many structures). If we did know, we could send that variable specifically to characters with a certain status.
__________________
EQEmulator Developer / Administrator
Reply With Quote
  #10  
Old 11-24-2006, 05:46 AM
fathernitwit
Developer
 
Join Date: Jul 2004
Posts: 773
Default

Good idea, I put in a "giveitem" command to accomplish this.
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 05:50 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