Page 1 of 2

EQ2Emu Project - 2012 Planning

Posted: Sun Oct 16, 2011 3:47 pm
by John Adams
I have gone through all our existing "Priorities" threads and whittled them down to what I think is a manageable list heading into 2012.

I greatly would like to see EQ2Emulator 0.7.0 in a Released state before the end of this year, but that will depend on your willingness to help close some bugs and finish a few incomplete systems.


First, the good ol Systems Matrix! Let's fix this up to be more accurate, and I will update the Project Status module. This is not a priority list! Just a global "To Do".
  • Major systems
    • [+] Alternate Advancement
      [ ] Collision Detection (Zone Geometry)
      [+] Implied Targets
    • Instancing
      [ ] Map (fog)
      [+] Pets
      [ ] PvP
      [+] Tradeskills
    Minor systems
    • [+] /Claim
      [+] Achievement system
      [ ] Arena
      [ ] Battlegrounds
      [X] Collection Quests
      [ ] Deity Blessings/Miracles
      [+] Knowledge Book
      [X] Macros
      [ ] Marketplace
      [ ] Mentoring/Chronomancy
      [+] Persona
      [ ] Player housing
    • Racial Traits/Training/Traditions
      [ ] Research Assistants
      [X] Scribing
      [ ] Slayer Tracking
      [ ] Status
      [ ] Storyteller System
      [X] Teleport Portals
      [X] Titles
      [+] Weather
      [ ] Zone Reuse timers
    Add-on functionality
    • [ ] LFG/LFM/LFW
      [ ] Additional LUA functionalities (catch all)
      [ ] Appearance Slots
      [ ] Conditional Events
      [ ] Cross-server chat
      [ ] Discovery XP
      [ ] Flying/Transportation Mounts
      [ ] Group combat perks/functionality
      [ ] Guild Banks
      [X] Guild Recruiting
      [X] Languages
      [ ] Mail (Items/Coin functionality)
      [+] Merchants (status and token functionality)
      [X] Private Chat Channels
      [ ] Quest Functionality (Group, shared, etc)
      [ ] Raid groups
      [ ] Spell Functionality
      [ ] Waypoints
      [ ] Zone Access Flags
    Revamps
    • [X] Groundspawn/Harvesting
      [ ] Items (Sentinel's Fate functionality)
      [ ] Loot (Smart loot, chest drops, shinies!)
      [X] Spawn Movement
      [ ] XP
    Database Changes
    • [ ] Spliting Dynamic and Static Databases
    Program Changes
    • [ ] Reconfiguring .ini files
      [ ] Splitting of Login/Zone/World exes
I think this post is still the wish list heading into 0.7.1 cycle. Don't faint. It doesn't all have to be done, just picking some things and doing them. Remember: For "BETA 0.8", we'll need *all* major systems implemented, which at our current rate will be sometime in late 2016 :P

I think you can see by this post, most of our 0.7 goals have been reached. Yay! Slow, but we did it.


Current BUGS can be found HERE, and many still need to be addressed. Content bugs can probably be ignored, but remember them while developing content in this next DB/Content Milestone phase.


Full listing of archived Priority posts: Anything from here down is either completed or obsolete/redesigned
The next post will be about general changes to the project direction in general.

Re: EQ2Emu Project - 2012 Planning

Posted: Sun Oct 16, 2011 3:57 pm
by John Adams
First, some new decisions we have come to regarding the direction of EQ2Emulator Project.

Opcode Purge: *DONE*
First and foremost, after talking to the team, we have come to a consensus that we are going to drop support for all the Game Update clients in between major releases. Our new supported client list would then be:
  • ROK (4412-843)
    TSO (5040-908)
    SF (6118-1008)
    DoV (7628-1096) -- see Stablizing client below
All other opcodes will be deleted from our database. This means clients attempting to connect outside our opcode ranges will be rejected.

However, in reading this opening post by ZexisStryfe, and taking Item revamps into consideration, my question to you is now - do we release 0.7.0, then drop support for ROK/TSO as originally planned? I think maintaining 2 items configs would be impossible.


Stablizing a single client: *DONE*
We will focus on getting the DoV (1096) client fully operational, and only chase after live structs/opcodes if/when we need some new functionality for implementation.

Zcoretri and I will address "Age of Discovery" expansion when it releases. If everything has changed once again, we may choose to name that box set as our "stable client".


Primary Tasks:
As for general "Priorities", this is still my primary wishlist:
  • Design and build the EQ2PacketAnalyzer tool *DONE*
    Getting the DoV client structs working so this is our new base client *DONE*

Secondary Tasks:
There are 2 main areas to focus on:
  • Identify '999' command handlers and collect packets for that data, NOW, before the client changes again. *DONE*ISH
    unfinished stuff
    John Adams wrote:Critical, crashing, locking, freezing bugs I am wanting to get resolved before 0.7.0. Me personally, I would love to see systems that are currently implemented become FINISHED finally, rather than be all half-ass and partially working (loot, ground spawns, guilds, mailboxes, combat/spells (which I think are almost done), etc).
    planning 0.7 stuff
    John Adams wrote:Reminder; this thread was born as a review of all our previous stuff, and what we might consider accomplishing AFTER 0.7 is released. However, there are still a few things on this list that might squeak into 0.7, but that depends on Zexis and our Devs

The Big Content Decision: *DECISION DONE* Going with DoV+ zones
Since we still support older clients, we have 2 directions to go:
  • Qeynos/Freeport noob areas will be based on old collects still
    Kelethin, Gorowyn, Neriak and Halas will be based off newer collects - re-collection necessary, older logs to be archived
I would like your thoughts on the above 2 items.

I am still working on a way to deliver bulk content data to remote servers, but for now we're sticking with Xinux' suggestion of admins utilizing eq2content SVN.


Items, Items, Items:
SOE loves revamping all their items every 2 mos. So as our old Items data is likely "good enough" for this emulator, any new features for items we need in DoV+ clients may not work here for some time. We might decide to re-collect all 150k items :( but don't hold your breath.


Implementing New Systems:
We should focus on finishing what we got before starting something new, although New can be exciting... sometimes we run into a brick wall and the system dies (Tradeskills). It doesn't hurt anything, but makes for a less stable server core. I'd like this server to re-stablize, and focusing on tasks we can complete to 100% is the way to do this.

If we start something new, let's be sure it's something we can complete so your time is not wasted.


All of these opinions above have come from talking to each team member individually over the last few weeks, and taking all suggestions into consideration. I'd like a final consensus on this, so we can move forward.

Re: EQ2Emu Project - 2012 Planning

Posted: Mon Oct 17, 2011 3:35 pm
by Sylva1n
my personal toughts:

1st - finish collecting current live spawns and populating the zones we want completed for next release and focusing on those.
2nd - collecting/adding the quests corresponding to those said zones
3rd - recollect every spells for every class & implementing them (whats an emulator experience if you can't fight anything).

*** thoughts about items:
- items are important if they are available on drop tables/quest rewards (you can actually get it somehow when playing the content).
- recollecting spawns, quests etc... will in the process recollect every items ...
- if we're gonna do spawns/quests and everythingelse as accrurate as we can to live servers, why not items too?
- if we take the time to build loot tables/merchant tables, why not make it right the first time?

so that bring my 4th

4th - whipe items and start over ( would say spawns, quests and their loot/merchant tables are more important to me than having 3 billion items in the database).

**obviously the old starter islands should remain as they wont change again, but should stay for nostalgic players like me :)

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Oct 19, 2011 10:01 am
by Zcoretri
Lets Identify systems that are in the unfinished state, and correct any bugs surrounding those systems.

Some may have to be left in a not complete state until we can figure out how they work (i.e. Guild Banks)

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Oct 19, 2011 11:50 am
by John Adams
Zcoretri wrote:Lets Identify systems that are in the unfinished state, and correct any bugs surrounding those systems.
Agree. Let's get 0.7.0 out of our faces. Starting with 0.7.1 (or whatever the next mini-ding is we call it), I'd like to finish restructuring the project into folders. The sooner we empty the bug queue, the sooner I can get that done.

I've been going through Server bugs, trying to reproduce or identify the cause, but so far, little luck. I'll keep with it though, while we also decide on a Content direction.

Re: EQ2Emu Project - 2012 Planning

Posted: Tue Dec 20, 2011 10:41 am
by Gilraak
Just tossing my opinion, with Steam hosting an AoD client perhaps its time to drop support for all except AoD+. The only downside is you still need the "extra" programming if people want the classic Freeport / Qeynos. Or if people want to make an EQ based progression server and unlock each expansion as they go, blah blah.

There is a lot of work to be made hosting many clients etc etc. The EQEmu peeps pretty much have now stuck with either Underfoot or Titanium and truly aren't working on any other client at this moment.

Perhaps if you build support for the latest client, and I truly mean latest, like as of today haha. Or, even see which client downloads from Steam, and see if it stays consistant or auto-updates like my other post assumes it will and base your Emulator off the Steam client version (Much like EQEmu does with Underfoot, all work is based off Steam) Than agian, at the same time...No one wants to be tied to steam either. Ehh, before this posts becomes repeptive with nonsense and useless info I'l cut it off. : )

Re: EQ2Emu Project - 2012 Planning

Posted: Tue Dec 20, 2011 7:14 pm
by reefcrazed
I would be willing to do packet collecting and LUA quest. Since I am only familiar with EQEmu collecting, what is this project using for packet collecting ?

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 7:12 am
by John Adams
Gilraak wrote:Just tossing my opinion, with Steam hosting an AoD client perhaps its time to drop support for all except AoD+. The only downside is you still need the "extra" programming if people want the classic Freeport / Qeynos. Or if people want to make an EQ based progression server and unlock each expansion as they go, blah blah.
While this is a good idea, We will not completely prohibit the older clients for exactly the reasons you mention. I still want to see an ROK, TSO, SF and DoV client box set connectivity and full functionality - however...

The hardest thing for us right now is stuff like items changes, blue stat, where older clients items look one way, while newer clients items look another. The more SOE changes that kinda stuff, the less we're likely to support or add functionality to older clients. So while the older clients will never truly "go away", players using them will see less features than those using DoV+

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 8:37 am
by John Adams
reefcrazed wrote:I would be willing to do packet collecting and LUA quest. Since I am only familiar with EQEmu collecting, what is this project using for packet collecting ?
Our collector is no longer safe, and is detectable by SOE - and they will ban your account for using it.

If this is not a problem for you, let me know and we can work something out.

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 10:29 am
by Gilraak
John Adams wrote:
Gilraak wrote:Just tossing my opinion, with Steam hosting an AoD client perhaps its time to drop support for all except AoD+. The only downside is you still need the "extra" programming if people want the classic Freeport / Qeynos. Or if people want to make an EQ based progression server and unlock each expansion as they go, blah blah.
While this is a good idea, We will not completely prohibit the older clients for exactly the reasons you mention. I still want to see an ROK, TSO, SF and DoV client box set connectivity and full functionality - however...

The hardest thing for us right now is stuff like items changes, blue stat, where older clients items look one way, while newer clients items look another. The more SOE changes that kinda stuff, the less we're likely to support or add functionality to older clients. So while the older clients will never truly "go away", players using them will see less features than those using DoV+
This may sound crazy as hell, so be ready. Write code per client, and depending on what client logins they see that content? Let me explain it in more detail.

I login with SF Client, I see all the items and content that you would have seen with SF.
I login with TSO, I see all the items and content that the client would have seen, regardless if there is SF items or items were nerfd in an update.

Or everyones dream...
I login with the very first client from 2004 Retail Disc and play the game the way it was meant to be :-)

Basically, the code would detect client, load proper Structs per client, and in the database items and such would have an expansion tag to them. EQEmu does this as their main client Titanium does not see what the SoF client sees in terms of content. How they do this is beyond me.

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 11:00 am
by reefcrazed
EqEmu solved this problem to some extent with just adding a column to particular tables, like the zones table. Certain clients could see revamped zones, other clients restricted to certain things. If I remember they used a bit mask ?

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 11:02 am
by reefcrazed
John Adams wrote:
reefcrazed wrote:I would be willing to do packet collecting and LUA quest. Since I am only familiar with EQEmu collecting, what is this project using for packet collecting ?
Our collector is no longer safe, and is detectable by SOE - and they will ban your account for using it.

If this is not a problem for you, let me know and we can work something out.

John is there a download place for the current packet collects for each zone ?

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 11:45 am
by Gilraak
reefcrazed wrote:EqEmu solved this problem to some extent with just adding a column to particular tables, like the zones table. Certain clients could see revamped zones, other clients restricted to certain things. If I remember they used a bit mask ?
Actually they added in a field called Expansion and locked it based upon that for zones. Unsure of other tables though. But these projects work vastly different, I was merely posting an example.

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 11:56 am
by John Adams
The entire problem IS the coding. Who has time to maintain multiple clients that are so vastly different, in C++? Our data can be manipulated based on what client sees it, that is not a problem. It's discovering those differences, then implementing them throughout our code that seems infeasible for our very small team of 2 1/2 C++ developers.

Fwiw: EQ2Emulator (now) employs Expansion ID as well to ensure that those on the SF client cannot /zone FrostfangSea, and crash their client and trap their toon.

Re: EQ2Emu Project - 2012 Planning

Posted: Wed Dec 21, 2011 12:02 pm
by reefcrazed
John Adams wrote:2 1/2 C++ developers.
Short person ?