View Single Post
  #1  
Old 03-26-2011, 07:35 AM
Rogean Rogean is offline
¯\_(ツ)_/¯

Rogean's Avatar

Join Date: Oct 2009
Location: Massachusetts
Posts: 5,393
Default Kunark Event - Behind the Scenes

Nilbog and I figured we would give a glimpse of the work involved in getting an event like last night's running.

Before I delve into the code and scripts, I'll pick out some of the jokes we had hidden in there that some may have missed, written by nilbog:

Jarsath Explorer
Code:
my $phrase1 = "At least there's no Rinna Lightshadow.";
my $phrase2 = "Has anyone heard the tale of an Erudian with rose-colored shoes?";
my $phrase3 = "I was relieved to find boats in working order.  We'll need them to transport all these heads!";
my $phrase4 = "As a broodling, I dreamed of one day becoming a great healer.  Time has caught up with me and I now realize I will never be a young doctor.";
my $phrase5 = "I miss Kunark.";

if($text=~/Rinna/i)
    quest::say("We encountered a ferocious human female in a great valley!");
if($text=~/great valley/i)
    quest::say("Your people called it East Commonlands.");
Kylong Sergeant (South Karana)
Code:
quest::say("Greetings, $race.  What an interesting place.. the landscape seems to go on for an eternity.  We even encountered a flying horse!");

if($text=~/horse/i)
    quest::say("It was killed within seconds of being spotted by another group. Odd, they didn't seem to have anyone that could track.");
Nathsar Sergeant
Code:
quest::say("Greetings, $race.  This area reminds me of a place I journeyed to long ago.. Skyfire Mountains!  Are you here on business?");

if($text=~/skyfire/i)
    quest::say("Pits of fire, despair.. and dispell! HA!");
Anyways,

Here is the backend code that handled the backbone of the event:

Event.h http://codepad.org/VGlha3wk
Event.cpp http://codepad.org/UvhRXMVG

This runs on top of a new logging system that I coded mostly over the course of the last week that keeps better track of quests and drops. The system for encounters (engagements/fights) has been implemented for a few months now and runs through the same backend process.

The base quest scripts involved:

Explorer: http://codepad.org/LUL5R0mn
Bounty Officer: http://codepad.org/M5Spvq27
Jarsath Sergeant: http://codepad.org/hQH2TI9n

Most of the camps used one of the 3 scripts above with minor changes.

Achievements. Not really part of the "Event" but included anyway:

achievements.h http://codepad.org/sEYjTdnF
achievements.cpp http://codepad.org/FxnLDz9W
__________________
Sean "Rogean" Norton
Project 1999 Co-Manager

Project 1999 Setup Guide
Last edited by Rogean; 03-26-2011 at 07:42 AM..