diff --git a/pkNX.Structures/Encounter/FlatBuffers/bin2json.bat b/pkNX.Structures/Encounter/FlatBuffers/bin2json.bat new file mode 100644 index 00000000..d87beb4c --- /dev/null +++ b/pkNX.Structures/Encounter/FlatBuffers/bin2json.bat @@ -0,0 +1,2 @@ +for %%f in (*.bin) do call flatc -t encount_data.fbs -- %%f --defaults-json --raw-binary +pause \ No newline at end of file diff --git a/pkNX.Structures/Encounter/FlatBuffers/encount_data.fbs b/pkNX.Structures/Encounter/FlatBuffers/encount_data.fbs new file mode 100644 index 00000000..43a41269 --- /dev/null +++ b/pkNX.Structures/Encounter/FlatBuffers/encount_data.fbs @@ -0,0 +1,69 @@ +namespace pkNX; + +table EncounterTables7b { + EncounterTables:[EncounterTable7b]; +} + +table EncounterTable7b { + ZoneID:ulong; + TrainerRankMin:uint; + TrainerRankMax:uint; + + GroundSpawnAllowed:bool; + GroundSpawnCountMax:uint; + GroundSpawnDuration:uint; + + GroundTableEncounterRate:uint; + GroundTableLevelMin:uint; + GroundTableLevelMax:uint; + GroundTableRandChanceTotal:uint; + GroundTable:[EncounterSlot]; + + WaterSpawnAllowed:bool; + WaterSpawnCountMax:uint; + WaterSpawnDuration:uint; + + WaterTableEncounterRate:uint; + WaterTableLevelMin:uint; + WaterTableLevelMax:uint; + WaterTableRandChanceTotal:uint; + WaterTable:[EncounterSlot]; + + OldRodTableEncounterRate:uint; + OldRodTableLevelMin:uint; + OldRodTableLevelMax:uint; + OldRodTableRandChanceTotal:uint; + OldRodTable:[EncounterSlot]; + + GoodRodTableEncounterRate:uint; + GoodRodTableLevelMin:uint; + GoodRodTableLevelMax:uint; + GoodRodTableRandChanceTotal:uint; + GoodRodTable:[EncounterSlot]; + + SuperRodTableEncounterRate:uint; + SuperRodTableLevelMin:uint; + SuperRodTableLevelMax:uint; + SuperRodTableRandChanceTotal:uint; + SuperRodTable:[EncounterSlot]; + + SkySpawnAllowed:bool; + SkySpawnCountMax:uint; + SkySpawnDuration:uint; + + SkyTableEncounterRate:uint; + SkyTableLevelMin:uint; + SkyTableLevelMax:uint; + SkyTableRandChanceTotal:uint; + SkyTable:[EncounterSlot]; +} + +table EncounterSlot { + Probability:int; + Species:int; + Form:short; +} + +root_type EncounterTables7b; + +file_extension "bin"; \ No newline at end of file diff --git a/pkNX.Structures/Encounter/FlatBuffers/flatc.exe b/pkNX.Structures/Encounter/FlatBuffers/flatc.exe new file mode 100644 index 00000000..459ca193 Binary files /dev/null and b/pkNX.Structures/Encounter/FlatBuffers/flatc.exe differ diff --git a/pkNX.Structures/Encounter/FlatBuffers/json2bin.bat b/pkNX.Structures/Encounter/FlatBuffers/json2bin.bat new file mode 100644 index 00000000..ae96894f --- /dev/null +++ b/pkNX.Structures/Encounter/FlatBuffers/json2bin.bat @@ -0,0 +1,2 @@ +for %%f in (*.json) do call flatc -b encount_data.fbs %%f --defaults-json +pause \ No newline at end of file