M&B: Bannerlord 1.3.4
The horns sound, the ravens gather.
Loading...
Searching...
No Matches
TaleWorlds.Core Namespace Reference

Namespaces

namespace  ImageIdentifiers
 
namespace  SaveCompability
 
namespace  ViewModelCollection
 

Classes

class  ActionSetCode
 
class  AgentData
 
class  AgentOriginUtilities
 
struct  AgentSaveData
 
class  ArmorComponent
 
class  AtmosphereState
 
class  Banner
 
struct  BannerColor
 
class  BannerComponent
 
class  BannerData
 
class  BannerEffect
 
class  BannerExtensions
 
struct  BannerIconData
 
class  BannerIconGroup
 
class  BannerManager
 
class  BasicCharacterObject
 
class  BasicCultureObject
 Represents a culture. More...
 
class  BasicGameModels
 
class  BattleSideEnumExtensions
 
class  BladeData
 
struct  BodyProperties
 
class  BodyPropertiesJsonConverter
 
struct  CampaignSaveMetaDataArgs
 
class  CharacterAttribute
 
class  CharacterCode
 
class  CombatStatCalculator
 
class  Crafting
 
class  CraftingPiece
 
struct  CraftingStatData
 
class  CraftingTemplate
 
class  DefaultBannerEffects
 
class  DefaultCharacterAttributes
 
class  DefaultItemCategories
 
class  DefaultItemCategorySelector
 
class  DefaultItemValueModel
 
class  DefaultRidingModel
 
class  DefaultSiegeEngineTypes
 
class  DefaultSkills
 
class  DummyCommunicator
 
struct  DynamicBodyProperties
 
class  EntitySystem
 
class  Equipment
 
struct  EquipmentElement
 
class  Extensions
 
class  FaceGen
 
class  FaceGenHistory
 
class  FilePaths
 
class  FormationClassExtensions
 
class  Game
 
class  GameHandler
 
class  GameManagerBase
 
class  GameManagerComponent
 
class  GameModel
 
class  GameModelsManager
 
class  GameState
 
class  GameStateManager
 
class  GameText
 
class  GameTextManager
 
class  GameTexts
 
class  GameType
 
class  HorseComponent
 
class  HyperlinkTexts
 
interface  IAgent
 
interface  IAgentOriginBase
 
interface  IBannerVisual
 
interface  IBannerVisualCreator
 
interface  IBattleCombatant
 
interface  IBattleObserver
 
interface  ICameraModeLogic
 
interface  ICharacterData
 
interface  ICommunicator
 
interface  IEntityComponent
 
interface  IFaceGen
 
interface  IFaceGeneratorCustomFilter
 
interface  IGameStarter
 
interface  IGameStateListener
 
interface  IGameStateManagerListener
 
interface  IGameStateManagerOwner
 
interface  IInformationDataHolder
 
interface  IManagedParametersInitializer
 
interface  IMission
 
interface  IMissionSiegeWeapon
 
interface  IMissionTeam
 
interface  IMissionTroopSupplier
 
interface  IMonsterMissionData
 
interface  IMonsterMissionDataCreator
 
interface  INetworkCommunication
 
class  InformationData
 
class  InquiryElement
 
interface  IReadOnlyPropertyOwner
 
interface  IReadOnlyPropertyOwnerF
 
interface  ISceneNotificationContextProvider
 
interface  IShipOrigin
 
class  ItemCategory
 
class  ItemCategorySelector
 
class  ItemComponent
 
class  ItemModifier
 
class  ItemModifierGroup
 
class  ItemObject
 Initializes a new instance of the ItemObject class. More...
 
struct  ItemRosterElement
 
class  ItemValueModel
 
interface  ITrackableBase
 
struct  LinearFrictionTerm
 Keeps per direction values of the linear drag and damping term of the ship (in kg/m) More...
 
class  ManagedParameters
 
class  MBBodyProperty
 
class  MBCharacterSkills
 
class  MBEquipmentRoster
 
class  MBException
 
class  MBFastRandom
 Faster pseudo-random generator based on xor-shift having the same interface as System.Random Adapted from "A fast equivalent for System.Random" by colgreen. Link: https://www.codeproject.com/Articles/9187/A-fast-equivalent-for-System-Random Based on a simple and fast xor-shift pseudo random number generator specified in: Marsaglia, George. (2003). Xorshift RNGs. http://www.jstatsoft.org/v08/i14/xorshift.pdf REMARK_ATES: This version is simplified and a bit improved for performance. Also added random float computation. More...
 
class  MBFastRandomSelector
 Selects distinct entries from a list in random. Does not modify the original list. But keeps a reference to it. More...
 
class  MBGameModel
 
class  MBHaltonColorGenerator
 Generates unique colors using halton sequence... More...
 
class  MBIllegalValueException
 
class  MBInformationManager
 
class  MBInvalidParameterException
 
class  MBMethodNameNotFoundException
 
class  MBMisuseException
 
class  MBNetwork
 
class  MBNetworkBitException
 
class  MBNotFoundException
 
class  MBNotNullParameterException
 
class  MBNullParameterException
 
class  MBObjectManagerExtensions
 
class  MBOutOfRangeException
 
class  MBPerlin
 
class  MBRandom
 
class  MBSaveLoad
 
class  MBTypeMismatchException
 
class  MBUnderFlowException
 
class  MBUnknownTypeException
 
class  MetaDataExtensions
 
struct  MissionInitializerRecord
 
class  MissionResult
 
class  MissionShipObject
 
class  MissionSiegeWeapon
 Represents a unique mission siege weapon. Matches to a campaign/sandbox weapon for campaign/sandbox mode. More...
 
class  Monster
 
class  MountCreationKey
 
class  MultiSelectionInquiryData
 
class  PeerComponent
 
struct  PieceData
 
class  PlayerGameState
 
class  PropertyObject
 Property Object class. More...
 
class  PropertyOwner
 
class  PropertyOwnerF
 
class  ResetAllTutorialsEvent
 
class  RidingModel
 
class  SaddleComponent
 
class  SaveableCoreTypeDefiner
 
class  SceneNotificationData
 
class  ShipHull
 
class  ShipPhysicsReference
 
class  ShipSail
 Keeps a sail's xml object data. More...
 
class  ShipSlot
 
struct  ShipSlotAndPieceName
 
class  ShipUpgradePiece
 
struct  ShipVisualSlotInfo
 
class  SiegeEngineType
 
class  SkeletonScale
 
class  SkillObject
 
class  StackArray
 
struct  StaticBodyProperties
 
class  TauntUsageManager
 
class  TeamSideEnumExtensions
 
class  Timer
 A timer class that alarms when given amount of time has passed. More...
 
class  TradeItemComponent
 
class  TroopClassExtensions
 
class  TroopTraitsMaskExtensions
 
class  TutorialContextChangedEvent
 
struct  UndoRedoKey
 
struct  UniqueTroopDescriptor
 
class  VirtualPlayer
 
class  WaitForGameState
 
class  WeaponComponent
 
class  WeaponComponentData
 
class  WeaponComponentDataExtensions
 
class  WeaponDescription
 
class  WeaponDesign
 
class  WeaponDesignElement
 
class  XmlHelper
 

Enumerations

enum  AgentControllerType {
  None = 0 ,
  AI = 1 ,
  Player = 2 ,
  Count = 3
}
 
enum  DrivenProperty : int {
  None = -1 ,
  AiRangedHorsebackMissileRange = 0 ,
  AiFacingMissileWatch ,
  AiFlyingMissileCheckRadius ,
  AiShootFreq ,
  AiWaitBeforeShootFactor ,
  AIBlockOnDecideAbility ,
  AIParryOnDecideAbility ,
  AiTryChamberAttackOnDecide ,
  AIAttackOnParryChance ,
  AiAttackOnParryTiming ,
  AIDecideOnAttackChance ,
  AIParryOnAttackAbility ,
  AiKick ,
  AiAttackCalculationMaxTimeFactor ,
  AiDecideOnAttackWhenReceiveHitTiming ,
  AiDecideOnAttackContinueAction ,
  AiDecideOnAttackingContinue ,
  AIParryOnAttackingContinueAbility ,
  AIDecideOnRealizeEnemyBlockingAttackAbility ,
  AIRealizeBlockingFromIncorrectSideAbility ,
  AiAttackingShieldDefenseChance ,
  AiAttackingShieldDefenseTimer ,
  AiCheckApplyMovementInterval ,
  AiCheckCalculateMovementInterval ,
  AiCheckDecideSimpleBehaviorInterval ,
  AiCheckDoSimpleBehaviorInterval ,
  AiMovementDelayFactor ,
  AiParryDecisionChangeValue ,
  AiDefendWithShieldDecisionChanceValue ,
  AiMoveEnemySideTimeValue ,
  AiMinimumDistanceToContinueFactor ,
  AiChargeHorsebackTargetDistFactor ,
  AiRangerLeadErrorMin ,
  AiRangerLeadErrorMax ,
  AiRangerVerticalErrorMultiplier ,
  AiRangerHorizontalErrorMultiplier ,
  AIAttackOnDecideChance ,
  AiRaiseShieldDelayTimeBase ,
  AiUseShieldAgainstEnemyMissileProbability ,
  AiSpeciesIndex ,
  AiRandomizedDefendDirectionChance ,
  AiShooterError ,
  AiWeaponFavorMultiplierMelee ,
  AiWeaponFavorMultiplierRanged ,
  AiWeaponFavorMultiplierPolearm ,
  AISetNoAttackTimerAfterBeingHitAbility ,
  AISetNoAttackTimerAfterBeingParriedAbility ,
  AISetNoDefendTimerAfterHittingAbility ,
  AISetNoDefendTimerAfterParryingAbility ,
  AIEstimateStunDurationPrecision ,
  AIHoldingReadyMaxDuration ,
  AIHoldingReadyVariationPercentage ,
  MountChargeDamage ,
  MountDifficulty ,
  ArmorEncumbrance ,
  ArmorHead ,
  ArmorTorso ,
  ArmorLegs ,
  ArmorArms ,
  UseRealisticBlocking ,
  ThrowingWeaponDamageMultiplierBonus ,
  MeleeWeaponDamageMultiplierBonus ,
  ArmorPenetrationMultiplierCrossbow ,
  ArmorPenetrationMultiplierBow ,
  WeaponsEncumbrance ,
  DamageMultiplierBonus ,
  SwingSpeedMultiplier ,
  ThrustOrRangedReadySpeedMultiplier ,
  HandlingMultiplier ,
  ReloadSpeed ,
  MissileSpeedMultiplier ,
  WeaponInaccuracy ,
  AiShooterErrorWoRangeUpdate ,
  WeaponWorstMobileAccuracyPenalty ,
  WeaponWorstUnsteadyAccuracyPenalty ,
  WeaponBestAccuracyWaitTime ,
  WeaponUnsteadyBeginTime ,
  WeaponUnsteadyEndTime ,
  WeaponRotationalAccuracyPenaltyInRadians ,
  AttributeRiding ,
  AttributeShield ,
  AttributeShieldMissileCollisionBodySizeAdder ,
  ShieldBashStunDurationMultiplier ,
  KickStunDurationMultiplier ,
  ReloadMovementPenaltyFactor ,
  TopSpeedReachDuration ,
  MaxSpeedMultiplier ,
  CombatMaxSpeedMultiplier ,
  CrouchedSpeedMultiplier ,
  AttributeHorseArchery ,
  AttributeCourage ,
  MountManeuver ,
  MountSpeed ,
  MountDashAccelerationMultiplier ,
  BipedalRangedReadySpeedMultiplier ,
  BipedalRangedReloadSpeedMultiplier ,
  OffhandWeaponDefendSpeedMultiplier ,
  Count ,
  DrivenPropertiesCalculatedAtSpawnEnd = WeaponsEncumbrance
}
 Driven properties of agent. Driven properties ending in chance are for properties not related to how well or poorly the AI performs but changes some other aspect of the AI's behavior such as aggressiveness Driven properties ending in ability are for properties that determine how well the AI performs such that they are the correct thing to do Driven properties ending in precision are for properties that are used for the AI to estimate durations it can access imperfectly. More...
 
enum  AgentFlag : UInt32 {
  None = 0x00000000 ,
  Mountable = 0x00000001 ,
  CanJump = 0x00000002 ,
  CanRear = 0x00000004 ,
  CanAttack = 0x00000008 ,
  CanDefend = 0x00000010 ,
  RunsAwayWhenHit = 0x00000020 ,
  CanCharge = 0x00000040 ,
  CanBeCharged = 0x00000080 ,
  CanClimbLadders = 0x00000100 ,
  CanBeInGroup = 0x00000200 ,
  CanSprint = 0x00000400 ,
  IsHumanoid = 0x00000800 ,
  CanGetScared = 0x00001000 ,
  CanRide = 0x00002000 ,
  CanWieldWeapon = 0x00004000 ,
  CanCrouch = 0x00008000 ,
  CanGetAlarmed = 0x00010000 ,
  CanWander = 0x00020000 ,
  CanKick = 0x00080000 ,
  CanRetreat = 0x00100000 ,
  MoveAsHerd = 0x00200000 ,
  MoveForwardOnly = 0x00400000 ,
  IsUnique = 0x00800000 ,
  CanUseAllBowsMounted = 0x01000000 ,
  CanReloadAllXBowsMounted = 0x02000000 ,
  CanDeflectArrowsWith2HSword = 0x04000000
}
 
enum  AgentMovementMode : byte {
  None = 0x00 ,
  Land = 0x01 ,
  WaterSurface = 0x02 ,
  WaterDiving = 0x03 ,
  PhysicsCheck = 0x04 ,
  NoPhysics = 0x08 ,
  MovementModeMask = 0x03
}
 
enum  AgentState : int {
  None = 0 ,
  Active ,
  Routed ,
  Unconscious ,
  Killed ,
  Deleted
}
 States that an agent can be under. More...
 
enum  EffectIncrementType {
  Invalid = -1 ,
  Add ,
  AddFactor
}
 
enum  BattleSideEnum {
  None = -1 ,
  Defender = 0 ,
  Attacker = 1 ,
  NumSides = 2
}
 
enum  BattleState {
  None = 0 ,
  DefenderVictory = 1 ,
  AttackerVictory = 2 ,
  DefenderPullBack = 3
}
 
enum  BodyMeshMaturityType {
  Toddler = 0 ,
  Child = 1 ,
  Tween = 2 ,
  Teenager = 3 ,
  Adult = 4
}
 
enum  CraftingMaterials {
  IronOre ,
  Iron1 ,
  Iron2 ,
  Iron3 ,
  Iron4 ,
  Iron5 ,
  Iron6 ,
  Wood ,
  Charcoal ,
  NumCraftingMats
}
 
enum  DamageTypes {
  Invalid = -1 ,
  Cut = 0 ,
  Pierce = 1 ,
  Blunt = 2 ,
  NumberOfDamageTypes = 3
}
 
enum  AgentAttackType : int {
  Standard = 0 ,
  Kick ,
  Bash ,
  Collision ,
  Count
}
 
enum  StrikeType {
  Invalid = -1 ,
  Swing = 0 ,
  Thrust
}
 
enum  EquipmentIndex : int {
  None = -1 ,
  WeaponItemBeginSlot = 0 ,
  Weapon0 = 0 ,
  Weapon1 ,
  Weapon2 ,
  Weapon3 ,
  ExtraWeaponSlot ,
  NumAllWeaponSlots = (ExtraWeaponSlot - Weapon0) + 1 ,
  NumPrimaryWeaponSlots = (Weapon3 - Weapon0) + 1 ,
  NonWeaponItemBeginSlot = 5 ,
  ArmorItemBeginSlot = 5 ,
  Head = 5 ,
  Body ,
  Leg ,
  Gloves ,
  Cape ,
  ArmorItemEndSlot ,
  NumAllArmorSlots = (Cape - Head) + 1 ,
  Horse = 10 ,
  HorseHarness ,
  NumEquipmentSetSlots = HorseHarness + 1
}
 
enum  ForestDensity {
  None = 0 ,
  Low = 1 ,
  High = 2 ,
  Count = High
}
 
enum  FormationClass {
  Infantry = 0 ,
  Ranged = 1 ,
  Cavalry = 2 ,
  HorseArcher = 3 ,
  NumberOfDefaultFormations = 4 ,
  Skirmisher = 4 ,
  HeavyInfantry = 5 ,
  LightCavalry = 6 ,
  HeavyCavalry = 7 ,
  NumberOfRegularFormations = 8 ,
  General = 8 ,
  Bodyguard = 9 ,
  NumberOfAllFormations = 10 ,
  Unset = 10 ,
  NumberOfAllFormationsWithUnset = 11
}
 
enum  DeploymentFormationClass {
  Unset = 0 ,
  Infantry ,
  Ranged ,
  Cavalry ,
  HorseArcher ,
  InfantryAndRanged ,
  CavalryAndHorseArcher
}
 
enum  TroopUsageFlags : ushort {
  None = 0x0 ,
  OnFoot = 0x1 ,
  Mounted = 0x1 << 1 ,
  Melee = 0x1 << 2 ,
  Ranged = 0x1 << 3 ,
  OneHandedUser = 0x1 << 4 ,
  ShieldUser = 0x1 << 5 ,
  TwoHandedUser = 0x1 << 6 ,
  PolearmUser = 0x1 << 7 ,
  BowUser = 0x1 << 8 ,
  ThrownUser = 0x1 << 9 ,
  CrossbowUser = 0x1 << 10 ,
  Undefined = 0xFFFF
}
 
enum  TroopType {
  Invalid = -1 ,
  Infantry ,
  Ranged ,
  Cavalry ,
  NumberOfTroopTypes
}
 
enum  FormationFilterType {
  Unset = 0 ,
  Shield ,
  Spear ,
  Thrown ,
  Heavy ,
  HighTier ,
  LowTier ,
  NumberOfFilterTypes
}
 
enum  FormationPositionPreference : int {
  Back = 0 ,
  Middle ,
  Front
}
 
enum  GameManagerLoadingSteps : int {
  None = -1 ,
  PreInitializeZerothStep = 0 ,
  FirstInitializeFirstStep ,
  WaitSecondStep ,
  SecondInitializeThirdState ,
  PostInitializeFourthState ,
  FinishLoadingFifthStep ,
  LoadingIsOver
}
 
enum  GameTypeLoadingStates : int {
  None = -1 ,
  InitializeFirstStep = 0 ,
  WaitSecondStep ,
  LoadVisualsThirdState ,
  PostInitializeFourthState
}
 
enum  SpectatorCameraTypes {
  Invalid = -1 ,
  Free = 0 ,
  LockToMainPlayer ,
  LockToAnyAgent ,
  LockToAnyPlayer ,
  LockToPlayerFormation ,
  LockToTeamMembers ,
  LockToTeamMembersView ,
  LockToPosition ,
  Count
}
 
