EDF5 Advanced Menu Setup (ENG) - KCreator/Earth-Defence-Force-Documentation GitHub Wiki

The menu system for EDF 5 is connected to many files. This is meant to be a guide on helping changing the major part of the menu system.

Shortcuts

Config SGO Gamemodes
Mission Difficulty Scale
Player Count Difficulty Scale
Weapon Drop Rate
Online Correction
Infantry Correction
Vehicle Correction
Weapon Limit
Armor Limit
Miscellaneous
Local Player for Mode
Loading Screen Tip Messages
Weapon Table
Weapon Text

CONFIG.SGO Gamemodes

Located in the DEFAULTPACKAGE folder, this file sets up the gamemodes and DLC mission packs. The following is an annotated excerpt to explain what each node does and what its intended order is; it cannot be used directly as a file.

Overall Layout

TEXTTABLE_XBOX.%LOCALE%.TXT.SGO will contain mode titles and descriptions. %LOCALE% is a variable for the two-letter language indicator. EN is for English, JA is for Japanese, etc.

Detailed structs inside {{{}}} are explained in further detail in their own sections below.

=====================================================

{
  "type": "ptr",
  "value": [
    {"type": "string", "value": "GameMode_Scenario"},           --The title on the mode selection screen
    {"type": "string", "value": "GameMode_DescScenario"},       --The mode's description
    {"type": "string", "value": "off_scenario.%LOCALE%.dds"},   --The preview image, located inside UI/MODESELECTIMG.RAB
    {"type": "string", "value": "BGM_E5S02_EDFHonbu"},          --Song to play inside the menu
    {"type": "string", "value": "MAIN.GST"},                    --A save filename. Leave alone unless you know what you're doing
    {
      "type": "ptr",
      "value": [
        {"type": "string", "value": "app:/Mission/MissionList.offline.list.sgo"},   --The mission list the mode will use
        {"type": "string", "value": "app:/Mission/MissionList.offline.txt.%LOCALE%.sgo"},   --The mission text list
        {"type": "string", "value": "app:/Mission/MissionList.offline.image.rab"}   --The RAB that will contain preview images
      ]
    },
    {
      "type": "ptr",
      "value": [
        {
          "type": "ptr",
          "value": [
            {
              "type": "ptr",
              "value": [
                {{{missionDifficultyScale}}}
              ]
            },
            {
              "type": "ptr",
              "value": [
                {{{PlayerCountDiffScale}}}
              ]
            },
            {
              "type": "ptr",
              "value": [
                {{{WeaponDrops}}}
              ]
            },
            {
              "type": "ptr",
              "value": [
                {{{OnlineCorrection}}}
              ]
            },
            {
              "type": "ptr",
              "value": [
                {{{InfantryCorrection}}}
              ]
            },
            {
              "type": "ptr",
              "value": [
                {{{VehicleCorrection}}}
              ]
            },
            {
                "type": "ptr",
                "value": [
                  {{{Weapon Limit}}}
                ]
            },
            {
            "type": "ptr",
            "value": [
              {{{Online Armor Limit}}}
            ]
           }
          ]
        },
        {
          Repeated 4 more times to set Normal, Hard, Hardest, Inferno difficulties
        }
      ]
    },
    {{{Miscellaneous}}}
    {
      "type": "ptr",
      "value": [
        {{{LocalPlayerCount}}}
      ]
    }
  ]
},

Mission Difficulty Scale

These values set the entity health and damage progression throughout the missions in each difficulty. The value is divided by 10 to get the actual multiplier.

====================================================={{{missionDifficultyScale}}}

{"type": "float", "value": Difficulty scalar for the first mission in the list},
{"type": "float", "value": Difficulty scalar for the last mission in the list}

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "float", "value": 5},                        OFF|ON
{"type": "float", "value": 15}                        1  |1

{"type": "float", "value": 10},                       DLCOFF1|DLCON1
{"type": "float", "value": 15}                        1      |1

