ArcEmu: Mysterious Egg - ArcEmu

Jump to content

Toggle shoutbox Lastest Announcements

dfighter  : (07 December 2014 - 12:06 PM) Arcemu is in hibernation mode, please read http://arcemu.org/fo...showtopic=26903
dfighter  : (01 January 2013 - 05:56 PM) Arcemu wishes you all a happy new year!
Hasbro  : (12 September 2012 - 10:01 AM) Please excuse our outage from the web! Our web host had a major malfunction!
dfighter  : (01 September 2012 - 04:05 PM) Since the spam bots just don't want to stop, I've enabled admin verification when registering.
dfighter  : (23 January 2012 - 09:56 PM) Please note that from now on you will need to confirm your email on the wiki in order to edit it!
Hasbro  : (31 December 2011 - 12:50 PM) Happy New Years all!
Navid  : (26 December 2011 - 04:09 AM) Merry Christmas !!!!!! Happy holidays all :)
WAmadeus  : (24 December 2011 - 03:54 PM) Merry Christmas to all!
dfighter  : (24 December 2011 - 11:05 AM) The Arcemu team wishes y'all a Merry Christmukkah!
Hasbro  : (05 October 2011 - 12:53 PM) Looking for web designers for upcoming web related project. If you're interested in designing user interfaces contact me
dfighter  : (02 September 2011 - 03:47 PM) So who here wants vehicles in Arcemu? :P http://arcemu.org/fo...showtopic=25440
Hasbro  : (14 August 2011 - 03:25 PM) Join us on irc, grab an irc client and connect to irc.freenode.net join channel #arcemu /server irc.freenode.net:6667 /join #arcemu
jackpoz  : (03 August 2011 - 05:33 AM) to all Lua Engine (old one) users: please check http://arcemu.org/fo...showtopic=25274
Hasbro  : (20 May 2011 - 05:27 PM) Looking for people experienced with CMake configuration and setup! Contact me asap
Hasbro  : (15 May 2011 - 05:03 PM) ArcEmu is recruiting C++ programmers, contact Hasbro if interested.
paroxysm  : (03 May 2011 - 06:26 PM) Updated luabridge gossip example to describe the whole gossip creation process rather than just how to create menu. Gossip tutorial
paroxysm  : (23 April 2011 - 11:35 AM) Lua writers can refer to the Luabridge Tutorials section in the Wiki to learn how to write gossip code correctly.
Hasbro  : (20 April 2011 - 05:22 PM) Thank you for your continuous contribution of bug reports, we are working on them.
Hasbro  : (17 April 2011 - 03:20 AM) Please consider donating to support our bills. Donations can be sent using PayPal to donations@arcemu.org - Thank you for your support.
paroxysm  : (10 April 2011 - 12:43 AM) Refer to the Luabridge Tutorials section in the Wiki to learn the new syntax of luabridge.
Resize Shouts Area

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Mysterious Egg

#1 User is offline   Magnifikator 

  • Interested
  • PipPipPipPip
  • Group: Members
  • Posts: 398
  • Joined: 05-October 11
  • Gender:Male
  • Location:Switzerland
  • Server OS:Windows

Posted 17 July 2012 - 04:14 AM

Somebody told me about this funny item: Mysterious Egg http://www.wowhead.com/item=39878

It's an egg you have to hold for 6 (patch 3.3.5a) days in your inventory. After that it breaks into a cracked egg (chest with loot) http://www.wowhead.com/item=39883

However it seems not to work like that.

My question is: Can I change that duration and behavour just only in the db ?

For Lua scripts I have different ideas to do that. But all of them needs to save some data in a custom table. Check the table regular and do some action.
One problem in Lua also could be that I don't have an event if a player buys such an egg to determine the starting date. I would have to check regular trough all players inventories if somebody add such an egg. Not very efficient. :)


Edit: Just have seen the if a player gets this egg, it will be in player_items with expiry date as unixtimestamp. That makes it much easier :D.
Try out the LoE ArcEmu World database. Please visit dev.LandOfElves.net.