enum  FaceGeneratorStage {
  Body ,
  Face ,
  Eyes ,
  Nose ,
  Mouth ,
  Hair ,
  Taint
}
 
enum  MissionMode : int {
  StartUp = 0 ,
  Conversation ,
  Battle ,
  Duel ,
  Stealth ,
  Barter ,
  Deployment ,
  Tournament ,
  Replay ,
  CutScene ,
  Benchmark
}
 
enum  ItemFlags : uint {
  ForceAttachOffHandPrimaryItemBone = 0x00000100 ,
  ForceAttachOffHandSecondaryItemBone = 0x00000200 ,
  AttachmentMask = 0x00000300 ,
  NotUsableByFemale = 0x00000400 ,
  NotUsableByMale = 0x00000800 ,
  DropOnWeaponChange = 0x00001000 ,
  DropOnAnyAction = 0x00002000 ,
  CannotBePickedUp = 0x00004000 ,
  CanBePickedUpFromCorpse = 0x00008000 ,
  QuickFadeOut = 0x00010000 ,
  WoodenAttack = 0x00020000 ,
  WoodenParry = 0x00040000 ,
  HeldInOffHand = 0x00080000 ,
  HasToBeHeldUp = 0x00100000 ,
  UseTeamColor = 0x00200000 ,
  Civilian = 0x00400000 ,
  DoNotScaleBodyAccordingToWeaponLength = 0x00800000 ,
  DoesNotHideChest = 0x01000000 ,
  NotStackable = 0x02000000 ,
  Stealth = 0x04000000 ,
  DoesNotSpawnWhenDropped = 0x08000000
}
 Keep synched with Weapon.h, item_flags. More...
 
enum  WeaponFlags : ulong {
  MeleeWeapon = 0x0000000000000001 ,
  RangedWeapon = 0x0000000000000002 ,
  WeaponMask = 0x0000000000000003 ,
  FirearmAmmo = 0x0000000000000004 ,
  NotUsableWithOneHand = 0x0000000000000010 ,
  NotUsableWithTwoHand = 0x0000000000000020 ,
  HandUsageMask = 0x0000000000000030 ,
  WideGrip = 0x0000000000000040 ,
  AttachAmmoToVisual = 0x0000000000000080 ,
  Consumable = 0x0000000000000100 ,
  HasHitPoints = 0x0000000000000200 ,
  DataValueMask = 0x0000000000000300 ,
  HasString = 0x0000000000000400 ,
  StringHeldByHand = 0x0000000000000C00 ,
  UnloadWhenSheathed = 0x0000000000001000 ,
  AffectsArea = 0x0000000000002000 ,
  AffectsAreaBig = 0x0000000000004000 ,
  Burning = 0x0000000000008000 ,
  BonusAgainstShield = 0x0000000000010000 ,
  CanPenetrateShield = 0x0000000000020000 ,
  CantReloadOnHorseback = 0x0000000000040000 ,
  AutoReload = 0x0000000000080000 ,
  CanBeUsedWhileCrouched = 0x0000000000100000 ,
  TwoHandIdleOnMount = 0x0000000000200000 ,
  NoBlood = 0x0000000000400000 ,
  PenaltyWithShield = 0x0000000000800000 ,
  CanDismount = 0x0000000001000000 ,
  CanHook = 0x0000000002000000 ,
  CanKnockDown = 0x0000000004000000 ,
  CanCrushThrough = 0x0000000008000000 ,
  CanBlockRanged = 0x0000000010000000 ,
  MissileWithPhysics = 0x0000000020000000 ,
  MultiplePenetration = 0x0000000040000000 ,
  LeavesTrail = 0x0000000080000000 ,
  UseHandAsThrowBase = 0x0000000100000000 ,
  HeldBackwards = 0x0000000200000000 ,
  CanKillEvenIfBlunt = 0x0000000400000000 ,
  AmmoBreaksOnBounceBack = 0x0000001000000000 ,
  AmmoCanBreakOnBounceBack = 0x0000002000000000 ,
  AmmoBreakOnBounceBackMask = 0x0000003000000000 ,
  AmmoSticksWhenShot = 0x0000004000000000
}
 Keep synched with Weapon.h, weapon_flags. More...
 
enum  ItemQuality {
  Poor = 0 ,
  Inferior = 1 ,
  Common = 2 ,
  Fine = 3 ,
  Masterwork = 4 ,
  Legendary = 5
}
 
enum  ManagedParametersEnum {
  EnableCampaignTutorials ,
  ReducedMouseSensitivityMultiplier ,
  MeleeAddedElevationForCrosshair ,
  BipedalRadius ,
  QuadrupedalRadius ,
  BipedalCombatSpeedMinMultiplier ,
  BipedalCombatSpeedMaxMultiplier ,
  BipedalRangedReadySpeedMultiplier ,
  BipedalRangedReloadSpeedMultiplier ,
  DamageInterruptAttackThresholdPierce ,
  DamageInterruptAttackThresholdCut ,
  DamageInterruptAttackThresholdBlunt ,
  MakesRearAttackDamageThreshold ,
  MissileMinimumDamageToStick ,
  BreakableProjectileMinimumBreakSpeed ,
  FistFightDamageMultiplier ,
  FallDamageMultiplier ,
  FallDamageAbsorption ,
  FallSpeedReductionMultiplierForRiderDamage ,
  SwingHitWithArmDamageMultiplier ,
  ThrustHitWithArmDamageMultiplier ,
  NonTipThrustHitDamageMultiplier ,
  SwingCombatSpeedGraphZeroProgressValue ,
  SwingCombatSpeedGraphFirstMaximumPoint ,
  SwingCombatSpeedGraphSecondMaximumPoint ,
  SwingCombatSpeedGraphOneProgressValue ,
  OverSwingCombatSpeedGraphZeroProgressValue ,
  OverSwingCombatSpeedGraphFirstMaximumPoint ,
  OverSwingCombatSpeedGraphSecondMaximumPoint ,
  OverSwingCombatSpeedGraphOneProgressValue ,
  ThrustCombatSpeedGraphZeroProgressValue ,
  ThrustCombatSpeedGraphFirstMaximumPoint ,
  ThrustCombatSpeedGraphSecondMaximumPoint ,
  ThrustCombatSpeedGraphOneProgressValue ,
  StunPeriodAttackerSwing ,
  StunPeriodAttackerThrust ,
  StunDefendWeaponWeightOffsetShield ,
  StunDefendWeaponWeightMultiplierWeaponWeight ,
  StunDefendWeaponWeightBonusTwoHanded ,
  StunDefendWeaponWeightBonusPolearm ,
  StunMomentumTransferFactor ,
  StunDefendWeaponWeightParryMultiplier ,
  StunDefendWeaponWeightBonusRightStance ,
  StunDefendWeaponWeightBonusActiveBlocked ,
  StunDefendWeaponWeightBonusChamberBlocked ,
  StunPeriodAttackerFriendlyFire ,
  StunPeriodMax ,
  ProjectileMaxPenetrationSpeed ,
  ObjectMinPenetration ,
  ObjectMaxPenetration ,
  ProjectileMinPenetration ,
  ProjectileMaxPenetration ,
  RotatingProjectileMinPenetration ,
  RotatingProjectileMaxPenetration ,
  ShieldRightStanceBlockDamageMultiplier ,
  ShieldCorrectSideBlockDamageMultiplier ,
  AgentProjectileNormalWeight ,
  ProjectileNormalWeight ,
  ShieldPenetrationOffset ,
  ShieldPenetrationFactor ,
  AirFrictionJavelin ,
  AirFrictionArrow ,
  AirFrictionBallistaBolt ,
  AirFrictionBullet ,
  AirFrictionKnife ,
  AirFrictionAxe ,
  AirFrictionStone ,
  AirFrictionBoulder ,
  AirFrictionBallistaStone ,
  AirFrictionBallistaBoulder ,
  HeavyAttackMomentumMultiplier ,
  ActivateHeroTest ,
  Count
}
 
