diff --git a/_transformers/modimport.js b/_transformers/modimport.js index e8955ae..ad8a511 100644 --- a/_transformers/modimport.js +++ b/_transformers/modimport.js @@ -78,6 +78,7 @@ fs.writeJSONSync( ); fs.writeJSONSync(`${OUTPUT_DIR}/quests.json`, toHash(joinedMod.quests, "name")); +fs.writeJSONSync(`${OUTPUT_DIR}/events.json`, toHash(joinedMod.events, "name")); const globalDroptable = joinedMod.drops.find((drop) => drop.isGlobal); const mapDrops = joinedMod.drops.filter((drop) => drop.mapName); diff --git a/mods/BaseGameContent.rairmod b/mods/BaseGameContent.rairmod index 23fcad0..bbb4a76 100644 --- a/mods/BaseGameContent.rairmod +++ b/mods/BaseGameContent.rairmod @@ -3,7 +3,7 @@ "name": "BaseGameContent", "author": "Seiyria", "version": 1, - "savedAt": 1728226526615, + "savedAt": 1728239839444, "dependencies": [] }, "npcs": [ @@ -2148158,162 +2148158,6 @@ } } }, - { - "_id": "01917187-d8fa-777e-93ed-2bf3fad672c2", - "name": "events", - "desc": "In-game events that can spawn. ", - "yaml": "\r\n# Miscellaneous\r\nHarvest Moon:\r\n name: Harvest Moon\r\n duration: 21600\r\n cooldown: 64800\r\n rarity: legendary\r\n description: \"Harvesting is twice as profitable in the open world!\"\r\n startMessage: \"The harvest moon is rising!\"\r\n endMessage: \"The harvest moon has turned to day.\"\r\n\r\nFriendship Festival:\r\n name: Friendship Festival\r\n duration: 10800\r\n cooldown: 64800\r\n rarity: legendary\r\n description: \"Faction relationship changes are twice as effective!\"\r\n startMessage: \"The friendship festival is starting!\"\r\n endMessage: \"The friendship festival has ended.\"\r\n\r\nAvatar Spawn:\r\n name: Avatar Spawn\r\n duration: 1\r\n cooldown: 64800\r\n rarity: legendary\r\n description: \"An avatar is coming to this realm!\"\r\n startMessage: \"\"\r\n endMessage: \"\"\r\n\r\nDouble Trouble:\r\n name: Double Trouble\r\n duration: 7200\r\n cooldown: 28800\r\n rarity: rare\r\n description: \"Double trouble!\"\r\n startMessage: \"Double trouble!\"\r\n endMessage: \"The double trouble is over!\"\r\n\r\n# Rylt\r\nSaraxa Raid:\r\n name: Saraxa Raid\r\n duration: 900\r\n cooldown: 5400\r\n rarity: common\r\n description: \"Saraxa is sending some apprentices to Rylt!\"\r\n startMessage: \"Saraxa is sending some apprentices to Rylt!\"\r\n endMessage: \"Saraxa's apprentices have retreated.\"\r\n map: Rylt\r\n npc: Saraxa\r\n\r\nTonwin Raid:\r\n name: Tonwin Raid\r\n duration: 900\r\n cooldown: 5400\r\n rarity: uncommon\r\n description: \"Tonwin is sending some renegades to Rylt!\"\r\n startMessage: \"Tonwin gave a signal for the renegades to invade Rylt!\"\r\n endMessage: \"Tonwin's renegades have retreated.\"\r\n map: Rylt\r\n npc: Tonwin\r\n\r\n# Yzalt\r\nHeniz Raid:\r\n name: Heniz Raid\r\n duration: 900\r\n cooldown: 5400\r\n rarity: common\r\n description: \"The Heniz are currently raiding the Steffen town.\"\r\n startMessage: \"The Heniz have begun to raid the Steffen!\"\r\n endMessage: \"The Heniz raid on the Steffen has ended... for now.\"\r\n map: Yzalt\r\n conflicts:\r\n - Steffen Raid\r\n\r\nHeniz Crazed Plague:\r\n name: Heniz Crazed Plague\r\n duration: 1800\r\n cooldown: 5400\r\n rarity: uncommon\r\n description: \"The Heniz are having plague issues.\"\r\n startMessage: \"The plague is sweeping through the Heniz town!\"\r\n endMessage: \"The plague in the Heniz town has subsided.\"\r\n map: Yzalt\r\n npc: Ranata\r\n\r\nSteffen Raid:\r\n name: Steffen Raid\r\n duration: 900\r\n cooldown: 5400\r\n rarity: common\r\n description: \"The Steffen are currently raiding the Heniz town.\"\r\n startMessage: \"The Steffen have begun to raid the Heniz!\"\r\n endMessage: \"The Steffen raid on the Heniz has ended... for now.\"\r\n map: Yzalt\r\n conflicts:\r\n - Heniz Raid\r\n\r\nSteffen Crazed Plague:\r\n name: Steffen Crazed Plague\r\n duration: 1800\r\n cooldown: 5400\r\n rarity: uncommon\r\n description: \"The Steffen are having plague issues.\"\r\n startMessage: \"The plague is sweeping through the Steffen town!\"\r\n endMessage: \"The plague in the Steffen town has subsided.\"\r\n map: Yzalt\r\n npc: Ranata\r\n\r\n# Tower of Selen\r\nTower Guards Strike Back:\r\n name: Tower Guards Strike Back\r\n duration: 450\r\n cooldown: 5400\r\n rarity: uncommon\r\n description: \"The Tower of Selen guards have mounted an offensive to strike back!\"\r\n startMessage: \"The Tower of Selen guards are preparing to strike back against the goblinkin.\"\r\n endMessage: \"The Tower of Selen guards have temporarily retreated.\"\r\n map: TowerOfSelen\r\n\r\n# Dedlaen Maze\r\nSkeletal Assault:\r\n name: Skeletal Assault\r\n duration: 450\r\n cooldown: 5400\r\n rarity: uncommon\r\n description: \"The Dark Lord is sending his minions to assault Maze Town!\"\r\n startMessage: \"The Dark Lord is sending his minions to assault Maze Town!\"\r\n endMessage: \"The minions of darkness have retreated.\"\r\n map: DedlaenMaze\r\n npc: Dedlaen Vampire\r\n\r\n# Risan Frostlands\r\nAncient Assault:\r\n name: Ancient Assault\r\n duration: 450\r\n cooldown: 5400\r\n rarity: uncommon\r\n description: \"The Archlich is sending his ancient minions to assault the Castle!\"\r\n startMessage: \"The Archlich is sending his ancient minions to assault the Castle!\"\r\n endMessage: \"The archlich minions have retreated.\"\r\n map: Frostlands\r\n npc: Catacombs Lich\r\n\r\nBrigand Attack:\r\n name: Brigand Attack\r\n duration: 450\r\n cooldown: 5400\r\n rarity: common\r\n description: \"The brigands are attempting to raid the Castle!\"\r\n startMessage: \"The brigands are attempting to raid the Castle!\"\r\n endMessage: \"The brigands have retreated.\"\r\n map: Frostlands", - "json": { - "Harvest Moon": { - "name": "Harvest Moon", - "duration": 21600, - "cooldown": 64800, - "rarity": "legendary", - "description": "Harvesting is twice as profitable in the open world!", - "startMessage": "The harvest moon is rising!", - "endMessage": "The harvest moon has turned to day." - }, - "Friendship Festival": { - "name": "Friendship Festival", - "duration": 10800, - "cooldown": 64800, - "rarity": "legendary", - "description": "Faction relationship changes are twice as effective!", - "startMessage": "The friendship festival is starting!", - "endMessage": "The friendship festival has ended." - }, - "Avatar Spawn": { - "name": "Avatar Spawn", - "duration": 1, - "cooldown": 64800, - "rarity": "legendary", - "description": "An avatar is coming to this realm!", - "startMessage": "", - "endMessage": "" - }, - "Double Trouble": { - "name": "Double Trouble", - "duration": 7200, - "cooldown": 28800, - "rarity": "rare", - "description": "Double trouble!", - "startMessage": "Double trouble!", - "endMessage": "The double trouble is over!" - }, - "Saraxa Raid": { - "name": "Saraxa Raid", - "duration": 900, - "cooldown": 5400, - "rarity": "common", - "description": "Saraxa is sending some apprentices to Rylt!", - "startMessage": "Saraxa is sending some apprentices to Rylt!", - "endMessage": "Saraxa's apprentices have retreated.", - "map": "Rylt", - "npc": "Saraxa" - }, - "Tonwin Raid": { - "name": "Tonwin Raid", - "duration": 900, - "cooldown": 5400, - "rarity": "uncommon", - "description": "Tonwin is sending some renegades to Rylt!", - "startMessage": "Tonwin gave a signal for the renegades to invade Rylt!", - "endMessage": "Tonwin's renegades have retreated.", - "map": "Rylt", - "npc": "Tonwin" - }, - "Heniz Raid": { - "name": "Heniz Raid", - "duration": 900, - "cooldown": 5400, - "rarity": "common", - "description": "The Heniz are currently raiding the Steffen town.", - "startMessage": "The Heniz have begun to raid the Steffen!", - "endMessage": "The Heniz raid on the Steffen has ended... for now.", - "map": "Yzalt", - "conflicts": [ - "Steffen Raid" - ] - }, - "Heniz Crazed Plague": { - "name": "Heniz Crazed Plague", - "duration": 1800, - "cooldown": 5400, - "rarity": "uncommon", - "description": "The Heniz are having plague issues.", - "startMessage": "The plague is sweeping through the Heniz town!", - "endMessage": "The plague in the Heniz town has subsided.", - "map": "Yzalt", - "npc": "Ranata" - }, - "Steffen Raid": { - "name": "Steffen Raid", - "duration": 900, - "cooldown": 5400, - "rarity": "common", - "description": "The Steffen are currently raiding the Heniz town.", - "startMessage": "The Steffen have begun to raid the Heniz!", - "endMessage": "The Steffen raid on the Heniz has ended... for now.", - "map": "Yzalt", - "conflicts": [ - "Heniz Raid" - ] - }, - "Steffen Crazed Plague": { - "name": "Steffen Crazed Plague", - "duration": 1800, - "cooldown": 5400, - "rarity": "uncommon", - "description": "The Steffen are having plague issues.", - "startMessage": "The plague is sweeping through the Steffen town!", - "endMessage": "The plague in the Steffen town has subsided.", - "map": "Yzalt", - "npc": "Ranata" - }, - "Tower Guards Strike Back": { - "name": "Tower Guards Strike Back", - "duration": 450, - "cooldown": 5400, - "rarity": "uncommon", - "description": "The Tower of Selen guards have mounted an offensive to strike back!", - "startMessage": "The Tower of Selen guards are preparing to strike back against the goblinkin.", - "endMessage": "The Tower of Selen guards have temporarily retreated.", - "map": "TowerOfSelen" - }, - "Skeletal Assault": { - "name": "Skeletal Assault", - "duration": 450, - "cooldown": 5400, - "rarity": "uncommon", - "description": "The Dark Lord is sending his minions to assault Maze Town!", - "startMessage": "The Dark Lord is sending his minions to assault Maze Town!", - "endMessage": "The minions of darkness have retreated.", - "map": "DedlaenMaze", - "npc": "Dedlaen Vampire" - }, - "Ancient Assault": { - "name": "Ancient Assault", - "duration": 450, - "cooldown": 5400, - "rarity": "uncommon", - "description": "The Archlich is sending his ancient minions to assault the Castle!", - "startMessage": "The Archlich is sending his ancient minions to assault the Castle!", - "endMessage": "The archlich minions have retreated.", - "map": "Frostlands", - "npc": "Catacombs Lich" - }, - "Brigand Attack": { - "name": "Brigand Attack", - "duration": 450, - "cooldown": 5400, - "rarity": "common", - "description": "The brigands are attempting to raid the Castle!", - "startMessage": "The brigands are attempting to raid the Castle!", - "endMessage": "The brigands have retreated.", - "map": "Frostlands" - } - } - }, { "_id": "01917188-0311-777e-93ed-35b43693cb3a", "name": "fate", @@ -2210408,5 +2210252,267 @@ "shareWithParty": false } ], - "events": [] + "events": [ + { + "_id": "019262c8-7f77-7cce-9a4f-ec390e4583f8", + "cooldown": 64800, + "description": "Harvesting is twice as profitable in the open world!", + "duration": 21600, + "endMessage": "The harvest moon has turned to day.", + "name": "Harvest Moon", + "rarity": "legendary", + "startMessage": "The harvest moon is rising!", + "conflicts": [], + "extraData": {}, + "map": null, + "npc": null, + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [], + "type": "kills" + } + }, + { + "_id": "019262f1-3cf9-7fff-9b3c-d872c5ead42c", + "cooldown": 64800, + "description": "Faction relationship changes are twice as effective!", + "duration": 10800, + "endMessage": "The friendship festival has ended.", + "name": "Friendship Festival", + "rarity": "legendary", + "startMessage": "The friendship festival is starting!", + "conflicts": [], + "extraData": {}, + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "019262f1-af9c-7fff-9b3e-3ce312b702e0", + "cooldown": 64800, + "description": "An avatar is coming to this realm!", + "duration": 1, + "endMessage": "", + "name": "Avatar Spawn", + "rarity": "legendary", + "startMessage": "", + "conflicts": [], + "extraData": {}, + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "019262f2-2788-7fff-9b3f-9d3b785ea525", + "cooldown": 28800, + "description": "Double trouble!", + "duration": 7200, + "endMessage": "The double trouble is over!", + "name": "Double Trouble", + "rarity": "rare", + "startMessage": "Double trouble!", + "conflicts": [], + "extraData": {}, + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "019262f2-dfce-7fff-9b40-fff43595935e", + "cooldown": 5400, + "description": "Saraxa is sending some apprentices to Rylt!", + "duration": 900, + "endMessage": "Saraxa's apprentices have retreated.", + "name": "Saraxa Raid", + "rarity": "common", + "startMessage": "Saraxa is sending some apprentices to Rylt!", + "conflicts": [], + "extraData": {}, + "map": "Rylt", + "npc": "Saraxa", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "019262f3-60e6-7fff-9b42-5ee3839826a8", + "cooldown": 5400, + "description": "Tonwin is sending some renegades to Rylt!", + "duration": 900, + "endMessage": "Tonwin's renegades have retreated.", + "name": "Tonwin Raid", + "rarity": "uncommon", + "startMessage": "Tonwin gave a signal for the renegades to invade Rylt!", + "conflicts": [], + "extraData": {}, + "map": "Rylt", + "npc": "Tonwin", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "019262f3-ff6c-7fff-9b43-bd3320b1cc98", + "cooldown": 5400, + "description": "The Heniz are currently raiding the Steffen town.", + "duration": 900, + "endMessage": "The Heniz raid on the Steffen has ended... for now.", + "name": "Heniz Raid", + "rarity": "common", + "startMessage": "The Heniz have begun to raid the Steffen!", + "conflicts": [ + "Steffen Raid" + ], + "extraData": {}, + "map": "Yzalt", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "019262f4-8080-7fff-9b45-1a3762bc410a", + "cooldown": 5400, + "description": "The Steffen are currently raiding the Heniz town.", + "duration": 900, + "endMessage": "The Steffen raid on the Heniz has ended... for now.", + "name": "Steffen Raid", + "rarity": "common", + "startMessage": "The Steffen have begun to raid the Steffen!", + "conflicts": [ + "Heniz Raid" + ], + "extraData": {}, + "map": "Yzalt", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "01926301-86c1-7ddb-97ac-99614fc75168", + "cooldown": 5400, + "description": "The Heniz are having plague issues.", + "duration": 1800, + "endMessage": "The plague in the Heniz town has subsided.", + "name": "Heniz Crazed Plague", + "rarity": "uncommon", + "startMessage": "The plague is sweeping through the Heniz town!", + "conflicts": [], + "extraData": {}, + "map": "Yzalt", + "npc": "Ranata", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "01926302-7331-7cce-86f4-836606459f8c", + "cooldown": 3600, + "description": "The Steffen are having plague issues.", + "duration": 900, + "endMessage": "The plague in the Steffen town has subsided.", + "name": "Steffen Crazed Plague", + "rarity": "uncommon", + "startMessage": "The plague is sweeping through the Steffen town!", + "conflicts": [], + "extraData": {}, + "map": "Yzalt", + "npc": "Ranata", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "01926303-67f7-7cce-86f5-e042cdfd9d12", + "cooldown": 5400, + "description": "The Tower of Selen guards have mounted an offensive to strike back!", + "duration": 450, + "endMessage": "The Tower of Selen guards have temporarily retreated.", + "name": "Tower Guards Strike Back", + "rarity": "uncommon", + "startMessage": "The Tower of Selen guards are preparing to strike back against the goblinkin.", + "conflicts": [], + "extraData": {}, + "map": "TowerOfSelen", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "01926304-171f-7117-8664-d2c6bba1d25b", + "cooldown": 5400, + "description": "The Dark Lord is sending his minions to assault Maze Town!", + "duration": 450, + "endMessage": "The minions of darkness have retreated.", + "name": "Skeletal Assault", + "rarity": "uncommon", + "startMessage": "The Dark Lord is sending his minions to assault Maze Town!", + "conflicts": [], + "extraData": {}, + "map": "DedlaenMaze", + "npc": "Dedlaen Vampire", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "01926304-8b1b-7117-8666-3300d2a209f0", + "cooldown": 5400, + "description": "The Archlich is sending his ancient minions to assault the Castle!", + "duration": 450, + "endMessage": "The archlich minions have retreated.", + "name": "Ancient Assault", + "rarity": "uncommon", + "startMessage": "The Archlich is sending his ancient minions to assault the Castle!", + "conflicts": [], + "extraData": {}, + "map": "Frostlands", + "npc": "Catacombs Lich", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + }, + { + "_id": "01926304-fdf5-7117-8667-9042e186cce4", + "cooldown": 5400, + "description": "The brigands are attempting to raid Frosthold!", + "duration": 450, + "endMessage": "The brigands have retreated.", + "name": "Brigand Attack", + "rarity": "common", + "startMessage": "The brigands are attempting to raid Frosthold!", + "conflicts": [], + "extraData": {}, + "map": "Frostlands", + "requiresPreviousEvent": false, + "successMetrics": { + "count": 0, + "killNPCs": [] + } + } + ] }