PDA

View Full Version : EverLate - Reviving EQ2EMU


saweb
07-07-2007, 07:50 PM
Hello there.

I started this thread in the hope that it will be of some help to the people involved with EQ2EMU.

First off, CVS is a dead, old and outdated way of subversion.
I have created an SVN repository with everything contained within the EQ2EMU project. Basically merged the projects repository from CVS to SVN.

To checkout you need tortoiseSVN (http://tortoisesvn.net/downloads) , a legendary repository client, fast easy to use.

Here is the info regarding the new repository:

Checkout from: http://svn5.cvsdude.com/sarealm/EQ2EMU

USERNAME: read
PASSWORD: reader

This should be helpfull, as most of todays developers (including myself use SVN)

I also chose a nickname for the project "EverLate" (Everquest2 Emulate)
As this seems suited to the current situation. ;)
Many thanks goes to LE for what he has done with this project so far.
I hope this encourages LethalEncounter to involve more people in this project, or start working on this baby again :)

Regards,
SAweb

techguy84
07-07-2007, 09:50 PM
Umm, did you just highjack LE's project?

John Adams
07-08-2007, 02:11 AM
This is going to end poorly, methinks.

Good luck, though. I look forward to any EQ2 emulator.

saweb
07-08-2007, 05:04 AM
Im not working on this, I sent him a PM.
Only created an repository for him.

John Adams
07-08-2007, 08:12 PM
Well in that case, halleluiah! SVN roXx0Rz. It means I can download and screw things up royally at home and have no time to do anything else. :D

saweb
07-08-2007, 08:57 PM
Well in that case, halleluiah! SVN roXx0Rz. It means I can download and screw things up royally at home and have no time to do anything else. :D

Haha, enjoy ;)

PS Why has LethalEncounter been offline for such a long time again?? Lets hope he returns : /

techguy84
07-09-2007, 09:12 PM
If you just took the CVS source and put it into SVN, thats awesome as I have better luck with SVN vs CVS, but what about the project renaming. That to me comes off like a hijacking of his work, without his permission and all. Now if he said, "Saweb, take over the helm and do what you will with it, your the leader now!" Then changing the name of the emu and stuff I guess would work, but personally, I wouldnt. I like EQ2Emu, and I respect LE's dedication and skills to get it to the point that it is. Even though it doesnt work, there is still alot that he already has done. I think is was all down to getting the client to communicate with the LS and World.

If I am not mistaken, before the hosting change and his site going down. People with a *specific patch* could login to his server and actually use it, sans alot of features. SOE changed the encryption key and kinda broke anythign else from ever working, as we cant cipher out the packets to make the server LIVE compatible now.

Hopefully though, LE will return one day and shed some light onto the status of this project and wether or not we should just move on, or take over and pound away at the LIVE client to get the data we need.

image
07-09-2007, 11:25 PM
Last I talked to LethalEncounter he was working with someone who found the new location in memory where the key was being stored. From what I understand the key is no different than before just that its shortly destroyed upon creation. So it seems possible to get it updated to live but I am sure there are a lot more changes than just the encryption itself. The base network code, packet structures, opcodes, etc. have changed as well.

On a side note, it is nice to see that people are interested in EQ2EMu and want to setup an SVN server and such. But I have to agree with techguy that changing the name of the emulator is unnecessary ( LethalEncounter already has eq2emulator.net in some fashion even though its not accessible currently ).

LethalEncounter like many of us is caught up in real life issues im sure, people will just have to be patient. If he can't work on it I believe he would release the source completely, it is just a matter of when he gets the time to do either.

techguy84
07-10-2007, 02:33 AM
Thats always the bad part about projects like this. You can't do it full time because of reality. Real Life issues always come up, no matter what the time is and you just cant sit and work on things like this the way the meant to be worked on.

What I think would help, like saweb said, is to get what is there out. LE might like his LS code and have a hard time giving it up, but if everything was readily available for everyone to use, like ManGOS and Antrix, you would have more people able to jump in and help out. You start putting the word out on the street, get a base of operations up that people can come to, website, IRC, forums ect... and things will take off. I am sure that the LIVE EQ2 community has quite a few Developers in it that would love to take on a side project, for the game they play.

