Difference between revisions of "Room Tuning"

From Superboss Games Wiki
Jump to navigation Jump to search
(Major overhaul of the Tuning page, including default tuning settings and updated info on how find a Tuning Generator.)
Line 1: Line 1:
 
= Overview =
 
= Overview =
  
Tuning in [[Intruder]] refers to a server or [[Custom Maps|Custom Map]] that uses a JSON script to change the rules of the game. Tuning scripts can modify various gameplay elements, including movement speed, health, clip size, gravity, and more. These Scripts can be pasted into the ''Tuning'' box in the [[Server Browser#Creating a Server|Create Room]] page, or placed into a [[TuningProxy]] element while [[IntruderMM|creating a map]].
+
Tuning in [[Intruder]] refers to a server or [[Custom Maps|Custom Map]] that uses a JSON script to change the rules of the game. Tuning scripts can modify various gameplay elements, including movement speed, health, clip size, gravity, and more. These Scripts can be pasted into the ''Tuning'' box in the [[Server Browser#Creating a Server|Create Room]] page, or placed into a [[TuningProxy]] element while [[IntruderMM|creating a map]]. Entering the Tuning into a TuningProxy will automatically apply the settings each time the map is used. If a server applies Tuning settings on a map with settings already applied, the server options take priority.
  
 
==Formatting==
 
==Formatting==
 +
The formatting for the Tuning JSON file is broken down into multiple sections, each relating to a separate section of gameplay:
 +
1. Match
 +
2. Guard
 +
  1. Weapon
 +
  2. Motor
 +
    1. Jumping
 +
    2. Speed
 +
    3. Sliding
 +
  3. Health/Balance/Energy
 +
  4. Movement
 +
  5. View
 +
3. Intruder
 +
  1. Weapon
 +
  2. Motor
 +
    1. Jumping
 +
    2. Speed
 +
    3. Sliding
 +
  3. Health/Balance/Energy
 +
  4. Movement
 +
  5. View
 +
4. Global
 +
In each of these sections, multiple values can be changed to alter how they operate in-game. If a given value is not different from the default settings, then it does not need to be included in the Tuning JSON. For instance, if we just wanted to allow same-team arresting, then the Tuning settings would look like this:
 +
{
 +
  "MatchMode": {
 +
    "canArrestTeammates": true
 +
  },
 +
}
  
 +
===Default Tuning Settings===
 +
In the table below, every setting available is listed at its default value. To change weapon variables, rename the "weapon" tag to the desired item and input numbers or 'true'/'false' into the float or bool labels respectively.
 +
'''NOTE:''' The table below (with the 'weapon' sections removed) will not alter any in-game settings. It is simply a list of all possible variables for reference.
 +
 +
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 +
| <strong>Default Tuning JSON</strong>
 +
|-
 +
|
 
  {
 
  {
 
   "MatchMode": {
 
   "MatchMode": {
Line 163: Line 198:
 
     }
 
     }
 
   },
 
   },
   "IntruderTuning": {    ''Same format as GuardTuning''
+
   "IntruderTuning": { ''To edit multiple weapons, copy and paste the 'Weapon' section and rename it to the corresponding weapon''
 +
     "Weapon": {    ''After renaming, you can change each 'bool' or 'float' to your desired value''
 +
      "canUseOnLadder": bool,
 +
      "canUseInWater": bool,
 +
      "canUseUnderWater": bool,
 +
      "canUseOnZipline": bool,
 +
      "dropWhenRagged": bool,
 +
      "hideOnRagdoll": bool,
 +
      "fireRate": float,
 +
      "fireRecoverRate": float,
 +
      "fireDelayTime": float,
 +
      "hasSemiAuto": bool,
 +
      "hasFullAuto": bool,
 +
      "hasBurstShot": bool,
 +
      "maxClipAmmo": float,
 +
      "reloadTime": float,
 +
      "autoReload": bool,
 +
      "reloadOnEquip": bool,
 +
      "hasScope": bool,
 +
      "canJumpFire": bool,
 +
      "unequipOnEmpty": bool,
 +
      "unequipDelay": float,
 +
      "removeFromInventoryOnEmpty": bool,
 +
      "equipTime": float,
 +
      "advancedRecoil": bool,
 +
      "hasStockRecoil": bool,
 +
      "stockRecoilRecoverySpeed": float,
 +
      "recoilBalance": float,
 +
      "precoilBalance": float,
 +
      "canFocusShot": bool,
 +
      "noPrecoilZoomed": bool,
 +
      "medHighEnergy": float,
 +
      "lowMedEnergy": float,
 +
      "aimDownSightsFov": float,
 +
      "extraZoomingFov": float
 +
    },
 +
    "CharacterMotor": {
 +
      "jumping": {
 +
        "baseHeight": 1,
 +
        "extraHeight": 4.1,
 +
        "perpAmount": 0,
 +
        "steepPerpAmount": 0.5
 +
      },
 +
      "movement": {
 +
        "maxForwardSpeed": 10,
 +
        "maxSidewaysSpeed": 10,
 +
        "maxBackwardsSpeed": 10,
 +
        "maxGroundAcceleration": 30,
 +
        "maxAirAcceleration": 20,
 +
        "gravity": 9.8,
 +
        "maxFallSpeed": 20
 +
      },
 +
      "sliding": {
 +
        "slidingSpeed": 15,
 +
        "sidewaysControl": 1,
 +
        "speedControl": 0.4
 +
      }
 +
    },
 +
    "PlayerLife": {
 +
      "afkTime": 120,
 +
      "defaultHP": 100,
 +
      "defaultEnergy": 70,
 +
      "defaultBalance": 100,
 +
      "shouldRagdoll": true,
 +
      "canRespawn": false,
 +
      "defaultUnragTime": 3,
 +
      "lowStamina": 40,
 +
      "superLowStamina": 25,
 +
      "lowStaminaUnragMod": 0.85,
 +
      "superLowStaminaUnragMod": 1.6,
 +
      "breathingThreshold": 15,
 +
      "jumpBalance": 5,
 +
      "standBalance": 50,
 +
      "crouchBalance": 80,
 +
      "proneBalance": 100,
 +
      "standMoveBalance": 30,
 +
      "standAimMoveBalance": 49,
 +
      "crouchMoveBalance": 60,
 +
      "crouchMoveAimBalance": 70,
 +
      "proneMoveBalance": 90,
 +
      "ziplineBalance": 50,
 +
      "balanceDownSpeed": 10,
 +
      "balanceUpSpeed": 2,
 +
      "stanceEnergyEffect": [
 +
        3,
 +
        3,
 +
        3,
 +
        -10,
 +
        -25,
 +
        0,
 +
        0,
 +
        3,
 +
        -25,
 +
        0
 +
      ],
 +
      "explosionAirKillDistance": 3,
 +
      "bloodDripRate": 0.9,
 +
      "bloodHPThreshold": 30
 +
    },
 +
    "PlayerMovement": {
 +
      "leanAmount": 0.35,
 +
      "speedWalk": 2.8,
 +
      "speedStand": 3.4,
 +
      "speedCrouch": 2.5,
 +
      "speedProne": 1,
 +
      "speedAim": 2.1,
 +
      "speedAimCrouched": 1.75,
 +
      "speedAimProne": 0.95,
 +
      "runAnimSpeed": 1.1,
 +
      "walkAnimSpeed": 0.6,
 +
      "feignSpeed": 1,
 +
      "stompHeight": 4,
 +
      "canStomp": true,
 +
      "fallHeightDeath": 13,
 +
      "fallHeightFall": 4.3,
 +
      "fallHeightCrouchMod": 2.3,
 +
      "fallHeightLand": 1.9,
 +
      "goombaMultiplier": 3,
 +
      "jumpEnergyEffect": -20,
 +
      "longJumpMaxSpeed": 5.5,
 +
      "longJumpVelMultiplier": 3,
 +
      "aimBobMod": 0.3,
 +
      "crouchBobMod": 0.5,
 +
      "proneBobMod": 0.5,
 +
      "walkBobMod": 0.3,
 +
      "runFootStepRate": 0.315,
 +
      "walkFootStepRate": 0.5,
 +
      "walkSoundMod": 0.5,
 +
      "walkVolumeMod": 0.5,
 +
      "walkDistanceMod": 0.5,
 +
      "runVolumeMod": 1,
 +
      "runDistanceMod": 1,
 +
      "rigidGravity": 9.81,
 +
      "allowFeignDeath": true
 +
    },
 +
    "PlayerView": {
 +
      "aimBobMod": 0.3,
 +
      "crouchBobMod": 0.5,
 +
      "proneBobMod": 0.5,
 +
      "walkBobMod": 0.3,
 +
      "lerpSpeed": 30
 +
    }
 
   },
 
   },
 
   "staminaDrainModifier": 0.5,
 
   "staminaDrainModifier": 0.5,
Line 173: Line 349:
 
   "tuningMessage": ""
 
   "tuningMessage": ""
 
  }
 
  }
 +
|}
 +
 +
 +
==Tuning Generators==
 +
To avoid having to manually type each Tuning variable, a [https://dukeofsussex.dev/projects/itg/ Tuning Generator] is available that allows you to easily edit each setting and compile a Tuning JSON automatically.
  
==Tutorial==
 
 
===Using a Tuning Generator===
 
===Using a Tuning Generator===
*Navigate to: https://tuning.bloon.info/
+
*Navigate to: https://dukeofsussex.dev/projects/itg/
 
+
**If you are editing an existing JSON, click 'IMPORT' at the top of the page and upload the JSON file or paste it manually into the dialog box.
 
+
*Edit the Tuning settings as desired.
 
+
*After finishing editing the values, click 'EXPORT' at the top and either copy or download the compiled script.
 
+
**After you copy/download the script, you can paste it into the ''Tuning'' box in the [[Server Browser#Creating a Server|Create Room]] page, or into a [[TuningProxy]] element in [[IntruderMM]].
 
 
:*After finishing editing the values copy the output. After you copy the script, you can paste it into the ''Tuning'' box in the Create Room page of the [[Server Browser]].
 
  
 
== ==
 
== ==
 
[[Category: Intruder]]
 
[[Category: Intruder]]

Revision as of 14:38, 8 August 2023

Overview

Tuning in Intruder refers to a server or Custom Map that uses a JSON script to change the rules of the game. Tuning scripts can modify various gameplay elements, including movement speed, health, clip size, gravity, and more. These Scripts can be pasted into the Tuning box in the Create Room page, or placed into a TuningProxy element while creating a map. Entering the Tuning into a TuningProxy will automatically apply the settings each time the map is used. If a server applies Tuning settings on a map with settings already applied, the server options take priority.

Formatting

The formatting for the Tuning JSON file is broken down into multiple sections, each relating to a separate section of gameplay:

1. Match
2. Guard
  1. Weapon
  2. Motor
    1. Jumping
    2. Speed
    3. Sliding
  3. Health/Balance/Energy
  4. Movement
  5. View
3. Intruder
  1. Weapon
  2. Motor
    1. Jumping
    2. Speed
    3. Sliding
  3. Health/Balance/Energy
  4. Movement
  5. View
4. Global

In each of these sections, multiple values can be changed to alter how they operate in-game. If a given value is not different from the default settings, then it does not need to be included in the Tuning JSON. For instance, if we just wanted to allow same-team arresting, then the Tuning settings would look like this:

{
  "MatchMode": {
    "canArrestTeammates": true
  },
}

Default Tuning Settings

In the table below, every setting available is listed at its default value. To change weapon variables, rename the "weapon" tag to the desired item and input numbers or 'true'/'false' into the float or bool labels respectively. NOTE: The table below (with the 'weapon' sections removed) will not alter any in-game settings. It is simply a list of all possible variables for reference.


Tuning Generators

To avoid having to manually type each Tuning variable, a Tuning Generator is available that allows you to easily edit each setting and compile a Tuning JSON automatically.

Using a Tuning Generator

  • Navigate to: https://dukeofsussex.dev/projects/itg/
    • If you are editing an existing JSON, click 'IMPORT' at the top of the page and upload the JSON file or paste it manually into the dialog box.
  • Edit the Tuning settings as desired.
  • After finishing editing the values, click 'EXPORT' at the top and either copy or download the compiled script.