Skip to content

Commit

Permalink
Update New-or-Enhanced-Logics.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Aephiex authored Dec 1, 2024
1 parent b04f33c commit e175136
Showing 1 changed file with 53 additions and 0 deletions.
53 changes: 53 additions & 0 deletions docs/New-or-Enhanced-Logics.md
Original file line number Diff line number Diff line change
Expand Up @@ -1366,6 +1366,59 @@ Convert.HumanToComputer = ; TechnoType
Convert.ComputerToHuman = ; TechnoType
```

### Crusher level and crushable level

- A techno can now be specified with a `CrusherLevel=` and `CrushableLevel=` akin to that of successing CNC titles. This feature completely takes over the crush check and must be turned on manually by `[General]►CrusherLevelEnabled=true` before it can take any effect.
- A unit can crush an infantry, a unit, or an overlay, if its `CrusherLevel` is greater than the latter's `CrushableLevel`. If not set, the default value will be taken from `[General]` settings. The default values of the `[General]` settings themselves follow the convention of *[Command and Conquer 3: Tiberium Wars](https://cnc-central.fandom.com/wiki/Command_%26_Conquer_3:_Tiberium_Wars)* and *[Kane's Wrath](https://cnc-central.fandom.com/wiki/Command_%26_Conquer_3:_Kane%27s_Wrath)*.
- `CrusherLevel=`:
- 0 if `Crusher=no`
- 1 if `Crusher=yes` and `OmniCrusher=no`
- 3 if `Crusher=yes` and `OmniCrusher=yes`
- `CrushableLevel=`:
- 0 if `Crushable=yes`
- 1 if `Crushable=no` and `OmniCrushResistant=no` and is an Infantry
- 2 if `Crushable=no` and `OmniCrushResistant=no` and is NOT an Infantry
- 3 if `Crushable=no` and `OmniCrushResistant=yes`
- `DeployedCrushableLevel=`:
- The same as `CrushableLevel` if it was set
- 0 if `Crushable=yes` and `DeployedCrushable=yes`
- 1 if `Crushable=yes`, `DeployedCrushable=no`, and `OmniCrushResistant=no`
- 3 if `Crushable=yes`, `DeployedCrushable=no`, and `OmniCrushResistant=yes`
- Here is a quick lookup of the default values of `CrusherLevel` and `CrushableLevel` for Yuri's Revenge units:
- Conscript: 0/0
- Tesla Trooper: 0/1
- Guardian G.I.: 0/0 when undeployed, 0/1 when deployed
- T-Rex: 0/3
- IFV: 0/2
- Rhino Tank: 1/2
- Slave Miner: 1/3
- Battle Fortress: 3/3
- A few applications of the crusher level system:
- At 2/2, a vehicle can crush Tesla Troopers and deployed Guardian G.I.s, but it can't crush IFVs and is still crushable by Battle Fortresses, just like a [Scorpion Tank](https://cnc-central.fandom.com/wiki/Scorpion_tank_(Tiberium_Wars)) does with the Dozer blades upgrade.
- At 4/4, a vehicle can crush almost anything else, even Battle Fortresses, just like a [MARV](https://cnc-central.fandom.com/wiki/Mammoth_Armored_Reclamation_Vehicle) does.
- Other usage notes:
- In an unmodded game, it doesn't even try to check if it can crush something if it has `Crusher=no`, meaning `OmniCrusher=yes` make no sense on a unit with `Crusher=no`. This behavior isn't changed by this feature, meaning you will still need `Crusher=yes` for a positive `CrushableLevel` to function.
- In an unmodded game, infantries can never crush anything regardless of `Crusher=yes`. This behavior isn't changed by this feature, meaning a positive `CrusherLevel` makes no sense on an infantry type.
- If `CrusherLevel` is set, `OmniCrusher` is redundant and ignored.
- If `CrushableLevel` is set, `Crushable`, `OmniCrushResistant`, and `DeployedCrushable` are redundant and ignored. Use `DeployedCrushableLevel` instead if you wish the infantry to have a different crushable level when deployed.
- If `CrushableLevel` is unset, `DeployedCrushableLevel` does not apply at all.

In `rulesmd.ini`
```ini
[General]
CrusherLevelEnabled=false ; boolean
CrusherLevel.Defaults.Crusher=1 ; integer
CrusherLevel.Defaults.OmniCrusher=3 ; integer
CrushableLevel.Defaults.Uncrushable.Infantry=1 ; integer
CrushableLevel.Defaults.Uncrushable.Others=2 ; integer
CrushableLevel.Defaults.OmniCrushResistant=3 ; integer

[SOMETECHNO] ; TechnoType
CrusherLevel= ; integer
CrushableLevel= ; integer
DeployedCrushableLevel= ; integer; this only works for [InfantryTypes]
```

## Terrain

### Destroy animation & sound
Expand Down

0 comments on commit e175136

Please sign in to comment.