Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 04-10-2012, 04:09 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default VoA Development Tracking

This thread was created to help keep track of the development of the Veil of Alaris client. Currently, we are working on the client that has a build date of March 21st 2012. This is likely to change over time with SOE patches. It has not yet been determined how following Live patches will be handled, if at all. As of writing this, you can get this client by fully patching to EQ Live using an F2P (or paid) account.

This thread can be used as a reference for what needs work, and who is working on what. I will try to keep this post updated as people update the thread with any progress or notes.

This thread can be used for any development related work or concerns as well as to report any bugs with the client that haven't already been documented.

This thread will be focused on VoA specific bugs, not general bugs that exists in some or all other clients. Because we are already tracking known issues with previous clients in other threads, this thread will not repeat those same issues. For reference, see the following threads for previous client development tracking:
SoD Development Tracking
Underfoot Development Tracking


Last Update - April 22th 2012


Top Priority Work:
1. AA Purchasing - Purchasing AAs is not yet functional. Need to review how it is handled on Live currently.
2. Selling to merchants - Merchant Lists now display and buying from them works, but it looks like the sell packet now sends the item instance Serialized number instead of the merchant/inventory slot. The code supporting this may need to be adjusted.
3. Guilds - Any character in a guild will crash the client when they try to log in. Most likely, this is just a structure issue that needs to be corrected. It looks like the issue is with the Guild Member List packet.
4. Looting - Looting is functional if right clicking to loot, but left clicking to loot to the cursor doesn't work. This is due to how slots were completely changed around and needs further investigation on how to deal with it properly.
5. Tasks - Tasks are not working at all yet. This is due to packet structure changes that will need encodes before sending them to the client.
6. Adventure Merchants - These bug the client if clicked currently. Probably some struct changes needed.
7. Tradeskill Containers - Clicking a world tradeskill object to open it causes the client to bug. This is probably due to an opcode or structure issue.
8. Popups - Popup windows aren't working at all right now. Most likely a struct change is needed.

I am sure there are plenty of broken systems that need work, and will update this section as more issues are identified.


Medium Priority Work:
1. Wear Change - The Wearchange structure changed slightly and now some armor textures don't seem to show up correctly. Needs further investigation.


Low Priority Work:
Pending further assessment


Client Issues:
None known as of yet


Database and Source Code Changes that will be needed at some point:
Will need to convert the source and database to use the new Live format for item slots to allow bags larger than 10 slots.


New Systems to VoA that did not exist in Underfoot (that may/do require code support):
1. Containers can go above 10 slots and it looks like the max is at least 32 slot (though there is no reason for hard setting a max in the source with the new slot format).
2. Containers can be stored inside other containers. So long as they are empty and the same size or smaller. The client already allows this, but need server support to prevent issues.
3. Player Housing system
4. Two new slots in the base player inventory for a total of 10.
5. Merchant window now has a "Preview" button. Clicking it will bring up a window with a small model of your character exactly as he/she is but with whatever item you had selected equipped. Only for items that can go in visible inventory slots. The character model can be rotated and zoomed in on. Used to preview the appearance of items as they would appear on your character before buying them.
6. Merchant window now has a "Reclaim" tab. Any item you destroy during a single session of EQ (Unsure if it resets when you log) is shown in this tab and can be purchased at the cost of "Reclamation Tokens"
7. New "Zone Guide" window. Brings up a listing of all static zones in game and sorted by name, continent, and recommended level. Selecting a zone also displays all connected zones. At the bottom you can create a "Zone Path" by selecting a Start zone and Destination zone as well as a few other variables. This will then create a Find path (Same path that has been used for NPC Find forever) from where you're standing to the zone line and will attempt to guide you to your destination zone. This functionality has also been tied into the Map window, which itself has received a tiny revamp.
8. In-Game "Polls" window. Shows community polls and the results of said polls.
9. Alert History Window. Displays history of alerts your character has received. Examples being the window with keyboard commands that pops up when you first log a character into the tutorial, or the window that pops up for Free/Silver members reminding them to "Go Gold".
10. Death has been changed. You still receive the same xp hits, still have the rez window etc and still appear at bind. However you appear with all gear still on you and all spells still scribed. Bodies seem to spawn naked and only exist for rezes now. (This is the only new feature that actually bothered me. If this goes in should probably add a rule variable to the database to let server ops turn it on/off at whim.)


Issues with Newly Implemented Systems that did not exist in Underfoot:
Pending further assessment


Recently Resolved Issues:
1. Casting Spells and Click Effects on items is now functional.
2. Character Creation - This is now functional. (Thanks Secrets!)
3. Consume Food/Drink - This is now functional.
4. AAs - AAs now display properly in the AA window and hotkeys can be created.


Attaining the Live F2P (Free to Play) VoA Client:
http://www.everquest.com/
Click the "Play Free" button to download the installer and run it to install EQ.
Once the client is downloaded and fully patched (requires you to create a free account), then just follow the normal EQEmu client setup instructions.

Note that this client is patched from Live, so it is highly recommended to copy your entire EQ folder to another folder and run EQEmu from there. This is so when SOE patches, your VoA client will still be available while the new patch changes are getting adjusted for EQEmu.

Note that this client is currently disabled by default in the current SVN. Anyone who wants to test it on their server will need to uncomment the 2 VoA lines in this file before compiling:
http://code.google.com/p/projecteqem...es/patches.cpp

This post will be updated again regularly with current development status. Devs, please feel free to edit this post as needed.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 04-22-2012 at 09:10 AM..
Reply With Quote
  #2  
Old 04-10-2012, 04:09 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

I am not really sure what the plan is for this client. I don't really think we have enough active devs interested in maintaining a client that keeps up with Live patching. Though, with some recent scripts I made, updating opcodes is a bit easier. That may make it possible to keep up with Live with minimal work as long as it is kept up with for each patch so we don't get too far behind. The further behind we get, the harder it is to catch up, as many packet structures have changed and it takes a while to account for them all and fix them.

One thing I want to mention is that I named the patch files "VoA", which is the same naming convention as our previous clients. The difference is that this client could change at any time due to its source. So, one issue that would need to be dealt with if we tried to keep up with Live is how to handle the patch files in our source. We could have the names change to reflect the date of the eqgame.exe build date, or we could just put that date in the patch file as a comment and name them something like "VoA1", "VoA2" and so on. It isn't the naming that concerns me too much though, it is the number of potential patch files we would eventually have. It is already enough of a pain to update 4 patch files for every new opcode that gets added. I don't even want to think about having to do 20 of them after just 1 year of "chasing Live"! Maybe some sort of sub-patch system could be created that would allow for minor changes within the same expansion of patches. I think we would need some kinda change like that or maybe only support new opcode additions for the current patch as well as the UF and older clients and skip any Live patches in between.

I am just hoping that Steam gets a new complete client for EQ again at some point. If they do, then the work on this VoA client might be able to get the Steam version running in minimal time. That is my main reason for working on this client right now.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 04-10-2012 at 04:58 AM..
Reply With Quote
  #3  
Old 04-11-2012, 11:34 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

There is a new patch from Live with a build date of April 10th. I checked and it looks like they didn't change very much. The current VoA build for the emu is still as functional with the new client as it was with the old one as far as I can tell. I will be working from the new April 11th client from this point on.

I did a bit more testing and it looks like normal melee combat works fine and even looting works fine as long as you right click to loot instead of left clicking to loot to the cursor.

I found another crash with this client. It will crash the client if the character you are logging in is in a guild. Otherwise, it should log in fine.

Since a picture is worth a thousand words, here is a screenshot showing off some of the functionality of the VoA client so far:

__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #4  
Old 04-12-2012, 04:26 AM
Amra's Avatar
Amra
Hill Giant
 
Join Date: May 2006
Posts: 117
Default

Nice Trev =)
Reply With Quote
  #5  
Old 04-12-2012, 01:27 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Trevius, I am downloading the F2P right now to archive away, the April 12th patched one.

Is there anything I can help with to help speed up your progress ?
Reply With Quote
  #6  
Old 04-13-2012, 01:35 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Quote:
Originally Posted by provocating View Post
Is there anything I can help with to help speed up your progress ?
No, not unless you know how to read through packets and figure out packet structures, opcodes and do encodes/decodes. Though, you can always start learning at any time. I learned how to do it mostly on my own and have a page in the wiki that explains it a little, though it is pretty old.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #7  
Old 04-13-2012, 02:27 AM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,447
Default

Made a commit with membership stuffs. I think I accidentally the whole items though i'm not sure if it is just x64 being nubby again.

Also, if anyone is interested in seeing what is done, I am hosting a non-legit server for testing this client. Simply patch to live and connect to "Secrets VoA Test" under the green server list. Mess around and try to break things.
Reply With Quote
  #8  
Old 04-13-2012, 04:40 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

I haven't tested it yet, but I doubt you broke items. You only added comments to them, so there shouldn't be any issues. It is probably a x64 issue with your server.

*EDIT*

I think I got the item struct issues figured out. I just need to get home and test the changes. Looks like 2 of the new int32s were in the wrong spots. I am still not 100% sure on the positioning of one of them, but it is narrowed down to a very small range of possible positions.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 04-13-2012 at 06:57 AM..
Reply With Quote
  #9  
Old 04-13-2012, 08:22 AM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Well I really need to learn it, so I am going to attempt to spend a few hours every day learning the structure.

Also if I checkout the source, are there any modifications that have to be done to support VoA in it's current state ?
Reply With Quote
  #10  
Old 04-13-2012, 09:12 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Quote:
Originally Posted by provocating View Post
Also if I checkout the source, are there any modifications that have to be done to support VoA in it's current state ?
Yes, you need to uncomment 2 lines of code in patches.cpp, which is mentioned in at the bottom of the first post in this thread.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #11  
Old 04-13-2012, 09:15 AM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Awesome I will work on this over the weekend.
Reply With Quote
  #12  
Old 04-13-2012, 06:03 PM
Secrets's Avatar
Secrets
Demi-God
 
Join Date: May 2007
Location: b
Posts: 1,447
Default

I tried compiling in non 64, have the same issues as I did in 64. Only one inventory slot shows and no items show up. This is with a new character created on the SoD Client logging into VoA. Not entirely sure why it's doing this unless you forgot to commit something or I missed a revision update. This is with PEQ revision 2100 & latest SVN.

I also noticed item links do work, while inventory is the only thing that is missing.

I should also mention I am using windows.
Reply With Quote
  #13  
Old 04-14-2012, 02:21 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

It appears all of that is being caused by the new packet/opcode you added. We need to identify some of those fields so we know what to set them all to for enabling everything as it should be. Until there is support for it, we should set limits on normal inventory size to 8 even though it can go up to 10 now.

For now, I just set OP_SendMembership in the VoA .conf file to 0x0000 on my server and everything is working fine. Without it being set, we can't create new characters, but at least everything else seems OK. Once the right fields are identified in that packet, I am sure it will allow for some nice rule settings for servers.

Also, I noticed a few things from Live already seem to work in the client such as putting an empty bag inside another bag. I think we will need to add support for that in the source, but it seems basically functional already.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 04-14-2012 at 02:43 AM..
Reply With Quote
  #14  
Old 04-14-2012, 06:52 AM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

I am guessing you are talking about uncommenting lines 21 and 31? After doing so I get this. It compiles fine with them remarked out.

Code:
../common/patches/patches.o: In function `RegisterAllPatches(EQStreamIdentifier&)':
/home/jkg/eq1/src_r2115/zone/../common/patches/patches.cpp:21: undefined reference to `VoA::Register(EQStreamIdentifier&)'
../common/patches/patches.o: In function `ReloadAllPatches()':
/home/jkg/eq1/src_r2115/zone/../common/patches/patches.cpp:31: undefined reference to `VoA::Reload()'
collect2: ld returned 1 exit status
make[1]: *** [world] Error 1
make[1]: Leaving directory `/home/eq1/src_r2115/world'
make: *** [all] Error 2
Reply With Quote
  #15  
Old 04-14-2012, 11:07 AM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

I got it to compile, I had used my old makefile not thinking about the changes to it.

So I did my bot changes and used the VoA client, the one I bought and downloaded weeks ago. That client shows no characters on my account and the character creation limit is showing 0/12323 or the like.

With the F2P client I can create a character or select my character but never zone in, the client appears to freeze. The only changes I made that should effect this would be the uncommenting on the patches.cpp The only other files I modify are ones related to bots

I am running x64 and do change the march=athlon64 and take out the -O but I am not sure if that would make the client hang. I am about to go through my logs now.

EDIT

Could this be of relevance ?

Code:
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0x2792
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch 6.2_world, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0x2ec9
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch 6.2_zone, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0x4dd0
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch Titanium_world, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0x7213
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch Titanium_zone, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0x6c3c
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch SoF_world, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0x737e
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch SoF_zone, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0xff4
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch SoD_world, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x5821 did not match expected 0x5a6b
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch SoD_zone, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x3594 did not match expected 0x13da
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch Underfoot_world, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: First opcode 0x5821 did not match expected 0x4b61
5904 [04.14. - 10:08:56] [NET__IDENT_TRACE] 192.168.0.45:57482: Tried patch Underfoot_zone, and it did not match.
5904 [04.14. - 10:08:56] [NET__IDENTIFY] Unable to identify stream from 192.168.0.45:57482, no match found.
This client I am using was the April 12, 2012 patched one, I verified I have the patch_VoA.conf in my server root.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 11:07 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3