Skip to content

Commit

Permalink
[Docs] a few
Browse files Browse the repository at this point in the history
Handle errors (e.g., "applied to to TechnoTypes")
Standardize the names and formats of special terms, such as changing *.ini->[xxx] to *.ini -> [xxx] like the existing [xxx] -> key (and sometimes the two are used together)
Missing symbol
Missing type annotation
.etc
  • Loading branch information
DeathFishAtEase committed Feb 22, 2025
1 parent 2d9f9c4 commit 9768b1c
Show file tree
Hide file tree
Showing 11 changed files with 315 additions and 314 deletions.
24 changes: 12 additions & 12 deletions docs/AI-Scripting-and-Mapping.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ RepairBaseNodes=false ; boolean
In map file:
```ini
[Country House]
RepairBaseNodes= ; list of 3 booleans indicating whether AI repair basenodes in Easy / Normal / Difficult game diffculty.
RepairBaseNodes= ; List of 3 booleans indicating whether AI repair basenodes in Easy / Normal / Difficult game diffculty.
```

### Default loading screen and briefing offsets
Expand Down Expand Up @@ -427,7 +427,7 @@ In `rulesmd.ini`:
; ...
```

### `16005` Jump Back To Previous Script
#### `16005` Jump Back To Previous Script

- Used in a Random Script picked by action `94`. It can jump back to the previous script, and continue in the line after `x=94,n`.

Expand All @@ -441,7 +441,7 @@ x=16005,0

#### `18000-18023` Edit Variable

- Operate a variable's value
- Operate a variable's value.
- The variable's value type is int16 instead of int32 in trigger actions for some reason, which means it ranges from -2^15 to 2^15-1.
- **Any numbers exceeding this limit will lead to unexpected results!**

Expand Down Expand Up @@ -496,7 +496,7 @@ ID=ActionCount,[Action1],500,4,[CSFKey],0,0,0,0,A,[ActionX]

### `501` Edit Variable

- Operate a variable's value
- Operate a variable's value.
- The variable's value type is int32, which means it ranges from -2^31 to 2^31-1.
- **Any numbers exceeding this limit will lead to unexpected results!**

Expand Down Expand Up @@ -525,7 +525,7 @@ ID=ActionCount,[Action1],501,0,[VariableIndex],[Operation],[Number],[IsGlobalVar

### `502` Generate random number

- Generate a random integer ranged in [Min, Max] and store it in a given variable
- Generate a random integer ranged in [Min, Max] and store it in a given variable.

In `mycampaign.map`:
```ini
Expand All @@ -537,7 +537,7 @@ ID=ActionCount,[Action1],502,0,[VariableIndex],[Min],[Max],[IsGlobalVariable],0,

### `503` Print variable value

- Print a variable value to the message list
- Print a variable value to the message list.

