Quests in EQ2Emu

EQ2Emulator Development forum.

Moderator: Team Members

Aaden
Retired
Posts: 64
Joined: Mon Aug 27, 2007 12:39 pm
Location: Connecticut
Contact:

Quests in EQ2Emu

Post by Aaden » Sun Oct 14, 2007 7:07 am

Post your suggestions here for ways to impliment quests into EQ2Emu!

Bafoon
Posts: 73
Joined: Mon Jul 30, 2007 4:02 am
Location: Tampa,T&C FL

Post by Bafoon » Sun Oct 14, 2007 12:29 pm

I think that there should be a easy program to use that will guide people to write quests because I hear that it is alot more complicated to write than EQ1 quests. Most people love to run and create servers but dont have the required skills...
just my two copper pieces.

techguy84
Posts: 187
Joined: Wed Jul 25, 2007 4:56 pm
Location: Qeynos Guard Shack
Contact:

Post by techguy84 » Sun Oct 14, 2007 1:38 pm

Any implementation would be good so long as its low usage and can be very versitile. As far as ease of use, that comes with time. People will make applications that can combine and input the required code to execute the quest, or someone who gets a great understanding of it can compile a list of lines that are used and how to implement them into a a working quest.
Course, thats my take on it. The biggest thing is, we can learn something difficult, but if we try to implement something thats easy to understand, but not versitile, we are going to be worse off.

Aaden
Retired
Posts: 64
Joined: Mon Aug 27, 2007 12:39 pm
Location: Connecticut
Contact:

Post by Aaden » Sun Oct 14, 2007 6:53 pm

Ive got an idea floating in my head for a GUI interpreter so that any person can dl the tool and create a custom 100% working quest from the get go, just have to think of a way to impliment literal quests into the code similar to the way eqemu did it with eqperl just not as inefficient and flaming.

User avatar
alfa
Team Member
Posts: 550
Joined: Fri Jul 27, 2007 6:24 pm
Location: France
Contact:

Post by alfa » Mon Oct 15, 2007 3:07 am

I think Quest engine can work simply with SQL data (like mangos quest engine for example) but if you want the possibility to do all "official quest" you need a script engine too
Fight with me... Or die, like the rest.
J.A. say: "I think Xinux tried to tell me this, but I ignore most things he suggests."

Diamente
Retired
Posts: 45
Joined: Mon Jul 30, 2007 7:49 am
Location: Oklahoma

Post by Diamente » Mon Oct 15, 2007 10:09 pm

I like the idea of having all the quest data stored in the database, but the flexibility and power that doing it as an interpretted script gives you is just to much to ignore (for me), I think sticking to a scripted language like Perl will continue to be my vote.
And in any outcome we choose, I certainly agree with Aaden that it would be great to design a UI for those who aren't necessarily coders. The added bonus of sticking to a scripted language is that you could still manipulate the raw script manually if you wanted to.

Aaden
Retired
Posts: 64
Joined: Mon Aug 27, 2007 12:39 pm
Location: Connecticut
Contact:

Post by Aaden » Tue Oct 16, 2007 1:40 pm

I almost 100% agree we should have a scripting language such as perl was in eqemu its just with the emu being in alpha as it is now until we can get a stable base down it might be awhile until we can actually start working on it!

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Post by John Adams » Tue Oct 16, 2007 4:06 pm

There's lots of scripting languages that could be used. Anyone know what EQ2 uses itself? I know some emus use Python (Eve), LUA (EnB), GameMonkey (WoW), Perl (EQ), L2J (Java i think?) and I am sure a host of others. Putting all your quest data in a database puts an added burden on the SQL server that might not be necessary since the quest data is static. XML could host the data, for that matter.
Regarding the scripting languages themselves, from my research, none of them are novice or entry-level coder easy. So I wouldn't fret over making it idiot proof. The tools to design and build can be written that way, but whatever it poops out should be something totally integratable into the server itself.

Aaden
Retired
Posts: 64
Joined: Mon Aug 27, 2007 12:39 pm
Location: Connecticut
Contact:

Post by Aaden » Tue Oct 16, 2007 5:48 pm

John Adams: i was thinking about trying to toy with XML to get quests done but then i realized that it will be very inefficient. Now that i think about it more and more im going to start toying with the idea of java.

razmalone
Posts: 15
Joined: Mon Oct 15, 2007 11:17 pm

Post by razmalone » Tue Oct 16, 2007 6:14 pm

Aaden wrote:John Adams: i was thinking about trying to toy with XML to get quests done but then i realized that it will be very inefficient.
Was wondering why you would say that xml would be very inefficient? The XML files could be more or less place holders/stores of data that when read would execute functions from the server.
Example when a character talks to somone with a quest the server pulls that xml data and executes the appropriate functions.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Post by John Adams » Tue Oct 16, 2007 6:15 pm

Cool, as long as it isn't "Bob's Quickie Script 1.0" I'll be happy.
And for the XML, I was only talking about a storage place for static data - nothing dynamic. Something the server could read at startup or when needed. Database (or global variables - EQEmu talk) definitely should be for tracking quest progress or completion. I just didn't think it would be very efficient for all the dialog and talktree stuff.

Diamente
Retired
Posts: 45
Joined: Mon Jul 30, 2007 7:49 am
Location: Oklahoma

Post by Diamente » Wed Oct 17, 2007 6:38 am

Aaden: Java would require compilation.
Sticking with the idea of cross-platform scripting languages, I would look at Perl, Python, and Lua. All are free, available on a myriad of platforms, and have a strong community. They also have libraries to interact with XML if you wanted to put static data in those.
Personal preference, Perl(power) or Lua(speed).

Diamente
Retired
Posts: 45
Joined: Mon Jul 30, 2007 7:49 am
Location: Oklahoma

Post by Diamente » Wed Oct 17, 2007 7:03 am

Actually...thinking about it for more than a few seconds, Lua would offer a LOT of flexibility and power in that one of its features is the ability to extend C++ code (among other languages, even scripted languages), so we could utilize a lot of the same functions as the emulator itself.
So I might change my vote to Lua. :)

razmalone
Posts: 15
Joined: Mon Oct 15, 2007 11:17 pm

Post by razmalone » Wed Oct 17, 2007 7:24 am

My vote for a scripting language would be either Lua or Python. Either would be very efficient. But for the quest placeholder the static data that just says where quests are and would point to the appropriate scripts I say xml apposed to sql. Then again i say anything static should be xml apposed to sql.

masterfreek64
Posts: 36
Joined: Fri Aug 03, 2007 6:02 am

Post by masterfreek64 » Tue Oct 30, 2007 3:11 am

We could do "hookable" Events.
Quest are each done as .dll files ( written in any language of your choice ) or .dll wrapped scripts ( with a scripting language of your choice you just need a wrapper) .
The .dll has to feature a method "Initialise" with a pointer to an Interface. There they can register the Hooks they need.
Possible hooks could be:
eMonsterKilled
eSystemKilled
etc ...
I am already making this for Oblivion Multiplayer and it works.
you can MSN me on (my nickname)@hotmail.com

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests