Goals/Events #1103

Open
opened 2025-03-07 07:03:09 -08:00 by VampireKitten · 6 comments
Contributor

worldState.json utilizes Goals for any in-game events, such as Heat Fissures, Star Days, Balor Fomorians and the like. However, unlike Invasions, adding the code to the worldState doesn't seem to be enough to activate these.

Attached is the code for all the Goals I've pulled from worldState.php as I remembered to:

"Goals": [
    {
      "_id": { "$oid": "5c7cb0d00000000000000000" },
      "Activation": { "$date": { "$numberLong": "1737392400000" } },
      "Expiry": { "$date": { "$numberLong": "2000000000000" } },
      "Node": "SolNode129",
      "ScoreVar": "FissuresClosed",
      "ScoreLocTag": "/Lotus/Language/G1Quests/HeatFissuresEventScore",
      "Count": 2,
      "HealthPct": 0.02,
      "Regions": [1],
      "Desc": "/Lotus/Language/G1Quests/HeatFissuresEventName",
      "ToolTip": "/Lotus/Language/G1Quests/HeatFissuresEventDesc",
      "OptionalInMission": true,
      "Tag": "HeatFissure",
      "UpgradeIds": [{ "$oid": "678be06a422c69eb0ac1c18c" }, { "$oid": "678be06a422c69eb0ac1c18d" }],
      "Personal": true,
      "Community": true,
      "Goal": 100,
      "Reward": {
        "credits": 0,
        "xp": 0,
        "items": ["/Lotus/StoreItems/Weapons/Corpus/LongGuns/CrpBFG/Vandal/VandalCrpBFG"],
        "countedItems": []
      },
      "InterimGoals": [5, 25, 50, 75],
      "InterimRewards": [
        {
          "credits": 0,
          "xp": 0,
          "items": ["/Lotus/StoreItems/Upgrades/Skins/Clan/OrbBadgeItem"],
          "countedItems": []
        },
        {
          "credits": 0,
          "xp": 0,
          "items": ["/Lotus/StoreItems/Upgrades/Mods/DualSource/Shotgun/ShotgunMedicMod", "/Lotus/StoreItems/Upgrades/Mods/DualSource/Rifle/SerratedRushMod"],
          "countedItems": []
        },
        {
          "credits": 0,
          "xp": 0,
          "items": ["/Lotus/StoreItems/Upgrades/Mods/DualSource/Pistol/MultishotDodgeMod", "/Lotus/StoreItems/Upgrades/Mods/DualSource/Melee/CritDamageChargeSpeedMod"],
          "countedItems": []
        },
        {
          "credits": 0,
          "xp": 0,
          "items": ["/Lotus/StoreItems/Upgrades/Skins/Sigils/OrbSigil"],
          "countedItems": []
        }
      ]
    },
    {
      "_id": { "$oid": "67c8924faf8bb9628dc1c18d" },
      "Fomorian": true,
      "Activation": { "$date": { "$numberLong": "1741284514166" } },
      "Expiry": { "$date": { "$numberLong": "2000000000000" } },
      "Count": 0,
      "Goal": 1000000,
      "HealthPct": 0.980806,
      "VictimNode": "PlutoHUB",
      "Personal": true,
      "Best": true,
      "ScoreVar": "FomorianEventScore",
      "ScoreMaxTag": "FomorianEventScore",
      "ScoreTagBlocksGuildTierChanges": false,
      "Success": 0,
      "Node": "EventNode8",
      "Faction": "FC_GRINEER",
      "Desc": "/Lotus/Language/G1Quests/FomorianRevengeBattleName",
      "Icon": "/Lotus/Materials/Emblems/SlingStone2_e.png",
      "RegionDrops": ["/Lotus/Types/Items/MiscItems/OmegaIsotopePickup"],
      "ArchwingDrops": [],
      "ScoreLocTag": "/Lotus/Language/Menu/FomorianScoreHint",
      "Tag": "",
      "MissionInfo": {
        "missionType": "MT_SABOTAGE",
        "faction": "FC_GRINEER",
        "location": "EventNode8",
        "levelOverride": "/Lotus/Levels/Proc/Space/SpaceGrineerFomorianAssaultProcLevel",
        "enemySpec": "/Lotus/Types/Game/EnemySpecs/FomorianAttackSpec",
        "minEnemyLevel": 20,
        "maxEnemyLevel": 30,
        "difficulty": 1,
        "archwingRequired": true,
        "requiredItems": ["/Lotus/StoreItems/Types/Restoratives/Consumable/FomorianNegator"],
        "consumeRequiredItems": false,
        "missionReward": { "randomizedItems": "fomorianRewardManifest" },
        "vipAgent": "",
        "leadersAlwaysAllowed": true,
        "goalTag": "",
        "levelAuras": [],
        "icon": "/Lotus/Interface/Icons/Events/Fomorian.png"
      },
      "ContinuousHubEvent": {
        "Transmissions": ["/Lotus/Sounds/Dialog/HubAnnouncements/HekPropoganda"],
        "Activation": { "$date": { "$numberLong": "1741284514166" } },
        "Expiry": { "$date": { "$numberLong": "2000000000000" } },
        "RepeatInterval": 1800
      },
      "Reward": {
        "credits": 200000,
        "items": ["/Lotus/StoreItems/Types/Items/MiscItems/OrokinCatalyst"]
      }
    },
    {
      "_id": { "$oid": "67a4dcce2a198564d62e1647" },
      "Activation": { "$date": { "$numberLong": "1738868400000" } },
      "Expiry": { "$date": { "$numberLong": "2000000000000" } },
      "Count": 0,
      "Goal": 0,
      "Success": 0,
      "Personal": true,
      "Desc": "/Lotus/Language/Events/ValentinesFortunaName",
      "ToolTip": "/Lotus/Language/Events/ValentinesFortunaName",
      "Icon": "/Lotus/Interface/Icons/WorldStatePanel/ValentinesEventIcon.png",
      "Tag": "FortunaValentines",
      "Node": "SolarisUnitedHub1"
    },
    {
      "_id": { "$oid": "67a5035c2a198564d62e165e" },
      "Activation": { "$date": { "$numberLong": "1738868400000" } },
      "Community": true,
      "ClanGoal": [72, 216, 648, 1944, 5832],
      "Count": 100,
      "Desc": "/Lotus/Language/JadeShadows/JadeShadowsEventName",
      "Expiry": { "$date": { "$numberLong": "2000000000000" } },
      "Faction": "FC_MITW",
      "Goal": 0,
      "HealthPct": 1,
      "Icon": "/Lotus/Interface/Icons/WorldStatePanel/JadeShadowsEventBadge.png",
      "ScoreLocTag": "/Lotus/Language/JadeShadows/JadeShadowsEventScore",
      "Tag": "JadeShadowsEvent",
      "ToolTip": "/Lotus/Language/JadeShadows/JadeShadowsShortEventDesc",
      "MissionKeyName": "/Lotus/Types/Keys/JadeShadowsEventMission",
      "Node": "SolNode723",
      "Personal": true,
      "ItemType": "/Lotus/Types/Gameplay/JadeShadows/Resources/AscensionEventResourceItem"
    }
  ],
worldState.json utilizes Goals for any in-game events, such as Heat Fissures, Star Days, Balor Fomorians and the like. However, unlike Invasions, adding the code to the worldState doesn't seem to be enough to activate these. Attached is the code for all the Goals I've pulled from [worldState.php](https://content.warframe.com/dynamic/worldState.php) as I remembered to: ``` "Goals": [ { "_id": { "$oid": "5c7cb0d00000000000000000" }, "Activation": { "$date": { "$numberLong": "1737392400000" } }, "Expiry": { "$date": { "$numberLong": "2000000000000" } }, "Node": "SolNode129", "ScoreVar": "FissuresClosed", "ScoreLocTag": "/Lotus/Language/G1Quests/HeatFissuresEventScore", "Count": 2, "HealthPct": 0.02, "Regions": [1], "Desc": "/Lotus/Language/G1Quests/HeatFissuresEventName", "ToolTip": "/Lotus/Language/G1Quests/HeatFissuresEventDesc", "OptionalInMission": true, "Tag": "HeatFissure", "UpgradeIds": [{ "$oid": "678be06a422c69eb0ac1c18c" }, { "$oid": "678be06a422c69eb0ac1c18d" }], "Personal": true, "Community": true, "Goal": 100, "Reward": { "credits": 0, "xp": 0, "items": ["/Lotus/StoreItems/Weapons/Corpus/LongGuns/CrpBFG/Vandal/VandalCrpBFG"], "countedItems": [] }, "InterimGoals": [5, 25, 50, 75], "InterimRewards": [ { "credits": 0, "xp": 0, "items": ["/Lotus/StoreItems/Upgrades/Skins/Clan/OrbBadgeItem"], "countedItems": [] }, { "credits": 0, "xp": 0, "items": ["/Lotus/StoreItems/Upgrades/Mods/DualSource/Shotgun/ShotgunMedicMod", "/Lotus/StoreItems/Upgrades/Mods/DualSource/Rifle/SerratedRushMod"], "countedItems": [] }, { "credits": 0, "xp": 0, "items": ["/Lotus/StoreItems/Upgrades/Mods/DualSource/Pistol/MultishotDodgeMod", "/Lotus/StoreItems/Upgrades/Mods/DualSource/Melee/CritDamageChargeSpeedMod"], "countedItems": [] }, { "credits": 0, "xp": 0, "items": ["/Lotus/StoreItems/Upgrades/Skins/Sigils/OrbSigil"], "countedItems": [] } ] }, { "_id": { "$oid": "67c8924faf8bb9628dc1c18d" }, "Fomorian": true, "Activation": { "$date": { "$numberLong": "1741284514166" } }, "Expiry": { "$date": { "$numberLong": "2000000000000" } }, "Count": 0, "Goal": 1000000, "HealthPct": 0.980806, "VictimNode": "PlutoHUB", "Personal": true, "Best": true, "ScoreVar": "FomorianEventScore", "ScoreMaxTag": "FomorianEventScore", "ScoreTagBlocksGuildTierChanges": false, "Success": 0, "Node": "EventNode8", "Faction": "FC_GRINEER", "Desc": "/Lotus/Language/G1Quests/FomorianRevengeBattleName", "Icon": "/Lotus/Materials/Emblems/SlingStone2_e.png", "RegionDrops": ["/Lotus/Types/Items/MiscItems/OmegaIsotopePickup"], "ArchwingDrops": [], "ScoreLocTag": "/Lotus/Language/Menu/FomorianScoreHint", "Tag": "", "MissionInfo": { "missionType": "MT_SABOTAGE", "faction": "FC_GRINEER", "location": "EventNode8", "levelOverride": "/Lotus/Levels/Proc/Space/SpaceGrineerFomorianAssaultProcLevel", "enemySpec": "/Lotus/Types/Game/EnemySpecs/FomorianAttackSpec", "minEnemyLevel": 20, "maxEnemyLevel": 30, "difficulty": 1, "archwingRequired": true, "requiredItems": ["/Lotus/StoreItems/Types/Restoratives/Consumable/FomorianNegator"], "consumeRequiredItems": false, "missionReward": { "randomizedItems": "fomorianRewardManifest" }, "vipAgent": "", "leadersAlwaysAllowed": true, "goalTag": "", "levelAuras": [], "icon": "/Lotus/Interface/Icons/Events/Fomorian.png" }, "ContinuousHubEvent": { "Transmissions": ["/Lotus/Sounds/Dialog/HubAnnouncements/HekPropoganda"], "Activation": { "$date": { "$numberLong": "1741284514166" } }, "Expiry": { "$date": { "$numberLong": "2000000000000" } }, "RepeatInterval": 1800 }, "Reward": { "credits": 200000, "items": ["/Lotus/StoreItems/Types/Items/MiscItems/OrokinCatalyst"] } }, { "_id": { "$oid": "67a4dcce2a198564d62e1647" }, "Activation": { "$date": { "$numberLong": "1738868400000" } }, "Expiry": { "$date": { "$numberLong": "2000000000000" } }, "Count": 0, "Goal": 0, "Success": 0, "Personal": true, "Desc": "/Lotus/Language/Events/ValentinesFortunaName", "ToolTip": "/Lotus/Language/Events/ValentinesFortunaName", "Icon": "/Lotus/Interface/Icons/WorldStatePanel/ValentinesEventIcon.png", "Tag": "FortunaValentines", "Node": "SolarisUnitedHub1" }, { "_id": { "$oid": "67a5035c2a198564d62e165e" }, "Activation": { "$date": { "$numberLong": "1738868400000" } }, "Community": true, "ClanGoal": [72, 216, 648, 1944, 5832], "Count": 100, "Desc": "/Lotus/Language/JadeShadows/JadeShadowsEventName", "Expiry": { "$date": { "$numberLong": "2000000000000" } }, "Faction": "FC_MITW", "Goal": 0, "HealthPct": 1, "Icon": "/Lotus/Interface/Icons/WorldStatePanel/JadeShadowsEventBadge.png", "ScoreLocTag": "/Lotus/Language/JadeShadows/JadeShadowsEventScore", "Tag": "JadeShadowsEvent", "ToolTip": "/Lotus/Language/JadeShadows/JadeShadowsShortEventDesc", "MissionKeyName": "/Lotus/Types/Keys/JadeShadowsEventMission", "Node": "SolNode723", "Personal": true, "ItemType": "/Lotus/Types/Gameplay/JadeShadows/Resources/AscensionEventResourceItem" } ], ```
Sainan added the
unimplemented
label 2025-03-07 09:03:49 -08:00
Owner

Goals are ignored if you don't also add "Version": 10 like so:

  "Version": 10,
  "Goals": [
  ...
Goals are ignored if you don't also add `"Version": 10` like so: ```json "Version": 10, "Goals": [ ... ```
Author
Contributor

...huh. Wonder why Goals are the only thing that seemingly don't work without that.

...huh. Wonder why Goals are the only thing that seemingly don't work without that.
Author
Contributor

While adding Version does, indeed, makes the Events appear, they appear to be... incomplete. Thermia Fractures is missing the personal score counter (which is what allows you to obtain some Amalgam mods and the Opticor Vandal), while Jade Shadows is missing the global counter for unlocking the ephemeras. I presume it has to do with this error:

2025-03-07T18:09:59:399 [0.1.0] error:  unknown endpoint GET /api/getGuildEventScore.php
2025-03-07T18:09:59:400 [0.1.0] http:   GET /api/getGuildEventScore.php?accountId=67bcb55f31fac393062d59a0&nonce=8297774840118445&ct=MSI&goalId=67a5035c2a198564d62e165e 404 1.058 ms - 34

image.png

While adding Version does, indeed, makes the Events appear, they appear to be... incomplete. Thermia Fractures is missing the personal score counter (which is what allows you to obtain some Amalgam mods and the Opticor Vandal), while Jade Shadows is missing the global counter for unlocking the ephemeras. I presume it has to do with this error: ``` 2025-03-07T18:09:59:399 [0.1.0] error: unknown endpoint GET /api/getGuildEventScore.php 2025-03-07T18:09:59:400 [0.1.0] http: GET /api/getGuildEventScore.php?accountId=67bcb55f31fac393062d59a0&nonce=8297774840118445&ct=MSI&goalId=67a5035c2a198564d62e165e 404 1.058 ms - 34 ``` ![image.png](/attachments/2118b9a4-863b-4ac9-a235-a832a9c33140)
516 KiB
Author
Contributor

Okay, nevermind on the Thermia one, I forgot that they had moved it to an on-hover menu. Operation Belly of the Beast is still missing Volatile Mote Collection Progress. Here's what it should look like:

image.png

Okay, nevermind on the Thermia one, I forgot that they had moved it to an on-hover menu. Operation Belly of the Beast is still missing Volatile Mote Collection Progress. Here's what it should look like: ![image.png](/attachments/459a24da-155c-4530-a6a6-17def6f3f389)
450 KiB
Owner

You mean the clan trophy stuff? Yeah, that's... ehh... not insanely important, but the getGuildEventScore response looks like this:

{"Tier":1,"GoalProgress":{"Count":43,"Tag":"JadeShadowsEvent","_id":{"$oid":"snip"}}}

What's interesting is that the GoalProgress object here can also be found within the GoalProgress array in the getGuild response.
And then the actual trophies are in Vault.DecoRecipes:

        "DecoRecipes": [
            {
                "ItemCount": 1,
                "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/RailjackResearchTrophyRecipe"
            },
            {
                "ItemCount": 1,
                "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/EntratiEventTerracottaTrophyRecipe"
            },
            {
                "ItemCount": 1,
                "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventGoldTrophyRecipe"
            },
            {
                "ItemCount": 1,
                "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventSilverTrophyRecipe"
            },
            {
                "ItemCount": 1,
                "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventBronzeTrophyRecipe"
            },
            {
                "ItemCount": 1,
                "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventPewterTrophyRecipe"
            }
        ]
You mean the clan trophy stuff? Yeah, that's... ehh... not insanely important, but the getGuildEventScore response looks like this: ```json {"Tier":1,"GoalProgress":{"Count":43,"Tag":"JadeShadowsEvent","_id":{"$oid":"snip"}}} ``` What's interesting is that the `GoalProgress` object here can also be found within the `GoalProgress` array in the getGuild response. And then the actual trophies are in `Vault.DecoRecipes`: ```json "DecoRecipes": [ { "ItemCount": 1, "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/RailjackResearchTrophyRecipe" }, { "ItemCount": 1, "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/EntratiEventTerracottaTrophyRecipe" }, { "ItemCount": 1, "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventGoldTrophyRecipe" }, { "ItemCount": 1, "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventSilverTrophyRecipe" }, { "ItemCount": 1, "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventBronzeTrophyRecipe" }, { "ItemCount": 1, "ItemType": "/Lotus/Levels/ClanDojo/ComponentPropRecipes/JadeShadowsEventPewterTrophyRecipe" } ] ```
Author
Contributor

Yeah, my main concern was just getting the events to appear, cause then we can try to get older events into the Emulator too. Everything else is just for the sake of knowing what's missing.

Yeah, my main concern was just getting the events to *appear*, cause then we can try to get older events into the Emulator too. Everything else is just for the sake of knowing what's missing.
Sign in to join this conversation.
No description provided.