{"type": "float", "value": 15},                       DLCOFF2|DLCON2
{"type": "float", "value": 20}                        1      |1

{"type": "float", "value": 10},                       OFF
{"type": "float", "value": 24}                        2

{"type": "float", "value": 17},                       DLCOFF1
{"type": "float", "value": 24}                        2

{"type": "float", "value": 10},                       ON
{"type": "float", "value": 25}                        2

{"type": "float", "value": 17},                       DLCON1
{"type": "float", "value": 25}                        2

{"type": "float", "value": 20},                       OFF|ON
{"type": "float", "value": 60}                        3  |3

{"type": "float", "value": 24},                       DLCOFF2|DLCON2
{"type": "float", "value": 40}                        2      |2

{"type": "float", "value": 40},                       DLCOFF1|DLCON1
{"type": "float", "value": 60}                        3      |3

{"type": "float", "value": 60},                       DLCOFF2|DLCON2
{"type": "float", "value": 110}                       3      |3

{"type": "float", "value": 70},                       OFF|ON
{"type": "float", "value": 150}                       4  |4

{"type": "float", "value": 110},                      DLCOFF1|DLCON1
{"type": "float", "value": 150}                       4      |4

{"type": "float", "value": 150},                      DLCOFF2|DLCON2
{"type": "float", "value": 220}                       4      |4

{"type": "float", "value": 160},                      OFF|ON
{"type": "float", "value": 280}                       5  |5

{"type": "float", "value": 220},                      DLCOFF1|DLCON1
{"type": "float", "value": 280}                       5      |5

{"type": "float", "value": 250},                      DLCOFF2|DLCON2
{"type": "float", "value": 330}                       5      |5

Player Count Difficulty Scale

This determines the extra enemy scaling based on how many players are present.

((TODO: Does splitscreen count as two players?))

====================================================={{{PlayerCountDiffScale}}}

{"type": "float", "value": 1 Player Diff Scale},
{"type": "float", "value": 2 Players Diff Scale},
{"type": "float", "value": 3 Players Diff Scale},
{"type": "float", "value": 4 Players Diff Scale}

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "float", "value": 1},                        OFF      |DLCOFF1  |DLCOFF2  
{"type": "float", "value": 1},                        1,2,3,4,5|1,2,3,4,5|1,2,3,4,5
{"type": "float", "value": 1},
{"type": "float", "value": 1}

{"type": "float", "value": 1.2000000476837158},       ON |DLCON1|DLCON2
{"type": "float", "value": 0.800000011920929},        1,2|1,2   |1,2
{"type": "float", "value": 1},
{"type": "float", "value": 1.2000000476837158}

{"type": "float", "value": 1.2000000476837158},       ON|DLCON1|DLCON2
{"type": "float", "value": 0.8999999761581421},       3 |3     |3
{"type": "float", "value": 1.0499999523162842},
{"type": "float", "value": 1.2000000476837158}

{"type": "float", "value": 1.2000000476837158},       ON|DLCON1|DLCON2
{"type": "float", "value": 1},                        4 |4     |4
{"type": "float", "value": 1.100000023841858},
{"type": "float", "value": 1.2000000476837158}

{"type": "float", "value": 1.2000000476837158},       ON|DLCON1|DLCON2
{"type": "float", "value": 1.100000023841858},        5 |5     |5
{"type": "float", "value": 1.149999976158142},
{"type": "float", "value": 1.2000000476837158}

Weapon Drop Rate

The range of levels that weapons will drop at per mission. The values will be multiplied by 25.

====================================================={{{WeaponDrops}}}

{"type": "float", "value": Base level drop on first mission},
{"type": "float", "value": Base level drop on last mission},
{"type": "float", "value": Level spread subtraction range. After multiplying by 25, the drop range
                           is created by subtracting both resulting numbers.}
                           0.20000000298023224  =     0-5    
                           0.25]                =     0-10
                           0.30000001192092896] =     5-15
                           1]                   =     10-35   -Drop range for a mission will be -10 and -35 of the mission's value.