enum  EquipmentFlags : uint {
  None = 0x00000000 ,
  IsWandererEquipment = 0x00000001 ,
  IsGentryEquipment = 0x00000002 ,
  IsRebelHeroEquipment = 0x00000004 ,
  IsNoncombatantTemplate = 0x00000008 ,
  IsCombatantTemplate = 0x00000010 ,
  IsCivilianTemplate = 0x00000020 ,
  IsNobleTemplate = 0x00000040 ,
  IsFemaleTemplate = 0x00000080 ,
  IsMediumTemplate = 0x00000100 ,
  IsHeavyTemplate = 0x00000200 ,
  IsFlamboyantTemplate = 0x00000400 ,
  IsStoicTemplate = 0x00000800 ,
  IsNomadTemplate = 0x00001000 ,
  IsWoodlandTemplate = 0x00002000 ,
  IsChildEquipmentTemplate = 0x00004000 ,
  IsTeenagerEquipmentTemplate = 0x00008000
}
 
enum  ModuleCheckResultType {
  ModuleRemovedFromGame ,
  ModuleAddedToGame ,
  VersionMismatch
}
 
enum  HumanBone : sbyte {
  Invalid = -1 ,
  Abdomen = 0 ,
  ThighL ,
  CalfL ,
  FootL ,
  ToeL ,
  ThighR ,
  CalfR ,
  FootR ,
  ToeR ,
  Spine1 ,
  Spine2 ,
  Thorax ,
  Neck ,
  Head ,
  ShoulderL ,
  UpperarmL ,
  UpperarmTwist1L ,
  ForearmL ,
  Forearm1L ,
  HandL ,
  ItemL ,
  ShoulderR ,
  UpperarmR ,
  UpperarmTwist1R ,
  ForearmR ,
  Forearm1R ,
  HandR ,
  ItemR
}
 This is not the real bone index. Use the enum with boneMapping to get the real bone index! More...
 
enum  SailType {
  Square = 0 ,
  Lateen = 1 ,
  Count
}
 
enum  SkillType {
  Personal ,
  Leader ,
  Party
}
 
enum  SkinMask {
  NoneVisible = 0x00000000 ,
  HeadVisible = 0x00000001 ,
  BodyVisible = 0x00000020 ,
  UnderwearVisible = 0x00000040 ,
  HandsVisible = 0x00000080 ,
  LegsVisible = 0x00000100 ,
  AllVisible = HeadVisible | BodyVisible | UnderwearVisible | HandsVisible | LegsVisible
}
 
enum  TeamSideEnum {
  None = -1 ,
  PlayerTeam = 0 ,
  PlayerAllyTeam = 1 ,
  EnemyTeam = 2 ,
  NumSides = 3
}
 
enum  TerrainType : int {
  Plain = 1 ,
  Desert = 2 ,
  Snow = 3 ,
  Forest = 4 ,
  Steppe = 5 ,
  Fording = 6 ,
  Mountain = 7 ,
  Lake = 8 ,
  Water = 10 ,
  River = 11 ,
  Canyon = 13 ,
  RuralArea = 14 ,
  Swamp = 15 ,
  Dune = 16 ,
  Bridge = 17 ,
  CoastalSea = 18 ,
  OpenSea = 19 ,
  Beach = 20 ,
  Cliff = 21 ,
  NonNavigableRiver = 22 ,
  LandRestriction = 23 ,
  SeaRestriction = 24 ,
  UnderBridge = 25
}
 !this enumeration is also defined at Map_sound_manager.h, please change that too More...
 
enum  TroopTraitsMask : ushort {
  None = 0 ,
  Melee = 1 << 0 ,
  Ranged = 1 << 1 ,
  Mount = 1 << 2 ,
  Armor = 1 << 3 ,
  Thrown = 1 << 4 ,
  Spear = 1 << 5 ,
  Shield = 1 << 6 ,
  LowTier = 1 << 7 ,
  HighTier = 1 << 8 ,
  All = 0x1FF
}
 Mask for filtering troops (both agent origins and agents) with respect to their traits. More...
 
enum  TutorialContexts {
  None ,
  PartyScreen ,
  InventoryScreen ,
  CharacterScreen ,
  MapWindow ,
  RecruitmentWindow ,
  ClanScreen ,
  KingdomScreen ,
  Mission ,
  EncyclopediaWindow ,
  ArmyManagement ,
  QuestsScreen ,
  EducationScreen ,
  OptionsScreen ,
  CraftingScreen ,
  GameOverScreen ,
  EscapeMenu
}
 
enum  UnitSpawnPrioritizations {
  Default ,
  HighLevel ,
  LowLevel ,
  Homogeneous
}
 
