Wetting myself...

Topics related to EQ2 or the Everquest 2 Emulator Project.

Moderator: Team Members

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:

Wetting myself...

Post by John Adams » Thu Jun 05, 2008 3:02 am

Yes, I do this often.
So I compiled the latest source (rev 100 I believe), tossed in a few zones worth of collected data (IoR, Antonica, Steppes... and started hoofin it around like usual (testing for crashes - damnit, no more ghostmap errors!)
I came upon the bridgekeep in Steppes and noticed the huge doors. Not really sure why, but I clicked them. The huge mothers swung open and closed! WE HAVE DOORS! /skips
So happy about that, I continued my jog until I got to the gate to Antonica from Steppes. Taking a gamble, I clicked Enter Antonica and -- dun dun dunnnn! I ZONED!
Now I am not sure if I missed a post somewhere, but I am absoltely excited right now... too bad I have to sleep or I'd stay up with this all night trying to figure out how to make the rest of the zone clickies work. ;)
Nice work, LE! You are my hero. Still.

weasy
Posts: 7
Joined: Mon Jan 21, 2008 10:28 pm

Dude that so rocks

Post by weasy » Sat Jun 07, 2008 6:08 am

You know once you get all zones and doors to work, the rest of this project is going to FLY!
Thats one of the biggest problems if I remember correctly, right?

link2009
Retired
Posts: 390
Joined: Fri Aug 10, 2007 5:59 pm
Location: POrTal
Contact:

Post by link2009 » Sat Jun 07, 2008 9:18 am

lol no, the doors, widgets and zoning issues weren't VERY hard to figure out but it's a step in the right direction. :lol:
Image
-Vecinu de la Patru

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 » Sat Jun 07, 2008 11:00 am

imo, i think the biggest obstacle thusfar has been the proximity spawning code, which seems rock solid now. Great work LE. I cannot seem to crash things anymore using all my old tricks. ;) I am re-spawning all the current collected logs, which seem to have thousands of duplicate spawns. That usually crashes things still, but I believe it's confusion on the clients part due to dirty data.
I'm trying to decide if we're ready to create a "Content Development" team since the server is stable enough now where we could have folks help with cleaning up the zone data and getting it into release mode.

link2009
Retired
Posts: 390
Joined: Fri Aug 10, 2007 5:59 pm
Location: POrTal
Contact:

Post by link2009 » Sat Jun 07, 2008 11:23 am

John Adams wrote:imo, i think the biggest obstacle thusfar has been the proximity spawning code, which seems rock solid now. Great work LE. I cannot seem to crash things anymore using all my old tricks. ;) I am re-spawning all the current collected logs, which seem to have thousands of duplicate spawns. That usually crashes things still, but I believe it's confusion on the clients part due to dirty data.
I'm trying to decide if we're ready to create a "Content Development" team since the server is stable enough now where we could have folks help with cleaning up the zone data and getting it into release mode.
You know it would be easier to just write a script that finds duplicates in the log file and deletes them. That should stop confusing the client and crashing it.
Image
-Vecinu de la Patru

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 » Sat Jun 07, 2008 11:36 am

Really? I had no idea it was that simple. :roll:
The point being, some "dupes" are placeholders. Some are similar packets collected from different sources using different languages. Some are NPCs who seem to change their appearance for whatever condition they are spawned under. Some are actually the same mob, same language, same appearance, just discovered more than once by more than one collector.
You cannot arbitrarily delete collected data. It all has to be gone through individually with the human touch in order to preserve data that might actually be valid. "Scripting" deletions is unsafe. After literally months of staring at the collected data, I do feel some conditions might be safe to predict duplication, but everytime I try them I wind up losing 1/2 my zone.

link2009
Retired
Posts: 390
Joined: Fri Aug 10, 2007 5:59 pm
Location: POrTal
Contact:

Post by link2009 » Sat Jun 07, 2008 12:06 pm

John Adams wrote:Really? I had no idea it was that simple. :roll:
I don't like your sarcasm, it hurts me. :cry:
John Adams wrote: The point being, some "dupes" are placeholders. Some are similar packets collected from different sources using different languages. Some are NPCs who seem to change their appearance for whatever condition they are spawned under. Some are actually the same mob, same language, same appearance, just discovered more than once by more than one collector.
Well if that's the case, then how do other emulators differentiate between these data objects?
John Adams wrote: You cannot arbitrarily delete collected data. It all has to be gone through individually with the human touch in order to preserve data that might actually be valid. "Scripting" deletions is unsafe. After literally months of staring at the collected data, I do feel some conditions might be safe to predict duplication, but everytime I try them I wind up losing 1/2 my zone.

In that case, what happens when you load them all? Overlapping?
Image
-Vecinu de la Patru

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 » Sat Jun 07, 2008 12:36 pm