These examples come from vanilla calculations, so the formula may or may not differ between modded values.

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "float", "value": 0},                        OFF|ON
{"type": "float", "value": 0.949999988079071},        1  |1
{"type": "float", "value": 0.20000000298023224}

{"type": "float", "value": 0},                        OFF|ON
{"type": "float", "value": 1},                        2  |2
{"type": "float", "value": 0.20000000298023224}

{"type": "float", "value": 0.10000000149011612},      OFF|ON
{"type": "float", "value": 2},                        3  |3
{"type": "float", "value": 0.25}

{"type": "float", "value": 0.5},                      DLCOFF1|DLCON1|DLCOFF2
{"type": "float", "value": 1},                        1,2    |1,2   |2
{"type": "float", "value": 0.20000000298023224}

{"type": "float", "value": 1},                        DLCOFF2|DLCON2
{"type": "float", "value": 1.5},                      1,2    |1
{"type": "float", "value": 0.20000000298023224}

{"type": "float", "value": 1},                        DLCOFF1|DLCON1
{"type": "float", "value": 1.5499999523162842},       3      |3
{"type": "float", "value": 0.25}

{"type": "float", "value": 1.7599999904632568},       OFF|ON
{"type": "float", "value": 3},                        4  |4
{"type": "float", "value": 0.30000001192092896}

{"type": "float", "value": 1.774999976158142},        DLCOFF2|DLCON2
{"type": "float", "value": 2.5},                      2,3    |3
{"type": "float", "value": 0.25}

{"type": "float", "value": 2},                        OFF|ON
{"type": "float", "value": 4},                        5  |5
{"type": "float", "value": 1}

{"type": "float", "value": 2.380000114440918},        DLCOFF1|DLCON1
{"type": "float", "value": 3},                        4      |4
{"type": "float", "value": 0.30000001192092896}

{"type": "float", "value": 3},                        DLCOFF2|DLCON2
{"type": "float", "value": 3.5},                      4      |4
{"type": "float", "value": 0.30000001192092896}

{"type": "float", "value": 4},                        DLCOFF1|DLCON1
{"type": "float", "value": 4.5},                      5      |5
{"type": "float", "value": 1}

{"type": "float", "value": 4.25},                     DLCOFF2|DLCON2
{"type": "float", "value": 4.75},                     5      |5
{"type": "float", "value": 1}

Online Correction

Another layer of enemy multipliers intended for online tuning.

====================================================={{{OnlineCorrection}}}

{"type": "float", "value": Durability},
{"type": "float", "value": Firepower},
{"type": "float", "value": Always 1?} 

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "float", "value": 1},                        OFF      |DLCOFF1  |DLCOFF2  
{"type": "float", "value": 1},                        1,2,3,4,5|1,2,3,4,5|1,2,3,4,5
{"type": "float", "value": 1}

{"type": "float", "value": 1.7999999523162842},       ON|DLCON1|DLCON2
{"type": "float", "value": 1.5},                      1 |1     |1
{"type": "float", "value": 1}

{"type": "float", "value": 2.4000000953674316},       ON|DLCON1|DLCON2
{"type": "float", "value": 2},                        2 |2,3   |2
{"type": "float", "value": 1}

{"type": "float", "value": 2.299999952316284},        ON|DLCON1|DLCON2
{"type": "float", "value": 2},                        3 |4     |3
{"type": "float", "value": 1}

{"type": "float", "value": 2.200000047683716},        ON |DLCON1
{"type": "float", "value": 2},                        4,5|5
{"type": "float", "value": 1}

{"type": "float", "value": 2.0999999046325684},       DLCON2
{"type": "float", "value": 2},                        4
{"type": "float", "value": 1}

{"type": "float", "value": 2},                        DLCON2
{"type": "float", "value": 2},                        5
{"type": "float", "value": 1}

Infantry Correction

These multipliers affect on-foot AI soldiers.

====================================================={{{InfantryCorrection}}}