enum  WeaponClass {
  Undefined = 0 ,
  Dagger ,
  OneHandedSword ,
  TwoHandedSword ,
  OneHandedAxe ,
  TwoHandedAxe ,
  Mace ,
  Pick ,
  TwoHandedMace ,
  OneHandedPolearm ,
  TwoHandedPolearm ,
  LowGripPolearm ,
  Arrow ,
  Bolt ,
  SlingStone ,
  Cartridge ,
  Bow ,
  Crossbow ,
  Sling ,
  Stone ,
  Boulder ,
  ThrowingAxe ,
  ThrowingKnife ,
  Javelin ,
  Pistol ,
  Musket ,
  BallistaBoulder ,
  BallistaStone ,
  SmallShield ,
  LargeShield ,
  Banner ,
  NumClasses
}
 

Enumeration Type Documentation

◆ AgentControllerType

Enumerator
None 
AI 
Player 
Count 

◆ DrivenProperty

Enumerator
None 
AiRangedHorsebackMissileRange 
AiFacingMissileWatch 
AiFlyingMissileCheckRadius 
AiShootFreq 
AiWaitBeforeShootFactor 
AIBlockOnDecideAbility 
AIParryOnDecideAbility 
AiTryChamberAttackOnDecide 
AIAttackOnParryChance 
AiAttackOnParryTiming 
AIDecideOnAttackChance 
AIParryOnAttackAbility 
AiKick 
AiAttackCalculationMaxTimeFactor 
AiDecideOnAttackWhenReceiveHitTiming 
AiDecideOnAttackContinueAction 
AiDecideOnAttackingContinue 
AIParryOnAttackingContinueAbility 
AIDecideOnRealizeEnemyBlockingAttackAbility 
AIRealizeBlockingFromIncorrectSideAbility 
AiAttackingShieldDefenseChance 
AiAttackingShieldDefenseTimer 
AiCheckApplyMovementInterval 
AiCheckCalculateMovementInterval 
AiCheckDecideSimpleBehaviorInterval 
AiCheckDoSimpleBehaviorInterval 
AiMovementDelayFactor 
AiParryDecisionChangeValue 
AiDefendWithShieldDecisionChanceValue 
AiMoveEnemySideTimeValue 
AiMinimumDistanceToContinueFactor 
AiChargeHorsebackTargetDistFactor 
AiRangerLeadErrorMin 
AiRangerLeadErrorMax 
AiRangerVerticalErrorMultiplier 
AiRangerHorizontalErrorMultiplier 
AIAttackOnDecideChance 
AiRaiseShieldDelayTimeBase 
AiUseShieldAgainstEnemyMissileProbability 
AiSpeciesIndex 
AiRandomizedDefendDirectionChance 
AiShooterError 
AiWeaponFavorMultiplierMelee 
AiWeaponFavorMultiplierRanged 
AiWeaponFavorMultiplierPolearm 
AISetNoAttackTimerAfterBeingHitAbility 
AISetNoAttackTimerAfterBeingParriedAbility 
AISetNoDefendTimerAfterHittingAbility 
AISetNoDefendTimerAfterParryingAbility 
AIEstimateStunDurationPrecision 
AIHoldingReadyMaxDuration 
AIHoldingReadyVariationPercentage 
MountChargeDamage 
MountDifficulty 
ArmorEncumbrance 
ArmorHead 

Armor rating of the equipment that protects agent's head.

ArmorTorso 

Armor rating of the equipment that protects agent's torso.

ArmorLegs 

Armor rating of the equipment that protects agent's legs.

ArmorArms 

Armor rating of the equipment that protects agent's arms.

UseRealisticBlocking 
ThrowingWeaponDamageMultiplierBonus 
MeleeWeaponDamageMultiplierBonus 
ArmorPenetrationMultiplierCrossbow 
ArmorPenetrationMultiplierBow 
WeaponsEncumbrance 
DamageMultiplierBonus 
SwingSpeedMultiplier 

Speed of the wielded weapon.

ThrustOrRangedReadySpeedMultiplier 
HandlingMultiplier 
ReloadSpeed 

Reload Speed of the wielded weapon. (currently used for crossbow)

MissileSpeedMultiplier 

Multiplies missile speed of the current ranged weapon.

WeaponInaccuracy 

Base accuracy penalty related to the wielded weapon and agent skill. Corresponds to error radius.

AiShooterErrorWoRangeUpdate 
WeaponWorstMobileAccuracyPenalty 

Maximum added accuracy penalty while the agent is moving at maximum speed.

WeaponWorstUnsteadyAccuracyPenalty 

Maximum added accuracy penalty while the agent's weapon is unsteady.

WeaponBestAccuracyWaitTime 
WeaponUnsteadyBeginTime 
WeaponUnsteadyEndTime 
WeaponRotationalAccuracyPenaltyInRadians 

Added accuracy penalty due the agent being turned while its weapon is aimed.

AttributeRiding 
AttributeShield 
AttributeShieldMissileCollisionBodySizeAdder 
ShieldBashStunDurationMultiplier 
KickStunDurationMultiplier 
ReloadMovementPenaltyFactor 
TopSpeedReachDuration 
MaxSpeedMultiplier 
CombatMaxSpeedMultiplier 
CrouchedSpeedMultiplier 
AttributeHorseArchery 
AttributeCourage 
MountManeuver 
MountSpeed 
MountDashAccelerationMultiplier 
BipedalRangedReadySpeedMultiplier 
BipedalRangedReloadSpeedMultiplier 
OffhandWeaponDefendSpeedMultiplier 
Count 
DrivenPropertiesCalculatedAtSpawnEnd 

◆ AgentFlag

Enumerator
None 
Mountable 
CanJump 
CanRear 
CanAttack 
CanDefend 
RunsAwayWhenHit 
CanCharge 
CanBeCharged 
CanClimbLadders 
CanBeInGroup 
CanSprint 
IsHumanoid 
CanGetScared 
CanRide 
CanWieldWeapon 
CanCrouch 
CanGetAlarmed 
CanWander 
CanKick 
CanRetreat 
MoveAsHerd 
MoveForwardOnly 
IsUnique 
CanUseAllBowsMounted 
CanReloadAllXBowsMounted 
CanDeflectArrowsWith2HSword 

◆ AgentMovementMode

Enumerator
None 
Land 
WaterSurface 
WaterDiving 
PhysicsCheck 
NoPhysics 
MovementModeMask 

◆ AgentState

Enumerator
None 

Invalid state. This should never be used.

Active 

Active state, meaning the agent is alive and can attack.

Routed 

Routed state, meaning the agent is alive but disappearing from the field at the border as it is running away.

