.Entity variable enumerations directory/glossary

Hello. In trying to make a mod that changes gameplay, I find that quite a few .entity files seem to include enumerated fields (those with "value_name" values). Is there a listing of those somewhere and what they mean?

I am looking for a document or file or something that I could read to get answers to questions such as:
What AttackType options are there?
What does using the WeaponClassType = "AUTOCANNON" mean?

Also, how might I go about adding to those enumerations (if that is even possible)?

42,254 views 4 replies
Reply #1 Top

partial list for buffs, there are more in the modifier thread, if i remembered what program i used to get all of these i'd so do every single thing in the game just because nobody ever got around to it


Abilities

AbilityCooldownRate: Changes cooldown of ability
AntimatterCostOfNonUltimates: Changes antimatter cost of non-level 6 abilities[

Accuracy

ChanceToBeNotOptimallyTargetted: Not sure, maybe makes it so it can't be hit with things like Animosity or something
ChanceToHitAsDamageDealer: Modifies chance to hit of ships (really damage modifier only)
ChanceToHitAsDamageTarget: Modifies chance to hit this ship (really damage modifier only)

Culture

CultureSpread: Culture spread rate

Damage

DamageAsDamageTarget: Modifies damage taken
DamageAsDamageDealer: Modifies damage given
DamageSharing: Shares shield damage, like the Guardian for Advent
PhysicalDamageAsDamageDealer: Seems to do same as DamageAsDamageDealer but only for cannons
PropagateWeaponDamagePerc: Amount of bonus damage for a ship to take when shot at

Defense

ArmorAsDamageTarget: Badly named, just adds armor to a ship
MaxHullPoints: Modifies max hull points
ShieldMitigation: Changes shield mitigation

Jumps

GravityWellRangeForHyperspace: Modifies the gravity well size for jumps
HyperspaceChargeUpRate: Modifies hyperspace charge up time

Speed

AngularThrust: Left/right thrust acceleration[/b]
LinearMaxSpeed: Max forward speed of ship, not equivalent to acceleration (thrust)!
LinearThrust: Forward acceleration

Planets & Construction

PlanetBombingCooldown: Cooldown between shooting stuff at a planet
PlanetModuleBuildTime: Time to build planet modules
PlanetPopulationGrowthRate: Modifies rate of population growth
PlanetProductionStolen: Steal credits from a planet
ShipBuildTime: Time for ship construction
UnderConstructionRate: Modifies construction time, used in construction ability

Weapon

ChanceToIgnoreShieldsAsDamageTarget: Phase missile thing, ignores shields %
EnergyWeaponCooldown: Modifies energy weapon cooldowns
WeaponCooldown: Weapon cooldown time
WeaponRange: Range of weapons

 

vvvv the ones i haven't got around to listing yet vvv

CODE

BuffAbilityGuidance.entity (21):             buffEntityModifierType "AbilityCooldownRate"
BuffAdaptiveShield.entity (11):             buffEntityModifierType "ChanceToIgnoreShieldsAsDamageTarget"
BuffAdaptiveShield.entity (17):             buffEntityModifierType "DamageAsDamageTarget"
BuffAsteroidBelt.entity (11):                     buffEntityModifierType "ChanceToHitAsDamageDealer"
BuffBattleMeditationChild.entity (11):             buffEntityModifierType "DamageAsDamageDealer"
BuffBlackOut.entity (29):                     buffEntityModifierType "ChanceToBeNotOptimallyTargetted"
BuffBonusModuleDamageSelf.entity (27):             buffEntityModifierType "PlanetBombingCooldown"
BuffBoostMorale.entity (27):                     buffEntityModifierType "WeaponCooldown"
BuffCannonShellPsi.entity (39):             buffEntityModifierType "CultureSpread"
BuffCannonShellPsiOnShips.entity (11):             buffEntityModifierType "DamageAsDamageDealer"
BuffChargedMissilesLightSelf.entity (27):     buffEntityModifierType "WeaponRange"
BuffChargedMissilesSelf.entity (29):             buffEntityModifierType "WeaponRange"
BuffChargedMissilesSelf.entity (35):             buffEntityModifierType "AngularThrust"
BuffCrippleAbilities.entity (25):             buffEntityModifierType "AbilityCooldownRate"
BuffCrippleAbilities.entity (31):             buffEntityModifierType "AntimatterCostOfNonUltimates"
BuffDefeatShields.entity (21):                     buffEntityModifierType "ShieldMitigation"
BuffDefeatShields.entity (27):                     buffEntityModifierType "ChanceToIgnoreShieldsAsDamageTarget"
BuffDesignateTargetOnTarget.entity (21):     buffEntityModifierType "DamageAsDamageTarget"
BuffDisruptiveStrikesTarget.entity (19):     buffEntityModifierType "AbilityCooldownRate"
BuffEmbargoPlanet.entity (27):                     buffEntityModifierType "PlanetProductionStolen"
BuffEmbargoPlanet.entity (33):                     buffEntityModifierType "ShipBuildTime"
BuffEmbargoPlanet.entity (39):                     buffEntityModifierType "PlanetModuleBuildTime"
BuffEnergyAbsorb.entity (19):                     buffEntityModifierType "ArmorAsDamageTarget"
BuffEnergyWeaponBoost.entity (11):             buffEntityModifierType "EnergyWeaponCooldown"
BuffEvasiveManeuvers.entity (11):             buffEntityModifierType "ChanceToHitAsDamageTarget"
BuffGravityFieldTarget.entity (11):             buffEntityModifierType "LinearMaxSpeed"
BuffGravityFieldTarget.entity (17):             buffEntityModifierType "LinearThrust"
BuffGravityWarheadAction.entity (21):             buffEntityModifierType "LinearMaxSpeed"
BuffGravityWarheadAction.entity (27):             buffEntityModifierType "LinearThrust"
BuffHeavyFighters.entity (11):                     buffEntityModifierType "PhysicalDamageAsDamageDealer"
BuffHeavyFighters.entity (17):                     buffEntityModifierType "ArmorAsDamageTarget"
BuffHyperspaceDisruptionTarget.entity (11):     buffEntityModifierType "HyperspaceChargeUpRate"
BuffIllusionSelfCopyOnSelf.entity (32):     buffEntityModifierType "ChanceToBeNotOptimallyTargetted"
BuffInstantBuildFightersTarget.entity (11):     buffEntityModifierType "ShipBuildTime"
BuffInstantBuildFightersTarget.entity (17):     buffEntityModifierType "PlanetModuleBuildTime"
BuffLastStandSelf.entity (41):                     buffEntityModifierType "AbilityCooldownRate"
BuffLowCostAbilitiesTarget.entity (21):     buffEntityModifierType "AntimatterCostOfNonUltimates"
BuffMissilePhaseBoost.entity (11):             buffEntityModifierType "ChanceToIgnoreShieldsAsDamageDealer"
BuffNanoDisassembler.entity (30):             buffEntityModifierType "ArmorAsDamageTarget"
BuffPhaseModuleConstructionTarget.entity (11):     buffEntityModifierType "UnderConstructionRate"
BuffPlanetConstructionBoost.entity (11):     buffEntityModifierType "PlanetModuleBuildTime"
BuffPlanetCripple.entity (21):                     buffEntityModifierType "PlanetResourceOutput"
BuffPlanetCripple.entity (27):                     buffEntityModifierType "PlanetModuleBuildTime"
BuffPlanetCripple.entity (33):                     buffEntityModifierType "ShipBuildTime"
BuffPlanetShieldOnPlanet.entity (11):             buffEntityModifierType "PlanetBombingDamageAbsorption"
BuffPowerSurge.entity (21):                     buffEntityModifierType "WeaponCooldown"
BuffPowerSurge.entity (27):                     buffEntityModifierType "ShieldPointRestoreRate"
BuffProtectedShutdown.entity (11):             buffEntityModifierType "DamageAsDamageTarget"
BuffPsiCapitalColonize.entity (11):             buffEntityModifierType "PlanetUpgradeCost"
BuffPsiCommand.entity (11):                     buffEntityModifierType "FightersPerSquadron"
BuffPsiModuleConstructionTarget.entity (11):     buffEntityModifierType "UnderConstructionRate"
BuffReactiveNaniteArmor.entity (29):             buffEntityModifierType "MaxHullPoints"
BuffReactiveNaniteArmor.entity (35):             buffEntityModifierType "ArmorAsDamageTarget"
BuffReinforcedArmor.entity (19):             buffEntityModifierType "ArmorAsDamageTarget"
BuffReinforcedArmor.entity (25):             buffEntityModifierType "MaxHullPoints"
BuffRepulsionFieldTarget.entity (16):             buffEntityModifierType "LinearMaxSpeed"
BuffRepulsionFieldTarget.entity (22):                buffEntityModifierType "LinearThrust"
BuffSabotageEnginesSlow.entity (32):                 buffEntityModifierType "LinearMaxSpeed"
BuffSabotageEnginesSlow.entity (38):                 buffEntityModifierType "LinearThrust"
BuffSabotageEnginesSlow.entity (44):                 buffEntityModifierType "WeaponCooldown"
BuffShieldProjectionTarget.entity (11):     buffEntityModifierType "DamageSharing"
BuffShipCrippleTarget.entity (21):                 buffEntityModifierType "WeaponCooldown"
BuffShipCrippleTarget.entity (27):                 buffEntityModifierType "ChanceToHitAsDamageDealer"
BuffSlowEnemyHyperspaceTarget.entity (11):     buffEntityModifierType "HyperspaceSpeed"
BuffSlowPopulationGrowthTarget.entity (11):     buffEntityModifierType "PlanetPopulationGrowthRate"
BuffSpeedBoost.entity (11):                  buffEntityModifierType "LinearMaxSpeed"
BuffSpeedBoost.entity (17):                  buffEntityModifierType "LinearThrust"
BuffSpeedBoost.entity (23):                  buffEntityModifierType "GravityWellRangeForHyperspace"
BuffSpeedBuildModuleTarget.entity (11):     buffEntityModifierType "UnderConstructionRate"
BuffSpreadWeaponDamageTarget.entity (42):     buffEntityModifierType "PropagateWeaponDamagePerc"
BuffSprint.entity (21):                  buffEntityModifierType "LinearMaxSpeed"
BuffSprint.entity (27):                  buffEntityModifierType "LinearThrust"
BuffSubversion.entity (11):                  buffEntityModifierType "PlanetModuleBuildTime"
BuffSubversion.entity (17):                  buffEntityModifierType "ShipBuildTime"
BuffTargetingUplink.entity (21):                 buffEntityModifierType "ChanceToHitAsDamageDealer"
BuffTargetingUplink.entity (27):                 buffEntityModifierType "WeaponRange"
BuffTechModuleConstructionTarget.entity (11):     buffEntityModifierType "UnderConstructionRate"
BuffTelekineticPush.entity (37):              buffEntityModifierType "LinearMaxSpeed"
BuffTelekineticPush.entity (43):              buffEntityModifierType "LinearThrust"
BuffTimedChargesPlacing.entity (25):              buffEntityModifierType "DamageAsDamageTarget"
BuffVolatileNanitesTarget.entity (47):      buffEntityModifierType "DamageAsDamageTarget"
BuffVolleyFire.entity (21):                  buffEntityModifierType "WeaponCooldown"
BuffVolleyFire.entity (27):                  buffEntityModifierType "WeaponRange"
BuffWeaponBombingJam.entity (21):              buffEntityModifierType "WeaponCooldown"
BuffWeaponBombingJam.entity (27):              buffEntityModifierType "PlanetBombingCooldown"

+1 Loading…
Reply #2 Top

What AttackType options are there?
What does using the WeaponClassType = "AUTOCANNON" mean?

I suppose this might end up being a little on the simplistic side for a responce, and anyone please correct me if I get something wrong..

But for the most part, the WeaponClassTypes are used primarily just to determine what upgrades can effect which weapon types.  IE: A laser upgrade isn't going to upgrade a gauss cannon, or missile, etc.  In anycase, you see the same things listed in the upgrades toward the bottom like this:

 

researchModifier
    modifierType "WeaponDamageAdjustment"
    baseValue 0.000000
    perLevelValue 0.050000
    linkedWeaponClass "AUTOCANNON"  (bolded just to point it out)
artifactPicture ""

 

If you want to try adding a new one, you MAY be able to simply by putting in whatever you want in the WeaponClassType and making sure it's upgrades are appropriately matching.  Though I certainly cannot guarentee that would work, since I don't know if there's any hard coded relation between them, or if it's just some string it's matching up.

As for a list of which ones exist normally:

TEC/TECH:

-AUTOCANNON

-GAUSS (Typically only used on the def platforms, so not much in the way of upgrades)

-MISSILE

-LASERTECH

-BEAM

ADVENT/PSI:

-LASERPSI

-PLASMA

-BEAM

-SPIRITBLADE (Only on the starbase)

VASARI/PHASE:

-FLASHBEAM

-WAVE

-PULSEGUN

-PHASEMISSILE

-CHAOSBOLT (Only on the starbase)

 

I think that's all of them..  The overlapped beams will be affected by either TEC or Advent upgrades (I believe), assuming you can get an Advent ship under TEC control or visa versa.  (Doable with the derelicts in some mods, since they're typically derelict TEC ships anyone can take over)

