HenryEx

Rune Factory 4 SysSave Binary Template

Sep 20th, 2020 (edited)
462
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.65 KB | None | 0 0
  1. //--------------------------------------
  2. //--- 010 Editor v8.0 Binary Template
  3. //
  4. // File: rf4s.sav / rf4_sys.sav
  5. // Author: HenryEx
  6. // Revision: 2020-09-22
  7. // Purpose: Display and edit the save selection /
  8. // system settings file in Rune Factory 4
  9. //--------------------------------------
  10.  
  11. //-----------------------------------
  12. // Define enums
  13.  
  14. typedef enum <ubyte> {
  15. EASY,
  16. NORMAL = 64,
  17. HARD = 128
  18. } DIFF;
  19.  
  20. // this is a simple bitflag, but classed as 4byte for padding shenanigans
  21. typedef enum <ulong> {
  22. Male,
  23. Female
  24. } GENDER;
  25.  
  26. // ItemID, 2 bytes but defined as 4 for bitfield shenanigans
  27. typedef enum <ulong> {
  28. Cabbage = 1,
  29. KingCabbage,
  30. PinkTurnip,
  31. ColossalPink,
  32. PinkMelon,
  33. ConquerorMelon,
  34. Onion,
  35. UltraOnion,
  36. Pumpkin,
  37. DoomPumpkin,
  38. Cucumber,
  39. KaiserCucumber,
  40. Corn,
  41. GigantCorn,
  42. Tomato,
  43. TitanTomato,
  44. Eggplant,
  45. EmperorEggplant,
  46. Yam,
  47. LordlyYam,
  48. Potato,
  49. PrincelyPotato,
  50. Carrot,
  51. RoyalCarrot,
  52. GreenPepper,
  53. GreenPepperRex,
  54. Spinach,
  55. SovereignSpinach,
  56. Turnip,
  57. TyrantTurnip,
  58. Radish,
  59. NobleRadish,
  60. Leek,
  61. LegendaryLeek,
  62. BokChoy,
  63. BossBokChoy,
  64. HotHotFruit,
  65. GiantHotHotFruit,
  66. BambooSprout,
  67. GoldenCabbage,
  68. GoldenKingCabbage,
  69. GoldenPumpkin,
  70. GldnDoomPumpkin,
  71. GoldenPotato,
  72. GoldPrincePotato,
  73. GoldenTurnip,
  74. GoldenTyrantTurnip,
  75. MushroomA,
  76. MushroomB,
  77. MushroomC,
  78. MushroomD,
  79. MushroomE,
  80. Mushroom,
  81. MonarchMushroom,
  82. Strawberry,
  83. SultanStrawberry,
  84. Pineapple,
  85. KingPineapple,
  86. Grapes,
  87. Apple,
  88. Orange,
  89. MealyApple,
  90. Toyherb,
  91. UltraToyherb,
  92. MoondropFlower,
  93. UltraMoondropFlower,
  94. PinkCat,
  95. KingPinkCat,
  96. CharmBlue,
  97. GreatCharmBlue,
  98. MedicinalHerb,
  99. AntidoteGrass,
  100. BlackGrass,
  101. OrangeGrass,
  102. RedGrass,
  103. YellowGrass,
  104. BlueGrass,
  105. GreenGrass,
  106. PurpleGrass,
  107. IndigoGrass,
  108. WhiteGrass,
  109. Weeds,
  110. WitheredGrass,
  111. CherryGrass,
  112. KingCherryGrass,
  113. LampGrass,
  114. KaiserLampGrass,
  115. BlueCrystal,
  116. BigBlueCrystal,
  117. EmeryFlower,
  118. GreatEmeryFlower,
  119. Ironleaf,
  120. SuperIronleaf,
  121. FourLeafClover,
  122. Great4LeafClover,
  123. Fireflower,
  124. BigFireflower,
  125. GreenCrystal,
  126. BigGreenCrystal,
  127. NoelGrass,
  128. LargeNoelGrass,
  129. AutumnGrass,
  130. BigAutumnGrass,
  131. PomPomGrass,
  132. KingPomPomGrass,
  133. RedCrystal,
  134. BigRedCrystal,
  135. WhiteCrystal,
  136. BigWhiteCrystal,
  137. AyngondaiaLawn,
  138. TheProtein,
  139. Intelligencer,
  140. VitalGummi,
  141. HeartDrink,
  142. AntidotePotion,
  143. ParaGone,
  144. Roundoff,
  145. ColdMedicine,
  146. Formuade,
  147. LovePotion,
  148. Invinciroid,
  149. Leveliser,
  150. HeavySpice,
  151. SweetPowder,
  152. SourDrop,
  153. MixedHerbs,
  154. RecoveryPotion,
  155. HealingPotion,
  156. MysteryPotion,
  157. MagicalPotion,
  158. ObjectX,
  159. FailedDish,
  160. DisastrousDish,
  161. TroutSashimi,
  162. CharSashimi,
  163. RainbowSashimi,
  164. SalmonSashimi,
  165. CherrySashimi,
  166. TaimenSashimi,
  167. SnapperSashimi,
  168. GlitterSashimi,
  169. LoverSashimi,
  170. GirellaSashimi,
  171. SkipjackSashimi,
  172. YellowtailSashimi,
  173. TunaSashimi,
  174. SardineSashimi,
  175. NeedlefishSashimi,
  176. PikeSashimi,
  177. FlounderSashimi,
  178. TurbotSashimi,
  179. FallSashimi,
  180. SquidSashimi,
  181. SunsquidSashimi,
  182. LampSquidSashimi,
  183. BlowfishSashimi,
  184. LobsterSashimi,
  185. ShrimpSashimi,
  186. FriedVeggies,
  187. FriedRice,
  188. CabbageCakes,
  189. FrenchFries,
  190. Croquettes,
  191. Popcorn,
  192. CornCereal,
  193. MisoEggplant,
  194. FriedEggs,
  195. Omelet,
  196. OmeletRice,
  197. BakedApple,
  198. CurryBread,
  199. FrenchToast,
  200. Donut,
  201. FriedUdon,
  202. Tempura,
  203. Pancakes,
  204. Gyoza,
  205. Risotto,
  206. DryCurry,
  207. SaltedMasuTrout,
  208. SaltedChar,
  209. SaltedRTrout,
  210. SaltedCSalmon,
  211. SaltedChub,
  212. SaltedSalmon,
  213. SaltedTaimen,
  214. GrilledCCarp,
  215. GrilledGibelio,
  216. GrilledSnapper,
  217. GrilledGirella,
  218. GrilledGSnapper,
  219. GrilledLSnapper,
  220. GrilledSkipjack,
  221. GrilledMackerel,
  222. GrilledYellowtail,
  223. SaltedPondSmelt,
  224. TunaTeriyaki,
  225. DriedSardines,
  226. GrilledNeedlefish,
  227. SaltedPike,
  228. GrilledFlounder,
  229. GrilledTurbot,
  230. GrilledFFlounder,
  231. GrilledSquid,
  232. GrilledSunsquid,
  233. GrilledLampSquid,
  234. GrilledBlowfish,
  235. GrilledLobster,
  236. GrilledShrimp,
  237. GrilledSFlounder,
  238. HotMilk,
  239. HotChocolate,
  240. GrapeLiqueur,
  241. BoiledPumpkin,
  242. BoiledSpinach,
  243. BoiledEgg,
  244. GlazedYam,
  245. BoiledGyoza,
  246. StrawberryJam,
  247. AppleJam,
  248. GrapeJam,
  249. Marmalade,
  250. CheeseFondue,
  251. Udon,
  252. CurryUdon,
  253. TempuraUdon,
  254. RicePorridge,
  255. MilkPorridge,
  256. TempuraBowl,
  257. EggBowl,
  258. Stew,
  259. CurryRice,
  260. UltimateCurry,
  261. RoyalCurry,
  262. RelaxTea,
  263. GrilledMiso,
  264. UnionStew,
  265. RockfishStew,
  266. CornontheCob,
  267. BakedOnigiri,
  268. SweetPotato,
  269. Toast,
  270. JamRoll,
  271. ButterRoll,
  272. Pizza,
  273. SeafoodPizza,
  274. Doria,
  275. SeafoodDoria,
  276. Gratin,
  277. SeafoodGratin,
  278. YamoftheAges,
  279. Cookie,
  280. ChocoCookie,
  281. Cake,
  282. ChocolateCake,
  283. Cheesecake,
  284. ApplePie,
  285. PineappleJuice,
  286. TomatoJuice,
  287. GrapeJuice,
  288. OrangeJuice,
  289. AppleJuice,
  290. StrawberryMilk,
  291. FruitJuice,
  292. FruitSmoothie,
  293. VegetableJuice,
  294. VeggieSmoothie,
  295. MixedJuice,
  296. MixedSmoothie,
  297. Ketchup,
  298. Butter,
  299. GoldJuice,
  300. PreludetoLove,
  301. HotJuice,
  302. SteamedBread,
  303. CheeseBread,
  304. MeatDumpling,
  305. ChineseManju,
  306. CurryManju,
  307. SteamedGyoza,
  308. PoundCake,
  309. ChocolateSponge,
  310. Flan,
  311. PumpkinFlan,
  312. Dumplings,
  313. Salad,
  314. Sandwich,
  315. FruitSandwich,
  316. PickledTurnip,
  317. Pickles,
  318. BambooRice,
  319. RaisinBread,
  320. IceCream,
  321. RelaxTeaLeaves,
  322. Onigiri,
  323. Bread,
  324. SalmonOnigiri,
  325. PickleMix,
  326. TurnipHeaven,
  327. Rice,
  328. Chocolate,
  329. Wine,
  330. ElliLeaves,
  331. Milk_S,
  332. Milk_M,
  333. Milk_L,
  334. Egg_S,
  335. Egg_M,
  336. Egg_L,
  337. Mayonnaise,
  338. Cheese,
  339. Yogurt,
  340. Honey,
  341. Flour,
  342. Oil,
  343. CurryPowder,
  344. RiceFlour,
  345. MedicineBread,
  346. MedicineBreadPlus,
  347. CookingBread,
  348. CookingBreadPlus,
  349. WeaponBread,
  350. WeaponBreadPlus,
  351. AccessoryBread,
  352. AccessoryBreadPlus,
  353. FarmingBread,
  354. FarmingBreadPlus,
  355. Broadsword,
  356. SteelSword,
  357. WindSword,
  358. AquaSword,
  359. Defender,
  360. AerialBlade,
  361. BurningSword,
  362. Sakura,
  363. LuckBlade,
  364. PlatinumSword,
  365. Raventine,
  366. Icifier,
  367. SoulEater,
  368. SmashBlade,
  369. DragonSlayer,
  370. Sunspot,
  371. StarSaber,
  372. GaiaSword,
  373. Grantale,
  374. ChaosBlade,
  375. RuneBlade,
  376. SteelSwordPlus,
  377. PlatinumSwordPlus,
  378. Cutlass,
  379. BackScratcher,
  380. Durendal,
  381. Gladius,
  382. GorgeousSword,
  383. Spoon,
  384. RuneLegend,
  385. Snakesword,
  386. Veggieblade,
  387. Invisiblade,
  388. PlantSword,
  389. Claymore,
  390. Zweihaender,
  391. FlameSaber,
  392. CycloneBlade,
  393. DancingDicer,
  394. GreatSword,
  395. HeavenAsunder,
  396. GrandSmasher,
  397. BlueEyedBlade,
  398. PoisonBlade,
  399. SteelSlicer,
  400. Flamberge,
  401. ShineBlade,
  402. EarthShade,
  403. BioSmasher,
  404. Punisher,
  405. SeaCutter,
  406. Volcanon,
  407. SnowCrown,
  408. MoonShadow,
  409. ForceElement,
  410. ZweihaenderPlus,
  411. FlambergePlus,
  412. Katzbalger,
  413. BigKnife,
  414. Katana,
  415. Balmung,
  416. Psycho,
  417. Dekash,
  418. Braveheart,
  419. Belzebuth,
  420. Daicone,
  421. Caliburn,
  422. Orochi,
  423. Spear,
  424. Lance,
  425. NeedleSpear,
  426. Halberd,
  427. WaterSpear,
  428. BloodLance,
  429. WoodStaff,
  430. PoisonSpear,
  431. Corsesca,
  432. SilentGrave,
  433. FlareLance,
  434. HeavyLance,
  435. Iceberg,
  436. Metus,
  437. MonkStaff,
  438. Overbreak,
  439. Brionac,
  440. FeatherLance,
  441. Belvarose,
  442. Bjor,
  443. Gungnir,
  444. LancePlus,
  445. CorsescaPlus,
  446. Trident,
  447. Pitchfork,
  448. DragonsFang,
  449. GaeBolg,
  450. MagicalLance,
  451. SafetyLance,
  452. Legion,
  453. PoisonQueen,
  454. PineClub,
  455. Fivestaff,
  456. BattleHammer,
  457. WarHammer,
  458. GreatHammer,
  459. Schnabel,
  460. GigantHammer,
  461. Mjolnir,
  462. SpikedHammer,
  463. FlameHammer,
  464. IceHammer,
  465. SkyHammer,
  466. GravitonHammer,
  467. BoneHammer,
  468. CrystalHammer,
  469. WarHammerPlus,
  470. GigantHammerPlus,
  471. Hammer,
  472. ToyHammer,
  473. FatalCrush,
  474. StrongStone,
  475. Kongo,
  476. Bat,
  477. IronBat,
  478. SplashStar,
  479. BattleAxe,
  480. PoleAxe,
  481. Alldale,
  482. GreatAxe,
  483. DemonAxe,
  484. CrescentAxe,
  485. Executioner,
  486. HeatAxe,
  487. FrostAxe,
  488. Tomahawk,
  489. RockAxe,
  490. DoubleEdge,
  491. SaintAxe,
  492. PoleAxePlus,
  493. CrescentAxePlus,
  494. Axe,
  495. Lollipop,
  496. BattleScythe,
  497. BasiliskFang,
  498. DevilFinger,
  499. Rod,
  500. Staff,
  501. SilverStaff,
  502. FlareStaff,
  503. IceStaff,
  504. LightningWand,
  505. EarthStaff,
  506. WizardsStaff,
  507. MagesStaff,
  508. RuneStaff,
  509. MagesStaffPlus,
  510. MagicBroom,
  511. Basket,
  512. MagicShot,
  513. HellBranch,
  514. CrimsonStaff,
  515. BubbleStaff,
  516. GaiaRod,
  517. ShootingStarStaff,
  518. CycloneRod,
  519. StormWand,
  520. RubyRod,
  521. EmeraldRod,
  522. SapphireRod,
  523. AmethystRod,
  524. AquamarineRod,
  525. DiamondRod,
  526. FriendlyRod,
  527. LoveLoveRod,
  528. SorcerersWand,
  529. HellCurse,
  530. Algernon,
  531. GoldenTurnipStaff,
  532. SweetPotatoStaff,
  533. ElvishHarp,
  534. Syringe,
  535. ShortDagger,
  536. SteelEdge,
  537. WindEdge,
  538. FrostEdge,
  539. SteelKatana,
  540. SonicDagger,
  541. Salamander,
  542. TwinBlade,
  543. Rampage,
  544. PlatinumEdge,
  545. Efreet,
  546. DeepBlizzard,
  547. DarkInvitation,
  548. ForceDivide,
  549. DragoonClaw,
  550. HeartFire,
  551. DesertWind,
  552. BrokenWall,
  553. OrcusSword,
  554. ChaosEdge,
  555. RuneEdge,
  556. IronEdge,
  557. EmeraldEdge,
  558. ThiefKnife,
  559. DoubleScratch,
  560. PriestSaber,
  561. EarnestEdge,
  562. GorgeousLx,
  563. Acutorimass,
  564. TwinLeeks,
  565. TwinJustice,
  566. LeatherGloves,
  567. BrassKnuckles,
  568. Kote,
  569. BearClaws,
  570. FistsofFire,
  571. FistsofWater,
  572. FistsofWind,
  573. FistsoftheEarth,
  574. FistsofLight,
  575. FistsofDark,
  576. Gloves_A,
  577. CatPunch,
  578. DragonClaws,
  579. AnimalPuppets,
  580. IronleafFists,
  581. GolemPunch,
  582. HandofGod,
  583. Caestus,
  584. BazalKatar,
  585. Fenrir,
  586. CheapHoe,
  587. SturdyHoe,
  588. SeasonedHoe,
  589. ShinyHoe,
  590. BlessedHoe,
  591. CheapWaterpot,
  592. TinWaterpot,
  593. LionWaterpot,
  594. RainbowWaterpot,
  595. JoyWaterpot,
  596. CheapSickle,
  597. IronSickle,
  598. QualitySickle,
  599. SuperSickle,
  600. LegendarySickle,
  601. CheapHammer,
  602. IronHammer,
  603. SilverHammer,
  604. GoldenHammer,
  605. PlatinumHammer,
  606. CheapAxe,
  607. ChoppingAxe,
  608. LumberAxe,
  609. MountainAxe,
  610. MiracleAxe,
  611. CheapPole,
  612. BeginnersPole,
  613. SkilledPole,
  614. FamousPole,
  615. SacredPole,
  616. SmallShield,
  617. IronShield,
  618. RoundShield,
  619. PlatinumShield,
  620. HeavyShield,
  621. KnightShield,
  622. RuneShield,
  623. MagicShield,
  624. PrismShield,
  625. ElementShield,
  626. ChaosShield,
  627. TurtleShield,
  628. BoneShield,
  629. KiteShield,
  630. MagicalShield,
  631. MonkeyPlush,
  632. Umbrella,
  633. MagicPlantShield,
  634. AquamarineRing,
  635. AmethystRing,
  636. EmeraldRing,
  637. SapphireRing,
  638. DiamondRing,
  639. RubyRing,
  640. HappyRing,
  641. CursedRing,
  642. FireRing,
  643. WindRing,
  644. WaterRing,
  645. EarthRing,
  646. SilverRing,
  647. GoldRing,
  648. PlatinumRing,
  649. CriticalRing,
  650. SilentRing,
  651. ParalysisRing,
  652. PoisonRing,
  653. MagicRing,
  654. CheapBracelet,
  655. BronzeBracelet,
  656. SilverBracelet,
  657. GoldBracelet,
  658. PlatinumBracelet,
  659. AquamarineBrooch,
  660. AmethystBrooch,
  661. EmeraldBrooch,
  662. SapphireBrooch,
  663. DiamondBrooch,
  664. RubyBrooch,
  665. SilverPendant,
  666. HeartPendant,
  667. StarPendant,
  668. SunPendant,
  669. FieldPendant,
  670. DewPendant,
  671. EarthPendant,
  672. HolyAmulet,
  673. Charm,
  674. LeatherBelt,
  675. LuckyStrike,
  676. Talisman,
  677. ChampBelt,
  678. Gloves_B,
  679. WorkGloves,
  680. Badge,
  681. PowerGloves,
  682. MagicCharm,
  683. ShieldRing,
  684. Rosary,
  685. CourageBadge,
  686. HerosProof,
  687. ProofofWisdom,
  688. HandKnitScarf,
  689. FluffyScarf,
  690. ArtofAttack,
  691. ArtofDefense,
  692. ArtofMagic,
  693. Earrings,
  694. WitchEarrings,
  695. MagicEarrings,
  696. VentisCharmA,
  697. VentisCharmB,
  698. AnettesNecklace,
  699. ThrowingRing,
  700. StayUpRing,
  701. StrangePendant,
  702. DolphinBrooch,
  703. EngagementRing,
  704. SilverHairpin,
  705. GoldHairpin,
  706. FancyHat,
  707. Headband,
  708. FeatheredHat,
  709. BrandGlasses,
  710. Spectacles,
  711. IntelligentGlasses,
  712. StrawHat,
  713. FireproofHood,
  714. CuteKnitting,
  715. BlackRibbon,
  716. OrangeRibbon,
  717. RedRibbon,
  718. YellowRibbon,
  719. BlueRibbon,
  720. GreenRibbon,
  721. PurpleRibbon,
  722. IndigoRibbon,
  723. WhiteRibbon,
  724. TurnipHeadgear,
  725. PumpkinHeadgear,
  726. SpringHeaddress,
  727. SummerHeaddress,
  728. AutumnHeaddress,
  729. WinterHeaddress,
  730. LolitaHeaddress,
  731. Headdress,
  732. CatEars,
  733. Crown,
  734. FourSeasons,
  735. SilkHat,
  736. FeatherBoots,
  737. HeavyBoots,
  738. LeatherBoots,
  739. KnightBoots,
  740. SnowBoots,
  741. IceSkates,
  742. PiyoSandals,
  743. StepInBoots,
  744. GhostBoots,
  745. IronGeta,
  746. StriderBoots,
  747. SecretShoes,
  748. WetBoots,
  749. SneakingBoots,
  750. FastStepBoots,
  751. WaterShoes,
  752. RocketWing,
  753. SilverBoots,
  754. GoldBoots,
  755. BoneBoots,
  756. FairyBoots,
  757. FreeFarmingShoes,
  758. Shirt,
  759. Vest,
  760. WoolyShirt,
  761. MercenarysCloak,
  762. Mail,
  763. CottonCloth,
  764. ChainMail,
  765. ScaleVest,
  766. Protector,
  767. WindCloak,
  768. SparklingShirt,
  769. PlatinumMail,
  770. LamellarVest,
  771. ElvishCloak,
  772. PowerProtector,
  773. DragonCloak,
  774. RuneVest,
  775. RoyalGarter,
  776. FourDragonsVest,
  777. Brush,
  778. Clippers,
  779. MagnifyingGlass,
  780. TurnipSeeds,
  781. PotatoSeeds,
  782. CucumberSeeds,
  783. StrawberrySeeds,
  784. CabbageSeeds,
  785. MoondropSeeds,
  786. ToyherbSeeds,
  787. TomatoSeeds,
  788. CornSeeds,
  789. OnionSeeds,
  790. PumpkinSeeds,
  791. PineappleSeeds,
  792. PinkCatSeeds,
  793. EggplantSeeds,
  794. CarrotSeeds,
  795. YamSeeds,
  796. SpinachSeeds,
  797. GreenPepperSeeds,
  798. CharmBlueSeeds,
  799. FodderSeeds,
  800. CherryGrassSeeds,
  801. LampGrassSeeds,
  802. BlueCrystalSeeds,
  803. EmeryFlowerSeeds,
  804. IronleafSeeds,
  805. CloverSeeds,
  806. FireflowerSeeds,
  807. GreenCrystalSeeds,
  808. NoelGrassSeeds,
  809. AutumnGrassSeeds,
  810. PomPomGrassSeeds,
  811. RedCrystalSeeds,
  812. WhiteCrystalSeeds,
  813. PinkTurnipSeeds,
  814. RadishSeeds,
  815. LeekSeeds,
  816. BokChoySeeds,
  817. GoldCabbageSeeds,
  818. GoldPumpkinSeeds,
  819. GoldPotatoSeeds,
  820. GoldTurnipSeeds,
  821. GoldMelonSeeds,
  822. HotHotSeeds,
  823. AppleTreeSeeds,
  824. OrangeTreeSeed,
  825. GrapeTreeSeed,
  826. ShiningSeed,
  827. DungeonSeed,
  828. SwordSeed,
  829. ShieldSeed,
  830. WettablePowder,
  831. Greenifier,
  832. GreenifierPlus,
  833. FormulaA,
  834. FormulaB,
  835. FormulaC,
  836. NoRotAlpha,
  837. NoRotBeta,
  838. Giantizer,
  839. Minimizer,
  840. Fodder,
  841. Fur_S,
  842. Fur_M,
  843. Fur_L,
  844. Yarn,
  845. ScrapMetal,
  846. Iron,
  847. Bronze,
  848. Silver,
  849. Gold,
  850. Platinum,
  851. Orichalcum,
  852. Diamond,
  853. Ruby,
  854. Emerald,
  855. Sapphire,
  856. Amethyst,
  857. Aquamarine,
  858. CheapCloth,
  859. QualityCloth,
  860. SilkCloth,
  861. Arrowhead,
  862. WarriorsProof,
  863. Glue,
  864. OldBandage,
  865. Gunpowder,
  866. EarthCrystal,
  867. DevilHorn,
  868. DevilBlood,
  869. MagicPowder,
  870. MagicCrystal,
  871. ShoulderPiece,
  872. GiantsNail,
  873. GiantsGloves,
  874. HammerPiece,
  875. InsectCarapace,
  876. InsectJaw,
  877. SpidersThread,
  878. PrettyThread,
  879. PrettyCarapace,
  880. RigidHorn,
  881. ScorpionTail,
  882. ScorpionPincer,
  883. PantherClaw,
  884. DragonFang,
  885. WolfFang,
  886. QualityFur,
  887. BullsHorn,
  888. BirdsFeather,
  889. WindCrystal,
  890. Fur,
  891. Root,
  892. Spore,
  893. PoisonPowder,
  894. PlantStem,
  895. StrongVine,
  896. FishFossil,
  897. WaterCrystal,
  898. TurtleShell,
  899. FireCrystal,
  900. GhostHood,
  901. Skull,
  902. BrokenHilt,
  903. BrokenBox,
  904. FairyDust,
  905. SmallCrystal,
  906. WoolyFurball,
  907. LightCrystal,
  908. DarkCrystal,
  909. LoveCrystal,
  910. RaccoonLeaf,
  911. DragonBones,
  912. RedLionFur,
  913. BlueLionFur,
  914. BrokenIceWall,
  915. Ammonite,
  916. IcyNose,
  917. ChestHair,
  918. ChimeraTail,
  919. GrimoireScale,
  920. LegendaryScale,
  921. DragonFin,
  922. MovingBranch,
  923. ElectroCrystal,
  924. MelodyBottle,
  925. GolemTablet,
  926. EarthwyrmScale,
  927. FirewyrmScale,
  928. AmbrosiasThorns,
  929. LightningMane,
  930. CursedDoll,
  931. PuppetryStrings,
  932. LeftRockShard,
  933. RightRockShard,
  934. CrystalSkull,
  935. ThroneoftheEmpire,
  936. WindDragonTooth,
  937. RuneSphereShard,
  938. RafflesiaPetal,
  939. MTGUPlate,
  940. CheapPropeller,
  941. QualityPropeller,
  942. RustyScrew,
  943. ShinyScrew,
  944. PalmClaw,
  945. MalmClaw,
  946. BigCrystal,
  947. RuneCrystal,
  948. GreenCore,
  949. RedCore,
  950. YellowCore,
  951. BlueCore,
  952. WaterDragonAsh,
  953. FireDragonAsh,
  954. EarthDragonAsh,
  955. HolySpore,
  956. WhiteStone,
  957. InvisibleStone,
  958. ShadeStone,
  959. DoubleSteel,
  960. TenFoldSteel,
  961. RoundStone,
  962. GlittaAugite,
  963. LightOre,
  964. ScrapMetalPlus,
  965. Stick,
  966. QualityPuffyFur,
  967. YellowDown,
  968. PenguinDown,
  969. IvoryTusk,
  970. UnbrokenIvoryTusk,
  971. TinyGolemStone,
  972. ParalysisPoison,
  973. BlackBirdFeather,
  974. Vine,
  975. InsectHorn,
  976. MysteriousPowder,
  977. WetScale,
  978. Magic,
  979. GoldWolfFang,
  980. BlueGiantsGlove,
  981. ThickStick,
  982. MagicClaw,
  983. GlisteningBlade,
  984. FairyElixir,
  985. GreatHammerShard,
  986. GolemStone,
  987. BlackTortoiseShell,
  988. ThunderbirdFeather,
  989. BigGiantsNail,
  990. YellowFeather,
  991. QualityWornCloth,
  992. PiratesArmor,
  993. BladeShard,
  994. ProofofRank,
  995. TurnipsMiracle,
  996. DragonScale,
  997. GolemSpiritStone,
  998. AncientOrcCloth,
  999. QueensJaw,
  1000. PoisonKing,
  1001. DangerousScissors,
  1002. ChimerasClaw,
  1003. TabletofTruth,
  1004. BigBirdsComb,
  1005. BattleTurnip,
  1006. BlackScale,
  1007. BlueScale,
  1008. GlitterScale,
  1009. CrimsonScale,
  1010. LoveScale,
  1011. DragonicStone,
  1012. MasuTrout,
  1013. Squid,
  1014. Taimen,
  1015. Sardine,
  1016. Char,
  1017. Chub,
  1018. GlitterSnapper,
  1019. Skipjack,
  1020. Turbot,
  1021. Gibelio,
  1022. Salmon,
  1023. Mackerel,
  1024. Needlefish,
  1025. Pike,
  1026. Sunsquid,
  1027. Shrimp,
  1028. Snapper,
  1029. ThrobbySnapper,
  1030. RainbowTrout,
  1031. Flounder,
  1032. Blowfish,
  1033. Yellowtail,
  1034. CrucianCarp,
  1035. Tuna,
  1036. Girella,
  1037. FallFlounder,
  1038. CherrySalmon,
  1039. LampSquid,
  1040. Lobster,
  1041. PondSmelt,
  1042. SandFlounder,
  1043. Rockfish,
  1044. Can,
  1045. Boot,
  1046. RareCan,
  1047. Rock,
  1048. Branch,
  1049. Lumber,
  1050. MaterialStone,
  1051. Escape_S,
  1052. Fireball_S,
  1053. BigFire_S,
  1054. Explosion_S,
  1055. WaterLaser_S,
  1056. ParallelLaser_S,
  1057. DeltaLaser_S,
  1058. ScrewRock_S,
  1059. EarthSpike_S,
  1060. AvengerRock_S,
  1061. SonicWind_S,
  1062. DoubleSonic_S,
  1063. PenetrateSonic_S,
  1064. LightBarrier_S,
  1065. Shine_S,
  1066. Prism_S,
  1067. DarkBall_S,
  1068. DarkSnake_S,
  1069. Darkness_S,
  1070. Cure_S,
  1071. CureAll_S,
  1072. MasterCure_S,
  1073. Medipoison_S,
  1074. Mediparalyze_S,
  1075. Mediseal_S,
  1076. GreetingSpell_S,
  1077. PowerWave_S,
  1078. DashSlash_S,
  1079. RushAttack_S,
  1080. RoundBreak_S,
  1081. MindThrust_S,
  1082. Gust_S,
  1083. Storm_S,
  1084. Blitz_S,
  1085. TwinAttack_S,
  1086. RailStrike_S,
  1087. WindSlash_S,
  1088. FlashStrike_S,
  1089. NaiveBlade_S,
  1090. SteelHeart_S,
  1091. DeltaStrike_S,
  1092. Hurricane_S,
  1093. ReaperSlash_S,
  1094. Millionstrike_S,
  1095. AxelDisaster_S,
  1096. StardustUpper_S,
  1097. TornadoSwing_S,
  1098. GrandImpact_S,
  1099. GigaSwing_S,
  1100. UpperCut_S,
  1101. DoubleKick_S,
  1102. StraightPunch_S,
  1103. NekoDamashi_S,
  1104. RushPunch_S,
  1105. Cyclone_S,
  1106. RapidMove_S,
  1107. BonusConcerto_S,
  1108. StrikingMarch_S,
  1109. IronWaltz_S,
  1110. Minerals,
  1111. Liquids,
  1112. ClawsandFangs,
  1113. SticksandStems,
  1114. ClothsandSkins,
  1115. Furs,
  1116. Strings,
  1117. Shards,
  1118. PowdersandSpores,
  1119. Scales,
  1120. ShellsandBones,
  1121. Stones,
  1122. Turnip_B,
  1123. Crystals,
  1124. Jewels,
  1125. Feathers,
  1126. Jam,
  1127. Curry,
  1128. Squid_B,
  1129. BattleTurnip_B,
  1130. GoldBattleTurnip,
  1131. Bullet,
  1132. GoldenBullet,
  1133. CherryTurnip,
  1134. DisgustingFood
  1135. } ITEMID;
  1136.  
  1137. typedef enum <ubyte> {
  1138. Spring,
  1139. Summer,
  1140. Fall,
  1141. Winter
  1142. } MONTH;
  1143.  
  1144. // 5-bit enum; Traveler_29 to _31 crash (no picture)
  1145. typedef enum <ushort> {
  1146. None,
  1147. Vishnal,
  1148. Clorica,
  1149. Volkanon,
  1150. Forte,
  1151. Kiel,
  1152. Bado,
  1153. Margaret,
  1154. Dylas,
  1155. Arthur,
  1156. Porcoline,
  1157. XiaoPai,
  1158. LinFa,
  1159. Amber,
  1160. Illuminata,
  1161. Doug,
  1162. Blossom,
  1163. Dolce,
  1164. Jones,
  1165. Nancy,
  1166. Leon,
  1167. Ventuswill,
  1168. Son,
  1169. Daughter,
  1170. Barrett,
  1171. Raven,
  1172. MistressTrupin,
  1173. TravelerM1,
  1174. TravelerM2
  1175. } PTNR;
  1176.  
  1177. //-----------------------------------
  1178. // Define aux structures
  1179.  
  1180. // Placeholder
  1181. typedef struct {
  1182.  
  1183. } UNKNWN;
  1184.  
  1185. // Character and Farm names
  1186. typedef struct {
  1187. char charName[19];
  1188. char farmName1[25];
  1189. char farmName2[25];
  1190. char farmName3[25];
  1191. char farmName4[25];
  1192. char farmName5[25];
  1193. } NAMES;
  1194.  
  1195. // bitfield for active saves
  1196. typedef struct {
  1197. ulong slot01 : 1;
  1198. ulong slot02 : 1;
  1199. ulong slot03 : 1;
  1200. ulong slot04 : 1;
  1201. ulong slot05 : 1;
  1202. ulong slot06 : 1;
  1203. ulong slot07 : 1;
  1204. ulong slot08 : 1;
  1205. ulong slot09 : 1;
  1206. ulong slot10 : 1;
  1207. ulong slot11 : 1;
  1208. ulong slot12 : 1;
  1209. ulong slot13 : 1;
  1210. ulong slot14 : 1;
  1211. ulong slot15 : 1;
  1212. ulong slot16 : 1;
  1213. ulong slot17 : 1;
  1214. ulong slot18 : 1;
  1215. ulong slot19 : 1;
  1216. ulong slot20 : 1;
  1217. } SLOTB;
  1218.  
  1219. //-----------------------------------
  1220. // Define main structures for 3DS
  1221.  
  1222. typedef struct {
  1223. char magic[4];
  1224. uint CRC32<format=hex>;
  1225. struct {
  1226. ubyte slot1 : 1;
  1227. ubyte slot2 : 1;
  1228. ubyte slot3 : 1;
  1229. ubyte : 5;
  1230. } activeSaveSlots;
  1231. ubyte loadPos : 4 <comment="Cursor position, slots 0 - 2">;
  1232. ubyte extraOrders : 4;
  1233. } HEADER <size=28>;
  1234.  
  1235. typedef struct {
  1236. ubyte timeMinute;
  1237. ubyte timeHour;
  1238. ubyte currentDay;
  1239. MONTH currentMonth;
  1240. short currentYear;
  1241. DIFF difficulty;
  1242. ubyte costume;
  1243. ushort level <comment="In-game Level - 1">;
  1244. ushort location : 10;
  1245. PTNR partner : 5;
  1246. ushort UnknownB : 1;
  1247. GENDER gender : 1;
  1248. ITEMID headGear : 11;
  1249. ITEMID mainHand : 10;
  1250. ITEMID offHand : 10;
  1251. NAMES names;
  1252. } SLOT <name=ReadSaveChar, read=ReadSaveInfo, size=160>;
  1253.  
  1254. //-----------------------------------
  1255. // Define main structures for Switch
  1256.  
  1257. typedef struct {
  1258. char magic[4];
  1259. uint CRC32<format=hex>;
  1260. SLOTB activeSaveSlots;
  1261. SLOTB activeSaveSlotsNW <comment="for Newlywed Mode">;
  1262. struct {
  1263. ubyte gameCleared : 1 <comment="Unlocks Extra Orders and can change select screen character appearance">;
  1264. ubyte extraOrdersA : 1 <comment="EO 'Unlock all newlywed modes' (needs ExtraOrdersB active)">;
  1265. ubyte : 2;
  1266. ubyte extraOrdersB : 1 <comment="Unlocks EOs for enemy levels and town events">;
  1267. ubyte extraOrdersC : 1 <comment="Unlocks EO for inheriting savegames">;
  1268. ubyte : 2;
  1269.  
  1270. ubyte : 1;
  1271. ubyte unlockedAllNewlywed : 1 <comment="Unlocks all Newlywed Modes">;
  1272. ubyte japaneseAudio : 1;
  1273. ubyte : 5;
  1274.  
  1275. ubyte : 8;
  1276.  
  1277. ubyte : 8;
  1278. } bitflags;
  1279. ushort loadPos <comment="Load cursor position, slots 0 - 19">;
  1280. ushort loadPosNW <comment="Newlywed Mode load cursor position, slots 0 - 19">;
  1281. } SHEADER <size=1264>;
  1282.  
  1283. typedef struct {
  1284. ubyte timeMinute;
  1285. ubyte timeHour;
  1286. ubyte currentDay;
  1287. MONTH currentMonth;
  1288. short currentYear;
  1289. DIFF difficulty;
  1290. ubyte Unknown;
  1291. ubyte costume;
  1292. ubyte isSuperHard <comment="Extra flag; Hard + this = Hell">;
  1293. ushort UnknownA <format=hex>;
  1294. ushort level <comment="In-game Level - 1">;
  1295. ushort location : 10;
  1296. PTNR partner : 5;
  1297. ushort UnknownB : 1;
  1298. GENDER gender : 1;
  1299. ITEMID headGear : 11;
  1300. ITEMID mainHand : 10;
  1301. ITEMID offHand : 10;
  1302. NAMES names;
  1303. } SSLOT <name=ReadSaveCharS, read=ReadSaveInfoS, comment=ReadSaveCommentS, size=164>;
  1304.  
  1305.  
  1306. //--------------------------------------------
  1307. // Custom functions
  1308.  
  1309. // Read and display char names on save slots
  1310. string ReadSaveChar( SLOT &sslot )
  1311. {
  1312. local string s;
  1313. s += sslot.names.charName;
  1314. if( s != "" ) {
  1315. SPrintf( s, "%s, Level %d ", s, sslot.level + 1 );
  1316. // if( sslot.partner )
  1317. // s = s + "+ " + EnumToString( sslot.partner );
  1318. return s;
  1319. }
  1320. else
  1321. return "(none)";
  1322. }
  1323.  
  1324. // Read and display char names on save slots for Special
  1325. string ReadSaveCharS( SSLOT &sslot )
  1326. {
  1327. local string s;
  1328. s += sslot.names.charName;
  1329. if( s != "" ) {
  1330. SPrintf( s, "%s, Level %d ", s, sslot.level + 1 );
  1331. if( sslot.partner )
  1332. s = s + "+ " + EnumToString( sslot.partner );
  1333. return s;
  1334. }
  1335. else
  1336. return "(none)";
  1337. }
  1338.  
  1339. // Display save info for Special
  1340. string ReadSaveInfoS( SSLOT &sinfo )
  1341. {
  1342. local string s;
  1343. // Put the var value into a buffer string via SPrintf
  1344. if ( sinfo.currentDay != 0 )
  1345. SPrintf( s, "%02d:%02d, %02d. %s Y%d", sinfo.timeHour, sinfo.timeMinute, sinfo.currentDay, EnumToString( sinfo.currentMonth ), sinfo.currentYear );
  1346. return s;
  1347. }
  1348.  
  1349. // Display save info
  1350. string ReadSaveInfo( SLOT &sinfo )
  1351. {
  1352. local string s;
  1353. // Put the var value into a buffer string via SPrintf
  1354. if ( sinfo.currentDay != 0 )
  1355. SPrintf( s, "%02d:%02d, %02d. %s Y%d", sinfo.timeHour, sinfo.timeMinute, sinfo.currentDay, EnumToString( sinfo.currentMonth ), sinfo.currentYear );
  1356. return s;
  1357. }
  1358.  
  1359. // Display unknown values in comments for quick comparison
  1360. string ReadSaveCommentS( SSLOT &sinfo )
  1361. {
  1362. local string s;
  1363. if ( sinfo.currentDay != 0 ) {
  1364. s = EnumToString( sinfo.difficulty );
  1365. if( (s == "HARD") && sinfo.isSuperHard )
  1366. s = "HELL";
  1367. SPrintf( s, "%s C%d %d 0x%02X %d", s, sinfo.costume, sinfo.Unknown, sinfo.UnknownA, sinfo.UnknownB );
  1368. }
  1369. return s;
  1370. }
  1371.  
  1372. //-----------------------------------
  1373. // Define file itself
  1374.  
  1375. if (FileSize() == 0x1FC) {
  1376. HEADER header;
  1377. SLOT Save1;
  1378. SLOT Save2;
  1379. SLOT Save3;
  1380. }
  1381. else {
  1382. SHEADER header;
  1383. SSLOT saves[20];
  1384. SSLOT savesNW[20];
  1385. }
Add Comment
Please, Sign In to add comment