XML:ONGS: Difference between revisions

From OniGalore
m (fixed "the the")
m (putting nav header parameters in more logical order)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
{{XML_File_Header | type=ONGS | prev=ONCV | next=ONLD | name=Oni Game Settings }}
{{XML_File_Header | prev=ONCV | type=ONGS | next=ONLD | name=Oni Game Settings}}


__TOC__
__TOC__


==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'''.


===general information===
==XML tags==
* ONGSgame_settings.oni is located in GameDataFolder\level0_Final
* The xml code on this page is compatible with onisplit '''v0.9.61.0'''
 
 
===XML tags===
{|class="wikitable" width="100%"
{|class="wikitable" width="100%"
| <MaxOverhealthFactor>
| <MaxOverhealthFactor>
| If this factor is 2 and your normal max health is 200 then character's max overhealth can be 400.
| 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 a bsl command to set values beyond max overhealth then the health drops very fast to that max overhealth value but not instantly.
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>
| <NormalHypoStrength>
| This factor increases player's health based on his max normal health.
| 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.
 
If this factor is 0.25 and player's max health is 200 then a hypo can restore 50 health points.


Btw, the regeneration speed for hypos is character specific. Look at ONCC's [[XML:ONCC#.3CInventoryConstants.3E|<HypoRegenerationRate>]].
The ''speed'' at which hypos regenerate health is character-specific; see ONCC's [[XML:ONCC#.3CInventoryConstants.3E|<HypoRegenerationRate>]].
|-
|-
| <OverhealthHypoStrength>
| <OverhealthHypoStrength>
| This factor increases player's health based on his max normal health, but max health must be already reached.
| 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>).
 
If this factor is 1 and player's max health is 200 then a hypo can restore 200 health points.
 
If this factor is 1, player's max health is 200 and his current health is 175 then a hypo restores with factor 0.25 (<NormalHypoStrength>) until max health is reached. The rest of the hypo health with factor 1 (<OverhealthHypoStrength>).
|-
|-
| <OverhealthMinDamage>
| <OverhealthMinDamage>
| Hit points of an attack gets increased by at least of this factor.
| 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>
| <OverhealthMaxDamage>
| Hit points of an attack gets increased by at most of this factor.
| 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>
| <UsedHealthElements>
| Determines now many values of <HealthPercent> and <HealthColor> are used.
| 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>
| <HealthPercent>
| 1 means 100 % (float values)
| 1.0 means 100% of max normal health (float value).
|-
|-
| <HealthColor>
| <HealthColor>
| Red Green Blue
| Color value in RGB.
|-
|-
| <PowerupModels>
| <PowerupModels>
Line 52: Line 44:
|-
|-
| <PowerupGlowSizes>
| <PowerupGlowSizes>
| x and y size (float values)
| X and Y size of glow around powerups (float values).
|-
|-
| <Sounds>
| <Sounds>
| sounds for some events (fixed order?)
| Names of sounds to play for certain events (fixed order).
|-
|-
| <NoticeFactors>
| <NoticeFactors>
| on easy, normal, hard (?)
| Chance of AI noticing an incoming attack on Easy, Normal and Hard difficulties (ONGSgame_settings uses 0.7, 1.0, 1.4 respectively).
|-
|-
| <BlockChanceFactors>
| <BlockChanceFactors>
| on easy, normal, hard (only for AI)
| Chance of AI blocking an incoming attack on Easy, Normal and Hard difficulties (0.6, 1.0, 1.3).
|-
|-
| <DodgeFactors>
| <DodgeFactors>
| on easy, normal, hard (?)
| Chance of AI dodging an incoming attack on Easy, Normal and Hard difficulties (0.8, 1.0, 1.5).
|-
|-
| <WeaponAccuracyFactors>
| <WeaponAccuracyFactors>
| on easy, normal, hard (?); an additional factor that propably refers to <WeaponSkills> in ONCC files
| Inaccuracy multiplier combined with <WeaponSkills> from a character's ONCC on Easy, Normal and Hard difficulties (1.2, 1.0, 0.6).
|-
|-
| <EnemyHealthFactors>
| <EnemyHealthFactors>
| on easy, normal, hard
| Multiplier for enemy HP on Easy, Normal and Hard difficulties (1.0, 1.0, 1.25).
|-
|-
| <PlayerHealthFactors>
| <PlayerHealthFactors>
| on easy, normal, hard
| Multiplier for player HP on Easy, Normal and Hard difficulties (1.3, 1.0, 1.0).
|-
|-
| <UsedAutoPrompts>
| <UsedAutoPrompts>
| Determines how many <ONGSAutoPrompt> are used.
| Tells Oni how many <ONGSAutoPrompt>s follow.
|-
|-
| <ONGSAutoPrompt>
| <ONGSAutoPrompt>
| Level specific items only use one level number. <SubtitleName> contains the keyword of the SUBT file. The message becomes displayed automatically.
| Sub-tags:
<Notes>: Name of LSI/powerup/event which should trigger this onscreen prompt when the player stands near it.<br>
<FirstAutopromptLevel>: First level on which to show this prompt.<br>
<LastAutopromptLevel>: Last level on which to show this prompt.<br>
<SubtitleName>: Which item in [[SUBT]]messages 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.


===detailed explanation of the ''health display meter''===
The modification will also affect:
Remember the <UsedHealthElements> when you edit health indicator colors. Increase it by 1 if you change value in an additional <HealthPercent> and <HealthColor>.
* 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 modification will also change ...
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.
* BSL command "ai2_showhealth = 1"
* Baba's regeneration (probably by <UseSpecialTint> particle flag)
* and melee impact flashes which show the character's health status when hit ("snap" particle files? they also use <UseSpecialTint>)


The color between health flags ('''<Float>''') is a mix.
'''Example mod'''
 
The color keeps the same when passing the last health flag.
 
 
'''example'''
         '''<UsedHealthElements>5</UsedHealthElements>'''
         '''<UsedHealthElements>5</UsedHealthElements>'''
[[Image:blue_health_bar_on_overpower_preview.png|right|thumb]]
[[Image:blue_health_bar_on_overpower_preview.png|right|thumb]]


         <HealthPercent>
         <HealthPercent>
Line 108: Line 101:
             '''<Float>1.5</Float>'''
             '''<Float>1.5</Float>'''
             ''[...]''
             ''[...]''


{| border=0 cellspacing=0 cellpadding=0 style="float:right" width="200"
{| border=0 cellspacing=0 cellpadding=0 style="float:right" width="200"

Latest revision as of 19:16, 27 March 2021

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>
           [...]