One person can not do it alone, plain and simple, its just too much. You need your family time, your self time, more time, and if your the only dev working on something like this, lets face it, its not like making a File Compression client or something. We need to get a base, get people involved, and things should start to roll out and take off.

I like what saweb did, but, I have some critisisim towards a couple things, but the goal behind it is what counts. Now comes a website, forums and what not. I can only assume, but I think that LE should not be focused on the website side of things, as thats skills and time wasted. Teams have multiple people that are talented in multiple areas. Get a website admin to take care of the internet prescense, troops to help push the product to get others involved and then hopefully the devs interested will show up and things will go.

I personally, would love to have a EQ2 server emulator. I can tolerate WoW, I like Guild Wars, but I am a EQ Fanboy at heart, no matter how you cut it. EQ has give me countless of hours of enjoyment, relaxsation, and fun. Only fitting that it travels to EQ2 also.

Im going to shut up now before the fourm cuts me off from having to much.

saweb
07-10-2007, 03:08 AM
Thats always the bad part about projects like this. You can't do it full time because of reality. Real Life issues always come up, no matter what the time is and you just cant sit and work on things like this the way the meant to be worked on.

What I think would help, like saweb said, is to get what is there out. LE might like his LS code and have a hard time giving it up, but if everything was readily available for everyone to use, like ManGOS and Antrix, you would have more people able to jump in and help out. You start putting the word out on the street, get a base of operations up that people can come to, website, IRC, forums ect... and things will take off. I am sure that the LIVE EQ2 community has quite a few Developers in it that would love to take on a side project, for the game they play.

One person can not do it alone, plain and simple, its just too much. You need your family time, your self time, more time, and if your the only dev working on something like this, lets face it, its not like making a File Compression client or something. We need to get a base, get people involved, and things should start to roll out and take off.

I like what saweb did, but, I have some critisisim towards a couple things, but the goal behind it is what counts. Now comes a website, forums and what not. I can only assume, but I think that LE should not be focused on the website side of things, as thats skills and time wasted. Teams have multiple people that are talented in multiple areas. Get a website admin to take care of the internet prescense, troops to help push the product to get others involved and then hopefully the devs interested will show up and things will go.

I personally, would love to have a EQ2 server emulator. I can tolerate WoW, I like Guild Wars, but I am a EQ Fanboy at heart, no matter how you cut it. EQ has give me countless of hours of enjoyment, relaxsation, and fun. Only fitting that it travels to EQ2 also.

Im going to shut up now before the fourm cuts me off from having to much.

Agreed.

Although I never really meant to *change* the project name, I thought that a codename or "community name" would be a great thing to get people watching.

If you dont like it, or dont want it here then it should be changed, my bad.

Anyways, im sure LE would have his reasons for not releasing the code for a community to work on. I hope he returns soon to shed some light on this. . . . What do you intend on doing with this project? Will you release the code if you have decided to leave?

Thanks for all your time and dedication ;)
SAweb

John Adams
07-10-2007, 03:04 PM
Although I never really meant to *change* the project name, I thought that a codename or "community name" would be a great thing to get people watching.
I didn't think he renamed the emulator, just the codename as he said. Like, Longhorn vs. Server 2008. :)

CrabClaw
07-10-2007, 04:44 PM
I set it up in my TortioseSVN, thanks. It's fun to look at and check out the sql structure, and at least for me, to see how far he's gotten.

We'll see if LE gives it his blessings. :)

saweb
07-12-2007, 10:27 AM
I set it up in my TortioseSVN, thanks. It's fun to look at and check out the sql structure, and at least for me, to see how far he's gotten.

We'll see if LE gives it his blessings. :)

Great man, its always fun to see things working . . .thats why we HAVE to keep this thing going.

madborg
07-12-2007, 05:05 PM
i am just throwing this out as a question so consider me wearing FR 9000 suit.

