Skip to main content

B1CareerKey

  • Identifies a character's career entry, including the career entity ID,
    * company and job data table IDs, experience, level, and site identifier.
PropertyTypeDescriptionMetadata
CareerEntityIdFB1EntityIdEntity ID of this career instance.
CareerDtIdFNameData table ID of the company for this career.Foreign: Company.Id
JobDtIdFNameData table ID of the job for this career.Foreign: Job.Id
ExpfloatCurrent experience points accumulated in this career.
Rankint32Current rank in this career.
SiteStrIdFStringString identifier of the site associated with this career.
EvaluationScoreint32Current performance evaluation score (0 to 100). Synced from B2 via S_UpdateCareerEvaluationScore.
SchoolGradeEB1SchoolGradeSchool-only weekly evaluation grade cache. Synced from B2 via S_UpdateSchoolGrade.
bSchoolHadEvaluationboolSchool-only: whether B2 weekly evaluation has started
SchoolAttendanceScoreint32School-only weekly evaluation item scores cache (0~max per UB1SchoolDataAsset).
* Synced from B2 via S_UpdateSchoolWeeklyResult (sent from FB2School::FinalizeWeeklyEvaluation).
* Full-score reference: AttendanceFullScore=15 / ClassParticipationBase=25 / HomeworkFullScore=20 / ExamMaxScore=40 / RelationshipBonusMax=10.
* The "not yet evaluated" state has no dedicated field and is determined by SchoolGrade == EB1SchoolGrade::None (synced at the same time as S_UpdateSchoolGrade).
SchoolParticipationScoreint32School-only: weekly class participation score cache (max 25).
SchoolHomeworkScoreint32School-only: weekly homework score cache (max 20).
SchoolExamScoreint32School-only: weekly exam score cache (max 40).
SchoolRelationshipScoreint32School-only: weekly relationship bonus score cache (max 10).
SchoolClassIndexint32School-only: class section index assigned to this student (0-based). INDEX_NONE if not yet assigned.
* Synced from B2 via S_UpdateSchoolClassIndex when AssignStudentToSection succeeds.
* Used by the per-weekday timetable of the school life tab (BW_WBP_Timetable_0~4) — FB1SchoolClassScheduleTableRow.ClassSchedules[ClassIndex].
LeaderEntityIdFB1EntityIdClub-only: EntityId of the club leader (highest-rank member). Synced when the player's own joined-club response arrives in ResponseCareerUIData.
* Used by the school ProfileWidget's BW_Text_Leader for EntityId->name lookup. No display when Invalid.
TeamProjectFB1CareerTeamProjectCacheCache of the TeamProject in progress for this career. Updated when the S_UpdateTeamProject packet is received.
* Sent only for ResidenceFamily members, so a non-own-family character's CareerKey keeps the default value.
PendingWorkModeEB1WorkModePending remote work mode for the next work day.
ActiveWorkModeEB1WorkModeCurrently active work mode for today.
UnexcusedAbsenceCountint32Cumulative unexcused absence count.
AttendanceDaysint32Cumulative attendance days. Synced from B2 via S_UpdateCareerStatus.
RemainingVacationDaysint32Remaining paid vacation days. Synced from B2 via S_UpdateCareerVacationStatus.
NextDayVacationTypeEB1CareerVacationTypeVacation type scheduled for the next workday. Synced from B2 via S_UpdateCareerVacationStatus.
NextWorkdayEB1DayOfWeekNext actual work day after skipping scheduled vacation days.
* Synced from B2 via S_UpdateCareerVacationStatus. Valid only while NextDayVacationType != None.