Anyway, that's just the ClassTypes, you also have to worry about just WeaponType (but that's all of Beam, Missile, and Projectile (which is the catch all if it doesn't fall into the other two types)  I believe this may just give some basic behaviors that the system is expecting.. but I'm just guessing).

There's DamageAffectType, and while I imagine there's a "AFFECTS_SHIELDS" and "AFFECTS_HULL" options (or something similiar, maybe with an _ONLY, I don't know), I don't recall ever seeing ANYTHING besides "AFFECTS_SHIELDS_AND_HULL".  So I guess that one may not be as much of a concern.

Then there's DamageApplyType, which only seems to be (at a quick glance through files) BACKLOADED and OVERTIME.  Backloaded is used with just about any missile and projectile, and at a guess it's because the damage is "saved" until the projectile 'hits'.  Overtime is mostly used with the beams, though a few of the energy based projectiles use it for some reason or another.

Speaking of energy based projectiles, DamageType is the next thing to worry about.  I figure this probably just has some effects on how the damage is applied to shields/hull, perhaps in some % variation depending, but again, I'm guessing.  Anyway, those types are ENERGY and PHYSICAL.

And lastly (yeah, I left this for last on purpose), there's the other one you asked about: AttackType.  I left this 'cause there's a lot of them, but they're not too hard to understand.  They're all listed in Gameplay.constants, and are mostly used to determine whether a weapon has a better chance to hit one type of ship vs another (which is sadly limited to 3 options; CAPITALSHIP (which I've read elsewhere probably covers just about everything EXCEPT fighters and bombers), INTERCEPTOR (fighters), and BOMBER (obvious)).  It also has damage bonuses (or negatives, depending) vs the armorType of the target.  Generally speaking, it's advised NOT to alter these settings in Gameplay.constants, since minor tweaks can cause major, and even unexpected changes in the gameplay all together.