Posted Image


0

#2 User is offline   dfighter 

  • Titles are overrated
  • PipPipPipPipPipPipPipPipPipPip
  • Group: Administrator
  • Posts: 5,189
  • Joined: 14-June 08
  • IRC:dfighter
  • Gender:Male
  • Server OS:Linux

Posted 17 July 2012 - 08:13 AM

Behavior like this is not yet supported in Arcemu.
The expiry date in the playeritems table is for item durations, when or after that date is reached the item is simply removed from the inventory,
Ofc if there are more items like this egg, then we could add a new table in world that would determine what item to replace the removed item with.
"The demand for free goods is infinite."
0

#3 User is offline   Magnifikator 

  • Interested
  • PipPipPipPip
  • Group: Members
  • Posts: 398
  • Joined: 05-October 11
  • Gender:Male
  • Location:Switzerland
  • Server OS:Windows

Posted 17 July 2012 - 01:21 PM

Yeah, I have seen that it's quite hard to make a Lua script for that behaviour :D I would need different timers, internal table and db table and a lot of checks, completely time consuming and inefficient . At the end I have to say it's not worthy only for this egg.

But to make players happy (because the loot is quite interesting) I will do something like that:

- Use the Lua player logout event
- Check if the player has this egg, if yes change it to the cracked egg
- Ignore all the duration stuff
- Player can loot and is happy ^^

It's a hack :D

local Item_Mysterious_Egg	= 39878
local Item_Cracked_Egg		= 39883

function MysteriousEgg(event, pPlayer)

	if(pPlayer:HasItem(Item_Mysterious_Egg)) then
		pPlayer:RemoveItem(Item_Mysterious_Egg, 1)
		pPlayer:AddItem(Item_Cracked_Egg, 1) 
	end
end

RegisterServerHook(SERVER_HOOK_LOGOUT, "MysteriousEgg")

Try out the LoE ArcEmu World database. Please visit dev.LandOfElves.net.

Posted Image


0

#4 User is offline   Dzjhenghiz 

  • حشّاشين
  • Group: Contributor
  • Posts: 1,936
  • Joined: 07-June 08
  • Gender:Male
  • Location:2nd stone after the 3rd oase western sahara
  • Interests:M.C.S.E :- Minesweeper Consultant & Solitaire Expert
  • Server OS:Other

Posted 18 July 2012 - 11:07 AM

nvm, thought to add a check for space.. i guess it will work fine with the removal of one :P

This post has been edited by Dzjhenghiz: 18 July 2012 - 11:08 AM

Need Help With Arcemu ? ^^
Posted Image
Concordia res parvae crescunt In varietate concordia
Spoiler

0

#5 User is offline   dracbane 

  • Member
  • Pip
  • Group: Members
  • Posts: 12
  • Joined: 19-May 10
  • Gender:Male

Posted 03 August 2012 - 07:10 PM

View Postdfighter, on 17 July 2012 - 08:13 AM, said:

Behavior like this is not yet supported in Arcemu.
The expiry date in the playeritems table is for item durations, when or after that date is reached the item is simply removed from the inventory,
Ofc if there are more items like this egg, then we could add a new table in world that would determine what item to replace the removed item with.


Could you not use the expiry date and have the item cast a dummy spell upon destroying itself that would trigger a lua script to then spawn the cracked egg into the players inventory?
0

#6 User is offline   dfighter 

  • Titles are overrated
  • PipPipPipPipPipPipPipPipPipPip
  • Group: Administrator
  • Posts: 5,189
  • Joined: 14-June 08
  • IRC:dfighter
  • Gender:Male
  • Server OS:Linux

Posted 04 August 2012 - 12:36 AM

View Postdracbane, on 03 August 2012 - 07:10 PM, said:

Could you not use the expiry date and have the item cast a dummy spell upon destroying itself that would trigger a lua script to then spawn the cracked egg into the players inventory?

Nope
"The demand for free goods is infinite."
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users