Skip to content

Result command 130: EndChain#1087

Merged
pacampbell merged 2 commits into
sebastian-heinz:developfrom
hankhotspur:develop
Jun 29, 2026
Merged

Result command 130: EndChain#1087
pacampbell merged 2 commits into
sebastian-heinz:developfrom
hankhotspur:develop

Conversation

@hankhotspur

Copy link
Copy Markdown
Contributor
  • Renames result command 130 from CheckSubstoryCondition to EndChain
  • Adds structure CDataStageLayoutInfo.cs
  • Renames packet S2C_63_5_16_NTC to C2S_CHAIN_DUNGEON_END_CHAIN_NTC and packet S2C_63_6_16_NTC to S2C_CHAIN_DUNGEON_REWARD_CHEST_APPEAR_NTC
  • S2C_63_7_16_NTC now uses CDataStageLayoutInfo

using Arrowgene.Buffers;
using Arrowgene.Ddon.Shared.Model.Quest;

namespace Arrowgene.Ddon.Shared.Entity.Structure

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We must have this structure already defined. Maybe with a slightly different name to match PS4 symbols?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am wondering if it is these gathering structs? They have similar info?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did look around a bit, but I didn't find any structure with these exact fields. I would assume the person who wrote 63_7_16 didn't either?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did look around a bit, but I didn't find any structure with these exact fields. I would assume the person who wrote 63_7_16 didn't either?

I probably wrote that but didn't make the connection. Is this the name of the struct in PS4 symbols? If not can you check one time and see if you can find one before we settle on this name. That way if it does exist we can try to look at the code that used it to understand the system in the legacy clients.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking at the IDA decomp, they used CDataStageLayoutId and PosId instead of having a structure with all four fields:

s32 __fastcall nUserSession::CPacket_C2S_GET_GATHERING_ITEM_REQ::WritePacket(nUserSession::CPacket_C2S_GET_GATHERING_ITEM_REQ *this, CPacket *pPacket, const CStageLayoutID *in_LayoutId, u32 in_PosId, const MtTypedArray_0 *in_GatheringItemGetRequestList);

@hankhotspur hankhotspur marked this pull request as ready for review June 29, 2026 12:26
@pacampbell pacampbell merged commit c0099fe into sebastian-heinz:develop Jun 29, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants