EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Development (https://www.eqemulator.org/forums/forumdisplay.php?f=590)
-   -   Steam RoF Development Tracking (https://www.eqemulator.org/forums/showthread.php?t=36104)

trevius 12-14-2012 05:12 AM

Steam RoF Development Tracking
 
As of Feb 12th 2013, the Steam F2P RoF client has been updated to the Jan 16th 2013 Live patch, which makes it incompatible with EQEmu until we figure out how we want to deal with the updates.

This thread was created to help keep track of the development of the Rain of Fear client. Currently, we are working on the client that has a build date of "Dec 10 2012 17:35:44". 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.

EQLive patched on 16th January 2013, so this thread refers to the Rain Of Fear client currently only obtainable via Steam.

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 RoF 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
VoA Development Tracking


Last Updated - November 18th 2014


Top Priority Work:
1. Alternate Currency Merchants - Had a report that using Alternate Currency Merchants will bug the client and the shops aren't working. Need to confirm this bug, but sounds legit.
2. Bazaar - Enabling trader mode doesn't work. Looks like the way items are tracked has changed to a serialized system and needs to be accounted for in the structs (as well as probably other stuff).



Medium Priority Work:
1. Cursor Buffer - The cursor should normally buffer extra items that are sent to it so they display after you move the top item to another slot, but it currently isn't on RoF. Pending further investigation.
2. Guilds - Most of the guild stuff is now functional. Guild Ranks & Permissions and the Guild Bank don't work.


Low Priority Work:
None!


Client Issues:
1. Many of the old world zones that were revamped have been removed from the client. This includes zones like commons, but we will need to get a full list of missing files together. The good news is the files can be added to the client folder and will work once they are there.


Database and Source Code Changes that will be needed at some point:
1. Will need to convert the source and database to use the new Live format for item slots and to allow bags larger than 10 slots and the 2 new main inventory slots.
2. Will most likely need new Database and source changes to get the new /bazaar feature working in all zones (including bazaar itself).
3. Aug slots now go up to 6 max instead of the previous 5 max, so the source will need to account for that change.


New Systems to RoF that did not exist in Underfoot (that may/do require code support):
Note that many of these were carried over from the work on the VoA client, so they need to be validated.
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). I tested a 100 slot bag and it worked.
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. Two new slots in the base player inventory for a total of 10.
4. 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"
5. /bazaar is now searchable from all zones and you can buy/sell directly from that window and items can sell even while you are offline.


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


Recently Resolved Issues:
1. Character Select - We can now reach character select and it looks fine.
2. Character Create - Characters can now be created.
3. Enter World - Thanks to some work on a few structs/encodes, we can now enter the world (Thanks Derision!)
4. Items - Items now load successfully.
5. Spawn Struct - Nearly all of the spawn struct has been identified and is now functional (Thanks Derision!)
6. Position Updates - These appear to be functioning properly now (Thanks Derision!)
7. Item Previews - This is a new feature that allows you to view what an item would look like when equipped before you purchase it (Thanks Vaion!)
8. Opcodes - All opcodes should now be populated and accurate with maybe a few corrections left to be made as they are found.
9. Merchants - Merchant Buying and Selling now work properly.
10. Clicking Item Links - This now displays item stats as it should.
11. Removing Buffs - This is now functional (Thanks Derision!)
12. Illusions - Illusions are now working properly.
13. Trading - This is now functioning correctly for NPCs and Players.
14. Tradeskill Objects - Clicking a tradeskill object will now open the window correctly and items can be placed inside them.
15. Looting - Looting items from corpses by right click or loot all is now functioning correctly.
16. AA Purchases - All AA issues appear to be resolved including AA purchases.
17. Popups - Popup Windows are now fully functional.
18. Combines - Experiment and auto-combines for tradeskills are now functional in world objects and inventory.
19. #race command - This has been increased to the new max of 724.
20. Reading Books/Notes - These are now functioning properly (Thanks Vaion!)
21. Short Duration Buffs - Short duration buffs should now display in their window properly (Thanks Derision!)
22. /who - This is now functional.
23. Death - Death as well as the respawn window both now work.
24. Guild Masters - GMs should be listing all skills without an issue. Problem was related to MaxLevel being above the values that the skills table supported not a client issue.
25. Adventure Merchants should now work correctly.
26. Mend - This is now functioning properly (Thanks Derision!)
27. Bind Wound - This appears to work fine as far as I can tell.
28. Personal Tribute now works.
29. Pet Buff Window - This now works.
30. Mercenary Merchant - This window now works properly and mercs can be hired.
31. Tasks - Tasks are now fully functional. If any issues are found with Tasks, please report them.
32. Item Links - All of the item link stuff for RoF should now be updated and displaying properly (other than links from other clients).
33. The 'Enter Tutorial' button should now be available for new characters and existing characters within the appropriate level range.
34. Tracking has been fixed, again!
35. /hidecorpse now works.
36. /who and /who all commands now display the correct player counts.
37. Buff Bonuses - These now give the correct values (Thanks Derision and demonstar55!)
38. Mercenaries - Mercenaries are now fully functional, at least to the point they are with the other clients.
39. Spell Sets - Loading a spell set now properly unmems spells first.
40. Sound is now played when casting a spell.
41. Deleting a spell from the spell book now updates the client immediately.
42. Resurrection should now work.
43. Augments - Augmenting items has changed so they are now inserted directly into an item similar to bags.
44. Charms - Right-click stats are now displaying correctly.


Attaining the Steam F2P (Free to Play) RoF Client:
http://store.steampowered.com/app/205710/
Click the "Play Game" button.
If you have Steam, you will be given the option to open it up in Steam and you can download it from there. If you do not have Steam installed, you will have the option to install it. Install it and then get the client from within Steam.
Once the client is downloaded, move the Everquest F2P folder to another location so it doesn't get patched by Steam at any point. Make sure not to start the client using the installed desktop icons. You do NOT want to patch the client to Live!
Then just follow the normal EQEmu client setup instructions.

This post will be updated again regularly with current development status. Devs, please feel free to edit this post as needed.

trevius 12-14-2012 06:53 AM

Looks like the Player Profile is now a variable length according to the SEQ guys. It appears to have changed at some point between September and Oct 24th. Here are some diffs that show what they did to resolve for reference.
http://seq.svn.sf.net/viewvc/seq/sho...?r1=769&r2=771
http://seq.svn.sf.net/viewvc/seq/sho...?r1=718&r2=771

And here are the actual structs and packet building they use currently:
Structs:
http://seq.svn.sf.net/viewvc/seq/sho...77&view=markup

Building Variable Length Player Profile:
http://seq.svn.sf.net/viewvc/seq/sho...77&view=markup

Also, here are the opcodes they use currently:
Zone Opcodes
http://seq.svn.sf.net/viewvc/seq/sho...79&view=markup

World Opcodes
http://seq.svn.sf.net/viewvc/seq/sho...69&view=markup

Hopefully this will be a good reference for getting at least the Player Profile working as well as assigning many of the needed opcodes.

Noport 12-14-2012 04:02 PM

Seq-Showeq website for Everquest
http://www.showeq.net/forums/forumdi...p?16-EverQuest

here are the Seq Server Files Zone Opcodes,World Opcodes indside
http://sourceforge.net/projects/seq/files/ShowEQ/

by fransick Thank You Seq-Showeq Team
http://www.showeq.net/forums/showthr...7287#post47287

Caryatis 12-14-2012 04:56 PM

Quote:

Originally Posted by Noport
by fransick Thank You Seq-Showeq Team
http://www.showeq.net/forums/showthr...7287#post47287

Title of that thread: "12/12/12 Changes "

Quote:

Originally Posted by Trevius
we are working on the client that has a build date of "Dec 10 2012 17:35:44"

I love you Noport. You post wildly inaccurate, misleading and downright retarded things but since you don't use a swear word so all of your shit is left standing.

At least people don't get discouraged as they follow your trail of drool.

trevius 12-14-2012 05:41 PM

Patch dates and build dates are rarely the same. Normally the client was built a day or 2 before the patch day so they can verify everything before pushing it out with the patch. In this case, the client was built on Dec 10th, but the patch didn't hit until Dec 12th:

http://everquest.allakhazam.com/story.html?story=31339

So the 12/12/12 thread is actually accurate as far as what the ShowEQ people care about, which is patch day itself.

And, it isn't the words that get 90% of your threads deleted, it is the context in which you use them.

I have already verified most of the opcodes in that thread that are dated 12/12/12 are accurate for the Steam RoF client. I also have a good chunk of the opcodes figured out already and should be ready to begin testing them pretty soon. The hard part is going to be that variable length player profile though I think.

trevius 12-14-2012 06:14 PM

Heh, new opcode list worked first try (though obviously the char list struct needs some adjustments):

http://i.imgur.com/qdLhF.jpg

Here is the .conf file I used:

Code:

# ShowEQ Import Notes:
# ZERO THE FILE first
# perl -pi -e 's/0x[0-9a-fA-F]{4}/0x0000/g' opcodes.conf
# Unknown Mapping:
# OP_Action2 -> OP_Damage
# OP_EnvDamage -> OP_Damage ---> might have been a one time mistake
# Name Differences:
# OP_CancelInvite -> OP_GroupCancelInvite
# OP_GMFind -> OP_FindPersonRequest
# OP_CommonMessage -> OP_ChannelMessage

OP_Unknown=0x0000
OP_ExploreUnknown=0x0000 # used for unknown explorer

# V = Verified correct
# C = Most likely correct
# U = Unsure, but should be correct or close

# world packets
# Required to reach Char Select:
OP_SendLoginInfo=0x11b6 # V
OP_ApproveWorld=0x7e47 # C
OP_LogServer=0x19ab # C
OP_SendCharInfo=0x06a2 # C
OP_ExpansionInfo=0x711a # C
OP_GuildsList=0x2d38 # C
OP_EnterWorld=0x57c3 # C
OP_PostEnterWorld=0x0c3d # C
OP_World_Client_CRC1=0x044 # C
OP_World_Client_CRC2=0x26df # C
OP_SendSpellChecksum=0x0000 # C
OP_SendSkillCapsChecksum=0x0000 # C

# Character Select Related:
OP_DeleteCharacter=0x0ab4 # C
OP_CharacterCreateRequest=0x06b # C
OP_CharacterCreate=0x0afc # C
OP_RandomNameGenerator=0x0000 # C 0x440f
OP_ApproveName=0x213a # C

OP_MOTD=0x1ae3 # C 0x2b59
OP_SetChatServer=0x2a81 # C 0x0479
OP_SetChatServer2=0x0000 # C 0x158f
OP_ZoneServerInfo=0x49d9 # C 0x41c0
OP_WorldComplete=0x12d4 # C
OP_WorldUnknown001=0x0000 # C 0x77b1
OP_FloatListThing=0x0199 # V

# Reasons for Disconnect:
OP_ZoneUnavail=0x6281 # C 0x1190
OP_WorldClientReady=0x0000 # C 0x4786
OP_CharacterStillInZone=0x0000 #
OP_WorldChecksumFailure=0x0000 #
OP_WorldLoginFailed=0x0000 #
OP_WorldLogout=0x0000 #
OP_WorldLevelTooHigh=0x0000 #
OP_CharInacessable=0x0000 #
OP_UserCompInfo=0x0000 #
# OP_SendExeChecksum=0x0000 #
# OP_SendBaseDataChecksum=0x0000 #

# Zone in opcodes
OP_AckPacket=0x47a6 # V
OP_ZoneEntry=0x1665 # V
OP_ReqNewZone=0x3dec # V
OP_NewZone=0x7fff # V
OP_ZoneSpawns=0x0980 # ?
OP_PlayerProfile=0x46bb # V
OP_TimeOfDay=0x3be2 # V
OP_LevelUpdate=0x0000 # V
OP_Stamina=0x1949 # V
OP_RequestClientZoneChange=0x647a # C
OP_ZoneChange=0x1eb4 # C

OP_LockoutTimerInfo=0x0000 #
OP_ZoneServerReady=0x0000 #
OP_ZoneInUnknown=0x0000 #
OP_LogoutReply=0x0000 #
OP_PreLogoutReply=0x0000 #

# Required to fully log in
OP_SpawnAppearance=0x7360 # V
OP_ChangeSize=0x0000 #
OP_TributeUpdate=0x0000 # V
OP_TributeTimer=0x0000 # C
OP_TaskDescription=0x2294 # C
OP_TaskActivity=0x7181 # C
OP_CompletedTasks=0x9495 # C
OP_Weather=0x0bd7 # V
OP_SendAATable=0x7791 # V
OP_UpdateAA=0x504f # V
OP_RespondAA=0x719a # C 0x2bad
OP_ReqClientSpawn=0x5a4f # V
OP_SpawnDoor=0x7b6c # V
OP_GroundSpawn=0x4286 # V
OP_SendZonepoints=0x7922 # V
OP_SendAAStats=0x0000 # C
OP_WorldObjectsSent=0x7fa8 # V
OP_BlockedBuffs=0x0000 # V
OP_RemoveBlockedBuffs=0x0000 # V
OP_ClearBlockedBuffs=0x0000 # C
OP_SendExpZonein=0x25ab # V
OP_SendTributes=0x0000 # V
OP_TributeInfo=0x5dd2 # V
OP_SendGuildTributes=0x0000 # C 0x5a01
OP_AAExpUpdate=0x25c5 # V
OP_ExpUpdate=0x0000 # V
OP_HPUpdate=0x07b8 # V
OP_ManaChange=0x0000 # C
OP_TGB=0x10a6 # C
OP_SpecialMesg=0x362c # V
OP_GuildMemberList=0x4053 # C
OP_GuildMOTD=0x0561 # V
OP_CharInventory=0x786e # V
OP_WearChange=0x1ad3 # V
OP_ClientUpdate=0x455d # V
OP_ClientReady=0x0000 # V
OP_SetServerFilter=0x5b27 # V

# Guild Opcodes
OP_GetGuildMOTD=0x0000 # C
OP_GetGuildMOTDReply=0x0000 # C
OP_GuildMemberUpdate=0x0000 # C
OP_GuildInvite=0x5f8e # C
OP_GuildRemove=0x296d # C
OP_GuildPeace=0x0000 # C
OP_SetGuildMOTD=0x44d0 # C
OP_GuildList=0x0000 # C
OP_GuildWar=0x0000 # C
OP_GuildLeader=0x0000 # C
OP_GuildDelete=0x241b # C
OP_GuildInviteAccept=0x78a5 # C
OP_GuildDemote=0x0000 # C
OP_GuildPublicNote=0x3c2c # C
OP_GuildManageBanker=0x0000 # C
OP_GuildBank=0x1cbf # C
OP_SetGuildRank=0x3599 # C
OP_GuildUpdateURLAndChannel=0x0000 # C
OP_GuildMemberLevelUpdate=0x0000 #
OP_ZoneGuildList=0x0000 #
OP_GetGuildsList=0x0000 #
OP_GuildStatus=0x25a5 #
OP_GuildCreate=0x0000 #
OP_LFGuild=0x0000 #
# OP_GuildManageRemove=0x0000 #
# OP_GuildManageAdd=0x0000 #
# OP_GuildManageStatus=0x0000 #

# GM/guide opcodes
OP_GMServers=0x2612 # C
OP_GMBecomeNPC=0x0000 # C
OP_GMZoneRequest=0x3912 # C
OP_GMZoneRequest2=0x65d6 # C
OP_GMGoto=0x0345 # C
OP_GMSearchCorpse=0x0000 # C
OP_GMHideMe=0x0000 # C
OP_GMDelCorpse=0x6034 # C
OP_GMApproval=0x0e37 # C
OP_GMToggle=0x1276 # C 0x7566
OP_GMSummon=0x0000 # C
OP_GMEmoteZone=0x0000 # C
OP_GMEmoteWorld=0x0000 # C
OP_GMFind=0x6160 # C
OP_GMKick=0x5646 # C
OP_GMKill=0x507e # C
OP_GMNameChange=0x0000 # C
OP_GMLastName=0x0000 # C

OP_InspectAnswer=0x5794 # C
OP_BeginCast=0x17ff # C
OP_BuffFadeMsg=0x0000 # C
OP_ConsentResponse=0x0000 # C
OP_MemorizeSpell=0x0000 # C
OP_SwapSpell=0x4736 # C
OP_CastSpell=0x0000 # C
OP_Consider=0x4d8d # C
OP_FormattedMessage=0x0000 # C
OP_SimpleMessage=0x0000 # C 0x5448
OP_Buff=0x08ed # C
OP_Illusion=0x6c43 # C
OP_MoneyOnCorpse=0x1837 # C
OP_RandomReply=0x0000 # C
OP_DenyResponse=0x0000 # C
OP_SkillUpdate=0x52c6 # C
OP_GMTrainSkillConfirm=0x0000 # C
OP_RandomReq=0x59db # C
OP_Death=0x3a65 # C
OP_Bind_Wound=0x585d # C
OP_GMTraining=0x6e8f # C
OP_GMEndTraining=0x7ffe # C
OP_GMTrainSkill=0x444c # C
OP_Animation=0x5e0c # Was 0x47d3
OP_Begging=0x54ac # C
OP_Consent=0x400e # C
OP_ConsentDeny=0x0000 # C
OP_AutoFire=0x314e # C
OP_PetCommands=0x093 # C
OP_DeleteSpell=0x0000 # C
OP_Surname=0x1a87 # C
OP_ClearSurname=0x0000 # C
OP_FaceChange=0x0000 # C
OP_SenseHeading=0x0000 # C
OP_Action=0x0ea7 # C
OP_ConsiderCorpse=0x0000 # C
OP_HideCorpse=0x0000 # C 0x1842
OP_CorpseDrag=0x0000 #
OP_CorpseDrop=0x0000 #
OP_Bug=0x0c07 # C
OP_Feedback=0x45ca # C
OP_Report=0x0000 # C
OP_Damage=0x5428 # C or OP_Action2?
OP_ChannelMessage=0x33bc # C
OP_Assist=0x4cd1 # C
OP_AssistGroup=0x1d37 # C
OP_MoveCoin=0x765a # C
OP_ZonePlayerToBind=0x6f93 # C
OP_KeyRing=0x0000 # C
OP_WhoAllRequest=0x78eb # C
OP_WhoAllResponse=0x3393 # C
OP_FriendsWho=0x3dac # C
OP_ConfirmDelete=0x78e0 # V
OP_Logout=0x64bd # C
OP_Rewind=0x69d7 # C
OP_TargetCommand=0x0a # C Was 0x5f5e
OP_InspectRequest=0x23f1 # C
OP_Hide=0x0000 # C
OP_Jump=0x0000 # C
OP_Camp=0x41cd # C
OP_Emote=0x0000 # C
OP_SetRunMode=0x0000 # C
OP_BankerChange=0x0000 # C
OP_TargetMouse=0x0e25 # C 0x7bbb
OP_MobHealth=0x218d # C
OP_InitialMobHealth=0x0000 # C
OP_TargetHoTT=0x0000 # C
OP_XTargetResponse=0x0000 #
OP_XTargetRequest=0x0000 #
OP_XTargetAutoAddHaters=0x0000 #
OP_TargetBuffs=0x0000 # C
OP_BuffCreate=0x0000 # V
OP_BuffRemoveRequest=0x0000
OP_DeleteSpawn=0x3b06 # C
OP_AutoAttack=0x0d14 # C
OP_AutoAttack2=0x0000 # C
OP_Consume=0x4692 # V
OP_MoveItem=0x62a2 # C
OP_DeleteItem=0x3eb5 # C
OP_DeleteCharge=0x2d5b # C
OP_ItemPacket=0x0000 # C
OP_ItemLinkResponse=0x0000 # C
OP_ItemLinkClick=0x0353 # C
OP_NewSpawn=0x0000 # C
OP_Track=0x0000 # C
OP_TrackTarget=0x4c42 # C
OP_TrackUnknown=0x0000 # C
OP_ClickDoor=0x7cc0 # C
OP_MoveDoor=0x5611 # C
OP_RemoveAllDoors=0x39c9 # C
OP_EnvDamage=0x52e9 # C
OP_BoardBoat=0x0000 # C
OP_Forage=0x416d # C
OP_LeaveBoat=0x0000 # C
OP_ControlBoat=0x4aa0 # C
OP_SafeFallSuccess=0x0000 # C
OP_RezzComplete=0x3297 # C
OP_RezzRequest=0x521b # C
OP_RezzAnswer=0x0000 # C
OP_Shielding=0x0000 # C
OP_RequestDuel=0x0000 # C
OP_MobRename=0x0000 # C
OP_AugmentItem=0x0000 # C
OP_WeaponEquip1=0x35c3 # C
OP_WeaponEquip2=0x0000 # C
OP_WeaponUnequip2=0x0000 # C
OP_ApplyPoison=0x0000 # C
OP_Save=0x2e6f # C
OP_TestBuff=0x0000 # C
OP_CustomTitles=0x471a # C
OP_Split=0x269e # C
OP_YellForHelp=0x017 # C
OP_LoadSpellSet=0x0000 # C
OP_Bandolier=0x0000 # C
OP_PotionBelt=0x0000 # C
OP_DuelResponse=0x0dee # C
OP_DuelResponse2=0x5e04 # C
OP_SaveOnZoneReq=0x0000 # C
OP_ReadBook=0x0000 # C
OP_Dye=0x0000 # C
OP_InterruptCast=0x7470 # C
OP_AAAction=0x0000 # C
OP_LeadershipExpToggle=0x0000 # C
OP_LeadershipExpUpdate=0x0000 # C
OP_PurchaseLeadershipAA=0x0000 # C
OP_UpdateLeadershipAA=0x0000 # C
OP_MarkNPC=0x0000 # C
OP_ClearNPCMarks=0x0000 # C
OP_DoGroupLeadershipAbility=0x0000 # C
OP_GroupLeadershipAAUpdate=0x0000 # C
OP_DelegateAbility=0x0000 # C
OP_SetGroupTarget=0x0000 # C
OP_Charm=0x7118 # C
OP_Stun=0x53c0 # C
OP_SendFindableNPCs=0x34c3 # C
OP_FindPersonRequest=0x0000 # C
OP_FindPersonReply=0x0000 # C
OP_Sound=0x3cec # C
OP_PetBuffWindow=0x0000 # C
OP_LevelAppearance=0x7c4d # C
OP_Translocate=0x6f01 # C
OP_Sacrifice=0x76ab # C
OP_PopupResponse=0x0000 # C
OP_OnLevelMessage=0x0000 # C
OP_AugmentInfo=0x7812 # C
OP_Petition=0x2885 # C
OP_SomeItemPacketMaybe=0x11a0 # C
OP_PVPStats=0x0000 #
OP_PVPLeaderBoardRequest=0x0000 # C
OP_PVPLeaderBoardReply=0x0000 # C
OP_PVPLeaderBoardDetailsRequest=0x0000 # C
OP_PVPLeaderBoardDetailsReply=0x0000 # C
OP_RestState=0x0000 # C
OP_RespawnWindow=0x7f99 # C
OP_DisciplineTimer=0x0000 # C
OP_LDoNButton=0x0000 # C
OP_SetStartCity=0x0000 # C
OP_VoiceMacroIn=0x202e # C
OP_VoiceMacroOut=0x3920 # C
OP_ItemViewUnknown=0x0000 # C
OP_VetRewardsAvaliable=0x05d9 # C Mispelled?
OP_VetClaimRequest=0x0000 # C
OP_VetClaimReply=0x0000 # C
OP_CrystalCountUpdate=0x0000 # C
OP_DisciplineUpdate=0x0000 #
OP_BecomeCorpse=0x0000 #
OP_Action2=0x0000 # C OP_Damage?
OP_MobUpdate=0x6b5a # Same as OP_SpawnPositionUpdate
OP_NPCMoveUpdate=0x0000 #
OP_CameraEffect=0x5712 # V
OP_SpellEffect=0x72b6 # V
OP_RemoveNimbusEffect=0x0000 # C
OP_AltCurrency=0x8fcb
OP_AltCurrencyMerchantRequest=0x0000
OP_AltCurrencyMerchantReply=0x0000
OP_AltCurrencyPurchase=0x0000
OP_AltCurrencySell=0x0000
OP_AltCurrencySellSelection=0x0000
OP_AltCurrencyReclaim=0x0000
OP_CrystalReclaim=0x0000
OP_CrystalCreate=0x0000
OP_Untargetable=0x0000
OP_IncreaseStats=0x0000
OP_Weblink=0x0000 #C

OP_DzQuit=0x0000
OP_DzListTimers=0x0000
OP_DzAddPlayer=0x0000
OP_DzRemovePlayer=0x0000
OP_DzSwapPlayer=0x0000
OP_DzMakeLeader=0x0000
OP_DzPlayerList=0x0000
OP_DzJoinExpeditionConfirm=0x0000
OP_DzJoinExpeditionReply=0x0000
OP_DzExpeditionInfo=0x0000
OP_DzMemberStatus=0x0000
OP_DzLeaderStatus=0x0000
OP_DzExpeditionEndsWarning=0x0000
OP_DzExpeditionList=0x0000
OP_DzMemberList=0x0000
OP_DzCompass=0x0000
OP_DzChooseZone=0x0000

# New Opcodes
OP_SpawnPositionUpdate=0x0000 # C
OP_ManaUpdate=0x6675 # C
OP_EnduranceUpdate=0x71fb # C
OP_MobManaUpdate=0x48b5 # C
OP_MobEnduranceUpdate=0x7cb5 # C

# Looting
OP_LootRequest=0x43a7 # C
OP_EndLootRequest=0x3d8c # C
OP_LootItem=0x515b # C
OP_LootComplete=0x256d # C

# bazaar trader stuff stuff:
OP_BazaarSearch=0x0000 # C
OP_TraderDelItem=0x0000 # C
OP_BecomeTrader=0x74bc # C
OP_TraderShop=0x0000 # C
OP_Trader=0x0000 # C
OP_TraderBuy=0x0000 # C
OP_Barter=0x0000 # C
OP_ShopItem=0x0000 #
OP_BazaarInspect=0x0000 #
OP_Bazaar=0x0000 #
OP_TraderItemUpdate=0x0000 #

# pc/npc trading
OP_TradeRequest=0x0000 # C
OP_TradeAcceptClick=0x13db # C
OP_TradeRequestAck=0x6852 # C
OP_TradeCoins=0x584d # C
OP_FinishTrade=0x3fbf # C
OP_CancelTrade=0x0234 # C
OP_TradeMoneyUpdate=0x65f6 # C
OP_MoneyUpdate=0x6e42 # C
OP_TradeBusy=0x0000 # C

# Sent after canceling trade or after closing tradeskill object
OP_FinishWindow=0x1939 # C
OP_FinishWindow2=0x0000 # C

# Sent on Live for what seems to be item existance verification
# Ex. Before Right Click Effect happens from items
OP_ItemVerifyRequest=0x0000 # C
OP_ItemVerifyReply=0x0000 # C

# merchant crap
OP_ShopPlayerSell=0x6b4d # C
OP_ShopRequest=0x16ba # C
OP_ShopEnd=0x0000 # C
OP_ShopEndConfirm=0x1860 # C
OP_ShopPlayerBuy=0x3bab # C
OP_ShopDelItem=0x0000 # C

# tradeskill stuff:
OP_ClickObject=0x7992 # V
OP_ClickObjectAction=0x0000 # V
OP_ClearObject=0x2ead # C
OP_RecipeDetails=0x0000 # C
OP_RecipesFavorite=0x0000 # C
OP_RecipesSearch=0x0000 # C
OP_RecipeReply=0x0000 # C
OP_RecipeAutoCombine=0x0000 # C
OP_TradeSkillCombine=0x7447 # C

# Tribute Packets:
OP_OpenGuildTributeMaster=0x0000 # C
OP_OpenTributeMaster=0x0000 # C
OP_SelectTribute=0x0000 # C
OP_TributeItem=0x0000 # C
OP_TributeMoney=0x0000 # C
OP_TributeToggle=0x0000 # C
OP_TributePointUpdate=0x0000 # C
OP_TributeNPC=0x0000 #
OP_GuildTributeInfo=0x0000 #
OP_OpenTributeReply=0x0000 #
# OP_GuildTributeStatus=0x0000 #

# Adventure packets:
OP_LeaveAdventure=0x0000 # C
OP_AdventureFinish=0x0000 # C
OP_AdventureInfoRequest=0x0000 # C
OP_AdventureInfo=0x0000 # C
OP_AdventureRequest=0x0000 # C
OP_AdventureDetails=0x0000 # C
OP_AdventureData=0x0000 # C
OP_AdventureUpdate=0x0000 # C
OP_AdventureMerchantRequest=0x0000 # C
OP_AdventureMerchantResponse=0x0000 # C
OP_AdventureMerchantPurchase=0x0000 # C
OP_AdventureMerchantSell=0x0000 # C
OP_AdventurePointsUpdate=0x0000 # C
OP_AdventureStatsRequest=0x0000 # C
OP_AdventureStatsReply=0x0000 # C
OP_AdventureLeaderboardRequest=0x0000 # C
OP_AdventureLeaderboardReply=0x0000 # C

# Group Opcodes
OP_GroupDisband=0x1ed0 # C
OP_GroupInvite=0x1602 # C
OP_GroupFollow=0x2789 # C
OP_GroupUpdate=0x0000 # C
OP_GroupUpdateB=0x0000 # C
OP_GroupCancelInvite=0x0000 # C - Same as OP_CancelInvite?
OP_GroupAcknowledge=0x0000 # C
OP_GroupDelete=0x0000 #
OP_CancelInvite=0x0000 # C
OP_GroupFollow2=0x0000 # C
OP_GroupInvite2=0x0000 # C
OP_GroupDisbandYou=0x0000 # C
OP_GroupDisbandOther=0x0000 # C
OP_GroupLeaderChange=0x0000 # C
OP_GroupRoles=0x0000 # C
OP_GroupMakeLeader=0x4129

# LFG/LFP Opcodes
OP_LFGCommand=0x0000 # C
OP_LFGGetMatchesRequest=0x0000 # C
OP_LFGGetMatchesResponse=0x0000 # C
OP_LFPGetMatchesRequest=0x0000 # C
OP_LFPGetMatchesResponse=0x0000 # C
OP_LFPCommand=0x0000 # C
OP_LFGAppearance=0x0000 #
OP_LFGResponse=0x0000 #

# Raid Opcodes
OP_RaidInvite=0x0000 # C
OP_RaidUpdate=0x0000 # C
OP_RaidJoin=0x0000 #

# Button-push commands
OP_Taunt=0x0af6 # C
OP_CombatAbility=0x6e4c # C
OP_SenseTraps=0x0000 # C
OP_PickPocket=0x047b # C
OP_DisarmTraps=0x0000 #
OP_Disarm=0x70a9 # C
OP_Sneak=0x0000 # C
OP_Fishing=0x0000 # C
OP_InstillDoubt=0x0000 # C
OP_FeignDeath=0x677d # C
OP_Mend=0x0000 # C
OP_LDoNOpen=0x0000 # C

# Task packets
OP_TaskActivityComplete=0x0000 # C
OP_TaskMemberList=0x0000 # C
OP_OpenNewTasksWindow=0x0000 # C
OP_AvaliableTask=0x0000 # C Mispelled?
OP_AcceptNewTask=0x0000 # C
OP_TaskHistoryRequest=0x6cf6 # C
OP_TaskHistoryReply=0x25eb # C
OP_CancelTask=0x0c7f # C
OP_DeclineAllTasks=0x0000 #

# Title opcodes
OP_NewTitlesAvailable=0x45d1 # C
OP_RequestTitles=0x1b5a # C
OP_SendTitleList=0x0d64 # C
OP_SetTitle=0x0bfc # C
OP_SetTitleReply=0x7e20 # C

# mail opcodes
OP_Command=0x0000 #
OP_MailboxHeader=0x0000 #
OP_MailHeader=0x0000 #
OP_MailBody=0x0000 #
OP_NewMail=0x0000 #
OP_SentConfirm=0x0000 #

# # # # # # # # # # # Below this point should not be needed # # # # # # # # # # #

# This section are all unknown in Titanium
OP_ForceFindPerson=0x0000 #
OP_LocInfo=0x0000 #
OP_ReloadUI=0x0000 #
OP_ItemName=0x0000 #
OP_ItemLinkText=0x0000 #
OP_MultiLineMsg=0x0000 #
OP_MendHPUpdate=0x0000 #
OP_TargetReject=0x0000 #
OP_SafePoint=0x0000 #
OP_ApproveZone=0x0000 #
OP_ZoneComplete=0x0000 #
OP_ClientError=0x0000 #
OP_DumpName=0x0000 #
OP_Heartbeat=0x0000 #
OP_CrashDump=0x0000 #
OP_LoginComplete=0x0000 #

# discovered opcodes not yet used:
OP_PickLockSuccess=0x0000 #
OP_PlayMP3=0x0000 #
OP_ReclaimCrystals=0x0000 #
OP_DynamicWall=0x0000 #
OP_OpenDiscordMerchant=0x0000 #
OP_DiscordMerchantInventory=0x0000 #
OP_GiveMoney=0x0000 #
OP_RequestKnowledgeBase=0x0000 #
OP_KnowledgeBase=0x0000 #
OP_SlashAdventure=0x0000 # /adventure
OP_BecomePVPPrompt=0x0000 #
OP_MoveLogRequest=0x0000 # gone I think
OP_MoveLogDisregard=0x0000 # gone I think

# named unknowns, to make looking for real unknown easier
OP_AnnoyingZoneUnknown=0x0000 #
OP_Some6ByteHPUpdate=0x0000 # seems to happen when you target group members
OP_QueryResponseThing=0x0000 #


# realityincarnate: these are just here to stop annoying several thousand byte packet dumps
#OP_LoginUnknown1=0x46d3 # U OP_SendSpellChecksum
#OP_LoginUnknown2=0x040b # U OP_SendSkillCapsChecksum

# Petition Opcodes
OP_PetitionSearch=0x0000 # search term for petition
OP_PetitionSearchResults=0x0000 # (list of?) matches from search
OP_PetitionSearchText=0x0000 # text results of search

OP_PetitionUpdate=0x0000 #
OP_PetitionCheckout=0x0000 #
OP_PetitionCheckIn=0x0000 #
OP_PetitionQue=0x0000 #
OP_PetitionUnCheckout=0x0000 #
OP_PetitionDelete=0x0000 #
OP_DeletePetition=0x0000 #
OP_PetitionResolve=0x0000 #
OP_PDeletePetition=0x0000 #
OP_PetitionBug=0x0000 #
OP_PetitionRefresh=0x0000 #
OP_PetitionCheckout2=0x0000 #
OP_PetitionViewPetition=0x0000 #

# Login opcodes
OP_SessionReady=0x0000 #
OP_Login=0x0000 #
OP_ServerListRequest=0x0000 #
OP_PlayEverquestRequest=0x0000 #
OP_PlayEverquestResponse=0x0000 #
OP_ChatMessage=0x0000 #
OP_LoginAccepted=0x0000 #
OP_ServerListResponse=0x0000 #
OP_Poll=0x0000 #
OP_EnterChat=0x0000 #
OP_PollResponse=0x0000 #

# raw opcodes
OP_RAWSessionRequest=0x0000 #
OP_RAWSessionResponse=0x0000 #
OP_RAWCombined=0x0000 #
OP_RAWSessionDisconnect=0x0000 #
OP_RAWKeepAlive=0x0000 #
OP_RAWSessionStatRequest=0x0000 #
OP_RAWSessionStatResponse=0x0000 #
OP_RAWPacket=0x0000 #
OP_RAWFragment=0x0000 #
OP_RAWOutOfOrderAck=0x0000 #
OP_RAWAck=0x0000 #
OP_RAWAppCombined=0x0000 #
OP_RAWOutOfSession=0x0000 #

# we need to document the differences between these packets to make identifying them easier
OP_Some3ByteHPUpdate=0x0000 # initial HP update for mobs
OP_InitialHPUpdate=0x0000 #

Until the new RoA files are added, I just enabled the VoA client registration in the common/patches/patches.cpp file and put the opcodes in the patch_VoA.conf file. I will probably try to get the new RoF files on the SVN tonight so others can start helping if they want.

I am thinking of just renaming the VoA files all to RoF, since the VoA client was never very functional, and yet it already has some progress toward a newer client.

lerxst2112 12-14-2012 06:43 PM

Quote:

Originally Posted by trevius (Post 215237)
I am thinking of just renaming the VoA files all to RoF, since the VoA client was never very functional, and yet it already has some progress toward a newer client.

Probably better to just copy them. I doubt it, but someone might be using them and could be unhappy about the deletion.

sorvani 12-14-2012 11:23 PM

Quote:

Originally Posted by lerxst2112 (Post 215238)
Probably better to just copy them. I doubt it, but someone might be using them and could be unhappy about the deletion.

i disagree. there is zero reason for the project to keep the files. If there actually is a server op using them, then that server op will know how to get them back if they blindly update the SVN and copy from the svn folder to their server folder.

lerxst2112 12-14-2012 11:34 PM

Quote:

Originally Posted by sorvani (Post 215247)
i disagree. there is zero reason for the project to keep the files. If there actually is a server op using them, then that server op will know how to get them back if they blindly update the SVN and copy from the svn folder to their server folder.

Not sure where the idea of copying from svn to server folder comes in. I was thinking of the .h and .cpp files that would just get deleted.

If the idea is to remove files that have no use to the project then the HoT and Live files should probably go too.

trevius 12-14-2012 11:48 PM

Quote:

Originally Posted by lerxst2112 (Post 215249)
If the idea is to remove files that have no use to the project then the HoT and Live files should probably go too.

Actually, I was thinking we should just remove the non-functional clients such as Anniversary, HoT, Live and VoA. There is no reason to have them other than as a reference since the clients are not functional enough to be used over any other (more readily available) client. We don't need to keep them in the trunk for reference, since we would always have the option to go back through the SVN revisions that include them if needed (which is not likely). And if the RoF client goes as well as I am hoping it will, we will have a free, legally attainable, stable, complete client that should be available for about a year or more without any patching. It has the potential to be the best over-all client to date.

And BTW, we are moving right along. Char select is looking good enough to progress to the trying to enter world stage:

http://i.imgur.com/LSN1m.jpg

I will try to get something on the SVN pretty soon. I would like to hear more feedback as to whether it is a good idea to replace the VoA files with RoF ones though (renaming the files and everything referring to VoA in them to RoF).

Uleat 12-14-2012 11:52 PM

Hell, I'd pay the 40 bucks for a stable revision. Sure beats the $700 for titanium on ebay.

lerxst2112 12-15-2012 12:58 AM

Rename has always been an iffy thing for me in SVN. I'd still add new files for the new client and delete the old ones if that's desired.

trevius 12-15-2012 01:26 AM

Gotcha. I was thinking it would be seen as a delete and an add, but I guess not. Not a big deal either way.

cavedude 12-15-2012 02:14 AM

Quote:

Originally Posted by trevius (Post 215256)
Gotcha. I was thinking it would be seen as a delete and an add, but I guess not. Not a big deal either way.

That's how I do it and never have had a problem. (svn remove, and svn add) I've never used the svn rename function, I don't believe it works correctly.

demonstar55 12-15-2012 02:43 AM

Quote:

Originally Posted by cavedude (Post 215258)
That's how I do it and never have had a problem. (svn remove, and svn add) I've never used the svn rename function, I don't believe it works correctly.

That is all svn move does I believe.

sorvani 12-15-2012 02:43 AM

works fine in windows with tortoise. i do it all the time on my work SVN. it does do a delete/add.

trevius 12-18-2012 03:47 AM

I am still working my way through the Player Profile packet. They moved a ton of stuff around and added a lot of different iterations and some of them will adjust the size of the packet. This is the biggest change to the PP that I have ever seen, so it is taking a lot longer than normal to get through it all. Hopefully I can get it to a point where it is functional in the next day or so. I already have most of it worked out, but the last few thousands bytes are much harder for me to identify and due to it being variable length now, it is very important that many fields are accurate where it didn't matter as much or at all before.

Once the PP is functional, I think it should be fairly easy to get in game. But that will still leave a ton of work left to do. Once in-game, it is generally much easier to work on this stuff. There are a few packets that I am sure will take some work to get adjusted, but we should be able to get most systems functional relatively quickly.

rhyotte 12-18-2012 05:09 AM

Go Trev Go! You da' Man! :)

trevius 12-19-2012 08:57 AM

Since the PP has been giving me trouble, I started doing cleanup on some of the other main packets sent on zoning in. So far, I got the object, doors, spawnpoints, newzone, weather, and time structs/encodes all corrected or verified to be correct. I also wrote an encode for sending the membership info when getting to character select which should let us start work on the character creation stuff.

I still have to test the work I did tonight, but at least it is progress. Once I test what I have so far, I will try to get it committed to the SVN so others can help to work through it if they want.

The player profile is still giving me trouble, but I have made a bit more progress on it. I am hoping that if I get the rest of the packets in order, it will make it easier to verify that the issues I am seeing are related to the Player Profile or not.

Hopefully I can make it in zone in the next day or so. I am off work all next week, so I should have a good amount of time to knock out more RoF stuff.

Derision 12-19-2012 09:40 AM

I'm sitting here waiting for you to commit what you've done so I can have a go :)

trevius 12-19-2012 10:04 AM

Quote:

Originally Posted by Derision (Post 215403)
I'm sitting here waiting for you to commit what you've done so I can have a go :)

/drool

I was hoping you might chime in! I had a pretty big grin on my face when I saw your post :D

Didn't want to directly bug you about it or make you feel obligated. There is only a small handful of people that could really help with this part of the process, and you are at the top of that list along with KLS and Secrets.

I haven't had this much trouble getting in game since SoF. That variable sized PP is really rough at the end of it. I am sure we can get it, but it is definitely a challenge at this point where the last few clients were trivial.

Once in game, I already have a few hurdles in mind from the work we did on VoA a few months back. Here is the list off the top of my head:

1. Spawn Struct - Looks like Derision may already have this figured out based on the EQExtractor update.
2. Position Updates - Looks like Derision may have this one figured out as well.
3. Tasks - From the last time I checked VoA task packets, it looked like they had changed a good amount, so it will probably take a bit to get those working and I haven't ever messed with those packets before.
4. Merchant Lists - I think I had merchant lists mostly functional for the VoA client, but there was definitely something wrong with it still that I am sure will need to be resolved. It was probably with the new preview feature and with the "show items I can use" feature.
5. Items - I am sure there will be some item struct changes, but hopefully they won't be too bad. I can start going through those once we are able to get in-game. The new slot schema already has a conversion function for it and I believe Uleat has plans to work on implementing the new slot schema across the board and have all other clients convert to/from the new system so we aren't trying to retro-fit and hack stuff into the old slot system.

Once most of the basics are working, I will populate the rest of the opcodes and put together a more complete list in the top post of this thread.

Noport 12-20-2012 04:03 AM

RoF Gold Eqemu
http://i.imgur.com/XBMks.jpg

trevius 12-20-2012 05:08 AM

Thanks for the PM, Noport! I hadn't noticed that they added a packet specifically for sending the char slot count yet. Not to sound too surprised, but that is actually quite useful information. I have gold access working with the version that is on the SVN, but couldn't figure out why the char slots were still x/0 instead of x/10.

SOE always does stuff that doesn't make sense. The char slot limitation for membership access is already included in the packet for OP_SendMembership, so I have no clue why they thought it was a good idea to make a new packet that sends redundant information that is already accounted for elsewhere.

There are a ton of packets that EQEmu just doesn't need to use for any reason, so we normally don't bother adding new packets unless they are required for us. That is why there are a lot of unknowns out there. They have something like 1600 opcodes and we only have about 350 of them identified, which shows that there is a lot of stuff that we just don't need in order to functional properly. I am sure there are plenty that would be nice to have, but there are a ton we don't need as well.

I will get the new packet added to the SVN and we will continue with the Character creation stuff after that (probably after the higher priority stuff is worked out).

KLS 12-21-2012 06:01 PM

Noport helped, black is white, up is down.

lerxst2112 12-21-2012 07:07 PM

Quote:

Originally Posted by KLS (Post 215482)
Noport helped, black is white, up is down.

Even a broken clock is right twice a day.

Noport 12-21-2012 09:20 PM

trying to make a statement on the opcode hint:
RoF_world=0x1665
RoF_zone=0x2154
Code:

[12.21.12] [NET__IDENT_TRACE] xxx.xxx.xxx.xxx:52341: Tried patch RoF_world, and it did not match.
[12.21.12] [NET__IDENT_TRACE] xxx.xxx.xxx.xxx:52341: opcode 0x11b6 did not match expected 0x1665
[12.21.12] [NET__IDENT_TRACE] xxx.xxx.xxx.xxx:52341: Tried patch RoF_zone, and it did not match.
[12.21.12] [NET__IDENT_TRACE] xxx.xxx.xxx.xxx:52341: First opcode 0x11b6 did not match expected 0x2154
[12.21.12] [NET__IDENT_TRACE] xxx.xxx.xxx.xxx:52341: Tried patch Live_world, and it did not match.

Just in case your still learning how to read opcodes
Code:

# world packets
# Required to reach Char Select:
OP_SendCharInfo=0x6a2              # 12/12/12 Corrected Opcode
OP_PostEnterWorld=0xc3d            # 12/12/12 Corrected Opcode

# Character Select Related:       

OP_SendMembership=0x3b2            # 12/12/12 Corrected Opcode
OP_SendMaxCharacters=0x5349        # 12/12/12 Correct  Added Opcode
OP_CharacterCreateRequest=0x006b  # 12/12/12 Corrected Opcode
OP_RandomNameGenerator=0x4453          # 12/12/12 Correct  Added Opcode

RoF Live Gold Dec 19, 2012
they have been posting opcodes like this since HoT-present
Code:

[Wed Dec 2012]00044:WorldAuthenticate.  I got a message of type 0x6be3 (27619).
[Wed Dec 2012]00045:WorldAuthenticate.  I got a message of type 0x336d (13165).
[Wed Dec 2012]00046:*** ERROR: WorldAuthenticate.  ??? UNKNOWN MESSAGE

[Wed Dec 2012]00047:WorldAuthenticate.  I got a message of type 0x2d38 (11576).OP_GuildsList
[Wed Dec 2012]00048:WorldAuthenticate.  I got a message of type 0x19ab (6571).OP_LogServer
[Wed Dec 2012]00049:WorldRPServer message: server name xxxxxxxxxxx

[Wed Dec 2012]00050:WorldAuthenticate.  I got a message of type 0x7eed (32493).
[Wed Dec 2012]00051:Could not open file: RealEstateItemGroups.txt

[Wed Dec 2012]00052:Could not open file: RealEstateCosts.txt

[Wed Dec 2012]00053:Loaded RealEstateCosts.txt, 0 cost elements loaded.

[Wed Dec 2012]00054:Could not open file: RealEstateDefs.txt

[Wed Dec 2012]00055:Could not open file: RealEstateDefs.txt

[Wed Dec 2012]00056:WorldAuthenticate.  I got a message of type 0x7e47 (32327).OP_ApproveWorld
[Wed Dec 2012]00057:WorldAuthenticate.  I got a message of type 0x3b2 (946).OP_SendMembership
[Wed Dec 2012]00058:WorldAuthenticate.  I got a message of type 0xb1f (2847).OP_WelcomeScreenTitle
[Wed Dec 2012]00059:WorldAuthenticate.  I got a message of type 0x7e19 (32281).OP_WelcomeScreenURL
[Wed Dec 2012]00060:WorldAuthenticate.  I got a message of type 0x57c3 (22467).OP_EnterWorld
[Wed Dec 2012]00061:WorldAuthenticate.  I got a message of type 0x5349 (21321).OP_SendMaxCharacters
[Wed Dec 2012]00062:WorldAuthenticate.  I got a message of type 0x711a (28954).OP_ExpansionInfo
[Wed Dec 2012]00063:WorldAuthenticate.  I got a message of type 0x6a2 (1698).OP_SendCharInfo
[Wed Dec 2012]00064:Check 1x. 0x3fe2799d

[Wed Dec 2012]00065:Check 1sa. 0x7b420f48

[Wed Dec 2012]00066:Check 1sa. 0xa01d29ed

[Wed Dec 2012]00067:WorldAuthenticate.  I got a message of type 0xc3d (3133).OP_PostEnterWorld
[Wed Dec 2012]00068:WorldAuthenticate.  Access granted.

I use a program called mapconvert.sql to get newer mapfiles for eqemu
sincerely your Dark Knight 80)

trevius 12-23-2012 09:56 AM

Derision worked his magic and got the rest of the Player Profile and Spawn stuff worked out enough to get in-game. After that, I was able to get items loading and am just working down the list to see what needs work.

http://i.imgur.com/V2U6U.jpg

So far, this is looking really good and hopefully we can make much quicker progress from here out since we can finally work from in-game now which helps a lot.

wolfwalkereci 12-23-2012 02:20 PM

That is some good stuff man. I'm excited at the progress being made.

trevius 12-29-2012 07:07 PM

Here are some screenshots of the new Hero's Forge armor models:


http://i.imgur.com/H1kh2.jpg

http://i.imgur.com/b6Wzi.jpg

http://i.imgur.com/YPVXn.jpg

http://i.imgur.com/XqDA1.jpg

The progress of RoF is still moving along nicely. The armor in the screenshots above can be seen using the #wc command with some new arguments I added to it. To see some examples of the new #wc armor, here are some example commands:

#wc 1 0 2
#wc 1 5 6

The first argument is slot, and the second is material. The third argument is what sets the hero's forge armor model. If the 3rd arg isn't used, then it will just use normal textures. It looks like the Hero's Forge models are from 2 to 11 (and maybe up to 13 for helm slot only). The material/textures available for each model type vary, but it seems that model 2 to 5 have only texture 0 available. For model 6+, they mostly go up to texture 5 or higher.

Keep in mind that going above texture/material 9 will not work properly as the actual model used for Hero's Forge armor is a combination of slot, material and model. It is actually model * 1000 + texture * 100 + wearslot. So, 6501 would be model 6, texture 5, slot 1. To simplify the #wc command arguments, I just split up model, texture and slot. So, instead of typing "#wc 1 5 6501", we just type "#wc 1 5 6", since material and slot are already required anyway for the command/packet.

FievelMousey 12-29-2012 10:17 PM

Yes looking good thanks for all work you all putting into a new client caint wait it good go as i think it be super stable all fixes they worked on in past fix EQ memory leaks etc

blindaviator 12-30-2012 02:43 PM

We all appreciate the work you guys put into this project. The only roadblock now is that Steam no longer offers Underfoot for download. The only ones you can download now is the Free to Play and Rain of Fear installers.

So unless someone somewhere offers a good working copy of Underfoot for download I am afraid most of your work will be for naught.

cavedude 12-30-2012 02:49 PM

Quote:

Originally Posted by blindaviator (Post 215761)
We all appreciate the work you guys put into this project. The only roadblock now is that Steam no longer offers Underfoot for download. The only ones you can download now is the Free to Play and Rain of Fear installers.

So unless someone somewhere offers a good working copy of Underfoot for download I am afraid most of your work will be for naught.

The free to play Rain of Fear client is what this thread is about. Underfoot is an entirely different client altogether, and will not be required once support for RoF is finalized in EQEmu.

blindaviator 12-30-2012 03:49 PM

I misunderstood somewhere along the way then... Sorry about that

rhyotte 12-31-2012 12:53 AM

Yeah the RoF client is kind of a big deal sir. ;)

I am not saying I do not like / love SoD client, but progress is RoF. RoF brings a lot of good thing's. Embrace it! It is the future sir! :)

Have a good one!
Gary

trevius 01-03-2013 02:01 PM

RoF is moving along nicely and many of the core systems are now functional. There are still plenty of things that need to be fixed, but I am sure many of them are minor things that shouldn't be too hard to resolve once they are identified.

I am going to leave up my RoF test server so players who have RoF can log in and check it out. It is a test server, so I won't be warning when I need to do reboots while I am working on stuff. Also, it is only a temporary server that will be shut down after RoF work is done, so don't get attached to it.

The server is named "[RoF] Rain of Fear GM Test Server (Non-Legit)" in the white section of servers. It is a standard PEQ build, but I enabled many of the useful GM commands people like to play with, which is mainly to allow for easy access to testing just about anything you want.

Feel free to try out the server and review the list of RoF issues in the first post of this thread. Here is a list of guidelines for posting any issues you find:
1. If you find any issues that exist in RoF and did NOT exist in earlier clients such as UF, SoD, SoF, or Titanium, please post the issue with details that will help us investigate it.
2. Do not post issues with new systems that did not exist in previous clients. For example, /bazaar seaching in zones outside of bazaar was not supported in previous clients, so do not report that as an issue.
3. Only post about issues with system that existed and were functional in previous clients. For example; Extended Targets works in UF, so it should work the same in RoF.
4. Do not post issues that are already listed or have been posted about already unless you are adding more details you think would be useful.

You can type #help for a list of GM commands that are available to you.

If your character gets bugged, you should be able to just camp and relog and it should resolve it. Let me know if there are any questions. If there are lots of bug reports, I may move the bug discussion to a new thread in the bugs section like we had for previous client development.

Secrets 01-03-2013 05:11 PM

- Death does not work. You get kicked to character select upon death.
- #race needs to be updated to support the new races.
- Zoning to new RoF zones requires expansion variables to be set in the expansions owned part of the membership struct to allow for zone entry via #zone, seems to be client limited.

alulla 01-04-2013 12:07 AM

Guild Masters Do not have any abilities to train other than languages
Tribute master windows track the current favor but do not have any benefits in the windows.
Songs and short duration buffs do not show up.Selo's accelerating chorus does however.

trevius 01-04-2013 03:28 AM

Thanks to the people who have logged into my test server so far and helped investigate issues. We have found a good chunk of the issues so far, but I am sure there are still plenty left to find. I added the stuff that was found to the list in the first post of this thread.

FievelMousey 01-04-2013 04:51 AM

Oh I tried put a Tink bag inside a tink bag every time I did it said I was hacking eariler forgot post that and any item for then on I put in bag got deleted. And for people get client locked try loot all got do zone it will fix that issue without having log out etc.

FievelMousey 01-04-2013 05:02 AM

Well I just tried putting bag inside another bag this tiem never got error maybe you found fixed issue. I even tried putting items in no error so that seems fixed or was one time thing.


All times are GMT -4. The time now is 04:40 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.