Arm and Core construction and advanced construction Kbots make 1/3 less energy and metal. This matches their costs being reduced by 1/3 from their original cost back in Beta 25.
Arm Penetrator armor reduced by 50%, reload reduced to 2, damage roughly cut in half, and area of effect increased.
NOTE: This should help balance out the Arm Penetrator as compared to the Core Banisher. The Penetrator does more damage and fires more rapidly, but has less armor and requires energy to fire. The Banisher has tracking and a much bigger blast radius and doesn't require energy to fire, but fires much more slowly and does less damage per second (though not per shot).
Arm Annihilator and Core Doomsday and Gargoyle primary weapon area of effect increased.
NOTE: These are all Tachyon weapons, so they have a bigger area of effect than a mere laser.
Arm and Core Repair Nanolathe Turret metal cost reduced to 50 (130).
Fixed some missing units from build menus and added Shark's Teeth and Floating Radars to Arm Beaver and Core Muskrat.
All minelayers (vehicles, kbots, and ships) cost doubled.
NOTE: Previously, minelayers had twice the build power of an equivalent construction unit and cost half as much to build, giving them four times the build power per cost of a construction unit. Now they still have double the build power, but cost the same as a construction unit, keeping them effective for assisting construction units or rapidly putting up mines and basic level 1 defenses, but as much as before.
All gunships (Except the Core Krow) had their 360° firing arc reduce to the front 180°. This should help them not shoot down chasing fighters so easily.
Arm Construction Kbot energy make reduced to 5.3 (8) and metal metal reduced to 0.11 (0.16).
Core Construction Kbot energy make reduced to 5.3 (8) and metal metal reduced to 0.11 (0.16).
Arm Advanced Construction Kbot energy make reduced to 11 (16) and metal metal reduced to 0.21 (0.32). Also removed extra standingmoveorder=1; line.
Core Advanced Construction Kbot energy make reduced to 11 (16) and metal metal reduced to 0.21 (0.32).
NOTE: This reduces the energy and metal production of construction Kbots by 1/3 to match their costs being reduced by 1/3 from their original cost back in Beta 25.
Arm Penetrator armor reduced to 3115 (4673).
Arm Penetrator weapon [ARMMANNI_WEAPON] reload reduced to 2.0 (5.066), damage reduced to 1184 (2000), area of effect increased to 64 (32), and energy per shot reduced to 697 (1177). Special damages adjusted accordingly.
NOTE: This should help balance out the Arm Penetrator as compared to the Core Banisher. The Penetrator does more damage and fires more rapidly, but has less armor and requires energy to fire. The Banisher has tracking and a much bigger blast radius and doesn't require energy to fire, but fires much more slowly and does less damage per second (though not per shot).
Arm Annihilator weapon [ARM_TOTAL_ANNIHILATOR] area of effect increased to 64 (48).
Core Doomsday Machine and Gargoyle weapon [CORE_DOOMSDAY] area of effect increased to 64 (48).
Arm and Core Repair Nanolathe Turret metal cost reduced to 50 (130).
Arm Decade and Core Supporter had CTRL_N added to Category.
NOTE: This should fix the Control N hot key not selecting them.
Multiple fixes for menu errors (Arm Conqueror missing from non-south facing advanced shipyard menus, Arm Invader missing from all Advanced KBot Lab menus, etc.)
Added Shark's Teeth to the build menus for Arm Beaver and Core Muskrat.
Added missing Amphibious Complex to the Arm Beaver build menu.
Added Floating Radars to the build menus for Arm Beaver and Core Muskrat.
Fixed the Core Reaper build picture (It was showing the OTA double-cannoned build picture).
Arm Podger metal cost increased to 204 (103), energy cost increased to 2914 (1456), buildtime increased to 5246 (2648), and armor increased to 1838 (928).
Core Spoiler metal cost increased to 217 (107), energy cost increased to 3110 (1513), buildtime increased to 5718 (2820), and armor increased to 2153 (1062).
Core Scorpion metal cost increased to 57 (29), energy cost increased to 839 (419), buildtime increased to 1511 (755), and armor increased to 475 (242).
Arm Valiant metal cost increased to 255 (142), energy cost increased to 2869 (1597), buildtime increased to 4918 (2738), and armor increased to 1658 (986).
Core Limiter cost increased to 260 (148), energy cost increased to 2925 (1665), buildtime increased to 5142 (2928), and armor increased to 1859 (1079).
NOTE: Previously, minelayers had twice the build power of an equivalent construction unit and cost half as much to build, giving them four times the build power per cost of a construction unit. Now they still have double the build power, but cost the same as a construction unit, keeping them effective for assisting construction units or rapidly putting up mines and basic level 1 defenses, but as much as before.
Arm Banshee weapon [MED_EMG] tolerance reduced to 32750 (65500) and pitchtolerance reduced to 32750 (65500).
Core Venom weapon [VENOM_LASER] tolerance reduced to 32750 (65500) and pitchtolerance reduced to 32750 (65500).
Arm Brawler weapon [VTOL_EMG] tolerance reduced to 32750 (65500) and pitchtolerance reduced to 32750 (65500).
Core Rapier weapon [VTOL_ROCKET] tolerance reduced to 32750 (65500) and pitchtolerance reduced to 32750 (65500).
Arm Blade and Core Blackdawn weapon [Vtol_Sabot] tolerance reduced to 32750 (65500) and pitchtolerance reduced to 32750 (65500).
Arm Sabre weapon [VTOL_EMG2] tolerance reduced to 32750 (65500) and pitchtolerance reduced to 32750 (65500).
Core Cutlass weapon [VTOL_ROCKET2] tolerance reduced to 32750 (65500) and pitchtolerance increased to 32750 (65500).
NOTE: This reduces gunships to a 180 degree firing arc (In the front). This will help prevent gunships from easily shooting fighters chasing them from behind.
tdraw.dll is an upgrade for Total Annihilation. It patches the game to fix many bugs and add many features.
It is an integral component of the TA Community Patch, the other parts being tplayx.dll (the recorder) and server.exe (the replayer).
tdraw.dll has a long provenance dating back to the work of SY_Yeha, who introduced whiteboard markers and the TA Hook and new hotkeys to TA.
Later work by Xpoy extended hotkey support, added new shortcut commands, uni-code font support, megamap, weapon-id crack (not present in current release) and porting music patch from GOG version,
and later support was provided by Rime.
The present release includes contributions from Axle and FunkyFresh, and owes a debt to TAG_Venom for extensive testing and critical feeback, and to Gamma and Wotan for further testing and feature suggestions.
CONFIGURATIONS
The release .zip files are annotated with a build configuration tag: "tdraw-<config>.zip". The various configurations are:
* tdraw-full.zip: all features enabled
* tdraw-escalation.zip: built for TA:Escalation. disables the following features
- mex snap
- that is all
* tdraw-minimal.zip: disables the following features
- mex/wreck snap
- options for construction units to stay put when guarding
- options for construction units to only reclaim or onlt assist while patrolling
- auto kickout construction units that are blocking another builder
- weather report at top of screen
- sync wind speed between players
- map DT's always visible.
INSTALLATION
Drop tdraw.dll into your TA directory.
Ensure the following files are also present in your TA directory:
- ddraw.dll (available from https://github.com/FunkyFr3sh/cnc-ddraw)
- totala.ini
You may need to rename totala.ini and tdraw.dll to whatever your mod is using. See below for reference. For other mods, please consult with the mod maintainers.
ini file dll file
Beta patch 3.9.02 TA.ini tdraw.dll
Escalation 9.9.6 TAESC.ini taesc.dll
Mayhem 10.9.2 Settings.ini mdraw.dll
ProTA 4.6 ProTA.ini tdraw.dll
Zero Alpha5-060322 tazero.ini zdraw.dll
NEW FEATURES IN BRIEF:
*2026.6.8
- bugfix for VoteReject - prevent local user from rejecting himself
*2026.6.3
- add "nottounderwater" flag for weapons (see NEW FEATURES IN DETAIL)
- fix bug potentially being the root cause of since-year-1997 intermittent black screen on join games
- better quality megamap render
*2026.5.28
- Fix construction units intermittently trying to sit within the footprint of rotated structures before building them
*2026.5.15
- Fix intermittent 6x8 staircase yardmap on south-facing rotatable factories
- New "PreviewObject3D=" unit key to override the 3DO model used for the nanoframe ghost preview (see NEW FEATURES IN DETAIL)
*2026.5.9
- Lag-switch mitigation: detects and freezes local simulation when network goes dark
- Vote-to-reject system for in-progress multiplayer games (see NEW FEATURES IN DETAIL)
- add "nottoair" flag for weapons (see NEW FEATURES IN DETAIL)
- add "surfacefire" flag for weapons (see NEW FEATURES IN DETAIL)
- +autoteam bugfix for occasional players stranded by themselves
- Diagnostic logging for crashes 004cbed5 and 0049cf19
- Building rotation: press '/' (configurable) to cycle the build cursor
facing for buildings whose FBI permits it (see NEW FEATURES IN DETAIL)
- Nanoframe ghost preview at the build cursor (see NEW FEATURES IN DETAIL)
- Fix for ctrl-z (and ctrl-a / ctrl-b / ctrl-c) silently truncating selections for unit ids >= 512
- Export engine-backed player elimination status to gpgnet4ta via shared memory,
so games where a commander dies but play continues are reported with the correct outcome
*2026.2.17 - Fix false trigger on version check
*2026.2.10 - Minor adjustment to diagnostic crash detection ("ERROR: dstRect out of bounds", allow CopyScreenContext all the way to the edge of destination context)
*2026.2.7 - Disable AUTOTEAM, RANDOMTEAM and CRCREPORT buttons for non-host players
*2026.2.5 - Add support for AUTOTEAM, RANDOMTEAM and CRCREPORT buttons in battleroom (guis/lounge2.gui)
*2026.2.2 - Custom ctrl-f2 menu skin for escalation
*2026.1.29 - Create seperate builds for full-featured (tdraw-full.zip), escalation (tdraw-escalation.zip), and minimal (tdraw-minimal.zip) feature sets.
*2025.12.13 - Add diagnostics for crash at 004cbed5
*2025.12.6 - Fix crash when game installed in a long path (eg C:\Program Files (x86)\Steam\steamapps\common\Total Annihilation\PROTA)
*2025.11.26 - New keys for unit definitions (units/*.fbi) to customise per-unit veterancy
*2025.8.29 - Bugfix for multithreaded version/cheat check
*2025.8.19 - Auto kickout of units under build order is now strictly only for own units (previously allowed kickout anyone's units if cheats enabled)
*2025.8.1 - Set build square preview to yellow if user can build there but it contains a unit that will be kicked out
*2025.7.12
- Allow user to queue build orders underneath their own mobile units; and auto kickout of units that are under a build order
- Mod developers can opt-in to "Improved behaviour of con units".
Modifies what construction units that are guarding factories do after completing each unit: either stay put; cavedog; or scatter.
Set byte at TotalA.exe:0x101f1f to 0x00 to disable the feature (default) or 0x01 to enable the feature.
Note that if one player's 0x101f1f setting doesn't match that of other players, an in-game cheat warning will be triggered.
Once enabled, see ctrl-f2 menu for related user configurable options.
- Fix bug with erroneous game results reported to TAF when using in-game +autoteam
- With fixed position, start positions are assigned in order given by TAF auto balance
so that players are positioned opposite an opponent of similar skill
- Fixed bugs with player placement in 2v2+ games on maps with neutral units
- Push anticheat hashing functions into background threads so as to reduce in-game slowdown experienced by some users
*v2025.5.18
- Improved behaviour of con units when guarding a factory - they stay put after finishing a build
*v2025.4.24
- Fix crash on parsing spawned unit initial commands - its now possible to copy-paste mission scripts from campaign
- Log cheat warnings to tdrawlog.txt for offline analysis
- Fix for non functional perm-los sonar patch (which otherwise requires watcher's com to be in top-left of map to work)
*v2024.12.5
- Fix crash on print-screen (and presumably many other related crashes)
Per-rotation overrides are also available — useful when the visible
pieces should differ by facing. Use any of:
PreviewPiecesS=... facing south (rotation 0)
PreviewPiecesE=... facing east (rotation 1)
PreviewPiecesN=... facing north (rotation 2)
PreviewPiecesW=... facing west (rotation 3)
Lookup order for the active rotation:
1. PreviewPieces<S|E|N|W>= if set (non-empty), uses ONLY that list.
2. PreviewPieces= the default for every rotation.
3. neither set every piece minus the ephemeral filter.
For units whose Create() script auto-rotates the structure toward
the nearest enemy Commander, the preview can be made to face the
same direction — preventing the jarring snap when the build commits
— by adding:
[UNITINFO]
{
...
PreviewFaceOpponent=1;
}
At each preview frame we find the nearest enemy commander to the
build cursor (each enemy player's first unit slot, which is the
commander in all but pathological cases), and snap the line from
the cursor to that commander to the nearest cardinal (S / E / N /
W). PreviewFaceOpponent overrides the Rotations= restriction —
setting this key is the author's explicit signal that the unit's
heading is script-driven, so the preview must face whichever
cardinal the script will pick regardless of what Rotations= permits
the player to cycle through.
To avoid leaking enemy positions through fog-of-war scanning, the
override only applies when the build cursor is within the actual
builddistance of one of the local player's selected, completed
construction units (each builder gets its own threshold from its
FBI builddistance=). Outside that radius the preview falls back to
the player's rotate-build selection — same as if PreviewFaceOpponent
were unset.
Falls back to the player's rotate-build selection in single-player
or any case where no enemy commander can be found (e.g. all enemies
dead).
Mod authors who want the preview to display a completely different
model than the unit's actual Object3D= (e.g. a simplified silhouette,
or the upgraded form of a unit whose 3DO bundles multiple variants)
can name an alternative 3DO with a "PreviewObject3D=" key:
[UNITINFO]
{
...
PreviewObject3D=corarmvp_preview;
}
The value is a 3DO base name (no extension); the file is loaded from
the HPI archive at objects3d/<name>.3DO on first use and cached
for the rest of the game session. All other preview FBI keys
(PreviewPieces, PreviewFaceOpponent, etc.) apply to this overridden
model — piece-name whitelists are matched against the OVERRIDE 3DO's
piece names, not the unit's real one.
If the named 3DO can't be found in the HPI, a warning is logged to
tdrawlog.txt and the preview falls back to the unit's real model;
no other behaviour is affected.
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.