Unconscious 

Unconscious state, meaning the agent is alive but knocked unconscious and cannot attack or move.

Killed 

Killed state, meaning the agent is killed and cannot attack or move.

Deleted 

Killed state, meaning the agent is deleted from mission.

◆ EffectIncrementType

Enumerator
Invalid 
Add 
AddFactor 

◆ BattleSideEnum

Enumerator
None 
Defender 

Defender side id.

Attacker 

Attacker side id.

NumSides 

A helper item used for counting items.

◆ BattleState

Enumerator
None 

Defender side id.

DefenderVictory 

Attacker side id.

AttackerVictory 

Attacker side id.

DefenderPullBack 

Defender pushed back.

◆ BodyMeshMaturityType

Enumerator
Toddler 
Child 
Tween 
Teenager 
Adult 

◆ CraftingMaterials

Enumerator
IronOre 
Iron1 
Iron2 
Iron3 
Iron4 
Iron5 
Iron6 
Wood 
Charcoal 
NumCraftingMats 

◆ DamageTypes

Enumerator
Invalid 
Cut 
Pierce 
Blunt 
NumberOfDamageTypes 

◆ AgentAttackType

Enumerator
Standard 
Kick 
Bash 
Collision 
Count 

◆ StrikeType

Enumerator
Invalid 
Swing 
Thrust 

◆ EquipmentIndex

Enumerator
None 
WeaponItemBeginSlot 
Weapon0 
Weapon1 
Weapon2 
Weapon3 
ExtraWeaponSlot 
NumAllWeaponSlots 
NumPrimaryWeaponSlots 
NonWeaponItemBeginSlot 
ArmorItemBeginSlot 
Head 
Body 
Leg 
Gloves 
Cape 
ArmorItemEndSlot 
NumAllArmorSlots 
Horse 
HorseHarness 
NumEquipmentSetSlots 

◆ ForestDensity

Enumerator
None 
Low 
High 
Count 

◆ FormationClass

Enumerator
Infantry 
Ranged 
Cavalry 
HorseArcher 
NumberOfDefaultFormations 
Skirmisher 
HeavyInfantry 
LightCavalry 
HeavyCavalry 
NumberOfRegularFormations 
General 
Bodyguard 
NumberOfAllFormations 
Unset 
NumberOfAllFormationsWithUnset 

◆ DeploymentFormationClass

Enumerator
Unset 
Infantry 
Ranged 
Cavalry 
HorseArcher 
InfantryAndRanged 
CavalryAndHorseArcher 

◆ TroopUsageFlags

Enumerator
None 
OnFoot 
Mounted 
Melee 
Ranged 
OneHandedUser 
ShieldUser 
TwoHandedUser 
PolearmUser 
BowUser 
ThrownUser 
CrossbowUser 
Undefined 

◆ TroopType

Enumerator
Invalid 
Infantry 
Ranged 
Cavalry 
NumberOfTroopTypes 

◆ FormationFilterType

Enumerator
Unset 
Shield 
Spear 
Thrown 
Heavy 
HighTier 
LowTier 
NumberOfFilterTypes 

◆ FormationPositionPreference

Enumerator
Back 
Middle 
Front 

◆ GameManagerLoadingSteps

Enumerator
None 
PreInitializeZerothStep 
FirstInitializeFirstStep 
WaitSecondStep 
SecondInitializeThirdState 
PostInitializeFourthState 
FinishLoadingFifthStep 
LoadingIsOver 

◆ GameTypeLoadingStates

Enumerator
None 
InitializeFirstStep 
WaitSecondStep 
LoadVisualsThirdState 
PostInitializeFourthState 

◆ SpectatorCameraTypes

Enumerator
Invalid 
Free 
LockToMainPlayer 
LockToAnyAgent 
LockToAnyPlayer 
LockToPlayerFormation 
LockToTeamMembers 
LockToTeamMembersView 
LockToPosition 
Count 

◆ FaceGeneratorStage

Enumerator
Body 
Face 
Eyes 
Nose 
Mouth 
Hair 
Taint 

◆ MissionMode

Enumerator
StartUp 
Conversation 
Battle 
Duel 
Stealth 
Barter 
Deployment 
Tournament 
Replay 
CutScene 
Benchmark 

◆ ItemFlags

Enumerator
ForceAttachOffHandPrimaryItemBone 
ForceAttachOffHandSecondaryItemBone 
AttachmentMask 
NotUsableByFemale 
NotUsableByMale 
DropOnWeaponChange 
DropOnAnyAction 
CannotBePickedUp 
CanBePickedUpFromCorpse 
QuickFadeOut 
WoodenAttack 
WoodenParry 
HeldInOffHand 
HasToBeHeldUp 
UseTeamColor 
Civilian 
DoNotScaleBodyAccordingToWeaponLength 
DoesNotHideChest 
NotStackable 
Stealth 
DoesNotSpawnWhenDropped 

◆ WeaponFlags

Enumerator
MeleeWeapon 
RangedWeapon 
WeaponMask 
FirearmAmmo 
NotUsableWithOneHand 
NotUsableWithTwoHand 
HandUsageMask 
WideGrip 
AttachAmmoToVisual 
Consumable 
HasHitPoints 
DataValueMask 
HasString 
StringHeldByHand 
UnloadWhenSheathed 
AffectsArea 
AffectsAreaBig 
Burning 
BonusAgainstShield 
CanPenetrateShield 
CantReloadOnHorseback 
AutoReload 
CanBeUsedWhileCrouched 
TwoHandIdleOnMount 
NoBlood 
PenaltyWithShield 
CanDismount 
CanHook 
CanKnockDown 
CanCrushThrough 
CanBlockRanged 
MissileWithPhysics 
MultiplePenetration 
LeavesTrail 
UseHandAsThrowBase 
HeldBackwards 
CanKillEvenIfBlunt 
AmmoBreaksOnBounceBack 
AmmoCanBreakOnBounceBack 
AmmoBreakOnBounceBackMask 
AmmoSticksWhenShot 

◆ ItemQuality

Enumerator
Poor 
Inferior 
Common 
Fine 
Masterwork 
Legendary 

◆ ManagedParametersEnum