I enjoy hurting you. Get used to it. ;)
As for other emulators, they usually have content people who go clean up the data... since I have done this on other projects, that's where the idea comes from. :) Human eyes can never be replaced by machines, Mr Roboto.
And yes, a good example of a "placeholder" dupe is on my server, the tutorial island has 2 "sparring partners" in each of it's 3 locations. If I were to assume they were dupes, you would only get 1 sparring partner per position - whereas if a content developing human being saw that, they could clearly see that in x,y,z of zone abc, there are two distinctly different NPCs standing in the same exact location - and now you know to set their spawn_percentage value to 50/50, or maybe if you want one to appear more often than the other, 80/20, etc.
As I said, I do believe there are some dupes that could be assumed to be deleted - but I would still prefer that someone who is intimate with the zone makes that choice, not the parser or 3rd-party script. Another example of a BAD dupe, if you again look at my spawn of the tutorial... you will see those charging sapwill gobbies that slowly approach the guard post and get attacked. Well unfortunately, the collector thinks everytime you pass one that it is a new one. So you have 1 sapwill every few inches spawned, which essentially IS the same one. But again, I'd rather someone make that determination than to "guess" and lose content.
Get me?

link2009
Retired
Posts: 390
Joined: Fri Aug 10, 2007 5:59 pm
Location: POrTal
Contact:

Post by link2009 » Sat Jun 07, 2008 12:55 pm

I kind of understand, but it seems to me like you're contradicting yourself. If there are 3 'Sparring partners' for example, wouldn't they be located at different x,y,z coordinates, just like you said? That would differ each one and wouldn't be considered a dupe.
Image
-Vecinu de la Patru

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 » Sat Jun 07, 2008 1:21 pm

No, check out the island (on live if you have a chance). One of the first combat training quests is to go speak to a dude who sends you into battle against either "a weak sparring partner", "an average sparring partner", or "a formidable sparring partner". All three of these NPC types have their own x,y,z in front of this trainer (west of the island banker).
In each of these 3 spots can spawn different NPCs, based on the spawn_percentage chance they have to spawn. When the zone starts up, or when it comes time to respawn the location, a random is generated to determine if "a weak sparring partner" (1) or "a weak sparring partner" (2) appears - (1) could be a human male with a specific appearance, (2) could be a kerran female with a specific appearance, etc.
Theoretically, you could have 100 different "a weak sparring partners" configured to appear in that one x,y,z spot, all different race/class/level/appearance configs. Hence, the "placeholder" concept is born.
Since there are 3 "sparring partners" for this quest, you now triple the number of NPCs you COULD stick in these three spots. but for simplicity, each spot appears to have 2 spawns (6 NPCs). Once the spawn_percentage code works in the emulator, the content designer will go target "a weak sparring partner" (1) and set his spawn_percentage to 50%. Same with "a weak sparring partner" (2) at the same location. Now when the zone starts or this toon is respawned, only one of them will spawn and you will get the illusion of different combatants each time.
I know I rambled on, but hopefully you read through my bantering. It's simply a placeholder, which is why we cannot always assume the two different NPCs at the same coords are dupes. If it turns out the same exact NPC (name, race, class, level, appearance) is at the same x,y,z, then that indeed could be considered a duplicate from the logs.

link2009
Retired
Posts: 390
Joined: Fri Aug 10, 2007 5:59 pm
Location: POrTal
Contact:

Post by link2009 » Sat Jun 07, 2008 1:34 pm

Okay, I read your ramble and it bored me to tears but I understand your point.
So what we need to do is develop a system that spawns an NPC with certain default values but then randomly generates the race, appearance etc...
Image
-Vecinu de la Patru

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 » Sat Jun 07, 2008 2:40 pm

link2009 wrote:So what we need to do is develop a system that spawns an NPC with certain default values but then randomly generates the race, appearance etc...
No sir. We create unique NPCs with their set race/appearance according to collected data and use a spawn chance percentage to determine which one is spawned.
Once that code is implemented, this will make much more sense.

User avatar
Zcoretri
Team Member
Posts: 1642
Joined: Fri Jul 27, 2007 12:55 pm
Location: SoCal

Post by Zcoretri » Sat Jun 07, 2008 4:05 pm

Well I think you have answered one of my questions I had John that had to do with 'placeholder' type mobs.
But i do have another...what about linked encounters? Is that implemented yet? or have I just not figured it out yet :)
I have put a lot of time in the past few weeks playing around with the emulator and stuff...been populating Queens Colony, playing with the LUA scripts and all.
I'm still gathering spell icon info for chrrox :)
Image

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 » Sat Jun 07, 2008 5:23 pm

I know there are references in the database as to mob "groups", but I have not yet determined if that is all about the linking or not. As far as I can tell so far, you cannot click on one mob and see 3 others light up, if that's what you're asking.
I think it's cool that you are working on a zone. Is it custom, or Live-like? I might like to take a peek when you're done. :D

User avatar
Zcoretri
Team Member
Posts: 1642
Joined: Fri Jul 27, 2007 12:55 pm
Location: SoCal

Post by Zcoretri » Sat Jun 07, 2008 6:49 pm

[quote="John Adams"]I know there are references in the database as to mob "groups", but I have not yet determined if that is all about the linking or not. As far as I can tell so far, you cannot click on one mob and see 3 others light up, if that's what you're asking.
Yes that is what I'm asking...when you click on one mob, see the 2 or 3 others light up.
It's set up 'live-like'
I'll have to set it up for outsiders to connect.
Image

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests