-
Notifications
You must be signed in to change notification settings - Fork 241
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updates to Fellowship locking #3044
Conversation
Source/ACE.Server/Network/GameEvent/Events/GameEventFellowshipFullUpdate.cs
Outdated
Show resolved
Hide resolved
Writer.Write(kvp.Value); | ||
} | ||
|
||
Writer.Write(fellowship.FellowshipLocks); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This does not match https://acemulator.github.io/protocol/Messages/0x02BE-S2C.html, nor does it match any of the code in pdb for acclient.exe
See the relevant functions: UIQueueManager::ProcessNetBlobData -> CM_Fellowship::DispatchUI_FullUpdate -> Fellowship::UnPack
-> ClientFellowshipSystem::Handle_Fellowship__FullUpdate
, specifically Fellowship:UnPack
The fellowship data structure ends at DepartedMembers, according to the client processing for this packet
Is this a feature that was added after the client pdb?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
its not found in UnPack, but is sent across wire. Not sure where in the client, but aclogview decodes it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Is this a feature that was added after the client pdb?"
Any answer to this question?
The pdb client doesn't use this data after DepartedMembers at all. The only explanation would be if this locking data structure was added at the end of the game, after the pdb client.
These PRs also need an explanation of what the changes actually are, the reasoning for the changes, and repro steps to test them. What effect does this have on the client, and how can it be tested?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure where in the client, but aclogview decodes it
it was sent across the wire. it probably has no purpose to the client
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looking in the final client, sub_5BA630 is Fellowship::UnPack
it looks to have no additional logic, and matches the pdb verison... DepartedFellows is the last thing it uses
if this data is completely unused by anything, and has 0 effect on the client or anything in the game, what is the purpose of this code if it does nothing?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
to fill out aclogview parse.. the data was there as Writer.Write((uint)0x00200000);
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No description provided.