XML:ONGS

From OniGalore
Revision as of 18:53, 23 March 2021 by Iritscen (talk | contribs) (copy-edit/rewrite)
Jump to navigation Jump to search
ONGS : Oni Game Settings
XML modding tips
  • See HERE to start learning about XML modding.
  • See HERE if you are searching for information on how to handle object coordinates.
  • See HERE for some typical modding errors and their causes.
XML.png
XML

ONCV << Other file types >> ONLD

switch to OBD page

General information

  • ONGSgame_settings.oni is the only resource of this type, located in GameDataFolder\level0_Final.
  • The XML on this page is compatible with OniSplit v0.9.61.0.

XML tags

<MaxOverhealthFactor> If this factor is 2, and your normal max health is 200 HP, then the character's maximum overhealth is 400 HP.

If you use chr_set_health to set HP to a value beyond the maximum overhealth, then the health will quickly drop to the maximum overhealth value, but not instantly.

<NormalHypoStrength> This sets the strength of a hypo when used in a normal health range, using the player's maximum normal health as a base. For instance, if this value is 0.25 and the player's max health is 200 HP, then a hypo can restore 50 HP.

The speed at which hypos regenerate health is character-specific; see ONCC's <HypoRegenerationRate>.

<OverhealthHypoStrength> This sets the strength of a hypo when used at maximum normal health, using the player's max normal health as a base. If this value is 1.0 and the player's max health is 200, then a hypo will restore 200 HP. But if the player's current health is 175, then the hypo will restore with a factor of 0.25 (<NormalHypoStrength>) until max health is reached, after which the rest of the hypo will heal with a factor of 1.0 (<OverhealthHypoStrength>).
<OverhealthMinDamage> The lower end of the range of enhanced damage that the player will do when in overhealth. The value in ONGSgame_settings is 1.5, so damage done to enemies will be multiplied by this number when the player is just above normal max health.
<OverhealthMaxDamage> The upper end of the range of enhanced damage that the player will do when in overhealth. The value in ONGSgame_settings is 2.3, so damage done to enemies will be multiplied by this number when the player is at max overhealth, and damage will ramp down to <OverhealthMinDamage> as their health decreases to max normal health + 1.
<UsedHealthElements> Tells Oni how many values of <HealthPercent> and <HealthColor> follow. These pairs of values determine the color of the health bar based on the player's current health; see next section for details.
<HealthPercent> 1.0 means 100% of max normal health (float value).
<HealthColor> Color value in RGB.
<PowerupModels> M3GMpowerup.oni
<PowerupGlowTextures> TXMPpowerup.oni
<PowerupGlowSizes> X and Y size of glow around powerups (float values).
<Sounds> Names of sounds to play for certain events (fixed order).
<NoticeFactors> Chance of AI noticing an incoming attack on Easy, Normal and Hard difficulties (ONGSgame_settings uses 0.7, 1.0, 1.4 respectively).
<BlockChanceFactors> Chance of AI blocking an incoming attack on Easy, Normal and Hard difficulties (0.6, 1.0, 1.3).
<DodgeFactors> Chance of AI dodging an incoming attack on Easy, Normal and Hard difficulties (0.8, 1.0, 1.5).
<WeaponAccuracyFactors> Inaccuracy multiplier combined with <WeaponSkills> from a character's ONCC on Easy, Normal and Hard difficulties (1.2, 1.0, 0.6).
<EnemyHealthFactors> Multiplier for enemy HP on Easy, Normal and Hard difficulties (1.0, 1.0, 1.25).
<PlayerHealthFactors> Multiplier for player HP on Easy, Normal and Hard difficulties (1.3, 1.0, 1.0).
<UsedAutoPrompts> Tells Oni how many <ONGSAutoPrompt>s follow.
<ONGSAutoPrompt> Sub-tags:

<Notes>: Name of LSI/powerup/event which should trigger this onscreen prompt when the player stands near it.
<FirstAutopromptLevel>: First level on which to show this prompt.
<LastAutopromptLevel>: Last level on which to show this prompt.
<SubtitleName>: Which item in SUBTmessages to display as a prompt.

Level-specific items have a first/last range of a single level number. Other items have a large range for their autoprompt, like "invis" which prompts the player to pick it up all the way from Chapter 1 to 12. Prompts to perform actions like opening a door are also covered by a <ONGSAutoPrompt> tag.

The health display meter

Remember to update <UsedHealthElements> if you change the number of health indicator colors by adding a pair of <HealthPercent> and <HealthColor> values.

The modification will also affect:

  • The BSL command "ai2_showhealth = 1".
  • Baba's regeneration (probably interacts with the <UseSpecialTint> PAR3 flag).
  • Melee impact flashes which show the character's health status when hit (as for the "snap" particle files, they also use <UseSpecialTint>).

The color of the health bar when the player is between <HealthPercent> values will be an interpolation of the <HealthColor> values. After health surpasses the highest <HealthPercent> value, the color remains the same.

Example mod

       <UsedHealthElements>5</UsedHealthElements>
Blue health bar on overpower preview.png
       <HealthPercent>
           <Float>0</Float>
           <Float>0.659999967</Float>
           <Float>0.979999959</Float>
           <Float>1</Float>
           <Float>1.5</Float>
           [...]
 
 
 
 
 
       <HealthColor>
           <Color>255 0 0</Color>
           <Color>255 255 0</Color>
           <Color>19 161 43</Color>
           <Color>0 255 0</Color>
           <Color>68 119 255</Color>
           [...]