Thread: Jboots Quest
View Single Post
  #8  
Old 04-01-2010, 09:46 AM
Aeolwind Aeolwind is offline
Developer

Aeolwind's Avatar

Join Date: Oct 2009
Location: Watauga, TN
Posts: 1,641
Send a message via AIM to Aeolwind Send a message via MSN to Aeolwind Send a message via Yahoo to Aeolwind
Default

The database isn't the issue, it is the operation of the perl that handles quests. Time for a little perl 101 I think!

Code:
if (plugin::check_handin(\%itemcount, 10032 => 2, 10000 => 1)) {
		quest::say("Here is your prize - a lambent star ruby.");
		quest::summonitem(10117);
		quest::faction(320,5);
		quest::faction(291,-15);
	}
this is a standard turn in, lambent star ruby. It checks for all the items to be turned in at once. Now, it might be possible to enable chaining of quests, but it would require a rewrite of -every- quest in the game, which is several thousand. It would involve adding a global variable for each item turned in for the NPC and then cycling that variable out when the last item is turned in... This could also change writing a quest from probably 30 minutes to several hours.

None of us on the project were familiar enough with perl when we started, or the emulator in general to be able to see this possible caveat. But as a rule, the system just doesn't allow for quest chains out of the box. I've never tested this hypothesis either and I might not even work how I have it laid out in my mind and not work at all. Using the plugin is what allows for item returns on a bad turn in as well and would go away.

In essence it is a double edged sword and a Pandoras Box that I'm not sure we are capable of opening based on staffing levels & time requirements.
__________________
I have walked my way since the beginning of time. Sometimes I give, sometimes I take & it is mine to know which and when.

Quote:
Originally Posted by Nilbog
If all the polls I have done up until now fully counted, you would be playing on some abomination of a PVP server with 2-10 boxing based on votes from people named xcm234nv and adfa234.