{"type": "float", "value": Durability},
{"type": "float", "value": Firepower} 

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "float", "value": 1},                        OFF|ON|DLCOFF1|DLCON1|DLCOFF2|DLCON2
{"type": "float", "value": 0.75}                      1  |1 |1      |1     |1      |1

{"type": "float", "value": 0.5},                      OFF|DLCOFF1|DLCOFF2
{"type": "float", "value": 0.5}                       2  |2      |2

{"type": "float", "value": 0.75},                     OFF|DLCOFF1|DLCOFF2
{"type": "float", "value": 0.5}                       3  |3      |3

{"type": "float", "value": 1},                        OFF|ON|DLCON1|DLCON1|DLCOFF2|DLCON2
{"type": "float", "value": 0.5}                       4  |2 |4     |2     |4      |2

{"type": "float", "value": 1.25},                     OFF|ON|DLCOFF1|DLCON1|DLCOFF2|DLCON2
{"type": "float", "value": 0.5}                       5  |3 |5      |3     |5      |3

{"type": "float", "value": 1.5},                      ON |DLCOFF1|DLCON2
{"type": "float", "value": 0.5}                       4,5|4,5    |4,5

Vehicle Correction

This changes the scaling on vehicles.

====================================================={{{VehicleCorrection}}}

{"type": "float", "value": Durability},
{"type": "float", "value": Firepower} 

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "float", "value": 1},                        OFF      |DLCOFF1  |DLCOFF2  
{"type": "float", "value": 1}                         1,2,3,4,5|1,2,3,4,5|1,2,3,4,5

{"type": "float", "value": 1.7999999523162842},       ON|DLCON1|DLCON2
{"type": "float", "value": 1.7999999523162842}        1 |1     |1

{"type": "float", "value": 2},                        ON |DLCON1|DLCON2
{"type": "float", "value": 1.5}                       2,3|2,3   |2,3

{"type": "float", "value": 1.75},                     ON|DLCON1|DLCON2
{"type": "float", "value": 1.5}                       4 |4     |4

{"type": "float", "value": 1.5},                      ON|DLCON1|DLCON2
{"type": "float", "value": 1.5}                       5 |5     |5

Weapon Limit

This controls the level limits on weapons. The level cap will be multiplied by 25. -1 means no limit.

====================================================={{{Weapon limit}}}

{"type": "float", "value": Weapon level limit on the first mission},
{"type": "float", "value": Weapon level limit on the last mission}

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "float", "value": -1},                       DLCON1|DLCON2
{"type": "float", "value": -1}                        5     |5

{"type": "int", "value": 0}                           OFF      |DLCOFF1  |DLCOFF2  
Is a null array in offline                            1,2,3,4,5|1,2,3,4,5|1,2,3,4,5

{"type": "float", "value": 0.10000000149011612},      ON
{"type": "float", "value": 1.100000023841858}         1,2

{"type": "float", "value": 0.20000000298023224},      ON
{"type": "float", "value": 2.0999999046325684}        3

{"type": "float", "value": 0.6000000238418579},       DLCON1
{"type": "float", "value": 1.100000023841858}         1,2

{"type": "float", "value": 1.100000023841858},        DLCON2
{"type": "float", "value": 1.600000023841858}         1,2

{"type": "float", "value": 1.100000023841858},        DLCON1
{"type": "float", "value": 1.649999976158142}         3

{"type": "float", "value": 1.875},                    DLCON2
{"type": "float", "value": 2.5999999046325684}        3

{"type": "float", "value": 2.0999999046325684},       ON|DLCON1
{"type": "float", "value": 3.0999999046325684}        4 |4

{"type": "float", "value": 3.0999999046325684},       DLCON2
{"type": "float", "value": 3.5999999046325684}        4

{"type": "float", "value": 2.4000000953674316},       ON
{"type": "float", "value": 3.200000047683716},        5
{"type": "float", "value": 3.999000072479248},   --there is indeed another two values for Online Inferno
{"type": "float", "value": 3.999000072479248}

Armor Limit

