//-------------------------------------- //--- 010 Editor v8.0.0 Binary Template // // File: RF4 save files (rf4a.sav, rf4b.sav, rf4c.sav, rf4_sXX.sav) // Author: HenryEx // Revision: 2020-10-04 // Purpose: Works for both Rune Factory 4 (3DS) and // Rune Factory 4 Special (NS) //-------------------------------------- /* Addresses: 0x00000: CRC32 4b 0x00022: Something about tornados? 0B - no tornado, 05 - Tornado 0x00036: Gender 0x0003C: Lumber 4b 0x00040: Stone 4b 0x00044: Compost 4b 0x00048: Fodder 4b 0x0004C: Money 4b, 8b? 0x00054: Cur HP 4b 0x00058: HP mod 4b 0x0005C: Cur RP 2b 0x0005E: RP mod 2b 0x00060: Str mod 0x00064: Int mod 0x00068: Vit mod 0x0006C: Level (minus 1) 0x00070: Exp - Birthday - 0x1E8DE: Middle 8 bits spread over 2 bytes, and in REVERSE BIT ORDER HOLY OMFG WHAT WHY, so: b0-4: ??? b5-6: Month (0-3) b7-11: Day (not 0-based) b12-15: ??? Reverse bits means, for days: day 30 is value 15; Day 2 is value 8, Day 11 is value 26... this is terrible - Villager Stats - (Block size: 0x64 / 100 Starts at dummy, 0xb8?) Vishnal: 0x0011C: Cur HP 4b 0x00120: HP mod 4b 0x00128: Str mod 0x0012C: Int mod 0x00130: Vit mod 0x00134: Level (minus 1) 0x00138: Exp 0x0013D: flags (80 if been in party -> stats visible) - Skills & Skill Exp (4b, 4b) - 0x05964: Short Sword 0x0596C: Long Sword 0x05974: Spear 0x0597C: Axe/Hammer 0x05984: Dual Blades 0x0598C: Fist 0x05994: Fire 0x0599C: Water 0x059A4: Earth 0x059AC: Wind 0x059B4: Light 0x059BC: Dark 0x059C4: Love 0x059CC: Farming 0x059D4: Logging 0x059DC: Mining 0x059E4: Fishing 0x059EC: Cooking 0x059F4: Forging 0x059FC: Chemistry 0x05A04: Crafting 0x05A0C: Searching 0x05A14: Walking 0x05A1C: Sleeping 0x05A24: Eating 0x05A2C: Defense 0x05A34: Resist poison 0x05A3C: Resist Seals 0x05A44: Resist Paralysis 0x05A4C: Resist Sleep 0x05A54: Resist Fatigue 0x05A5C: Resist Cold 0x05A64: Resist Knockout 0x05A6C: Bathing 0x05A74: Taming 0x05A7C: Throwing 0x05A84: Leadership 0x05A8C: Bartering - Item Storages - # Block size p. Item: 0x1C / 28 (except magic, size 02) # Start offsets for Inv types: 0x05AA4: Backpack/Equipment (0x7C4 / 1988) [71] 0x06268: Spellpack (magic) (0x3C / 60) [30] 0x062A4: Fridge (0x6C48 / 27720) [990] 0x0CEEC: Storage (0x6C48 / 27720) [990] 0x13B34: Weapon Box (0xD20 / 3360) [120] 0x14854: Wardrobe (0xD20 / 3360) [120] 0x15574: Tool Box (0x1068 / 4200) [150] 0x165DC: Shipping Box (0x20D0 / 8400) [300] 0x186AC: Shop Box (0x1A4 / 420) [15] 0x18850: Bookshelf (magic) (0xB4 / 180) [90] - Fields & Soil Attributes - # Start at 0x1AEB4, block size 0x10 / 16 # size?: 0xA20 / 2592 - Animal Flags & FP - (Block size: 0x24 / 36, Start at: 0x1BDB0) #Note: 20 slots per Barn, 10 Barns 0x00: Name 0x13: slot no., 1b 0x14: Monster Type? 4b 0x18: FP? 2b? - Villager Flags & FP - (Block size: 0x2C / 44, Start at: 0x1DB10) #Note: 1st & last persons are dummies FP levels: 140 - Lv4 0x00: FP 4b 0x04-2B: ??? - NPC Equipment - #Start at: 0x1EB88, block size: 0xFC / 252 - Farm objects - Table for objects on the farm 76 (?) objects, length 0xC / 12 bytes, per farm; Start 0x18EA4 0x00: crop / object ID - 00 is nothing, 58 tilled earth for example 0x07: 00 dry earth, 20 wet earth 0x08: crop (object) health 0x09-0B: 11bit(?) X/Y coords for object, (0,0) top left one "grid" square seems to be 32x32 For ref.: middle of top-left square on main farm is 79|176 Top-right 431|176; Bottom-left 79|336; Bottom-right 431|336 0x20694: Prince(ss) Points 4b 0x20698: Tourists 4b - Requests - Some flags 0x1E042: 01 - Daily request #1 done? 0x1E043: 80 - Daily request #2 done?, "come back tomorrow"? - Orders - 0x1E93F: 80 - Backpack +1, 40 - Backpack +2 0x1E94F: 10 - Unlock Sharance maze - Difficulty - 1 byte for original 3 difficulties, 1 bitflag for additional RF4S difficulty 0x0005: 00 - Normal, 40 - Easy, 80 - Hard 0x1EA3B: 20 - HELL difficulty (RF4S only) if on Hard - Fishing - Biggest & smallest size each 2b Masu trout records: 0x21934 & 0x2197C (0x219B4 & 0x219FC Special) 0x1E8C4: Story flag? 20 - Time frozen w/ Volkanon, 28 - normal? 0x1E8DE: 5bit reverse bit order - # of cooking breads Porco sells (max. 31) */ // #include "VarDefs.bt" // shorthand typedefs // Typedef some custom variables: //----------------------------------- // Define enums typedef enum { Male, Female } GENDER; typedef enum { Spring, Summer, Fall, Winter } MONTH; typedef enum { Normal, Easy = 64, Hard = 128 } DIFF; typedef enum { DefaultCostume, Variant1 = 4, Variant2 = 8 } COST; typedef enum { NoChange, Vishnal, Clorica, Volkanon, Forte, Kiel, Bado, Margaret, Dylas, Arthur, Porcoline, XiaoPai, LinFa, Amber, Illuminata, Doug, Blossom, Dolce, Jones, Nancy, Leon, Ventuswill, Son, Daughter, Barrett, Raven, MistressTrupin, TravelerM1, TravelerM2, TravelerF1 = 34, TravelerF2, Ethelberd = 239, Pico = 309, Lest = 9999 } MODEL; typedef enum { __000, __001, __002, __003, Farm_004, Farm_005, Farm_006, Farm_007, Field_008, Field_009, Field_010, Field_011, Field_012, Field_013, Field_014, Field_015, Field_016, Field_017, Field_018, Field_019, Field_020, Field_021, Field_022, Field_023, Selphia_AirshipWay_024, Selphia_AirshipWay_025, Selphia_AirshipWay_026, Selphia_AirshipWay_027, Selphia_HousingArea_028, Selphia_HousingArea_029, Selphia_HousingArea_030, Selphia_HousingArea_031, Selphia_MelodyStreet_032, Selphia_MelodyStreet_033, Selphia_MelodyStreet_034, Selphia_MelodyStreet_035, Selphia_Observatory_036, Selphia_Observatory_037, Selphia_Observatory_038, Selphia_Observatory_039, Selphia_DragonLake_040, Selphia_DragonLake_041, Selphia_DragonLake_042, Selphia_DragonLake_043, SelphiaCastleGate_044, SelphiaCastleGate_045, SelphiaCastleGate_046, SelphiaCastleGate_047, Selphia_TownSquare_048, Selphia_TownSquare_049, Selphia_TownSquare_050, Selphia_TownSquare_051, Selphia_052, Selphia_053, Selphia_054, Selphia_055, Selphia_056, Selphia_057, Selphia_058, Selphia_059, Castle_DragonRoom_060, Castle_DragonRoom_061, Castle_DragonRoom_062, Castle_DragonRoom_063, YourRoom_064, ButlersRoom_065, YourRoom_066, YourRoom_067, YourRoom_068, YourRoom_069, TrophyRoom_070, TrophyRoomB2_071, YourRoom_072, TrophyRoomB3_073, Room_Dummy_074, Room_Dummy_075, Room_Dummy_076, MonsterBarn_077, MonsterBarn_078, MonsterBarn_079, MonsterBarn_080, MonsterBarn_081, MonsterBarn_082, MonsterBarn_083, MonsterBarn_084, MonsterBarn_085, MonsterBarn_086, MonsterBarn_087, MonsterBarn_088, MonsterBarn_089, MonsterBarn_090, MonsterBarn_091, MonsterBarn_092, MonsterBarn_093, MonsterBarn_094, MonsterBarn_095, MonsterBarn_096, MonsterBarn_097, MonsterBarn_098, MonsterBarn_099, MonsterBarn_100, MonsterBarn_101, MonsterBarn_102, MonsterBarn_103, MonsterBarn_104, MonsterBarn_105, MonsterBarn_106, MonsterBarn_107, MonsterBarn_108, MonsterBarn_109, MonsterBarn_110, MonsterBarn_111, MonsterBarn_112, MonsterBarn_113, MonsterBarn_114, MonsterBarn_115, MonsterBarn_116, MonsterBarn_117, MonsterBarn_118, MonsterBarn_119, MonsterBarn_120, MonsterBarn_121, MonsterBarn_122, MonsterBarn_123, MonsterBarn_124, MonsterBarn_125, MonsterBarn_126, SincerityGeneralStore_127, SincerityGeneral2F_128, Blacksmith_129, PorcolinesKitchen_130, PorcolinesKitchen2F_131, TinyBandageClinic_132, TinyBandageClinic2F_133, Carnations_134, Carnations2F_135, BellHotelLobby_136, BellHotelResidence_137, BellHotelGuestRoom_138, BellBath_139, MargaretsHouse_140, SainteCoquilleManor_141, SteCoquilleManor2F_142, FortesHouse_143, House_144, House_145, House_146, House_147, __148, House_149, House_150, House_151, House_152, House_153, House_154, House_155, House_156, House_157, House_158, Airship_159, Airship_160, SelphiaPlain_161, SelphiaPlain_162, SelphiaPlain_163, SelphiaPlain_164, SelphiaPlain_165, SelphiaPlain_166, SelphiaPlain_167, SelphiaPlainMushRoad_168, SelphiaPlainMushSpan_169, SelphiaPlainEast_170, SelphiaPlainEast_171, WaterRuins_172, SelphiaPlain_173, SelphiaPlainMushRoad_174, SelphiaPlainMushRoad_175, SelphiaPlainMushRoad_176, SelphiaPlainMushRoad_177, SelphiaPlain_178, Cliff_179, SelphiaPlainWest_180, SelphiaPlainWest_181, SelphiaPlainWest_182, SelphiaPlainMushRoad_183, SelphiaPlainMushRoad_184, SelphiaPlainWest_185, SelphiaPlainWest_186, TwinRocks_187, SelphiaPlainWest_188, LeonKarnak_189, SelphiaPlainWest_190, CedarTree_191, SelphiaPlainEast_192, SelphiaPlainEast_193, SelphiaPlainEast_194, SercerezoHill_195, DailyRoad_196, SelphiaPlainEast_197, IdraCave_198, SercerezoHill_199, SercerezoHill_200, SercerezoHill_201, SercerezoHill_202, SelphiaPlain_203, SelphiaPlain_204, AutumnBridge_205, AutumnBridge_206, AutumnRoad_207, AutumnRoad_208, AutumnRoad_209, DeliriumLavaRuins_210, AutumnRoad_211, AutumnRoad_212, AutumnRoad_213, AutumnRoad_214, AutumnRoad_215, AutumnRoad_216, AutumnRoad_217, AutumnRiver_218, AutumnRoad_219, AutumnRoad_220, AutumnRoad_221, AutumnRoad_222, AutumnRoad_223, AutumnRoad_224, AutumnRoad_225, MayaRoadEntrance_226, SelphiaPlainEast_227, CerezoBridge_228, CerezoBridge_229, SercerezoHill_230, CluckCluckNest_231, SilverArch_232, SilverArch_233, SilverLake_234, WinterSpring_235, AutumnSpring_236, SelphiaPlainEast_237, SummerSpring_238, SpringSpring_239, BuriedCave_240, KeenoLake_241, SelphiaPlain_242, SelphiaPlain_243, SilverLake_244, SilverLake_245, SilverLake_246, SercerezoHill_247, SercerezoHill_248, SercerezoLake_249, SercerezoHill_250, DemonsDen_251, SercerezoHill_252, SercerezoHillBridge_253, SercerezoHill_254, SercerezoHill_255, AutumnBridge_256, RevivalCave_257, MayaBridge_258, SercerezoHill_259, Cave_260, SpringField_261, SummerField_262, AutumnField_263, WinterField_264, SelphiaPlain_265, SelphiaPlain_266, SelphiaPlain_267, SelphiaPlain_268, SelphiaPlain_269, SelphiaPlain_270, YokmirForest_271, YokmirForestDepths_272, YokmirForest_273, YokmirForest_274, YokmirForest_275, YokmirForest_276, YokmirForest_277, YokmirForest_278, Forest_Dummy_279, Forest_Dummy_280, Forest_Dummy_281, Forest_Dummy_282, Forest_Dummy_283, WaterRuins_284, WaterRuinsDepths_285, WaterRuins_286, WaterRuins_287, WaterRuins_288, WaterRuins_289, WaterRuins_290, WaterRuins_291, WaterRuins_292, WaterRuins_293, WaterRuins_294, WaterRuins_295, WaterRuins_296, WaterRuins_297, WaterRuins_298, WaterRuins_299, WaterRuins_300, Temple_Dummy_301, Temple_Dummy_302, ObsidianMansion_303, ObsidianMnsnTheatre_304, ObsidianMnsnEntrance_305, ObsidianMansion_306, ObsidianMansion_307, ObsidianMansion_308, ObsidianMansion_309, ObsidianMansion_310, ObsidianMansion_311, ObsidianMansion_312, ObsidianMansion_313, ObsidianMansion_314, ObsidianMansion_315, ObsidianMansion_316, ObsidianMansion_317, ObsidianMansion_318, ObsidianMansion_319, ObsidianMansion_320, ObsidianMansion_321, Ruin_Dummy_322, Ruin_Dummy_323, LeonKarnak_324, LeonKarnakDepths_325, LeonKarnak_326, LeonKarnak_327, LeonKarnak_328, LeonKarnak_329, LeonKarnak_330, LeonKarnak_331, LeonKarnak_332, LeonKarnak_333, LeonKarnak_334, LeonKarnak_335, LeonKarnak_336, LeonKarnak_337, LeonKarnak_338, LeonKarnak_339, LeonKarnak_340, LeonKarnak_341, LeonKarnak_342, LeonKarnak_343, LeonKarnak_344, LeonKarnak_345, LeonKarnak_346, FloatingEmpire_347, FloatingEmpire_348, FloatingEmpireFront_349, FloatingEmpire_350, FloatingEmpire_351, FloatingEmpireSouth_352, FloatingEmpireSouth_353, FloatingEmpireSouth_354, FloatingEmpireSouth_355, FloatingEmpireSouth_356, FloatingEmpireSouth_357, FloatingEmpireSouth_358, FloatingEmpireSouth_359, FloatingEmpireSouth_360, FloatingEmpireSouth_361, FloatingEmpireSouth_362, FloatingEmpireSouth_363, FloatingEmpireSouth_364, FloatingEmpireSouth_365, FloatingEmpireSouth_366, FloatingEmpireSouth_367, FloatingEmpireSouth_368, FloatingEmpireSouth_369, FloatingEmpireSouth_370, FloatingEmpireSouth_371, FloatingEmpireSouth_372, FloatingEmpireSouth_373, FloatingEmpireSouth_374, FloatingEmpireSouth_375, FloatingEmpireSouth_376, FloatingEmpireWest_377, FloatingEmpireWest_378, FloatingEmpireWest_379, FloatingEmpireWest_380, FloatingEmpireWest_381, FloatingEmpireWest_382, FloatingEmpireWest_383, FloatingEmpireWest_384, FloatingEmpireWest_385, FloatingEmpireWest_386, FloatingEmpireWest_387, FloatingEmpireWest_388, FloatingEmpireWest_389, FloatingEmpireWest_390, FloatingEmpireWest_391, FloatingEmpireWest_392, FloatingEmpireWest_393, FloatingEmpireWest_394, FloatingEmpireWest_395, FloatingEmpireWest_396, FloatingEmpireWest_397, FloatingEmpireWest_398, FloatingEmpireWest_399, FloatingEmpireWest_400, FloatingEmpireWest_401, FloatingEmpireWest_402, FloatingEmpireWest_403, FloatingEmpireWest_404, FloatingEmpireWest_405, FloatingEmpireWest_406, FloatingEmpireWest_407, FloatingEmpireWest_408, FloatingEmpireEast_409, FloatingEmpireEast_410, FloatingEmpireEast_411, FloatingEmpireEast_412, FloatingEmpireEast_413, FloatingEmpireEast_414, FloatingEmpireEast_415, FloatingEmpireEast_416, FloatingEmpireEast_417, FloatingEmpireEast_418, FloatingEmpireEast_419, FloatingEmpireEast_420, FloatingEmpireEast_421, FloatingEmpireEast_422, FloatingEmpireEast_423, FloatingEmpireEast_424, FloatingEmpireEast_425, FloatingEmpireEast_426, FloatingEmpireEast_427, FloatingEmpireEast_428, FloatingEmpireEast_429, FloatingEmpireEast_430, FloatingEmpireEast_431, FloatingEmpireEast_432, FloatingEmpireEast_433, FloatingEmpireEast_434, FloatingEmpireEast_435, FloatingEmpireEast_436, FloatingEmpireEast_437, FloatingEmpireEast_438, FloatingEmpireSouth_439, FloatingEmpire_440, FloatingEmpire_441, WorldofFields_442, SharanceMaze_443, SharanceMaze_444, SharanceMaze_445, SharanceMaze_446, SharanceMaze_447, SharanceMaze_448, SharanceMaze_449, SharanceMaze_450, SharanceMaze_451, SharanceMaze_452, SharanceMaze_453, YokmirCave_454, YokmirCave_455, YokmirCave_456, YokmirCave_457, YokmirCave_458, YokmirCave_459, YokmirCave_460, YokmirCave_461, YokmirCave_462, YokmirCave_463, YokmirCave_464, YokmirCave_465, YokmirCave_466, YokmirCave_467, YokmirCave_468, YokmirCave_469, YokmirCave_470, YokmirCave_471, YokmirCave_472, YokmirCave_473, YokmirCave_474, YokmirCave_475, YokmirCave_476, YokmirCave_477, YokmirCave_478, YokmirCave_479, YokmirCave_480, YokmirCave_481, YokmirCave_482, YokmirCave_483, YokmirCave_484, YokmirCave_485, DeliriumLavaRuins_486, DeliriumLavaRuins_487, DeliriumLavaRuins_488, DeliriumLavaRuins_489, DeliriumLavaRuins_490, DeliriumLavaRuins_491, DeliriumLavaRuins_492, DeliriumLavaRuins_493, DeliriumLavaRuins_494, DeliriumLavaRuins_495, DeliriumLavaRuins_496, DeliriumLavaRuins_497, DeliriumLavaRuins_498, DeliriumLavaRuins_499, DeliriumLavaRuins_500, DeliriumLavaRuins_501, DeliriumLavaRuins_502, DeliriumLavaRuins_503, DeliriumLavaRuins_504, DeliriumLavaRuins_505, DeliriumLavaRuins_506, DeliriumLavaRuins_507, DeliriumLavaRuins_508, DeliriumLavaRuins_509, DeliriumLavaRuins_510, DeliriumLavaRuins_511, DeliriumLavaRuins_512, DeliriumLavaRuins_513, DeliriumLavaRuins_514, DeliriumLavaRuins_515, DeliriumLavaRuins_516, DeliriumLavaRuins_517, DeliriumLavaRuins_518, DeliriumLavaRuins_519, DeliriumLavaRuins_520, DeliriumLavaRuins_521, DeliriumLavaRuins_522, DeliriumLavaRuins_523, DeliriumLavaRuins_524, DeliriumLavaRuins_525, DeliriumLavaRuins_526, Unknown_527, Unknown_528, Unknown_529, Unknown_530, Unknown_531, Unknown_532, Unknown_533, Unknown_534, Unknown_535, Unknown_536, Unknown_537, Unknown_538, Unknown_539, Unknown_540, IdraCave_541, IdraCave_542, IdraCave_543, IdraCave_544, IdraCave_545, IdraCave_546, IdraCave_547, IdraCave_548, IdraCave_549, IdraCave_550, IdraCave_551, IdraCaveB1_552, IdraCaveB1_553, IdraCaveB1_554, IdraCaveB1_555, IdraCaveB1_556, IdraCaveB1_557, IdraCaveB1_558, IdraCaveB1_559, IdraCaveB1_560, IdraCaveB1_561, IdraCaveB1_562, IdraCaveB1_563, IdraCaveB1_564, IdraCaveB1_565, IdraCaveB1_566, IdraCaveB1_567, IdraCaveB1_568, IdraCaveB1_569, IdraCaveB1_570, IdraCaveB1_571, IdraCaveB2_572, IdraCaveB2_573, IdraCaveB2_574, IdraCaveB2_575, IdraCaveB2_576, IdraCaveB2_577, IdraCaveB2_578, IdraCaveB2_579, IdraCaveB2_580, IdraCaveB2_581, IdraCaveB2_582, IdraCaveB2_583, IdraCaveB2_584, IdraCaveB2_585, IdraCaveB2_586, IdraCaveB2_587, IdraCaveB2_588, IdraCaveB2_589, IdraCaveB2_590, IdraCaveB2_591, IdraCaveB2_592, IdraCaveB2_593, ImperialResearchCntr_594, MayaRoad_595, MayaRoad_596, MayaRoad_597, MayaRoad_598, MayaRoad_599, MayaRoad_600, MayaRoad_601, MayaRoad_602, MayaRoad_603, MayaRoad_604, MayaRoad_605, MayaRoad_606, MayaRoad_607, MayaRoad_608, MayaRoad_609, MayaRoad_610, MayaRoad_611, MayaRoad_612, MayaRoad_613, MayaRoad_614, MayaRoad_615, MayaRoad_616, MayaRoad_617, MayaRoad_618, MayaRoad_619, MayaRoad_620, MayaRoad_621, MayaRoad_622, MayaRoad_623, MayaRoad_624, MayaRoad_625, MayaRoad_626, MayaRoad_627, MayaRoad_628, MayaRoad_629, MayaRoad_630, MayaRoad_631, MayaRoad_632, MayaRoad_633, MayaRoad_634, MayaRoad_635, MayaRoad_636, MayaRoad_637, MayaRoad_638, MayaRoad_639, MayaRoad_640, MayaRoad_641, MayaRoad_642, MayaRoad_643, MayaRoad_644, MayaRoad_645, MayaRoad_646, MayaRoad_647, MayaRoad_648, MayaRoad_649, MayaRoad_650, MayaRoad_651, MayaRoad_652, MayaRoad_653, MayaRoad_654, MayaRoad_655, MayaRoad_656, MayaRoad_657, SechsTerritory_658, SechsTerritory_659, SechsTerritory_660, SechsTerritory_661, SechsTerritory_662, SechsTerritory_663, SechsTerritory_664, SechsTerritory_665, SechsTerritory_666, SechsTerritory_667, SechsTerritory_668, SechsTerritory_669, SechsTerritory_670, SechsTerritory_671, SechsTerritory_672, SechsTerritory_673, SechsTerritory_674, SechsTerritory_675, SechsTerritory_676, SechsTerritory_677, SechsTerritory_678, SechsTerritory_679, SechsTerritory_680, SechsTerritory_681, SechsTerritory_682, SechsTerritory_683, SechsTerritory_684, SechsTerritory_685, SechsTerritory_686, SechsTerritory_687, SechsTerritory_688, SechsTerritory_689, SechsTerritory_690, SechsTerritory_691, SechsTerritory_692, SechsTerritory_693, SechsTerritory_694, SechsTerritory_695, SechsTerritory_696, SechsTerritory_697, SechsTerritory_698, SechsTerritory_699, SechsTerritory_700, SechsTerritory_701, SechsTerritory_702, SechsTerritory_703, SechsTerritory_704, SechsTerritory_705, SechsTerritory_706, SechsTerritory_707, SechsTerritory_708, SechsTerritory_709, SechsTerritory_710, SechsTerritory_711, SechsTerritory_712, SechsTerritory_713, SechsTerritory_714, SechsTerritory_715, SechsTerritory_716, SechsTerritory_717, SechsTerritory_718, SechsTerritory_719, SechsTerritory_720, SechsTerritory_721, SechsTerritory_722, SechsTerritory_723, SechsTerritory_724, SechsTerritory_725, RunePrana_726, RunePrana_727, RunePrana_728, RunePrana_729, RunePrana_730, RunePrana_731, RunePrana_732, RunePrana_733, RunePrana_734, RunePrana_735, RunePrana_736, RunePrana_737, RunePrana_738, RunePrana_739, RunePrana_740, RunePrana_741, RunePrana_742, RunePrana_743, RunePrana_744, RunePrana_745, RunePrana_746, RunePrana_747, RunePrana_748, RunePrana_749, RunePrana_750, RunePrana_751, RunePrana_752, RunePrana_753, RunePrana_754, RunePrana_755, RunePrana_756, RunePrana_757, RunePrana_758, RunePrana_759, RunePrana_760, RunePrana_761, RunePrana_762, RunePrana_763, RunePrana_764, RunePrana_765, RunePrana_766, RunePrana_767, RunePrana_768, RunePrana_769, RunePrana_770, RunePrana_771, RunePrana_772, RunePrana_773, RunePrana_774, RunePrana_775, RunePrana_776, RunePrana_777, RunePrana_778, RunePrana_779, RunePrana_780, RunePrana_781, RunePrana_782, RunePrana_783, RunePrana_784, RunePrana_785, RunePrana_786, RunePrana_787, RunePrana_788, RunePrana_789, RunePrana_790, RunePrana_791, RunePrana_792, RunePrana_793, RunePrana_794, RunePrana_795, RunePrana_796, RunePrana_797, RunePrana_798, RunePrana_799, RunePrana_800, RunePrana_801, RunePrana_802, RunePrana_803, RunePrana_804, RunePrana_805, RunePrana_806, RunePrana_807, RunePrana_808, RunePrana_809, RunePrana_810, RunePrana_811, RunePrana_812, RunePrana_813, RunePrana_814, RunePrana_815, RunePrana_816, RunePrana_817, RunePrana_818, RunePrana_819, RunePrana_820, RunePrana_821, RunePrana_822, RunePrana_823, RunePrana_824, RunePrana_825, RunePrana_826, RunePrana_827, RunePrana_828, RunePrana_829, RunePrana_830, RunePrana_831, RunePrana_832, RunePrana_833, RunePrana_834, RunePrana_835, RunePrana_836, RunePrana_837, RunePrana_838, RunePrana_839, RunePrana_840, RunePrana_841, RunePrana_842, RunePrana_843, RunePrana_844, RunePrana_845, RunePrana_846, RunePrana_847, RunePrana_848, RunePrana_849, RunePrana_850, RunePrana_851, RunePrana_852, CluckCluckNest_853, CluckCluckNest_854, CluckCluckNest_855, CluckCluckNest_856, CluckCluckNest_857, RevivalCave_858, RevivalCave_859, RevivalCave_860, DemonsDen_861, DemonsDen_862, DemonsDen_863, DemonsDen_864, DemonsDen_865, DemonsDen_866, DemonsDen_867, DemonsDen_868, DemonsDen_869, __870, __871, VolkanonBridge_872, AmoureuxdesSaisons_873 } ROOM; typedef enum { Cabbage = 1, KingCabbage, PinkTurnip, ColossalPink, PinkMelon, ConquerorMelon, Onion, UltraOnion, Pumpkin, DoomPumpkin, Cucumber, KaiserCucumber, Corn, GigantCorn, Tomato, TitanTomato, Eggplant, EmperorEggplant, Yam, LordlyYam, Potato, PrincelyPotato, Carrot, RoyalCarrot, GreenPepper, GreenPepperRex, Spinach, SovereignSpinach, Turnip, TyrantTurnip, Radish, NobleRadish, Leek, LegendaryLeek, BokChoy, BossBokChoy, HotHotFruit, GiantHotHotFruit, BambooSprout, GoldenCabbage, GoldenKingCabbage, GoldenPumpkin, GldnDoomPumpkin, GoldenPotato, GoldPrincePotato, GoldenTurnip, GoldenTyrantTurnip, MushroomA, MushroomB, MushroomC, MushroomD, MushroomE, Mushroom, MonarchMushroom, Strawberry, SultanStrawberry, Pineapple, KingPineapple, Grapes, Apple, Orange, MealyApple, Toyherb, UltraToyherb, MoondropFlower, UltraMoondropFlower, PinkCat, KingPinkCat, CharmBlue, GreatCharmBlue, MedicinalHerb, AntidoteGrass, BlackGrass, OrangeGrass, RedGrass, YellowGrass, BlueGrass, GreenGrass, PurpleGrass, IndigoGrass, WhiteGrass, Weeds, WitheredGrass, CherryGrass, KingCherryGrass, LampGrass, KaiserLampGrass, BlueCrystal, BigBlueCrystal, EmeryFlower, GreatEmeryFlower, Ironleaf, SuperIronleaf, FourLeafClover, Great4LeafClover, Fireflower, BigFireflower, GreenCrystal, BigGreenCrystal, NoelGrass, LargeNoelGrass, AutumnGrass, BigAutumnGrass, PomPomGrass, KingPomPomGrass, RedCrystal, BigRedCrystal, WhiteCrystal, BigWhiteCrystal, AyngondaiaLawn, TheProtein, Intelligencer, VitalGummi, HeartDrink, AntidotePotion, ParaGone, Roundoff, ColdMedicine, Formuade, LovePotion, Invinciroid, Leveliser, HeavySpice, SweetPowder, SourDrop, MixedHerbs, RecoveryPotion, HealingPotion, MysteryPotion, MagicalPotion, ObjectX, FailedDish, DisastrousDish, TroutSashimi, CharSashimi, RainbowSashimi, SalmonSashimi, CherrySashimi, TaimenSashimi, SnapperSashimi, GlitterSashimi, LoverSashimi, GirellaSashimi, SkipjackSashimi, YellowtailSashimi, TunaSashimi, SardineSashimi, NeedlefishSashimi, PikeSashimi, FlounderSashimi, TurbotSashimi, FallSashimi, SquidSashimi, SunsquidSashimi, LampSquidSashimi, BlowfishSashimi, LobsterSashimi, ShrimpSashimi, FriedVeggies, FriedRice, CabbageCakes, FrenchFries, Croquettes, Popcorn, CornCereal, MisoEggplant, FriedEggs, Omelet, OmeletRice, BakedApple, CurryBread, FrenchToast, Donut, FriedUdon, Tempura, Pancakes, Gyoza, Risotto, DryCurry, SaltedMasuTrout, SaltedChar, SaltedRTrout, SaltedCSalmon, SaltedChub, SaltedSalmon, SaltedTaimen, GrilledCCarp, GrilledGibelio, GrilledSnapper, GrilledGirella, GrilledGSnapper, GrilledLSnapper, GrilledSkipjack, GrilledMackerel, GrilledYellowtail, SaltedPondSmelt, TunaTeriyaki, DriedSardines, GrilledNeedlefish, SaltedPike, GrilledFlounder, GrilledTurbot, GrilledFFlounder, GrilledSquid, GrilledSunsquid, GrilledLampSquid, GrilledBlowfish, GrilledLobster, GrilledShrimp, GrilledSFlounder, HotMilk, HotChocolate, GrapeLiqueur, BoiledPumpkin, BoiledSpinach, BoiledEgg, GlazedYam, BoiledGyoza, StrawberryJam, AppleJam, GrapeJam, Marmalade, CheeseFondue, Udon, CurryUdon, TempuraUdon, RicePorridge, MilkPorridge, TempuraBowl, EggBowl, Stew, CurryRice, UltimateCurry, RoyalCurry, RelaxTea, GrilledMiso, UnionStew, RockfishStew, CornontheCob, BakedOnigiri, SweetPotato, Toast, JamRoll, ButterRoll, Pizza, SeafoodPizza, Doria, SeafoodDoria, Gratin, SeafoodGratin, YamoftheAges, Cookie, ChocoCookie, Cake, ChocolateCake, Cheesecake, ApplePie, PineappleJuice, TomatoJuice, GrapeJuice, OrangeJuice, AppleJuice, StrawberryMilk, FruitJuice, FruitSmoothie, VegetableJuice, VeggieSmoothie, MixedJuice, MixedSmoothie, Ketchup, Butter, GoldJuice, PreludetoLove, HotJuice, SteamedBread, CheeseBread, MeatDumpling, ChineseManju, CurryManju, SteamedGyoza, PoundCake, ChocolateSponge, Flan, PumpkinFlan, Dumplings, Salad, Sandwich, FruitSandwich, PickledTurnip, Pickles, BambooRice, RaisinBread, IceCream, RelaxTeaLeaves, Onigiri, Bread, SalmonOnigiri, PickleMix, TurnipHeaven, Rice, Chocolate, Wine, ElliLeaves, Milk_S, Milk_M, Milk_L, Egg_S, Egg_M, Egg_L, Mayonnaise, Cheese, Yogurt, Honey, Flour, Oil, CurryPowder, RiceFlour, MedicineBread, MedicineBreadPlus, CookingBread, CookingBreadPlus, WeaponBread, WeaponBreadPlus, AccessoryBread, AccessoryBreadPlus, FarmingBread, FarmingBreadPlus, Broadsword, SteelSword, WindSword, AquaSword, Defender, AerialBlade, BurningSword, Sakura, LuckBlade, PlatinumSword, Raventine, Icifier, SoulEater, SmashBlade, DragonSlayer, Sunspot, StarSaber, GaiaSword, Grantale, ChaosBlade, RuneBlade, SteelSwordPlus, PlatinumSwordPlus, Cutlass, BackScratcher, Durendal, Gladius, GorgeousSword, Spoon, RuneLegend, Snakesword, Veggieblade, Invisiblade, PlantSword, Claymore, Zweihaender, FlameSaber, CycloneBlade, DancingDicer, GreatSword, HeavenAsunder, GrandSmasher, BlueEyedBlade, PoisonBlade, SteelSlicer, Flamberge, ShineBlade, EarthShade, BioSmasher, Punisher, SeaCutter, Volcanon, SnowCrown, MoonShadow, ForceElement, ZweihaenderPlus, FlambergePlus, Katzbalger, BigKnife, Katana, Balmung, Psycho, Dekash, Braveheart, Belzebuth, Daicone, Caliburn, Orochi, Spear, Lance, NeedleSpear, Halberd, WaterSpear, BloodLance, WoodStaff, PoisonSpear, Corsesca, SilentGrave, FlareLance, HeavyLance, Iceberg, Metus, MonkStaff, Overbreak, Brionac, FeatherLance, Belvarose, Bjor, Gungnir, LancePlus, CorsescaPlus, Trident, Pitchfork, DragonsFang, GaeBolg, MagicalLance, SafetyLance, Legion, PoisonQueen, PineClub, Fivestaff, BattleHammer, WarHammer, GreatHammer, Schnabel, GigantHammer, Mjolnir, SpikedHammer, FlameHammer, IceHammer, SkyHammer, GravitonHammer, BoneHammer, CrystalHammer, WarHammerPlus, GigantHammerPlus, Hammer, ToyHammer, FatalCrush, StrongStone, Kongo, Bat, IronBat, SplashStar, BattleAxe, PoleAxe, Alldale, GreatAxe, DemonAxe, CrescentAxe, Executioner, HeatAxe, FrostAxe, Tomahawk, RockAxe, DoubleEdge, SaintAxe, PoleAxePlus, CrescentAxePlus, Axe, Lollipop, BattleScythe, BasiliskFang, DevilFinger, Rod, Staff, SilverStaff, FlareStaff, IceStaff, LightningWand, EarthStaff, WizardsStaff, MagesStaff, RuneStaff, MagesStaffPlus, MagicBroom, Basket, MagicShot, HellBranch, CrimsonStaff, BubbleStaff, GaiaRod, ShootingStarStaff, CycloneRod, StormWand, RubyRod, EmeraldRod, SapphireRod, AmethystRod, AquamarineRod, DiamondRod, FriendlyRod, LoveLoveRod, SorcerersWand, HellCurse, Algernon, GoldenTurnipStaff, SweetPotatoStaff, ElvishHarp, Syringe, ShortDagger, SteelEdge, WindEdge, FrostEdge, SteelKatana, SonicDagger, Salamander, TwinBlade, Rampage, PlatinumEdge, Efreet, DeepBlizzard, DarkInvitation, ForceDivide, DragoonClaw, HeartFire, DesertWind, BrokenWall, OrcusSword, ChaosEdge, RuneEdge, IronEdge, EmeraldEdge, ThiefKnife, DoubleScratch, PriestSaber, EarnestEdge, GorgeousLx, Acutorimass, TwinLeeks, TwinJustice, LeatherGloves, BrassKnuckles, Kote, BearClaws, FistsofFire, FistsofWater, FistsofWind, FistsoftheEarth, FistsofLight, FistsofDark, Gloves_A, CatPunch, DragonClaws, AnimalPuppets, IronleafFists, GolemPunch, HandofGod, Caestus, BazalKatar, Fenrir, CheapHoe, SturdyHoe, SeasonedHoe, ShinyHoe, BlessedHoe, CheapWaterpot, TinWaterpot, LionWaterpot, RainbowWaterpot, JoyWaterpot, CheapSickle, IronSickle, QualitySickle, SuperSickle, LegendarySickle, CheapHammer, IronHammer, SilverHammer, GoldenHammer, PlatinumHammer, CheapAxe, ChoppingAxe, LumberAxe, MountainAxe, MiracleAxe, CheapPole, BeginnersPole, SkilledPole, FamousPole, SacredPole, SmallShield, IronShield, RoundShield, PlatinumShield, HeavyShield, KnightShield, RuneShield, MagicShield, PrismShield, ElementShield, ChaosShield, TurtleShield, BoneShield, KiteShield, MagicalShield, MonkeyPlush, Umbrella, MagicPlantShield, AquamarineRing, AmethystRing, EmeraldRing, SapphireRing, DiamondRing, RubyRing, HappyRing, CursedRing, FireRing, WindRing, WaterRing, EarthRing, SilverRing, GoldRing, PlatinumRing, CriticalRing, SilentRing, ParalysisRing, PoisonRing, MagicRing, CheapBracelet, BronzeBracelet, SilverBracelet, GoldBracelet, PlatinumBracelet, AquamarineBrooch, AmethystBrooch, EmeraldBrooch, SapphireBrooch, DiamondBrooch, RubyBrooch, SilverPendant, HeartPendant, StarPendant, SunPendant, FieldPendant, DewPendant, EarthPendant, HolyAmulet, Charm, LeatherBelt, LuckyStrike, Talisman, ChampBelt, Gloves_B, WorkGloves, Badge, PowerGloves, MagicCharm, ShieldRing, Rosary, CourageBadge, HerosProof, ProofofWisdom, HandKnitScarf, FluffyScarf, ArtofAttack, ArtofDefense, ArtofMagic, Earrings, WitchEarrings, MagicEarrings, VentisCharmA, VentisCharmB, AnettesNecklace, ThrowingRing, StayUpRing, StrangePendant, DolphinBrooch, EngagementRing, SilverHairpin, GoldHairpin, FancyHat, Headband, FeatheredHat, BrandGlasses, Spectacles, IntelligentGlasses, StrawHat, FireproofHood, CuteKnitting, BlackRibbon, OrangeRibbon, RedRibbon, YellowRibbon, BlueRibbon, GreenRibbon, PurpleRibbon, IndigoRibbon, WhiteRibbon, TurnipHeadgear, PumpkinHeadgear, SpringHeaddress, SummerHeaddress, AutumnHeaddress, WinterHeaddress, LolitaHeaddress, Headdress, CatEars, Crown, FourSeasons, SilkHat, FeatherBoots, HeavyBoots, LeatherBoots, KnightBoots, SnowBoots, IceSkates, PiyoSandals, StepInBoots, GhostBoots, IronGeta, StriderBoots, SecretShoes, WetBoots, SneakingBoots, FastStepBoots, WaterShoes, RocketWing, SilverBoots, GoldBoots, BoneBoots, FairyBoots, FreeFarmingShoes, Shirt, Vest, WoolyShirt, MercenarysCloak, Mail, CottonCloth, ChainMail, ScaleVest, Protector, WindCloak, SparklingShirt, PlatinumMail, LamellarVest, ElvishCloak, PowerProtector, DragonCloak, RuneVest, RoyalGarter, FourDragonsVest, Brush, Clippers, MagnifyingGlass, TurnipSeeds, PotatoSeeds, CucumberSeeds, StrawberrySeeds, CabbageSeeds, MoondropSeeds, ToyherbSeeds, TomatoSeeds, CornSeeds, OnionSeeds, PumpkinSeeds, PineappleSeeds, PinkCatSeeds, EggplantSeeds, CarrotSeeds, YamSeeds, SpinachSeeds, GreenPepperSeeds, CharmBlueSeeds, FodderSeeds, CherryGrassSeeds, LampGrassSeeds, BlueCrystalSeeds, EmeryFlowerSeeds, IronleafSeeds, CloverSeeds, FireflowerSeeds, GreenCrystalSeeds, NoelGrassSeeds, AutumnGrassSeeds, PomPomGrassSeeds, RedCrystalSeeds, WhiteCrystalSeeds, PinkTurnipSeeds, RadishSeeds, LeekSeeds, BokChoySeeds, GoldCabbageSeeds, GoldPumpkinSeeds, GoldPotatoSeeds, GoldTurnipSeeds, GoldMelonSeeds, HotHotSeeds, AppleTreeSeeds, OrangeTreeSeed, GrapeTreeSeed, ShiningSeed, DungeonSeed, SwordSeed, ShieldSeed, WettablePowder, Greenifier, GreenifierPlus, FormulaA, FormulaB, FormulaC, NoRotAlpha, NoRotBeta, Giantizer, Minimizer, Fodder, Fur_S, Fur_M, Fur_L, Yarn, ScrapMetal, Iron, Bronze, Silver, Gold, Platinum, Orichalcum, Diamond, Ruby, Emerald, Sapphire, Amethyst, Aquamarine, CheapCloth, QualityCloth, SilkCloth, Arrowhead, WarriorsProof, Glue, OldBandage, Gunpowder, EarthCrystal, DevilHorn, DevilBlood, MagicPowder, MagicCrystal, ShoulderPiece, GiantsNail, GiantsGloves, HammerPiece, InsectCarapace, InsectJaw, SpidersThread, PrettyThread, PrettyCarapace, RigidHorn, ScorpionTail, ScorpionPincer, PantherClaw, DragonFang, WolfFang, QualityFur, BullsHorn, BirdsFeather, WindCrystal, Fur, Root, Spore, PoisonPowder, PlantStem, StrongVine, FishFossil, WaterCrystal, TurtleShell, FireCrystal, GhostHood, Skull, BrokenHilt, BrokenBox, FairyDust, SmallCrystal, WoolyFurball, LightCrystal, DarkCrystal, LoveCrystal, RaccoonLeaf, DragonBones, RedLionFur, BlueLionFur, BrokenIceWall, Ammonite, IcyNose, ChestHair, ChimeraTail, GrimoireScale, LegendaryScale, DragonFin, MovingBranch, ElectroCrystal, MelodyBottle, GolemTablet, EarthwyrmScale, FirewyrmScale, AmbrosiasThorns, LightningMane, CursedDoll, PuppetryStrings, LeftRockShard, RightRockShard, CrystalSkull, ThroneoftheEmpire, WindDragonTooth, RuneSphereShard, RafflesiaPetal, MTGUPlate, CheapPropeller, QualityPropeller, RustyScrew, ShinyScrew, PalmClaw, MalmClaw, BigCrystal, RuneCrystal, GreenCore, RedCore, YellowCore, BlueCore, WaterDragonAsh, FireDragonAsh, EarthDragonAsh, HolySpore, WhiteStone, InvisibleStone, ShadeStone, DoubleSteel, TenFoldSteel, RoundStone, GlittaAugite, LightOre, ScrapMetalPlus, Stick, QualityPuffyFur, YellowDown, PenguinDown, IvoryTusk, UnbrokenIvoryTusk, TinyGolemStone, ParalysisPoison, BlackBirdFeather, Vine, InsectHorn, MysteriousPowder, WetScale, Magic, GoldWolfFang, BlueGiantsGlove, ThickStick, MagicClaw, GlisteningBlade, FairyElixir, GreatHammerShard, GolemStone, BlackTortoiseShell, ThunderbirdFeather, BigGiantsNail, YellowFeather, QualityWornCloth, PiratesArmor, BladeShard, ProofofRank, TurnipsMiracle, DragonScale, GolemSpiritStone, AncientOrcCloth, QueensJaw, PoisonKing, DangerousScissors, ChimerasClaw, TabletofTruth, BigBirdsComb, BattleTurnip, BlackScale, BlueScale, GlitterScale, CrimsonScale, LoveScale, DragonicStone, MasuTrout, Squid, Taimen, Sardine, Char, Chub, GlitterSnapper, Skipjack, Turbot, Gibelio, Salmon, Mackerel, Needlefish, Pike, Sunsquid, Shrimp, Snapper, ThrobbySnapper, RainbowTrout, Flounder, Blowfish, Yellowtail, CrucianCarp, Tuna, Girella, FallFlounder, CherrySalmon, LampSquid, Lobster, PondSmelt, SandFlounder, Rockfish, Can, Boot, RareCan, Rock, Branch, Lumber, MaterialStone, Escape_S, Fireball_S, BigFire_S, Explosion_S, WaterLaser_S, ParallelLaser_S, DeltaLaser_S, ScrewRock_S, EarthSpike_S, AvengerRock_S, SonicWind_S, DoubleSonic_S, PenetrateSonic_S, LightBarrier_S, Shine_S, Prism_S, DarkBall_S, DarkSnake_S, Darkness_S, Cure_S, CureAll_S, MasterCure_S, Medipoison_S, Mediparalyze_S, Mediseal_S, GreetingSpell_S, PowerWave_S, DashSlash_S, RushAttack_S, RoundBreak_S, MindThrust_S, Gust_S, Storm_S, Blitz_S, TwinAttack_S, RailStrike_S, WindSlash_S, FlashStrike_S, NaiveBlade_S, SteelHeart_S, DeltaStrike_S, Hurricane_S, ReaperSlash_S, Millionstrike_S, AxelDisaster_S, StardustUpper_S, TornadoSwing_S, GrandImpact_S, GigaSwing_S, UpperCut_S, DoubleKick_S, StraightPunch_S, NekoDamashi_S, RushPunch_S, Cyclone_S, RapidMove_S, BonusConcerto_S, StrikingMarch_S, IronWaltz_S, Minerals, Liquids, ClawsandFangs, SticksandStems, ClothsandSkins, Furs, Strings, Shards, PowdersandSpores, Scales, ShellsandBones, Stones, Turnip_B, Crystals, Jewels, Feathers, Jam, Curry, Squid_B, BattleTurnip_B, GoldBattleTurnip, Bullet, GoldenBullet, CherryTurnip, DisgustingFood } ITEMID; typedef enum { Escape, Fireball, BigFire, Explosion, WaterLaser, ParallelLaser, DeltaLaser, ScrewRock, EarthSpike, AvengerRock, SonicWind, DoubleSonic, PenetrateSonic, LightBarrier, Shine, Prism, DarkBall, DarkSnake, Darkness, Cure, CureAll, MasterCure, Medipoison, Mediparalyze, Mediseal, GreetingSpell, PowerWave, DashSlash, RushAttack, RoundBreak, MindThrust, Gust, Storm, Blitz, TwinAttack, RailStrike, WindSlash, FlashStrike, NaiveBlade, SteelHeart, DeltaStrike, Hurricane, ReaperSlash, Millionstrike, AxelDisaster, StardustUpper, TornadoSwing, GrandImpact, GigaSwing, UpperCut, DoubleKick, StraightPunch, NekoDamashi, RushPunch, Cyclone, RapidMove, BonusConcerto, StrikingMarch, IronWaltz } SPELLID; typedef enum { Nothing_C, Stone_C, Rock_C, Branch_C, TreeStump_C, BrokenStump_C, PoisonSwamp_C, EllieLeaves_C, MedicinalHerb_C, AntidotalHerb_C, BlackGrass_C, OrangeGrass_C, RedGrass_C, YellowGrass_C, BlueGrass_C, GreenGrass_C, PurpeGrass_C, IndigoGrass_C, WhiteGrass_C, Weed_C, WitheredGrass_C, BambooSprout_C, ClayStone_C, RuneFlower_C, RuneCrystal_C, AyngondaiaLawn_C, Mineral_Scrap_C, Mineral_Iron_C, MineralC_C, MineralD_C, MineralE_C, MineralF_C, MineralG_C, MineralH_C, MineralI_C, MineralJ_C, MineralK_C, MineralL_C, Strawberry_C, Cabbage_C, PinkTurnip_C, Onion_C, Toyherb_C, MoondropFlower_C, CherryGrass_C, LampGrass_C, EmeryFlower_C, BlueCrystal_C, GoldenCabbage_C, PinkMelon_C, Pumpkin_C, Cucumber_C, Corn_C, Tomato_C, Eggplant_C, Pineapple_C, PinkCat_C, Ironleaf_C, FourLeafClover_C, Fireflower_C, GreenCrystal_C, GoldenPumpkin_C, Yam_C, Potato_C, Carrot_C, GreenPepper_C, Spinach_C, CharmBlue_C, AutumnGrass_C, PomPomGrass_C, RedCrystal_C, GoldenPotato_C, Turnip_C, Radish_C, Leek_C, BokChoy_C, NoelGrass_C, WhiteCrystal_C, GoldenTurnip_C, HotHotFruit_C, Fodder_C, AppleTree_C, OrangeTree_C, GrapeTree_C, TwinkleTree_C, DungeonFlower_C, SwordFlower_C, ShieldFlower_C, TilledEarth_C, SultanStrawberry_C, KingCabbage_C, PinkTurnipB_C, UltraOnion_C, UltraToyherb_C, GreatMoondropFlower_C, KingCherryGrass_C, KaiserLampGrass_C, GreatEmeryFlower_C, BigBlueCrystal_C, KingGoldCabbage_C, ConquerorMelon_C, DoomPumpkin_C, KaiserCucumber_C, GigantCorn_C, TitanTomato_C, EmperorEggplant_C, KingPineapple_C, KingPinkCat_C, UltraIronleaf_C, GiantFourLeafClover_C, BigFireflower_C, BigGreenCrystal_C, GoldenDoomPumpkin_C, LordlyYam_C, PrincelyPotato_C, RoyalCarrot_C, GreenPepperRex_C, SovereignSpinach_C, GreatCharmBlue_C, GreatAutumnGrass_C, KingPomPomGrass_C, BigRedCrystal_C, GoldenPrincelyPotato_C, TyrantTurnip_C, NobleRadish_C, LegendaryLeek_C, BossBokChoy_C, LargeNoelGrass_C, BigWhiteCrystal_C, GoldenTyrantTurnip_C, GiantHotHotFruit_C, FodderB_C, LargeAppleTree_C, LargeOrangeTree_C, LargeGrapeTree_C, LargeTwinkleTree_C, DungeonFlowerB_C, SwordFlowerB_C, ShieldFlowerB_C, } CROPID; typedef enum { None_000, Table_292 = 292, Table_293, Table_294, Chair_295, Chair_296, PommePommeToy_297, WoolyToy_298, ChipsqueekToy_299, DuckToy_300, WolfToy_301, RuneSaur_302, SpringPottedPlant_303, SummerPottedPlant_304, AutumnPottedPlant_305, WinterPottedPlant_306, Cactus_307, CuteStatue_308, ColumnStatue_309, Snowman_310, RainbowArt_311, Barrel_312, Brazier_313, LargeAnchor_314, FoldingScreen_315, RollingBall_316, RollingBall_317, RollingBall_318, RollingBall_319, BouncingBall_320, BouncingBall_321, BouncingBall_322, BouncingBall_323, VentisCharm_324, WeaponBox_325, Dummy_326, Bed_327, DoubleBed_328, Bird_329, Bird_330, Bird_331, Bird_332, Sign_333, Sign_334, Bookshelf_335, Butterfly_336, Butterfly_337, Butterfly_338, Butterfly_339, Calendar_340, Closet_341, FertilizerBin_342, CookingTable_343, Knife_344, FryingPan_345, Pot_346, Oven_347, Steamer_348, Mixer_349, ChemistrySet_350, Forge_351, CraftingTable_352, Statue_353, Statue_354, Statue_355, Statue_356, Statue_357, Statue_358, Statue_359, Statue_360, Diary_361, Dice_362, Sign_363, Sign_364, FarmToolBox_365, Fridge_366, Fridge_367, Device_368, WingFin_369, SmallFodderBin_370, BitingGrass_371, LumberStoneBox_372, MusicPlayer_373, OrderBoard_374, BigFodderBin_375, Mailbox_376, Fence_377, Fence_378, SavePoint_379, ShopBox_380, Storage_381, ShippingBox_382, Telecommunicator_383, Can_384, Can_385, Warp_386, Well_387, FurnitureStore_388, FashionStore_389, FishMarket_390, MagicStore_391, JewelryStore_392, AbilityStore_393 } OBJID; //----------------------------------- // Define aux structures typedef struct { } UNKNWN; // Mini-scruct for bitflag arrays typedef struct ( int idx ) { local int idx = idx; ubyte flag : 1; } BFLAG ; // Flags on whether an area was discovered (visible on map) typedef struct { struct { ubyte __000 : 1; ubyte __001 : 1; ubyte __002 : 1; ubyte __003 : 1; } blank; struct { ubyte Farm_004 : 1; ubyte Farm_005 : 1; ubyte Farm_006 : 1; ubyte Farm_007 : 1; ubyte Field_008 : 1; ubyte Field_009 : 1; ubyte Field_010 : 1; ubyte Field_011 : 1; ubyte Field_012 : 1; ubyte Field_013 : 1; ubyte Field_014 : 1; ubyte Field_015 : 1; ubyte Field_016 : 1; ubyte Field_017 : 1; ubyte Field_018 : 1; ubyte Field_019 : 1; ubyte Field_020 : 1; ubyte Field_021 : 1; ubyte Field_022 : 1; ubyte Field_023 : 1; } farmAndFields; struct { ubyte Selphia_AirshipWay_024 : 1; ubyte Selphia_AirshipWay_025 : 1; ubyte Selphia_AirshipWay_026 : 1; ubyte Selphia_AirshipWay_027 : 1; ubyte Selphia_HousingArea_028 : 1; ubyte Selphia_HousingArea_029 : 1; ubyte Selphia_HousingArea_030 : 1; ubyte Selphia_HousingArea_031 : 1; ubyte Selphia_MelodyStreet_032 : 1; ubyte Selphia_MelodyStreet_033 : 1; ubyte Selphia_MelodyStreet_034 : 1; ubyte Selphia_MelodyStreet_035 : 1; ubyte Selphia_Observatory_036 : 1; ubyte Selphia_Observatory_037 : 1; ubyte Selphia_Observatory_038 : 1; ubyte Selphia_Observatory_039 : 1; ubyte Selphia_DragonLake_040 : 1; ubyte Selphia_DragonLake_041 : 1; ubyte Selphia_DragonLake_042 : 1; ubyte Selphia_DragonLake_043 : 1; ubyte SelphiaCastleGate_044 : 1; ubyte SelphiaCastleGate_045 : 1; ubyte SelphiaCastleGate_046 : 1; ubyte SelphiaCastleGate_047 : 1; ubyte Selphia_TownSquare_048 : 1; ubyte Selphia_TownSquare_049 : 1; ubyte Selphia_TownSquare_050 : 1; ubyte Selphia_TownSquare_051 : 1; ubyte Selphia_052 : 1; ubyte Selphia_053 : 1; ubyte Selphia_054 : 1; ubyte Selphia_055 : 1; ubyte Selphia_056 : 1; ubyte Selphia_057 : 1; ubyte Selphia_058 : 1; ubyte Selphia_059 : 1; ubyte Castle_DragonRoom_060 : 1; ubyte Castle_DragonRoom_061 : 1; ubyte Castle_DragonRoom_062 : 1; ubyte Castle_DragonRoom_063 : 1; ubyte YourRoom_064 : 1; ubyte ButlersRoom_065 : 1; ubyte YourRoom_066 : 1; ubyte YourRoom_067 : 1; ubyte YourRoom_068 : 1; ubyte YourRoom_069 : 1; ubyte TrophyRoom_070 : 1; ubyte TrophyRoomB2_071 : 1; ubyte YourRoom_072 : 1; ubyte TrophyRoomB3_073 : 1; ubyte Room_Dummy_074 : 1; ubyte Room_Dummy_075 : 1; ubyte Room_Dummy_076 : 1; } selphia; struct { ubyte MonsterBarn_077 : 1; ubyte MonsterBarn_078 : 1; ubyte MonsterBarn_079 : 1; ubyte MonsterBarn_080 : 1; ubyte MonsterBarn_081 : 1; ubyte MonsterBarn_082 : 1; ubyte MonsterBarn_083 : 1; ubyte MonsterBarn_084 : 1; ubyte MonsterBarn_085 : 1; ubyte MonsterBarn_086 : 1; ubyte MonsterBarn_087 : 1; ubyte MonsterBarn_088 : 1; ubyte MonsterBarn_089 : 1; ubyte MonsterBarn_090 : 1; ubyte MonsterBarn_091 : 1; ubyte MonsterBarn_092 : 1; ubyte MonsterBarn_093 : 1; ubyte MonsterBarn_094 : 1; ubyte MonsterBarn_095 : 1; ubyte MonsterBarn_096 : 1; ubyte MonsterBarn_097 : 1; ubyte MonsterBarn_098 : 1; ubyte MonsterBarn_099 : 1; ubyte MonsterBarn_100 : 1; ubyte MonsterBarn_101 : 1; ubyte MonsterBarn_102 : 1; ubyte MonsterBarn_103 : 1; ubyte MonsterBarn_104 : 1; ubyte MonsterBarn_105 : 1; ubyte MonsterBarn_106 : 1; ubyte MonsterBarn_107 : 1; ubyte MonsterBarn_108 : 1; ubyte MonsterBarn_109 : 1; ubyte MonsterBarn_110 : 1; ubyte MonsterBarn_111 : 1; ubyte MonsterBarn_112 : 1; ubyte MonsterBarn_113 : 1; ubyte MonsterBarn_114 : 1; ubyte MonsterBarn_115 : 1; ubyte MonsterBarn_116 : 1; ubyte MonsterBarn_117 : 1; ubyte MonsterBarn_118 : 1; ubyte MonsterBarn_119 : 1; ubyte MonsterBarn_120 : 1; ubyte MonsterBarn_121 : 1; ubyte MonsterBarn_122 : 1; ubyte MonsterBarn_123 : 1; ubyte MonsterBarn_124 : 1; ubyte MonsterBarn_125 : 1; ubyte MonsterBarn_126 : 1; } monsterBarns; struct { ubyte SincerityGeneralStore_127 : 1; ubyte SincerityGeneral2F_128 : 1; ubyte Blacksmith_129 : 1; ubyte PorcolinesKitchen_130 : 1; ubyte PorcolinesKitchen2F_131 : 1; ubyte TinyBandageClinic_132 : 1; ubyte TinyBandageClinic2F_133 : 1; ubyte Carnations_134 : 1; ubyte Carnations2F_135 : 1; ubyte BellHotelLobby_136 : 1; ubyte BellHotelResidence_137 : 1; ubyte BellHotelGuestRoom_138 : 1; ubyte BellBath_139 : 1; ubyte MargaretsHouse_140 : 1; ubyte SainteCoquilleManor_141 : 1; ubyte SteCoquilleManor2F_142 : 1; ubyte FortesHouse_143 : 1; ubyte House_144 : 1; ubyte House_145 : 1; ubyte House_146 : 1; ubyte House_147 : 1; ubyte __148 : 1; ubyte House_149 : 1; ubyte House_150 : 1; ubyte House_151 : 1; ubyte House_152 : 1; ubyte House_153 : 1; ubyte House_154 : 1; ubyte House_155 : 1; ubyte House_156 : 1; ubyte House_157 : 1; ubyte House_158 : 1; ubyte Airship_159 : 1; ubyte Airship_160 : 1; } selphiaHouses; struct { ubyte SelphiaPlain_161 : 1; ubyte SelphiaPlain_162 : 1; ubyte SelphiaPlain_163 : 1; ubyte SelphiaPlain_164 : 1; ubyte SelphiaPlain_165 : 1; ubyte SelphiaPlain_166 : 1; ubyte SelphiaPlain_167 : 1; ubyte SelphiaPlainMushRoad_168 : 1; ubyte SelphiaPlainMushSpan_169 : 1; ubyte SelphiaPlainEast_170 : 1; ubyte SelphiaPlainEast_171 : 1; ubyte WaterRuins_172 : 1; ubyte SelphiaPlain_173 : 1; ubyte SelphiaPlainMushRoad_174 : 1; ubyte SelphiaPlainMushRoad_175 : 1; ubyte SelphiaPlainMushRoad_176 : 1; ubyte SelphiaPlainMushRoad_177 : 1; ubyte SelphiaPlain_178 : 1; ubyte Cliff_179 : 1; ubyte SelphiaPlainWest_180 : 1; ubyte SelphiaPlainWest_181 : 1; ubyte SelphiaPlainWest_182 : 1; ubyte SelphiaPlainMushRoad_183 : 1; ubyte SelphiaPlainMushRoad_184 : 1; ubyte SelphiaPlainWest_185 : 1; ubyte SelphiaPlainWest_186 : 1; ubyte TwinRocks_187 : 1; ubyte SelphiaPlainWest_188 : 1; ubyte LeonKarnak_189 : 1; ubyte SelphiaPlainWest_190 : 1; ubyte CedarTree_191 : 1; ubyte SelphiaPlainEast_192 : 1; ubyte SelphiaPlainEast_193 : 1; ubyte SelphiaPlainEast_194 : 1; ubyte SercerezoHill_195 : 1; ubyte DailyRoad_196 : 1; ubyte SelphiaPlainEast_197 : 1; ubyte IdraCave_198 : 1; ubyte SercerezoHill_199 : 1; ubyte SercerezoHill_200 : 1; ubyte SercerezoHill_201 : 1; ubyte SercerezoHill_202 : 1; ubyte SelphiaPlain_203 : 1; ubyte SelphiaPlain_204 : 1; ubyte AutumnBridge_205 : 1; ubyte AutumnBridge_206 : 1; ubyte AutumnRoad_207 : 1; ubyte AutumnRoad_208 : 1; ubyte AutumnRoad_209 : 1; ubyte DeliriumLavaRuins_210 : 1; ubyte AutumnRoad_211 : 1; ubyte AutumnRoad_212 : 1; ubyte AutumnRoad_213 : 1; ubyte AutumnRoad_214 : 1; ubyte AutumnRoad_215 : 1; ubyte AutumnRoad_216 : 1; ubyte AutumnRoad_217 : 1; ubyte AutumnRiver_218 : 1; ubyte AutumnRoad_219 : 1; ubyte AutumnRoad_220 : 1; ubyte AutumnRoad_221 : 1; ubyte AutumnRoad_222 : 1; ubyte AutumnRoad_223 : 1; ubyte AutumnRoad_224 : 1; ubyte AutumnRoad_225 : 1; ubyte MayaRoadEntrance_226 : 1; ubyte SelphiaPlainEast_227 : 1; ubyte CerezoBridge_228 : 1; ubyte CerezoBridge_229 : 1; ubyte SercerezoHill_230 : 1; ubyte CluckCluckNest_231 : 1; ubyte SilverArch_232 : 1; ubyte SilverArch_233 : 1; ubyte SilverLake_234 : 1; ubyte WinterSpring_235 : 1; ubyte AutumnSpring_236 : 1; ubyte SelphiaPlainEast_237 : 1; ubyte SummerSpring_238 : 1; ubyte SpringSpring_239 : 1; ubyte BuriedCave_240 : 1; ubyte KeenoLake_241 : 1; ubyte SelphiaPlain_242 : 1; ubyte SelphiaPlain_243 : 1; ubyte SilverLake_244 : 1; ubyte SilverLake_245 : 1; ubyte SilverLake_246 : 1; ubyte SercerezoHill_247 : 1; ubyte SercerezoHill_248 : 1; ubyte SercerezoLake_249 : 1; ubyte SercerezoHill_250 : 1; ubyte DemonsDen_251 : 1; ubyte SercerezoHill_252 : 1; ubyte SercerezoHillBridge_253 : 1; ubyte SercerezoHill_254 : 1; ubyte SercerezoHill_255 : 1; ubyte AutumnBridge_256 : 1; ubyte RevivalCave_257 : 1; ubyte MayaBridge_258 : 1; ubyte SercerezoHill_259 : 1; ubyte Cave_260 : 1; ubyte SpringField_261 : 1; ubyte SummerField_262 : 1; ubyte AutumnField_263 : 1; ubyte WinterField_264 : 1; ubyte SelphiaPlain_265 : 1; ubyte SelphiaPlain_266 : 1; ubyte SelphiaPlain_267 : 1; ubyte SelphiaPlain_268 : 1; ubyte SelphiaPlain_269 : 1; ubyte SelphiaPlain_270 : 1; ubyte YokmirForest_271 : 1; ubyte YokmirForestDepths_272 : 1; ubyte YokmirForest_273 : 1; ubyte YokmirForest_274 : 1; ubyte YokmirForest_275 : 1; ubyte YokmirForest_276 : 1; ubyte YokmirForest_277 : 1; ubyte YokmirForest_278 : 1; ubyte Forest_Dummy_279 : 1; ubyte Forest_Dummy_280 : 1; ubyte Forest_Dummy_281 : 1; ubyte Forest_Dummy_282 : 1; ubyte Forest_Dummy_283 : 1; } overworld; struct { ubyte WaterRuins_284 : 1; ubyte WaterRuinsDepths_285 : 1; ubyte WaterRuins_286 : 1; ubyte WaterRuins_287 : 1; ubyte WaterRuins_288 : 1; ubyte WaterRuins_289 : 1; ubyte WaterRuins_290 : 1; ubyte WaterRuins_291 : 1; ubyte WaterRuins_292 : 1; ubyte WaterRuins_293 : 1; ubyte WaterRuins_294 : 1; ubyte WaterRuins_295 : 1; ubyte WaterRuins_296 : 1; ubyte WaterRuins_297 : 1; ubyte WaterRuins_298 : 1; ubyte WaterRuins_299 : 1; ubyte WaterRuins_300 : 1; } waterRuins; ubyte Temple_Dummy_301 : 1; ubyte Temple_Dummy_302 : 1; struct { ubyte ObsidianMansion_303 : 1; ubyte ObsidianMnsnTheatre_304 : 1; ubyte ObsidianMnsnEntrance_305 : 1; ubyte ObsidianMansion_306 : 1; ubyte ObsidianMansion_307 : 1; ubyte ObsidianMansion_308 : 1; ubyte ObsidianMansion_309 : 1; ubyte ObsidianMansion_310 : 1; ubyte ObsidianMansion_311 : 1; ubyte ObsidianMansion_312 : 1; ubyte ObsidianMansion_313 : 1; ubyte ObsidianMansion_314 : 1; ubyte ObsidianMansion_315 : 1; ubyte ObsidianMansion_316 : 1; ubyte ObsidianMansion_317 : 1; ubyte ObsidianMansion_318 : 1; ubyte ObsidianMansion_319 : 1; ubyte ObsidianMansion_320 : 1; ubyte ObsidianMansion_321 : 1; } obsidianMansion; ubyte Ruin_Dummy_322 : 1; ubyte Ruin_Dummy_323 : 1; struct { ubyte LeonKarnak_324 : 1; ubyte LeonKarnakDepths_325 : 1; ubyte LeonKarnak_326 : 1; ubyte LeonKarnak_327 : 1; ubyte LeonKarnak_328 : 1; ubyte LeonKarnak_329 : 1; ubyte LeonKarnak_330 : 1; ubyte LeonKarnak_331 : 1; ubyte LeonKarnak_332 : 1; ubyte LeonKarnak_333 : 1; ubyte LeonKarnak_334 : 1; ubyte LeonKarnak_335 : 1; ubyte LeonKarnak_336 : 1; ubyte LeonKarnak_337 : 1; ubyte LeonKarnak_338 : 1; ubyte LeonKarnak_339 : 1; ubyte LeonKarnak_340 : 1; ubyte LeonKarnak_341 : 1; ubyte LeonKarnak_342 : 1; ubyte LeonKarnak_343 : 1; ubyte LeonKarnak_344 : 1; ubyte LeonKarnak_345 : 1; ubyte LeonKarnak_346 : 1; } leonKarnak; struct { ubyte FloatingEmpire_347 : 1; ubyte FloatingEmpire_348 : 1; ubyte FloatingEmpireFront_349 : 1; ubyte FloatingEmpire_350 : 1; ubyte FloatingEmpire_351 : 1; ubyte FloatingEmpireSouth_352 : 1; ubyte FloatingEmpireSouth_353 : 1; ubyte FloatingEmpireSouth_354 : 1; ubyte FloatingEmpireSouth_355 : 1; ubyte FloatingEmpireSouth_356 : 1; ubyte FloatingEmpireSouth_357 : 1; ubyte FloatingEmpireSouth_358 : 1; ubyte FloatingEmpireSouth_359 : 1; ubyte FloatingEmpireSouth_360 : 1; ubyte FloatingEmpireSouth_361 : 1; ubyte FloatingEmpireSouth_362 : 1; ubyte FloatingEmpireSouth_363 : 1; ubyte FloatingEmpireSouth_364 : 1; ubyte FloatingEmpireSouth_365 : 1; ubyte FloatingEmpireSouth_366 : 1; ubyte FloatingEmpireSouth_367 : 1; ubyte FloatingEmpireSouth_368 : 1; ubyte FloatingEmpireSouth_369 : 1; ubyte FloatingEmpireSouth_370 : 1; ubyte FloatingEmpireSouth_371 : 1; ubyte FloatingEmpireSouth_372 : 1; ubyte FloatingEmpireSouth_373 : 1; ubyte FloatingEmpireSouth_374 : 1; ubyte FloatingEmpireSouth_375 : 1; ubyte FloatingEmpireSouth_376 : 1; ubyte FloatingEmpireWest_377 : 1; ubyte FloatingEmpireWest_378 : 1; ubyte FloatingEmpireWest_379 : 1; ubyte FloatingEmpireWest_380 : 1; ubyte FloatingEmpireWest_381 : 1; ubyte FloatingEmpireWest_382 : 1; ubyte FloatingEmpireWest_383 : 1; ubyte FloatingEmpireWest_384 : 1; ubyte FloatingEmpireWest_385 : 1; ubyte FloatingEmpireWest_386 : 1; ubyte FloatingEmpireWest_387 : 1; ubyte FloatingEmpireWest_388 : 1; ubyte FloatingEmpireWest_389 : 1; ubyte FloatingEmpireWest_390 : 1; ubyte FloatingEmpireWest_391 : 1; ubyte FloatingEmpireWest_392 : 1; ubyte FloatingEmpireWest_393 : 1; ubyte FloatingEmpireWest_394 : 1; ubyte FloatingEmpireWest_395 : 1; ubyte FloatingEmpireWest_396 : 1; ubyte FloatingEmpireWest_397 : 1; ubyte FloatingEmpireWest_398 : 1; ubyte FloatingEmpireWest_399 : 1; ubyte FloatingEmpireWest_400 : 1; ubyte FloatingEmpireWest_401 : 1; ubyte FloatingEmpireWest_402 : 1; ubyte FloatingEmpireWest_403 : 1; ubyte FloatingEmpireWest_404 : 1; ubyte FloatingEmpireWest_405 : 1; ubyte FloatingEmpireWest_406 : 1; ubyte FloatingEmpireWest_407 : 1; ubyte FloatingEmpireWest_408 : 1; ubyte FloatingEmpireEast_409 : 1; ubyte FloatingEmpireEast_410 : 1; ubyte FloatingEmpireEast_411 : 1; ubyte FloatingEmpireEast_412 : 1; ubyte FloatingEmpireEast_413 : 1; ubyte FloatingEmpireEast_414 : 1; ubyte FloatingEmpireEast_415 : 1; ubyte FloatingEmpireEast_416 : 1; ubyte FloatingEmpireEast_417 : 1; ubyte FloatingEmpireEast_418 : 1; ubyte FloatingEmpireEast_419 : 1; ubyte FloatingEmpireEast_420 : 1; ubyte FloatingEmpireEast_421 : 1; ubyte FloatingEmpireEast_422 : 1; ubyte FloatingEmpireEast_423 : 1; ubyte FloatingEmpireEast_424 : 1; ubyte FloatingEmpireEast_425 : 1; ubyte FloatingEmpireEast_426 : 1; ubyte FloatingEmpireEast_427 : 1; ubyte FloatingEmpireEast_428 : 1; ubyte FloatingEmpireEast_429 : 1; ubyte FloatingEmpireEast_430 : 1; ubyte FloatingEmpireEast_431 : 1; ubyte FloatingEmpireEast_432 : 1; ubyte FloatingEmpireEast_433 : 1; ubyte FloatingEmpireEast_434 : 1; ubyte FloatingEmpireEast_435 : 1; ubyte FloatingEmpireEast_436 : 1; ubyte FloatingEmpireEast_437 : 1; ubyte FloatingEmpireEast_438 : 1; ubyte FloatingEmpireSouth_439 : 1; ubyte FloatingEmpire_440 : 1; ubyte FloatingEmpire_441 : 1; } floatingEmpire; ubyte WorldofFields_442 : 1; struct { ubyte SharanceMaze_443 : 1; ubyte SharanceMaze_444 : 1; ubyte SharanceMaze_445 : 1; ubyte SharanceMaze_446 : 1; ubyte SharanceMaze_447 : 1; ubyte SharanceMaze_448 : 1; ubyte SharanceMaze_449 : 1; ubyte SharanceMaze_450 : 1; ubyte SharanceMaze_451 : 1; ubyte SharanceMaze_452 : 1; ubyte SharanceMaze_453 : 1; } sharance; struct { ubyte YokmirCave_454 : 1; ubyte YokmirCave_455 : 1; ubyte YokmirCave_456 : 1; ubyte YokmirCave_457 : 1; ubyte YokmirCave_458 : 1; ubyte YokmirCave_459 : 1; ubyte YokmirCave_460 : 1; ubyte YokmirCave_461 : 1; ubyte YokmirCave_462 : 1; ubyte YokmirCave_463 : 1; ubyte YokmirCave_464 : 1; ubyte YokmirCave_465 : 1; ubyte YokmirCave_466 : 1; ubyte YokmirCave_467 : 1; ubyte YokmirCave_468 : 1; ubyte YokmirCave_469 : 1; ubyte YokmirCave_470 : 1; ubyte YokmirCave_471 : 1; ubyte YokmirCave_472 : 1; ubyte YokmirCave_473 : 1; ubyte YokmirCave_474 : 1; ubyte YokmirCave_475 : 1; ubyte YokmirCave_476 : 1; ubyte YokmirCave_477 : 1; ubyte YokmirCave_478 : 1; ubyte YokmirCave_479 : 1; ubyte YokmirCave_480 : 1; ubyte YokmirCave_481 : 1; ubyte YokmirCave_482 : 1; ubyte YokmirCave_483 : 1; ubyte YokmirCave_484 : 1; ubyte YokmirCave_485 : 1; } yokmir; struct { ubyte DeliriumLavaRuins_486 : 1; ubyte DeliriumLavaRuins_487 : 1; ubyte DeliriumLavaRuins_488 : 1; ubyte DeliriumLavaRuins_489 : 1; ubyte DeliriumLavaRuins_490 : 1; ubyte DeliriumLavaRuins_491 : 1; ubyte DeliriumLavaRuins_492 : 1; ubyte DeliriumLavaRuins_493 : 1; ubyte DeliriumLavaRuins_494 : 1; ubyte DeliriumLavaRuins_495 : 1; ubyte DeliriumLavaRuins_496 : 1; ubyte DeliriumLavaRuins_497 : 1; ubyte DeliriumLavaRuins_498 : 1; ubyte DeliriumLavaRuins_499 : 1; ubyte DeliriumLavaRuins_500 : 1; ubyte DeliriumLavaRuins_501 : 1; ubyte DeliriumLavaRuins_502 : 1; ubyte DeliriumLavaRuins_503 : 1; ubyte DeliriumLavaRuins_504 : 1; ubyte DeliriumLavaRuins_505 : 1; ubyte DeliriumLavaRuins_506 : 1; ubyte DeliriumLavaRuins_507 : 1; ubyte DeliriumLavaRuins_508 : 1; ubyte DeliriumLavaRuins_509 : 1; ubyte DeliriumLavaRuins_510 : 1; ubyte DeliriumLavaRuins_511 : 1; ubyte DeliriumLavaRuins_512 : 1; ubyte DeliriumLavaRuins_513 : 1; ubyte DeliriumLavaRuins_514 : 1; ubyte DeliriumLavaRuins_515 : 1; ubyte DeliriumLavaRuins_516 : 1; ubyte DeliriumLavaRuins_517 : 1; ubyte DeliriumLavaRuins_518 : 1; ubyte DeliriumLavaRuins_519 : 1; ubyte DeliriumLavaRuins_520 : 1; ubyte DeliriumLavaRuins_521 : 1; ubyte DeliriumLavaRuins_522 : 1; ubyte DeliriumLavaRuins_523 : 1; ubyte DeliriumLavaRuins_524 : 1; ubyte DeliriumLavaRuins_525 : 1; ubyte DeliriumLavaRuins_526 : 1; } deliriumLavaRuins; struct { ubyte Unknown_527 : 1; ubyte Unknown_528 : 1; ubyte Unknown_529 : 1; ubyte Unknown_530 : 1; ubyte Unknown_531 : 1; ubyte Unknown_532 : 1; ubyte Unknown_533 : 1; ubyte Unknown_534 : 1; ubyte Unknown_535 : 1; ubyte Unknown_536 : 1; ubyte Unknown_537 : 1; ubyte Unknown_538 : 1; ubyte Unknown_539 : 1; ubyte Unknown_540 : 1; } unknownPlace; struct { ubyte IdraCave_541 : 1; ubyte IdraCave_542 : 1; ubyte IdraCave_543 : 1; ubyte IdraCave_544 : 1; ubyte IdraCave_545 : 1; ubyte IdraCave_546 : 1; ubyte IdraCave_547 : 1; ubyte IdraCave_548 : 1; ubyte IdraCave_549 : 1; ubyte IdraCave_550 : 1; ubyte IdraCave_551 : 1; ubyte IdraCaveB1_552 : 1; ubyte IdraCaveB1_553 : 1; ubyte IdraCaveB1_554 : 1; ubyte IdraCaveB1_555 : 1; ubyte IdraCaveB1_556 : 1; ubyte IdraCaveB1_557 : 1; ubyte IdraCaveB1_558 : 1; ubyte IdraCaveB1_559 : 1; ubyte IdraCaveB1_560 : 1; ubyte IdraCaveB1_561 : 1; ubyte IdraCaveB1_562 : 1; ubyte IdraCaveB1_563 : 1; ubyte IdraCaveB1_564 : 1; ubyte IdraCaveB1_565 : 1; ubyte IdraCaveB1_566 : 1; ubyte IdraCaveB1_567 : 1; ubyte IdraCaveB1_568 : 1; ubyte IdraCaveB1_569 : 1; ubyte IdraCaveB1_570 : 1; ubyte IdraCaveB1_571 : 1; ubyte IdraCaveB2_572 : 1; ubyte IdraCaveB2_573 : 1; ubyte IdraCaveB2_574 : 1; ubyte IdraCaveB2_575 : 1; ubyte IdraCaveB2_576 : 1; ubyte IdraCaveB2_577 : 1; ubyte IdraCaveB2_578 : 1; ubyte IdraCaveB2_579 : 1; ubyte IdraCaveB2_580 : 1; ubyte IdraCaveB2_581 : 1; ubyte IdraCaveB2_582 : 1; ubyte IdraCaveB2_583 : 1; ubyte IdraCaveB2_584 : 1; ubyte IdraCaveB2_585 : 1; ubyte IdraCaveB2_586 : 1; ubyte IdraCaveB2_587 : 1; ubyte IdraCaveB2_588 : 1; ubyte IdraCaveB2_589 : 1; ubyte IdraCaveB2_590 : 1; ubyte IdraCaveB2_591 : 1; ubyte IdraCaveB2_592 : 1; ubyte IdraCaveB2_593 : 1; } idraCave; ubyte ImperialResearchCntr_594 : 1; struct { ubyte MayaRoad_595 : 1; ubyte MayaRoad_596 : 1; ubyte MayaRoad_597 : 1; ubyte MayaRoad_598 : 1; ubyte MayaRoad_599 : 1; ubyte MayaRoad_600 : 1; ubyte MayaRoad_601 : 1; ubyte MayaRoad_602 : 1; ubyte MayaRoad_603 : 1; ubyte MayaRoad_604 : 1; ubyte MayaRoad_605 : 1; ubyte MayaRoad_606 : 1; ubyte MayaRoad_607 : 1; ubyte MayaRoad_608 : 1; ubyte MayaRoad_609 : 1; ubyte MayaRoad_610 : 1; ubyte MayaRoad_611 : 1; ubyte MayaRoad_612 : 1; ubyte MayaRoad_613 : 1; ubyte MayaRoad_614 : 1; ubyte MayaRoad_615 : 1; ubyte MayaRoad_616 : 1; ubyte MayaRoad_617 : 1; ubyte MayaRoad_618 : 1; ubyte MayaRoad_619 : 1; ubyte MayaRoad_620 : 1; ubyte MayaRoad_621 : 1; ubyte MayaRoad_622 : 1; ubyte MayaRoad_623 : 1; ubyte MayaRoad_624 : 1; ubyte MayaRoad_625 : 1; ubyte MayaRoad_626 : 1; ubyte MayaRoad_627 : 1; ubyte MayaRoad_628 : 1; ubyte MayaRoad_629 : 1; ubyte MayaRoad_630 : 1; ubyte MayaRoad_631 : 1; ubyte MayaRoad_632 : 1; ubyte MayaRoad_633 : 1; ubyte MayaRoad_634 : 1; ubyte MayaRoad_635 : 1; ubyte MayaRoad_636 : 1; ubyte MayaRoad_637 : 1; ubyte MayaRoad_638 : 1; ubyte MayaRoad_639 : 1; ubyte MayaRoad_640 : 1; ubyte MayaRoad_641 : 1; ubyte MayaRoad_642 : 1; ubyte MayaRoad_643 : 1; ubyte MayaRoad_644 : 1; ubyte MayaRoad_645 : 1; ubyte MayaRoad_646 : 1; ubyte MayaRoad_647 : 1; ubyte MayaRoad_648 : 1; ubyte MayaRoad_649 : 1; ubyte MayaRoad_650 : 1; ubyte MayaRoad_651 : 1; ubyte MayaRoad_652 : 1; ubyte MayaRoad_653 : 1; ubyte MayaRoad_654 : 1; ubyte MayaRoad_655 : 1; ubyte MayaRoad_656 : 1; ubyte MayaRoad_657 : 1; } mayaRoad; struct { ubyte SechsTerritory_658 : 1; ubyte SechsTerritory_659 : 1; ubyte SechsTerritory_660 : 1; ubyte SechsTerritory_661 : 1; ubyte SechsTerritory_662 : 1; ubyte SechsTerritory_663 : 1; ubyte SechsTerritory_664 : 1; ubyte SechsTerritory_665 : 1; ubyte SechsTerritory_666 : 1; ubyte SechsTerritory_667 : 1; ubyte SechsTerritory_668 : 1; ubyte SechsTerritory_669 : 1; ubyte SechsTerritory_670 : 1; ubyte SechsTerritory_671 : 1; ubyte SechsTerritory_672 : 1; ubyte SechsTerritory_673 : 1; ubyte SechsTerritory_674 : 1; ubyte SechsTerritory_675 : 1; ubyte SechsTerritory_676 : 1; ubyte SechsTerritory_677 : 1; ubyte SechsTerritory_678 : 1; ubyte SechsTerritory_679 : 1; ubyte SechsTerritory_680 : 1; ubyte SechsTerritory_681 : 1; ubyte SechsTerritory_682 : 1; ubyte SechsTerritory_683 : 1; ubyte SechsTerritory_684 : 1; ubyte SechsTerritory_685 : 1; ubyte SechsTerritory_686 : 1; ubyte SechsTerritory_687 : 1; ubyte SechsTerritory_688 : 1; ubyte SechsTerritory_689 : 1; ubyte SechsTerritory_690 : 1; ubyte SechsTerritory_691 : 1; ubyte SechsTerritory_692 : 1; ubyte SechsTerritory_693 : 1; ubyte SechsTerritory_694 : 1; ubyte SechsTerritory_695 : 1; ubyte SechsTerritory_696 : 1; ubyte SechsTerritory_697 : 1; ubyte SechsTerritory_698 : 1; ubyte SechsTerritory_699 : 1; ubyte SechsTerritory_700 : 1; ubyte SechsTerritory_701 : 1; ubyte SechsTerritory_702 : 1; ubyte SechsTerritory_703 : 1; ubyte SechsTerritory_704 : 1; ubyte SechsTerritory_705 : 1; ubyte SechsTerritory_706 : 1; ubyte SechsTerritory_707 : 1; ubyte SechsTerritory_708 : 1; ubyte SechsTerritory_709 : 1; ubyte SechsTerritory_710 : 1; ubyte SechsTerritory_711 : 1; ubyte SechsTerritory_712 : 1; ubyte SechsTerritory_713 : 1; ubyte SechsTerritory_714 : 1; ubyte SechsTerritory_715 : 1; ubyte SechsTerritory_716 : 1; ubyte SechsTerritory_717 : 1; ubyte SechsTerritory_718 : 1; ubyte SechsTerritory_719 : 1; ubyte SechsTerritory_720 : 1; ubyte SechsTerritory_721 : 1; ubyte SechsTerritory_722 : 1; ubyte SechsTerritory_723 : 1; ubyte SechsTerritory_724 : 1; ubyte SechsTerritory_725 : 1; } sechsTerritory; struct { ubyte RunePrana_726 : 1; ubyte RunePrana_727 : 1; ubyte RunePrana_728 : 1; ubyte RunePrana_729 : 1; ubyte RunePrana_730 : 1; ubyte RunePrana_731 : 1; ubyte RunePrana_732 : 1; ubyte RunePrana_733 : 1; ubyte RunePrana_734 : 1; ubyte RunePrana_735 : 1; ubyte RunePrana_736 : 1; ubyte RunePrana_737 : 1; ubyte RunePrana_738 : 1; ubyte RunePrana_739 : 1; ubyte RunePrana_740 : 1; ubyte RunePrana_741 : 1; ubyte RunePrana_742 : 1; ubyte RunePrana_743 : 1; ubyte RunePrana_744 : 1; ubyte RunePrana_745 : 1; ubyte RunePrana_746 : 1; ubyte RunePrana_747 : 1; ubyte RunePrana_748 : 1; ubyte RunePrana_749 : 1; ubyte RunePrana_750 : 1; ubyte RunePrana_751 : 1; ubyte RunePrana_752 : 1; ubyte RunePrana_753 : 1; ubyte RunePrana_754 : 1; ubyte RunePrana_755 : 1; ubyte RunePrana_756 : 1; ubyte RunePrana_757 : 1; ubyte RunePrana_758 : 1; ubyte RunePrana_759 : 1; ubyte RunePrana_760 : 1; ubyte RunePrana_761 : 1; ubyte RunePrana_762 : 1; ubyte RunePrana_763 : 1; ubyte RunePrana_764 : 1; ubyte RunePrana_765 : 1; ubyte RunePrana_766 : 1; ubyte RunePrana_767 : 1; ubyte RunePrana_768 : 1; ubyte RunePrana_769 : 1; ubyte RunePrana_770 : 1; ubyte RunePrana_771 : 1; ubyte RunePrana_772 : 1; ubyte RunePrana_773 : 1; ubyte RunePrana_774 : 1; ubyte RunePrana_775 : 1; ubyte RunePrana_776 : 1; ubyte RunePrana_777 : 1; ubyte RunePrana_778 : 1; ubyte RunePrana_779 : 1; ubyte RunePrana_780 : 1; ubyte RunePrana_781 : 1; ubyte RunePrana_782 : 1; ubyte RunePrana_783 : 1; ubyte RunePrana_784 : 1; ubyte RunePrana_785 : 1; ubyte RunePrana_786 : 1; ubyte RunePrana_787 : 1; ubyte RunePrana_788 : 1; ubyte RunePrana_789 : 1; ubyte RunePrana_790 : 1; ubyte RunePrana_791 : 1; ubyte RunePrana_792 : 1; ubyte RunePrana_793 : 1; ubyte RunePrana_794 : 1; ubyte RunePrana_795 : 1; ubyte RunePrana_796 : 1; ubyte RunePrana_797 : 1; ubyte RunePrana_798 : 1; ubyte RunePrana_799 : 1; ubyte RunePrana_800 : 1; ubyte RunePrana_801 : 1; ubyte RunePrana_802 : 1; ubyte RunePrana_803 : 1; ubyte RunePrana_804 : 1; ubyte RunePrana_805 : 1; ubyte RunePrana_806 : 1; ubyte RunePrana_807 : 1; ubyte RunePrana_808 : 1; ubyte RunePrana_809 : 1; ubyte RunePrana_810 : 1; ubyte RunePrana_811 : 1; ubyte RunePrana_812 : 1; ubyte RunePrana_813 : 1; ubyte RunePrana_814 : 1; ubyte RunePrana_815 : 1; ubyte RunePrana_816 : 1; ubyte RunePrana_817 : 1; ubyte RunePrana_818 : 1; ubyte RunePrana_819 : 1; ubyte RunePrana_820 : 1; ubyte RunePrana_821 : 1; ubyte RunePrana_822 : 1; ubyte RunePrana_823 : 1; ubyte RunePrana_824 : 1; ubyte RunePrana_825 : 1; ubyte RunePrana_826 : 1; ubyte RunePrana_827 : 1; ubyte RunePrana_828 : 1; ubyte RunePrana_829 : 1; ubyte RunePrana_830 : 1; ubyte RunePrana_831 : 1; ubyte RunePrana_832 : 1; ubyte RunePrana_833 : 1; ubyte RunePrana_834 : 1; ubyte RunePrana_835 : 1; ubyte RunePrana_836 : 1; ubyte RunePrana_837 : 1; ubyte RunePrana_838 : 1; ubyte RunePrana_839 : 1; ubyte RunePrana_840 : 1; ubyte RunePrana_841 : 1; ubyte RunePrana_842 : 1; ubyte RunePrana_843 : 1; ubyte RunePrana_844 : 1; ubyte RunePrana_845 : 1; ubyte RunePrana_846 : 1; ubyte RunePrana_847 : 1; ubyte RunePrana_848 : 1; ubyte RunePrana_849 : 1; ubyte RunePrana_850 : 1; ubyte RunePrana_851 : 1; ubyte RunePrana_852 : 1; } runePrana; struct { ubyte CluckCluckNest_853 : 1; ubyte CluckCluckNest_854 : 1; ubyte CluckCluckNest_855 : 1; ubyte CluckCluckNest_856 : 1; ubyte CluckCluckNest_857 : 1; } cluckCluckNest; struct { ubyte RevivalCave_858 : 1; ubyte RevivalCave_859 : 1; ubyte RevivalCave_860 : 1; } revivalCave; struct { ubyte DemonsDen_861 : 1; ubyte DemonsDen_862 : 1; ubyte DemonsDen_863 : 1; ubyte DemonsDen_864 : 1; ubyte DemonsDen_865 : 1; ubyte DemonsDen_866 : 1; ubyte DemonsDen_867 : 1; ubyte DemonsDen_868 : 1; ubyte DemonsDen_869 : 1; } demonsDen; ubyte __870 : 1; ubyte __871 : 1; } MAPB ; // Unlocked recipes bitfield typedef struct { ubyte : 7; // probably part of a different flagset - fix later struct { ubyte Yarn : 1; ubyte Cheap_Bracelet : 1; ubyte Bronze_Bracelet : 1; ubyte Silver_Bracelet : 1; ubyte Gold_Bracelet : 1; ubyte Platinum_Bracelet : 1; ubyte Silver_Ring : 1; ubyte Gold_Ring : 1; ubyte Platinum_Ring : 1; ubyte Shield_Ring : 1; ubyte Critical_Ring : 1; ubyte Silent_Ring : 1; ubyte Paralysis_Ring : 1; ubyte Poison_Ring : 1; ubyte Magic_Ring : 1; ubyte Throwing_Ring : 1; ubyte Stay_up_Ring : 1; ubyte Aquamarine_Ring : 1; ubyte Amethyst_Ring : 1; ubyte Emerald_Ring : 1; ubyte Sapphire_Ring : 1; ubyte Ruby_Ring : 1; ubyte Cursed_Ring : 1; ubyte Diamond_Ring : 1; ubyte Aquamarine_Brooch : 1; ubyte Amethyst_Brooch : 1; ubyte Emerald_Brooch : 1; ubyte Sapphire_Brooch : 1; ubyte Ruby_Brooch : 1; ubyte Diamond_Brooch : 1; ubyte Dolphin_Brooch : 1; ubyte Fire_Ring : 1; ubyte Wind_Ring : 1; ubyte Water_Ring : 1; ubyte Earth_Ring : 1; ubyte Happy_Ring : 1; ubyte Silver_Pendant : 1; ubyte Star_Pendant : 1; ubyte Sun_Pendant : 1; ubyte Field_Pendant : 1; ubyte Dew_Pendant : 1; ubyte Earth_Pendant : 1; ubyte Heart_Pendant : 1; ubyte Strange_Pendant : 1; ubyte Anettes_Necklace : 1; ubyte Work_Gloves : 1; ubyte Gloves : 1; ubyte Power_Gloves : 1; ubyte Earrings : 1; ubyte Witch_Earrings : 1; ubyte Magic_Earrings : 1; ubyte Charm : 1; ubyte Holy_Amulet : 1; ubyte Rosary : 1; ubyte Talisman : 1; ubyte Magic_Charm : 1; ubyte Leather_Belt : 1; ubyte Lucky_Strike : 1; ubyte Champ_Belt : 1; ubyte Hand_Knit_Scarf : 1; ubyte Fluffy_Scarf : 1; ubyte Heros_Proof : 1; ubyte Proof_of_Wisdom : 1; ubyte Art_of_Attack : 1; ubyte Art_of_Defense : 1; ubyte Art_of_Magic : 1; ubyte Badge : 1; ubyte Courage_Badge : 1; ubyte Ventis_Charm_A : 1; ubyte Ventis_Charm_B : 1; } craft_Accessories; struct { ubyte Shirt : 1; ubyte Vest : 1; ubyte Cotton_Cloth : 1; ubyte Mail : 1; ubyte Chain_Mail : 1; ubyte Scale_Vest : 1; ubyte Sparkling_Shirt : 1; ubyte Wind_Cloak : 1; ubyte Protector : 1; ubyte Platinum_Mail : 1; ubyte Lamellar_Vest : 1; ubyte Mercenarys_Cloak : 1; ubyte Wooly_Shirt : 1; ubyte Elvish_Cloak : 1; ubyte Dragon_Cloak : 1; ubyte Power_Protector : 1; ubyte Rune_Vest : 1; ubyte Royal_Garter : 1; ubyte Four_Dragons_Vest : 1; } craft_Armor; struct { ubyte Trout_Sashimi : 1; ubyte Char_Sashimi : 1; ubyte Rainbow_Sashimi : 1; ubyte Salmon_Sashimi : 1; ubyte Cherry_Sashimi : 1; ubyte Taimen_Sashimi : 1; ubyte Snapper_Sashimi : 1; ubyte Glitter_Sashimi : 1; ubyte Lover_Sashimi : 1; ubyte Girella_Sashimi : 1; ubyte Skipjack_Sashimi : 1; ubyte Yellowtail_Sashimi : 1; ubyte Tuna_Sashimi : 1; ubyte Sardine_Sashimi : 1; ubyte Needlefish_Sashimi : 1; ubyte Pike_Sashimi : 1; ubyte Flounder_Sashimi : 1; ubyte Turbot_Sashimi : 1; ubyte Fall_Sashimi : 1; ubyte Squid_Sashimi : 1; ubyte Sunsquid_Sashimi : 1; ubyte Lamp_Squid_Sashimi : 1; ubyte Blowfish_Sashimi : 1; ubyte Lobster_Sashimi : 1; ubyte Shrimp_Sashimi : 1; } cooking_Knife; struct { ubyte Fried_Veggies : 1; ubyte Fried_Rice : 1; ubyte Cabbage_Cakes : 1; ubyte French_Fries : 1; ubyte Croquettes : 1; ubyte Popcorn : 1; ubyte Corn_Cereal : 1; ubyte Miso_Eggplant : 1; ubyte Fried_Eggs : 1; ubyte Omelet : 1; ubyte Omelet_Rice : 1; ubyte Baked_Apple : 1; ubyte Curry_Bread : 1; ubyte French_Toast : 1; ubyte Donut : 1; ubyte Fried_Udon : 1; ubyte Tempura : 1; ubyte Pancakes : 1; ubyte Gyoza : 1; ubyte Risotto : 1; ubyte Dry_Curry : 1; ubyte Salted_Masu_Trout : 1; ubyte Salted_Char : 1; ubyte Salted_R_Trout : 1; ubyte Salted_C_Salmon : 1; ubyte Salted_Chub : 1; ubyte Salted_Salmon : 1; ubyte Salted_Taimen : 1; ubyte Grilled_C_Carp : 1; ubyte Grilled_Gibelio : 1; ubyte Grilled_Snapper : 1; ubyte Grilled_Girella : 1; ubyte Grilled_G_Snapper : 1; ubyte Grilled_L_Snapper : 1; ubyte Grilled_Skipjack : 1; ubyte Grilled_Mackerel : 1; ubyte Grilled_Yellowtail : 1; ubyte Salted_Pond_Smelt : 1; ubyte Tuna_Teriyaki : 1; ubyte Dried_Sardines : 1; ubyte Grilled_Needlefish : 1; ubyte Salted_Pike : 1; ubyte Grilled_Flounder : 1; ubyte Grilled_Turbot : 1; ubyte Grilled_F_Flounder : 1; ubyte Grilled_Squid : 1; ubyte Grilled_Sunsquid : 1; ubyte Grilled_Lamp_Squid : 1; ubyte Grilled_Blowfish : 1; ubyte Grilled_Lobster : 1; ubyte Grilled_Shrimp : 1; ubyte Grilled_S_Flounder : 1; } cooking_FryingPan; struct { ubyte Hot_Milk : 1; ubyte Hot_Chocolate : 1; ubyte Grape_Liqueur : 1; ubyte Boiled_Pumpkin : 1; ubyte Boiled_Spinach : 1; ubyte Boiled_Egg : 1; ubyte Glazed_Yam : 1; ubyte Boiled_Gyoza : 1; ubyte Strawberry_Jam : 1; ubyte Apple_Jam : 1; ubyte Grape_Jam : 1; ubyte Marmalade : 1; ubyte Cheese_Fondue : 1; ubyte Udon : 1; ubyte Curry_Udon : 1; ubyte Tempura_Udon : 1; ubyte Rice_Porridge : 1; ubyte Milk_Porridge : 1; ubyte Tempura_Bowl : 1; ubyte Egg_Bowl : 1; ubyte Stew : 1; ubyte Curry_Rice : 1; ubyte Ultimate_Curry : 1; ubyte Royal_Curry : 1; ubyte Relax_Tea : 1; ubyte Grilled_Miso : 1; ubyte Union_Stew : 1; ubyte Rockfish_Stew : 1; ubyte Yogurt : 1; } cooking_Pot; struct { ubyte Corn_on_the_Cob : 1; ubyte Baked_Onigiri : 1; ubyte Sweet_Potato : 1; ubyte Toast : 1; ubyte Jam_Roll : 1; ubyte Butter_Roll : 1; ubyte Pizza : 1; ubyte Seafood_Pizza : 1; ubyte Doria : 1; ubyte Seafood_Doria : 1; ubyte Gratin : 1; ubyte Seafood_Gratin : 1; ubyte Yam_of_the_Ages : 1; ubyte Cookie : 1; ubyte Choco_Cookie : 1; ubyte Cake : 1; ubyte Chocolate_Cake : 1; ubyte Cheesecake : 1; ubyte Apple_Pie : 1; } cooking_Oven; struct { ubyte Pineapple_Juice : 1; ubyte Tomato_Juice : 1; ubyte Grape_Juice : 1; ubyte Orange_Juice : 1; ubyte Apple_Juice : 1; ubyte Strawberry_Milk : 1; ubyte Fruit_Juice : 1; ubyte Fruit_Smoothie : 1; ubyte Vegetable_Juice : 1; ubyte Veggie_Smoothie : 1; ubyte Mixed_Juice : 1; ubyte Mixed_Smoothie : 1; ubyte Ketchup : 1; ubyte Butter : 1; ubyte Gold_Juice : 1; ubyte Prelude_to_Love : 1; ubyte Hot_Juice : 1; } cooking_Mixer; struct { ubyte Steamed_Bread : 1; ubyte Cheese_Bread : 1; ubyte Meat_Dumpling : 1; ubyte Chinese_Manju : 1; ubyte Curry_Manju : 1; ubyte Steamed_Gyoza : 1; ubyte Pound_Cake : 1; ubyte Chocolate_Sponge : 1; ubyte Flan : 1; ubyte Pumpkin_Flan : 1; ubyte Dumplings : 1; } cooking_Steamer; struct { ubyte Salad : 1; ubyte Sandwich : 1; ubyte Fruit_Sandwich : 1; ubyte Pickled_Turnip : 1; ubyte Pickles : 1; ubyte Bamboo_Rice : 1; ubyte Raisin_Bread : 1; ubyte Ice_Cream : 1; ubyte Relax_Tea_Leaves : 1; ubyte Onigiri : 1; ubyte Bread : 1; ubyte Salmon_Onigiri : 1; ubyte Pickle_Mix : 1; ubyte Turnip_Heaven : 1; ubyte Cheese : 1; ubyte Mayonnaise : 1; } cooking_HandmadeAndOthers; struct { ubyte The_Protein : 1; ubyte Intelligencer : 1; ubyte Vital_Gummi : 1; ubyte Heart_Drink : 1; ubyte Antidote_Potion : 1; ubyte Para_Gone : 1; ubyte Roundoff : 1; ubyte Cold_Medicine : 1; ubyte Formuade : 1; ubyte Love_Potion : 1; ubyte Invinciroid : 1; ubyte Leveliser : 1; ubyte Heavy_Spice : 1; ubyte Sweet_Powder : 1; ubyte Sour_Drop : 1; ubyte Mixed_Herbs : 1; ubyte Recovery_Potion : 1; ubyte Healing_Potion : 1; ubyte Mystery_Potion : 1; ubyte Magical_Potion : 1; } chem_Medicine; struct { ubyte Cheap_Hoe : 1; ubyte Sturdy_Hoe : 1; ubyte Seasoned_Hoe : 1; ubyte Shiny_Hoe : 1; ubyte Blessed_Hoe : 1; ubyte Cheap_Waterpot : 1; ubyte Tin_Waterpot : 1; ubyte Lion_Waterpot : 1; ubyte Rainbow_Waterpot : 1; ubyte Joy_Waterpot : 1; ubyte Cheap_Sickle : 1; ubyte Iron_Sickle : 1; ubyte Quality_Sickle : 1; ubyte Super_Sickle : 1; ubyte Legendary_Sickle : 1; ubyte Cheap_Hammer : 1; ubyte Iron_Hammer : 1; ubyte Silver_Hammer : 1; ubyte Golden_Hammer : 1; ubyte Platinum_Hammer : 1; ubyte Cheap_Axe : 1; ubyte Chopping_Axe : 1; ubyte Lumber_Axe : 1; ubyte Mountain_Axe : 1; ubyte Miracle_Axe : 1; ubyte Cheap_Pole : 1; ubyte Beginners_Pole : 1; ubyte Skilled_Pole : 1; ubyte Famous_Pole : 1; ubyte Sacred_Pole : 1; } forge_FarmTools; struct { ubyte Headband : 1; ubyte Blue_Ribbon : 1; ubyte Green_Ribbon : 1; ubyte Purple_Ribbon : 1; ubyte Summer_Headdress : 1; ubyte Spectacles : 1; ubyte Straw_Hat : 1; ubyte Fancy_Hat : 1; ubyte Brand_Glasses : 1; ubyte Cute_Knitting : 1; ubyte Intelligent_Glasses : 1; ubyte Fireproof_Hood : 1; ubyte Black_Ribbon : 1; ubyte Lolita_Headdress : 1; ubyte Headdress : 1; ubyte Yellow_Ribbon : 1; ubyte Autumn_Headdress : 1; ubyte Cat_Ears : 1; ubyte Silver_Hairpin : 1; ubyte Red_Ribbon : 1; ubyte Spring_Headdress : 1; ubyte Orange_Ribbon : 1; ubyte Winter_Headdress : 1; ubyte White_Ribbon : 1; ubyte Four_Seasons : 1; ubyte Feathered_Hat : 1; ubyte Gold_Hairpin : 1; ubyte Indigo_Ribbon : 1; ubyte Crown : 1; ubyte Turnip_Headgear : 1; ubyte Pumpkin_Headgear : 1; ubyte Silk_Hat : 1; } craft_Headgear; ubyte : 1; // dummy_341 ubyte Engagement_Ring : 1; struct { ubyte Wettable_Powder : 1; ubyte Greenifier : 1; ubyte GreenifierPlus : 1; ubyte FormulaA : 1; ubyte FormulaB : 1; ubyte FormulaC : 1; ubyte NoRotAlpha : 1; ubyte NoRotBeta : 1; ubyte Giantizer : 1; ubyte Minimizer : 1; } chem_FarmChemicals; struct { ubyte Small_Shield : 1; ubyte Umbrella : 1; ubyte Iron_Shield : 1; ubyte Monkey_Plush : 1; ubyte Round_Shield : 1; ubyte Turtle_Shield : 1; ubyte Chaos_Shield : 1; ubyte Bone_Shield : 1; ubyte Magic_Shield : 1; ubyte Heavy_Shield : 1; ubyte Platinum_Shield : 1; ubyte Kite_Shield : 1; ubyte Knight_Shield : 1; ubyte Element_Shield : 1; ubyte Magical_Shield : 1; ubyte Prism_Shield : 1; ubyte Rune_Shield : 1; } craft_Shields; struct { ubyte Feather_Boots : 1; ubyte Heavy_Boots : 1; ubyte Leather_Boots : 1; ubyte Iron_Geta : 1; ubyte Snow_Boots : 1; ubyte Ice_Skates : 1; ubyte Piyo_Sandals : 1; ubyte Step_In_Boots : 1; ubyte Ghost_Boots : 1; ubyte Knight_Boots : 1; ubyte Strider_Boots : 1; ubyte Secret_Shoes : 1; ubyte Wet_Boots : 1; ubyte Sneaking_Boots : 1; ubyte Fast_Step_Boots : 1; ubyte Water_Shoes : 1; ubyte Rocket_Wing : 1; ubyte Silver_Boots : 1; ubyte Gold_Boots : 1; ubyte Bone_Boots : 1; ubyte Fairy_Boots : 1; ubyte Free_Farming_Shoes : 1; } craft_Shoes; struct { ubyte Broadsword : 1; ubyte Steel_Sword : 1; ubyte Steel_Sword_Plus : 1; ubyte Cutlass : 1; ubyte Aqua_Sword : 1; ubyte Invisiblade : 1; ubyte Defender : 1; ubyte Burning_Sword : 1; ubyte Gorgeous_Sword : 1; ubyte Gaia_Sword : 1; ubyte Snakesword : 1; ubyte Luck_Blade : 1; ubyte Platinum_Sword : 1; ubyte Wind_Sword : 1; ubyte Chaos_Blade : 1; ubyte Sakura : 1; ubyte Sunspot : 1; ubyte Durendal : 1; ubyte Aerial_Blade : 1; ubyte Grantale : 1; ubyte Smash_Blade : 1; ubyte Icifier : 1; ubyte Soul_Eater : 1; ubyte Raventine : 1; ubyte Star_Saber : 1; ubyte Platinum_Sword_Plus : 1; ubyte Dragon_Slayer : 1; ubyte Rune_Blade : 1; ubyte Gladius : 1; ubyte Rune_Legend : 1; ubyte Back_Scratcher : 1; ubyte Spoon : 1; ubyte Veggieblade : 1; } forge_ShortSwords; struct { ubyte Claymore : 1; ubyte Zweihaender : 1; ubyte Zweihaender_Plus : 1; ubyte Great_Sword : 1; ubyte Sea_Cutter : 1; ubyte Cyclone_Blade : 1; ubyte Poison_Blade : 1; ubyte Katzbalger : 1; ubyte Earth_Shade : 1; ubyte Big_Knife : 1; ubyte Katana : 1; ubyte Flame_Saber : 1; ubyte Bio_Smasher : 1; ubyte Snow_Crown : 1; ubyte Dancing_Dicer : 1; ubyte Flamberge : 1; ubyte Flamberge_Plus : 1; ubyte Volcanon : 1; ubyte Psycho : 1; ubyte Shine_Blade : 1; ubyte Grand_Smasher : 1; ubyte Belzebuth : 1; ubyte Orochi : 1; ubyte Punisher : 1; ubyte Steel_Slicer : 1; ubyte Moon_Shadow : 1; ubyte Blue_Eyed_Blade : 1; ubyte Balmung : 1; ubyte Braveheart : 1; ubyte Force_Element : 1; ubyte Heaven_Asunder : 1; ubyte Caliburn : 1; ubyte Dekash : 1; ubyte Daicone : 1; } forge_LongSwords; struct { ubyte Spear : 1; ubyte Wood_Staff : 1; ubyte Lance : 1; ubyte Lance_Plus : 1; ubyte Needle_Spear : 1; ubyte Trident : 1; ubyte Water_Spear : 1; ubyte Halberd : 1; ubyte Corsesca : 1; ubyte Corsesca_Plus : 1; ubyte Poison_Spear : 1; ubyte Fivestaff : 1; ubyte Heavy_Lance : 1; ubyte Feather_Lance : 1; ubyte Iceberg : 1; ubyte Blood_Lance : 1; ubyte Magical_Lance : 1; ubyte Flare_Lance : 1; ubyte Brionac : 1; ubyte Poison_Queen : 1; ubyte Monk_Staff : 1; ubyte Metus : 1; ubyte Silent_Grave : 1; ubyte Overbreak : 1; ubyte Bjor : 1; ubyte Belvarose : 1; ubyte Gae_Bolg : 1; ubyte Gungnir : 1; ubyte Dragons_Fang : 1; ubyte Legion : 1; ubyte Pitchfork : 1; ubyte Safety_Lance : 1; ubyte Pine_Club : 1; ubyte : 1; // dummy_492 ubyte : 1; // dummy_493 ubyte : 1; // dummy_494 ubyte : 1; // dummy_495 ubyte : 1; // dummy_496 } forge_Spears; struct { ubyte Battle_Hammer : 1; ubyte Battle_Axe : 1; ubyte Bat : 1; ubyte War_Hammer : 1; ubyte Battle_Scythe : 1; ubyte War_Hammer_Plus : 1; ubyte Pole_Axe : 1; ubyte Iron_Bat : 1; ubyte Pole_Axe_Plus : 1; ubyte Great_Hammer : 1; ubyte Great_Axe : 1; ubyte Ice_Hammer : 1; ubyte Tomahawk : 1; ubyte Basilisk_Fang : 1; ubyte Bone_Hammer : 1; ubyte Rock_Axe : 1; ubyte Strong_Stone : 1; ubyte Demon_Axe : 1; ubyte Flame_Hammer : 1; ubyte Gigant_Hammer : 1; ubyte Sky_Hammer : 1; ubyte Frost_Axe : 1; ubyte Crescent_Axe : 1; ubyte Crescent_Axe_Plus : 1; ubyte Graviton_Hammer : 1; ubyte Spiked_Hammer : 1; ubyte Heat_Axe : 1; ubyte Crystal_Hammer : 1; ubyte Schnabel : 1; ubyte Double_Edge : 1; ubyte Alldale : 1; ubyte Gigant_Hammer_Plus : 1; ubyte Devil_Finger : 1; ubyte Kongo : 1; ubyte Executioner : 1; ubyte Mjolnir : 1; ubyte Fatal_Crush : 1; ubyte Saint_Axe : 1; ubyte Splash_Star : 1; ubyte Hammer : 1; ubyte Toy_Hammer : 1; ubyte Axe : 1; ubyte Lollipop : 1; ubyte : 1; // dummy_540 ubyte : 1; // dummy_541 ubyte : 1; // dummy_542 ubyte : 1; // dummy_543 ubyte : 1; // dummy_544 ubyte : 1; // dummy_545 ubyte : 1; // dummy_546 ubyte : 1; // dummy_547 ubyte : 1; // dummy_548 ubyte : 1; // dummy_549 ubyte : 1; // dummy_550 ubyte : 1; // dummy_551 ubyte : 1; // dummy_552 ubyte : 1; // dummy_553 ubyte : 1; // dummy_554 ubyte : 1; // dummy_555 ubyte : 1; // dummy_556 ubyte : 1; // dummy_557 ubyte : 1; // dummy_558 ubyte : 1; // dummy_559 } forge_AxesHammers; struct { ubyte Rod : 1; ubyte Amethyst_Rod : 1; ubyte Aquamarine_Rod : 1; ubyte Friendly_Rod : 1; ubyte Love_Love_Rod : 1; ubyte Staff : 1; ubyte Emerald_Rod : 1; ubyte Silver_Staff : 1; ubyte Flare_Staff : 1; ubyte Ruby_Rod : 1; ubyte Sapphire_Rod : 1; ubyte Earth_Staff : 1; ubyte Lightning_Wand : 1; ubyte Ice_Staff : 1; ubyte Diamond_Rod : 1; ubyte Wizards_Staff : 1; ubyte Mages_Staff : 1; ubyte Shooting_Star_Staff : 1; ubyte Hell_Branch : 1; ubyte Crimson_Staff : 1; ubyte Bubble_Staff : 1; ubyte Gaia_Rod : 1; ubyte Cyclone_Rod : 1; ubyte Storm_Wand : 1; ubyte Rune_Staff : 1; ubyte Mages_Staff_Plus : 1; ubyte Magic_Broom : 1; ubyte Magic_Shot : 1; ubyte Hell_Curse : 1; ubyte Algernon : 1; ubyte Sorcerers_Wand : 1; ubyte Basket : 1; ubyte Golden_Turnip_Staff : 1; ubyte Sweet_Potato_Staff : 1; ubyte Elvish_Harp : 1; ubyte Syringe : 1; } forge_Staves; struct { ubyte Short_Dagger : 1; ubyte Steel_Edge : 1; ubyte Frost_Edge : 1; ubyte Twin_Leeks : 1; ubyte Iron_Edge : 1; ubyte Thief_Knife : 1; ubyte Wind_Edge : 1; ubyte Gorgeous_Lx : 1; ubyte Steel_Katana : 1; ubyte Twin_Blade : 1; ubyte Rampage : 1; ubyte Salamander : 1; ubyte Platinum_Edge : 1; ubyte Sonic_Dagger : 1; ubyte Chaos_Edge : 1; ubyte Desert_Wind : 1; ubyte Broken_Wall : 1; ubyte Force_Divide : 1; ubyte Heart_Fire : 1; ubyte Orcus_Sword : 1; ubyte Deep_Blizzard : 1; ubyte Dark_Invitation : 1; ubyte Priest_Saber : 1; ubyte Efreet : 1; ubyte Dragoon_Claw : 1; ubyte Emerald_Edge : 1; ubyte Rune_Edge : 1; ubyte Earnest_Edge : 1; ubyte Twin_Justice : 1; ubyte Double_Scratch : 1; ubyte Acutorimass : 1; } forge_DualBlades; struct { ubyte Leather_Gloves : 1; ubyte Brass_Knuckles : 1; ubyte Kote : 1; ubyte Gloves : 1; ubyte Bear_Claws : 1; ubyte Fists_of_the_Earth : 1; ubyte Fists_of_Fire : 1; ubyte Fists_of_Water : 1; ubyte Dragon_Claws : 1; ubyte Fists_of_Dark : 1; ubyte Fists_of_Wind : 1; ubyte Fists_of_Light : 1; ubyte Cat_Punch : 1; ubyte Animal_Puppets : 1; ubyte Ironleaf_Fists : 1; ubyte Caestus : 1; ubyte Golem_Punch : 1; ubyte Hand_of_God : 1; ubyte Bazal_Katar : 1; ubyte Fenrir : 1; } forge_Fists; } RECIP ; typedef struct { ubyte : 5; ubyte season : 2 ; ubyte day : 5 ; ubyte : 4; } BDAY ; typedef struct { long level; long exp; } SKILL ; typedef struct { SPELLID spellID : 10; // 10 bits spell ID ubyte isActive : 1; // 1 bit spell exists? ubyte level : 5 ; } SPELL ; typedef struct { ITEMID itemID : 11; ubyte amount : 5 ; short isCrafted; if( (isCrafted > 0) || ( (itemID >= 985) && (itemID < 1020) ) ) { // crafted or fish ubyte iLevel; ubyte UnknownA; if (isCrafted > 0) { ubyte iQuality; ushort UnknownB; ushort : 2; ushort iRarity : 8; ubyte UnknownC; ITEMID inheritedItem; } else { ushort UnknownB; ushort fishSize ; } } else { ubyte iLevels[9] ; } } ITEM ; // An object on a farm typedef struct { CROPID crop; ubyte UnknownA : 2 ; ushort cropLevel : 12 ; ushort sizeBonus : 10 ; uint growthProgress : 17 ; ushort additionalCrops : 12 ; ubyte isWatered : 1; ubyte UnknownB : 2 ; ubyte health; ushort coordX : 11 ; ushort coordY : 10 ; ubyte levelChanged : 1 ; ubyte UnknownC : 1 ; ubyte playerMade : 1 ; } CROP ; // An interactable object (storage boxes etc.) typedef struct { ROOM room : 15; ushort UnknownA :1 ; OBJID object ; ushort coordX ; ushort coordY ; } OBJ ; typedef struct { local int i; for( i = 0; i < 15; i ++ ) ITEM item; } EQPAGE ; typedef struct { local int i; for( i = 0; i < 15; i ++ ) SPELL spell; } SPLPAGE ; typedef struct { ITEM carried; ITEM weapon; ITEM shield; ITEM accessory; ITEM head; ITEM boots; struct { ITEM spell_X1; ITEM spell_Y1; ITEM spell_X2; ITEM spell_Y2; } spells; ITEM armor; } EQUIPINV ; typedef struct { local int i; for( i = 0; i < 4; i ++ ) EQPAGE page; } BACKPACK ; typedef struct { local int i; for( i = 0; i < 2; i ++ ) SPLPAGE page; } SPELLINV ; typedef struct { local int i; for( i = 0; i < 66; i ++ ) EQPAGE page; } STORAGE ; typedef struct { local int i; for( i = 0; i < 66; i ++ ) EQPAGE page; } FRIDGE ; typedef struct { local int i; for( i = 0; i < 6; i ++ ) SPLPAGE page; } LIBRARY ; typedef struct { local int i; for( i = 0; i < 20; i ++ ) EQPAGE page; } SHIPBOX ; typedef struct { local int i; for( i = 0; i < 1; i ++ ) EQPAGE page; } SHOPBOX ; typedef struct { local int i; for( i = 0; i < 8; i ++ ) EQPAGE page; } WPNBOX ; typedef struct { local int i; for( i = 0; i < 10; i ++ ) EQPAGE page; } TOOLBOX ; typedef struct { local int i; for( i = 0; i < 8; i ++ ) EQPAGE page; } WARDROBE ; typedef struct { ITEM weapon; ITEM shield; ITEM accessory; ITEM armor; ITEM head; ITEM boots; ITEM UnkA; ITEM UnkB; ITEM UnkC; } NPCINV ; typedef struct { long curHP; long modHP; ushort curRP; ushort modRP; short modStr; ushort UnknownStr; short modInt; ushort UnknownInt; short modVit; ushort UnknownVit; ushort level; ushort UnknownB; long exp; ushort UnknownC; COST costume; } CHARSTAT ; typedef struct { local int i; for( i = 0; i < 20; i ++ ) CHARSTAT monster ; } BARNSTAT ; typedef struct ( ubyte bytelen, ubyte hasSign, float factor ){ local ubyte bytelen = bytelen; local ubyte hasSign = hasSign; local float factor = factor; ulong value : bytelen; } FSTAT; typedef struct { ushort tmpSpeed : 11 ; ushort tmpNumber : 11 ; ushort tmpQuality : 10 ; ushort tmpSize : 10 ; ushort defense : 6 ; ubyte HPc ; ubyte UnknownA : 8; ubyte UnknownB : 4; ubyte numberA : 4 ; ubyte qualityA : 4 ; ubyte sizeA : 4 ; ubyte overallB ; ubyte speedB ; ubyte numberB ; ubyte qualityB ; ubyte sizeB ; ubyte overallA : 4 ; ubyte speedA : 4 ; } SOIL ; typedef struct ( byte amnt ){ local int j; for( j = 0; j < amnt; j ++ ) SOIL soilpatch; } FROW; typedef struct ( byte cols, byte rows ) { local int i; for( i = 0; i < rows; i ++ ) FROW fieldRow ( cols ); if( (cols * rows) < 18 ) { i = cols * rows; struct { for( i; i < 18; i ++ ) SOIL soilpatch; } dummyPatches ; } } FARM; typedef struct { long FP; uint Flags[2]; ushort ID ; struct { ROOM location; ushort coordX; ushort coordY; } pos; } VILSTAT ; typedef struct { char name[19]; ubyte slotID; uint type; ushort FP; } MONSTAT ; // Highest level shipped for flowers/crops typedef struct { ubyte Unknown[19]; ubyte Strawberry_lv; ubyte Cabbage_lv; ubyte PinkTurnip_lv; ubyte Onion_lv; ubyte Toyherb_lv; ubyte MoondropFlower_lv; ubyte CherryGrass_lv; ubyte LampGrass_lv; ubyte EmeryFlower_lv; ubyte BlueCrystal_lv; ubyte GoldenCabbage_lv; ubyte PinkMelon_lv; ubyte Pumpkin_lv; ubyte Cucumber_lv; ubyte Corn_lv; ubyte Tomato_lv; ubyte Eggplant_lv; ubyte Pineapple_lv; ubyte PinkCat_lv; ubyte Ironleaf_lv; ubyte FourLeafClover_lv; ubyte Fireflower_lv; ubyte GreenCrystal_lv; ubyte GoldenPumpkin_lv; ubyte Yam_lv; ubyte Potato_lv; ubyte Carrot_lv; ubyte GreenPepper_lv; ubyte Spinach_lv; ubyte CharmBlue_lv; ubyte AutumnGrass_lv; ubyte PomPomGrass_lv; ubyte RedCrystal_lv; ubyte GoldenPotato_lv; ubyte Turnip_lv; ubyte Radish_lv; ubyte Leek_lv; ubyte BokChoy_lv; ubyte NoelGrass_lv; ubyte WhiteCrystal_lv; ubyte GoldenTurnip_lv; ubyte HotHotFruit_lv; ubyte Fodder_lv; ubyte AppleTree_lv; ubyte OrangeTree_lv; ubyte GrapeTree_lv; ubyte TwinkleTree_lv; ubyte DungeonFlower_lv; ubyte SwordFlower_lv; ubyte ShieldFlower_lv; } SHIPL; // Money earned via items shipped typedef struct { local int i; for( i = 0; i < 1106; i ++ ) ulong item : 30 ; } SHIPT; // FSize for shipped fish typedef struct { int MasuTrout; int Squid; int Taimen; int Sardine; int Char; int Chub; int GlitterSnapper; int Skipjack; int Turbot; int Gibelio; int Salmon; int Mackerel; int Needlefish; int Pike; int Sunsquid; int Shrimp; int Snapper; int ThrobbySnapper; int RainbowTrout; int Flounder; int Blowfish; int Yellowtail; int CrucianCarp; int Tuna; int Girella; int FallFlounder; int CherrySalmon; int LampSquid; int Lobster; int PondSmelt; int SandFlounder; int Rockfish; } SHIPF ; // Flags whether an item was shipped or not typedef struct { local int i; for( i = 0; i < 1108; i ++ ) BFLAG item(i) ; } SHIPB ; // Flags whether an item was picked up / in player possession? typedef struct { local int i; for( i = 0; i < 1108; i ++ ) BFLAG item(i) ; } PICKB ; //----------------------------------- // Define main structures typedef struct { uint CRC32; ubyte UnknownA[1]; DIFF difficulty ; ubyte UnknownB[6]; uint clock_Minutes; uint clock_Hours; uint day; MONTH month; uint UnknownC[4]; struct { ROOM room ; ushort CoordX ; ushort CoordY ; } playerLocation ; ubyte UnknownD[4]; GENDER gender; ubyte wateringCanCharges ; uint UnknownE; struct { uint lumber; uint stone; uint compost; uint fodder; } materials; uint money; uint UnknownF; } HEADER ; typedef struct { CHARSTAT player; CHARSTAT villager[27]; BARNSTAT monsterbarn[10]; } BTLSTATS; typedef struct { struct { SKILL shortSword; SKILL longSword; SKILL spear; SKILL axeHammer; SKILL dualBlades; SKILL fists; } Weapons; struct { SKILL fire; SKILL water; SKILL earth; SKILL wind; SKILL light; SKILL dark; SKILL love; } Magic; struct { SKILL farming; SKILL logging; SKILL mining; SKILL fishing; } Farming; struct { SKILL cooking; SKILL forging; SKILL chemistry; SKILL crafting; } Crafting; struct { SKILL searching; SKILL walking; SKILL sleeping; SKILL eating; } Adventure; struct { SKILL defense; SKILL resPoison; SKILL resSeal; SKILL resParalysis; SKILL resSleep; SKILL resFatigue; SKILL resCold; SKILL resKnockout; } Defense; struct { SKILL bathing; SKILL taming; SKILL throwing; SKILL leadership; SKILL bartering; } Other; SKILL Unknown[2] ; } SKILLS; typedef struct { EQUIPINV equipment; BACKPACK backpack; SPELLINV spellpack; FRIDGE fridge; STORAGE storage; WPNBOX weaponbox; WARDROBE wardrobe; TOOLBOX toolbox; SHIPBOX shippingbox; SHOPBOX shopbox; LIBRARY bookshelf; } ITEMS; typedef struct { local int i; for( i = 0; i < 76; i ++ ) CROP fieldObject; } FOBJ; typedef struct { local int i; for( i = 0; i < 67; i ++ ) OBJ object; } WOBJ ; typedef struct { struct { FOBJ mainFarm ; FOBJ secondFarm ; FOBJ thirdFarm ; FOBJ fourthFarm ; FOBJ fifthFarm ; FOBJ springFarm ; FOBJ summerFarm ; FOBJ autumnFarm ; FOBJ winterFarm ; } farmObjects; struct { FARM mainFarm ( 6,3 ) ; FARM secondFarm ( 6,3 ) ; FARM thirdFarm ( 6,3 ) ; FARM fourthFarm ( 6,3 ) ; FARM fifthFarm ( 6,3 ) ; FARM springFarm ( 2,4 ) ; FARM summerFarm ( 2,2 ) ; FARM autumnFarm ( 3,3 ) ; FARM winterFarm ( 4,3 ) ; } fields ; } FARMS ; typedef struct { local int i; struct { for( i = 0; i < 20; i ++ ) MONSTAT monster; } monsterbarn[10] ; UNKNWN Unknown