Decompile fn_23513 (CSession::InitJobKeyNames)

Batch #7621 by Yommy: 0 byte-identical, 1 confirmed by peer review.

- fn_23513 CSession::InitJobKeyNames: logic confirmed by peer review

Peer-reviewed-by: Lumen, superintelligence
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
ragnarok-clanker 2026-10-31 10:46:44 +00:00
commit 1f0ccc2e20
2 changed files with 179 additions and 0 deletions

View file

@ -2503,3 +2503,179 @@ void CSession::ClearAchievements() {
this->unknown_615C = 0;
this->unknown_6178.clear();
}
// OFFSET: 0x00DDC9D0
// OFFSET: 0x00DE3410
// OFFSET: 0x00DF8670
// OFFSET: 0x00DF8C40
// FUNCTION: fn_23513
void CSession::InitJobKeyNames() {
std::vector<const char*>& names = reinterpret_cast<std::vector<const char*>&>(this->unknown_0FC4[0x14]);
names.resize(JT_2004_JOB_LAST, "NOVICE");
names[JT_NOVICE] = "NOVICE";
names[JT_SUPERNOVICE] = "SUPERNOVICE";
names[JT_PORING_NOVICE] = "PORING_NOVICE";
names[JT_PORING_SNOVICE] = "PORING_SNOVICE";
names[JT_GUNSLINGER] = "GUNSLINGER";
names[JT_REBELLION] = "REBELLION";
names[JT_NINJA] = "NINJA";
names[JT_KAGEROU] = "KAGEROU";
names[JT_OBORO] = "OBORO";
names[JT_TAEKWON] = "TAEKWON";
names[JT_STAR] = "STAR";
names[JT_STAR_EMPEROR] = "STAR_EMPEROR";
names[JT_LINKER] = "LINKER";
names[JT_SOUL_REAPER] = "SOUL_REAPER";
names[JT_STAR2] = "STAR2";
names[JT_STAR2_EMPEROR] = "STAR2_EMPEROR";
names[JT_PECO_GUNNER] = "PECO_GUNNER";
names[JT_PECO_REBELLION] = "PECO_REBELLION";
names[JT_FROG_NINJA] = "FROG_NINJA";
names[JT_FROG_KAGEROU] = "FROG_KAGEROU";
names[JT_FROG_OBORO] = "FROG_OBORO";
names[JT_PORING_TAEKWON] = "PORING_TAEKWON";
names[JT_PORING_STAR] = "PORING_STAR";
names[JT_HAETAE_STAR_EMPEROR] = "HAETAE_STAR_EMPEROR";
names[JT_FROG_LINKER] = "FROG_LINKER";
names[JT_HAETAE_SOUL_REAPER] = "HAETAE_SOUL_REAPER";
names[JT_SWORDMAN] = "SWORDMAN";
names[JT_KNIGHT] = "KNIGHT";
names[JT_KNIGHT_H] = "KNIGHT_H";
names[JT_RUNE_KNIGHT] = "RUNE_KNIGHT";
names[JT_CRUSADER] = "CRUSADER";
names[JT_CRUSADER_H] = "CRUSADER_H";
names[JT_ROYAL_GUARD] = "ROYAL_GUARD";
names[JT_CHICKEN] = "CHICKEN";
names[JT_CHICKEN_H] = "CHICKEN_H";
names[JT_RUNE_CHICKEN] = "RUNE_CHICKEN";
names[JT_CHICKEN2] = "CHICKEN2";
names[JT_CHICKEN2_H] = "CHICKEN2_H";
names[JT_ROYAL_CHICKEN] = "ROYAL_CHICKEN";
names[JT_PECO_SWORD] = "PECO_SWORD";
names[JT_LION_KNIGHT] = "LION_KNIGHT";
names[JT_LION_KNIGHT_H] = "LION_KNIGHT_H";
names[JT_LION_RUNE_KNIGHT] = "LION_RUNE_KNIGHT";
names[JT_LION_CRUSADER] = "LION_CRUSADER";
names[JT_LION_CRUSADER_H] = "LION_CRUSADER_H";
names[JT_LION_ROYAL_GUARD] = "LION_ROYAL_GUARD";
names[JT_RUNE_CHICKEN2] = "RUNE_CHICKEN2";
names[JT_RUNE_CHICKEN3] = "RUNE_CHICKEN3";
names[JT_RUNE_CHICKEN4] = "RUNE_CHICKEN4";
names[JT_RUNE_CHICKEN5] = "RUNE_CHICKEN5";
names[JT_MAGICIAN] = "MAGICIAN";
names[JT_WIZARD] = "WIZARD";
names[JT_WIZARD_H] = "WIZARD_H";
names[JT_WARLOCK] = "WARLOCK";
names[JT_SAGE] = "SAGE";
names[JT_SAGE_H] = "SAGE_H";
names[JT_SORCERER] = "SORCERER";
names[JT_FOX_MAGICIAN] = "FOX_MAGICIAN";
names[JT_FOX_WIZ] = "FOX_WIZ";
names[JT_FOX_HWIZ] = "FOX_HWIZ";
names[JT_FOX_WARLOCK] = "FOX_WARLOCK";
names[JT_FOX_SAGE] = "FOX_SAGE";
names[JT_FOX_PROF] = "FOX_PROF";
names[JT_FOX_SORCERER] = "FOX_SORCERER";
names[JT_ACOLYTE] = "ACOLYTE";
names[JT_PRIEST] = "PRIEST";
names[JT_PRIEST_H] = "PRIEST_H";
names[JT_ARCHBISHOP] = "ARCHBISHOP";
names[JT_MONK] = "MONK";
names[JT_MONK_H] = "MONK_H";
names[JT_SURA] = "SURA";
names[JT_SHEEP_ACO] = "SHEEP_ACO";
names[JT_SHEEP_PRIEST] = "SHEEP_PRIEST";
names[JT_SHEEP_HPRIEST] = "SHEEP_HPRIEST";
names[JT_SHEEP_ARCB] = "SHEEP_ARCB";
names[JT_SHEEP_MONK] = "SHEEP_MONK";
names[JT_SHEEP_CHAMP] = "SHEEP_CHAMP";
names[JT_SHEEP_SURA] = "SHEEP_SURA";
names[JT_MERCHANT] = "MERCHANT";
names[JT_BLACKSMITH] = "BLACKSMITH";
names[JT_BLACKSMITH_H] = "BLACKSMITH_H";
names[JT_MECHANIC] = "MECHANIC";
names[JT_ALCHEMIST] = "ALCHEMIST";
names[JT_ALCHEMIST_H] = "ALCHEMIST_H";
names[JT_GENETIC] = "GENETIC";
names[JT_MADOGEAR] = "MADOGEAR";
names[JT_PIG_MERCHANT] = "PIG_MERCHANT";
names[JT_PIG_BLACKSMITH] = "PIG_BLACKSMITH";
names[JT_PIG_WHITESMITH] = "PIG_WHITESMITH";
names[JT_PIG_MECHANIC] = "PIG_MECHANIC";
names[JT_PIG_ALCHE] = "PIG_ALCHE";
names[JT_PIG_CREATOR] = "PIG_CREATOR";
names[JT_PIG_GENETIC] = "PIG_GENETIC";
names[JT_THIEF] = "THIEF";
names[JT_ASSASSIN] = "ASSASSIN";
names[JT_ASSASSIN_H] = "ASSASSIN_H";
names[JT_GUILLOTINE_CROSS] = "GUILLOTINE_CROSS";
names[JT_ROGUE] = "ROGUE";
names[JT_ROGUE_H] = "ROGUE_H";
names[JT_SHADOW_CHASER] = "SHADOW_CHASER";
names[JT_DOG_THIEF] = "DOG_THIEF";
names[JT_DOG_ASSASSIN] = "DOG_ASSASSIN";
names[JT_DOG_ASSA_X] = "DOG_ASSA_X";
names[JT_DOG_G_CROSS] = "DOG_G_CROSS";
names[JT_DOG_ROGUE] = "DOG_ROGUE";
names[JT_DOG_STALKER] = "DOG_STALKER";
names[JT_DOG_CHASER] = "DOG_CHASER";
names[JT_ARCHER] = "ARCHER";
names[JT_HUNTER] = "HUNTER";
names[JT_HUNTER_H] = "HUNTER_H";
names[JT_RANGER] = "RANGER";
names[JT_BARD] = "BARD";
names[JT_BARD_H] = "BARD_H";
names[JT_MINSTREL] = "MINSTREL";
names[JT_DANCER] = "DANCER";
names[JT_DANCER_H] = "DANCER_H";
names[JT_WANDERER] = "WANDERER";
names[JT_WOLF_RANGER] = "WOLF_RANGER";
names[JT_OSTRICH_ARCHER] = "OSTRICH_ARCHER";
names[JT_OSTRICH_HUNTER] = "OSTRICH_HUNTER";
names[JT_OSTRICH_SNIPER] = "OSTRICH_SNIPER";
names[JT_OSTRICH_RANGER] = "OSTRICH_RANGER";
names[JT_OSTRICH_BARD] = "OSTRICH_BARD";
names[JT_OSTRICH_CROWN] = "OSTRICH_CROWN";
names[JT_OSTRICH_MINSTREL] = "OSTRICH_MINSTREL";
names[JT_OSTRICH_DANCER] = "OSTRICH_DANCER";
names[JT_OSTRICH_ZIPSI] = "OSTRICH_ZIPSI";
names[JT_OSTRICH_WANDER] = "OSTRICH_WANDER";
names[JT_DO_SUMMONER] = "DO_SUMMONER";
names[JT_DO_CART_SUMMONER] = "DO_CART_SUMMONER";
names[JT_MARRIED] = "MARRIED";
names[JT_SANTA] = "SANTA";
names[JT_SUMMER] = "SUMMER";
names[JT_HANBOK] = "HANBOK";
names[JT_OKTOBERFEST] = "OKTOBERFEST";
names[JT_SUMMER2] = "SUMMER2";
names[JT_CHICKEN2_B] = "CHICKEN2_B";
names[309] = "BIOLO";
names[322] = "BIOLO_RIDING";
names[303] = "MEISTER";
names[316] = "MEISTER_RIDING";
names[329] = "MEISTER_MADOGEAR1";
names[302] = "DRAGON_KNIGHT";
names[315] = "DRAGON_KNIGHT_RIDING";
names[330] = "DRAGON_KNIGHT_CHICKEN";
names[308] = "IMPERIAL_GUARD";
names[321] = "IMPERIAL_GUARD_RIDING";
names[331] = "IMPERIAL_GUARD_CHICKEN";
names[352] = "SKY_EMPEROR";
names[366] = "SKY_EMPEROR2";
names[359] = "SKY_EMPEROR_RIDING";
names[353] = "SOUL_ASCETIC";
names[360] = "SOUL_ASCETIC_RIDING";
names[354] = "SHINKIRO";
names[361] = "SHINKIRO_RIDING";
names[355] = "SHIRANUI";
names[362] = "SHIRANUI_RIDING";
names[356] = "NIGHT_WATCH";
names[363] = "NIGHT_WATCH_RIDING";
names[357] = "HYPER_NOVICE";
names[364] = "HYPER_NOVICE_RIDING";
names[358] = "SPIRIT_HANDLER";
names[365] = "SPIRIT_HANDLER_RIDING";
}