has anyone done an analysis of the evolution path from EQ1 to EQ2? i mean put the game mechanics aside and just consider the core system. obviously the graphics engines are going to be different but is EQ2 so different?

i suppose the first place to look is how the client/server talk to each other. i would go and look at EQ2 but i have to catch up with EQ1 first and at the rate i learn things it could take a year or five.

saweb
07-12-2007, 10:33 PM
i am just throwing this out as a question so consider me wearing FR 9000 suit.

has anyone done an analysis of the evolution path from EQ1 to EQ2? i mean put the game mechanics aside and just consider the core system. obviously the graphics engines are going to be different but is EQ2 so different?

i suppose the first place to look is how the client/server talk to each other. i would go and look at EQ2 but i have to catch up with EQ1 first and at the rate i learn things it could take a year or five.

The thing is, EQ2EMU is already working, everything needed for developers to start developing the emu is available and working! There is only one problem that we ALL are facing, and that is the fact that from the beta development until now, EQ2 changed their packet encryption. As far a I know (hope) that is the very thing LE is working on right now.

Lets hope im correct.

John Adams
07-12-2007, 11:10 PM
I think there's a little more wrong that just beta packet encryption. No one can log into their own server to start coding and testing.

I'd say that's a show stopper.

saweb
07-13-2007, 08:01 PM
I think there's a little more wrong that just beta packet encryption. No one can log into their own server to start coding and testing.

I'd say that's a show stopper.

As soon as LE gets back, i would like to help with packet collection/world dump.
I dont know if its still valid, as this was posted about a month ago:

We can get live packets decrypted again as of tonight. :)

I will be working on a packet collector project that should help out quite a bit if we want to use the latest client instead of an old one. What do you guys think about that? After the packet logger is finished, getting packet logs of everything imaginable from the latest client. Then we get a emulator working with that version and never worry about keeping up with live again. If we get enough packet logs, it should be pretty trivial.

Lets hope he is actually working on that. Give him his own space, but a status report would be really great right now.

CrabClaw
07-14-2007, 01:35 AM
Excuse me for being curious, but I was working to get a VS8 project file going - is there missing things in the SVN files?

It looks like the 16 errors I generated needed mysql.h (sql), zlib.h (the compession library), and errmsg.h (sql). If I am being totally bonkers and way ahead of myself, nevermind. I'm the type if I see code I can't resist compiling it :)

If you want I can svn my combined SQL file.

John Adams
07-14-2007, 02:05 AM
Do you have your VS8 project setup with the directories and libraries like you would for EQEmu? Sounds like it cannot find the same stuff.

CrabClaw
07-14-2007, 05:44 AM
Ok thanks for the hint I'll try that. :)

saweb
07-14-2007, 06:40 PM
Excuse me for being curious, but I was working to get a VS8 project file going - is there missing things in the SVN files?

It looks like the 16 errors I generated needed mysql.h (sql), zlib.h (the compession library), and errmsg.h (sql). If I am being totally bonkers and way ahead of myself, nevermind. I'm the type if I see code I can't resist compiling it :)

If you want I can svn my combined SQL file.

As a mangos developer, I have alot of duties in other areas and I cant attend to this myself.

If you make some progress, pm me with links and Il add it to the SVN.

Thanks ;)

saweb
07-14-2007, 07:55 PM
I updated SVN with another tool that might be usefull.

CrabClaw
07-14-2007, 08:14 PM
Ok thanks. :)

saweb
07-15-2007, 03:05 AM
I found this tool very interesting.
-The games settings are stored in the form of vdl's
-Take for example "gamecmds.vdl" This file contains all the games in-game commands, including all emotes.

//------------------------------------------------------------------------------
// File: x:\eq2live\worldbuilding\alias_output\Clientvdl/gamecmds.vdl
//------------------------------------------------------------------------------

GameCmdList
{
aGameCmds =
[
GameCmd
{
cmdType = "window"
cmdline = "toggleinventory"
cmdName = "inventory"
displayName = ":f9cae121cc23376a:Inventory"
iconType = "command"
iIconID = 5
}
GameCmd
{
cmdType = "window"
cmdline = "togglepersona"
cmdName = "persona"
displayName = ":f9cae12161a770f8:Persona"
iconType = "command"
iIconID = 6
}
GameCmd
{
cmdType = "window"
cmdline = "toggleknowledge"
cmdName = "knowledge"
displayName = ":f9cae121e3095341:Knowledge"
iconType = "command"
iIconID = 22
}
GameCmd
{
cmdType = "window"
cmdline = "toggletradeskills"
cmdName = "tradeskills"
displayName = ":f9cae121932b24d6:Recipes"
iconType = "command"
iIconID = 23
}
GameCmd
{
cmdType = "window"
cmdline = "toggleskills"
cmdName = "skills"
displayName = ":f9cae1212d62ecb9:Skills"
iconType = "command"
iIconID = 6
}
GameCmd
{
cmdType = "window"
cmdline = "togglequestjournal"
cmdName = "quest_journal"
displayName = ":f9cae12163cc54ac:Quest Journal"
iconType = "command"
iIconID = 20
}
GameCmd
{
cmdType = "window"
cmdline = "togglewaypointwindow"
cmdName = "waypoints"
displayName = ":f9cae121fc0cddb9:Waypoints"
iconType = "command"
iIconID = 14
}
GameCmd
{
cmdType = "window"
cmdline = "togglemap"
cmdName = "map"
displayName = ":f9cae121541f13a4:Map"
iconType = "command"
iIconID = 28
}
GameCmd
{
cmdType = "window"
cmdline = "togglecommunity"
cmdName = "community"
displayName = ":f9cae121666e3d6f:Community"
iconType = "command"
iIconID = 4
}
GameCmd
{
cmdType = "window"
cmdline = "togglesocials"
cmdName = "socials"
displayName = ":f9cae12158e17e0a:Socials"
iconType = "command"
iIconID = 15


ETC ETC ETC

LethalEncounter
07-22-2007, 07:07 AM
Thanks for the offer, but I already have a SVN server setup. As far as the project name I kind of like EQ2Emulator. Be sure to read the other thread, but to sum it up I'll continue to work on the project. If I ever decide to quit, I'll release the source to everything.


That is interesting, but the server already sends every valid command when logging in:

0000: 01 25 0d 02 03 77 68 6f 06 70 6c 61 79 65 64 03 .%...who.played.
0010: 61 66 6b 07 66 72 69 65 6e 64 73 0a 66 72 69 65 afk.friends.frie
0020: 6e 64 5f 61 64 64 0d 66 72 69 65 6e 64 5f 72 65 nd_add.friend_re
0030: 6d 6f 76 65 05 65 6d 6f 74 65 03 73 61 79 07 76 move.emote.say.v
0040: 65 6e 74 73 61 79 04 74 65 6c 6c 03 6d 73 67 0c entsay.tell.msg.
0050: 73 6f 6c 6f 61 75 74 6f 6c 6f 63 6b 04 79 65 6c soloautolock.yel
0060: 6c 0b 6a 6f 69 6e 63 68 61 6e 6e 65 6c 09 63 68 l.joinchannel.ch
0070: 61 74 6c 65 61 76 65 0b 74 65 6c 6c 63 68 61 6e atleave.tellchan
0080: 6e 65 6c 02 74 63 07 63 68 61 74 77 68 6f 04 63 nel.tc.chatwho.c
0090: 73 61 79 06 74 61 72 67 65 74 06 66 6f 6c 6c 6f say.target.follo
00a0: 77 0a 73 74 6f 70 66 6f 6c 6c 6f 77 05 73 68 6f w.stopfollow.sho
00b0: 75 74 07 61 75 63 74 69 6f 6e 03 6f 6f 63 0b 63 ut.auction.ooc.c
00c0: 61 6e 6e 65 64 65 6d 6f 74 65 04 6d 6f 6f 64 04 annedemote.mood.
00d0: 67 73 61 79 07 72 61 69 64 73 61 79 04 61 73 61 gsay.raidsay.asa
00e0: 79 06 69 6e 76 69 74 65 0a 72 61 69 64 69 6e 76 y.invite.raidinv
00f0: 69 74 65 0e 6d 6f 76 65 72 61 69 64 6d 65 6d 62 ite.moveraidmemb
0100: 65 72 0a 6c 65 61 76 65 67 72 6f 75 70 07 64 69 er.leavegroup.di
0110: 73 62 61 6e 64 09 6c 65 61 76 65 72 61 69 64 0d sband.leaveraid.
0120: 6b 69 63 6b 66 72 6f 6d 67 72 6f 75 70 11 6b 69 kickfromgroup.ki
0130: 63 6b 67 72 6f 75 70 66 72 6f 6d 72 61 69 64 0c ckgroupfromraid.
0140: 61 63 63 65 70 74 69 6e 76 69 74 65 0d 64 65 63 acceptinvite.dec
0150: 6c 69 6e 65 69 6e 76 69 74 65 0a 6d 61 6b 65 6c lineinvite.makel
0160: 65 61 64 65 72 0c 67 72 6f 75 70 6f 70 74 69 6f eader.groupoptio
0170: 6e 73 07 69 67 6e 6f 72 65 73 0a 69 67 6e 6f 72 ns.ignores.ignor
0180: 65 5f 61 64 64 0d 69 67 6e 6f 72 65 5f 72 65 6d e_add.ignore_rem
0190: 6f 76 65 03 73 69 74 05 73 74 61 6e 64 05 74 69 ove.sit.stand.ti
01a0: 74 6c 65 06 72 61 6e 64 6f 6d 00 13 72 65 73 74 tle.random..rest
01b0: 6f 72 65 5f 6c 6f 73 74 5f 73 68 61 72 65 64 04 ore_lost_shared.
ETC

saweb
07-23-2007, 01:26 AM
Thanks for the offer, but I already have a SVN server setup. As far as the project name I kind of like EQ2Emulator. Be sure to read the other thread, but to sum it up I'll continue to work on the project. If I ever decide to quit, I'll release the source to everything.


That is interesting, but the server already sends every valid command when logging in:

0000: 01 25 0d 02 03 77 68 6f 06 70 6c 61 79 65 64 03 .%...who.played.
0010: 61 66 6b 07 66 72 69 65 6e 64 73 0a 66 72 69 65 afk.friends.frie
0020: 6e 64 5f 61 64 64 0d 66 72 69 65 6e 64 5f 72 65 nd_add.friend_re
0030: 6d 6f 76 65 05 65 6d 6f 74 65 03 73 61 79 07 76 move.emote.say.v
0040: 65 6e 74 73 61 79 04 74 65 6c 6c 03 6d 73 67 0c entsay.tell.msg.
0050: 73 6f 6c 6f 61 75 74 6f 6c 6f 63 6b 04 79 65 6c soloautolock.yel
0060: 6c 0b 6a 6f 69 6e 63 68 61 6e 6e 65 6c 09 63 68 l.joinchannel.ch
0070: 61 74 6c 65 61 76 65 0b 74 65 6c 6c 63 68 61 6e atleave.tellchan
0080: 6e 65 6c 02 74 63 07 63 68 61 74 77 68 6f 04 63 nel.tc.chatwho.c
0090: 73 61 79 06 74 61 72 67 65 74 06 66 6f 6c 6c 6f say.target.follo
00a0: 77 0a 73 74 6f 70 66 6f 6c 6c 6f 77 05 73 68 6f w.stopfollow.sho
00b0: 75 74 07 61 75 63 74 69 6f 6e 03 6f 6f 63 0b 63 ut.auction.ooc.c
00c0: 61 6e 6e 65 64 65 6d 6f 74 65 04 6d 6f 6f 64 04 annedemote.mood.
00d0: 67 73 61 79 07 72 61 69 64 73 61 79 04 61 73 61 gsay.raidsay.asa
00e0: 79 06 69 6e 76 69 74 65 0a 72 61 69 64 69 6e 76 y.invite.raidinv
00f0: 69 74 65 0e 6d 6f 76 65 72 61 69 64 6d 65 6d 62 ite.moveraidmemb
0100: 65 72 0a 6c 65 61 76 65 67 72 6f 75 70 07 64 69 er.leavegroup.di
0110: 73 62 61 6e 64 09 6c 65 61 76 65 72 61 69 64 0d sband.leaveraid.
0120: 6b 69 63 6b 66 72 6f 6d 67 72 6f 75 70 11 6b 69 kickfromgroup.ki
0130: 63 6b 67 72 6f 75 70 66 72 6f 6d 72 61 69 64 0c ckgroupfromraid.
0140: 61 63 63 65 70 74 69 6e 76 69 74 65 0d 64 65 63 acceptinvite.dec
0150: 6c 69 6e 65 69 6e 76 69 74 65 0a 6d 61 6b 65 6c lineinvite.makel
0160: 65 61 64 65 72 0c 67 72 6f 75 70 6f 70 74 69 6f eader.groupoptio
0170: 6e 73 07 69 67 6e 6f 72 65 73 0a 69 67 6e 6f 72 ns.ignores.ignor
0180: 65 5f 61 64 64 0d 69 67 6e 6f 72 65 5f 72 65 6d e_add.ignore_rem
0190: 6f 76 65 03 73 69 74 05 73 74 61 6e 64 05 74 69 ove.sit.stand.ti
01a0: 74 6c 65 06 72 61 6e 64 6f 6d 00 13 72 65 73 74 tle.random..rest
01b0: 6f 72 65 5f 6c 6f 73 74 5f 73 68 61 72 65 64 04 ore_lost_shared.
ETC


Great Scott!, the fire still burns!

Hope to hear of you more often. ^^ The above mentioned is only an example of the settings that can be found in the game archives. Im not sure of my facts, but I think I have seen things like spell cast times and loading intervals. Might be useful for server::client synchronization. Just from looking at it quickly,(in my rather inexperienced comprehension) there might be some usefull settings.

A few questions:
*Do you still have a working packet decrypted?
*Do you work on this as a single person, or do you have a team?

Thanks again for the time spent on this. . .
SAweb

LethalEncounter
07-23-2007, 08:49 AM
Yes to a packet logger and as of right now I am the only programmer.


Great Scott!, the fire still burns!

Hope to hear of you more often. ^^ The above mentioned is only an example of the settings that can be found in the game archives. Im not sure of my facts, but I think I have seen things like spell cast times and loading intervals. Might be useful for server::client synchronization. Just from looking at it quickly,(in my rather inexperienced comprehension) there might be some usefull settings.

A few questions:
*Do you still have a working packet decrypted?
*Do you work on this as a single person, or do you have a team?

Thanks again for the time spent on this. . .
SAweb

techguy84
07-23-2007, 01:31 PM
LE is GOD spelled backwards you know. He can create worlds with is bare hands by himself, lol.

John Adams
07-23-2007, 03:00 PM
Say the word when/if you need any collecting. I am not afraid of SOE - what are they gonna do, ban me? It'll save me $150/mo.

Although a sneaky SEQ style collector would be nice. ~grin~

saweb
07-23-2007, 05:26 PM
Say the word when/if you need any collecting. I am not afraid of SOE - what are they gonna do, ban me? It'll save me $150/mo.

Although a sneaky SEQ style collector would be nice. ~grin~

I am also willing to help where it is needed. I can help with anything sql related, as well as collecting.

RangerDown
07-24-2007, 01:45 PM
LE is GOD spelled backwards you know.So LE... is... a dog???

techguy84
07-24-2007, 03:11 PM
Oh man, didnt notice that it could come out that way, quick Mod's delete that post. Not what I meant, as you pobably know that and are just giving my poor self a hard time.

Where is the edit button when you need it..... /sigh

LethalEncounter
07-25-2007, 09:29 AM
lol, no problem :P