diff --git a/Cargo.lock b/Cargo.lock index 08935c7..c6e1df1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1001,7 +1001,7 @@ checksum = "739e9d7726dc32173fed2d69d17eef3c54682169e4e20ff1d0a45dcd37063cef" [[package]] name = "libpso" version = "0.1.0" -source = "git+http://git.sharnoth.com/jake/libpso#0bd4396bd11534169bd5a6a5b357c90b0f550991" +source = "git+http://git.sharnoth.com/jake/libpso#892d2ed220369f0ff7b7530fa734e722c2b21c2c" dependencies = [ "chrono", "psopacket", @@ -1401,7 +1401,7 @@ dependencies = [ [[package]] name = "psopacket" version = "1.0.0" -source = "git+http://git.sharnoth.com/jake/libpso#0bd4396bd11534169bd5a6a5b357c90b0f550991" +source = "git+http://git.sharnoth.com/jake/libpso#892d2ed220369f0ff7b7530fa734e722c2b21c2c" dependencies = [ "proc-macro2", "quote", diff --git a/data/quests.toml b/data/quests.toml deleted file mode 100644 index d1d3298..0000000 --- a/data/quests.toml +++ /dev/null @@ -1,39 +0,0 @@ -[Extermination] -list_order = 1 -description = "I am a description" - -[[Extermination.quests]] -bin = "q058-ret-bb.bin" -dat = "q058-ret-bb.dat" - -[[Extermination.quests]] -bin = "q059-ret-bb.bin" -dat = "q059-ret-bb.dat" - - -[Retrieval] -list_order = 2 -description = "find some shit" - -[[Retrieval.quests]] -bin = "q101-ext-bb.bin" -dat = "q101-ext-bb.dat" - -[[Retrieval.quests]] -bin = "q102-ext-bb.bin" -dat = "q102-ext-bb.dat" -#drop_table = "q102-drops" - -[[Retrieval.quests]] -bin = "q233-ext-bb.bin" -dat = "q233-ext-bb.dat" -#drop_table = "q102-drops" - -[[Retrieval.quests]] -bin = "q236-ext-bb.bin" -dat = "q236-ext-bb.dat" -#drop_table = "q102-drops" - -[[Retrieval.quests]] -bin = "q118-vr-bb.bin" -dat = "q118-vr-bb.dat" diff --git a/data/quests/b001-bb.bin b/data/quests/bb/ep1/battle/b001-bb.bin similarity index 100% rename from data/quests/b001-bb.bin rename to data/quests/bb/ep1/battle/b001-bb.bin diff --git a/data/quests/b001-bb.dat b/data/quests/bb/ep1/battle/b001-bb.dat similarity index 100% rename from data/quests/b001-bb.dat rename to data/quests/bb/ep1/battle/b001-bb.dat diff --git a/data/quests/b002-bb.bin b/data/quests/bb/ep1/battle/b002-bb.bin similarity index 100% rename from data/quests/b002-bb.bin rename to data/quests/bb/ep1/battle/b002-bb.bin diff --git a/data/quests/b002-bb.dat b/data/quests/bb/ep1/battle/b002-bb.dat similarity index 100% rename from data/quests/b002-bb.dat rename to data/quests/bb/ep1/battle/b002-bb.dat diff --git a/data/quests/b003-bb.bin b/data/quests/bb/ep1/battle/b003-bb.bin similarity index 100% rename from data/quests/b003-bb.bin rename to data/quests/bb/ep1/battle/b003-bb.bin diff --git a/data/quests/b003-bb.dat b/data/quests/bb/ep1/battle/b003-bb.dat similarity index 100% rename from data/quests/b003-bb.dat rename to data/quests/bb/ep1/battle/b003-bb.dat diff --git a/data/quests/b004-bb.bin b/data/quests/bb/ep1/battle/b004-bb.bin similarity index 100% rename from data/quests/b004-bb.bin rename to data/quests/bb/ep1/battle/b004-bb.bin diff --git a/data/quests/b004-bb.dat b/data/quests/bb/ep1/battle/b004-bb.dat similarity index 100% rename from data/quests/b004-bb.dat rename to data/quests/bb/ep1/battle/b004-bb.dat diff --git a/data/quests/b005-bb.bin b/data/quests/bb/ep1/battle/b005-bb.bin similarity index 100% rename from data/quests/b005-bb.bin rename to data/quests/bb/ep1/battle/b005-bb.bin diff --git a/data/quests/b005-bb.dat b/data/quests/bb/ep1/battle/b005-bb.dat similarity index 100% rename from data/quests/b005-bb.dat rename to data/quests/bb/ep1/battle/b005-bb.dat diff --git a/data/quests/b006-bb.bin b/data/quests/bb/ep1/battle/b006-bb.bin similarity index 100% rename from data/quests/b006-bb.bin rename to data/quests/bb/ep1/battle/b006-bb.bin diff --git a/data/quests/b006-bb.dat b/data/quests/bb/ep1/battle/b006-bb.dat similarity index 100% rename from data/quests/b006-bb.dat rename to data/quests/bb/ep1/battle/b006-bb.dat diff --git a/data/quests/b007-bb.bin b/data/quests/bb/ep1/battle/b007-bb.bin similarity index 100% rename from data/quests/b007-bb.bin rename to data/quests/bb/ep1/battle/b007-bb.bin diff --git a/data/quests/b007-bb.dat b/data/quests/bb/ep1/battle/b007-bb.dat similarity index 100% rename from data/quests/b007-bb.dat rename to data/quests/bb/ep1/battle/b007-bb.dat diff --git a/data/quests/b008-bb.bin b/data/quests/bb/ep1/battle/b008-bb.bin similarity index 100% rename from data/quests/b008-bb.bin rename to data/quests/bb/ep1/battle/b008-bb.bin diff --git a/data/quests/b008-bb.dat b/data/quests/bb/ep1/battle/b008-bb.dat similarity index 100% rename from data/quests/b008-bb.dat rename to data/quests/bb/ep1/battle/b008-bb.dat diff --git a/data/quests/bb/ep1/battle/quests.toml b/data/quests/bb/ep1/battle/quests.toml new file mode 100644 index 0000000..f62a1a3 --- /dev/null +++ b/data/quests/bb/ep1/battle/quests.toml @@ -0,0 +1,36 @@ +[Battle] +list_order = 1 +description = "Challenge your skill against other hunters!" + +[[Battle.quests]] +bin = "b001-bb.bin" +dat = "b001-bb.dat" + +[[Battle.quests]] +bin = "b002-bb.bin" +dat = "b002-bb.dat" + +[[Battle.quests]] +bin = "b003-bb.bin" +dat = "b003-bb.dat" + +[[Battle.quests]] +bin = "b004-bb.bin" +dat = "b004-bb.dat" + +[[Battle.quests]] +bin = "b005-bb.bin" +dat = "b005-bb.dat" + +[[Battle.quests]] +bin = "b006-bb.bin" +dat = "b006-bb.dat" + +[[Battle.quests]] +bin = "b007-bb.bin" +dat = "b007-bb.dat" + +[[Battle.quests]] +bin = "b008-bb.bin" +dat = "b008-bb.dat" + diff --git a/data/quests/c101-bb.bin b/data/quests/bb/ep1/challenge/c101-bb.bin similarity index 100% rename from data/quests/c101-bb.bin rename to data/quests/bb/ep1/challenge/c101-bb.bin diff --git a/data/quests/c101-bb.dat b/data/quests/bb/ep1/challenge/c101-bb.dat similarity index 100% rename from data/quests/c101-bb.dat rename to data/quests/bb/ep1/challenge/c101-bb.dat diff --git a/data/quests/c102-bb.bin b/data/quests/bb/ep1/challenge/c102-bb.bin similarity index 100% rename from data/quests/c102-bb.bin rename to data/quests/bb/ep1/challenge/c102-bb.bin diff --git a/data/quests/c102-bb.dat b/data/quests/bb/ep1/challenge/c102-bb.dat similarity index 100% rename from data/quests/c102-bb.dat rename to data/quests/bb/ep1/challenge/c102-bb.dat diff --git a/data/quests/c103-bb.bin b/data/quests/bb/ep1/challenge/c103-bb.bin similarity index 100% rename from data/quests/c103-bb.bin rename to data/quests/bb/ep1/challenge/c103-bb.bin diff --git a/data/quests/c103-bb.dat b/data/quests/bb/ep1/challenge/c103-bb.dat similarity index 100% rename from data/quests/c103-bb.dat rename to data/quests/bb/ep1/challenge/c103-bb.dat diff --git a/data/quests/c104-bb.bin b/data/quests/bb/ep1/challenge/c104-bb.bin similarity index 100% rename from data/quests/c104-bb.bin rename to data/quests/bb/ep1/challenge/c104-bb.bin diff --git a/data/quests/c104-bb.dat b/data/quests/bb/ep1/challenge/c104-bb.dat similarity index 100% rename from data/quests/c104-bb.dat rename to data/quests/bb/ep1/challenge/c104-bb.dat diff --git a/data/quests/c105-bb.bin b/data/quests/bb/ep1/challenge/c105-bb.bin similarity index 100% rename from data/quests/c105-bb.bin rename to data/quests/bb/ep1/challenge/c105-bb.bin diff --git a/data/quests/c105-bb.dat b/data/quests/bb/ep1/challenge/c105-bb.dat similarity index 100% rename from data/quests/c105-bb.dat rename to data/quests/bb/ep1/challenge/c105-bb.dat diff --git a/data/quests/c106-bb.bin b/data/quests/bb/ep1/challenge/c106-bb.bin similarity index 100% rename from data/quests/c106-bb.bin rename to data/quests/bb/ep1/challenge/c106-bb.bin diff --git a/data/quests/c106-bb.dat b/data/quests/bb/ep1/challenge/c106-bb.dat similarity index 100% rename from data/quests/c106-bb.dat rename to data/quests/bb/ep1/challenge/c106-bb.dat diff --git a/data/quests/c107-bb.bin b/data/quests/bb/ep1/challenge/c107-bb.bin similarity index 100% rename from data/quests/c107-bb.bin rename to data/quests/bb/ep1/challenge/c107-bb.bin diff --git a/data/quests/c107-bb.dat b/data/quests/bb/ep1/challenge/c107-bb.dat similarity index 100% rename from data/quests/c107-bb.dat rename to data/quests/bb/ep1/challenge/c107-bb.dat diff --git a/data/quests/c108-bb.bin b/data/quests/bb/ep1/challenge/c108-bb.bin similarity index 100% rename from data/quests/c108-bb.bin rename to data/quests/bb/ep1/challenge/c108-bb.bin diff --git a/data/quests/c108-bb.dat b/data/quests/bb/ep1/challenge/c108-bb.dat similarity index 100% rename from data/quests/c108-bb.dat rename to data/quests/bb/ep1/challenge/c108-bb.dat diff --git a/data/quests/c109-bb.bin b/data/quests/bb/ep1/challenge/c109-bb.bin similarity index 100% rename from data/quests/c109-bb.bin rename to data/quests/bb/ep1/challenge/c109-bb.bin diff --git a/data/quests/c109-bb.dat b/data/quests/bb/ep1/challenge/c109-bb.dat similarity index 100% rename from data/quests/c109-bb.dat rename to data/quests/bb/ep1/challenge/c109-bb.dat diff --git a/data/quests/bb/ep1/challenge/quests.toml b/data/quests/bb/ep1/challenge/quests.toml new file mode 100644 index 0000000..d2a5719 --- /dev/null +++ b/data/quests/bb/ep1/challenge/quests.toml @@ -0,0 +1,40 @@ +[Challenge] +list_order = 1 +description = "Pioneer 2's advanced training course." + +[[Challenge.quests]] +bin = "c101-bb.bin" +dat = "c101-bb.dat" + +[[Challenge.quests]] +bin = "c102-bb.bin" +dat = "c102-bb.dat" + +[[Challenge.quests]] +bin = "c103-bb.bin" +dat = "c103-bb.dat" + +[[Challenge.quests]] +bin = "c104-bb.bin" +dat = "c104-bb.dat" + +[[Challenge.quests]] +bin = "c105-bb.bin" +dat = "c105-bb.dat" + +[[Challenge.quests]] +bin = "c106-bb.bin" +dat = "c106-bb.dat" + +[[Challenge.quests]] +bin = "c107-bb.bin" +dat = "c107-bb.dat" + +[[Challenge.quests]] +bin = "c108-bb.bin" +dat = "c108-bb.dat" + +[[Challenge.quests]] +bin = "c109-bb.bin" +dat = "c109-bb.dat" + diff --git a/data/quests/q401-gov-bb.bin b/data/quests/bb/ep1/government/q401-gov-bb.bin similarity index 100% rename from data/quests/q401-gov-bb.bin rename to data/quests/bb/ep1/government/q401-gov-bb.bin diff --git a/data/quests/q401-gov-bb.dat b/data/quests/bb/ep1/government/q401-gov-bb.dat similarity index 100% rename from data/quests/q401-gov-bb.dat rename to data/quests/bb/ep1/government/q401-gov-bb.dat diff --git a/data/quests/q402-gov-bb.bin b/data/quests/bb/ep1/government/q402-gov-bb.bin similarity index 100% rename from data/quests/q402-gov-bb.bin rename to data/quests/bb/ep1/government/q402-gov-bb.bin diff --git a/data/quests/q402-gov-bb.dat b/data/quests/bb/ep1/government/q402-gov-bb.dat similarity index 100% rename from data/quests/q402-gov-bb.dat rename to data/quests/bb/ep1/government/q402-gov-bb.dat diff --git a/data/quests/q403-gov-bb.bin b/data/quests/bb/ep1/government/q403-gov-bb.bin similarity index 100% rename from data/quests/q403-gov-bb.bin rename to data/quests/bb/ep1/government/q403-gov-bb.bin diff --git a/data/quests/q403-gov-bb.dat b/data/quests/bb/ep1/government/q403-gov-bb.dat similarity index 100% rename from data/quests/q403-gov-bb.dat rename to data/quests/bb/ep1/government/q403-gov-bb.dat diff --git a/data/quests/q404-gov-bb.bin b/data/quests/bb/ep1/government/q404-gov-bb.bin similarity index 100% rename from data/quests/q404-gov-bb.bin rename to data/quests/bb/ep1/government/q404-gov-bb.bin diff --git a/data/quests/q404-gov-bb.dat b/data/quests/bb/ep1/government/q404-gov-bb.dat similarity index 100% rename from data/quests/q404-gov-bb.dat rename to data/quests/bb/ep1/government/q404-gov-bb.dat diff --git a/data/quests/q405-gov-bb.bin b/data/quests/bb/ep1/government/q405-gov-bb.bin similarity index 100% rename from data/quests/q405-gov-bb.bin rename to data/quests/bb/ep1/government/q405-gov-bb.bin diff --git a/data/quests/q405-gov-bb.dat b/data/quests/bb/ep1/government/q405-gov-bb.dat similarity index 100% rename from data/quests/q405-gov-bb.dat rename to data/quests/bb/ep1/government/q405-gov-bb.dat diff --git a/data/quests/q406-gov-bb.bin b/data/quests/bb/ep1/government/q406-gov-bb.bin similarity index 100% rename from data/quests/q406-gov-bb.bin rename to data/quests/bb/ep1/government/q406-gov-bb.bin diff --git a/data/quests/q406-gov-bb.dat b/data/quests/bb/ep1/government/q406-gov-bb.dat similarity index 100% rename from data/quests/q406-gov-bb.dat rename to data/quests/bb/ep1/government/q406-gov-bb.dat diff --git a/data/quests/q407-gov-bb.bin b/data/quests/bb/ep1/government/q407-gov-bb.bin similarity index 100% rename from data/quests/q407-gov-bb.bin rename to data/quests/bb/ep1/government/q407-gov-bb.bin diff --git a/data/quests/q407-gov-bb.dat b/data/quests/bb/ep1/government/q407-gov-bb.dat similarity index 100% rename from data/quests/q407-gov-bb.dat rename to data/quests/bb/ep1/government/q407-gov-bb.dat diff --git a/data/quests/q408-gov-bb.bin b/data/quests/bb/ep1/government/q408-gov-bb.bin similarity index 100% rename from data/quests/q408-gov-bb.bin rename to data/quests/bb/ep1/government/q408-gov-bb.bin diff --git a/data/quests/q408-gov-bb.dat b/data/quests/bb/ep1/government/q408-gov-bb.dat similarity index 100% rename from data/quests/q408-gov-bb.dat rename to data/quests/bb/ep1/government/q408-gov-bb.dat diff --git a/data/quests/q409-gov-bb.bin b/data/quests/bb/ep1/government/q409-gov-bb.bin similarity index 100% rename from data/quests/q409-gov-bb.bin rename to data/quests/bb/ep1/government/q409-gov-bb.bin diff --git a/data/quests/q409-gov-bb.dat b/data/quests/bb/ep1/government/q409-gov-bb.dat similarity index 100% rename from data/quests/q409-gov-bb.dat rename to data/quests/bb/ep1/government/q409-gov-bb.dat diff --git a/data/quests/q410-gov-bb.bin b/data/quests/bb/ep1/government/q410-gov-bb.bin similarity index 100% rename from data/quests/q410-gov-bb.bin rename to data/quests/bb/ep1/government/q410-gov-bb.bin diff --git a/data/quests/q410-gov-bb.dat b/data/quests/bb/ep1/government/q410-gov-bb.dat similarity index 100% rename from data/quests/q410-gov-bb.dat rename to data/quests/bb/ep1/government/q410-gov-bb.dat diff --git a/data/quests/q411-gov-bb.bin b/data/quests/bb/ep1/government/q411-gov-bb.bin similarity index 100% rename from data/quests/q411-gov-bb.bin rename to data/quests/bb/ep1/government/q411-gov-bb.bin diff --git a/data/quests/q411-gov-bb.dat b/data/quests/bb/ep1/government/q411-gov-bb.dat similarity index 100% rename from data/quests/q411-gov-bb.dat rename to data/quests/bb/ep1/government/q411-gov-bb.dat diff --git a/data/quests/q412-gov-bb.bin b/data/quests/bb/ep1/government/q412-gov-bb.bin similarity index 100% rename from data/quests/q412-gov-bb.bin rename to data/quests/bb/ep1/government/q412-gov-bb.bin diff --git a/data/quests/q412-gov-bb.dat b/data/quests/bb/ep1/government/q412-gov-bb.dat similarity index 100% rename from data/quests/q412-gov-bb.dat rename to data/quests/bb/ep1/government/q412-gov-bb.dat diff --git a/data/quests/q413-gov-bb.bin b/data/quests/bb/ep1/government/q413-gov-bb.bin similarity index 100% rename from data/quests/q413-gov-bb.bin rename to data/quests/bb/ep1/government/q413-gov-bb.bin diff --git a/data/quests/q413-gov-bb.dat b/data/quests/bb/ep1/government/q413-gov-bb.dat similarity index 100% rename from data/quests/q413-gov-bb.dat rename to data/quests/bb/ep1/government/q413-gov-bb.dat diff --git a/data/quests/q414-gov-bb.bin b/data/quests/bb/ep1/government/q414-gov-bb.bin similarity index 100% rename from data/quests/q414-gov-bb.bin rename to data/quests/bb/ep1/government/q414-gov-bb.bin diff --git a/data/quests/q414-gov-bb.dat b/data/quests/bb/ep1/government/q414-gov-bb.dat similarity index 100% rename from data/quests/q414-gov-bb.dat rename to data/quests/bb/ep1/government/q414-gov-bb.dat diff --git a/data/quests/q415-gov-bb.bin b/data/quests/bb/ep1/government/q415-gov-bb.bin similarity index 100% rename from data/quests/q415-gov-bb.bin rename to data/quests/bb/ep1/government/q415-gov-bb.bin diff --git a/data/quests/q415-gov-bb.dat b/data/quests/bb/ep1/government/q415-gov-bb.dat similarity index 100% rename from data/quests/q415-gov-bb.dat rename to data/quests/bb/ep1/government/q415-gov-bb.dat diff --git a/data/quests/bb/ep1/government/quests.toml b/data/quests/bb/ep1/government/quests.toml new file mode 100644 index 0000000..beb8210 --- /dev/null +++ b/data/quests/bb/ep1/government/quests.toml @@ -0,0 +1,64 @@ +[Government] +list_order = 1 +description = "What lies below on Ragol?" + +[[Government.quests]] +bin = "q401-gov-bb.bin" +dat = "q401-gov-bb.dat" + +[[Government.quests]] +bin = "q402-gov-bb.bin" +dat = "q402-gov-bb.dat" + +[[Government.quests]] +bin = "q403-gov-bb.bin" +dat = "q403-gov-bb.dat" + +[[Government.quests]] +bin = "q404-gov-bb.bin" +dat = "q404-gov-bb.dat" + +[[Government.quests]] +bin = "q405-gov-bb.bin" +dat = "q405-gov-bb.dat" + +[[Government.quests]] +bin = "q406-gov-bb.bin" +dat = "q406-gov-bb.dat" + +[[Government.quests]] +bin = "q407-gov-bb.bin" +dat = "q407-gov-bb.dat" + +[[Government.quests]] +bin = "q408-gov-bb.bin" +dat = "q408-gov-bb.dat" + +[[Government.quests]] +bin = "q409-gov-bb.bin" +dat = "q409-gov-bb.dat" + +[[Government.quests]] +bin = "q410-gov-bb.bin" +dat = "q410-gov-bb.dat" + +[[Government.quests]] +bin = "q411-gov-bb.bin" +dat = "q411-gov-bb.dat" + +[[Government.quests]] +bin = "q412-gov-bb.bin" +dat = "q412-gov-bb.dat" + +[[Government.quests]] +bin = "q413-gov-bb.bin" +dat = "q413-gov-bb.dat" + +[[Government.quests]] +bin = "q414-gov-bb.bin" +dat = "q414-gov-bb.dat" + +[[Government.quests]] +bin = "q415-gov-bb.bin" +dat = "q415-gov-bb.dat" + diff --git a/data/quests/q058-ret-bb.bin b/data/quests/bb/ep1/multi/q058-ret-bb.bin similarity index 100% rename from data/quests/q058-ret-bb.bin rename to data/quests/bb/ep1/multi/q058-ret-bb.bin diff --git a/data/quests/q058-ret-bb.dat b/data/quests/bb/ep1/multi/q058-ret-bb.dat similarity index 100% rename from data/quests/q058-ret-bb.dat rename to data/quests/bb/ep1/multi/q058-ret-bb.dat diff --git a/data/quests/q058-ret-d1.bin b/data/quests/bb/ep1/multi/q058-ret-d1.bin similarity index 100% rename from data/quests/q058-ret-d1.bin rename to data/quests/bb/ep1/multi/q058-ret-d1.bin diff --git a/data/quests/q058-ret-d1.dat b/data/quests/bb/ep1/multi/q058-ret-d1.dat similarity index 100% rename from data/quests/q058-ret-d1.dat rename to data/quests/bb/ep1/multi/q058-ret-d1.dat diff --git a/data/quests/q059-ret-bb.bin b/data/quests/bb/ep1/multi/q059-ret-bb.bin similarity index 100% rename from data/quests/q059-ret-bb.bin rename to data/quests/bb/ep1/multi/q059-ret-bb.bin diff --git a/data/quests/q059-ret-bb.dat b/data/quests/bb/ep1/multi/q059-ret-bb.dat similarity index 100% rename from data/quests/q059-ret-bb.dat rename to data/quests/bb/ep1/multi/q059-ret-bb.dat diff --git a/data/quests/q059-ret-d1.bin b/data/quests/bb/ep1/multi/q059-ret-d1.bin similarity index 100% rename from data/quests/q059-ret-d1.bin rename to data/quests/bb/ep1/multi/q059-ret-d1.bin diff --git a/data/quests/q059-ret-d1.dat b/data/quests/bb/ep1/multi/q059-ret-d1.dat similarity index 100% rename from data/quests/q059-ret-d1.dat rename to data/quests/bb/ep1/multi/q059-ret-d1.dat diff --git a/data/quests/q060-ret-bb.bin b/data/quests/bb/ep1/multi/q060-ret-bb.bin similarity index 100% rename from data/quests/q060-ret-bb.bin rename to data/quests/bb/ep1/multi/q060-ret-bb.bin diff --git a/data/quests/q060-ret-bb.dat b/data/quests/bb/ep1/multi/q060-ret-bb.dat similarity index 100% rename from data/quests/q060-ret-bb.dat rename to data/quests/bb/ep1/multi/q060-ret-bb.dat diff --git a/data/quests/q060-ret-d1.bin b/data/quests/bb/ep1/multi/q060-ret-d1.bin similarity index 100% rename from data/quests/q060-ret-d1.bin rename to data/quests/bb/ep1/multi/q060-ret-d1.bin diff --git a/data/quests/q060-ret-d1.dat b/data/quests/bb/ep1/multi/q060-ret-d1.dat similarity index 100% rename from data/quests/q060-ret-d1.dat rename to data/quests/bb/ep1/multi/q060-ret-d1.dat diff --git a/data/quests/q101-ext-bb.bin b/data/quests/bb/ep1/multi/q101-ext-bb.bin similarity index 100% rename from data/quests/q101-ext-bb.bin rename to data/quests/bb/ep1/multi/q101-ext-bb.bin diff --git a/data/quests/q101-ext-bb.dat b/data/quests/bb/ep1/multi/q101-ext-bb.dat similarity index 100% rename from data/quests/q101-ext-bb.dat rename to data/quests/bb/ep1/multi/q101-ext-bb.dat diff --git a/data/quests/q101-ext-d1.bin b/data/quests/bb/ep1/multi/q101-ext-d1.bin similarity index 100% rename from data/quests/q101-ext-d1.bin rename to data/quests/bb/ep1/multi/q101-ext-d1.bin diff --git a/data/quests/q101-ext-d1.dat b/data/quests/bb/ep1/multi/q101-ext-d1.dat similarity index 100% rename from data/quests/q101-ext-d1.dat rename to data/quests/bb/ep1/multi/q101-ext-d1.dat diff --git a/data/quests/q102-ext-bb.bin b/data/quests/bb/ep1/multi/q102-ext-bb.bin similarity index 100% rename from data/quests/q102-ext-bb.bin rename to data/quests/bb/ep1/multi/q102-ext-bb.bin diff --git a/data/quests/q102-ext-bb.dat b/data/quests/bb/ep1/multi/q102-ext-bb.dat similarity index 100% rename from data/quests/q102-ext-bb.dat rename to data/quests/bb/ep1/multi/q102-ext-bb.dat diff --git a/data/quests/q102-ext-d1.bin b/data/quests/bb/ep1/multi/q102-ext-d1.bin similarity index 100% rename from data/quests/q102-ext-d1.bin rename to data/quests/bb/ep1/multi/q102-ext-d1.bin diff --git a/data/quests/q102-ext-d1.dat b/data/quests/bb/ep1/multi/q102-ext-d1.dat similarity index 100% rename from data/quests/q102-ext-d1.dat rename to data/quests/bb/ep1/multi/q102-ext-d1.dat diff --git a/data/quests/q103-ext-bb.bin b/data/quests/bb/ep1/multi/q103-ext-bb.bin similarity index 100% rename from data/quests/q103-ext-bb.bin rename to data/quests/bb/ep1/multi/q103-ext-bb.bin diff --git a/data/quests/q103-ext-bb.dat b/data/quests/bb/ep1/multi/q103-ext-bb.dat similarity index 100% rename from data/quests/q103-ext-bb.dat rename to data/quests/bb/ep1/multi/q103-ext-bb.dat diff --git a/data/quests/q103-ext-d1.bin b/data/quests/bb/ep1/multi/q103-ext-d1.bin similarity index 100% rename from data/quests/q103-ext-d1.bin rename to data/quests/bb/ep1/multi/q103-ext-d1.bin diff --git a/data/quests/q103-ext-d1.dat b/data/quests/bb/ep1/multi/q103-ext-d1.dat similarity index 100% rename from data/quests/q103-ext-d1.dat rename to data/quests/bb/ep1/multi/q103-ext-d1.dat diff --git a/data/quests/q104-ext-bb.bin b/data/quests/bb/ep1/multi/q104-ext-bb.bin similarity index 100% rename from data/quests/q104-ext-bb.bin rename to data/quests/bb/ep1/multi/q104-ext-bb.bin diff --git a/data/quests/q104-ext-bb.dat b/data/quests/bb/ep1/multi/q104-ext-bb.dat similarity index 100% rename from data/quests/q104-ext-bb.dat rename to data/quests/bb/ep1/multi/q104-ext-bb.dat diff --git a/data/quests/q104-ext-d1.bin b/data/quests/bb/ep1/multi/q104-ext-d1.bin similarity index 100% rename from data/quests/q104-ext-d1.bin rename to data/quests/bb/ep1/multi/q104-ext-d1.bin diff --git a/data/quests/q104-ext-d1.dat b/data/quests/bb/ep1/multi/q104-ext-d1.dat similarity index 100% rename from data/quests/q104-ext-d1.dat rename to data/quests/bb/ep1/multi/q104-ext-d1.dat diff --git a/data/quests/q108-ext-bb.bin b/data/quests/bb/ep1/multi/q108-ext-bb.bin similarity index 100% rename from data/quests/q108-ext-bb.bin rename to data/quests/bb/ep1/multi/q108-ext-bb.bin diff --git a/data/quests/q108-ext-bb.dat b/data/quests/bb/ep1/multi/q108-ext-bb.dat similarity index 100% rename from data/quests/q108-ext-bb.dat rename to data/quests/bb/ep1/multi/q108-ext-bb.dat diff --git a/data/quests/q108-ext-d1.bin b/data/quests/bb/ep1/multi/q108-ext-d1.bin similarity index 100% rename from data/quests/q108-ext-d1.bin rename to data/quests/bb/ep1/multi/q108-ext-d1.bin diff --git a/data/quests/q108-ext-d1.dat b/data/quests/bb/ep1/multi/q108-ext-d1.dat similarity index 100% rename from data/quests/q108-ext-d1.dat rename to data/quests/bb/ep1/multi/q108-ext-d1.dat diff --git a/data/quests/q109-ext-bb.bin b/data/quests/bb/ep1/multi/q109-ext-bb.bin similarity index 100% rename from data/quests/q109-ext-bb.bin rename to data/quests/bb/ep1/multi/q109-ext-bb.bin diff --git a/data/quests/q109-ext-bb.dat b/data/quests/bb/ep1/multi/q109-ext-bb.dat similarity index 100% rename from data/quests/q109-ext-bb.dat rename to data/quests/bb/ep1/multi/q109-ext-bb.dat diff --git a/data/quests/q109-ext-d1.bin b/data/quests/bb/ep1/multi/q109-ext-d1.bin similarity index 100% rename from data/quests/q109-ext-d1.bin rename to data/quests/bb/ep1/multi/q109-ext-d1.bin diff --git a/data/quests/q109-ext-d1.dat b/data/quests/bb/ep1/multi/q109-ext-d1.dat similarity index 100% rename from data/quests/q109-ext-d1.dat rename to data/quests/bb/ep1/multi/q109-ext-d1.dat diff --git a/data/quests/q110-ext-bb.bin b/data/quests/bb/ep1/multi/q110-ext-bb.bin similarity index 100% rename from data/quests/q110-ext-bb.bin rename to data/quests/bb/ep1/multi/q110-ext-bb.bin diff --git a/data/quests/q110-ext-bb.dat b/data/quests/bb/ep1/multi/q110-ext-bb.dat similarity index 100% rename from data/quests/q110-ext-bb.dat rename to data/quests/bb/ep1/multi/q110-ext-bb.dat diff --git a/data/quests/q110-ext-d1.bin b/data/quests/bb/ep1/multi/q110-ext-d1.bin similarity index 100% rename from data/quests/q110-ext-d1.bin rename to data/quests/bb/ep1/multi/q110-ext-d1.bin diff --git a/data/quests/q110-ext-d1.dat b/data/quests/bb/ep1/multi/q110-ext-d1.dat similarity index 100% rename from data/quests/q110-ext-d1.dat rename to data/quests/bb/ep1/multi/q110-ext-d1.dat diff --git a/data/quests/q111-ext-bb.bin b/data/quests/bb/ep1/multi/q111-ext-bb.bin similarity index 100% rename from data/quests/q111-ext-bb.bin rename to data/quests/bb/ep1/multi/q111-ext-bb.bin diff --git a/data/quests/q111-ext-bb.dat b/data/quests/bb/ep1/multi/q111-ext-bb.dat similarity index 100% rename from data/quests/q111-ext-bb.dat rename to data/quests/bb/ep1/multi/q111-ext-bb.dat diff --git a/data/quests/q111-ext-d1.bin b/data/quests/bb/ep1/multi/q111-ext-d1.bin similarity index 100% rename from data/quests/q111-ext-d1.bin rename to data/quests/bb/ep1/multi/q111-ext-d1.bin diff --git a/data/quests/q111-ext-d1.dat b/data/quests/bb/ep1/multi/q111-ext-d1.dat similarity index 100% rename from data/quests/q111-ext-d1.dat rename to data/quests/bb/ep1/multi/q111-ext-d1.dat diff --git a/data/quests/q117-ext-bb.bin b/data/quests/bb/ep1/multi/q117-ext-bb.bin similarity index 100% rename from data/quests/q117-ext-bb.bin rename to data/quests/bb/ep1/multi/q117-ext-bb.bin diff --git a/data/quests/q117-ext-bb.dat b/data/quests/bb/ep1/multi/q117-ext-bb.dat similarity index 100% rename from data/quests/q117-ext-bb.dat rename to data/quests/bb/ep1/multi/q117-ext-bb.dat diff --git a/data/quests/q118-vr-bb.bin b/data/quests/bb/ep1/multi/q118-vr-bb.bin similarity index 100% rename from data/quests/q118-vr-bb.bin rename to data/quests/bb/ep1/multi/q118-vr-bb.bin diff --git a/data/quests/q118-vr-bb.dat b/data/quests/bb/ep1/multi/q118-vr-bb.dat similarity index 100% rename from data/quests/q118-vr-bb.dat rename to data/quests/bb/ep1/multi/q118-vr-bb.dat diff --git a/data/quests/q124-evt-bb.bin b/data/quests/bb/ep1/multi/q124-evt-bb.bin similarity index 100% rename from data/quests/q124-evt-bb.bin rename to data/quests/bb/ep1/multi/q124-evt-bb.bin diff --git a/data/quests/q124-evt-bb.dat b/data/quests/bb/ep1/multi/q124-evt-bb.dat similarity index 100% rename from data/quests/q124-evt-bb.dat rename to data/quests/bb/ep1/multi/q124-evt-bb.dat diff --git a/data/quests/q137-evt-bb.bin b/data/quests/bb/ep1/multi/q137-evt-bb.bin similarity index 100% rename from data/quests/q137-evt-bb.bin rename to data/quests/bb/ep1/multi/q137-evt-bb.bin diff --git a/data/quests/q137-evt-bb.dat b/data/quests/bb/ep1/multi/q137-evt-bb.dat similarity index 100% rename from data/quests/q137-evt-bb.dat rename to data/quests/bb/ep1/multi/q137-evt-bb.dat diff --git a/data/quests/q138-evt-bb.bin b/data/quests/bb/ep1/multi/q138-evt-bb.bin similarity index 100% rename from data/quests/q138-evt-bb.bin rename to data/quests/bb/ep1/multi/q138-evt-bb.bin diff --git a/data/quests/q138-evt-bb.dat b/data/quests/bb/ep1/multi/q138-evt-bb.dat similarity index 100% rename from data/quests/q138-evt-bb.dat rename to data/quests/bb/ep1/multi/q138-evt-bb.dat diff --git a/data/quests/q141-vr-bb.bin b/data/quests/bb/ep1/multi/q141-vr-bb.bin similarity index 100% rename from data/quests/q141-vr-bb.bin rename to data/quests/bb/ep1/multi/q141-vr-bb.bin diff --git a/data/quests/q141-vr-bb.dat b/data/quests/bb/ep1/multi/q141-vr-bb.dat similarity index 100% rename from data/quests/q141-vr-bb.dat rename to data/quests/bb/ep1/multi/q141-vr-bb.dat diff --git a/data/quests/q142-vr-bb.bin b/data/quests/bb/ep1/multi/q142-vr-bb.bin similarity index 100% rename from data/quests/q142-vr-bb.bin rename to data/quests/bb/ep1/multi/q142-vr-bb.bin diff --git a/data/quests/q142-vr-bb.dat b/data/quests/bb/ep1/multi/q142-vr-bb.dat similarity index 100% rename from data/quests/q142-vr-bb.dat rename to data/quests/bb/ep1/multi/q142-vr-bb.dat diff --git a/data/quests/bb/ep1/multi/quests.toml b/data/quests/bb/ep1/multi/quests.toml new file mode 100644 index 0000000..061ee38 --- /dev/null +++ b/data/quests/bb/ep1/multi/quests.toml @@ -0,0 +1,135 @@ +[Retrieval] +list_order = 1 +description = "Retrieval quests" + +[[Retrieval.quests]] +bin = "q058-ret-bb.bin" +dat = "q058-ret-bb.dat" + +[[Retrieval.quests]] +bin = "q058-ret-d1.bin" +dat = "q058-ret-d1.dat" + +[[Retrieval.quests]] +bin = "q059-ret-bb.bin" +dat = "q059-ret-bb.dat" + +[[Retrieval.quests]] +bin = "q059-ret-d1.bin" +dat = "q059-ret-d1.dat" + +[[Retrieval.quests]] +bin = "q060-ret-bb.bin" +dat = "q060-ret-bb.dat" + +[[Retrieval.quests]] +bin = "q060-ret-d1.bin" +dat = "q060-ret-d1.dat" + + +[Extermination] +list_order = 2 +description = "Exterminate the enemies!" + +[[Extermination.quests]] +bin = "q101-ext-bb.bin" +dat = "q101-ext-bb.dat" + +[[Extermination.quests]] +bin = "q101-ext-d1.bin" +dat = "q101-ext-d1.dat" + +[[Extermination.quests]] +bin = "q102-ext-bb.bin" +dat = "q102-ext-bb.dat" + +[[Extermination.quests]] +bin = "q102-ext-d1.bin" +dat = "q102-ext-d1.dat" + +[[Extermination.quests]] +bin = "q103-ext-bb.bin" +dat = "q103-ext-bb.dat" + +[[Extermination.quests]] +bin = "q103-ext-d1.bin" +dat = "q103-ext-d1.dat" + +[[Extermination.quests]] +bin = "q104-ext-bb.bin" +dat = "q104-ext-bb.dat" + +[[Extermination.quests]] +bin = "q104-ext-d1.bin" +dat = "q104-ext-d1.dat" + +[[Extermination.quests]] +bin = "q108-ext-bb.bin" +dat = "q108-ext-bb.dat" + +[[Extermination.quests]] +bin = "q108-ext-d1.bin" +dat = "q108-ext-d1.dat" + +[[Extermination.quests]] +bin = "q109-ext-bb.bin" +dat = "q109-ext-bb.dat" + +[[Extermination.quests]] +bin = "q109-ext-d1.bin" +dat = "q109-ext-d1.dat" + +[[Extermination.quests]] +bin = "q110-ext-bb.bin" +dat = "q110-ext-bb.dat" + +[[Extermination.quests]] +bin = "q110-ext-d1.bin" +dat = "q110-ext-d1.dat" + +[[Extermination.quests]] +bin = "q111-ext-bb.bin" +dat = "q111-ext-bb.dat" + +[[Extermination.quests]] +bin = "q111-ext-d1.bin" +dat = "q111-ext-d1.dat" + +[[Extermination.quests]] +bin = "q117-ext-bb.bin" +dat = "q117-ext-bb.dat" + + +[VR] +list_order = 3 +description = "VR training missions" + +[[VR.quests]] +bin = "q118-vr-bb.bin" +dat = "q118-vr-bb.dat" + +[[VR.quests]] +bin = "q141-vr-bb.bin" +dat = "q141-vr-bb.dat" + +[[VR.quests]] +bin = "q142-vr-bb.bin" +dat = "q142-vr-bb.dat" + + +[Event] +list_order = 4 +description = "Event missions!" + +[[Event.quests]] +bin = "q124-evt-bb.bin" +dat = "q124-evt-bb.dat" + +[[Event.quests]] +bin = "q137-evt-bb.bin" +dat = "q137-evt-bb.dat" + +[[Event.quests]] +bin = "q138-evt-bb.bin" +dat = "q138-evt-bb.dat" + diff --git a/data/quests/q001-1p-bb.bin b/data/quests/bb/ep1/single/q001-1p-bb.bin similarity index 100% rename from data/quests/q001-1p-bb.bin rename to data/quests/bb/ep1/single/q001-1p-bb.bin diff --git a/data/quests/q001-1p-bb.dat b/data/quests/bb/ep1/single/q001-1p-bb.dat similarity index 100% rename from data/quests/q001-1p-bb.dat rename to data/quests/bb/ep1/single/q001-1p-bb.dat diff --git a/data/quests/q002-1p-bb.bin b/data/quests/bb/ep1/single/q002-1p-bb.bin similarity index 100% rename from data/quests/q002-1p-bb.bin rename to data/quests/bb/ep1/single/q002-1p-bb.bin diff --git a/data/quests/q002-1p-bb.dat b/data/quests/bb/ep1/single/q002-1p-bb.dat similarity index 100% rename from data/quests/q002-1p-bb.dat rename to data/quests/bb/ep1/single/q002-1p-bb.dat diff --git a/data/quests/q003-1p-bb.bin b/data/quests/bb/ep1/single/q003-1p-bb.bin similarity index 100% rename from data/quests/q003-1p-bb.bin rename to data/quests/bb/ep1/single/q003-1p-bb.bin diff --git a/data/quests/q003-1p-bb.dat b/data/quests/bb/ep1/single/q003-1p-bb.dat similarity index 100% rename from data/quests/q003-1p-bb.dat rename to data/quests/bb/ep1/single/q003-1p-bb.dat diff --git a/data/quests/q004-1p-bb.bin b/data/quests/bb/ep1/single/q004-1p-bb.bin similarity index 100% rename from data/quests/q004-1p-bb.bin rename to data/quests/bb/ep1/single/q004-1p-bb.bin diff --git a/data/quests/q004-1p-bb.dat b/data/quests/bb/ep1/single/q004-1p-bb.dat similarity index 100% rename from data/quests/q004-1p-bb.dat rename to data/quests/bb/ep1/single/q004-1p-bb.dat diff --git a/data/quests/q005-1p-bb.bin b/data/quests/bb/ep1/single/q005-1p-bb.bin similarity index 100% rename from data/quests/q005-1p-bb.bin rename to data/quests/bb/ep1/single/q005-1p-bb.bin diff --git a/data/quests/q005-1p-bb.dat b/data/quests/bb/ep1/single/q005-1p-bb.dat similarity index 100% rename from data/quests/q005-1p-bb.dat rename to data/quests/bb/ep1/single/q005-1p-bb.dat diff --git a/data/quests/q006-1p-bb.bin b/data/quests/bb/ep1/single/q006-1p-bb.bin similarity index 100% rename from data/quests/q006-1p-bb.bin rename to data/quests/bb/ep1/single/q006-1p-bb.bin diff --git a/data/quests/q006-1p-bb.dat b/data/quests/bb/ep1/single/q006-1p-bb.dat similarity index 100% rename from data/quests/q006-1p-bb.dat rename to data/quests/bb/ep1/single/q006-1p-bb.dat diff --git a/data/quests/q007-1p-bb.bin b/data/quests/bb/ep1/single/q007-1p-bb.bin similarity index 100% rename from data/quests/q007-1p-bb.bin rename to data/quests/bb/ep1/single/q007-1p-bb.bin diff --git a/data/quests/q007-1p-bb.dat b/data/quests/bb/ep1/single/q007-1p-bb.dat similarity index 100% rename from data/quests/q007-1p-bb.dat rename to data/quests/bb/ep1/single/q007-1p-bb.dat diff --git a/data/quests/q008-1p-bb.bin b/data/quests/bb/ep1/single/q008-1p-bb.bin similarity index 100% rename from data/quests/q008-1p-bb.bin rename to data/quests/bb/ep1/single/q008-1p-bb.bin diff --git a/data/quests/q008-1p-bb.dat b/data/quests/bb/ep1/single/q008-1p-bb.dat similarity index 100% rename from data/quests/q008-1p-bb.dat rename to data/quests/bb/ep1/single/q008-1p-bb.dat diff --git a/data/quests/q009-1p-bb.bin b/data/quests/bb/ep1/single/q009-1p-bb.bin similarity index 100% rename from data/quests/q009-1p-bb.bin rename to data/quests/bb/ep1/single/q009-1p-bb.bin diff --git a/data/quests/q009-1p-bb.dat b/data/quests/bb/ep1/single/q009-1p-bb.dat similarity index 100% rename from data/quests/q009-1p-bb.dat rename to data/quests/bb/ep1/single/q009-1p-bb.dat diff --git a/data/quests/q010-1p-bb.bin b/data/quests/bb/ep1/single/q010-1p-bb.bin similarity index 100% rename from data/quests/q010-1p-bb.bin rename to data/quests/bb/ep1/single/q010-1p-bb.bin diff --git a/data/quests/q010-1p-bb.dat b/data/quests/bb/ep1/single/q010-1p-bb.dat similarity index 100% rename from data/quests/q010-1p-bb.dat rename to data/quests/bb/ep1/single/q010-1p-bb.dat diff --git a/data/quests/q011-1p-bb.bin b/data/quests/bb/ep1/single/q011-1p-bb.bin similarity index 100% rename from data/quests/q011-1p-bb.bin rename to data/quests/bb/ep1/single/q011-1p-bb.bin diff --git a/data/quests/q011-1p-bb.dat b/data/quests/bb/ep1/single/q011-1p-bb.dat similarity index 100% rename from data/quests/q011-1p-bb.dat rename to data/quests/bb/ep1/single/q011-1p-bb.dat diff --git a/data/quests/q012-1p-bb.bin b/data/quests/bb/ep1/single/q012-1p-bb.bin similarity index 100% rename from data/quests/q012-1p-bb.bin rename to data/quests/bb/ep1/single/q012-1p-bb.bin diff --git a/data/quests/q012-1p-bb.dat b/data/quests/bb/ep1/single/q012-1p-bb.dat similarity index 100% rename from data/quests/q012-1p-bb.dat rename to data/quests/bb/ep1/single/q012-1p-bb.dat diff --git a/data/quests/q013-1p-bb.bin b/data/quests/bb/ep1/single/q013-1p-bb.bin similarity index 100% rename from data/quests/q013-1p-bb.bin rename to data/quests/bb/ep1/single/q013-1p-bb.bin diff --git a/data/quests/q013-1p-bb.dat b/data/quests/bb/ep1/single/q013-1p-bb.dat similarity index 100% rename from data/quests/q013-1p-bb.dat rename to data/quests/bb/ep1/single/q013-1p-bb.dat diff --git a/data/quests/q014-1p-bb.bin b/data/quests/bb/ep1/single/q014-1p-bb.bin similarity index 100% rename from data/quests/q014-1p-bb.bin rename to data/quests/bb/ep1/single/q014-1p-bb.bin diff --git a/data/quests/q014-1p-bb.dat b/data/quests/bb/ep1/single/q014-1p-bb.dat similarity index 100% rename from data/quests/q014-1p-bb.dat rename to data/quests/bb/ep1/single/q014-1p-bb.dat diff --git a/data/quests/q015-1p-bb.bin b/data/quests/bb/ep1/single/q015-1p-bb.bin similarity index 100% rename from data/quests/q015-1p-bb.bin rename to data/quests/bb/ep1/single/q015-1p-bb.bin diff --git a/data/quests/q015-1p-bb.dat b/data/quests/bb/ep1/single/q015-1p-bb.dat similarity index 100% rename from data/quests/q015-1p-bb.dat rename to data/quests/bb/ep1/single/q015-1p-bb.dat diff --git a/data/quests/q016-1p-bb.bin b/data/quests/bb/ep1/single/q016-1p-bb.bin similarity index 100% rename from data/quests/q016-1p-bb.bin rename to data/quests/bb/ep1/single/q016-1p-bb.bin diff --git a/data/quests/q016-1p-bb.dat b/data/quests/bb/ep1/single/q016-1p-bb.dat similarity index 100% rename from data/quests/q016-1p-bb.dat rename to data/quests/bb/ep1/single/q016-1p-bb.dat diff --git a/data/quests/q017-1p-bb.bin b/data/quests/bb/ep1/single/q017-1p-bb.bin similarity index 100% rename from data/quests/q017-1p-bb.bin rename to data/quests/bb/ep1/single/q017-1p-bb.bin diff --git a/data/quests/q017-1p-bb.dat b/data/quests/bb/ep1/single/q017-1p-bb.dat similarity index 100% rename from data/quests/q017-1p-bb.dat rename to data/quests/bb/ep1/single/q017-1p-bb.dat diff --git a/data/quests/q018-1p-bb.bin b/data/quests/bb/ep1/single/q018-1p-bb.bin similarity index 100% rename from data/quests/q018-1p-bb.bin rename to data/quests/bb/ep1/single/q018-1p-bb.bin diff --git a/data/quests/q018-1p-bb.dat b/data/quests/bb/ep1/single/q018-1p-bb.dat similarity index 100% rename from data/quests/q018-1p-bb.dat rename to data/quests/bb/ep1/single/q018-1p-bb.dat diff --git a/data/quests/q019-1p-bb.bin b/data/quests/bb/ep1/single/q019-1p-bb.bin similarity index 100% rename from data/quests/q019-1p-bb.bin rename to data/quests/bb/ep1/single/q019-1p-bb.bin diff --git a/data/quests/q019-1p-bb.dat b/data/quests/bb/ep1/single/q019-1p-bb.dat similarity index 100% rename from data/quests/q019-1p-bb.dat rename to data/quests/bb/ep1/single/q019-1p-bb.dat diff --git a/data/quests/q020-1p-bb.bin b/data/quests/bb/ep1/single/q020-1p-bb.bin similarity index 100% rename from data/quests/q020-1p-bb.bin rename to data/quests/bb/ep1/single/q020-1p-bb.bin diff --git a/data/quests/q020-1p-bb.dat b/data/quests/bb/ep1/single/q020-1p-bb.dat similarity index 100% rename from data/quests/q020-1p-bb.dat rename to data/quests/bb/ep1/single/q020-1p-bb.dat diff --git a/data/quests/q021-1p-bb.bin b/data/quests/bb/ep1/single/q021-1p-bb.bin similarity index 100% rename from data/quests/q021-1p-bb.bin rename to data/quests/bb/ep1/single/q021-1p-bb.bin diff --git a/data/quests/q021-1p-bb.dat b/data/quests/bb/ep1/single/q021-1p-bb.dat similarity index 100% rename from data/quests/q021-1p-bb.dat rename to data/quests/bb/ep1/single/q021-1p-bb.dat diff --git a/data/quests/q022-1p-bb.bin b/data/quests/bb/ep1/single/q022-1p-bb.bin similarity index 100% rename from data/quests/q022-1p-bb.bin rename to data/quests/bb/ep1/single/q022-1p-bb.bin diff --git a/data/quests/q022-1p-bb.dat b/data/quests/bb/ep1/single/q022-1p-bb.dat similarity index 100% rename from data/quests/q022-1p-bb.dat rename to data/quests/bb/ep1/single/q022-1p-bb.dat diff --git a/data/quests/q023-1p-bb.bin b/data/quests/bb/ep1/single/q023-1p-bb.bin similarity index 100% rename from data/quests/q023-1p-bb.bin rename to data/quests/bb/ep1/single/q023-1p-bb.bin diff --git a/data/quests/q023-1p-bb.dat b/data/quests/bb/ep1/single/q023-1p-bb.dat similarity index 100% rename from data/quests/q023-1p-bb.dat rename to data/quests/bb/ep1/single/q023-1p-bb.dat diff --git a/data/quests/q024-1p-bb.bin b/data/quests/bb/ep1/single/q024-1p-bb.bin similarity index 100% rename from data/quests/q024-1p-bb.bin rename to data/quests/bb/ep1/single/q024-1p-bb.bin diff --git a/data/quests/q024-1p-bb.dat b/data/quests/bb/ep1/single/q024-1p-bb.dat similarity index 100% rename from data/quests/q024-1p-bb.dat rename to data/quests/bb/ep1/single/q024-1p-bb.dat diff --git a/data/quests/q025-1p-bb.bin b/data/quests/bb/ep1/single/q025-1p-bb.bin similarity index 100% rename from data/quests/q025-1p-bb.bin rename to data/quests/bb/ep1/single/q025-1p-bb.bin diff --git a/data/quests/q025-1p-bb.dat b/data/quests/bb/ep1/single/q025-1p-bb.dat similarity index 100% rename from data/quests/q025-1p-bb.dat rename to data/quests/bb/ep1/single/q025-1p-bb.dat diff --git a/data/quests/q026-1p-bb.bin b/data/quests/bb/ep1/single/q026-1p-bb.bin similarity index 100% rename from data/quests/q026-1p-bb.bin rename to data/quests/bb/ep1/single/q026-1p-bb.bin diff --git a/data/quests/q026-1p-bb.dat b/data/quests/bb/ep1/single/q026-1p-bb.dat similarity index 100% rename from data/quests/q026-1p-bb.dat rename to data/quests/bb/ep1/single/q026-1p-bb.dat diff --git a/data/quests/bb/ep1/single/quests.toml b/data/quests/bb/ep1/single/quests.toml new file mode 100644 index 0000000..3daa6a1 --- /dev/null +++ b/data/quests/bb/ep1/single/quests.toml @@ -0,0 +1,108 @@ +[Story] +list_order = 1 +description = "Story quests" + +[[Story.quests]] +bin = "q001-1p-bb.bin" +dat = "q001-1p-bb.dat" + +[[Story.quests]] +bin = "q002-1p-bb.bin" +dat = "q002-1p-bb.dat" + +[[Story.quests]] +bin = "q003-1p-bb.bin" +dat = "q003-1p-bb.dat" + +[[Story.quests]] +bin = "q004-1p-bb.bin" +dat = "q004-1p-bb.dat" + +[[Story.quests]] +bin = "q005-1p-bb.bin" +dat = "q005-1p-bb.dat" + +[[Story.quests]] +bin = "q006-1p-bb.bin" +dat = "q006-1p-bb.dat" + +[[Story.quests]] +bin = "q007-1p-bb.bin" +dat = "q007-1p-bb.dat" + +[[Story.quests]] +bin = "q008-1p-bb.bin" +dat = "q008-1p-bb.dat" + +[[Story.quests]] +bin = "q009-1p-bb.bin" +dat = "q009-1p-bb.dat" + +[[Story.quests]] +bin = "q010-1p-bb.bin" +dat = "q010-1p-bb.dat" + +[[Story.quests]] +bin = "q011-1p-bb.bin" +dat = "q011-1p-bb.dat" + +[[Story.quests]] +bin = "q012-1p-bb.bin" +dat = "q012-1p-bb.dat" + +[[Story.quests]] +bin = "q013-1p-bb.bin" +dat = "q013-1p-bb.dat" + +[[Story.quests]] +bin = "q014-1p-bb.bin" +dat = "q014-1p-bb.dat" + +[[Story.quests]] +bin = "q015-1p-bb.bin" +dat = "q015-1p-bb.dat" + +[[Story.quests]] +bin = "q016-1p-bb.bin" +dat = "q016-1p-bb.dat" + +[[Story.quests]] +bin = "q017-1p-bb.bin" +dat = "q017-1p-bb.dat" + +[[Story.quests]] +bin = "q018-1p-bb.bin" +dat = "q018-1p-bb.dat" + +[[Story.quests]] +bin = "q019-1p-bb.bin" +dat = "q019-1p-bb.dat" + +[[Story.quests]] +bin = "q020-1p-bb.bin" +dat = "q020-1p-bb.dat" + +[[Story.quests]] +bin = "q021-1p-bb.bin" +dat = "q021-1p-bb.dat" + +[[Story.quests]] +bin = "q022-1p-bb.bin" +dat = "q022-1p-bb.dat" + +[[Story.quests]] +bin = "q023-1p-bb.bin" +dat = "q023-1p-bb.dat" + +[[Story.quests]] +bin = "q024-1p-bb.bin" +dat = "q024-1p-bb.dat" + +[[Story.quests]] +bin = "q025-1p-bb.bin" +dat = "q025-1p-bb.dat" + +[[Story.quests]] +bin = "q026-1p-bb.bin" +dat = "q026-1p-bb.dat" + diff --git a/data/quests/bb/ep2/battle/b001-bb.bin b/data/quests/bb/ep2/battle/b001-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..4fd7b26a773e803856163965b963c20eb9154d1f GIT binary patch literal 1139 zcmY+DdrVt(6vuy;0@A|Z^4JCp<`rg!6XtkKmu600BIQw@#WE<+ae?wEv;{UngLOkC zW+Kl?%!1nt#1J-N14euxYGqJ5R>wdRknv`)iKXSXx8?T!Y~r@W zoR`ehZB?loWec*Xvx;)tzB$mh3Fh=*i5jiTy9joc-aiURn3MtHRcYlXdW*A4e&4lb zpGEZo-wGay*I-A^lPkjTJM@#XPh$9I?9eSRuWgv9LagGz4hdeTfvFE0p(+^cg-AM8 z)1>UAupa#x#+64co8=5bro?XuuQn5d;tLw}O77}zRot)$JkTExK?%p3+M*_92&zvx zO+rXPNWyxaTxV%dgZG>)@IMj%--ffBK%$&vV_>o-@#U2 zlt3X7i-1;ybpDHTL`=GfjzLOER`Br2%=*>?p^LoaJmX zXTZ%M%p`>-5S=v;VjJdoq2CuBG;*I%$%b*y4IJoaS<4B8V#_GgDnsG?`Hm=lMZuP5P?ox=+^m ztjc~9OU~sEX?`de_Z%M!ULN;fYeEpe&F_a*m+2T)@Phq6 zh!eeb=$>?b&*UJwdCWLyPwCqjl%17bL@Ltd=e0N*mPR#%^{AYErmJCexYTPF9Y2f{ zFldH85c<^ubR;46rX*N4Zq1XYG(Nxi{%7>{JAC))hfF>5 USoABQBUdLx)Ma;S*oFe&U&}#cq_s}?)H8*(HKq6Gw1Kwm&ya+ z0G~~L8&5SOx1fbamlt2sG zN6mw+AUt#hd_yPNb-uCFo$D=p`>V;$p7&QN_5F?p%T>As+m9f)>8hieRzz4o?ev^^ z9YFL+1vq%7u9YQG1^Zmt37Oh)PgS8{{0gaAuanFlEg_TKwI7jyb^{obXSHijMm0FO zP?0%n!BF{>>rr_O@Z*gvhepJNNj??a0TJsqD^-%2E$7Pj168tfg%J8P!nlH z+l^?)VksR(AU=VjuMsH5LB|?V|2u+UZ`=}_j)xKvs`glE9f6t!p>5t49E3eo`8PBK z{S|=*aHae{UVqkwE3{AH0l5V61lcvnr^p%=N>D_R_OYEQL1CiBKsgvfM~H{$h_?#^ zQv6t3U4Mf-q<+HCqixI|^@#PErv^$h;TN?6CV|ecd7mec7x!K^V7D(D{k_=;?eVg1heQW(uAC_SmS$%K{tFkb(D0*!I zW=+KBKEfyb52_|(CM_AV$>r70`NZTVXX7-Mv|_kEC7mOMQ?0T;{&WyoH~m6Fjnv44nk1P84Au!FZ8;^3MX9N+QbbG^${ z7-N~@X@UasT!10xZIlTM`Zdzl_1+~bGvV;5z+21y`{h`OzP6PUo>(gN%ZWT0b%+`s Kq@uG40R94>2P)VA literal 0 HcmV?d00001 diff --git a/data/quests/b002-gc.dat b/data/quests/bb/ep2/battle/b002-bb.dat similarity index 100% rename from data/quests/b002-gc.dat rename to data/quests/bb/ep2/battle/b002-bb.dat diff --git a/data/quests/bb/ep2/battle/b003-bb.bin b/data/quests/bb/ep2/battle/b003-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..aff67c7261175e383ba5187d3cfb7a5403411050 GIT binary patch literal 1110 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 Bvef_p literal 0 HcmV?d00001 diff --git a/data/quests/b005-dc.dat b/data/quests/bb/ep2/battle/b005-bb.dat similarity index 100% rename from data/quests/b005-dc.dat rename to data/quests/bb/ep2/battle/b005-bb.dat diff --git a/data/quests/bb/ep2/battle/b006-bb.bin b/data/quests/bb/ep2/battle/b006-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..3f05c2710066bc877dfa2807b0e8bb54ebe80934 GIT binary patch literal 882 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 bHtNUE9Q#^c|C2Z2S1Uw?j}%zrNg?z%*~t5- literal 0 HcmV?d00001 diff --git a/data/quests/b007-dc.dat b/data/quests/bb/ep2/battle/b007-bb.dat similarity index 100% rename from data/quests/b007-dc.dat rename to data/quests/bb/ep2/battle/b007-bb.dat diff --git a/data/quests/bb/ep2/battle/b008-bb.bin b/data/quests/bb/ep2/battle/b008-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..88b0f1c6827ab64c3deb3fdebf2e073029346ae7 GIT binary patch literal 1297 zcmZ{kZA?>F7{|}0<)x*-rR5zl zP7HuHTtrJ_>7xkISO^6CwahwD1j<~f26h+zOrFpUi?2E~Z=}Yk?aC2wsAtG0Nt5?Ko?*&59$>)qdbl=HR?+uW*= z5AQf9g_ZHsD&C9c_QJyKxgsKvXGF7Pz0=c(1S!rtHQ1eo3Z{{{=7UKbnU_XnQEy7i zBZ`(`V5T4S;Td;FGI==iSssWoU&%s>w_^)76A9dz{LQ!3ITiXqjMbdltBU$7=@`QNubSgP^Y@spzE2vP- zONeWj*=L8RA_JhDH{1aX>Mru&bou60*)=Vy_}1FF@;ZiSda)yRLCMcMCOq?Y=F2vK ztlQeAF-=?-pYg9Y1M*%f>yUdi8MW1ur-G`OQaRb&a^e+zgG^-HbIYj$!;rFIyBhkn z7kT4O;Ub=+5vPx0GfkQy^?9iv$zEUowphywHIaEQmAmqa1}Q%M!-g5_$s|{8w(WtP zy7(t1leOon0`57R^<{(alQX|Na+=JVuzgSaCxazBXQvaAY+5G#AkIqSgW0jE4gA*w zx9F0M&O}<@p_#66`SB|ZAdv?SL!mv_;L4u)H^&7%BfHP`hV>d&^gb57)*0lzaq#lj@XD*FwbZZV0tNVJ&zxbU_t5OdLMumoB#Tv1;*;O;WcFKomJ@)PR=!t2w)7)nfys3{-5 zni6|*V6B{dIB*V?gi}x%HE{ERO%QLAU29d_ecgde?8TvS0sT`sdlvg5~D+Fhj&B@`flf4r|v202-I30Xk{DHigCu zx;j(z2;+J!?WoI1_VcA_r~WhR&p*z8+mQ1&OAfubr)_0(+jfspQ>gs-1TVDXzUQt{ nHgt#AXy1n=G5GQCzZ+vJr@PXuh5BK7xDtU)Zz^MG41j+Cj)t{^ literal 0 HcmV?d00001 diff --git a/data/quests/b008-dc.dat b/data/quests/bb/ep2/battle/b008-bb.dat similarity index 100% rename from data/quests/b008-dc.dat rename to data/quests/bb/ep2/battle/b008-bb.dat diff --git a/data/quests/bb/ep2/battle/quests.toml b/data/quests/bb/ep2/battle/quests.toml new file mode 100644 index 0000000..f62a1a3 --- /dev/null +++ b/data/quests/bb/ep2/battle/quests.toml @@ -0,0 +1,36 @@ +[Battle] +list_order = 1 +description = "Challenge your skill against other hunters!" + +[[Battle.quests]] +bin = "b001-bb.bin" +dat = "b001-bb.dat" + +[[Battle.quests]] +bin = "b002-bb.bin" +dat = "b002-bb.dat" + +[[Battle.quests]] +bin = "b003-bb.bin" +dat = "b003-bb.dat" + +[[Battle.quests]] +bin = "b004-bb.bin" +dat = "b004-bb.dat" + +[[Battle.quests]] +bin = "b005-bb.bin" +dat = "b005-bb.dat" + +[[Battle.quests]] +bin = "b006-bb.bin" +dat = "b006-bb.dat" + +[[Battle.quests]] +bin = "b007-bb.bin" +dat = "b007-bb.dat" + +[[Battle.quests]] +bin = "b008-bb.bin" +dat = "b008-bb.dat" + diff --git a/data/quests/c201-bb.bin b/data/quests/bb/ep2/challenge/c201-bb.bin similarity index 100% rename from data/quests/c201-bb.bin rename to data/quests/bb/ep2/challenge/c201-bb.bin diff --git a/data/quests/c201-bb.dat b/data/quests/bb/ep2/challenge/c201-bb.dat similarity index 100% rename from data/quests/c201-bb.dat rename to data/quests/bb/ep2/challenge/c201-bb.dat diff --git a/data/quests/c202-bb.bin b/data/quests/bb/ep2/challenge/c202-bb.bin similarity index 100% rename from data/quests/c202-bb.bin rename to data/quests/bb/ep2/challenge/c202-bb.bin diff --git a/data/quests/c202-bb.dat b/data/quests/bb/ep2/challenge/c202-bb.dat similarity index 100% rename from data/quests/c202-bb.dat rename to data/quests/bb/ep2/challenge/c202-bb.dat diff --git a/data/quests/c203-bb.bin b/data/quests/bb/ep2/challenge/c203-bb.bin similarity index 100% rename from data/quests/c203-bb.bin rename to data/quests/bb/ep2/challenge/c203-bb.bin diff --git a/data/quests/c203-bb.dat b/data/quests/bb/ep2/challenge/c203-bb.dat similarity index 100% rename from data/quests/c203-bb.dat rename to data/quests/bb/ep2/challenge/c203-bb.dat diff --git a/data/quests/c204-bb.bin b/data/quests/bb/ep2/challenge/c204-bb.bin similarity index 100% rename from data/quests/c204-bb.bin rename to data/quests/bb/ep2/challenge/c204-bb.bin diff --git a/data/quests/c204-bb.dat b/data/quests/bb/ep2/challenge/c204-bb.dat similarity index 100% rename from data/quests/c204-bb.dat rename to data/quests/bb/ep2/challenge/c204-bb.dat diff --git a/data/quests/c205-bb.bin b/data/quests/bb/ep2/challenge/c205-bb.bin similarity index 100% rename from data/quests/c205-bb.bin rename to data/quests/bb/ep2/challenge/c205-bb.bin diff --git a/data/quests/c205-bb.dat b/data/quests/bb/ep2/challenge/c205-bb.dat similarity index 100% rename from data/quests/c205-bb.dat rename to data/quests/bb/ep2/challenge/c205-bb.dat diff --git a/data/quests/bb/ep2/challenge/quests.toml b/data/quests/bb/ep2/challenge/quests.toml new file mode 100644 index 0000000..2ef9cef --- /dev/null +++ b/data/quests/bb/ep2/challenge/quests.toml @@ -0,0 +1,24 @@ +[Challenge] +list_order = 1 +description = "Pioneer 2's advanced training course." + +[[Challenge.quests]] +bin = "c201-bb.bin" +dat = "c201-bb.dat" + +[[Challenge.quests]] +bin = "c202-bb.bin" +dat = "c202-bb.dat" + +[[Challenge.quests]] +bin = "c203-bb.bin" +dat = "c203-bb.dat" + +[[Challenge.quests]] +bin = "c204-bb.bin" +dat = "c204-bb.dat" + +[[Challenge.quests]] +bin = "c205-bb.bin" +dat = "c205-bb.dat" + diff --git a/data/quests/q451-gov-bb.bin b/data/quests/bb/ep2/government/q451-gov-bb.bin similarity index 100% rename from data/quests/q451-gov-bb.bin rename to data/quests/bb/ep2/government/q451-gov-bb.bin diff --git a/data/quests/q451-gov-bb.dat b/data/quests/bb/ep2/government/q451-gov-bb.dat similarity index 100% rename from data/quests/q451-gov-bb.dat rename to data/quests/bb/ep2/government/q451-gov-bb.dat diff --git a/data/quests/q452-gov-bb.bin b/data/quests/bb/ep2/government/q452-gov-bb.bin similarity index 100% rename from data/quests/q452-gov-bb.bin rename to data/quests/bb/ep2/government/q452-gov-bb.bin diff --git a/data/quests/q452-gov-bb.dat b/data/quests/bb/ep2/government/q452-gov-bb.dat similarity index 100% rename from data/quests/q452-gov-bb.dat rename to data/quests/bb/ep2/government/q452-gov-bb.dat diff --git a/data/quests/q453-gov-bb.bin b/data/quests/bb/ep2/government/q453-gov-bb.bin similarity index 100% rename from data/quests/q453-gov-bb.bin rename to data/quests/bb/ep2/government/q453-gov-bb.bin diff --git a/data/quests/q453-gov-bb.dat b/data/quests/bb/ep2/government/q453-gov-bb.dat similarity index 100% rename from data/quests/q453-gov-bb.dat rename to data/quests/bb/ep2/government/q453-gov-bb.dat diff --git a/data/quests/q454-gov-bb.bin b/data/quests/bb/ep2/government/q454-gov-bb.bin similarity index 100% rename from data/quests/q454-gov-bb.bin rename to data/quests/bb/ep2/government/q454-gov-bb.bin diff --git a/data/quests/q454-gov-bb.dat b/data/quests/bb/ep2/government/q454-gov-bb.dat similarity index 100% rename from data/quests/q454-gov-bb.dat rename to data/quests/bb/ep2/government/q454-gov-bb.dat diff --git a/data/quests/q455-gov-bb.bin b/data/quests/bb/ep2/government/q455-gov-bb.bin similarity index 100% rename from data/quests/q455-gov-bb.bin rename to data/quests/bb/ep2/government/q455-gov-bb.bin diff --git a/data/quests/q455-gov-bb.dat b/data/quests/bb/ep2/government/q455-gov-bb.dat similarity index 100% rename from data/quests/q455-gov-bb.dat rename to data/quests/bb/ep2/government/q455-gov-bb.dat diff --git a/data/quests/q456-gov-bb.bin b/data/quests/bb/ep2/government/q456-gov-bb.bin similarity index 100% rename from data/quests/q456-gov-bb.bin rename to data/quests/bb/ep2/government/q456-gov-bb.bin diff --git a/data/quests/q456-gov-bb.dat b/data/quests/bb/ep2/government/q456-gov-bb.dat similarity index 100% rename from data/quests/q456-gov-bb.dat rename to data/quests/bb/ep2/government/q456-gov-bb.dat diff --git a/data/quests/q457-gov-bb.bin b/data/quests/bb/ep2/government/q457-gov-bb.bin similarity index 100% rename from data/quests/q457-gov-bb.bin rename to data/quests/bb/ep2/government/q457-gov-bb.bin diff --git a/data/quests/q457-gov-bb.dat b/data/quests/bb/ep2/government/q457-gov-bb.dat similarity index 100% rename from data/quests/q457-gov-bb.dat rename to data/quests/bb/ep2/government/q457-gov-bb.dat diff --git a/data/quests/q458-gov-bb.bin b/data/quests/bb/ep2/government/q458-gov-bb.bin similarity index 100% rename from data/quests/q458-gov-bb.bin rename to data/quests/bb/ep2/government/q458-gov-bb.bin diff --git a/data/quests/q458-gov-bb.dat b/data/quests/bb/ep2/government/q458-gov-bb.dat similarity index 100% rename from data/quests/q458-gov-bb.dat rename to data/quests/bb/ep2/government/q458-gov-bb.dat diff --git a/data/quests/q459-gov-bb.bin b/data/quests/bb/ep2/government/q459-gov-bb.bin similarity index 100% rename from data/quests/q459-gov-bb.bin rename to data/quests/bb/ep2/government/q459-gov-bb.bin diff --git a/data/quests/q459-gov-bb.dat b/data/quests/bb/ep2/government/q459-gov-bb.dat similarity index 100% rename from data/quests/q459-gov-bb.dat rename to data/quests/bb/ep2/government/q459-gov-bb.dat diff --git a/data/quests/q460-gov-bb.bin b/data/quests/bb/ep2/government/q460-gov-bb.bin similarity index 100% rename from data/quests/q460-gov-bb.bin rename to data/quests/bb/ep2/government/q460-gov-bb.bin diff --git a/data/quests/q460-gov-bb.dat b/data/quests/bb/ep2/government/q460-gov-bb.dat similarity index 100% rename from data/quests/q460-gov-bb.dat rename to data/quests/bb/ep2/government/q460-gov-bb.dat diff --git a/data/quests/q461-gov-bb.bin b/data/quests/bb/ep2/government/q461-gov-bb.bin similarity index 100% rename from data/quests/q461-gov-bb.bin rename to data/quests/bb/ep2/government/q461-gov-bb.bin diff --git a/data/quests/q461-gov-bb.dat b/data/quests/bb/ep2/government/q461-gov-bb.dat similarity index 100% rename from data/quests/q461-gov-bb.dat rename to data/quests/bb/ep2/government/q461-gov-bb.dat diff --git a/data/quests/q462-gov-bb.bin b/data/quests/bb/ep2/government/q462-gov-bb.bin similarity index 100% rename from data/quests/q462-gov-bb.bin rename to data/quests/bb/ep2/government/q462-gov-bb.bin diff --git a/data/quests/q462-gov-bb.dat b/data/quests/bb/ep2/government/q462-gov-bb.dat similarity index 100% rename from data/quests/q462-gov-bb.dat rename to data/quests/bb/ep2/government/q462-gov-bb.dat diff --git a/data/quests/q463-gov-bb.bin b/data/quests/bb/ep2/government/q463-gov-bb.bin similarity index 100% rename from data/quests/q463-gov-bb.bin rename to data/quests/bb/ep2/government/q463-gov-bb.bin diff --git a/data/quests/q463-gov-bb.dat b/data/quests/bb/ep2/government/q463-gov-bb.dat similarity index 100% rename from data/quests/q463-gov-bb.dat rename to data/quests/bb/ep2/government/q463-gov-bb.dat diff --git a/data/quests/q464-gov-bb.bin b/data/quests/bb/ep2/government/q464-gov-bb.bin similarity index 100% rename from data/quests/q464-gov-bb.bin rename to data/quests/bb/ep2/government/q464-gov-bb.bin diff --git a/data/quests/q464-gov-bb.dat b/data/quests/bb/ep2/government/q464-gov-bb.dat similarity index 100% rename from data/quests/q464-gov-bb.dat rename to data/quests/bb/ep2/government/q464-gov-bb.dat diff --git a/data/quests/q465-gov-bb.bin b/data/quests/bb/ep2/government/q465-gov-bb.bin similarity index 100% rename from data/quests/q465-gov-bb.bin rename to data/quests/bb/ep2/government/q465-gov-bb.bin diff --git a/data/quests/q465-gov-bb.dat b/data/quests/bb/ep2/government/q465-gov-bb.dat similarity index 100% rename from data/quests/q465-gov-bb.dat rename to data/quests/bb/ep2/government/q465-gov-bb.dat diff --git a/data/quests/q466-gov-bb.bin b/data/quests/bb/ep2/government/q466-gov-bb.bin similarity index 100% rename from data/quests/q466-gov-bb.bin rename to data/quests/bb/ep2/government/q466-gov-bb.bin diff --git a/data/quests/q466-gov-bb.dat b/data/quests/bb/ep2/government/q466-gov-bb.dat similarity index 100% rename from data/quests/q466-gov-bb.dat rename to data/quests/bb/ep2/government/q466-gov-bb.dat diff --git a/data/quests/q467-gov-bb.bin b/data/quests/bb/ep2/government/q467-gov-bb.bin similarity index 100% rename from data/quests/q467-gov-bb.bin rename to data/quests/bb/ep2/government/q467-gov-bb.bin diff --git a/data/quests/q467-gov-bb.dat b/data/quests/bb/ep2/government/q467-gov-bb.dat similarity index 100% rename from data/quests/q467-gov-bb.dat rename to data/quests/bb/ep2/government/q467-gov-bb.dat diff --git a/data/quests/q468-gov-bb.bin b/data/quests/bb/ep2/government/q468-gov-bb.bin similarity index 100% rename from data/quests/q468-gov-bb.bin rename to data/quests/bb/ep2/government/q468-gov-bb.bin diff --git a/data/quests/q468-gov-bb.dat b/data/quests/bb/ep2/government/q468-gov-bb.dat similarity index 100% rename from data/quests/q468-gov-bb.dat rename to data/quests/bb/ep2/government/q468-gov-bb.dat diff --git a/data/quests/bb/ep2/government/quests.toml b/data/quests/bb/ep2/government/quests.toml new file mode 100644 index 0000000..1ec3b06 --- /dev/null +++ b/data/quests/bb/ep2/government/quests.toml @@ -0,0 +1,76 @@ +[Government] +list_order = 1 +description = "What lies below on Ragol?" + +[[Government.quests]] +bin = "q451-gov-bb.bin" +dat = "q451-gov-bb.dat" + +[[Government.quests]] +bin = "q452-gov-bb.bin" +dat = "q452-gov-bb.dat" + +[[Government.quests]] +bin = "q453-gov-bb.bin" +dat = "q453-gov-bb.dat" + +[[Government.quests]] +bin = "q454-gov-bb.bin" +dat = "q454-gov-bb.dat" + +[[Government.quests]] +bin = "q455-gov-bb.bin" +dat = "q455-gov-bb.dat" + +[[Government.quests]] +bin = "q456-gov-bb.bin" +dat = "q456-gov-bb.dat" + +[[Government.quests]] +bin = "q457-gov-bb.bin" +dat = "q457-gov-bb.dat" + +[[Government.quests]] +bin = "q458-gov-bb.bin" +dat = "q458-gov-bb.dat" + +[[Government.quests]] +bin = "q459-gov-bb.bin" +dat = "q459-gov-bb.dat" + +[[Government.quests]] +bin = "q460-gov-bb.bin" +dat = "q460-gov-bb.dat" + +[[Government.quests]] +bin = "q461-gov-bb.bin" +dat = "q461-gov-bb.dat" + +[[Government.quests]] +bin = "q462-gov-bb.bin" +dat = "q462-gov-bb.dat" + +[[Government.quests]] +bin = "q463-gov-bb.bin" +dat = "q463-gov-bb.dat" + +[[Government.quests]] +bin = "q464-gov-bb.bin" +dat = "q464-gov-bb.dat" + +[[Government.quests]] +bin = "q465-gov-bb.bin" +dat = "q465-gov-bb.dat" + +[[Government.quests]] +bin = "q466-gov-bb.bin" +dat = "q466-gov-bb.dat" + +[[Government.quests]] +bin = "q467-gov-bb.bin" +dat = "q467-gov-bb.dat" + +[[Government.quests]] +bin = "q468-gov-bb.bin" +dat = "q468-gov-bb.dat" + diff --git a/data/quests/q201-evt-bb.bin b/data/quests/bb/ep2/multi/q201-evt-bb.bin similarity index 100% rename from data/quests/q201-evt-bb.bin rename to data/quests/bb/ep2/multi/q201-evt-bb.bin diff --git a/data/quests/q201-evt-bb.dat b/data/quests/bb/ep2/multi/q201-evt-bb.dat similarity index 100% rename from data/quests/q201-evt-bb.dat rename to data/quests/bb/ep2/multi/q201-evt-bb.dat diff --git a/data/quests/q203-vr-bb.bin b/data/quests/bb/ep2/multi/q203-vr-bb.bin similarity index 100% rename from data/quests/q203-vr-bb.bin rename to data/quests/bb/ep2/multi/q203-vr-bb.bin diff --git a/data/quests/q203-vr-bb.dat b/data/quests/bb/ep2/multi/q203-vr-bb.dat similarity index 100% rename from data/quests/q203-vr-bb.dat rename to data/quests/bb/ep2/multi/q203-vr-bb.dat diff --git a/data/quests/q219-shp-bb.bin b/data/quests/bb/ep2/multi/q219-shp-bb.bin similarity index 100% rename from data/quests/q219-shp-bb.bin rename to data/quests/bb/ep2/multi/q219-shp-bb.bin diff --git a/data/quests/q219-shp-bb.dat b/data/quests/bb/ep2/multi/q219-shp-bb.dat similarity index 100% rename from data/quests/q219-shp-bb.dat rename to data/quests/bb/ep2/multi/q219-shp-bb.dat diff --git a/data/quests/q223-twr-bb.bin b/data/quests/bb/ep2/multi/q223-twr-bb.bin similarity index 100% rename from data/quests/q223-twr-bb.bin rename to data/quests/bb/ep2/multi/q223-twr-bb.bin diff --git a/data/quests/q223-twr-bb.dat b/data/quests/bb/ep2/multi/q223-twr-bb.dat similarity index 100% rename from data/quests/q223-twr-bb.dat rename to data/quests/bb/ep2/multi/q223-twr-bb.dat diff --git a/data/quests/q224-twr-bb.bin b/data/quests/bb/ep2/multi/q224-twr-bb.bin similarity index 100% rename from data/quests/q224-twr-bb.bin rename to data/quests/bb/ep2/multi/q224-twr-bb.bin diff --git a/data/quests/q224-twr-bb.dat b/data/quests/bb/ep2/multi/q224-twr-bb.dat similarity index 100% rename from data/quests/q224-twr-bb.dat rename to data/quests/bb/ep2/multi/q224-twr-bb.dat diff --git a/data/quests/q233-ext-bb.bin b/data/quests/bb/ep2/multi/q233-ext-bb.bin similarity index 100% rename from data/quests/q233-ext-bb.bin rename to data/quests/bb/ep2/multi/q233-ext-bb.bin diff --git a/data/quests/q233-ext-bb.dat b/data/quests/bb/ep2/multi/q233-ext-bb.dat similarity index 100% rename from data/quests/q233-ext-bb.dat rename to data/quests/bb/ep2/multi/q233-ext-bb.dat diff --git a/data/quests/q234-ext-bb.bin b/data/quests/bb/ep2/multi/q234-ext-bb.bin similarity index 100% rename from data/quests/q234-ext-bb.bin rename to data/quests/bb/ep2/multi/q234-ext-bb.bin diff --git a/data/quests/q234-ext-bb.dat b/data/quests/bb/ep2/multi/q234-ext-bb.dat similarity index 100% rename from data/quests/q234-ext-bb.dat rename to data/quests/bb/ep2/multi/q234-ext-bb.dat diff --git a/data/quests/q235-ext-bb.bin b/data/quests/bb/ep2/multi/q235-ext-bb.bin similarity index 100% rename from data/quests/q235-ext-bb.bin rename to data/quests/bb/ep2/multi/q235-ext-bb.bin diff --git a/data/quests/q235-ext-bb.dat b/data/quests/bb/ep2/multi/q235-ext-bb.dat similarity index 100% rename from data/quests/q235-ext-bb.dat rename to data/quests/bb/ep2/multi/q235-ext-bb.dat diff --git a/data/quests/q236-ext-bb.bin b/data/quests/bb/ep2/multi/q236-ext-bb.bin similarity index 100% rename from data/quests/q236-ext-bb.bin rename to data/quests/bb/ep2/multi/q236-ext-bb.bin diff --git a/data/quests/q236-ext-bb.dat b/data/quests/bb/ep2/multi/q236-ext-bb.dat similarity index 100% rename from data/quests/q236-ext-bb.dat rename to data/quests/bb/ep2/multi/q236-ext-bb.dat diff --git a/data/quests/bb/ep2/multi/quests.toml b/data/quests/bb/ep2/multi/quests.toml new file mode 100644 index 0000000..10d58ab --- /dev/null +++ b/data/quests/bb/ep2/multi/quests.toml @@ -0,0 +1,60 @@ +[Extermination] +list_order = 1 +description = "Exterminate the enemies!" + +[[Extermination.quests]] +bin = "q233-ext-bb.bin" +dat = "q233-ext-bb.dat" + +[[Extermination.quests]] +bin = "q234-ext-bb.bin" +dat = "q234-ext-bb.dat" + +[[Extermination.quests]] +bin = "q235-ext-bb.bin" +dat = "q235-ext-bb.dat" + +[[Extermination.quests]] +bin = "q236-ext-bb.bin" +dat = "q236-ext-bb.dat" + + +[VR] +list_order = 2 +description = "VR training missions" + +[[VR.quests]] +bin = "q203-vr-bb.bin" +dat = "q203-vr-bb.dat" + + +[Event] +list_order = 3 +description = "Event missions!" + +[[Event.quests]] +bin = "q201-evt-bb.bin" +dat = "q201-evt-bb.dat" + + +[Shop] +list_order = 4 +description = "Time to do some shopping!" + +[[Shop.quests]] +bin = "q219-shp-bb.bin" +dat = "q219-shp-bb.dat" + + +[Tower] +list_order = 5 +description = "Investigate Gal Da Val's towers." + +[[Tower.quests]] +bin = "q223-twr-bb.bin" +dat = "q223-twr-bb.dat" + +[[Tower.quests]] +bin = "q224-twr-bb.bin" +dat = "q224-twr-bb.dat" + diff --git a/data/quests/q027-1p-bb.bin b/data/quests/bb/ep2/single/q027-1p-bb.bin similarity index 100% rename from data/quests/q027-1p-bb.bin rename to data/quests/bb/ep2/single/q027-1p-bb.bin diff --git a/data/quests/q027-1p-bb.dat b/data/quests/bb/ep2/single/q027-1p-bb.dat similarity index 100% rename from data/quests/q027-1p-bb.dat rename to data/quests/bb/ep2/single/q027-1p-bb.dat diff --git a/data/quests/bb/ep2/single/quests.toml b/data/quests/bb/ep2/single/quests.toml new file mode 100644 index 0000000..c83e694 --- /dev/null +++ b/data/quests/bb/ep2/single/quests.toml @@ -0,0 +1,8 @@ +[Story] +list_order = 1 +description = "Story quests" + +[[Story.quests]] +bin = "q027-1p-bb.bin" +dat = "q027-1p-bb.dat" + diff --git a/data/quests/bb/ep4/battle/b001-bb.bin b/data/quests/bb/ep4/battle/b001-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..4fd7b26a773e803856163965b963c20eb9154d1f GIT binary patch literal 1139 zcmY+DdrVt(6vuy;0@A|Z^4JCp<`rg!6XtkKmu600BIQw@#WE<+ae?wEv;{UngLOkC zW+Kl?%!1nt#1J-N14euxYGqJ5R>wdRknv`)iKXSXx8?T!Y~r@W zoR`ehZB?loWec*Xvx;)tzB$mh3Fh=*i5jiTy9joc-aiURn3MtHRcYlXdW*A4e&4lb zpGEZo-wGay*I-A^lPkjTJM@#XPh$9I?9eSRuWgv9LagGz4hdeTfvFE0p(+^cg-AM8 z)1>UAupa#x#+64co8=5bro?XuuQn5d;tLw}O77}zRot)$JkTExK?%p3+M*_92&zvx zO+rXPNWyxaTxV%dgZG>)@IMj%--ffBK%$&vV_>o-@#U2 zlt3X7i-1;ybpDHTL`=GfjzLOER`Br2%=*>?p^LoaJmX zXTZ%M%p`>-5S=v;VjJdoq2CuBG;*I%$%b*y4IJoaS<4B8V#_GgDnsG?`Hm=lMZuP5P?ox=+^m ztjc~9OU~sEX?`de_Z%M!ULN;fYeEpe&F_a*m+2T)@Phq6 zh!eeb=$>?b&*UJwdCWLyPwCqjl%17bL@Ltd=e0N*mPR#%^{AYErmJCexYTPF9Y2f{ zFldH85c<^ubR;46rX*N4Zq1XYG(Nxi{%7>{JAC))hfF>5 USoABQBUdLx)Ma;S*oFe&U&}#cq_s}?)H8*(HKq6Gw1Kwm&ya+ z0G~~L8&5SOx1fbamlt2sG zN6mw+AUt#hd_yPNb-uCFo$D=p`>V;$p7&QN_5F?p%T>As+m9f)>8hieRzz4o?ev^^ z9YFL+1vq%7u9YQG1^Zmt37Oh)PgS8{{0gaAuanFlEg_TKwI7jyb^{obXSHijMm0FO zP?0%n!BF{>>rr_O@Z*gvhepJNNj??a0TJsqD^-%2E$7Pj168tfg%J8P!nlH z+l^?)VksR(AU=VjuMsH5LB|?V|2u+UZ`=}_j)xKvs`glE9f6t!p>5t49E3eo`8PBK z{S|=*aHae{UVqkwE3{AH0l5V61lcvnr^p%=N>D_R_OYEQL1CiBKsgvfM~H{$h_?#^ zQv6t3U4Mf-q<+HCqixI|^@#PErv^$h;TN?6CV|ecd7mec7x!K^V7D(D{k_=;?eVg1heQW(uAC_SmS$%K{tFkb(D0*!I zW=+KBKEfyb52_|(CM_AV$>r70`NZTVXX7-Mv|_kEC7mOMQ?0T;{&WyoH~m6Fjnv44nk1P84Au!FZ8;^3MX9N+QbbG^${ z7-N~@X@UasT!10xZIlTM`Zdzl_1+~bGvV;5z+21y`{h`OzP6PUo>(gN%ZWT0b%+`s Kq@uG40R94>2P)VA literal 0 HcmV?d00001 diff --git a/data/quests/bb/ep4/battle/b002-bb.dat b/data/quests/bb/ep4/battle/b002-bb.dat new file mode 100755 index 0000000000000000000000000000000000000000..8e9a7dc57eaa7138268b2feacc8f48046b4005f1 GIT binary patch literal 1910 zcmX98Mr^A-*RfZ@#lk5Qp#1PeZ&zXQ3ULhMh+Emi{23az@rF3$ap zi)BQa{vdv#_R1FuyoW~AV#Khu*nhlSlteI#3g$3gCEN|~#P4{(s3C!bRcJm=5as)G zab3ym;gW0*q~+*+E9Q*pr#9EG9ug#sD9<`;;Nc-Qyz7BaXe{zMyOhAPmGc>k^-jFk z17}qK4I2`yXja9XJ;g%!T6hT8s(PA+y!><>+%$OV&%$j3Zb zy+t#$N#<-Lfz+%&J9uctrA}=af!M7Cl8}QyTpK=?O>=4k=V*>Mt;P-OwS^hO*Zmbi zR>MQMKmF4S(dxYd=Z!KQ;lb&0ZlECPBBG>6-9TrItvs5S;p)LZX!Agirv^A4c7`H` zNgI=x07<*MoKQCr$ondVSMzioYK}FQ-}jt@E9x$rxH}&csh!2JnwOP*^}RU7RR#QU_r;m)PYGLO zbQM_nc^#g@o5y(wMdcN%CL@Ruao8R;R z70+5WAb;>M%QY<-*D;NCQh)!(J(l#xJMu0?0i)CDR}EY^*kp!7-srh4l8dpN^AjSPA>Eb-8Co1IE_ zg>3rcJ)C*KXUpbBqAvvy+qMGX#$ULc5Ae3nsYz^ggF#{!m5yM&Q+lDE3&u)qBh&Zr z_5$BIx|Z+kK`MfjDw#3Ya;Xq&*?=sco!g?EU&#hyVo`1#zJ_(B;p5Ur$gKGbf%Pnw zG&yxUD*Vy4fr0}1VHqBlH0j==^5B9S6m6{8ubTfU*T2T9EKS6#*rNx0Kclg|wh2<9 z!bwbh@w(HxpRXtV-K>LZN|`)VzwY!#-A{4WUKIOg~YyxSI#bV6Ilu7i@m}i3`&P)x*EabHjv_9+ODDY>EfmgD+?!QMRc} z-WDEyfojv3S!U_RRa8Rii^Im+VXFQXGY{3~kGixG^kozpy-($E1iSF*CpOg=q(V#m zqQrcE(faZ3UT^lL8FpG;tGt$+YrqSQ>a%XpTV&&pM+vMkzlSpauE=%+F~~JkG4Co5 z#TVGi=c~=lZYc0crA2y>6?5fJ>5F-oyNp$|{(j%SPiO=5k-fY~ef4Qdo!q<9W;Q>T zajiT^C)_==%H)q%&=jU{ln3>lBMgbbF|`TxS*`_$*;gAYgzhWQZ9&52>lNW2S_&n literal 0 HcmV?d00001 diff --git a/data/quests/bb/ep4/battle/b003-bb.bin b/data/quests/bb/ep4/battle/b003-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..aff67c7261175e383ba5187d3cfb7a5403411050 GIT binary patch literal 1110 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 Bvef_p literal 0 HcmV?d00001 diff --git a/data/quests/b005-gc.dat b/data/quests/bb/ep4/battle/b005-bb.dat similarity index 100% rename from data/quests/b005-gc.dat rename to data/quests/bb/ep4/battle/b005-bb.dat diff --git a/data/quests/bb/ep4/battle/b006-bb.bin b/data/quests/bb/ep4/battle/b006-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..3f05c2710066bc877dfa2807b0e8bb54ebe80934 GIT binary patch literal 882 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 bHtNUE9Q#^c|C2Z2S1Uw?j}%zrNg?z%*~t5- literal 0 HcmV?d00001 diff --git a/data/quests/b007-gc.dat b/data/quests/bb/ep4/battle/b007-bb.dat similarity index 100% rename from data/quests/b007-gc.dat rename to data/quests/bb/ep4/battle/b007-bb.dat diff --git a/data/quests/bb/ep4/battle/b008-bb.bin b/data/quests/bb/ep4/battle/b008-bb.bin new file mode 100755 index 0000000000000000000000000000000000000000..88b0f1c6827ab64c3deb3fdebf2e073029346ae7 GIT binary patch literal 1297 zcmZ{kZA?>F7{|}0<)x*-rR5zl zP7HuHTtrJ_>7xkISO^6CwahwD1j<~f26h+zOrFpUi?2E~Z=}Yk?aC2wsAtG0Nt5?Ko?*&59$>)qdbl=HR?+uW*= z5AQf9g_ZHsD&C9c_QJyKxgsKvXGF7Pz0=c(1S!rtHQ1eo3Z{{{=7UKbnU_XnQEy7i zBZ`(`V5T4S;Td;FGI==iSssWoU&%s>w_^)76A9dz{LQ!3ITiXqjMbdltBU$7=@`QNubSgP^Y@spzE2vP- zONeWj*=L8RA_JhDH{1aX>Mru&bou60*)=Vy_}1FF@;ZiSda)yRLCMcMCOq?Y=F2vK ztlQeAF-=?-pYg9Y1M*%f>yUdi8MW1ur-G`OQaRb&a^e+zgG^-HbIYj$!;rFIyBhkn z7kT4O;Ub=+5vPx0GfkQy^?9iv$zEUowphywHIaEQmAmqa1}Q%M!-g5_$s|{8w(WtP zy7(t1leOon0`57R^<{(alQX|Na+=JVuzgSaCxazBXQvaAY+5G#AkIqSgW0jE4gA*w zx9F0M&O}<@p_#66`SB|ZAdv?SL!mv_;L4u)H^&7%BfHP`hV>d&^gb57)*0lzaq#lj@XD*FwbZZV0tNVJ&zxbU_t5OdLMumoB#Tv1;*;O;WcFKomJ@)PR=!t2w)7)nfys3{-5 zni6|*V6B{dIB*V?gi}x%HE{ERO%QLAU29d_ecgde?8TvS0sT`sdlvg5~D+Fhj&B@`flf4r|v202-I30Xk{DHigCu zx;j(z2;+J!?WoI1_VcA_r~WhR&p*z8+mQ1&OAfubr)_0(+jfspQ>gs-1TVDXzUQt{ nHgt#AXy1n=G5GQCzZ+vJr@PXuh5BK7xDtU)Zz^MG41j+Cj)t{^ literal 0 HcmV?d00001 diff --git a/data/quests/b008-gc.dat b/data/quests/bb/ep4/battle/b008-bb.dat similarity index 100% rename from data/quests/b008-gc.dat rename to data/quests/bb/ep4/battle/b008-bb.dat diff --git a/data/quests/bb/ep4/battle/quests.toml b/data/quests/bb/ep4/battle/quests.toml new file mode 100644 index 0000000..f62a1a3 --- /dev/null +++ b/data/quests/bb/ep4/battle/quests.toml @@ -0,0 +1,36 @@ +[Battle] +list_order = 1 +description = "Challenge your skill against other hunters!" + +[[Battle.quests]] +bin = "b001-bb.bin" +dat = "b001-bb.dat" + +[[Battle.quests]] +bin = "b002-bb.bin" +dat = "b002-bb.dat" + +[[Battle.quests]] +bin = "b003-bb.bin" +dat = "b003-bb.dat" + +[[Battle.quests]] +bin = "b004-bb.bin" +dat = "b004-bb.dat" + +[[Battle.quests]] +bin = "b005-bb.bin" +dat = "b005-bb.dat" + +[[Battle.quests]] +bin = "b006-bb.bin" +dat = "b006-bb.dat" + +[[Battle.quests]] +bin = "b007-bb.bin" +dat = "b007-bb.dat" + +[[Battle.quests]] +bin = "b008-bb.bin" +dat = "b008-bb.dat" + diff --git a/data/quests/bb/ep4/challenge/quests.toml b/data/quests/bb/ep4/challenge/quests.toml new file mode 100644 index 0000000..d88fea3 --- /dev/null +++ b/data/quests/bb/ep4/challenge/quests.toml @@ -0,0 +1,5 @@ +[Challenge] +list_order = 1 +description = "Pioneer 2's advanced training course." + +# TODO: ep4 challenge mode quests diff --git a/data/quests/q701-gov-bb.bin b/data/quests/bb/ep4/government/q701-gov-bb.bin similarity index 100% rename from data/quests/q701-gov-bb.bin rename to data/quests/bb/ep4/government/q701-gov-bb.bin diff --git a/data/quests/q701-gov-bb.dat b/data/quests/bb/ep4/government/q701-gov-bb.dat similarity index 100% rename from data/quests/q701-gov-bb.dat rename to data/quests/bb/ep4/government/q701-gov-bb.dat diff --git a/data/quests/q702-gov-bb.bin b/data/quests/bb/ep4/government/q702-gov-bb.bin similarity index 100% rename from data/quests/q702-gov-bb.bin rename to data/quests/bb/ep4/government/q702-gov-bb.bin diff --git a/data/quests/q702-gov-bb.dat b/data/quests/bb/ep4/government/q702-gov-bb.dat similarity index 100% rename from data/quests/q702-gov-bb.dat rename to data/quests/bb/ep4/government/q702-gov-bb.dat diff --git a/data/quests/q703-gov-bb.bin b/data/quests/bb/ep4/government/q703-gov-bb.bin similarity index 100% rename from data/quests/q703-gov-bb.bin rename to data/quests/bb/ep4/government/q703-gov-bb.bin diff --git a/data/quests/q703-gov-bb.dat b/data/quests/bb/ep4/government/q703-gov-bb.dat similarity index 100% rename from data/quests/q703-gov-bb.dat rename to data/quests/bb/ep4/government/q703-gov-bb.dat diff --git a/data/quests/q704-gov-bb.bin b/data/quests/bb/ep4/government/q704-gov-bb.bin similarity index 100% rename from data/quests/q704-gov-bb.bin rename to data/quests/bb/ep4/government/q704-gov-bb.bin diff --git a/data/quests/q704-gov-bb.dat b/data/quests/bb/ep4/government/q704-gov-bb.dat similarity index 100% rename from data/quests/q704-gov-bb.dat rename to data/quests/bb/ep4/government/q704-gov-bb.dat diff --git a/data/quests/q705-gov-bb.bin b/data/quests/bb/ep4/government/q705-gov-bb.bin similarity index 100% rename from data/quests/q705-gov-bb.bin rename to data/quests/bb/ep4/government/q705-gov-bb.bin diff --git a/data/quests/q705-gov-bb.dat b/data/quests/bb/ep4/government/q705-gov-bb.dat similarity index 100% rename from data/quests/q705-gov-bb.dat rename to data/quests/bb/ep4/government/q705-gov-bb.dat diff --git a/data/quests/q706-gov-bb.bin b/data/quests/bb/ep4/government/q706-gov-bb.bin similarity index 100% rename from data/quests/q706-gov-bb.bin rename to data/quests/bb/ep4/government/q706-gov-bb.bin diff --git a/data/quests/q706-gov-bb.dat b/data/quests/bb/ep4/government/q706-gov-bb.dat similarity index 100% rename from data/quests/q706-gov-bb.dat rename to data/quests/bb/ep4/government/q706-gov-bb.dat diff --git a/data/quests/q707-gov-bb.bin b/data/quests/bb/ep4/government/q707-gov-bb.bin similarity index 100% rename from data/quests/q707-gov-bb.bin rename to data/quests/bb/ep4/government/q707-gov-bb.bin diff --git a/data/quests/q707-gov-bb.dat b/data/quests/bb/ep4/government/q707-gov-bb.dat similarity index 100% rename from data/quests/q707-gov-bb.dat rename to data/quests/bb/ep4/government/q707-gov-bb.dat diff --git a/data/quests/q708-gov-bb.bin b/data/quests/bb/ep4/government/q708-gov-bb.bin similarity index 100% rename from data/quests/q708-gov-bb.bin rename to data/quests/bb/ep4/government/q708-gov-bb.bin diff --git a/data/quests/q708-gov-bb.dat b/data/quests/bb/ep4/government/q708-gov-bb.dat similarity index 100% rename from data/quests/q708-gov-bb.dat rename to data/quests/bb/ep4/government/q708-gov-bb.dat diff --git a/data/quests/q709-gov-bb.bin b/data/quests/bb/ep4/government/q709-gov-bb.bin similarity index 100% rename from data/quests/q709-gov-bb.bin rename to data/quests/bb/ep4/government/q709-gov-bb.bin diff --git a/data/quests/q709-gov-bb.dat b/data/quests/bb/ep4/government/q709-gov-bb.dat similarity index 100% rename from data/quests/q709-gov-bb.dat rename to data/quests/bb/ep4/government/q709-gov-bb.dat diff --git a/data/quests/bb/ep4/government/quests.toml b/data/quests/bb/ep4/government/quests.toml new file mode 100644 index 0000000..35548d2 --- /dev/null +++ b/data/quests/bb/ep4/government/quests.toml @@ -0,0 +1,32 @@ +[Government] +list_order = 1 +description = "What lies below on Ragol?" + +[[Government.quests]] +bin = "q701-gov-bb.bin" +dat = "q701-gov-bb.dat" + +[[Government.quests]] +bin = "q702-gov-bb.bin" +dat = "q702-gov-bb.dat" + +[[Government.quests]] +bin = "q703-gov-bb.bin" +dat = "q703-gov-bb.dat" + +[[Government.quests]] +bin = "q704-gov-bb.bin" +dat = "q704-gov-bb.dat" + +[[Government.quests]] +bin = "q705-gov-bb.bin" +dat = "q705-gov-bb.dat" + +[[Government.quests]] +bin = "q706-gov-bb.bin" +dat = "q706-gov-bb.dat" + +[[Government.quests]] +bin = "q707-gov-bb.bin" +dat = "q707-gov-bb.dat" + diff --git a/data/quests/q811-ext-bb.bin b/data/quests/bb/ep4/multi/q811-ext-bb.bin similarity index 100% rename from data/quests/q811-ext-bb.bin rename to data/quests/bb/ep4/multi/q811-ext-bb.bin diff --git a/data/quests/q811-ext-bb.dat b/data/quests/bb/ep4/multi/q811-ext-bb.dat similarity index 100% rename from data/quests/q811-ext-bb.dat rename to data/quests/bb/ep4/multi/q811-ext-bb.dat diff --git a/data/quests/q812-ext-bb.bin b/data/quests/bb/ep4/multi/q812-ext-bb.bin similarity index 100% rename from data/quests/q812-ext-bb.bin rename to data/quests/bb/ep4/multi/q812-ext-bb.bin diff --git a/data/quests/q812-ext-bb.dat b/data/quests/bb/ep4/multi/q812-ext-bb.dat similarity index 100% rename from data/quests/q812-ext-bb.dat rename to data/quests/bb/ep4/multi/q812-ext-bb.dat diff --git a/data/quests/q813-ext-bb.bin b/data/quests/bb/ep4/multi/q813-ext-bb.bin similarity index 100% rename from data/quests/q813-ext-bb.bin rename to data/quests/bb/ep4/multi/q813-ext-bb.bin diff --git a/data/quests/q813-ext-bb.dat b/data/quests/bb/ep4/multi/q813-ext-bb.dat similarity index 100% rename from data/quests/q813-ext-bb.dat rename to data/quests/bb/ep4/multi/q813-ext-bb.dat diff --git a/data/quests/q814-ext-bb.bin b/data/quests/bb/ep4/multi/q814-ext-bb.bin similarity index 100% rename from data/quests/q814-ext-bb.bin rename to data/quests/bb/ep4/multi/q814-ext-bb.bin diff --git a/data/quests/q814-ext-bb.dat b/data/quests/bb/ep4/multi/q814-ext-bb.dat similarity index 100% rename from data/quests/q814-ext-bb.dat rename to data/quests/bb/ep4/multi/q814-ext-bb.dat diff --git a/data/quests/q815-ext-bb.bin b/data/quests/bb/ep4/multi/q815-ext-bb.bin similarity index 100% rename from data/quests/q815-ext-bb.bin rename to data/quests/bb/ep4/multi/q815-ext-bb.bin diff --git a/data/quests/q815-ext-bb.dat b/data/quests/bb/ep4/multi/q815-ext-bb.dat similarity index 100% rename from data/quests/q815-ext-bb.dat rename to data/quests/bb/ep4/multi/q815-ext-bb.dat diff --git a/data/quests/bb/ep4/multi/quests.toml b/data/quests/bb/ep4/multi/quests.toml new file mode 100644 index 0000000..de147be --- /dev/null +++ b/data/quests/bb/ep4/multi/quests.toml @@ -0,0 +1,24 @@ +[Extermination] +list_order = 1 +description = "Exterminate the enemies!" + +[[Extermination.quests]] +bin = "q811-ext-bb.bin" +dat = "q811-ext-bb.dat" + +[[Extermination.quests]] +bin = "q812-ext-bb.bin" +dat = "q812-ext-bb.dat" + +[[Extermination.quests]] +bin = "q813-ext-bb.bin" +dat = "q813-ext-bb.dat" + +[[Extermination.quests]] +bin = "q814-ext-bb.bin" +dat = "q814-ext-bb.dat" + +[[Extermination.quests]] +bin = "q815-ext-bb.bin" +dat = "q815-ext-bb.dat" + diff --git a/data/quests/q031-1p-bb.bin b/data/quests/bb/ep4/single/q031-1p-bb.bin similarity index 100% rename from data/quests/q031-1p-bb.bin rename to data/quests/bb/ep4/single/q031-1p-bb.bin diff --git a/data/quests/q031-1p-bb.dat b/data/quests/bb/ep4/single/q031-1p-bb.dat similarity index 100% rename from data/quests/q031-1p-bb.dat rename to data/quests/bb/ep4/single/q031-1p-bb.dat diff --git a/data/quests/q033-1p-bb.bin b/data/quests/bb/ep4/single/q033-1p-bb.bin similarity index 100% rename from data/quests/q033-1p-bb.bin rename to data/quests/bb/ep4/single/q033-1p-bb.bin diff --git a/data/quests/q033-1p-bb.dat b/data/quests/bb/ep4/single/q033-1p-bb.dat similarity index 100% rename from data/quests/q033-1p-bb.dat rename to data/quests/bb/ep4/single/q033-1p-bb.dat diff --git a/data/quests/bb/ep4/single/quests.toml b/data/quests/bb/ep4/single/quests.toml new file mode 100644 index 0000000..6914c1e --- /dev/null +++ b/data/quests/bb/ep4/single/quests.toml @@ -0,0 +1,12 @@ +[Story] +list_order = 1 +description = "Story quests" + +[[Story.quests]] +bin = "q031-1p-bb.bin" +dat = "q031-1p-bb.dat" + +[[Story.quests]] +bin = "q033-1p-bb.bin" +dat = "q033-1p-bb.dat" + diff --git a/data/quests/bb/makedirs.sh b/data/quests/bb/makedirs.sh new file mode 100644 index 0000000..d6f6e43 --- /dev/null +++ b/data/quests/bb/makedirs.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +episodes=( ep1 ep2 ep4 ) +modes=( single multi battle challenge government ) + +for episode in ${episodes[@]} +do + for mode in ${modes[@]} + do + mkdir -p ${episode}/${mode} + done +done diff --git a/data/quests/b001-dc.bin b/data/quests/dc/b001-dc.bin similarity index 100% rename from data/quests/b001-dc.bin rename to data/quests/dc/b001-dc.bin diff --git a/data/quests/dc/b001-dc.dat b/data/quests/dc/b001-dc.dat new file mode 100755 index 0000000000000000000000000000000000000000..673a2621b471c17f0052cd082ff6893eb3d62374 GIT binary patch literal 1705 zcmW-he^3+G7RMI~*!%!v6=TI8E0J13Drj3!Y+aJR;`DXiV_x60j_5Q6EbY)L(+-x7 z{jowQI>wg%_~X6K>zkDqf1n1j8bG+>5|&7XOdKj-u(5bBrdh8cq?VvD4zC+7TSag{_K`pB*lR`nH%SP@av1gb4aZx+;us`)#) zMzKfokD=B{lr+UU3j$EU!dxEaTc~XGxxMN*dgkOL&?7~C%C85^T23Wq=gwSL)vc<* z!^X5{P;$qMY9XV{Pvk-S1f}ZuYyk%9zCkH_d00Zw@&Y>NutO=A@{mtkI;)>_voT}E zhm@*q=A!myJ6er~X&wx;WTe7rUu}rhb$C!d(zj7F`luOet&&b;2coER8(POhnvYR3 zc+iDB0$kXJ){Ah5oJ}RtB_53AAP#n;C#OWmxp;v7vG-IT8GNf7jvz zuY#M(LG?cJzJZ;};*XQO=Gkp1-8!r9^_)F2sU}m zHq?Nf7tnH+w~dxH_kTyrXnCEXN*QUA!y?dfuA!_}X_6m^um>Ngy~=TAB#1~xSx0W% z%7f;H2#m6#lbX4$mjE{^-6ELdHe7uIl)KO2N>ltdaU^3NMvdVGXzf7faVj?!HBbU-VgGfq z;oKw`uU0e4qCr~^7rQ%#K1<+YsYP3e0C+E4jM~*Q3)^Y3&{p(nb>r|75mIJqYWYxV zi4aj!t!JGAn6EDrq3VY=9#)nf5TJf|c)19>hIn|4KYU047jkA{Lw$^rx#x67&8GsK zFGD6A!E|O;Z#k*?LV(0;D|+G@Tv+HU0Y=R1YBr{6loz@zcsy=}64xFnAgC4rx;jt} zb`TdrC=r+=q+-5R#)q6%wyZNA4uB4nN^Hw!h{@^~wH4 zBbQ_KN2LKDwU-#0S6L`&+h4~f>L(w?|HngCHL*MX?BX6=K)g{kHk+K^i`IJ3y5N#< zRN>a7^n}c`Y^wR##z`pizX4bp4ZP1COAei}N-LSB=tKT;>4W?L5T*MzjW-Tk>h54H zFDxvrb}Rjz<cXrW zM`&5!DnQHV#{W%%bzjevqW#M-9&@7YaP2?pMb0Vyqo$_MX7LmO=>Wv$?!SVq9I5VashksK5Eb@pTTp1Z#*pCTa)%(tN z46Srogq=2yhgHme0m|HiSK_#~JLZoviZSmXeuevPF9zk$Y5m-pbgkufbcGYoe*3Tb zeu_0!wZ9NWr&?~$i16nt)p<_{Ffl&s6ydSn5G6l?cfuVuKORfmGICtOOE2@xty0%h zacl_@y17oAn=ce#tNW)U5uOjf#VAYIPR%9(+D;=aPTe5arW`p%_L>Olt$2e{aD~OA z*j2MdfJ|PGHzLWW6Ua!G?2K0JkV|+-9aC#9Y`Ll3RpD?XPDk(xF4|!s51H6qU8sJX zAu3<`y7{PjYED~d(6~(VAQ~Q8dyu;{6dtX%JfEK}{rxKLF+)_bmVb literal 0 HcmV?d00001 diff --git a/data/quests/b002-dc.bin b/data/quests/dc/b002-dc.bin similarity index 100% rename from data/quests/b002-dc.bin rename to data/quests/dc/b002-dc.bin diff --git a/data/quests/b002-dc.dat b/data/quests/dc/b002-dc.dat similarity index 100% rename from data/quests/b002-dc.dat rename to data/quests/dc/b002-dc.dat diff --git a/data/quests/b003-dc.bin b/data/quests/dc/b003-dc.bin similarity index 100% rename from data/quests/b003-dc.bin rename to data/quests/dc/b003-dc.bin diff --git a/data/quests/dc/b003-dc.dat b/data/quests/dc/b003-dc.dat new file mode 100755 index 0000000000000000000000000000000000000000..a6bd3c6e32c48f1675464039f096cd1f90bc0a6c GIT binary patch literal 2436 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 literal 0 HcmV?d00001 diff --git a/data/quests/b004-dc.bin b/data/quests/dc/b004-dc.bin similarity index 100% rename from data/quests/b004-dc.bin rename to data/quests/dc/b004-dc.bin diff --git a/data/quests/b004-pc.dat b/data/quests/dc/b004-dc.dat similarity index 100% rename from data/quests/b004-pc.dat rename to data/quests/dc/b004-dc.dat diff --git a/data/quests/b005-dc.bin b/data/quests/dc/b005-dc.bin similarity index 100% rename from data/quests/b005-dc.bin rename to data/quests/dc/b005-dc.bin diff --git a/data/quests/b005-pc.dat b/data/quests/dc/b005-dc.dat similarity index 100% rename from data/quests/b005-pc.dat rename to data/quests/dc/b005-dc.dat diff --git a/data/quests/b006-dc.bin b/data/quests/dc/b006-dc.bin similarity index 100% rename from data/quests/b006-dc.bin rename to data/quests/dc/b006-dc.bin diff --git a/data/quests/b006-pc.dat b/data/quests/dc/b006-dc.dat similarity index 100% rename from data/quests/b006-pc.dat rename to data/quests/dc/b006-dc.dat diff --git a/data/quests/b007-dc.bin b/data/quests/dc/b007-dc.bin similarity index 100% rename from data/quests/b007-dc.bin rename to data/quests/dc/b007-dc.bin diff --git a/data/quests/b007-pc.dat b/data/quests/dc/b007-dc.dat similarity index 100% rename from data/quests/b007-pc.dat rename to data/quests/dc/b007-dc.dat diff --git a/data/quests/b008-dc.bin b/data/quests/dc/b008-dc.bin similarity index 100% rename from data/quests/b008-dc.bin rename to data/quests/dc/b008-dc.bin diff --git a/data/quests/b008-pc.dat b/data/quests/dc/b008-dc.dat similarity index 100% rename from data/quests/b008-pc.dat rename to data/quests/dc/b008-dc.dat diff --git a/data/quests/c101-dc.bin b/data/quests/dc/c101-dc.bin similarity index 100% rename from data/quests/c101-dc.bin rename to data/quests/dc/c101-dc.bin diff --git a/data/quests/c101-dc.dat b/data/quests/dc/c101-dc.dat similarity index 100% rename from data/quests/c101-dc.dat rename to data/quests/dc/c101-dc.dat diff --git a/data/quests/c102-dc.bin b/data/quests/dc/c102-dc.bin similarity index 100% rename from data/quests/c102-dc.bin rename to data/quests/dc/c102-dc.bin diff --git a/data/quests/c102-dc.dat b/data/quests/dc/c102-dc.dat similarity index 100% rename from data/quests/c102-dc.dat rename to data/quests/dc/c102-dc.dat diff --git a/data/quests/c103-dc.bin b/data/quests/dc/c103-dc.bin similarity index 100% rename from data/quests/c103-dc.bin rename to data/quests/dc/c103-dc.bin diff --git a/data/quests/c103-dc.dat b/data/quests/dc/c103-dc.dat similarity index 100% rename from data/quests/c103-dc.dat rename to data/quests/dc/c103-dc.dat diff --git a/data/quests/c104-dc.bin b/data/quests/dc/c104-dc.bin similarity index 100% rename from data/quests/c104-dc.bin rename to data/quests/dc/c104-dc.bin diff --git a/data/quests/c104-dc.dat b/data/quests/dc/c104-dc.dat similarity index 100% rename from data/quests/c104-dc.dat rename to data/quests/dc/c104-dc.dat diff --git a/data/quests/c105-dc.bin b/data/quests/dc/c105-dc.bin similarity index 100% rename from data/quests/c105-dc.bin rename to data/quests/dc/c105-dc.bin diff --git a/data/quests/c105-dc.dat b/data/quests/dc/c105-dc.dat similarity index 100% rename from data/quests/c105-dc.dat rename to data/quests/dc/c105-dc.dat diff --git a/data/quests/c106-dc.bin b/data/quests/dc/c106-dc.bin similarity index 100% rename from data/quests/c106-dc.bin rename to data/quests/dc/c106-dc.bin diff --git a/data/quests/c106-dc.dat b/data/quests/dc/c106-dc.dat similarity index 100% rename from data/quests/c106-dc.dat rename to data/quests/dc/c106-dc.dat diff --git a/data/quests/c107-dc.bin b/data/quests/dc/c107-dc.bin similarity index 100% rename from data/quests/c107-dc.bin rename to data/quests/dc/c107-dc.bin diff --git a/data/quests/c107-dc.dat b/data/quests/dc/c107-dc.dat similarity index 100% rename from data/quests/c107-dc.dat rename to data/quests/dc/c107-dc.dat diff --git a/data/quests/c108-dc.bin b/data/quests/dc/c108-dc.bin similarity index 100% rename from data/quests/c108-dc.bin rename to data/quests/dc/c108-dc.bin diff --git a/data/quests/c108-dc.dat b/data/quests/dc/c108-dc.dat similarity index 100% rename from data/quests/c108-dc.dat rename to data/quests/dc/c108-dc.dat diff --git a/data/quests/c109-dc.bin b/data/quests/dc/c109-dc.bin similarity index 100% rename from data/quests/c109-dc.bin rename to data/quests/dc/c109-dc.bin diff --git a/data/quests/c109-dc.dat b/data/quests/dc/c109-dc.dat similarity index 100% rename from data/quests/c109-dc.dat rename to data/quests/dc/c109-dc.dat diff --git a/data/quests/q058-ret-dc.bin b/data/quests/dc/q058-ret-dc.bin similarity index 100% rename from data/quests/q058-ret-dc.bin rename to data/quests/dc/q058-ret-dc.bin diff --git a/data/quests/q058-ret-dc.dat b/data/quests/dc/q058-ret-dc.dat similarity index 100% rename from data/quests/q058-ret-dc.dat rename to data/quests/dc/q058-ret-dc.dat diff --git a/data/quests/q059-ret-dc.bin b/data/quests/dc/q059-ret-dc.bin similarity index 100% rename from data/quests/q059-ret-dc.bin rename to data/quests/dc/q059-ret-dc.bin diff --git a/data/quests/q059-ret-dc.dat b/data/quests/dc/q059-ret-dc.dat similarity index 100% rename from data/quests/q059-ret-dc.dat rename to data/quests/dc/q059-ret-dc.dat diff --git a/data/quests/q060-ret-dc.bin b/data/quests/dc/q060-ret-dc.bin similarity index 100% rename from data/quests/q060-ret-dc.bin rename to data/quests/dc/q060-ret-dc.bin diff --git a/data/quests/q060-ret-dc.dat b/data/quests/dc/q060-ret-dc.dat similarity index 100% rename from data/quests/q060-ret-dc.dat rename to data/quests/dc/q060-ret-dc.dat diff --git a/data/quests/q068-ret-dc.bin b/data/quests/dc/q068-ret-dc.bin similarity index 100% rename from data/quests/q068-ret-dc.bin rename to data/quests/dc/q068-ret-dc.bin diff --git a/data/quests/q068-ret-dc.dat b/data/quests/dc/q068-ret-dc.dat similarity index 100% rename from data/quests/q068-ret-dc.dat rename to data/quests/dc/q068-ret-dc.dat diff --git a/data/quests/q080-vr-dc.bin b/data/quests/dc/q080-vr-dc.bin similarity index 100% rename from data/quests/q080-vr-dc.bin rename to data/quests/dc/q080-vr-dc.bin diff --git a/data/quests/q080-vr-dc.dat b/data/quests/dc/q080-vr-dc.dat similarity index 100% rename from data/quests/q080-vr-dc.dat rename to data/quests/dc/q080-vr-dc.dat diff --git a/data/quests/q101-ext-dc.bin b/data/quests/dc/q101-ext-dc.bin similarity index 100% rename from data/quests/q101-ext-dc.bin rename to data/quests/dc/q101-ext-dc.bin diff --git a/data/quests/q101-ext-dc.dat b/data/quests/dc/q101-ext-dc.dat similarity index 100% rename from data/quests/q101-ext-dc.dat rename to data/quests/dc/q101-ext-dc.dat diff --git a/data/quests/q102-ext-dc.bin b/data/quests/dc/q102-ext-dc.bin similarity index 100% rename from data/quests/q102-ext-dc.bin rename to data/quests/dc/q102-ext-dc.bin diff --git a/data/quests/q102-ext-dc.dat b/data/quests/dc/q102-ext-dc.dat similarity index 100% rename from data/quests/q102-ext-dc.dat rename to data/quests/dc/q102-ext-dc.dat diff --git a/data/quests/q104-ext-dc.bin b/data/quests/dc/q104-ext-dc.bin similarity index 100% rename from data/quests/q104-ext-dc.bin rename to data/quests/dc/q104-ext-dc.bin diff --git a/data/quests/q104-ext-dc.dat b/data/quests/dc/q104-ext-dc.dat similarity index 100% rename from data/quests/q104-ext-dc.dat rename to data/quests/dc/q104-ext-dc.dat diff --git a/data/quests/q108-ext-dc.bin b/data/quests/dc/q108-ext-dc.bin similarity index 100% rename from data/quests/q108-ext-dc.bin rename to data/quests/dc/q108-ext-dc.bin diff --git a/data/quests/q108-ext-dc.dat b/data/quests/dc/q108-ext-dc.dat similarity index 100% rename from data/quests/q108-ext-dc.dat rename to data/quests/dc/q108-ext-dc.dat diff --git a/data/quests/q109-ext-dc.bin b/data/quests/dc/q109-ext-dc.bin similarity index 100% rename from data/quests/q109-ext-dc.bin rename to data/quests/dc/q109-ext-dc.bin diff --git a/data/quests/q109-ext-dc.dat b/data/quests/dc/q109-ext-dc.dat similarity index 100% rename from data/quests/q109-ext-dc.dat rename to data/quests/dc/q109-ext-dc.dat diff --git a/data/quests/q110-ext-dc.bin b/data/quests/dc/q110-ext-dc.bin similarity index 100% rename from data/quests/q110-ext-dc.bin rename to data/quests/dc/q110-ext-dc.bin diff --git a/data/quests/q110-ext-dc.dat b/data/quests/dc/q110-ext-dc.dat similarity index 100% rename from data/quests/q110-ext-dc.dat rename to data/quests/dc/q110-ext-dc.dat diff --git a/data/quests/q111-ext-dc.bin b/data/quests/dc/q111-ext-dc.bin similarity index 100% rename from data/quests/q111-ext-dc.bin rename to data/quests/dc/q111-ext-dc.bin diff --git a/data/quests/q111-ext-dc.dat b/data/quests/dc/q111-ext-dc.dat similarity index 100% rename from data/quests/q111-ext-dc.dat rename to data/quests/dc/q111-ext-dc.dat diff --git a/data/quests/q117-ext-dc.bin b/data/quests/dc/q117-ext-dc.bin similarity index 100% rename from data/quests/q117-ext-dc.bin rename to data/quests/dc/q117-ext-dc.bin diff --git a/data/quests/q117-ext-dc.dat b/data/quests/dc/q117-ext-dc.dat similarity index 100% rename from data/quests/q117-ext-dc.dat rename to data/quests/dc/q117-ext-dc.dat diff --git a/data/quests/q118-vr-dc.bin b/data/quests/dc/q118-vr-dc.bin similarity index 100% rename from data/quests/q118-vr-dc.bin rename to data/quests/dc/q118-vr-dc.bin diff --git a/data/quests/q118-vr-dc.dat b/data/quests/dc/q118-vr-dc.dat similarity index 100% rename from data/quests/q118-vr-dc.dat rename to data/quests/dc/q118-vr-dc.dat diff --git a/data/quests/q137-evt-dc.bin b/data/quests/dc/q137-evt-dc.bin similarity index 100% rename from data/quests/q137-evt-dc.bin rename to data/quests/dc/q137-evt-dc.bin diff --git a/data/quests/q137-evt-dc.dat b/data/quests/dc/q137-evt-dc.dat similarity index 100% rename from data/quests/q137-evt-dc.dat rename to data/quests/dc/q137-evt-dc.dat diff --git a/data/quests/q138-evt-dc.bin b/data/quests/dc/q138-evt-dc.bin similarity index 100% rename from data/quests/q138-evt-dc.bin rename to data/quests/dc/q138-evt-dc.bin diff --git a/data/quests/q138-evt-dc.dat b/data/quests/dc/q138-evt-dc.dat similarity index 100% rename from data/quests/q138-evt-dc.dat rename to data/quests/dc/q138-evt-dc.dat diff --git a/data/quests/b001-gc.bin b/data/quests/gc/b001-gc.bin similarity index 100% rename from data/quests/b001-gc.bin rename to data/quests/gc/b001-gc.bin diff --git a/data/quests/gc/b001-gc.dat b/data/quests/gc/b001-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..673a2621b471c17f0052cd082ff6893eb3d62374 GIT binary patch literal 1705 zcmW-he^3+G7RMI~*!%!v6=TI8E0J13Drj3!Y+aJR;`DXiV_x60j_5Q6EbY)L(+-x7 z{jowQI>wg%_~X6K>zkDqf1n1j8bG+>5|&7XOdKj-u(5bBrdh8cq?VvD4zC+7TSag{_K`pB*lR`nH%SP@av1gb4aZx+;us`)#) zMzKfokD=B{lr+UU3j$EU!dxEaTc~XGxxMN*dgkOL&?7~C%C85^T23Wq=gwSL)vc<* z!^X5{P;$qMY9XV{Pvk-S1f}ZuYyk%9zCkH_d00Zw@&Y>NutO=A@{mtkI;)>_voT}E zhm@*q=A!myJ6er~X&wx;WTe7rUu}rhb$C!d(zj7F`luOet&&b;2coER8(POhnvYR3 zc+iDB0$kXJ){Ah5oJ}RtB_53AAP#n;C#OWmxp;v7vG-IT8GNf7jvz zuY#M(LG?cJzJZ;};*XQO=Gkp1-8!r9^_)F2sU}m zHq?Nf7tnH+w~dxH_kTyrXnCEXN*QUA!y?dfuA!_}X_6m^um>Ngy~=TAB#1~xSx0W% z%7f;H2#m6#lbX4$mjE{^-6ELdHe7uIl)KO2N>ltdaU^3NMvdVGXzf7faVj?!HBbU-VgGfq z;oKw`uU0e4qCr~^7rQ%#K1<+YsYP3e0C+E4jM~*Q3)^Y3&{p(nb>r|75mIJqYWYxV zi4aj!t!JGAn6EDrq3VY=9#)nf5TJf|c)19>hIn|4KYU047jkA{Lw$^rx#x67&8GsK zFGD6A!E|O;Z#k*?LV(0;D|+G@Tv+HU0Y=R1YBr{6loz@zcsy=}64xFnAgC4rx;jt} zb`TdrC=r+=q+-5R#)q6%wyZNA4uB4nN^Hw!h{@^~wH4 zBbQ_KN2LKDwU-#0S6L`&+h4~f>L(w?|HngCHL*MX?BX6=K)g{kHk+K^i`IJ3y5N#< zRN>a7^n}c`Y^wR##z`pizX4bp4ZP1COAei}N-LSB=tKT;>4W?L5T*MzjW-Tk>h54H zFDxvrb}Rjz<cXrW zM`&5!DnQHV#{W%%bzjevqW#M-9&@7YaP2?pMb0Vyqo$_MX7LmO=>Wv$?!SVq9I5VashksK5Eb@pTTp1Z#*pCTa)%(tN z46Srogq=2yhgHme0m|HiSK_#~JLZoviZSmXeuevPF9zk$Y5m-pbgkufbcGYoe*3Tb zeu_0!wZ9NWr&?~$i16nt)p<_{Ffl&s6ydSn5G6l?cfuVuKORfmGICtOOE2@xty0%h zacl_@y17oAn=ce#tNW)U5uOjf#VAYIPR%9(+D;=aPTe5arW`p%_L>Olt$2e{aD~OA z*j2MdfJ|PGHzLWW6Ua!G?2K0JkV|+-9aC#9Y`Ll3RpD?XPDk(xF4|!s51H6qU8sJX zAu3<`y7{PjYED~d(6~(VAQ~Q8dyu;{6dtX%JfEK}{rxKLF+)_bmVb literal 0 HcmV?d00001 diff --git a/data/quests/b002-gc.bin b/data/quests/gc/b002-gc.bin similarity index 100% rename from data/quests/b002-gc.bin rename to data/quests/gc/b002-gc.bin diff --git a/data/quests/gc/b002-gc.dat b/data/quests/gc/b002-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..8e9a7dc57eaa7138268b2feacc8f48046b4005f1 GIT binary patch literal 1910 zcmX98Mr^A-*RfZ@#lk5Qp#1PeZ&zXQ3ULhMh+Emi{23az@rF3$ap zi)BQa{vdv#_R1FuyoW~AV#Khu*nhlSlteI#3g$3gCEN|~#P4{(s3C!bRcJm=5as)G zab3ym;gW0*q~+*+E9Q*pr#9EG9ug#sD9<`;;Nc-Qyz7BaXe{zMyOhAPmGc>k^-jFk z17}qK4I2`yXja9XJ;g%!T6hT8s(PA+y!><>+%$OV&%$j3Zb zy+t#$N#<-Lfz+%&J9uctrA}=af!M7Cl8}QyTpK=?O>=4k=V*>Mt;P-OwS^hO*Zmbi zR>MQMKmF4S(dxYd=Z!KQ;lb&0ZlECPBBG>6-9TrItvs5S;p)LZX!Agirv^A4c7`H` zNgI=x07<*MoKQCr$ondVSMzioYK}FQ-}jt@E9x$rxH}&csh!2JnwOP*^}RU7RR#QU_r;m)PYGLO zbQM_nc^#g@o5y(wMdcN%CL@Ruao8R;R z70+5WAb;>M%QY<-*D;NCQh)!(J(l#xJMu0?0i)CDR}EY^*kp!7-srh4l8dpN^AjSPA>Eb-8Co1IE_ zg>3rcJ)C*KXUpbBqAvvy+qMGX#$ULc5Ae3nsYz^ggF#{!m5yM&Q+lDE3&u)qBh&Zr z_5$BIx|Z+kK`MfjDw#3Ya;Xq&*?=sco!g?EU&#hyVo`1#zJ_(B;p5Ur$gKGbf%Pnw zG&yxUD*Vy4fr0}1VHqBlH0j==^5B9S6m6{8ubTfU*T2T9EKS6#*rNx0Kclg|wh2<9 z!bwbh@w(HxpRXtV-K>LZN|`)VzwY!#-A{4WUKIOg~YyxSI#bV6Ilu7i@m}i3`&P)x*EabHjv_9+ODDY>EfmgD+?!QMRc} z-WDEyfojv3S!U_RRa8Rii^Im+VXFQXGY{3~kGixG^kozpy-($E1iSF*CpOg=q(V#m zqQrcE(faZ3UT^lL8FpG;tGt$+YrqSQ>a%XpTV&&pM+vMkzlSpauE=%+F~~JkG4Co5 z#TVGi=c~=lZYc0crA2y>6?5fJ>5F-oyNp$|{(j%SPiO=5k-fY~ef4Qdo!q<9W;Q>T zajiT^C)_==%H)q%&=jU{ln3>lBMgbbF|`TxS*`_$*;gAYgzhWQZ9&52>lNW2S_&n literal 0 HcmV?d00001 diff --git a/data/quests/b003-gc.bin b/data/quests/gc/b003-gc.bin similarity index 100% rename from data/quests/b003-gc.bin rename to data/quests/gc/b003-gc.bin diff --git a/data/quests/gc/b003-gc.dat b/data/quests/gc/b003-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..a6bd3c6e32c48f1675464039f096cd1f90bc0a6c GIT binary patch literal 2436 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 literal 0 HcmV?d00001 diff --git a/data/quests/b004-gc.bin b/data/quests/gc/b004-gc.bin similarity index 100% rename from data/quests/b004-gc.bin rename to data/quests/gc/b004-gc.bin diff --git a/data/quests/gc/b004-gc.dat b/data/quests/gc/b004-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..e838ab7171022b35d1fa4cc58f61e1908c9c899c GIT binary patch literal 3427 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 literal 0 HcmV?d00001 diff --git a/data/quests/b005-gc.bin b/data/quests/gc/b005-gc.bin similarity index 100% rename from data/quests/b005-gc.bin rename to data/quests/gc/b005-gc.bin diff --git a/data/quests/gc/b005-gc.dat b/data/quests/gc/b005-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..9be76bcde58157a0ace1d8ae0ed7c570589f46e8 GIT binary patch literal 2245 zcmW-idt4J&7RM(fJVHVM0Z|kP^6*(pUDR&HbquI%yLGX?#YcE`9~9-YTWdaQ?MM-= z#gBZtAGLK|9Wfw^2vhr;UJ94BJZ! z;TJ|{>UHJu6Adf`QloNuEn|LF{E35ElV}zX ze;5}BKj$hWGz)QbOdh)2ie{tPi+QO1wCvyg;#2Wbs;%^h-s4TEH8Ld%D&EV2lHJEa zqyaW$A z+;!0?ng=mt>X_!I2M_Kpd|!IZf$iHr6{HDd+^X?Yhd5B9m1-Wwq=hx6$5U%;ltbBp zyjf5so}%gJ$1JREp;T)gu5v}7RHuAYb@ zPH+(0gJOB;v-v7bYdm*y?JPu*CHiM|aVU-l$4f6|_VY-=dW0NS`cQ)@zO`$;CQ>^d zDZ@$&9TJ-ZrKEB2z`Osj>8xusU(E&;JEGLA;;R#=GN~>BCERl#P=O?y+wC(z3nJaQRa}PZUI`rgSkFXo#fLkMjKg(xZ2A68I`qO&yYN9A8MaZJXG#a?PS|S zs3!_y)tJ6@xbgwE@o{4V(-uozZk5JY-+hdAn-b4(U|;YdXBzS$j4CxK)dlEYQQ08s z?LkY3+sgWK4O?asT9o*lgPI#?ffAc1lOYcMTiJBZYa%{Pz>f8+ki8<&{Q6qdR7@!&(;r2i4H*;wT9dt~%cNzW9l zZrZE<&R>S%w7qfYT*ey08sLY$ev|ABFSv{ud%kWxTFX@U@1M<7M9_kQ_PxeI(jR%4 zOz^y*$`Tkq*ID0(>5N<6ZAx&dzYDct>QN!zzL9dsKT1xpOY(__5!v?5GV5In+Qh?R5LQy8e59es5#HM7d#`Bp zEo1Rd+4e229oeS~_u<#gXl=}58s}E0p8985_tvYz{R7F*WlUo{*?^H=*1Zk;p=qF; zZAz&9o`Y|{!adLESPQ()|ktkqYxOUTgR*2g6NC_|!ACmP!l9(r7vEe`ZT zicJ_#k$7qQJG(JO=Bp*=dr+ZB3-PRB^Xu>m9>STfXvr6o=m^2M;|sRC8t!ipVIr+F3H0x&+#kv z{W_}bwUYEYZ0pukO}P_{s=J-T^3Lu;4&rI{_e zT3E|M8c&+OvQ{}Zj*)RMBn{eBTT7z`Ym_V2=uSF_S`FohW!AeEr0j5t3WE3_fCvV9 literal 0 HcmV?d00001 diff --git a/data/quests/b006-gc.bin b/data/quests/gc/b006-gc.bin similarity index 100% rename from data/quests/b006-gc.bin rename to data/quests/gc/b006-gc.bin diff --git a/data/quests/gc/b006-gc.dat b/data/quests/gc/b006-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..a9c6bb0e2385754c414158cb3ab7e7c8490e582a GIT binary patch literal 956 zcmW+zT})eL7(Q)b(jI==fMEvBnzUP%;RQ>HBy-@gGj11}OcR$yUDiQoW`x1bSf>}3 zfrJZ5I?W`}WY&Zg799U8u6=<+f7mi0A)098tUJN)w8+X@=t_GyeS7@y?#=f;KkxH= zK^3F4>hyViOYY;`H!mkWFZ6B?pUfFc63R?0z~mH`TUMT^8Rr{}sI<&63VTNS`dbl? z-T_O~W=d_e&Wgrd@=Z6Eb_%FdpH_6PclzMF+{8F+iRcQopLcAl-Bw;^zcd#Fu81kI ze%h(LnriEV>$!=)VMN4nC3oz3L2^4(ywaw4Bt3O%pkl&@A$i0LgqO9}u)GrBWdrXh z7m(#vV6i!qg1f#4azVLr!lkg~woLWu^RU?ymPh00@{JA_J_&mA1;y);F78M6Qcrf` z35HFhQTG!?48a-y=9N1e0O;3%-;jiWC(~(6uO^yDVTObCRIH6)N`bz8jY9nG};W ztRq|FewSc)38v|yexcYwP`_`mpt&}{%T;yn_rxC6-*d*a@bqx5DD8|LFt+O9Mhn~r z_QGvRDT9xyl!tGnja=G5%VC`z1n0c)qJY}tB1UN%lW>ioF9Kz>(R79l{i3=OW0LzR zmcQLXa26^bQ*c1UJ#4CfDzp)WHlI<@`aalRXfO(+~qu~iOvaV=EevHJL?)!e%-V3ql|A}+1%_Y&NM#-NC9$Y5{AC zYxoVVe^7e11R?4f`sua*Kexs?ACi+x5Ozyis2$T#B%Llju#>gNi&x``=>SQj0#S~y zu#rmUCc)_l%0RG4SSlM5gjAo!POt=+Z0GM6lbxxr9-#unKNtm zAH|U@Mj}l?Az^Y&RqR4@W^;+sX!2TP!RE}$vp9B8pIYOg f{@virBsA`bXj6C0JC^ZBD?ej8(o8t4V3_{^4y#D( literal 0 HcmV?d00001 diff --git a/data/quests/b007-gc.bin b/data/quests/gc/b007-gc.bin similarity index 100% rename from data/quests/b007-gc.bin rename to data/quests/gc/b007-gc.bin diff --git a/data/quests/gc/b007-gc.dat b/data/quests/gc/b007-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..0e78972b1bcf8a35eae27a6a20854b0716652678 GIT binary patch literal 3753 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 w-Gg@HMSI{3E+=}=%0AjnRpn_t4|EU5jF^j*uPAu?!X?5Pf4xlY4JC;G1Do7u{r~^~ literal 0 HcmV?d00001 diff --git a/data/quests/b008-gc.bin b/data/quests/gc/b008-gc.bin similarity index 100% rename from data/quests/b008-gc.bin rename to data/quests/gc/b008-gc.bin diff --git a/data/quests/gc/b008-gc.dat b/data/quests/gc/b008-gc.dat new file mode 100755 index 0000000000000000000000000000000000000000..4a559194018f9cb10a62e454e6a446a38dfe91d9 GIT binary patch literal 5911 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 literal 0 HcmV?d00001 diff --git a/data/quests/c101-gc.bin b/data/quests/gc/c101-gc.bin similarity index 100% rename from data/quests/c101-gc.bin rename to data/quests/gc/c101-gc.bin diff --git a/data/quests/c101-gc.dat b/data/quests/gc/c101-gc.dat similarity index 100% rename from data/quests/c101-gc.dat rename to data/quests/gc/c101-gc.dat diff --git a/data/quests/c102-gc.bin b/data/quests/gc/c102-gc.bin similarity index 100% rename from data/quests/c102-gc.bin rename to data/quests/gc/c102-gc.bin diff --git a/data/quests/c102-gc.dat b/data/quests/gc/c102-gc.dat similarity index 100% rename from data/quests/c102-gc.dat rename to data/quests/gc/c102-gc.dat diff --git a/data/quests/c103-gc.bin b/data/quests/gc/c103-gc.bin similarity index 100% rename from data/quests/c103-gc.bin rename to data/quests/gc/c103-gc.bin diff --git a/data/quests/c103-gc.dat b/data/quests/gc/c103-gc.dat similarity index 100% rename from data/quests/c103-gc.dat rename to data/quests/gc/c103-gc.dat diff --git a/data/quests/c104-gc.bin b/data/quests/gc/c104-gc.bin similarity index 100% rename from data/quests/c104-gc.bin rename to data/quests/gc/c104-gc.bin diff --git a/data/quests/c104-gc.dat b/data/quests/gc/c104-gc.dat similarity index 100% rename from data/quests/c104-gc.dat rename to data/quests/gc/c104-gc.dat diff --git a/data/quests/c105-gc.bin b/data/quests/gc/c105-gc.bin similarity index 100% rename from data/quests/c105-gc.bin rename to data/quests/gc/c105-gc.bin diff --git a/data/quests/c105-gc.dat b/data/quests/gc/c105-gc.dat similarity index 100% rename from data/quests/c105-gc.dat rename to data/quests/gc/c105-gc.dat diff --git a/data/quests/c106-gc.bin b/data/quests/gc/c106-gc.bin similarity index 100% rename from data/quests/c106-gc.bin rename to data/quests/gc/c106-gc.bin diff --git a/data/quests/c106-gc.dat b/data/quests/gc/c106-gc.dat similarity index 100% rename from data/quests/c106-gc.dat rename to data/quests/gc/c106-gc.dat diff --git a/data/quests/c107-gc.bin b/data/quests/gc/c107-gc.bin similarity index 100% rename from data/quests/c107-gc.bin rename to data/quests/gc/c107-gc.bin diff --git a/data/quests/c107-gc.dat b/data/quests/gc/c107-gc.dat similarity index 100% rename from data/quests/c107-gc.dat rename to data/quests/gc/c107-gc.dat diff --git a/data/quests/c108-gc.bin b/data/quests/gc/c108-gc.bin similarity index 100% rename from data/quests/c108-gc.bin rename to data/quests/gc/c108-gc.bin diff --git a/data/quests/c108-gc.dat b/data/quests/gc/c108-gc.dat similarity index 100% rename from data/quests/c108-gc.dat rename to data/quests/gc/c108-gc.dat diff --git a/data/quests/c109-gc.bin b/data/quests/gc/c109-gc.bin similarity index 100% rename from data/quests/c109-gc.bin rename to data/quests/gc/c109-gc.bin diff --git a/data/quests/c109-gc.dat b/data/quests/gc/c109-gc.dat similarity index 100% rename from data/quests/c109-gc.dat rename to data/quests/gc/c109-gc.dat diff --git a/data/quests/c201-gc.bin b/data/quests/gc/c201-gc.bin similarity index 100% rename from data/quests/c201-gc.bin rename to data/quests/gc/c201-gc.bin diff --git a/data/quests/c201-gc.dat b/data/quests/gc/c201-gc.dat similarity index 100% rename from data/quests/c201-gc.dat rename to data/quests/gc/c201-gc.dat diff --git a/data/quests/c202-gc.bin b/data/quests/gc/c202-gc.bin similarity index 100% rename from data/quests/c202-gc.bin rename to data/quests/gc/c202-gc.bin diff --git a/data/quests/c202-gc.dat b/data/quests/gc/c202-gc.dat similarity index 100% rename from data/quests/c202-gc.dat rename to data/quests/gc/c202-gc.dat diff --git a/data/quests/c203-gc.bin b/data/quests/gc/c203-gc.bin similarity index 100% rename from data/quests/c203-gc.bin rename to data/quests/gc/c203-gc.bin diff --git a/data/quests/c203-gc.dat b/data/quests/gc/c203-gc.dat similarity index 100% rename from data/quests/c203-gc.dat rename to data/quests/gc/c203-gc.dat diff --git a/data/quests/c204-gc.bin b/data/quests/gc/c204-gc.bin similarity index 100% rename from data/quests/c204-gc.bin rename to data/quests/gc/c204-gc.bin diff --git a/data/quests/c204-gc.dat b/data/quests/gc/c204-gc.dat similarity index 100% rename from data/quests/c204-gc.dat rename to data/quests/gc/c204-gc.dat diff --git a/data/quests/c205-gc.bin b/data/quests/gc/c205-gc.bin similarity index 100% rename from data/quests/c205-gc.bin rename to data/quests/gc/c205-gc.bin diff --git a/data/quests/c205-gc.dat b/data/quests/gc/c205-gc.dat similarity index 100% rename from data/quests/c205-gc.dat rename to data/quests/gc/c205-gc.dat diff --git a/data/quests/e301-gc3.bin b/data/quests/gc/e301-gc3.bin similarity index 100% rename from data/quests/e301-gc3.bin rename to data/quests/gc/e301-gc3.bin diff --git a/data/quests/e302-gc3.bin b/data/quests/gc/e302-gc3.bin similarity index 100% rename from data/quests/e302-gc3.bin rename to data/quests/gc/e302-gc3.bin diff --git a/data/quests/e303-gc3.bin b/data/quests/gc/e303-gc3.bin similarity index 100% rename from data/quests/e303-gc3.bin rename to data/quests/gc/e303-gc3.bin diff --git a/data/quests/q000-dl-gc.bin b/data/quests/gc/q000-dl-gc.bin similarity index 100% rename from data/quests/q000-dl-gc.bin rename to data/quests/gc/q000-dl-gc.bin diff --git a/data/quests/q000-dl-gc.dat b/data/quests/gc/q000-dl-gc.dat similarity index 100% rename from data/quests/q000-dl-gc.dat rename to data/quests/gc/q000-dl-gc.dat diff --git a/data/quests/q026-1p-gc.bin b/data/quests/gc/q026-1p-gc.bin similarity index 100% rename from data/quests/q026-1p-gc.bin rename to data/quests/gc/q026-1p-gc.bin diff --git a/data/quests/q026-1p-gc.dat b/data/quests/gc/q026-1p-gc.dat similarity index 100% rename from data/quests/q026-1p-gc.dat rename to data/quests/gc/q026-1p-gc.dat diff --git a/data/quests/q058-ret-gc.bin b/data/quests/gc/q058-ret-gc.bin similarity index 100% rename from data/quests/q058-ret-gc.bin rename to data/quests/gc/q058-ret-gc.bin diff --git a/data/quests/q058-ret-gc.dat b/data/quests/gc/q058-ret-gc.dat similarity index 100% rename from data/quests/q058-ret-gc.dat rename to data/quests/gc/q058-ret-gc.dat diff --git a/data/quests/q059-ret-gc.bin b/data/quests/gc/q059-ret-gc.bin similarity index 100% rename from data/quests/q059-ret-gc.bin rename to data/quests/gc/q059-ret-gc.bin diff --git a/data/quests/q059-ret-gc.dat b/data/quests/gc/q059-ret-gc.dat similarity index 100% rename from data/quests/q059-ret-gc.dat rename to data/quests/gc/q059-ret-gc.dat diff --git a/data/quests/q060-ret-gc.bin b/data/quests/gc/q060-ret-gc.bin similarity index 100% rename from data/quests/q060-ret-gc.bin rename to data/quests/gc/q060-ret-gc.bin diff --git a/data/quests/q060-ret-gc.dat b/data/quests/gc/q060-ret-gc.dat similarity index 100% rename from data/quests/q060-ret-gc.dat rename to data/quests/gc/q060-ret-gc.dat diff --git a/data/quests/q073-evt-gc.bin b/data/quests/gc/q073-evt-gc.bin similarity index 100% rename from data/quests/q073-evt-gc.bin rename to data/quests/gc/q073-evt-gc.bin diff --git a/data/quests/q073-evt-gc.dat b/data/quests/gc/q073-evt-gc.dat similarity index 100% rename from data/quests/q073-evt-gc.dat rename to data/quests/gc/q073-evt-gc.dat diff --git a/data/quests/q095-evt-gc.bin b/data/quests/gc/q095-evt-gc.bin similarity index 100% rename from data/quests/q095-evt-gc.bin rename to data/quests/gc/q095-evt-gc.bin diff --git a/data/quests/q095-evt-gc.dat b/data/quests/gc/q095-evt-gc.dat similarity index 100% rename from data/quests/q095-evt-gc.dat rename to data/quests/gc/q095-evt-gc.dat diff --git a/data/quests/q096-evt-gc.bin b/data/quests/gc/q096-evt-gc.bin similarity index 100% rename from data/quests/q096-evt-gc.bin rename to data/quests/gc/q096-evt-gc.bin diff --git a/data/quests/q096-evt-gc.dat b/data/quests/gc/q096-evt-gc.dat similarity index 100% rename from data/quests/q096-evt-gc.dat rename to data/quests/gc/q096-evt-gc.dat diff --git a/data/quests/q101-ext-gc.bin b/data/quests/gc/q101-ext-gc.bin similarity index 100% rename from data/quests/q101-ext-gc.bin rename to data/quests/gc/q101-ext-gc.bin diff --git a/data/quests/q101-ext-gc.dat b/data/quests/gc/q101-ext-gc.dat similarity index 100% rename from data/quests/q101-ext-gc.dat rename to data/quests/gc/q101-ext-gc.dat diff --git a/data/quests/q103-ext-gc.bin b/data/quests/gc/q103-ext-gc.bin similarity index 100% rename from data/quests/q103-ext-gc.bin rename to data/quests/gc/q103-ext-gc.bin diff --git a/data/quests/q103-ext-gc.dat b/data/quests/gc/q103-ext-gc.dat similarity index 100% rename from data/quests/q103-ext-gc.dat rename to data/quests/gc/q103-ext-gc.dat diff --git a/data/quests/q104-ext-gc.bin b/data/quests/gc/q104-ext-gc.bin similarity index 100% rename from data/quests/q104-ext-gc.bin rename to data/quests/gc/q104-ext-gc.bin diff --git a/data/quests/q104-ext-gc.dat b/data/quests/gc/q104-ext-gc.dat similarity index 100% rename from data/quests/q104-ext-gc.dat rename to data/quests/gc/q104-ext-gc.dat diff --git a/data/quests/q108-ext-gc.bin b/data/quests/gc/q108-ext-gc.bin similarity index 100% rename from data/quests/q108-ext-gc.bin rename to data/quests/gc/q108-ext-gc.bin diff --git a/data/quests/q108-ext-gc.dat b/data/quests/gc/q108-ext-gc.dat similarity index 100% rename from data/quests/q108-ext-gc.dat rename to data/quests/gc/q108-ext-gc.dat diff --git a/data/quests/q109-ext-gc.bin b/data/quests/gc/q109-ext-gc.bin similarity index 100% rename from data/quests/q109-ext-gc.bin rename to data/quests/gc/q109-ext-gc.bin diff --git a/data/quests/q109-ext-gc.dat b/data/quests/gc/q109-ext-gc.dat similarity index 100% rename from data/quests/q109-ext-gc.dat rename to data/quests/gc/q109-ext-gc.dat diff --git a/data/quests/q110-ext-gc.bin b/data/quests/gc/q110-ext-gc.bin similarity index 100% rename from data/quests/q110-ext-gc.bin rename to data/quests/gc/q110-ext-gc.bin diff --git a/data/quests/q110-ext-gc.dat b/data/quests/gc/q110-ext-gc.dat similarity index 100% rename from data/quests/q110-ext-gc.dat rename to data/quests/gc/q110-ext-gc.dat diff --git a/data/quests/q111-ext-gc.bin b/data/quests/gc/q111-ext-gc.bin similarity index 100% rename from data/quests/q111-ext-gc.bin rename to data/quests/gc/q111-ext-gc.bin diff --git a/data/quests/q111-ext-gc.dat b/data/quests/gc/q111-ext-gc.dat similarity index 100% rename from data/quests/q111-ext-gc.dat rename to data/quests/gc/q111-ext-gc.dat diff --git a/data/quests/q117-ext-gc.bin b/data/quests/gc/q117-ext-gc.bin similarity index 100% rename from data/quests/q117-ext-gc.bin rename to data/quests/gc/q117-ext-gc.bin diff --git a/data/quests/q117-ext-gc.dat b/data/quests/gc/q117-ext-gc.dat similarity index 100% rename from data/quests/q117-ext-gc.dat rename to data/quests/gc/q117-ext-gc.dat diff --git a/data/quests/q118-vr-gc.bin b/data/quests/gc/q118-vr-gc.bin similarity index 100% rename from data/quests/q118-vr-gc.bin rename to data/quests/gc/q118-vr-gc.bin diff --git a/data/quests/q118-vr-gc.dat b/data/quests/gc/q118-vr-gc.dat similarity index 100% rename from data/quests/q118-vr-gc.dat rename to data/quests/gc/q118-vr-gc.dat diff --git a/data/quests/q123-ext-gc.bin b/data/quests/gc/q123-ext-gc.bin similarity index 100% rename from data/quests/q123-ext-gc.bin rename to data/quests/gc/q123-ext-gc.bin diff --git a/data/quests/q123-ext-gc.dat b/data/quests/gc/q123-ext-gc.dat similarity index 100% rename from data/quests/q123-ext-gc.dat rename to data/quests/gc/q123-ext-gc.dat diff --git a/data/quests/q137-evt-gc.bin b/data/quests/gc/q137-evt-gc.bin similarity index 100% rename from data/quests/q137-evt-gc.bin rename to data/quests/gc/q137-evt-gc.bin diff --git a/data/quests/q137-evt-gc.dat b/data/quests/gc/q137-evt-gc.dat similarity index 100% rename from data/quests/q137-evt-gc.dat rename to data/quests/gc/q137-evt-gc.dat diff --git a/data/quests/q138-evt-gc.bin b/data/quests/gc/q138-evt-gc.bin similarity index 100% rename from data/quests/q138-evt-gc.bin rename to data/quests/gc/q138-evt-gc.bin diff --git a/data/quests/q138-evt-gc.dat b/data/quests/gc/q138-evt-gc.dat similarity index 100% rename from data/quests/q138-evt-gc.dat rename to data/quests/gc/q138-evt-gc.dat diff --git a/data/quests/q141-vr-gc.bin b/data/quests/gc/q141-vr-gc.bin similarity index 100% rename from data/quests/q141-vr-gc.bin rename to data/quests/gc/q141-vr-gc.bin diff --git a/data/quests/q141-vr-gc.dat b/data/quests/gc/q141-vr-gc.dat similarity index 100% rename from data/quests/q141-vr-gc.dat rename to data/quests/gc/q141-vr-gc.dat diff --git a/data/quests/q201-evt-gc.bin b/data/quests/gc/q201-evt-gc.bin similarity index 100% rename from data/quests/q201-evt-gc.bin rename to data/quests/gc/q201-evt-gc.bin diff --git a/data/quests/q201-evt-gc.dat b/data/quests/gc/q201-evt-gc.dat similarity index 100% rename from data/quests/q201-evt-gc.dat rename to data/quests/gc/q201-evt-gc.dat diff --git a/data/quests/q202-shp-gc.bin b/data/quests/gc/q202-shp-gc.bin similarity index 100% rename from data/quests/q202-shp-gc.bin rename to data/quests/gc/q202-shp-gc.bin diff --git a/data/quests/q202-shp-gc.dat b/data/quests/gc/q202-shp-gc.dat similarity index 100% rename from data/quests/q202-shp-gc.dat rename to data/quests/gc/q202-shp-gc.dat diff --git a/data/quests/q203-vr-gc.bin b/data/quests/gc/q203-vr-gc.bin similarity index 100% rename from data/quests/q203-vr-gc.bin rename to data/quests/gc/q203-vr-gc.bin diff --git a/data/quests/q203-vr-gc.dat b/data/quests/gc/q203-vr-gc.dat similarity index 100% rename from data/quests/q203-vr-gc.dat rename to data/quests/gc/q203-vr-gc.dat diff --git a/data/quests/q204-shp-gc.bin b/data/quests/gc/q204-shp-gc.bin similarity index 100% rename from data/quests/q204-shp-gc.bin rename to data/quests/gc/q204-shp-gc.bin diff --git a/data/quests/q204-shp-gc.dat b/data/quests/gc/q204-shp-gc.dat similarity index 100% rename from data/quests/q204-shp-gc.dat rename to data/quests/gc/q204-shp-gc.dat diff --git a/data/quests/q213-evt-gc.bin b/data/quests/gc/q213-evt-gc.bin similarity index 100% rename from data/quests/q213-evt-gc.bin rename to data/quests/gc/q213-evt-gc.bin diff --git a/data/quests/q213-evt-gc.dat b/data/quests/gc/q213-evt-gc.dat similarity index 100% rename from data/quests/q213-evt-gc.dat rename to data/quests/gc/q213-evt-gc.dat diff --git a/data/quests/q220-evt-gc.bin b/data/quests/gc/q220-evt-gc.bin similarity index 100% rename from data/quests/q220-evt-gc.bin rename to data/quests/gc/q220-evt-gc.bin diff --git a/data/quests/q220-evt-gc.dat b/data/quests/gc/q220-evt-gc.dat similarity index 100% rename from data/quests/q220-evt-gc.dat rename to data/quests/gc/q220-evt-gc.dat diff --git a/data/quests/q222-vr-gc.bin b/data/quests/gc/q222-vr-gc.bin similarity index 100% rename from data/quests/q222-vr-gc.bin rename to data/quests/gc/q222-vr-gc.bin diff --git a/data/quests/q222-vr-gc.dat b/data/quests/gc/q222-vr-gc.dat similarity index 100% rename from data/quests/q222-vr-gc.dat rename to data/quests/gc/q222-vr-gc.dat diff --git a/data/quests/q223-twr-gc.bin b/data/quests/gc/q223-twr-gc.bin similarity index 100% rename from data/quests/q223-twr-gc.bin rename to data/quests/gc/q223-twr-gc.bin diff --git a/data/quests/q223-twr-gc.dat b/data/quests/gc/q223-twr-gc.dat similarity index 100% rename from data/quests/q223-twr-gc.dat rename to data/quests/gc/q223-twr-gc.dat diff --git a/data/quests/q224-twr-gc.bin b/data/quests/gc/q224-twr-gc.bin similarity index 100% rename from data/quests/q224-twr-gc.bin rename to data/quests/gc/q224-twr-gc.bin diff --git a/data/quests/q224-twr-gc.dat b/data/quests/gc/q224-twr-gc.dat similarity index 100% rename from data/quests/q224-twr-gc.dat rename to data/quests/gc/q224-twr-gc.dat diff --git a/data/quests/q230-vr-gc.bin b/data/quests/gc/q230-vr-gc.bin similarity index 100% rename from data/quests/q230-vr-gc.bin rename to data/quests/gc/q230-vr-gc.bin diff --git a/data/quests/q230-vr-gc.dat b/data/quests/gc/q230-vr-gc.dat similarity index 100% rename from data/quests/q230-vr-gc.dat rename to data/quests/gc/q230-vr-gc.dat diff --git a/data/quests/q231-vr-gc.bin b/data/quests/gc/q231-vr-gc.bin similarity index 100% rename from data/quests/q231-vr-gc.bin rename to data/quests/gc/q231-vr-gc.bin diff --git a/data/quests/q231-vr-gc.dat b/data/quests/gc/q231-vr-gc.dat similarity index 100% rename from data/quests/q231-vr-gc.dat rename to data/quests/gc/q231-vr-gc.dat diff --git a/data/quests/q232-evt-gc.bin b/data/quests/gc/q232-evt-gc.bin similarity index 100% rename from data/quests/q232-evt-gc.bin rename to data/quests/gc/q232-evt-gc.bin diff --git a/data/quests/q232-evt-gc.dat b/data/quests/gc/q232-evt-gc.dat similarity index 100% rename from data/quests/q232-evt-gc.dat rename to data/quests/gc/q232-evt-gc.dat diff --git a/data/quests/q233-ext-gc.bin b/data/quests/gc/q233-ext-gc.bin similarity index 100% rename from data/quests/q233-ext-gc.bin rename to data/quests/gc/q233-ext-gc.bin diff --git a/data/quests/q233-ext-gc.dat b/data/quests/gc/q233-ext-gc.dat similarity index 100% rename from data/quests/q233-ext-gc.dat rename to data/quests/gc/q233-ext-gc.dat diff --git a/data/quests/q234-ext-gc.bin b/data/quests/gc/q234-ext-gc.bin similarity index 100% rename from data/quests/q234-ext-gc.bin rename to data/quests/gc/q234-ext-gc.bin diff --git a/data/quests/q234-ext-gc.dat b/data/quests/gc/q234-ext-gc.dat similarity index 100% rename from data/quests/q234-ext-gc.dat rename to data/quests/gc/q234-ext-gc.dat diff --git a/data/quests/q235-ext-gc.bin b/data/quests/gc/q235-ext-gc.bin similarity index 100% rename from data/quests/q235-ext-gc.bin rename to data/quests/gc/q235-ext-gc.bin diff --git a/data/quests/q235-ext-gc.dat b/data/quests/gc/q235-ext-gc.dat similarity index 100% rename from data/quests/q235-ext-gc.dat rename to data/quests/gc/q235-ext-gc.dat diff --git a/data/quests/q236-ext-gc.bin b/data/quests/gc/q236-ext-gc.bin similarity index 100% rename from data/quests/q236-ext-gc.bin rename to data/quests/gc/q236-ext-gc.bin diff --git a/data/quests/q236-ext-gc.dat b/data/quests/gc/q236-ext-gc.dat similarity index 100% rename from data/quests/q236-ext-gc.dat rename to data/quests/gc/q236-ext-gc.dat diff --git a/data/quests/q237-vr-gc.bin b/data/quests/gc/q237-vr-gc.bin similarity index 100% rename from data/quests/q237-vr-gc.bin rename to data/quests/gc/q237-vr-gc.bin diff --git a/data/quests/q237-vr-gc.dat b/data/quests/gc/q237-vr-gc.dat similarity index 100% rename from data/quests/q237-vr-gc.dat rename to data/quests/gc/q237-vr-gc.dat diff --git a/data/quests/q238-vr-gc.bin b/data/quests/gc/q238-vr-gc.bin similarity index 100% rename from data/quests/q238-vr-gc.bin rename to data/quests/gc/q238-vr-gc.bin diff --git a/data/quests/q238-vr-gc.dat b/data/quests/gc/q238-vr-gc.dat similarity index 100% rename from data/quests/q238-vr-gc.dat rename to data/quests/gc/q238-vr-gc.dat diff --git a/data/quests/q239-evt-gc.bin b/data/quests/gc/q239-evt-gc.bin similarity index 100% rename from data/quests/q239-evt-gc.bin rename to data/quests/gc/q239-evt-gc.bin diff --git a/data/quests/q239-evt-gc.dat b/data/quests/gc/q239-evt-gc.dat similarity index 100% rename from data/quests/q239-evt-gc.dat rename to data/quests/gc/q239-evt-gc.dat diff --git a/data/quests/q335-evt-gc.bin b/data/quests/gc/q335-evt-gc.bin similarity index 100% rename from data/quests/q335-evt-gc.bin rename to data/quests/gc/q335-evt-gc.bin diff --git a/data/quests/q335-evt-gc.dat b/data/quests/gc/q335-evt-gc.dat similarity index 100% rename from data/quests/q335-evt-gc.dat rename to data/quests/gc/q335-evt-gc.dat diff --git a/data/quests/q496-evt-gc.bin b/data/quests/gc/q496-evt-gc.bin similarity index 100% rename from data/quests/q496-evt-gc.bin rename to data/quests/gc/q496-evt-gc.bin diff --git a/data/quests/q496-evt-gc.dat b/data/quests/gc/q496-evt-gc.dat similarity index 100% rename from data/quests/q496-evt-gc.dat rename to data/quests/gc/q496-evt-gc.dat diff --git a/data/quests/q999-shp-gc.bin b/data/quests/gc/q999-shp-gc.bin similarity index 100% rename from data/quests/q999-shp-gc.bin rename to data/quests/gc/q999-shp-gc.bin diff --git a/data/quests/q999-shp-gc.dat b/data/quests/gc/q999-shp-gc.dat similarity index 100% rename from data/quests/q999-shp-gc.dat rename to data/quests/gc/q999-shp-gc.dat diff --git a/data/quests/b001-pc.bin b/data/quests/pc/b001-pc.bin similarity index 100% rename from data/quests/b001-pc.bin rename to data/quests/pc/b001-pc.bin diff --git a/data/quests/b001-pc.dat b/data/quests/pc/b001-pc.dat similarity index 100% rename from data/quests/b001-pc.dat rename to data/quests/pc/b001-pc.dat diff --git a/data/quests/b002-pc.bin b/data/quests/pc/b002-pc.bin similarity index 100% rename from data/quests/b002-pc.bin rename to data/quests/pc/b002-pc.bin diff --git a/data/quests/b002-pc.dat b/data/quests/pc/b002-pc.dat similarity index 100% rename from data/quests/b002-pc.dat rename to data/quests/pc/b002-pc.dat diff --git a/data/quests/b003-pc.bin b/data/quests/pc/b003-pc.bin similarity index 100% rename from data/quests/b003-pc.bin rename to data/quests/pc/b003-pc.bin diff --git a/data/quests/b003-pc.dat b/data/quests/pc/b003-pc.dat similarity index 100% rename from data/quests/b003-pc.dat rename to data/quests/pc/b003-pc.dat diff --git a/data/quests/b004-pc.bin b/data/quests/pc/b004-pc.bin similarity index 100% rename from data/quests/b004-pc.bin rename to data/quests/pc/b004-pc.bin diff --git a/data/quests/pc/b004-pc.dat b/data/quests/pc/b004-pc.dat new file mode 100755 index 0000000000000000000000000000000000000000..e838ab7171022b35d1fa4cc58f61e1908c9c899c GIT binary patch literal 3427 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 literal 0 HcmV?d00001 diff --git a/data/quests/b005-pc.bin b/data/quests/pc/b005-pc.bin similarity index 100% rename from data/quests/b005-pc.bin rename to data/quests/pc/b005-pc.bin diff --git a/data/quests/pc/b005-pc.dat b/data/quests/pc/b005-pc.dat new file mode 100755 index 0000000000000000000000000000000000000000..9be76bcde58157a0ace1d8ae0ed7c570589f46e8 GIT binary patch literal 2245 zcmW-idt4J&7RM(fJVHVM0Z|kP^6*(pUDR&HbquI%yLGX?#YcE`9~9-YTWdaQ?MM-= z#gBZtAGLK|9Wfw^2vhr;UJ94BJZ! z;TJ|{>UHJu6Adf`QloNuEn|LF{E35ElV}zX ze;5}BKj$hWGz)QbOdh)2ie{tPi+QO1wCvyg;#2Wbs;%^h-s4TEH8Ld%D&EV2lHJEa zqyaW$A z+;!0?ng=mt>X_!I2M_Kpd|!IZf$iHr6{HDd+^X?Yhd5B9m1-Wwq=hx6$5U%;ltbBp zyjf5so}%gJ$1JREp;T)gu5v}7RHuAYb@ zPH+(0gJOB;v-v7bYdm*y?JPu*CHiM|aVU-l$4f6|_VY-=dW0NS`cQ)@zO`$;CQ>^d zDZ@$&9TJ-ZrKEB2z`Osj>8xusU(E&;JEGLA;;R#=GN~>BCERl#P=O?y+wC(z3nJaQRa}PZUI`rgSkFXo#fLkMjKg(xZ2A68I`qO&yYN9A8MaZJXG#a?PS|S zs3!_y)tJ6@xbgwE@o{4V(-uozZk5JY-+hdAn-b4(U|;YdXBzS$j4CxK)dlEYQQ08s z?LkY3+sgWK4O?asT9o*lgPI#?ffAc1lOYcMTiJBZYa%{Pz>f8+ki8<&{Q6qdR7@!&(;r2i4H*;wT9dt~%cNzW9l zZrZE<&R>S%w7qfYT*ey08sLY$ev|ABFSv{ud%kWxTFX@U@1M<7M9_kQ_PxeI(jR%4 zOz^y*$`Tkq*ID0(>5N<6ZAx&dzYDct>QN!zzL9dsKT1xpOY(__5!v?5GV5In+Qh?R5LQy8e59es5#HM7d#`Bp zEo1Rd+4e229oeS~_u<#gXl=}58s}E0p8985_tvYz{R7F*WlUo{*?^H=*1Zk;p=qF; zZAz&9o`Y|{!adLESPQ()|ktkqYxOUTgR*2g6NC_|!ACmP!l9(r7vEe`ZT zicJ_#k$7qQJG(JO=Bp*=dr+ZB3-PRB^Xu>m9>STfXvr6o=m^2M;|sRC8t!ipVIr+F3H0x&+#kv z{W_}bwUYEYZ0pukO}P_{s=J-T^3Lu;4&rI{_e zT3E|M8c&+OvQ{}Zj*)RMBn{eBTT7z`Ym_V2=uSF_S`FohW!AeEr0j5t3WE3_fCvV9 literal 0 HcmV?d00001 diff --git a/data/quests/b006-pc.bin b/data/quests/pc/b006-pc.bin similarity index 100% rename from data/quests/b006-pc.bin rename to data/quests/pc/b006-pc.bin diff --git a/data/quests/pc/b006-pc.dat b/data/quests/pc/b006-pc.dat new file mode 100755 index 0000000000000000000000000000000000000000..a9c6bb0e2385754c414158cb3ab7e7c8490e582a GIT binary patch literal 956 zcmW+zT})eL7(Q)b(jI==fMEvBnzUP%;RQ>HBy-@gGj11}OcR$yUDiQoW`x1bSf>}3 zfrJZ5I?W`}WY&Zg799U8u6=<+f7mi0A)098tUJN)w8+X@=t_GyeS7@y?#=f;KkxH= zK^3F4>hyViOYY;`H!mkWFZ6B?pUfFc63R?0z~mH`TUMT^8Rr{}sI<&63VTNS`dbl? z-T_O~W=d_e&Wgrd@=Z6Eb_%FdpH_6PclzMF+{8F+iRcQopLcAl-Bw;^zcd#Fu81kI ze%h(LnriEV>$!=)VMN4nC3oz3L2^4(ywaw4Bt3O%pkl&@A$i0LgqO9}u)GrBWdrXh z7m(#vV6i!qg1f#4azVLr!lkg~woLWu^RU?ymPh00@{JA_J_&mA1;y);F78M6Qcrf` z35HFhQTG!?48a-y=9N1e0O;3%-;jiWC(~(6uO^yDVTObCRIH6)N`bz8jY9nG};W ztRq|FewSc)38v|yexcYwP`_`mpt&}{%T;yn_rxC6-*d*a@bqx5DD8|LFt+O9Mhn~r z_QGvRDT9xyl!tGnja=G5%VC`z1n0c)qJY}tB1UN%lW>ioF9Kz>(R79l{i3=OW0LzR zmcQLXa26^bQ*c1UJ#4CfDzp)WHlI<@`aalRXfO(+~qu~iOvaV=EevHJL?)!e%-V3ql|A}+1%_Y&NM#-NC9$Y5{AC zYxoVVe^7e11R?4f`sua*Kexs?ACi+x5Ozyis2$T#B%Llju#>gNi&x``=>SQj0#S~y zu#rmUCc)_l%0RG4SSlM5gjAo!POt=+Z0GM6lbxxr9-#unKNtm zAH|U@Mj}l?Az^Y&RqR4@W^;+sX!2TP!RE}$vp9B8pIYOg f{@virBsA`bXj6C0JC^ZBD?ej8(o8t4V3_{^4y#D( literal 0 HcmV?d00001 diff --git a/data/quests/b007-pc.bin b/data/quests/pc/b007-pc.bin similarity index 100% rename from data/quests/b007-pc.bin rename to data/quests/pc/b007-pc.bin diff --git a/data/quests/pc/b007-pc.dat b/data/quests/pc/b007-pc.dat new file mode 100755 index 0000000000000000000000000000000000000000..0e78972b1bcf8a35eae27a6a20854b0716652678 GIT binary patch literal 3753 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 w-Gg@HMSI{3E+=}=%0AjnRpn_t4|EU5jF^j*uPAu?!X?5Pf4xlY4JC;G1Do7u{r~^~ literal 0 HcmV?d00001 diff --git a/data/quests/b008-pc.bin b/data/quests/pc/b008-pc.bin similarity index 100% rename from data/quests/b008-pc.bin rename to data/quests/pc/b008-pc.bin diff --git a/data/quests/pc/b008-pc.dat b/data/quests/pc/b008-pc.dat new file mode 100755 index 0000000000000000000000000000000000000000..4a559194018f9cb10a62e454e6a446a38dfe91d9 GIT binary patch literal 5911 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 literal 0 HcmV?d00001 diff --git a/data/quests/c101-pc.bin b/data/quests/pc/c101-pc.bin similarity index 100% rename from data/quests/c101-pc.bin rename to data/quests/pc/c101-pc.bin diff --git a/data/quests/c101-pc.dat b/data/quests/pc/c101-pc.dat similarity index 100% rename from data/quests/c101-pc.dat rename to data/quests/pc/c101-pc.dat diff --git a/data/quests/c102-pc.bin b/data/quests/pc/c102-pc.bin similarity index 100% rename from data/quests/c102-pc.bin rename to data/quests/pc/c102-pc.bin diff --git a/data/quests/c102-pc.dat b/data/quests/pc/c102-pc.dat similarity index 100% rename from data/quests/c102-pc.dat rename to data/quests/pc/c102-pc.dat diff --git a/data/quests/c103-pc.bin b/data/quests/pc/c103-pc.bin similarity index 100% rename from data/quests/c103-pc.bin rename to data/quests/pc/c103-pc.bin diff --git a/data/quests/c103-pc.dat b/data/quests/pc/c103-pc.dat similarity index 100% rename from data/quests/c103-pc.dat rename to data/quests/pc/c103-pc.dat diff --git a/data/quests/c104-pc.bin b/data/quests/pc/c104-pc.bin similarity index 100% rename from data/quests/c104-pc.bin rename to data/quests/pc/c104-pc.bin diff --git a/data/quests/c104-pc.dat b/data/quests/pc/c104-pc.dat similarity index 100% rename from data/quests/c104-pc.dat rename to data/quests/pc/c104-pc.dat diff --git a/data/quests/c105-pc.bin b/data/quests/pc/c105-pc.bin similarity index 100% rename from data/quests/c105-pc.bin rename to data/quests/pc/c105-pc.bin diff --git a/data/quests/c105-pc.dat b/data/quests/pc/c105-pc.dat similarity index 100% rename from data/quests/c105-pc.dat rename to data/quests/pc/c105-pc.dat diff --git a/data/quests/c106-pc.bin b/data/quests/pc/c106-pc.bin similarity index 100% rename from data/quests/c106-pc.bin rename to data/quests/pc/c106-pc.bin diff --git a/data/quests/c106-pc.dat b/data/quests/pc/c106-pc.dat similarity index 100% rename from data/quests/c106-pc.dat rename to data/quests/pc/c106-pc.dat diff --git a/data/quests/c107-pc.bin b/data/quests/pc/c107-pc.bin similarity index 100% rename from data/quests/c107-pc.bin rename to data/quests/pc/c107-pc.bin diff --git a/data/quests/c107-pc.dat b/data/quests/pc/c107-pc.dat similarity index 100% rename from data/quests/c107-pc.dat rename to data/quests/pc/c107-pc.dat diff --git a/data/quests/c108-pc.bin b/data/quests/pc/c108-pc.bin similarity index 100% rename from data/quests/c108-pc.bin rename to data/quests/pc/c108-pc.bin diff --git a/data/quests/c108-pc.dat b/data/quests/pc/c108-pc.dat similarity index 100% rename from data/quests/c108-pc.dat rename to data/quests/pc/c108-pc.dat diff --git a/data/quests/c109-pc.bin b/data/quests/pc/c109-pc.bin similarity index 100% rename from data/quests/c109-pc.bin rename to data/quests/pc/c109-pc.bin diff --git a/data/quests/c109-pc.dat b/data/quests/pc/c109-pc.dat similarity index 100% rename from data/quests/c109-pc.dat rename to data/quests/pc/c109-pc.dat diff --git a/data/quests/q058-ret-pc.bin b/data/quests/pc/q058-ret-pc.bin similarity index 100% rename from data/quests/q058-ret-pc.bin rename to data/quests/pc/q058-ret-pc.bin diff --git a/data/quests/q058-ret-pc.dat b/data/quests/pc/q058-ret-pc.dat similarity index 100% rename from data/quests/q058-ret-pc.dat rename to data/quests/pc/q058-ret-pc.dat diff --git a/data/quests/q059-ret-pc.bin b/data/quests/pc/q059-ret-pc.bin similarity index 100% rename from data/quests/q059-ret-pc.bin rename to data/quests/pc/q059-ret-pc.bin diff --git a/data/quests/q059-ret-pc.dat b/data/quests/pc/q059-ret-pc.dat similarity index 100% rename from data/quests/q059-ret-pc.dat rename to data/quests/pc/q059-ret-pc.dat diff --git a/data/quests/q060-ret-pc.bin b/data/quests/pc/q060-ret-pc.bin similarity index 100% rename from data/quests/q060-ret-pc.bin rename to data/quests/pc/q060-ret-pc.bin diff --git a/data/quests/q060-ret-pc.dat b/data/quests/pc/q060-ret-pc.dat similarity index 100% rename from data/quests/q060-ret-pc.dat rename to data/quests/pc/q060-ret-pc.dat diff --git a/data/quests/q068-ret-pc.bin b/data/quests/pc/q068-ret-pc.bin similarity index 100% rename from data/quests/q068-ret-pc.bin rename to data/quests/pc/q068-ret-pc.bin diff --git a/data/quests/q068-ret-pc.dat b/data/quests/pc/q068-ret-pc.dat similarity index 100% rename from data/quests/q068-ret-pc.dat rename to data/quests/pc/q068-ret-pc.dat diff --git a/data/quests/q073-evt-pc.bin b/data/quests/pc/q073-evt-pc.bin similarity index 100% rename from data/quests/q073-evt-pc.bin rename to data/quests/pc/q073-evt-pc.bin diff --git a/data/quests/q073-evt-pc.dat b/data/quests/pc/q073-evt-pc.dat similarity index 100% rename from data/quests/q073-evt-pc.dat rename to data/quests/pc/q073-evt-pc.dat diff --git a/data/quests/q095-evt-pc.bin b/data/quests/pc/q095-evt-pc.bin similarity index 100% rename from data/quests/q095-evt-pc.bin rename to data/quests/pc/q095-evt-pc.bin diff --git a/data/quests/q095-evt-pc.dat b/data/quests/pc/q095-evt-pc.dat similarity index 100% rename from data/quests/q095-evt-pc.dat rename to data/quests/pc/q095-evt-pc.dat diff --git a/data/quests/q096-evt-pc.bin b/data/quests/pc/q096-evt-pc.bin similarity index 100% rename from data/quests/q096-evt-pc.bin rename to data/quests/pc/q096-evt-pc.bin diff --git a/data/quests/q096-evt-pc.dat b/data/quests/pc/q096-evt-pc.dat similarity index 100% rename from data/quests/q096-evt-pc.dat rename to data/quests/pc/q096-evt-pc.dat diff --git a/data/quests/q101-ext-pc.bin b/data/quests/pc/q101-ext-pc.bin similarity index 100% rename from data/quests/q101-ext-pc.bin rename to data/quests/pc/q101-ext-pc.bin diff --git a/data/quests/q101-ext-pc.dat b/data/quests/pc/q101-ext-pc.dat similarity index 100% rename from data/quests/q101-ext-pc.dat rename to data/quests/pc/q101-ext-pc.dat diff --git a/data/quests/q102-ext-pc.bin b/data/quests/pc/q102-ext-pc.bin similarity index 100% rename from data/quests/q102-ext-pc.bin rename to data/quests/pc/q102-ext-pc.bin diff --git a/data/quests/q102-ext-pc.dat b/data/quests/pc/q102-ext-pc.dat similarity index 100% rename from data/quests/q102-ext-pc.dat rename to data/quests/pc/q102-ext-pc.dat diff --git a/data/quests/q103-ext-pc.bin b/data/quests/pc/q103-ext-pc.bin similarity index 100% rename from data/quests/q103-ext-pc.bin rename to data/quests/pc/q103-ext-pc.bin diff --git a/data/quests/q103-ext-pc.dat b/data/quests/pc/q103-ext-pc.dat similarity index 100% rename from data/quests/q103-ext-pc.dat rename to data/quests/pc/q103-ext-pc.dat diff --git a/data/quests/q104-ext-pc.bin b/data/quests/pc/q104-ext-pc.bin similarity index 100% rename from data/quests/q104-ext-pc.bin rename to data/quests/pc/q104-ext-pc.bin diff --git a/data/quests/q104-ext-pc.dat b/data/quests/pc/q104-ext-pc.dat similarity index 100% rename from data/quests/q104-ext-pc.dat rename to data/quests/pc/q104-ext-pc.dat diff --git a/data/quests/q108-ext-pc.bin b/data/quests/pc/q108-ext-pc.bin similarity index 100% rename from data/quests/q108-ext-pc.bin rename to data/quests/pc/q108-ext-pc.bin diff --git a/data/quests/q108-ext-pc.dat b/data/quests/pc/q108-ext-pc.dat similarity index 100% rename from data/quests/q108-ext-pc.dat rename to data/quests/pc/q108-ext-pc.dat diff --git a/data/quests/q109-ext-pc.bin b/data/quests/pc/q109-ext-pc.bin similarity index 100% rename from data/quests/q109-ext-pc.bin rename to data/quests/pc/q109-ext-pc.bin diff --git a/data/quests/q109-ext-pc.dat b/data/quests/pc/q109-ext-pc.dat similarity index 100% rename from data/quests/q109-ext-pc.dat rename to data/quests/pc/q109-ext-pc.dat diff --git a/data/quests/q110-ext-pc.bin b/data/quests/pc/q110-ext-pc.bin similarity index 100% rename from data/quests/q110-ext-pc.bin rename to data/quests/pc/q110-ext-pc.bin diff --git a/data/quests/q110-ext-pc.dat b/data/quests/pc/q110-ext-pc.dat similarity index 100% rename from data/quests/q110-ext-pc.dat rename to data/quests/pc/q110-ext-pc.dat diff --git a/data/quests/q111-ext-pc.bin b/data/quests/pc/q111-ext-pc.bin similarity index 100% rename from data/quests/q111-ext-pc.bin rename to data/quests/pc/q111-ext-pc.bin diff --git a/data/quests/q111-ext-pc.dat b/data/quests/pc/q111-ext-pc.dat similarity index 100% rename from data/quests/q111-ext-pc.dat rename to data/quests/pc/q111-ext-pc.dat diff --git a/data/quests/q117-ext-pc.bin b/data/quests/pc/q117-ext-pc.bin similarity index 100% rename from data/quests/q117-ext-pc.bin rename to data/quests/pc/q117-ext-pc.bin diff --git a/data/quests/q117-ext-pc.dat b/data/quests/pc/q117-ext-pc.dat similarity index 100% rename from data/quests/q117-ext-pc.dat rename to data/quests/pc/q117-ext-pc.dat diff --git a/data/quests/q118-vr-pc.bin b/data/quests/pc/q118-vr-pc.bin similarity index 100% rename from data/quests/q118-vr-pc.bin rename to data/quests/pc/q118-vr-pc.bin diff --git a/data/quests/q118-vr-pc.dat b/data/quests/pc/q118-vr-pc.dat similarity index 100% rename from data/quests/q118-vr-pc.dat rename to data/quests/pc/q118-vr-pc.dat diff --git a/data/quests/q137-evt-pc.bin b/data/quests/pc/q137-evt-pc.bin similarity index 100% rename from data/quests/q137-evt-pc.bin rename to data/quests/pc/q137-evt-pc.bin diff --git a/data/quests/q137-evt-pc.dat b/data/quests/pc/q137-evt-pc.dat similarity index 100% rename from data/quests/q137-evt-pc.dat rename to data/quests/pc/q137-evt-pc.dat diff --git a/data/quests/q138-evt-pc.bin b/data/quests/pc/q138-evt-pc.bin similarity index 100% rename from data/quests/q138-evt-pc.bin rename to data/quests/pc/q138-evt-pc.bin diff --git a/data/quests/q138-evt-pc.dat b/data/quests/pc/q138-evt-pc.dat similarity index 100% rename from data/quests/q138-evt-pc.dat rename to data/quests/pc/q138-evt-pc.dat diff --git a/data/quests/q140-evt-pc.bin b/data/quests/pc/q140-evt-pc.bin similarity index 100% rename from data/quests/q140-evt-pc.bin rename to data/quests/pc/q140-evt-pc.bin diff --git a/data/quests/q140-evt-pc.dat b/data/quests/pc/q140-evt-pc.dat similarity index 100% rename from data/quests/q140-evt-pc.dat rename to data/quests/pc/q140-evt-pc.dat diff --git a/src/ship/packet/handler/quest.rs b/src/ship/packet/handler/quest.rs index 550df18..c1c3f9f 100644 --- a/src/ship/packet/handler/quest.rs +++ b/src/ship/packet/handler/quest.rs @@ -2,7 +2,6 @@ use std::io::{Cursor, Read, Seek, SeekFrom}; use libpso::packet::ship::*; use crate::common::serverstate::ClientId; use crate::ship::ship::{SendShipPacket, ShipError, Clients, Rooms}; -use crate::ship::quests::QuestList; use crate::ship::location::{ClientLocation, ClientLocationError}; use crate::ship::packet::builder::quest; use libpso::util::array_to_utf8; @@ -37,24 +36,39 @@ fn parse_filename(filename_bytes: &[u8; 16]) -> Result<(u16, u16, QuestFileType) } -pub fn send_quest_category_list(id: ClientId, quests: &QuestList) -> Result + Send>, ShipError> { - let qcl = quest::quest_category_list(quests); +pub fn send_quest_category_list(id: ClientId, rql: &RequestQuestList, client_location: &ClientLocation, rooms: &mut Rooms) -> Result + Send>, ShipError> { + let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?; + let room = rooms.get_mut(room_id.0) + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?.as_mut() + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?; + let qcl = quest::quest_category_list(&room.quests[rql.flag.clamp(0, (room.quests.len() - 1) as u32) as usize]); + room.set_quest_group(rql.flag as usize); Ok(Box::new(vec![(id, SendShipPacket::QuestCategoryList(qcl))].into_iter())) } -pub fn select_quest_category(id: ClientId, menuselect: &MenuSelect, quests: &QuestList) -> Result + Send>, ShipError> { - let (_, category_quests) = quests.iter() +pub fn select_quest_category(id: ClientId, menuselect: &MenuSelect, client_location: &ClientLocation, rooms: &mut Rooms) -> Result + Send>, ShipError> { + let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?; + let room = rooms.get_mut(room_id.0) + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?.as_mut() + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?; + let (_, category_quests) = room.quests[room.quest_group.value()].iter() .nth(menuselect.item as usize) .ok_or(ShipError::InvalidQuestCategory(menuselect.item))?; let ql = quest::quest_list(menuselect.item, category_quests); - + for q in ql.quests.clone() { + println!("name: {:?} quest_id: {}", q.name, q.quest_id); + } Ok(Box::new(vec![(id, SendShipPacket::QuestOptionList(ql))].into_iter())) } -pub fn quest_detail(id: ClientId, questdetailrequest: &QuestDetailRequest, quests: &QuestList) -> Result + Send>, ShipError> { - let (_, category_quests) = quests.iter() +pub fn quest_detail(id: ClientId, questdetailrequest: &QuestDetailRequest, client_location: &ClientLocation, rooms: &mut Rooms) -> Result + Send>, ShipError> { + let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?; + let room = rooms.get_mut(room_id.0) + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?.as_mut() + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?; + let (_, category_quests) = room.quests[room.quest_group.value()].iter() .nth(questdetailrequest.category as usize) .ok_or(ShipError::InvalidQuestCategory(questdetailrequest.category as u32))?; @@ -68,9 +82,13 @@ pub fn quest_detail(id: ClientId, questdetailrequest: &QuestDetailRequest, quest Ok(Box::new(vec![(id, SendShipPacket::QuestDetail(qd))].into_iter())) } -pub fn player_chose_quest(id: ClientId, questmenuselect: &QuestMenuSelect, quests: &QuestList, clients: &mut Clients, client_location: &ClientLocation, rooms: &mut Rooms) +pub fn player_chose_quest(id: ClientId, questmenuselect: &QuestMenuSelect, clients: &mut Clients, client_location: &ClientLocation, rooms: &mut Rooms) -> Result + Send>, ShipError> { - let (_, category_quests) = quests.iter() + let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?; + let room = rooms.get_mut(room_id.0) + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?.as_mut() + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?; + let (_, category_quests) = room.quests[room.quest_group.value()].iter() .nth(questmenuselect.category as usize) .ok_or(ShipError::InvalidQuestCategory(questmenuselect.category as u32))?; @@ -79,10 +97,6 @@ pub fn player_chose_quest(id: ClientId, questmenuselect: &QuestMenuSelect, quest q.id == questmenuselect.quest as u16 }).ok_or(ShipError::InvalidQuest(questmenuselect.quest as u32))?; - let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?; - let room = rooms.get_mut(room_id.0) - .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?.as_mut() - .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?; room.maps.set_quest_data(quest.enemies.clone(), quest.objects.clone(), &room.rare_monster_table); room.map_areas = quest.map_areas.clone(); @@ -100,9 +114,14 @@ pub fn player_chose_quest(id: ClientId, questmenuselect: &QuestMenuSelect, quest }))) } -pub fn quest_file_request(id: ClientId, quest_file_request: &QuestFileRequest, quests: &QuestList) -> Result + Send>, ShipError> { +pub fn quest_file_request(id: ClientId, quest_file_request: &QuestFileRequest, client_location: &ClientLocation, rooms: &mut Rooms) -> Result + Send>, ShipError> { + let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?; + let room = rooms.get_mut(room_id.0) + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?.as_mut() + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?; + let (category_id, quest_id, datatype) = parse_filename(&quest_file_request.filename)?; - let (_, category_quests) = quests.iter() + let (_, category_quests) = room.quests[room.quest_group.value()].iter() .nth(category_id as usize) .ok_or(ShipError::InvalidQuestCategory(category_id as u32))?; @@ -124,9 +143,14 @@ pub fn quest_file_request(id: ClientId, quest_file_request: &QuestFileRequest, q Ok(Box::new(vec![(id, SendShipPacket::QuestChunk(qc))].into_iter())) } -pub fn quest_chunk_ack(id: ClientId, quest_chunk_ack: &QuestChunkAck, quests: &QuestList) -> Result + Send>, ShipError> { +pub fn quest_chunk_ack(id: ClientId, quest_chunk_ack: &QuestChunkAck, client_location: &ClientLocation, rooms: &mut Rooms) -> Result + Send>, ShipError> { + let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?; + let room = rooms.get_mut(room_id.0) + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?.as_mut() + .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?; + let (category_id, quest_id, datatype) = parse_filename(&quest_chunk_ack.filename)?; - let (_, category_quests) = quests.iter() + let (_, category_quests) = room.quests[room.quest_group.value()].iter() .nth(category_id as usize) .ok_or(ShipError::InvalidQuestCategory(category_id as u32))?; diff --git a/src/ship/quests.rs b/src/ship/quests.rs index 3b430ba..b326890 100644 --- a/src/ship/quests.rs +++ b/src/ship/quests.rs @@ -208,13 +208,12 @@ impl Quest { // QuestCollection pub type QuestList = BTreeMap>; -pub fn load_quest(bin_path: PathBuf, dat_path: PathBuf) -> Option { - let dat_file = File::open(PathBuf::from("data/quests/").join(dat_path.clone())) +pub fn load_quest(bin_path: PathBuf, dat_path: PathBuf, quest_path: PathBuf) -> Option { + let dat_file = File::open(quest_path.join(dat_path.clone())) .map_err(|err| { warn!("could not load quest file {:?}: {:?}", dat_path, err) }).ok()?; - //let bin_file = File::open(format!("data/quests/{}", bin_path)) - let bin_file = File::open(PathBuf::from("data/quests/").join(bin_path.clone())) + let bin_file = File::open(quest_path.join(bin_path.clone())) .map_err(|err| { warn!("could not load quest file {:?}: {:?}", bin_path, err) }).ok()?; @@ -233,11 +232,11 @@ pub fn load_quest(bin_path: PathBuf, dat_path: PathBuf) -> Option { } -pub fn load_quests(quest_path: PathBuf) -> Result { - let mut f = File::open(quest_path).map_err(|_| QuestLoadError::CouldNotLoadConfigFile)?; +pub fn load_quests(quest_path: &mut PathBuf) -> Result { + let mut f = File::open(quest_path.clone()).map_err(|_| QuestLoadError::CouldNotLoadConfigFile)?; let mut s = String::new(); f.read_to_string(&mut s)?; - + quest_path.pop(); // remove quests.toml from the path let mut used_quest_ids = BTreeSet::new(); let ql: BTreeMap = toml::from_str(s.as_str()).map_err(|_| QuestLoadError::CouldNotLoadConfigFile)?; @@ -245,7 +244,7 @@ pub fn load_quests(quest_path: PathBuf) -> Result { let quests = category_details.quests .into_iter() .filter_map(|quest| { - load_quest(quest.bin.into(), quest.dat.into()) + load_quest(quest.bin.into(), quest.dat.into(), quest_path.to_path_buf()) .and_then(|quest | { if used_quest_ids.contains(&quest.id) { warn!("quest id already exists: {}", quest.id); @@ -278,7 +277,7 @@ mod test { // one of the other maps to be a second tower #[test] fn test_quest_with_remapped_floors() { - let pw4 = load_quest("q236-ext-bb.bin".into(), "q236-ext-bb.dat".into()).unwrap(); + let pw4 = load_quest("q236-ext-bb.bin".into(), "q236-ext-bb.dat".into(), "data/quests/bb/ep2/multi".into()).unwrap(); let enemies_not_in_tower = pw4.enemies.iter() .filter(|enemy| { enemy.is_some() diff --git a/src/ship/room.rs b/src/ship/room.rs index bd142b7..0ed4421 100644 --- a/src/ship/room.rs +++ b/src/ship/room.rs @@ -10,6 +10,9 @@ use crate::entity::character::SectionID; use crate::ship::monster::{load_monster_stats_table, MonsterType, MonsterStats}; use crate::ship::map::area::MapAreaLookup; use crate::ship::map::enemy::RareMonsterAppearTable; +use crate::ship::quests; +use std::path::PathBuf; + #[derive(Debug, Error)] #[error("")] @@ -18,6 +21,7 @@ pub enum RoomCreationError { InvalidEpisode(u8), InvalidDifficulty(u8), CouldNotLoadMonsterStats(RoomMode), + CouldNotLoadQuests, } #[derive(Debug, Copy, Clone, derive_more::Display)] @@ -97,19 +101,23 @@ impl From for u8 { } } -#[derive(Debug, Copy, Clone)] +#[derive(Debug, Copy, Clone, derive_more::Display)] pub enum RoomMode { + #[display(fmt="single")] Single { episode: Episode, difficulty: Difficulty, }, + #[display(fmt="multi")] Multi { episode: Episode, difficulty: Difficulty, }, + #[display(fmt="challenge")] Challenge { episode: Episode, }, + #[display(fmt="battle")] Battle { episode: Episode, difficulty: Difficulty, @@ -157,7 +165,29 @@ impl RoomMode { } } } +pub enum QuestCategoryType { + Standard, + Government, +} +impl From for QuestCategoryType { + fn from(f: usize) -> QuestCategoryType { + match f { + 0 => QuestCategoryType::Standard, + 1 => QuestCategoryType::Government, + _ => QuestCategoryType::Standard, // TODO: panic? + } + } +} + +impl QuestCategoryType { + pub fn value(&self) -> usize { + match self { + QuestCategoryType::Standard => 0, + QuestCategoryType::Government => 1, + } + } +} pub struct RoomState { pub mode: RoomMode, @@ -171,6 +201,8 @@ pub struct RoomState { pub monster_stats: Box>, pub map_areas: MapAreaLookup, pub rare_monster_table: Box, + pub quest_group: QuestCategoryType, + pub quests: Vec, // items on ground // enemy info } @@ -206,6 +238,10 @@ impl RoomState { difficulty + 0x22 } + pub fn set_quest_group(&mut self, group: usize) { + self.quest_group = QuestCategoryType::from(group); + } + pub fn from_create_room(create_room: &libpso::packet::ship::CreateRoom, section_id: SectionID) -> Result { if [create_room.battle, create_room.challenge, create_room.single_player].iter().sum::() > 1 { return Err(RoomCreationError::InvalidMode) @@ -237,6 +273,35 @@ impl RoomState { let rare_monster_table = RareMonsterAppearTable::new(room_mode.episode()); + // push the usual set of quests for the selected mode + let mut qpath = PathBuf::from("data/quests/bb"); + qpath.push(room_mode.episode().to_string()); + qpath.push(room_mode.to_string()); + qpath.push("quests.toml"); + let mut room_quests = Vec::new(); + let quest_list = match quests::load_quests(&mut qpath) { + Ok(qlist) => qlist, + Err(_) => return Err(RoomCreationError::CouldNotLoadQuests), + }; + + room_quests.push(quest_list); + + // if multiplayer also push the government quests + if let RoomMode::Multi {..} = room_mode { + qpath = PathBuf::from("data/quests/bb/"); + qpath.push(room_mode.episode().to_string()); + qpath.push("government/quests.toml"); + + let quest_list = match quests::load_quests(&mut qpath) { + Ok(qlist) => qlist, + Err(_) => return Err(RoomCreationError::CouldNotLoadQuests), + }; + + room_quests.push(quest_list); + } + + + Ok(RoomState { monster_stats: Box::new(load_monster_stats_table(&room_mode).map_err(|_| RoomCreationError::CouldNotLoadMonsterStats(room_mode))?), mode: room_mode, @@ -249,6 +314,8 @@ impl RoomState { drop_table: Box::new(DropTable::new(room_mode.episode(), room_mode.difficulty(), section_id)), bursting: false, map_areas: MapAreaLookup::new(&room_mode.episode()), + quest_group: QuestCategoryType::Standard, + quests: room_quests, }) } } diff --git a/src/ship/ship.rs b/src/ship/ship.rs index d784677..ae0fd08 100644 --- a/src/ship/ship.rs +++ b/src/ship/ship.rs @@ -29,7 +29,6 @@ use crate::ship::location::{ClientLocation, RoomLobby, MAX_ROOMS, ClientLocation use crate::ship::items; use crate::ship::room; -use crate::ship::quests; use crate::ship::map::{MapsError, MapAreaError, MapArea}; use crate::ship::packet::handler; use crate::ship::shops::{WeaponShop, ToolShop, ArmorShop, WeaponShopItem, ToolShopItem, ArmorShopItem}; @@ -401,7 +400,6 @@ impl ShipServerStateBuilder { level_table: CharacterLevelTable::default(), name: self.name.unwrap_or_else(|| "NAMENOTSET".into()), item_manager: items::ItemManager::default(), - quests: quests::load_quests("data/quests.toml".into()).unwrap(), ip: self.ip.unwrap_or_else(|| Ipv4Addr::new(127,0,0,1)), port: self.port.unwrap_or(SHIP_PORT), shops: Box::new(ItemShops::default()), @@ -446,7 +444,6 @@ pub struct ShipServerState { level_table: CharacterLevelTable, name: String, item_manager: items::ItemManager, - quests: quests::QuestList, shops: Box, pub blocks: Blocks, @@ -607,8 +604,9 @@ impl ServerState for ShipServerState { .await?.into_iter().map(move |pkt| (id, pkt))) }, RecvShipPacket::QuestDetailRequest(questdetailrequest) => { + let block = self.blocks.with_client(id, &self.clients)?; match questdetailrequest.menu { - QUEST_SELECT_MENU_ID => handler::quest::quest_detail(id, questdetailrequest, &self.quests)?, + QUEST_SELECT_MENU_ID => handler::quest::quest_detail(id, questdetailrequest, &block.client_location, &mut block.rooms)?, _ => unreachable!(), } }, @@ -626,13 +624,13 @@ impl ServerState for ShipServerState { Box::new(leave_lobby.chain(select_block)) } ROOM_MENU_ID => handler::room::join_room(id, menuselect, &mut block.client_location, &mut self.clients, &mut self.item_manager, &self.level_table, &mut block.rooms)?, - QUEST_CATEGORY_MENU_ID => handler::quest::select_quest_category(id, menuselect, &self.quests)?, + QUEST_CATEGORY_MENU_ID => handler::quest::select_quest_category(id, menuselect, &block.client_location, &mut block.rooms)?, _ => unreachable!(), } }, RecvShipPacket::QuestMenuSelect(questmenuselect) => { let block = self.blocks.with_client(id, &self.clients)?; - handler::quest::player_chose_quest(id, questmenuselect, &self.quests, &mut self.clients, &block.client_location, &mut block.rooms)? + handler::quest::player_chose_quest(id, questmenuselect, &mut self.clients, &block.client_location, &mut block.rooms)? }, RecvShipPacket::MenuDetail(_menudetail) => { //unreachable!(); @@ -709,14 +707,17 @@ impl ServerState for ShipServerState { let block = self.blocks.with_client(id, &self.clients)?; Box::new(handler::lobby::change_lobby(id, pkt.lobby, &mut block.client_location, &self.clients, &mut self.item_manager, &self.level_table, &mut block.rooms, &mut self.entity_gateway).await?.into_iter()) }, - RecvShipPacket::RequestQuestList(_) => { - handler::quest::send_quest_category_list(id, &self.quests)? + RecvShipPacket::RequestQuestList(rql) => { + let block = self.blocks.with_client(id, &self.clients)?; + handler::quest::send_quest_category_list(id, rql, &block.client_location, &mut block.rooms)? }, RecvShipPacket::QuestFileRequest(quest_file_request) => { - handler::quest::quest_file_request(id, quest_file_request, &self.quests)? + let block = self.blocks.with_client(id, &self.clients)?; + handler::quest::quest_file_request(id, quest_file_request, &block.client_location, &mut block.rooms)? }, RecvShipPacket::QuestChunkAck(quest_chunk_ack) => { - handler::quest::quest_chunk_ack(id, quest_chunk_ack, &self.quests)? + let block = self.blocks.with_client(id, &self.clients)?; + handler::quest::quest_chunk_ack(id, quest_chunk_ack, &block.client_location, &mut block.rooms)? }, RecvShipPacket::DoneLoadingQuest(_) => { let block = self.blocks.with_client(id, &self.clients)?; diff --git a/tests/test_rooms.rs b/tests/test_rooms.rs index 70dbdf4..a03fdd6 100644 --- a/tests/test_rooms.rs +++ b/tests/test_rooms.rs @@ -114,4 +114,46 @@ async fn test_load_rare_monster_default_appear_rates() { for (_monster, rate) in rates.clone().appear_rate { assert_eq!(rate, 0.001953125f32); // 1/512 = 0.001953125 } +} + +#[async_std::test] +async fn test_set_valid_quest_group() { + let mut entity_gateway = InMemoryGateway::default(); + let (_user1, _char1) = new_user_character(&mut entity_gateway, "a1", "a").await; + let mut ship = Box::new(ShipServerState::builder() + .gateway(entity_gateway.clone()) + .build()); + log_in_char(&mut ship, ClientId(1), "a1", "a").await; + join_lobby(&mut ship, ClientId(1)).await; + create_room(&mut ship, ClientId(1), "room", "").await; + + let packets = ship.handle(ClientId(1), &RecvShipPacket::RequestQuestList(RequestQuestList{flag: 0})).await.unwrap().collect::>(); + match &packets[0].1 { + SendShipPacket::QuestCategoryList(quest_cat) => { + assert!(String::from_utf16_lossy(&quest_cat.quest_categories[0].name).starts_with("Retrieval")); + }, + _ => panic!("Wrong quest category"), + } +} + +#[async_std::test] +async fn test_set_invalid_quest_group() { + let mut entity_gateway = InMemoryGateway::default(); + let (_user1, _char1) = new_user_character(&mut entity_gateway, "a1", "a").await; + let mut ship = Box::new(ShipServerState::builder() + .gateway(entity_gateway.clone()) + .build()); + log_in_char(&mut ship, ClientId(1), "a1", "a").await; + join_lobby(&mut ship, ClientId(1)).await; + create_room(&mut ship, ClientId(1), "room", "").await; + + let packets = ship.handle(ClientId(1), &RecvShipPacket::RequestQuestList(RequestQuestList{flag: 100})).await.unwrap().collect::>(); + match &packets[0].1 { + SendShipPacket::QuestCategoryList(quest_cat) => { + // flag > quest category length should take the highest value allowed for quest category which is 1 in multimode (for govt quests) and 0 in other modes. + // assuming we create an ep1 room in multimode, we should load the government quests in this test case + assert!(String::from_utf16_lossy(&quest_cat.quest_categories[0].name).starts_with("Government")); + }, + _ => panic!("Wrong quest category"), + } } \ No newline at end of file