This repository was archived by the owner on Oct 12, 2026. It is now read-only.
Repository navigation
Fellowships: Document opcodes and add proper responses #467
Merged
Merged
Changes from 3 commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| use binrw::binrw; | ||
| use bstr::BString; | ||
|
|
||
| use crate::{ | ||
| common::{ | ||
| CHAR_NAME_MAX_LENGTH, ClientLanguage, read_sestring, read_string, write_sestring, | ||
| write_string, | ||
| }, | ||
| ipc::zone::{FellowshipActivityTag, SocialListUILanguages}, | ||
| }; | ||
|
|
||
| #[binrw] | ||
| #[derive(Clone, Default, Debug)] | ||
| pub struct FellowshipSearchInfo { | ||
| /// The Fellowship's community id (assumed). | ||
| pub community_id: u64, | ||
| /// The master or recruiter's content id (assumed). | ||
| pub master_content_id: u64, // TODO: Figure out which content id is which | ||
| /// The recruiter or master's content id (assumed). | ||
| pub recruiter_content_id: u64, | ||
| /// A 32-bit UNIX timestamp indicating when this recruitment listing will expire. | ||
| pub recruitment_deadline: u32, | ||
| /// The languages this Fellowship is seeking. | ||
| pub languages: SocialListUILanguages, // Fellowship language(s), this might be SocialListUILanguages | ||
| #[brw(pad_before = 3, pad_after = 3)] // Probably just padding | ||
| /// The primary/underlined language of this Fellowship. This seems to be set to the recruiter's client language at the time of Fellowship's creation, or during the time of starting a recruitment listing. | ||
| pub primary_language: ClientLanguage, // 0 = Japanese, 1 = English, 2 = German, 3 = French | ||
|
redstrate marked this conversation as resolved.
Outdated
|
||
| /// The home world of the Fellowship's recruiter. | ||
| pub recruiter_world_id: u16, | ||
| /// The home world of the Fellowship's master. | ||
| pub master_world_id: u16, | ||
| /// The current number of members in this Fellowship, out of 1000 (but the client will display numbers higher than 1000). | ||
| pub current_member_count: u16, | ||
| /// The number of members the recruiter is attempting to reach (up to 1000, but the client can display up to 65,535 properly). | ||
| pub target_member_count: u16, | ||
| /// The Fellowship's first activity icon. References the CircleActivity excel sheet. | ||
| pub activity1: FellowshipActivityTag, | ||
| pub unk1: [u8; 4], // Has values in it, but it's unclear what they control yet. Changing them doesn't seem to affect what the client shows in the Finder window. | ||
| /// The Fellowship's second activity icon. References the CircleActivity excel sheet. | ||
| pub activity2: FellowshipActivityTag, | ||
| /// The fellowship's third activity icon. References the CircleActivity excel sheet. | ||
| pub activity3: FellowshipActivityTag, | ||
| /// The name of the Fellowship. It can be up to 60 characters in length (fewer if using Unicode glyphs). | ||
| #[brw(pad_size_to = 61)] | ||
| #[br(count = 60)] | ||
| #[br(map = read_string)] | ||
| #[bw(map = write_string)] | ||
| pub fellowship_name: String, | ||
| /// The Fellowship recruiter's name. The recruiter can be the same person as the master. | ||
| #[brw(pad_size_to = CHAR_NAME_MAX_LENGTH)] | ||
| #[br(count = CHAR_NAME_MAX_LENGTH)] | ||
| #[br(map = read_string)] | ||
| #[bw(map = write_string)] | ||
| pub recruiter_name: String, | ||
| /// The Fellowship master's name. | ||
| #[brw(pad_size_to = CHAR_NAME_MAX_LENGTH)] | ||
| #[br(count = CHAR_NAME_MAX_LENGTH)] | ||
| #[br(map = read_string)] | ||
| #[bw(map = write_string)] | ||
| pub master_name: String, | ||
| /// The Fellowship's text description. This can be up to 192 characters in length (fewer if using Unicode glyphs). | ||
| #[brw(pad_after = 5)] | ||
| #[brw(pad_size_to = 192)] | ||
| #[br(count = 192)] | ||
| #[br(map = read_sestring)] | ||
| #[bw(map = write_sestring)] | ||
| pub fellowship_description: BString, // NOTE: This is a BString due to the fact that SEString macros can appear in its contents. | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.