The maximum armor that can be used on missions. The values are set with a negative percentage to each class:

Fencer = -19.975%

AirRaider = -35.98%

Ranger = -35.98%

Wing Diver = -59.985%

====================================================={{{Online Armor Limit}}}

{"type": "int", "value": Armor limit on the first mission in the list},
{"type": "int", "value": Armor limit at the last mission in the list}

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "int", "value": 0}                           OFF      |DLCOFF1  |DLCOFF2  
Is a null array in offline                            1,2,3,4,5|1,2,3,4,5|1,2,3,4,5

{"type": "int", "value": 350},                        ON
{"type": "int", "value": 2000}                        1,2

{"type": "int", "value": 700},                        ON
{"type": "int", "value": 4500}                        3

{"type": "int", "value": 1100},                       DLCON1
{"type": "int", "value": 2000}                        1,2

{"type": "int", "value": 2000},                       DLCON2
{"type": "int", "value": 3500}                        1,2

{"type": "int", "value": 2600},                       DLCON1
{"type": "int", "value": 4500}                        3

{"type": "int", "value": 4500},                       DLCON2
{"type": "int", "value": 7000}                        3

{"type": "int", "value": 4500},                       ON
{"type": "int", "value": 8000}                        4

{"type": "int", "value": 6200},                       DLCON1
{"type": "int", "value": 8000}                        4

{"type": "int", "value": 8000},                       DLCON2
{"type": "int", "value": 14000}                       4

{"type": "int", "value": 8000},                       ON
{"type": "int", "value": 20000}                       5

{"type": "int", "value": 14000},                      DLCON1
{"type": "int", "value": 20000}                       5

{"type": "int", "value": 20000},                      DLCON2
{"type": "int", "value": 25000}                       5

Miscellaneous

These are non-difficulty specific settings that affect the gamemode.

====================================================={{{Miscellaneous}}}

{"type": "int", "value": Is online. Caused black screen and mission failure in Offline mode},
{"type": "int", "value": Mission pack identifier},
{"type": "int", "value": Menu type. 0 = offline, 1 = online, 2 = versus},
{"type": "int", "value": VersusMap SGO. If none, is a 0 int; otherwise a string},

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "int", "value": 0},                          OFF
{"type": "int", "value": 0},
{"type": "int", "value": 0},
{"type": "int", "value": 0},

{"type": "int", "value": 1},                          ON
{"type": "int", "value": 0},
{"type": "int", "value": 1},
{"type": "int", "value": 0},

{"type": "int", "value": 0},                          DLCOFF1
{"type": "int", "value": 1},
{"type": "int", "value": 0},
{"type": "int", "value": 0},

{"type": "int", "value": 1},                          DLCON1
{"type": "int", "value": 1},
{"type": "int", "value": 1},
{"type": "int", "value": 0},

{"type": "int", "value": 0},                          DLCOFF2
{"type": "int", "value": 2},
{"type": "int", "value": 0},
{"type": "int", "value": 0},

{"type": "int", "value": 1},                          DLCON2
{"type": "int", "value": 2},
{"type": "int", "value": 1},
{"type": "int", "value": 0},

Local Players for Mode

Settings for the amount of local players in this mode.

====================================================={{{LocalPlayerCount}}}

{"type": "int", "value": Required local players},
{"type": "int", "value": Maximum local players (optional)}

=====================================================
OFF = Offline,                  ON = Online,
DLCOFF1 = DLC 1 Offline,        DLCON1 = DLC 1 Online,
DLCOFF2 = DLC 2 Offline,        DLCON2 = DLC 2 Online,
1 = Easy, 2 = Normal, 3 = Hard, 4 = Hardest, 5 = Inferno

{"type": "int", "value": 1},                          OFF|DLCOFF1|DLCOFF2
{"type": "int", "value": 2}

{"type": "int", "value": 1}                           ON|DLCON1|DLCON2

Loading Screen

The images for the loading screen tips information is stored in 2 different locations, The text description per image is found in the TEXTTABLE_XBOX.(language).TXT.SGO and find the Loading_Desc_0** & Loading_Title_0** strings to add/remove/edit the text as needed. while the LOADINGIMAGESETTING.SGO controls how many loading images appear on the tips_max_number integer (Default is 24), also images can have alt forms if layed out as LOADINGIMAGEXX.(language).DDS

WEAPON TABLE

{
  "type": "ptr",
  "value": [
    {"type": "string", "value": "WEAPONNAME"},                     P0
    {"type": "string", "value": "app:/weapon/WEAPONNAME.sgo"},     P1
    {"type": "int", "value": 0},                                   P2
    {"type": "float", "value": 1},                                 P3
    {"type": "float", "value": 0.10000000149011612},               P4   
    {"type": "int", "value": 0},                                   P5
    {"type": "ptr", "value": null},                                P6
    {"type": "int", "value": 0}                                    P7
  ]
}

P0 | Weapon name | In game menu display

P1 | Weapon name | AS .SGO file to be used

P2 | Weapon category

P3 | Drop Weighting as % i.e. 1 = 100%, lower values decrease rarity

P4 | Weapon Level *25

P5 | IS STARTER OR NEEDED TO COLLECT

        Value of 0, COLLECT
        Value of 1, STARTER ITEM
        Value of 3, SINGLE DLC

P6 | Unknown but changes

P7 | Weapon is a part of list,

        0 is base game,
        1 is DLC pack 1,
        2 is DLC pack 2

WEAPON TEXT

{{{WSLRF}}} Weapon Star Level Result Formula (WSLRF) can be expresses as $ Variables as a string

Understanding $ Variables

Damage from the Slaughter E20 Shotgun text setup: $0 is Damage Max $1 is Damage Min $2 is Pellet Count

Font Coloring

EDF uses HTML formatting to edit the colors within its text string values

RAW NO COLOR IN USE DUMMY
<font color=%dq%       %dq%>

TEXT IS CYAN, A SHADE THAT BLENDS GREEN AND BLUE.
<font color=%dq%#00ffff%dq%>

RESET TO WHITE
</font> 

EXAMPLE IN USE
<font color=%dq%#80ff80%dq%>Pilot Seat:</font>

Everything Together

{
          "type": "ptr",
          "value": [
            {"type": "string", "value": "NAME OF WEAPON"},
            {
              "type": "string",
              "value": "Use this string to describe or tell a story with you weapon."
            },
            {
              "type": "ptr",
              "value": [
	            {
				  "type": "ptr",
				  "value": [
					  {"type": "string", "value": "ROF"},
					  {"type": "string", "value": "$0/sec"},
					  {
                      "type": "ptr",
                      "value": [
                        {{{WSLRF}}}
                      ]
	                }
			      ]
				},
                {
                  "type": "ptr",
                  "value": [
                    {"type": "string", "value": "Damage"},
                    {"type": "string", "value": "$0"},
                    {
                      "type": "ptr",
                      "value": [
                        {{{WSLRF}}}
                      ]
                    }
                  ]
                },
                {
                  "type": "ptr",
                  "value": [
                    {"type": "string", "value": "Hit Error"},
                    {"type": "string", "value": "Radius 15.0m"}
                  ]
                },
                {
                  "type": "ptr",
                  "value": [
                    {"type": "string", "value": "Reload"},
                    {"type": "string", "value": "$0pt"},
                    {
                      "type": "ptr",
                      "value": [
                        {{{WSLRF}}}
                      ]
                    }
                  ]
                },
                {
                  "type": "ptr",
                  "value": [
                    {"type": "string", "value": "Shots"},
                    {"type": "string", "value": "40×1 Units"}
                  ]
                },
                {
                  "type": "ptr",
                  "value": [
                    {"type": "string", "value": "Blast Area"},
                    {"type": "string", "value": "Radius 15m"}
                  ]
                }
              ]
            }
          ]
        },
⚠️ **GitHub.com Fallback** ⚠️