A structure offset is data each unit holds for itself. The addresses below are unit 0's; unit i is this plus 0x150 * i. The lesson covers the idea.
Check the SC:R support level before using one. An address marked Unsupported throws EUD ERROR on Remastered, which is where code copied from 1.16.1-era material usually dies.
| CUnit - Irradiate Player ID | 0x59CDC8 · EPD 19097 · 1B × 1 · SC:R Supported — Player ID who irradiated the unit. |
|---|---|
| CUnit - Matrix Timer | 0x59CDBC · EPD 19094 · 1B × 1 · SC:R Supported — The amount of time remaining for matrix by a science vessel. |
| CUnit - Maelstorm Timer | 0x59CDCC · EPD 19098 · 1B × 1 · SC:R Supported — The remaining time that a unit has before Maelstorm wears off. |
| CUnit - Irradiate Timer | 0x59CDC0 · EPD 19095 · 1B × 1 · SC:R Supported — The amount of time remaining for irradiate by a science vessel. |
| CUnit - Carrier/Reaver - In Hangar Count | 0x59CD70 · EPD 19075 · 1B × 1 · SC:R Supported — Amount of units in hangar. Also: Scarab/Interceptor - pointer to next scarab/interceptor Beacon - Flag spawn frame Building - Tech type/upgrade type/larva timer/landing timer Worker - Target resource CUnit pointer |
| CUnit - Vulture - Spider Mines | 0x59CD68 · EPD 19073 · 1B × 1 · SC:R Supported — The amount of spider mines that a vulture has left. Also: Carrier/Reaver - Pointer to first CUnit inside the hangar Scarab/Interceptor - Pointer to parent Beacon - Unknown Building - Addon CUnit pointer Worker - Powerup CUnit pointer |
| CUnit - Remaining Build Time | 0x59CD54 · EPD 19068 · 2B × 1 · SC:R Supported — The remaining time before a building is constructed. |
| CUnit - Position Coordinates | 0x59CCD0 · EPD 19035 · 2B × 2 · SC:R Supported — The coordinates of a unit on the map (X + 65536*Y). |
| CUnit - Halt X Coordinate | 0x59CCD4 · EPD 19036 · 4B × 1 · SC:R Supported — The X coordinate of a unit on the map (*256). |
| CUnit - Halt Y Coordinate | 0x59CCD8 · EPD 19037 · 4B × 1 · SC:R Supported — The Y coordinate of a unit on the map (*256). |
| CUnit - Rally - Rally Coordinates | 0x59CDA0 · EPD 19087 · 2B × 2 · SC:R Supported — The coordinates of a rally from a building (X + 65536*Y) 0x0000FFFF - X coordinate 0xFFFF0000 - Y coordinate For pylons: Previous Psi Provider (CUnit pointer) |
| CUnit - HP | 0x59CCB0 · EPD 19027 · 4B × 1 · SC:R Supported — Amount of HP that a unit currently has. Value displayed in-game is divided by 256. For example, a Marine that has 40 HP in-game would have 10240 or 0x2800 HP in memory. Offset from unit index address: 0x08 Unit Index 0 HP = 0x0059CCA8 + 0x08 = 0x0059CCB0 Unit Index 1 HP = 0x00628298 + 0x08 = 0x006282A0 Unit Index 2 HP = 0x00628148 + 0x08 = 0x00628150 Example: Regenerate HP for unit at index 2 to a max of 100 HP Unit Index 2 HP = 0x00628148 + 0x08 = 0x00628150 Trigger("Player 1"){ Conditions: // HP is less than 100 MemoryAddr(0x628150, At most, 25599); Actions: // Add 16/256 HP MemoryAddr(0x628150, Add, 16); Preserve Trigger(); } //-----------------------------------------------------------------// Trigger("Player 1"){ Conditions: // HP is over 100 MemoryAddr(0x628150, At least, 25601); Actions: // Set to 100 HP MemoryAddr(0x628150, Set To, 25600); Preserve Trigger(); } |
| CUnit - Shield Points | 0x59CD08 · EPD 19049 · 4B × 1 · SC:R Supported — The amount of shield points that a unit have (*256). |
| CUnit - Unused 0x08C | 0x59CD34 · EPD 19060 · 2B × 1 · SC:R Supported |
| CUnit - Flingy Acceleration | 0x59CCF0 · EPD 19043 · 2B × 1 · SC:R Supported |
| CUnit - Player ID | 0x59CCF4 · EPD 19044 · 1B × 1 · SC:R Supported — The owner of the cunit. Mask: 0x000000FF *1 P1: 00 P2: 01 P3: 02 etc. |
| CUnit - Order Target Unit | 0x59CD04 · EPD 19048 · 4B × 1 · SC:R Supported — The unit targeted by another unit (Index Pointer). |
| CUnit - Order Coordinates | 0x59CD00 · EPD 19047 · 2B × 2 · SC:R Supported — The coordinates of an order given to a unit (X + 65536*Y) Advice: use a trigger duplicator. X: *1 Mask: 0x0000FFFF Y: *65536 Mask: 0xFFFF0000 |
| CUnit - Main Order Timer | 0x59CCFC · EPD 19046 · 1B × 1 · SC:R Supported — A timer for orders. An example would be the time left before a worker harvest the gas from a mine or transport unloading. |
| CUnit - Cooldown | 0x59CCFD · EPD 19046 (+1) · 1B × 3 · SC:R Supported — The firing rate (or cooldown) for ground weapons (*256). 0x0059CCFD The firing rate (or cooldown) for air weapons (*65536). 0x0059CCFE The casting rate (or cooldown) for spells (*16777216). 0x0059CCFF |
| CUnit - Main Order ID | 0x59CCF5 · EPD 19044 (+1) · 1B × 1 · SC:R Supported — Specification of type of order given. See http://www.staredit.net/wiki/index.php?title=Orders.dat_Entry_Listing Mask: 0x0000FF00 *256 |
| CUnit - Main Order State | 0x59CCF6 · EPD 19044 (+2) · 1B × 1 · SC:R Supported — Additional order (*65536) information. More extensive testing is necessary. BWAPI doc: 0x01 Moving/Following Order 0x02 No collide (Larva)? 0x04 Harvesting? Working? 0x08 Constructing Stationary Note: I don't actually think these are flags |
| CUnit - Order Signal | 0x59CCF7 · EPD 19044 (+3) · 1B × 1 · SC:R Supported — Additional order (*16777216) information. Set by iscript. BWAPI doc: 0x01 Update building graphic/state 0x02 Casting spell 0x04 Reset collision? Always enabled for hallucination... 0x10 Lift/Land state Potential Link: https://github.com/bwapi/bwapi/blob/master/Documentation/dox/orders.dox |
| CUnit - Sprite | 0x59CCB4 · EPD 19028 · 4B × 1 · SC:R Supported — Pointer to CSprite. Contains the graphics of the unit. |
| CUnit - Carrier/Reaver - Out Hangar Count | 0x59CD71 · EPD 19075 (+1) · 1B × 1 · SC:R Supported — The amount of interceptors that a carrier has (*256). Also: Building - Upgrade type |
| CUnit - Building - Larva Spawn Timer | 0x59CD72 · EPD 19075 (+2) · 1B × 1 · SC:R Supported — The remaining time left before a larva is created on buildings (*65536). |
| CUnit - Building - Landing Timer | 0x59CD73 · EPD 19075 (+3) · 1B × 1 · SC:R Supported — Detects if a Terran building is landing (*16777216). |
| CUnit - Stim Timer | 0x59CDBD · EPD 19094 · 1B × 1 · SC:R Supported — The amount of time remaining (*256) for the stim effect applied to a marine or firebat. |
| CUnit - Ensnare Timer | 0x59CDBE · EPD 19094 (+2) · 1B × 1 · SC:R Supported — The amount of time remaining (*65536) to ensure by a queen, infested Kerrigan. Initialised to 75 (4915200). Timers decay 1 tick per 8 frames, so 75 / 2.9762 = 25.2 RL seconds on Fastest. 75 timer * 8 frame * 0.042 seconds (Which is MS) |
| CUnit - Lockdown Timer | 0x59CDBF · EPD 19094 (+3) · 1B × 1 · SC:R Supported — The amount of time remaining (*16777216) for lockdown by a ghost. Initialised to 131 (2,197,815,296). Timers decay 1 tick per 8 frames, so 131 / 2.9762 = 44.02 RL seconds on Fastest. |
| CUnit - Stasis Timer | 0x59CDC1 · EPD 19095 (+1) · 1B × 1 · SC:R Supported — The amount of time remaining (*256) for stasis by a arbiter. |
| CUnit - Storm Timer | 0x59CDC3 · EPD 19095 (+3) · 1B × 1 · SC:R Supported — If a unit is under storm (*16777216) |
| CUnit - Blind State | 0x59CDCB · EPD 19097 (+3) · 1B × 1 · SC:R Supported — Detects if a unit has been blinded (*16777216) by a medic. |
| CUnit - Button Set | 0x59CD3C · EPD 19062 · 2B × 1 · SC:R Supported — The current button set of a unit. |
| CUnit - Order Queue Count | 0x59CD2C · EPD 19058 · 1B × 1 · SC:R Supported — The number of queued orders a unit currently has. |
| CUnit - Rally - Rally Unit | 0x59CDA4 · EPD 19088 · 4B × 1 · SC:R Supported — The unit that a building set their rally to (CUnit pointer). For pylons: Next Psi Provider (CUnit pointer) |
| CUnit - Is Healing | 0x59CDAF · EPD 19090 (+3) · 1B × 1 · SC:R Supported — Detects if a unit is currently being healed (*16777216). |
| CUnit - Remove Timer | 0x59CDB8 · EPD 19093 · 2B × 1 · SC:R Supported — When this timer equals 0, the following are destroyed: hallucinations Swarm Disruption Web Broodlings Could be more? |
| CUnit - Plague Timer | 0x59CDC2 · EPD 19095 (+2) · 1B × 1 · SC:R Supported — Detects if a unit has been plagued by defiler (*65536) |
| CUnit - Unit beingBuilt | 0x59CD94 · EPD 19084 · 4B × 1 · SC:R Unsupported — The current unit that's being produced from a building. For a better description of what this does, more testing is necessary. |
| CUnit - Acid Spore 1/9 | 0x59CDCF · EPD 19098 (+3) · 1B × 1 · SC:R support level not stated — See Description [SCR: Other acid spore timers are NOT supported and give EUD errors on access] Timer for 1st of 9 acid spores applied to a unit (*16777216) Initialised to 150 (2,516,582,400). Timers decay 1 tick per 8 frames, so 150 / 2.9762 = 50.4 RL seconds on Fastest. This is the timer for the first acid spore that hits a target, you can reduce the value and the spore will decay quickly as expected. When a 2nd spore is applied that timer is recorded separately and independently. The first spore will decay as per its timer and the 2nd one decays based on its timer. |
| CUnit - Acid Spore 2/9 | 0x59CDD0 · EPD 19099 · 1B × 1 · SC:R Unsupported — Timer for 2nd of 9 acid spores applied to a unit Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Acid Spore Count | 0x59CDCE · EPD 19098 (+2) · 1B × 1 · SC:R Supported — The amount of Acid Spores applied to a unit (*65536). This value is incremented when a spore timer becomes non-0, and decremented when a spore timer becomes 0. It represents the extra damage (+1) and weapon cooldown (+12.5% per spore) inflicted on the current unit, and controls which overlay graphic to display and the green "Acid Spore (x)" rank string. Artificially decrementing this value can result in an underflow wrap-around to 255 if a spore timer subsequently decrements to 0. Unfortunately the code to remove the graphical overlay is tied to the last spore timer decrementing to 0, so simply setting this value back to 0 does not remove the graphical overlay. The best approach is to detect if the value is at least 10, then set the value to 1 and set sporeTimer[1] to 1, so that when it decrements the graphical overlay will be removed. |
| CUnit - Acid Spore 3/9 | 0x59CDD1 · EPD 19099 (+1) · 1B × 1 · SC:R Unsupported — Timer for 3rd of 9 acid spores applied to a unit (*256) Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Acid Spore 4/9 | 0x59CDD2 · EPD 19099 (+2) · 1B × 1 · SC:R Unsupported — Timer for 4th of 9 acid spores applied to a unit (*65536) Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Acid Spore 5/9 | 0x59CDD3 · EPD 19099 (+3) · 1B × 1 · SC:R Unsupported — Timer for 5th of 9 acid spores applied to a unit (*16777216) Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Acid Spore 6/9 | 0x59CDD4 · EPD 19100 · 1B × 1 · SC:R Unsupported — Timer for 6th of 9 acid spores applied to a unit Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Acid Spore 7/9 | 0x59CDD5 · EPD 19100 (+1) · 1B × 1 · SC:R Unsupported — Timer for 7th of 9 acid spores applied to a unit (*256) Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Acid Spore 8/9 | 0x59CDD6 · EPD 19100 (+2) · 1B × 1 · SC:R Unsupported — Timer for 8th of 9 acid spores applied to a unit (*65536) Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Acid Spore 9/9 | 0x59CDD7 · EPD 19100 (+3) · 1B × 1 · SC:R Unsupported — Timer for 9th of 9 acid spores applied to a unit (*16777216) Refer to http://farty1billion.dyndns.org/EUDdb/?pg=entry&id=595 |
| CUnit - Repulse Angle | 0x59CDF5 · EPD 19108 (+1) · 1B × 1 · SC:R Supported — Updated when the air unit is being pushed (*256). Need more testing. Set entire Player ID to 0 to remove air repulsion for the CUnit. |
| CUnit - Drift X | 0x59CDF6 · EPD 19108 (+2) · 1B × 1 · SC:R Supported — For air units when they're pushed (*65536) on X-axis. Formula from BWAPI: (mapsizex/1.5 max) Need more testing. |
| CUnit - Drift Y | 0x59CDF7 · EPD 19108 (+3) · 1B × 1 · SC:R Supported — For air units when they're pushed (*16777216) on Y-axis. Formula from BWAPI: (mapsizex/1.5 max) Need more testing. |
| CUnit - Matrix Damage Absorption | 0x59CDBA · EPD 19093 (+2) · 2B × 1 · SC:R Supported — The amount of damage the matrix has absorbed (*16777216). |
| CUnit - Flingy Movement Type | 0x59CCCF · EPD 19034 (+3) · 1B × 1 · SC:R Supported — The type of movement that the unit use (*16777216). |
| CUnit - Flingy ID | 0x59CCCC · EPD 19034 · 2B × 1 · SC:R Supported — The Flingy ID of the unit. |
| CUnit - Flingy Turn Radius | 0x59CCCA · EPD 19033 (+2) · 1B × 1 · SC:R Supported — "The unit flips out when this is frozen on a specific value. It will have difficulty turning, and will usually be seen walking diagonally instead of facing the direction it is actually walking towards." -Roy |
| CUnit - Movement Flags | 0x59CCC8 · EPD 19033 · 1B × 1 · SC:R Supported — Flags that enable/disable certain movement. Need more testing. 0x01 - Ordered at least once 0x02 - Accelerating 0x04 - Breaking 0x08 - Starting attack 0x10 - Moving 0x20 - Lifted 0x40 - Unknown 0x80 - Always zero |
| CUnit - Next Target Waypoint | 0x59CCC4 · EPD 19032 · 4B × 1 · SC:R Unsupported — 0x0000FFFF x-coord 0xFFFF0000 y-coord The desired position (bwapi) "When this is set to a certain point, a unit will face in the direction of that point while it idles. This has no effect on the unit when it's moving. By default, it was on the current position of the Marine. When the unit is attacking another unit, this point is set to the unit's target. This is likely used to make a unit face its target when attacking." -Roy |
| CUnit - Move Acceleration | 0x59CCE0 · EPD 19039 · 4B × 1 · SC:R Supported — CUnit.current_speed1 Related to turning and from observations, it is apparent that this is similar (or the same) to the move speed of a unit. |
| CUnit - Move Speed | 0x59CCE4 · EPD 19040 · 4B × 1 · SC:R Supported — CUnit.current_speed2 The speed that the unit is currently moving at. An example of this in use would be to tell the difference between a marine that is using Stim Packs and a marine that is not using Stim Packs. |
| CUnit - Move Speed On X-Axis | 0x59CCE8 · EPD 19041 · 4B × 1 · SC:R Supported — CUnit.current_speed.x The speed that the unit is currently moving at on the X-Axis (Left = Negative, Right = Positive). An example of this would be to detect if a unit is absolutely moving towards the right (not diagonally). |
| CUnit - Move Speed On Y-Axis | 0x59CCEC · EPD 19042 · 4B × 1 · SC:R Supported — CUnit.current_speed.y The speed that the unit is currently moving at on the Y-Axis (Up = Negative, Down = Positive). An example of this in use would be to tell if a unit is going absolutely down (not diagonally). |
| CUnit - Order Unit Type | 0x59CCF8 · EPD 19045 · 2B × 1 · SC:R Supported — 228 = none? |
| CUnit - Status Flags | 0x59CD84 · EPD 19080 · 4B × 1 · SC:R Supported — https://github.com/bwapi/bwapi/blob/master/bwapi/BWAPI/Source/BW/UnitStatusFlags.h 0x00000001 - Completed 0x00000002 - GroundedBuilding (Building on the ground) 0x00000004 - In Air 0x00000008 - Disabled (Protoss unpowered) 0x00000010 - Burrowed 0x00000020 - In Building 0x00000040 - In Transport 0x00000080 - Unknown (Target acquisition) 0x00000100 - Requires detection 0x00000200 - Cloaked 0x00000400 - Doodad State thing 0x00000800 - Cloaking for free (no energy to cloak) 0x00001000 - Cannot receive orders 0x00002000 - NoBrkCodeStart (Iscript) 0x00004000 - Unknown 0x00008000 - Cannot Attack (unknown) 0x00010000 - Is A Unit 0x00020000 - Is A Building 0x00040000 - Ignore Tile Collision 0x00080000 - Unknown 0x00100000 - Is Normal (set for normal units, not set for hallucinated units) 0x00200000 - No Collide 0x00400000 - unknown 0x00800000 - Is Gathering 0x01000000 - unknown 0x02000000 - unknown (turret related) 0x04000000 - Invincible 0x08000000 - Holding Position 0x10000000 - Speed Upgrade 0x20000000 - Cooldown Upgrade 0x40000000 - Is Hallucination (set for hallucinated units, not set for normal units) 0x80000000 - Is Self Destructing (Set for when the unit is self-destructing (scarab, scourge, infested terran)) Offset from CUnit Base: 0xDC (= 0x0059CD84 - 0x0059CCA8) |
| CUnit - Resource - Resource Count | 0x59CD78 · EPD 19077 · 2B × 1 · SC:R Supported — Amount of Resource if its Mineral Field or Vespene Gayser Also: Nydus - Exit unit Ghost - Nuke dot sprite Pylon - Power overlay Nuke Silo - Attached nuke Powerup - Origin Coords Gatherer - Harvst target unit Hatchery? - Harvest Value |
| CUnit - Resource - Gatherer Queue Count | 0x59CD7B · EPD 19077 (+3) · 1B × 1 · SC:R Supported — as named in bwapi, or "Boolean on whether is extracted-added by jehn" ??? |
| CUnit - Worker - Previous Harvest Unit | 0x59CD7C · EPD 19078 · 4B × 1 · SC:R Supported — CUnit pointer "When there is a gather conflict" (bwapi) "It is taken to wait unit the next" (jehn) Also: Resource - Next gatherer Silo - Ready |
| CUnit - Worker - Harvest Target Unit | 0x59CD78 · EPD 19077 · 4B × 1 · SC:R Supported — CUnit pointer to harvested mineral/geyser Also: Resource - Resource count/iscript/queue count Nydus - Exit unit Ghost - Nuke dot sprite Pylon - Power overlay Nuke Silo - Attached nuke Powerup - Origin Coords Hatchery? - Harvest Value |
| CUnit - Unit Type | 0x59CD0C · EPD 19050 · 2B × 1 · SC:R Supported |
| CUnit - Current Direction 1 | 0x59CCC9 · EPD 19033 (+1) · 1B × 1 · SC:R Supported — 256 directions starting from the top going clockwise. 0x0000FF00 - *256 |
| CUnit - Velocity Direction 1 | 0x59CCCB · EPD 19033 (+3) · 1B × 1 · SC:R Supported — This usually only differs from the currentDirection field for units that can accelerate and travel in a different direction than they are facing. For example Mutalisks can change the direction they are facing faster than then can change the direction they are moving. |
| CUnit - Flingy Top Speed | 0x59CCDC · EPD 19038 · 4B × 1 · SC:R Supported |
| CUnit - Current Direction 2 | 0x59CCF2 · EPD 19043 (+2) · 1B × 1 · SC:R Supported — The direction a unit is currently facing (*65536) THIS SHIT UPDATES WITH IDLE ANIMATION (GHOSTS/MARINES/FIREBATS ETC) |
| CUnit - Velocity Direction 2 | 0x59CCF3 · EPD 19043 (+3) · 1B × 1 · SC:R Supported — The direction a unit is currently facing (*16777216). Up Least 0 Most 16777215 Up-Right Least 536870912 Most 553648127 Right Least 1073741824 Most 1090519039 Down-Right Least 1610612736 Most 1627389951 Down Least 2147483648 Most 2164260863 Down-Left Least 2684354560 Most 2701131775 Left Least 3221225472 Most 3238002687 Up-Left Least 3758096384 Most 3774873599 |
| CUnit - Order Queue Timer | 0x59CD2D · EPD 19058 (+1) · 1B × 1 · SC:R Supported — BWAPI doc: counts/cycles down from from 8 to 0 (inclusive). See also [Cycle Counter]. |
| CUnit - Unknown 0x086 | 0x59CD2E · EPD 19058 (+2) · 1B × 1 · SC:R Supported — Pathing related? |
| CUnit - Attack Notify Timer | 0x59CD2F · EPD 19058 (+3) · 1B × 1 · SC:R Supported |
| CUnit - Kill Count | 0x59CD37 · EPD 19060 (+3) · 1B × 1 · SC:R Supported — The kill count of a unit (*16777216). |
| CUnit - Rank Increase | 0x59CD36 · EPD 19060 (+2) · 1B × 1 · SC:R Supported — Adds to unit's base rank. (*65536) |
| CUnit - Is Cloaked | 0x59CD3E · EPD 19062 · 1B × 1 · SC:R Supported |
| CUnit - Movement State | 0x59CD3F · EPD 19062 · 1B × 1 · SC:R Supported — https://github.com/bwapi/bwapi/blob/master/bwapi/BWAPI/Source/BW/Path.h // Names are official UM_Init = 0x00, UM_InitSeq = 0x01, UM_Lump = 0x02, UM_Turret = 0x03, UM_Bunker = 0x04, UM_BldgTurret = 0x05, UM_Hidden = 0x06, UM_Flyer = 0x07, UM_FakeFlyer = 0x08, UM_AtRest = 0x09, UM_Dormant = 0x0A, UM_AtMoveTarget = 0x0B, UM_CheckIllegal = 0x0C, UM_MoveToLegal = 0x0D, UM_LumpWannabe = 0x0E, UM_FailedPath = 0x0F, UM_RetryPath = 0x10, UM_StartPath = 0x11, UM_UIOrderDelay = 0x12, UM_TurnAndStart = 0x13, UM_FaceTarget = 0x14, UM_NewMoveTarget = 0x15, UM_AnotherPath = 0x16, UM_Repath = 0x17, UM_RepathMovers = 0x18, UM_FollowPath = 0x19, UM_ScoutPath = 0x1A, UM_ScoutFree = 0x1B, UM_FixCollision = 0x1C, UM_WaitFree = 0x1D, UM_GetFree = 0x1E, UM_SlidePrep = 0x1F, UM_SlideFree = 0x20, UM_ForceMoveFree = 0x21, UM_FixTerrain = 0x22, UM_TerrainSlide = 0x23 |
| CUnit - Energy | 0x59CD4A · EPD 19065 (+2) · 2B × 1 · SC:R Supported — Amount of energy a unit has. (value*256) * 65536 |
| CUnit - Previous HP | 0x59CD56 · EPD 19068 (+2) · 2B × 1 · SC:R Supported — The HP of the unit before it changed (example Drone->Hatchery, the Drone's HP will be stored here) |
| CUnit - Parasite Flags | 0x59CDC9 · EPD 19097 (+1) · 1B × 1 · SC:R Supported — Detects if a unit have been infected with a parasite (*256). Flags connected to player ID. Value is a sum of: P1: 256 P2: 512 P3: 1024 P4: 2048 P5: 4096 P6: 8192 P7: 16384 P8: 32768 |
| CUnit - Cycle Counter | 0x59CDCA · EPD 19097 (+2) · 1B × 1 · SC:R Supported — Counts/cycles up from 0 to 7 inclusive (*65536) |
| CUnit - Unused Timer | 0x59CDCD · EPD 19098 (+1) · 1B × 1 · SC:R Supported — Potentially from Valkyrie Afterburner or Ultralisk Roar. |
| CUnit - Irradiated By | 0x59CDC4 · EPD 19096 · 4B × 1 · SC:R Supported — CUnit pointer to casting unit which irradiated this unit. |
| CUnit - Air Strength | 0x59CDE0 · EPD 19103 · 2B × 1 · SC:R Unsupported |
| CUnit - Ground Strength | 0x59CDE2 · EPD 19103 (+2) · 2B × 1 · SC:R Unsupported |
| CUnit - Previous Unit | 0x59CCA8 · EPD 19025 · 4B × 1 · SC:R Supported |
| CUnit - Next Unit | 0x59CCAC · EPD 19026 · 4B × 1 · SC:R Supported |
| CUnit - Target Pos | 0x59CCB8 · EPD 19029 · 2B × 2 · SC:R Supported — X + 65536*Y |
| CUnit - Target Unit | 0x59CCBC · EPD 19030 · 4B × 1 · SC:R Supported — CUnit target pointer |
| CUnit - Next Movement Waypoint | 0x59CCC0 · EPD 19031 · 2B × 2 · SC:R Unsupported — 0x0000FFFF x-coord 0xFFFF0000 y-coord The next way point in the path the unit is following to get to its destination. Equal to moveToPos for air units since they don't need to navigate around buildings or other units. (bwapi) |
| CUnit - Previous Player Unit | 0x59CD10 · EPD 19051 · 4B × 1 · SC:R Supported — Pointer to previous CUnit owned by the same player |
| CUnit - Next Player Unit | 0x59CD14 · EPD 19052 · 4B × 1 · SC:R Supported — Pointer to the next CUnit owned by the same player. |
| CUnit - Sub Unit | 0x59CD18 · EPD 19053 · 4B × 1 · SC:R Supported — Pointer to this unit's subunit CUnit. |
| CUnit - Order Queue Head | 0x59CD1C · EPD 19054 · 4B × 1 · SC:R support level not stated — (Unsupported?) Pointer to COrder |
| CUnit - Order Queue Tail | 0x59CD20 · EPD 19055 · 4B × 1 · SC:R support level not stated — (Unsupported?) Pointer to COrder. |
| CUnit - Auto-Target Unit | 0x59CD24 · EPD 19056 · 4B × 1 · SC:R Supported — Pointer to CUnit. The auto-acquired target (Note: This field is actually used for different targets internally, especially by the AI) (bwapi) |
| CUnit - Connected Unit | 0x59CD28 · EPD 19057 · 4B × 1 · SC:R Supported — Pointer to CUnit. Addon is connected to building (addon has conntected building, but not in other direction (officially "pAttached") (bwapi) |
| CUnit - Previous Unit Type | 0x59CD30 · EPD 19059 · 2B × 1 · SC:R support level not stated — (Unsupported?) Stores the type of the unit prior to being morphed/constructed (bwapi) |
| CUnit - Last Event Timer | 0x59CD32 · EPD 19059 (+2) · 1B × 1 · SC:R support level not stated — (Unsupported?) countdown that stops being recent when it hits 0 (bwapi) |
| CUnit - Last Event Color | 0x59CD33 · EPD 19059 (+3) · 1B × 1 · SC:R support level not stated — (Unsupported? 17 = was completed (train, morph), 174 = was attacked (bwapi) |
| CUnit - Last Attacking Player | 0x59CD38 · EPD 19061 · 1B × 1 · SC:R Supported — The player that last attacked this unit |
| CUnit - Secondary Order Timer | 0x59CD39 · EPD 19061 (+1) · 1B × 1 · SC:R Supported |
| CUnit - AI Action Flag | 0x59CD3A · EPD 19061 (+2) · 1B × 1 · SC:R Supported — Internal use by AI only (bwapi) |
| CUnit - User Action Flags | 0x59CD3B · EPD 19061 (+3) · 1B × 1 · SC:R Supported — Some flags that change when the user interacts with the unit 2 = issued an order 3 = interrupted an order 4 = self destructing (bwapi) |
| CUnit - Build Queue | 0x59CD40 · EPD 19063 · 2B × 5 · SC:R Supported — Queue of units to build. Note that it doesn't begin with index 0, but with #buildQueueSlot index. (bwapi) |
| CUnit - Build Queue Slot | 0x59CD4C · EPD 19066 · 1B × 1 · SC:R Supported — Index of active unit in #buildQueue. (bwapi) |
| CUnit - Uniqueness Identifier | 0x59CD4D · EPD 19066 (+1) · 1B × 1 · SC:R Supported — A byte used to determine uniqueness of the unit |
| CUnit - Secondary Order ID | 0x59CD4E · EPD 19066 (+2) · 1B × 1 · SC:R Supported — The order ID for passive orders such as Cloak, Build, ExpandCreep, cloaking field, etc. |
| CUnit - Building Overlay State | 0x59CD4F · EPD 19066 (+3) · 1B × 1 · SC:R Supported — 0 means the building has the largest amount of fire/blood (bwapi) |
| CUnit - HP Gain | 0x59CD50 · EPD 19067 · 2B × 1 · SC:R Supported — hp gained on construction or repair (bwapi) |
| CUnit - Loaded Unit Index | 0x59CD58 · EPD 19069 · 2B × 8 · SC:R Unsupported — (Unsupported?) Unit ID's (not pointers) of loaded units. |
| CUnit - Resource Type | 0x59CD88 · EPD 19081 · 1B × 1 · SC:R support level not stated — (Unsupported?) Resource being held by worker: 1 = gas 2 = ore (bwapi) |
| CUnit - Wireframe Randomizer | 0x59CD89 · EPD 19081 (+1) · 1B × 1 · SC:R support level not stated — (Unsupported?) |
| CUnit - Secondary Order State | 0x59CD8A · EPD 19081 (+2) · 1B × 1 · SC:R support level not stated — (Unsupported?) |
| CUnit - Recent Order Time | 0x59CD8B · EPD 19081 (+3) · 1B × 1 · SC:R support level not stated — (Unsupported?) Counts down from 15 to 0 when most orders are given, or when the unit moves after reaching a patrol location (bwapi) |
| CUnit - Visiblity Status | 0x59CD8C · EPD 19082 · 4B × 1 · SC:R support level not stated — (Unsupported?) Flags specifying which players can detect this unit (cloaked/burrowed) (bwapi) |
| CUnit - Secondary Order Position | 0x59CD90 · EPD 19083 · 2B × 2 · SC:R support level not stated — (Unsupported?) Unused according to bwapi. 0x0000FFFF x-coord 0xFFFF0000 y-coord |
| CUnit - Previous Burrowed Unit | 0x59CD98 · EPD 19085 · 4B × 1 · SC:R support level not stated — (Unsupported?) CUnit pointer to previous burrowed unit |
| CUnit - Next Burrowed Unit | 0x59CD9C · EPD 19086 · 4B × 1 · SC:R support level not stated — (Unsupported?) Pointer to CUnit of next burrowed unit |
| CUnit - Pathing Pointer | 0x59CDA8 · EPD 19089 · 4B × 1 · SC:R support level not stated — (Unsupported?) Pointer to pathing data. |
| CUnit - Pathing Collision Interval | 0x59CDAC · EPD 19090 · 1B × 1 · SC:R Supported — Unknown? |
| CUnit - Pathing Flags | 0x59CDAD · EPD 19090 (+1) · 1B × 1 · SC:R Supported — 0x01 = uses pathing 0x02 = ? 0x04 = ? (bwapi) |
| CUnit - Contour Bounds | 0x59CDB0 · EPD 19091 · 2B × 4 · SC:R support level not stated — (Unsupported?) a rect that specifies the closest contour (collision) points (bwapi) s16 left, s16 top, s16 bottom, s16 right ? |
| CUnit - Bullet Behavior 3x3 Attack | 0x59CDD8 · EPD 19101 · 2B × 1 · SC:R support level not stated — (Unsupported?) Counts up for the number of bullets shot by a unit using this weapon behaviour and resets after it reaches 12 (bwapi) |
| CUnit - AI Data | 0x59CDDC · EPD 19102 · 4B × 1 · SC:R support level not stated — (Unsupported?) Pointer to AI class |
| CUnit - Unit Finder | 0x59CDE4 · EPD 19104 · 4B × 4 · SC:R support level not stated — (Unsupported?) PID+0 left PID+1 right PID+2 top PID+3 bottom |
| CUnit - Repulse Unknown | 0x59CDF4 · EPD 19108 · 1B × 1 · SC:R Supported |
| CUnit - Carrier/Reaver - In Hangar | 0x59CD68 · EPD 19073 · 4B × 1 · SC:R Supported — CUnit pointer to first unit inside the hangar. Also: Vulture - Scarab count Scarab/Interceptor - Pointer to parent Beacon - Unknown Building - Addon CUnit pointer Worker - Powerup CUnit pointer |
| CUnit - Scarab/Interceptor - Parent Unit | 0x59CD68 · EPD 19073 · 4B × 1 · SC:R Supported — CUnit pointer to parent unit Also: Vulture - Spider mine count Carrier/Reaver - Pointer to first CUnit inside the hangar Beacon - Unknown Building - Addon CUnit pointer Worker - Powerup CUnit pointer |
| CUnit - Beacon - Unknown +00 | 0x59CD68 · EPD 19073 · 4B × 1 · SC:R Supported — Unknown ? Also: Vulture - Spider mine count Carrier/Reaver - Pointer to first CUnit inside the hangar Scarab/Interceptor - Pointer to parent Building - Addon CUnit pointer Worker - Powerup CUnit pointer |
| CUnit - Building - Addon | 0x59CD68 · EPD 19073 · 4B × 1 · SC:R Supported — CUnit pointer to addon. -- is this different from Connected Unit? Also: Vulture - Spider mine count Carrier/Reaver - Pointer to first CUnit inside the hangar Scarab/Interceptor - Pointer to parent Beacon - Unknown Building - Addon CUnit pointer Worker - Powerup CUnit pointer |
| CUnit - Worker - Powerup Unit | 0x59CD68 · EPD 19073 · 4B × 1 · SC:R Supported — CUnit pointer to the powerup carried by a worker Also: Vulture - Spider mine count Carrier/Reaver - Pointer to first CUnit inside the hangar Scarab/Interceptor - Pointer to parent Beacon - Unknown Worker - Powerup CUnit pointer |
| CUnit - Carrier/Reaver - Out Hanger | 0x59CD6C · EPD 19074 · 4B × 1 · SC:R Supported — CUnit pointer to first child outside the hangar Also: Scarab/Interceptor: pointer to previous Beacon: Unknown Building: Addon building type and upgrade/research time Worker: Target resource coordinates |
| CUnit - Scarab/Interceptor - Previous | 0x59CD6C · EPD 19074 · 4B × 1 · SC:R Supported — CUnit pointer to previous scarab/interceptor Also: Carrier/Reaver: pointer to first child outside the hangar Beacon: Unknown Building: Addon building type and upgrade/research time Worker: Target resource coordinates |
| CUnit - Beacon - Unknown +04 | 0x59CD6C · EPD 19074 · 4B × 1 · SC:R Supported — Unknown Also: Carrier/Reaver: pointer to first child outside the hangar Scarab/Interceptor: pointer to previous Building: Addon building type and upgrade/research time Worker: Target resource coordinates |
| CUnit - Building - Addon Building Type | 0x59CD6C · EPD 19074 · 2B × 1 · SC:R Supported — Also: Carrier/Reaver: pointer to first child outside the hangar Scarab/Interceptor: pointer to previous Beacon: Unknown Worker: Target resource coordinates |
| CUnit - Worker - Target Resource Coord | 0x59CD6C · EPD 19074 · 2B × 2 · SC:R Supported — 0x0000FFFF x-coordinate 0xFFFF0000 y-coordinate Also: Carrier/Reaver: pointer to first child outside the hangar Scarab/Interceptor: pointer to previous Beacon: Unknown Building: Addon building type and upgrade/research time |
| CUnit - Building - Upgrade/Research Time | 0x59CD6E · EPD 19074 (+2) · 2B × 1 · SC:R Supported |
| CUnit - Scarab/Interceptor - Next | 0x59CD70 · EPD 19075 · 4B × 1 · SC:R Supported — CUnit pointer to next scarab/interceptor Also: Carrier/Reaver - number of units in hangar Beacon - Flag spawn frame Building - Tech type/upgrade type/larva timer/landing timer Worker - Target resource pointer |
| CUnit - Beacon - Flag Spawn Frame | 0x59CD70 · EPD 19075 · 4B × 1 · SC:R Supported — flag beacons, the frame that the flag will spawn (bwapi) Also: Carrier/Reaver - number of units in hangar Scarab/Interceptor - pointer to next scarab/interceptor Building - Tech type/upgrade type/larva timer/landing timer Worker - Target resource pointer |
| CUnit - Building - Tech Type | 0x59CD70 · EPD 19075 · 1B × 1 · SC:R Supported — Also: Carrier/Reaver - number of units in hangar Scarab/Interceptor - pointer to next scarab/interceptor Beacon - Flag spawn frame Worker - Target resource pointer |
| CUnit - Worker - Target Resource Unit | 0x59CD70 · EPD 19075 · 4B × 1 · SC:R Supported — CUnit pointer Also: Carrier/Reaver - number of units in hangar Scarab/Interceptor - pointer to next scarab/interceptor Beacon - Flag spawn frame Building - Tech type/upgrade type/larva timer/landing timer |
| CUnit - Building - Upgrade Type | 0x59CD71 · EPD 19075 (+1) · 1B × 1 · SC:R Supported — Also: Carrier/Reaver - Out hangar count |
| CUnit - Scarab/Interceptor - In Hanger | 0x59CD74 · EPD 19076 · 1B × 1 · SC:R Supported — Boolean value? Also: Building - Creep timer Worker - Repair/resource timer |
| CUnit - Building - Creep Timer | 0x59CD74 · EPD 19076 · 1B × 1 · SC:R Supported — Also: Scarab/Interceptor - In hangar Worker - Repair/resource timer |
| CUnit - Worker - Repair/Resource Timer | 0x59CD74 · EPD 19076 · 2B × 1 · SC:R Supported — Also: Scarab/Interceptor - In hangar Building - Creep timer |
| CUnit - Building - Upgrade Level | 0x59CD75 · EPD 19076 (+1) · 1B × 1 · SC:R Supported |
| CUnit - Worker - Is Carring Something | 0x59CD76 · EPD 19076 (+2) · 1B × 1 · SC:R Supported |
| CUnit - Worker - Resource Carry Count | 0x59CD77 · EPD 19076 (+3) · 1B × 1 · SC:R Supported |
| CUnit - Nydus - Exit Unit | 0x59CD78 · EPD 19077 · 4B × 1 · SC:R Supported — CUnit pointer to connected exit Also: Resource - Resource count/iscript/queue count Ghost - Nuke dot sprite Pylon - Power overlay Nuke Silo - Attached nuke Powerup - Origin Coords Worker - Harvest target unit Hatchery? - Harvest Value |
| CUnit - Ghost - Nuke Dot Sprite | 0x59CD78 · EPD 19077 · 4B × 1 · SC:R Supported — Pointer to nuke dot CSprite Also: Resource - Resource count/iscript/queue count Nydus - Exit unit Pylon - Power overlay Nuke Silo - Attached nuke Powerup - Origin Coords Worker - Harvest target unit Hatchery? - Harvest Value |
| CUnit - Pylon - Power Overlay Sprite | 0x59CD78 · EPD 19077 · 4B × 1 · SC:R Supported — Pointer to overlay CSprite Also: Resource - Resource count/iscript/queue count Nydus - Exit unit Ghost - Nuke dot sprite Nuke Silo - Attached nuke Powerup - Origin Coords Worker - Harvest target unit Hatchery? - Harvest Value |
| CUnit - Nuke Silo - Attached Nuke | 0x59CD78 · EPD 19077 · 4B × 1 · SC:R Supported — CUnit pointer to attached nuke Also: Resource - Resource count/iscript/queue count Nydus - Exit unit Ghost - Nuke dot sprite Pylon - Power overlay Powerup - Origin Coords Worker - Harvest target unit Hatchery? - Harvest Value |
| CUnit - Powerup - Origin Coordinates | 0x59CD78 · EPD 19077 · 2B × 2 · SC:R Supported — Coordinates where the powerup was picked up from. 0x0000FFFF x-coord 0xFFFF0000 y-coord Also: Resource - Resource count/iscript/queue count Nydus - Exit unit Ghost - Nuke dot sprite Pylon - Power overlay Nuke Silo - Attached nuke Worker - Harvest target unit Hatchery? - Harvest Value |
| CUnit - Hatchery? - Harvest Value | 0x59CD78 · EPD 19077 · 2B × 4 · SC:R Supported — https://github.com/bwapi/bwapi/blob/master/bwapi/BWAPI/Source/BW/CUnit.h#L227 left, top, right, bottom ? Also: Resource - Resource count/iscript/queue count Nydus - Exit unit Ghost - Nuke dot sprite Pylon - Power overlay Nuke Silo - Attached nuke Powerup - Origin Coords Worker - Harvest target unit |
| CUnit - Resource - Resource IScript | 0x59CD7A · EPD 19077 (+2) · 1B × 1 · SC:R Supported — Current iscript animation ? |
| CUnit - Resource - Next Gatherer | 0x59CD7C · EPD 19078 · 4B × 1 · SC:R Supported — CUnit pointer to the next worker unit waiting in line to gather Also: Silo - Ready Worker - Previous harvest unit |
| CUnit - Silo - Ready | 0x59CD7C · EPD 19078 · 1B × 1 · SC:R Supported — Also: Resource - Next gatherer Worker - Previous harvest unit |
| CUnit - Resource - Resource Group | 0x59CD80 · EPD 19079 · 1B × 1 · SC:R Supported — Also: Worker - Next harvest unit |
| CUnit - Worker - Next Harvest Unit | 0x59CD80 · EPD 19079 · 4B × 1 · SC:R Supported — Also: Resource - Resource group/resource belongs to AI |
| CUnit - Resource - Reource Belongs to AI | 0x59CD81 · EPD 19079 (+1) · 1B × 1 · SC:R Supported |
| CUnit - Pylon - Previous Psi Provider | 0x59CDA0 · EPD 19087 · 4B × 1 · SC:R Supported — CUnit pointer to previous psi provider For other buildings: The coordinates of a rally from a building |
| CUnit - Pylon - Next Psi Provider | 0x59CDA4 · EPD 19088 · 4B × 1 · SC:R Supported — CUnit pointer to next psi provider For other buildings: The unit that a building set their rally to |