Enumerator
EnableCampaignTutorials 
ReducedMouseSensitivityMultiplier 
MeleeAddedElevationForCrosshair 
BipedalRadius 
QuadrupedalRadius 
BipedalCombatSpeedMinMultiplier 
BipedalCombatSpeedMaxMultiplier 
BipedalRangedReadySpeedMultiplier 
BipedalRangedReloadSpeedMultiplier 
DamageInterruptAttackThresholdPierce 
DamageInterruptAttackThresholdCut 
DamageInterruptAttackThresholdBlunt 
MakesRearAttackDamageThreshold 
MissileMinimumDamageToStick 
BreakableProjectileMinimumBreakSpeed 
FistFightDamageMultiplier 
FallDamageMultiplier 
FallDamageAbsorption 
FallSpeedReductionMultiplierForRiderDamage 
SwingHitWithArmDamageMultiplier 
ThrustHitWithArmDamageMultiplier 
NonTipThrustHitDamageMultiplier 
SwingCombatSpeedGraphZeroProgressValue 
SwingCombatSpeedGraphFirstMaximumPoint 
SwingCombatSpeedGraphSecondMaximumPoint 
SwingCombatSpeedGraphOneProgressValue 
OverSwingCombatSpeedGraphZeroProgressValue 
OverSwingCombatSpeedGraphFirstMaximumPoint 
OverSwingCombatSpeedGraphSecondMaximumPoint 
OverSwingCombatSpeedGraphOneProgressValue 
ThrustCombatSpeedGraphZeroProgressValue 
ThrustCombatSpeedGraphFirstMaximumPoint 
ThrustCombatSpeedGraphSecondMaximumPoint 
ThrustCombatSpeedGraphOneProgressValue 
StunPeriodAttackerSwing 
StunPeriodAttackerThrust 
StunDefendWeaponWeightOffsetShield 
StunDefendWeaponWeightMultiplierWeaponWeight 
StunDefendWeaponWeightBonusTwoHanded 
StunDefendWeaponWeightBonusPolearm 
StunMomentumTransferFactor 
StunDefendWeaponWeightParryMultiplier 
StunDefendWeaponWeightBonusRightStance 
StunDefendWeaponWeightBonusActiveBlocked 
StunDefendWeaponWeightBonusChamberBlocked 
StunPeriodAttackerFriendlyFire 
StunPeriodMax 
ProjectileMaxPenetrationSpeed 
ObjectMinPenetration 
ObjectMaxPenetration 
ProjectileMinPenetration 
ProjectileMaxPenetration 
RotatingProjectileMinPenetration 
RotatingProjectileMaxPenetration 
ShieldRightStanceBlockDamageMultiplier 
ShieldCorrectSideBlockDamageMultiplier 
AgentProjectileNormalWeight 
ProjectileNormalWeight 
ShieldPenetrationOffset 
ShieldPenetrationFactor 
AirFrictionJavelin 
AirFrictionArrow 
AirFrictionBallistaBolt 
AirFrictionBullet 
AirFrictionKnife 
AirFrictionAxe 
AirFrictionStone 
AirFrictionBoulder 
AirFrictionBallistaStone 
AirFrictionBallistaBoulder 
HeavyAttackMomentumMultiplier 
ActivateHeroTest 
Count 

◆ EquipmentFlags

Enumerator
None 
IsWandererEquipment 
IsGentryEquipment 
IsRebelHeroEquipment 
IsNoncombatantTemplate 
IsCombatantTemplate 
IsCivilianTemplate 
IsNobleTemplate 
IsFemaleTemplate 
IsMediumTemplate 
IsHeavyTemplate 
IsFlamboyantTemplate 
IsStoicTemplate 
IsNomadTemplate 
IsWoodlandTemplate 
IsChildEquipmentTemplate 
IsTeenagerEquipmentTemplate 

◆ ModuleCheckResultType

Enumerator
ModuleRemovedFromGame 
ModuleAddedToGame 
VersionMismatch 

◆ HumanBone

Enumerator
Invalid 
Abdomen 
ThighL 
CalfL 
FootL 
ToeL 
ThighR 
CalfR 
FootR 
ToeR 
Spine1 
Spine2 
Thorax 
Neck 
Head 
ShoulderL 
UpperarmL 
UpperarmTwist1L 
ForearmL 
Forearm1L 
HandL 
ItemL 
ShoulderR 
UpperarmR 
UpperarmTwist1R 
ForearmR 
Forearm1R 
HandR 
ItemR 

◆ SailType

Enumerator
Square 
Lateen 
Count 

◆ SkillType

Enumerator
Personal 
Leader 
Party 

◆ SkinMask

Enumerator
NoneVisible 
HeadVisible 
BodyVisible 
UnderwearVisible 
HandsVisible 
LegsVisible 
AllVisible 

◆ TeamSideEnum

Enumerator
None 
PlayerTeam 
PlayerAllyTeam 
EnemyTeam 
NumSides 

◆ TerrainType

Enumerator
Plain 
Desert 
Snow 
Forest 
Steppe 
Fording 
Mountain 
Lake 
Water 
River 
Canyon 
RuralArea 
Swamp 
Dune 
Bridge 
CoastalSea 
OpenSea 
Beach 
Cliff 
NonNavigableRiver 
LandRestriction 
SeaRestriction 
UnderBridge 

◆ TroopTraitsMask

Enumerator
None 
Melee 
Ranged 
Mount 
Armor 
Thrown 
Spear 
Shield 
LowTier 
HighTier 
All 

◆ TutorialContexts

Enumerator
None 
PartyScreen 
InventoryScreen 
CharacterScreen 
MapWindow 
RecruitmentWindow 
ClanScreen 
KingdomScreen 
Mission 
EncyclopediaWindow 
ArmyManagement 
QuestsScreen 
EducationScreen 
OptionsScreen 
CraftingScreen 
GameOverScreen 
EscapeMenu 

◆ UnitSpawnPrioritizations

Enumerator
Default 
HighLevel 
LowLevel 
Homogeneous 

◆ WeaponClass

Enumerator
Undefined 
Dagger 
OneHandedSword 
TwoHandedSword 
OneHandedAxe 
TwoHandedAxe 
Mace 
Pick 
TwoHandedMace 
OneHandedPolearm 
TwoHandedPolearm 
LowGripPolearm 
Arrow 
Bolt 
SlingStone 
Cartridge 
Bow 
Crossbow 
Sling 
Stone 
Boulder 
ThrowingAxe 
ThrowingKnife 
Javelin 
Pistol 
Musket 
BallistaBoulder 
BallistaStone 
SmallShield 
LargeShield 
Banner 
NumClasses