As for the types, though: ANTIVERYLIGHT, ANTILIGHT, ANTIMEDIUM, ANTIHEAVY, ANTIVERYHEAVY, ANTIMODULE, COMPOSITE, CAPITALSHIP.  There's also CAPITALABILITY, but since by name I'd assume that one's for abilities, not main weapons, it's not so much of one to worry over.

And if you're gonna know the AttackTypes, you may as well know the armorTypes, so they're as follows: VeryLight, Light, Medium, Heavy, VeryHeavy, Module, CapitalShip.  A pretty predictable set, really.  There's no Composite type, mostly because the COMPOSITE weapon is just a broad damaging weapon, as compared to the more focused types of the rest (thus weaker then any given focused weapon against a particular armor type, but stronger then those not focused such).

I do not know if you can just add a new AttackType anymore then I know for sure if you can add a new WeaponClassType, but you can always try throwing another one into the Gameplay.constants and see if it works!

 

...And okay, that really didn't end up a simple reply at all as I was expecting... I ended up babbling instead.  But hope it helps all the same.

+1 Loading…
Reply #3 Top

Thanks! Those are both quite helpful indeed. :grin:

Reply #4 Top

DamageAffectType- AFFECTS_SHIELDS_AND_HULL, AFFECTS_ONLY_HULL, and AFFECTS_ONLY_SHIELDS.

DamageApplyType- BACKLOADED&OVERTIME. BACKLOADED damage causes all damage to be inflicted as the last particle effect impacts the target. OVERTIME causes damage to be applied over the duration of the effects. OVERTIME damage CAN be successfully used on non-beam weapons.

EDIT: DamageType refers to 'ENERGY' and 'PHYSICAL', as the above poster mentioned. This does nothing for damage, except apply certain buffs to certain ships; for example, the Halcyon Carrier's 'Amplify Energy Aura' which provides a cooldown bonus to all ships with 'energy' weapons. The way the game delineates energy and non-energy weapons is the DamageType.