horsegen: generate skill groups in go

This commit is contained in:
2026-01-16 21:26:30 -05:00
parent dc2094bd50
commit 19fb713aaa
3 changed files with 260 additions and 0 deletions

View File

@@ -5,6 +5,7 @@ import "os"
//go:generate go run ./horsegen //go:generate go run ./horsegen
//go:generate go generate ./horse/... //go:generate go generate ./horse/...
//go:generate go fmt ./... //go:generate go fmt ./...
//go:generate go test ./...
func main() { func main() {
os.Stderr.WriteString("go generate, not go run\n") os.Stderr.WriteString("go generate, not go run\n")

View File

@@ -12354,3 +12354,256 @@ var SkillNameToID = map[string]SkillID{
"Give Mummy a Hug ♡" + " (Inherited)": 910451, "Give Mummy a Hug ♡" + " (Inherited)": 910451,
"Bountiful Harvest" + " (Inherited)": 910561, "Bountiful Harvest" + " (Inherited)": 910561,
} }
var SkillGroups = map[int32][4]SkillID{
1007: {SkillWarningShot},
1008: {SkillXceleration},
1009: {SkillRedAce},
1011: {SkillFocusedMind},
1014: {SkillCorazónArdiente},
1018: {SkillEmpresssPride},
1024: {SkillFirstPlaceKiss},
1027: {SkillFeeltheBurn},
1032: {SkillIntroductiontoPhysiology},
1035: {SkillVIsforVictory},
1041: {SkillClassRepSpeedBakushin},
1045: {SkillClearHeart},
1052: {SkillSuperDuperStoked},
1056: {SkillLuckBewithMe},
1060: {SkillICanWinSometimesRight},
1061: {SkillCallMeKing},
10001: {SkillShootingStar, SkillShootingStarInherit},
10002: {SkillTheViewfromtheLeadIsMine, SkillTheViewfromtheLeadIsMineInherit},
10003: {SkillSkyHighTeioStep, SkillSkyHighTeioStepInherit},
10004: {SkillRedShiftLP1211M, SkillRedShiftLP1211MInherit},
10005: {SkillLightsofVaudeville, SkillLightsofVaudevilleInherit},
10006: {SkillTriumphantPulse, SkillTriumphantPulseInherit},
10007: {SkillAnchorsAweigh, SkillAnchorsAweighInherit},
10008: {SkillCutandDrive, SkillCutandDriveInherit},
10009: {SkillResplendentRedAce, SkillResplendentRedAceInherit},
10010: {SkillShootingforVictory, SkillShootingforVictoryInherit},
10011: {SkillWhereTheresaWillTheresaWay, SkillWhereTheresaWillTheresaWayInherit},
10012: {SkillYouandMeOneonOne, SkillYouandMeOneonOneInherit},
10013: {SkillTheDutyofDignityCalls, SkillTheDutyofDignityCallsInherit},
10014: {SkillVictoriaporplancha, SkillVictoriaporplanchaInherit},
10015: {SkillThisDanceIsforVittoria, SkillThisDanceIsforVittoriaInherit},
10016: {SkillShadowBreak, SkillShadowBreakInherit},
10017: {SkillBeholdThineEmperorsDivineMight, SkillBeholdThineEmperorsDivineMightInherit},
10018: {SkillBlazingPride, SkillBlazingPrideInherit},
10019: {SkillOMGTheFinalSprint, SkillOMGTheFinalSprintInherit},
10020: {SkillAnglingandScheming, SkillAnglingandSchemingInherit},
10022: {SkillFairyTale, SkillFairyTaleInherit},
10023: {SkillWinQED, SkillWinQEDInherit},
10024: {SkillFlashyLanding, SkillFlashyLandingInherit},
10025: {SkillChasingAfterYou, SkillChasingAfterYouInherit},
10026: {SkillG00FirstFInfinity, SkillG00FirstFInfinityInherit},
10027: {SkillLetsPumpSomeIron, SkillLetsPumpSomeIronInherit},
10028: {SkillYUMMYSPEED, SkillYUMMYSPEEDInherit},
10030: {SkillBlueRoseCloser, SkillBlueRoseCloserInherit},
10032: {SkillUma2, SkillUma2Inherit},
10035: {SkillOurTickettoWin, SkillOurTickettoWinInherit},
10037: {SkillSchwarzesSchwert, SkillSchwarzesSchwertInherit},
10038: {SkillLookatCurren, SkillLookatCurrenInherit},
10039: {SkillAPrincessMustSeizeVictory, SkillAPrincessMustSeizeVictoryInherit},
10040: {SkillKEEPITREAL, SkillKEEPITREALInherit},
10041: {SkillGeniusxBakushinVictory, SkillGeniusxBakushinVictoryInherit},
10045: {SkillPureHeart, SkillPureHeartInherit},
10046: {SkillSPARKLYSTARDOM, SkillSPARKLYSTARDOMInherit},
10048: {SkillPopAndPolish, SkillPopAndPolishInherit},
10050: {SkillNemesis, SkillNemesisInherit},
10052: {SkillSuperDuperClimax, SkillSuperDuperClimaxInherit},
10056: {SkillISeeVictoryinMyFuture, SkillISeeVictoryinMyFutureInherit},
10058: {SkillINeverGoofUp, SkillINeverGoofUpInherit},
10059: {SkillMovingPastandBeyond, SkillMovingPastandBeyondInherit},
10060: {SkillJustaLittleFarther, SkillJustaLittleFartherInherit},
10061: {SkillPridefulKing, SkillPridefulKingInherit},
11001: {SkillDazzlnDiver, SkillDazzlnDiverInherit},
11003: {SkillCertainVictory, SkillCertainVictoryInherit},
11004: {SkillAKissforCourage, SkillAKissforCourageInherit},
11006: {SkillFestiveMiracle, SkillFestiveMiracleInherit},
11011: {SkillSuperiorHeal, SkillSuperiorHealInherit},
11013: {SkillLegacyoftheStrong, SkillLegacyoftheStrongInherit},
11014: {SkillCondorsFury, SkillCondorsFuryInherit},
11017: {SkillArrowsWhistleShadowsDisperse, SkillArrowsWhistleShadowsDisperseInherit},
11018: {SkillEternalMoments, SkillEternalMomentsInherit},
11023: {SkillPresentsfromX, SkillPresentsfromXInherit},
11024: {SkillFloweryManeuver, SkillFloweryManeuverInherit},
11030: {SkillEveryRoseHasItsFangs, SkillEveryRoseHasItsFangsInherit},
11040: {SkillDancingintheLeaves, SkillDancingintheLeavesInherit},
11045: {SkillGiveMummyaHug, SkillGiveMummyaHugInherit},
11056: {SkillBountifulHarvest, SkillBountifulHarvestInherit},
20001: {SkillRightHandedLv2, SkillRightHanded, SkillRightHandedX},
20002: {SkillLeftHandedLv2, SkillLeftHanded, SkillLeftHandedX},
20003: {SkillTokyoRacecourseLv2, SkillTokyoRacecourse, SkillTokyoRacecourseX},
20004: {SkillNakayamaRacecourseLv2, SkillNakayamaRacecourse, SkillNakayamaRacecourseX},
20005: {SkillHanshinRacecourseLv2, SkillHanshinRacecourse, SkillHanshinRacecourseX},
20006: {SkillKyotoRacecourseLv2, SkillKyotoRacecourse, SkillKyotoRacecourseX, SkillYodoInvicta},
20007: {SkillChukyoRacecourseLv2, SkillChukyoRacecourse, SkillChukyoRacecourseX},
20008: {SkillSapporoRacecourseLv2, SkillSapporoRacecourse, SkillSapporoRacecourseX},
20009: {SkillHakodateRacecourseLv2, SkillHakodateRacecourse, SkillHakodateRacecourseX},
20010: {SkillFukushimaRacecourseLv2, SkillFukushimaRacecourse, SkillFukushimaRacecourseX},
20011: {SkillNiigataRacecourseLv2, SkillNiigataRacecourse, SkillNiigataRacecourseX},
20012: {SkillKokuraRacecourseLv2, SkillKokuraRacecourse, SkillKokuraRacecourseX},
20013: {SkillStandardDistanceLv2, SkillStandardDistance, SkillStandardDistanceX},
20014: {SkillNonStandardDistanceLv2, SkillNonStandardDistance, SkillNonStandardDistanceX},
20015: {SkillFirmConditionsLv2, SkillFirmConditions, SkillFirmConditionsX},
20016: {SkillWetConditionsLv2, SkillWetConditions, SkillWetConditionsX},
20017: {SkillSpringRunnerLv2, SkillSpringRunner, SkillSpringRunnerX},
20018: {SkillSummerRunnerLv2, SkillSummerRunner, SkillSummerRunnerX},
20019: {SkillFallRunnerLv2, SkillFallRunner, SkillFallRunnerX, SkillFallFrenzy},
20020: {SkillWinterRunnerLv2, SkillWinterRunner, SkillWinterRunnerX},
20021: {SkillSunnyDaysLv2, SkillSunnyDays},
20022: {SkillCloudyDaysLv2, SkillCloudyDays},
20023: {SkillRainyDaysLv2, SkillRainyDays, SkillRainyDaysX},
20024: {SkillSnowyDaysLv2, SkillSnowyDays},
20025: {SkillInnerPostProficiencyLv2, SkillInnerPostProficiency, SkillInnerPostAverseness},
20026: {SkillOuterPostProficiencyLv2, SkillOuterPostProficiency, SkillOuterPostAverseness},
20027: {SkillMaverickLv2, SkillMaverick},
20028: {SkillCompetitiveSpiritLv2, SkillCompetitiveSpirit, SkillWallflower},
20029: {SkillTargetinSightLv2, SkillTargetinSight},
20030: {SkillLongShotLv2, SkillLongShot},
20033: {SkillProfessorofCurvature, SkillCornerAdept, SkillCornerAdeptX},
20034: {SkillCornerConnoisseur, SkillCornerAcceleration, SkillCornerAccelerationX},
20035: {SkillSwingingMaestro, SkillCornerRecovery, SkillCornerRecoveryX},
20036: {SkillBeelineBurst, SkillStraightawayAdept},
20037: {SkillRushingGale, SkillStraightawayAcceleration},
20038: {SkillBreathofFreshAir, SkillStraightawayRecovery},
20043: {SkillConcentration, SkillFocus, SkillGatekept},
20044: {SkillIronWill, SkillLayLow},
20045: {SkillCenterStage, SkillPrudentPositioning},
20046: {SkillItsOn, SkillRampUp},
20047: {SkillIndomitable, SkillPaceStrategy},
20048: {SkillUnruffled, SkillCalminaCrowd},
20049: {SkillNoStoppingMe, SkillNimbleNavigator},
20050: {SkillLaneLegerdemain, SkillGowiththeFlow},
20051: {SkillInBodyandMind, SkillHomestretchHaste},
20053: {SkillTakingtheLead, SkillEarlyLead},
20054: {SkillEscapeArtist, SkillFastPaced},
20055: {SkillUnrestrained, SkillFinalPush},
20056: {SkillCalmandCollected, SkillStaminatoSpare},
20057: {SkillRacePlanner, SkillPreferredPosition},
20058: {SkillSpeedStar, SkillPreparedtoPass},
20059: {SkillFastAndFurious, SkillPositionPilfer},
20060: {SkillOnYourLeft, SkillSlickSurge},
20061: {SkillRisingDragon, SkillOuterSwell},
20062: {SkillSleepingLion, SkillStandingBy},
20063: {SkillSturmundDrang, SkillMasterfulGambit},
20064: {SkillEncroachingShadow, SkillStraightawaySpurt},
20065: {SkillTurboSprint, SkillSprintingGear},
20066: {SkillWaitandSee},
20067: {SkillBlindingFlash, SkillGapCloser},
20068: {SkillMileMaven, SkillProductivePlan},
20069: {SkillKeenEye, SkillWatchfulEye},
20070: {SkillFuriousFeat, SkillUpdrafters},
20071: {SkillTrackblazer, SkillRosyOutlook},
20072: {SkillKillerTunes, SkillUpTempo},
20073: {SkillUnyielding, SkillSteadfast},
20074: {SkillCooldown, SkillDeepBreaths},
20075: {SkillInnateExperience, SkillInsideScoop},
20076: {SkillAdrenalineRush, SkillExtraTank},
20077: {SkillTrickFront, SkillTantalizingTrick},
20078: {SkillTrickRear},
20079: {SkillFrenziedFrontRunners},
20080: {SkillFrenziedPaceChasers},
20081: {SkillFrenziedLateSurgers},
20082: {SkillFrenziedEndClosers},
20083: {SkillSubduedFrontRunners},
20084: {SkillFlusteredFrontRunners},
20085: {SkillHesitantFrontRunners},
20086: {SkillSubduedPaceChasers},
20087: {SkillFlusteredPaceChasers},
20088: {SkillHesitantPaceChasers},
20089: {SkillSubduedLateSurgers},
20090: {SkillFlusteredLateSurgers},
20091: {SkillHesitantLateSurgers},
20092: {SkillSubduedEndClosers},
20093: {SkillFlusteredEndClosers},
20094: {SkillHesitantEndClosers},
20095: {SkillOiRacecourseLv2, SkillOiRacecourse, SkillOiRacecourseX},
20096: {SkillSprintStraightawaysLv2, SkillSprintStraightaways},
20097: {SkillSprintCornersLv2, SkillSprintCorners},
20098: {SkillStaggeringLead, SkillHugeLead},
20099: {SkillPlanX, SkillCountermeasure},
20100: {SkillPerfectPrep, SkillMeticulousMeasures},
20101: {SkillAdoredbyAll, SkillIntimidate},
20102: {SkillYouveGotNoShot, SkillStopRightThere},
20103: {SkillMileStraightawaysLv2, SkillMileStraightaways},
20104: {SkillMileCornersLv2, SkillMileCorners},
20105: {SkillChangingGears, SkillShiftingGears},
20106: {SkillStepontheGas, SkillAcceleration},
20107: {SkillBigSisterly, SkillUnyieldingSpirit},
20108: {SkillGreedforSpeed, SkillSpeedEater},
20109: {SkillBattleFormation, SkillOpeningGambit},
20110: {SkillMediumStraightawaysLv2, SkillMediumStraightaways},
20111: {SkillMediumCornersLv2, SkillMediumCorners},
20112: {SkillClairvoyance, SkillHawkeye},
20113: {SkillLightningStep, SkillThunderboltStep},
20114: {SkillMiraculousStep, SkillSoftStep},
20115: {SkillDominator, SkillTether},
20116: {SkillMystifyingMurmur, SkillMurmur},
20117: {SkillLongStraightawaysLv2, SkillLongStraightaways},
20118: {SkillLongCornersLv2, SkillLongCorners},
20119: {SkillVanguardSpirit, SkillKeepingtheLead},
20120: {SkillVIPPass, SkillPassingPro},
20121: {SkillOverwhelmingPressure, SkillPressure},
20122: {SkillStaminaSiphon, SkillStaminaEater},
20123: {SkillIllusionist, SkillSmokeScreen},
20124: {SkillFrontRunnerStraightawaysLv2, SkillFrontRunnerStraightaways},
20125: {SkillFrontRunnerCornersLv2, SkillFrontRunnerCorners},
20126: {SkillSixthSense, SkillDodgingDanger},
20127: {SkillLeadersPride},
20128: {SkillRestless, SkillMoxie},
20129: {SkillReignition, SkillSecondWind},
20130: {SkillRestart},
20131: {SkillPaceChaserStraightawaysLv2, SkillPaceChaserStraightaways},
20132: {SkillPaceChaserCornersLv2, SkillPaceChaserCorners},
20133: {SkillTechnician, SkillShrewdStep},
20134: {SkillDeterminedDescent, SkillStraightDescent},
20135: {SkillGourmand, SkillHydrate},
20136: {SkillShatterproof, SkillTacticalTweak},
20137: {SkillDazzlingDisorientation, SkillDisorient},
20138: {SkillLateSurgerStraightawaysLv2, SkillLateSurgerStraightaways},
20139: {SkillLateSurgerCornersLv2, SkillLateSurgerCorners},
20140: {SkillHardWorker, SkillFighter},
20141: {SkillFifteenMillionCC, SkillOneMillionCC},
20142: {SkillRelax, SkillASmallBreather},
20143: {SkillTheBiggerPicture, SkillStudious},
20144: {SkillAllSeeingEyes, SkillSharpGaze},
20145: {SkillEndCloserStraightawaysLv2, SkillEndCloserStraightaways},
20146: {SkillEndCloserCornersLv2, SkillEndCloserCorners},
20147: {SkillTheCoastIsClear, SkillICanSeeRightThroughYou},
20148: {SkillGoHomeSpecialist, SkillAfterSchoolStroll},
20149: {SkillSerenity, SkillLevelheaded},
20150: {SkillCrusader, SkillStrategist},
20151: {SkillPetrifyingGaze, SkillIntenseGaze},
20152: {SkillFrontRunnerSavvyLv2, SkillFrontRunnerSavvy},
20153: {SkillPaceChaserSavvyLv2, SkillPaceChaserSavvy},
20154: {SkillLateSurgerSavvyLv2, SkillLateSurgerSavvy},
20155: {SkillEndCloserSavvyLv2, SkillEndCloserSavvy},
20156: {SkillSuperLuckySeven, SkillLuckySeven},
20157: {SkillTripleSevens},
20158: {SkillHighlander},
20159: {SkillUmaStan, SkillSuperstan},
20160: {SkillGroundwork},
20161: {SkillTailHeldHigh},
20162: {SkillShakeItOut},
20163: {SkillSympathy},
20164: {SkillLoneWolf},
20165: {SkillSlipstream},
20166: {SkillPlaytimesOver},
20167: {SkillTrendingintheCharts, SkillTopPick},
20168: {SkillLeadtheCharge, SkillForwardMarch},
20169: {SkillLieinWait, SkillBeStill},
20170: {SkillComeWhatMay, SkillAllIveGot},
20190: {SkillHeadOn},
20200: {SkillFamiliarGround},
20202: {SkillEarlyStart},
20203: {SkillRiskyBusiness},
21001: {SkillBurningSpiritSPD, SkillIgnitedSpiritSPD},
21002: {SkillBurningSpiritSTA, SkillIgnitedSpiritSTA},
21003: {SkillBurningSpiritPWR, SkillIgnitedSpiritPWR},
21004: {SkillBurningSpiritGUTS, SkillIgnitedSpiritGUTS},
21005: {SkillBurningSpiritWIT, SkillIgnitedSpiritWIT},
30001: {SkillUnquenchedThirst},
30002: {SkillUnchanging},
}

View File

@@ -52,4 +52,10 @@ var SkillNameToID = map[string]SkillID{
{{ printf "%q" $s.Name }}{{ if ne $s.InheritID 0 }} + " (Inherited)"{{ end }}: {{ $s.ID }}, {{ printf "%q" $s.Name }}{{ if ne $s.InheritID 0 }} + " (Inherited)"{{ end }}: {{ $s.ID }},
{{- end }} {{- end }}
} }
var SkillGroups = map[int32][4]SkillID{
{{- range $g := $.Groups }}
{{ $g.ID }}: { {{- range $s := index $.Related $g.ID }}Skill{{ goenum $s.Name }}{{ if ne $s.InheritID 0 }}Inherit{{ end }}, {{ end -}} },
{{- end }}
}
{{ end }} {{ end }}