In `mycampaign.map`:
```ini
Expand All @@ -549,8 +549,8 @@ ID=ActionCount,[Action1],503,[VariableIndex],0,[IsGlobalVariable],0,0,0,A,[Actio

### `504` Binary Operation

- Operate a variable's value with another variable's value
- Similar to `501`, but the operation number is read from another variable
- Operate a variable's value with another variable's value.
- Similar to `501`, but the operation number is read from another variable.

In `mycampaign.map`:
```ini
Expand All @@ -560,7 +560,7 @@ ID=ActionCount,[Action1],504,0,[VariableIndex],[Operation],[VariableForOperation
...
```

`Operation` can be looked up at action `501`
`Operation` can be looked up at action `501`.

### `505` Fire Super Weapon at specified location

Expand Down Expand Up @@ -615,7 +615,7 @@ ID=ActionCount,[Action1],510,0,0,[MCVRedeploy],0,0,0,A,[ActionX]

### `500-511` Variable comparation

- Compares the variable's value with given number
- Compares the variable's value with given number.

In `mycampaign.map`:
```ini
Expand All @@ -642,7 +642,7 @@ ID=EventCount,[Event1],[EVENTID],2,[VariableIndex],[Param],[EventX]

### `512-523` Variable comparation with local variable

- Compares the variable's value with given local variable value
- Compares the variable's value with given local variable value.

In `mycampaign.map`:
```ini
Expand All @@ -669,7 +669,7 @@ ID=EventCount,[Event1],[EVENTID],2,[VariableIndex],[LocalVariableIndex],[EventX]

### `524-535` Variable comparation with global variable

- Compares the variable's value with given global variable value
- Compares the variable's value with given global variable value.

In `mycampaign.map`:
```ini
Expand Down
86 changes: 43 additions & 43 deletions docs/Fixed-or-Improved-Logics.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ This page describes all ingame logics that are fixed or improved in Phobos witho
- Fixed the bug when cloaked Desolator was unable to fire his deploy weapon.
- Fixed the bug that temporaryed unit cannot be erased correctly and no longer raise an error.
- Fixed `DebrisMaximums` (spawned debris type amounts cannot go beyond specified maximums anymore). Only applied when `DebrisMaximums` values amount is more than 1 for compatibility reasons.
- Fixed building and defense tab hotkeys not enabling the placement mode after `Cannot build here.` triggered and the placement mode cancelled.
- Fixed building and defense tab hotkeys not enabling the placement mode after *Cannot build here.* triggered and the placement mode cancelled.
- Fixed buildings with `UndeployInto` playing `EVA_NewRallypointEstablished` on undeploying.
- Fixed buildings with `Naval=yes` ignoring `WaterBound=no` to be forced to place onto water.
- Fixed AI Aircraft docks bug when Ares tag `[GlobalControls] -> AllowParallelAIQueues=no` is set.
Expand Down Expand Up @@ -82,7 +82,7 @@ This page describes all ingame logics that are fixed or improved in Phobos witho
![image](_static/images/translucency-fix.png)
*Example gradient SHP drawing with 75% translucency, before and after*

- Translucent RLE SHPs will now be drawn using a more precise and performant algorithm that has no green tint and banding. Can be disabled with `rulesmd.ini->[General] -> FixTransparencyBlitters=no`.
- Translucent RLE SHPs will now be drawn using a more precise and performant algorithm that has no green tint and banding. Can be disabled with `rulesmd.ini -> [General] -> FixTransparencyBlitters=no`.
- Only applies to Z-aware drawing mode for now.
- Fixed projectiles with `Inviso=true` suffering from potential inaccuracy problems if combined with `Airburst=yes` or Warhead with `EMEffect=true`.
- Fixed the bug when `MakeInfantry` logic on BombClass resulted in `Neutral` side infantry.
Expand Down Expand Up @@ -135,7 +135,7 @@ This page describes all ingame logics that are fixed or improved in Phobos witho
- Removed jumpjet units' deceleration when crashing onto buildings.
- Fixed `AmbientDamage` when used with `IsRailgun=yes` being cut off by elevation changes.
- Fixed railgun and fire particles being cut off by elevation changes.
- Fixed teleport units' (for example CLEG) frozen-still timer being cleared after load game.
- Fixed teleport units' (for example `[CLEG]`) frozen-still timer being cleared after load game.
- Fixed teleport units being unable to visually tilt on slopes.
- Fixed rockets' shadow location.
- Fixed units with Teleport, Tunnel or Fly locomotor being unable to be visually flipped like other locomotors do.
Expand Down Expand Up @@ -213,7 +213,7 @@ This page describes all ingame logics that are fixed or improved in Phobos witho
In `rulesmd.ini`:
```ini
[SOMEAIRCRAFT] ; AircraftType
VoicePickup= ; Sound
VoicePickup= ; Sound entry
```

### Fixed spawn distance & spawn height for airstrike / SpyPlane aircraft
Expand Down Expand Up @@ -299,8 +299,8 @@ In `artmd.ini`:
[SOMEANIM] ; AnimationType
ExplodeOnWater=false ; boolean
Warhead.Detonate=false ; boolean
WakeAnim= ; Animation
SplashAnims= ; list of animations
WakeAnim= ; AnimationType
SplashAnims= ; List of AnimationTypes
SplashAnims.PickRandom=false ; boolean
ExtraShadow=true ; boolean
```
Expand All @@ -327,13 +327,13 @@ ConstrainFireAnimsToCellSpots=true ; boolean
FireAnimDisallowedLandTypes= ; List of LandTypes (none | clear | road | water | rock | wall | tiberium | beach | rough | ice | railroad | tunnel | weeds)
AttachFireAnimsToParent= ; boolean
SmallFireCount= ; integer
SmallFireAnims= ; list of animations
SmallFireChances= ; list of floating point values (percent or absolute)
SmallFireDistances= ; list of floating point values, distance in cells
SmallFireAnims= ; List of AnimationTypes
SmallFireChances= ; List of floating point values (percent or absolute)
SmallFireDistances= ; List of floating point values, distance in cells
LargeFireCount=1 ; integer
LargeFireAnims= ; list of animations
LargeFireChances=0.5 ; list of floating point values (percent or absolute)
LargeFireDistances=0.4375 ; list of floating point values, distance in cells
LargeFireAnims= ; List of AnimationTypes
LargeFireChances=0.5 ; List of floating point values (percent or absolute)
LargeFireDistances=0.4375 ; List of floating point values, distance in cells
```

```{note}
Expand Down Expand Up @@ -455,7 +455,7 @@ Grinding.AllowOwner=true ; boolean
Grinding.AllowTypes= ; List of InfantryTypes / VehicleTypes
Grinding.DisallowTypes= ; List of InfantryTypes / VehicleTypes
Grinding.PlayDieSound=true ; boolean
Grinding.Sound= ; Sound
Grinding.Sound= ; Sound entry
Grinding.Weapon= ; WeaponType
Grinding.Weapon.RequiredCredits=0 ; integer
```
Expand Down Expand Up @@ -648,7 +648,7 @@ In `rulesmd.ini`:
```ini
[General]
ChronoSparkleDisplayDelay=24 ; integer, game frames
ChronoSparkleBuildingDisplayPositions=occupantslots ; list of chrono sparkle position enum (building | occupants | occupantslots | all)
ChronoSparkleBuildingDisplayPositions=occupantslots ; List of chrono sparkle position enum (building | occupants | occupantslots | all)
```

### Customizable ChronoSphere teleport delays for units
Expand Down Expand Up @@ -730,9 +730,9 @@ Insignia customization besides the `InsigniaFrames` shorthand should function si
In `rulesmd.ini`:
```ini
[SOMETECHNO] ; TechnoType
OreGathering.Anims= ; list of animations
OreGathering.FramesPerDir=15 ; list of integers
OreGathering.Tiberiums=0 ; list of Tiberium IDs
OreGathering.Anims= ; List of AnimationTypes
OreGathering.FramesPerDir=15 ; List of integers
OreGathering.Tiberiums=0 ; List of Tiberium IDs
```

### Customizable Teleport/Chrono Locomotor settings per TechnoType
Expand Down Expand Up @@ -781,7 +781,7 @@ ArtImageSwap=false ; disabled by default

In `artmd.ini`:
```ini
[SOMETECHNO]
[SOMETECHNO] ; TechnoType
Image= ; name of the file that will be used as image, without extension
```

Expand All @@ -805,8 +805,8 @@ In `rulesmd.ini`:
```ini
[SOMETECHNO] ; TechnoType
Wake= ; Anim (played when Techno moving on the water), default to [General] -> Wake
Wake.Grapple= ; Anim (played when Techno being parasited on the water), defaults to [SOMETECHNO] -> Wake
Wake.Sinking= ; Anim (played when Techno sinking), defaults to [SOMETECHNO] -> Wake
Wake.Grapple= ; Anim (played when Techno being parasited on the water), defaults to [TechnoType] -> Wake
Wake.Sinking= ; Anim (played when Techno sinking), defaults to [TechnoType] -> Wake
```

### Customizing effect of level lighting on air units
Expand Down Expand Up @@ -848,15 +848,15 @@ In `rulesmd.ini`:
```ini
[CombatDamage]
IronCurtain.EffectOnOrganics=kill ; Iron Curtain effect Enumeration (kill | invulnerable | ignore)
IronCurtain.KillOrganicsWarhead= ; Warhead
IronCurtain.KillOrganicsWarhead= ; WarheadType
ForceShield.EffectOnOrganics=kill ; Iron Curtain effect Enumeration (kill | invulnerable | ignore)
ForceShield.KillOrganicsWarhead= ; Warhead
ForceShield.KillOrganicsWarhead= ; WarheadType

[SOMETECHNO] ; InfantryType or Organic=true TechnoType
IronCurtain.Effect= ; IronCurtain effect Enumeration (kill | invulnerable | ignore)
IronCurtain.KillWarhead= ; Warhead
IronCurtain.KillWarhead= ; WarheadType
ForceShield.Effect= ; IronCurtain effect Enumeration (kill | invulnerable | ignore)
ForceShield.KillWarhead= ; Warhead
ForceShield.KillWarhead= ; WarheadType
```

### Iron Curtain & Force Shield extra tint intensity
Expand Down Expand Up @@ -924,8 +924,8 @@ Pips.Generic.Buildings.Size=4,2 ; X,Y, increment in pixels to next pip
Pips.Ammo.Size=4,0 ; X,Y, increment in pixels to next pip
Pips.Ammo.Buildings.Size=4,2 ; X,Y, increment in pixels to next pip
Pips.Tiberiums.EmptyFrame=0 ; integer, frame of pips.shp (buildings) or pips2.shp (others) (zero-based)
Pips.Tiberiums.Frames=2,5,2,2 ; list of integers, frames of pips.shp (buildings) or pips2.shp (others) (zero-based)
Pips.Tiberiums.DisplayOrder=0,2,3,1 ; list of integers, tiberium type indices
Pips.Tiberiums.Frames=2,5,2,2 ; List of integers, frames of pips.shp (buildings) or pips2.shp (others) (zero-based)
Pips.Tiberiums.DisplayOrder=0,2,3,1 ; List of integers, tiberium type indices
Pips.Tiberiums.WeedEmptyFrame=0 ; integer, frame of pips.shp (buildings) or pips2.shp (others) (zero-based)
Pips.Tiberiums.WeedFrame=1 ; integer, frame of pips.shp (buildings) or pips2.shp (others) (zero-based)

Expand Down Expand Up @@ -957,7 +957,7 @@ Power=0 ; integer, positive means output, negative means drain

### Re-enable obsolete [JumpjetControls]

- Re-enable obsolete [JumpjetControls], the keys in it will be as the default value of jumpjet units.
- Re-enable obsolete `[JumpjetControls]`, the keys in it will be as the default value of jumpjet units.
- Moreover, added two tags for missing ones.

In `rulesmd.ini`:
Expand Down Expand Up @@ -1017,9 +1017,9 @@ SubterraneanSpeed=-1 ; floating point value
In `artmd.ini`:
```ini
[SOMETECHNO] ; TechnoType
ShadowIndices= ; list of integers (voxel section indices)
ShadowIndices= ; List of integers (voxel section indices)
ShadowIndex.Frame=0 ; integer (HVA animation frame index)
ShadowIndices.Frame= ; list of integers (HVA animation frame indices)
ShadowIndices.Frame= ; List of integers (HVA animation frame indices)
```

### Voxel light source customization
Expand Down Expand Up @@ -1149,7 +1149,7 @@ ConditionYellow.Terrain= ; floating-point value
[SOMETERRAINTYPE] ; TerrainType
HasDamagedFrames=false ; boolean
HasCrumblingFrames=false
CrumblingSound= ; Sound
CrumblingSound= ; Sound entry
```

### Minimap color customization
Expand Down Expand Up @@ -1230,7 +1230,7 @@ CrushSlowdownMultiplier=0.2 ; floating point value
In `rulesmd.ini`:
```ini
[SOMEVEHICLE] ; VehicleType
DestroyAnim= ; list of animations
DestroyAnim= ; List of AnimationTypes
DestroyAnim.Random=true ; boolean
```

Expand Down Expand Up @@ -1368,13 +1368,13 @@ VeinDamage=5 ; integer
VeinholeTypeClass=VEINTREE ; TerrainType

[CombatDamage]
VeinholeWarhead=VeinholeWH ; Warhead
VeinholeWarhead=VeinholeWH ; WarheadType

[VeinholeWH]
Veinhole=yes

[AudioVisual]
VeinAttack=VEINATAC ; Animation
VeinAttack=VEINATAC ; AnimationType

[TechnoType]
EliteAbilities=VEIN_PROOF
Expand Down Expand Up @@ -1415,7 +1415,7 @@ As the code for the Chemical Missile had been removed, setting `Type=ChemMissile

In `rulesmd.ini`:
```ini
[SuperWeaponType]
[SOMESW] ; SuperWeaponType
UseWeeds=no ; boolean - should the SW use weeds to recharge?
UseWeeds.Amount= ; integer - how many? default is General->WeedCapacity
UseWeeds.StorageTimer=no ; boolean - should the counter on the sidebar display the % of weeds stored?
Expand Down Expand Up @@ -1449,7 +1449,7 @@ AnimList.CreateAll=false ; boolean
AnimList.CreationInterval=0 ; integer
AnimList.ScatterMin=0.0 ; floating point value, distance in cells
AnimList.ScatterMax=0.0 ; floating point value, distance in cells
SplashList= ; List of animations
SplashList= ; List of AnimationTypes
SplashList.PickRandom=false ; boolean
SplashList.CreateAll=false ; boolean
SplashList.CreationInterval=0 ; integer
Expand All @@ -1467,7 +1467,7 @@ Conventional.IgnoreUnits=false ; boolean
In `rulesmd.ini`:
```ini
[SOMEWARHEAD] ; WarheadType
DebrisAnims= ; List of animations
DebrisAnims= ; List of AnimationTypes
Debris.Conventional=false ; boolean
```

Expand Down Expand Up @@ -1570,7 +1570,7 @@ AmbientDamage.IgnoreTarget=false ; boolean
In `rulesmd.ini`:
```ini
[SOMEWEAPON] ; WeaponType
ChargeTurret.Delays= ; list of integers - game frames
ChargeTurret.Delays= ; List of integers - game frames
```

### Customizable disk laser radius
Expand Down Expand Up @@ -1604,7 +1604,7 @@ ROF.RandomDelay= ; integer - single or comma-sep. range (game frames)

In `rulesmd.ini`:
```ini
[SOMEWEAPON]
[SOMEWEAPON] ; WeaponType
KickOutPassengers=true ; boolean
```

Expand All @@ -1614,7 +1614,7 @@ KickOutPassengers=true ; boolean

In `rulesmd.ini`:
```ini
[SOMEWEAPON]
[SOMEWEAPON] ; WeaponType
FireOnce.ResetSequence=true ; boolean
```

Expand All @@ -1640,7 +1640,7 @@ IsSingleColor=false ; boolean

In `rulesmd.ini`:
```ini
[SOMEWEAPONTYPE] ; WeaponType
[SOMEWEAPON] ; WeaponType
Bolt.Disable1=false ; boolean
Bolt.Disable2=false ; boolean
Bolt.Disable3=false ; boolean
Expand All @@ -1656,7 +1656,7 @@ Due to technical constraints, this does not work with electric bolts created fro

In `rulesmd.ini`:
```ini
[SOMEWEAPONTYPE] ; WeaponType
[SOMEWEAPON] ; WeaponType
Bolt.Arcs=8 ; integer, number of arcs in a bolt
```

Expand All @@ -1672,7 +1672,7 @@ On top of that, you can specify its visibility from other houses.
In `rulesmd.ini`:
```ini
[AudioVisual]
RadialIndicatorVisibility=allies ; list of Affected House Enumeration (owner/self | allies/ally | enemies/enemy | all)
RadialIndicatorVisibility=allies ; List of Affected House Enumeration (owner/self | allies/ally | enemies/enemy | all)
```

## Crate improvements
Expand Down Expand Up @@ -1709,7 +1709,7 @@ DropPod properties can now be customized on a per-InfantryType basis.

In `rulesmd.ini`:
```ini
[SOMEINFANTRY]
[SOMEINFANTRY] ; InfantryType
DropPod.Angle = ; double, default to [General] -> DropPodAngle, measured in radians
DropPod.AtmosphereEntry = ; anim, default to [AudioVisual] -> AtmosphereEntry
DropPod.GroundAnim = ; 2 anims, default to [General] -> DropPod
Expand Down
Loading

0 comments on commit 9768b1c

Please sign in to comment.