Compare commits
12
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a184e5dc47 | ||
|
|
e7daf41643 | ||
|
|
09d94243e2 | ||
|
|
17856fe896 | ||
|
|
c1f2d79a6b | ||
|
|
0483c25ac2 | ||
|
|
03f06f24b5 | ||
|
|
0bdf4c184b | ||
|
|
1e1add9d42 | ||
|
|
890c541e52 | ||
|
|
79007d38a4 | ||
|
|
892bf9c540 |
@@ -1,3 +1,5 @@
|
|||||||
TADEMO.UFO filter=lfs diff=lfs merge=lfs -text
|
TADEMO.UFO filter=lfs diff=lfs merge=lfs -text
|
||||||
online.dll filter=lfs diff=lfs merge=lfs -text
|
online.dll filter=lfs diff=lfs merge=lfs -text
|
||||||
rev31.gp3 filter=lfs diff=lfs merge=lfs -text
|
rev31.gp3 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
TotalA.exe filter=lfs diff=lfs merge=lfs -text
|
||||||
|
tdraw.dll filter=lfs diff=lfs merge=lfs -text
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
Beta 57
|
||||||
|
Summary of changes:
|
||||||
|
|
||||||
|
Core Instigator weapon damage increased but now requires energy to fire.
|
||||||
|
|
||||||
|
Arm Spider maneuverability increased.
|
||||||
|
|
||||||
|
Arm Mark XVII Bolo and Core Class A Heavy Yavac weapon [HELLBORE_CANNON] area of effect reduced to 384 (512).
|
||||||
|
|
||||||
|
Arm Bee armor reduced and build distance increased (To help them spread out instead of clustering).
|
||||||
|
|
||||||
|
Arm and Core Metal Generators costs cut in half (energy cut to 1/3), metal produced reduced to 2 (3), and can be turned on and off.
|
||||||
|
|
||||||
|
NOTE: This makes Metal Generators about 50% more metal efficient than Fusions and Moho Metal Makers (For the metal spent, since Metal Generators don't use energy unless cloaking). They already closed up to take less damage like solars do, but previously didn't stop making metal when they did so ("metalmake" always produces metal, but "makesmetal" only produces when the unit is on). Now they do stop making metal when closed and can be manually toggled on or off.
|
||||||
|
|
||||||
|
Arm and Core MRU metal production increased to 3 (1).
|
||||||
|
|
||||||
|
Fixed the Core north-facing Shipyard model being about 18% bigger than the models that face the other directions.
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
Beta 58
|
||||||
|
Summary of changes:
|
||||||
|
|
||||||
|
Complete build menu overhaul: Added new, bigger menus (12 units per page instead of 6), and new hotkeys, custom crafted by TA:T's own ChaoStorm! Thanks Chao!
|
||||||
|
NOTE: There may still be some bugs, missing hot keys, etc., so let us know if you find an issue.
|
||||||
|
|
||||||
|
Arm Peewee and Core A.K. speed and range increased and armor reduced.
|
||||||
|
|
||||||
|
NOTE: Despite being the "standard/basic" level 1 Kbot, Peewees/A.K.s were being outperformed by most of the other Kbots in most situations, but didn't have something they were overly good at in comparison.
|
||||||
|
|
||||||
|
This change has them trading armor for speed and damage for range, allowing them to close the distance to a target more quickly and come into range sooner, but at the cost of doing less damage and being easier to destroy. They should be a better overall swarm unit; light, fast, built cheaply, and destroyed easily.
|
||||||
|
|
||||||
|
Arm and Core Sabotage Mine/Micro Nuke build time increased.
|
||||||
|
NOTE: This means it will take one second for a Spy Kbot to build the micro-nuke. This is enough time to decloak to build it and have it destroy something before the spy is destroyed, but long enough that it can't be rapidly clicked on a large gantry unit and used 5 to 10 times before the spy is destroyed.
|
||||||
|
|
||||||
|
Arm Rocko and Core Storm weapon area of effect reduced.
|
||||||
|
|
||||||
|
Arm Janus reload and damage reduced and tolerance increased.
|
||||||
|
|
||||||
|
Core Krogtaar weapon velocity increased.
|
||||||
|
|
||||||
|
Core Reapers and Pyros now take half damage from [TREEBURN] and [SHRUBBURN] weapons.
|
||||||
|
|
||||||
|
Arm Infiltrator and Core Parasite weapon range increased.
|
||||||
|
|
||||||
|
Added anti-mine rockets to the Arm Valiant and Core Limiter.
|
||||||
|
|
||||||
|
Arm Moho Twilight now has a defensive paralysis weapon.
|
||||||
|
NOTE: The weapon is a burst of EMP grenades that spray out in a circle in random directions, hopefully paralyzing its enemies. It defaults to Return Fire, so that if enemies go by without noticing it, it won't reveal itself unnecessarily. Of course, you can set it to Fire at Will or Hold Fire, if you so choose.
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
Beta 59
|
||||||
|
Summary of changes:
|
||||||
|
|
||||||
|
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.
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
Beta 60
|
||||||
|
Summary of changes:
|
||||||
|
|
||||||
|
Arm Penetrator armor increased and reload increased.
|
||||||
|
|
||||||
|
Arm Freedom Fighters and Core Avengers weapons have bigger area of effect.
|
||||||
|
|
||||||
|
All gunships (Except the Core Krow) had their 360° firing arc reduced to roughly the front 180°. This wasn't done right in Beta 59, but should work now.
|
||||||
|
|
||||||
|
Arm Blade and Core Blackdawn speed reduced.
|
||||||
|
|
||||||
|
Arm MERL and Core Diplomat weapon velocity increased.
|
||||||
|
|
||||||
|
Arm Big Bertha and Core Intimidator weapons area of effect increased and (in)accuracy reduced.
|
||||||
|
NOTE: This makes Big Berthas and Intimidators more appealing compared to saving up for a Vulcan or Buzzsaw, given they have a bigger area of effect and are more accurate.
|
||||||
|
|
||||||
|
Arm Bee and Core Bladewing armor reduced.
|
||||||
|
NOTE: Drones are cheap and effective, but not well armored.
|
||||||
|
|
||||||
|
Arm Mercury and Core Screamer weapon reload reduced and damage reduced.
|
||||||
|
|
||||||
|
Arm Demolisher turret turn rate increased, reload reduced, damage reduced, and area of effect increased.
|
||||||
|
|
||||||
|
Arm Marauder secondary missile weapon turret turn rate increased.
|
||||||
|
|
||||||
|
Arm Rector and Death Cavalry and Core Necro and Grim Reaper energy costs doubled.
|
||||||
|
NOTE: Resurrecting units can be very powerful, so this makes them more energy intensive to build.
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
Beta 61
|
||||||
|
Summary of changes:
|
||||||
|
|
||||||
|
Arm Bulldog and Core Goliath reload and damage reduced.
|
||||||
|
|
||||||
|
Arm Wombat and MERL and Core Nixer, Dominator, Shiva, and Diplomat rockets given tracking.
|
||||||
|
NOTE: This gives tracking to the weapons of most vertically launched rocket units (Except the Arm Ranger and Core Messenger). The idea is to allow them to fire on incoming units with some effect, but not necessarily great effect, similar to artillery units, instead of relegating them almost exclusively to firing on stationary targets.
|
||||||
|
|
||||||
|
Arm Panther weapon [PANTHER_MISSILE] area of effect increased to 96 (12).
|
||||||
|
|
||||||
|
Core Leveler weapon [CORLEVLR_WEAPON] explosionart changed to explode3 (explode2).
|
||||||
|
NOTE: This is purely cosmetic and just reduces the visual explosion somewhat to more closely match the damage being dealt. Before it was using the same explosion art that the Guardian/Punisher use, but the damage isn't anywhere close to that.
|
||||||
|
|
||||||
|
Arm Marauder armor reduced and damage increased, and primary weapon given slight tracking.
|
||||||
|
NOTE: Halved the Marauder's armor and doubles its firepower, similar to the Core Shiva, and gives the Marauder's primary weapon a slight bit of tracking (The same as Flash tanks and Peewees have) to help them hit a bit better at range.
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
Beta 85
|
||||||
|
Summary of changes (For more details and notes, see the full changelog (TAT-v2.0-Beta-Changelog.txt) included in the release):
|
||||||
|
|
||||||
|
Fixed build menu bugs for Arm Gantry Constructor and Arm/Core Strategic/Tactical nuclear silos
|
||||||
|
|
||||||
|
Removed CTRL_G hotkeys from Arm and Core Construction Hovercraft.
|
||||||
|
|
||||||
|
Arm and Core Nexus can now only transport 2x2 footprint units (Was 3x3 units).
|
||||||
|
|
||||||
|
Arm and Core Advanced Construction Sub can now build the Amphibious Complex.
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
Beta 86
|
||||||
|
Summary of changes (For more details and notes, see the full changelog (TAT-v2.0-Beta-Changelog.txt) included in the release):
|
||||||
|
|
||||||
|
The new TADR release is included in this beta, which includes the +autoteam command, metal extractor and wreckage "snap" functionality, etc. This includes a new totala.exe and .dlls to allow for the new functionality. For details, see tdraw.txt.
|
||||||
|
|
||||||
|
Depthcharges now continue to track targets outside their range, like missiles, making it harder for subs (Or other units) to outrun them.
|
||||||
|
|
||||||
|
Doubled the metal "weight" for being carried in multi-unit air transports (Arm Condor and Core Vindicator) for Arm Lemmings and Invaders and Core Roaches and Skuttles, so you can only carry half as many (10 Lemmings instead of 20, etc.).
|
||||||
|
|
||||||
|
Arm Gremlin mincloakdistance increased to 50 (25).
|
||||||
|
NOTE: This makes them easier to decloak, since it was really difficult before. Now a unit that comes within about a Gremlin's width of the Gremlin should decloak it.
|
||||||
|
|
||||||
|
Tripled the energy costs for the Arm Epoch and Core Black Hydra.
|
||||||
|
NOTE: Previously, Epochs and Black Hydras had the same energy to metal ratio as the Millenium and Warlord, despite the former being Gantry-level ships. Now their energy cost is tripled like other Gantry units.
|
||||||
|
|
||||||
|
Core Cauterizer attack run length and turnrate reduced.
|
||||||
|
NOTE: This should help "chain-bombing" to be less abuseable with the Cauterizer, especially while trying to change directions during it.
|
||||||
|
|
||||||
|
Arm Hermes cost reduced, armor increased, and firepower reduced to 1/2. They now use the Arm Chainsaw weapon.
|
||||||
|
|
||||||
|
Minelayer vehicles, Kbots, and ships now take 20% normal damage from mines (5% normal damage).
|
||||||
|
|
||||||
|
Arm and Core Nexus speed reduced to 1.2 (1.3).
|
||||||
|
NOTE: This gives them the same speed as Commanders.
|
||||||
|
|
||||||
|
Core Tidal Generator footprint changed to 3x3 (4x4), so they take up as little space as an Arm Tidal Generator.
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
Beta 91
|
||||||
|
Summary of changes (For more details and notes, see the full changelog (TAT-v2.0-Beta-Changelog.txt) included in the release):
|
||||||
|
|
||||||
|
Tweaked Arm Guardian and Core Punisher models to help with shots hitting the ground in front of targets.
|
||||||
|
|
||||||
|
Added CTRL_W to the Arm Blade and Core Blackdawn and Krow.
|
||||||
|
|
||||||
|
Depth charge damage to Commanders reduced to non-amphibious unit levels.
|
||||||
|
|
||||||
|
Arm Dragonfly and Core Seahook cruise altitude reduced and Seahook model size increased.
|
||||||
|
|
||||||
|
Core Oppressor rocket flighttime increased slightly to fix them not being able to hit targets south of them.
|
||||||
|
|
||||||
|
Arm and Core strategic, tactical, and anti-nuke silos are now on the Gantry constuctor build menus (Thanks ChaoStorm).
|
||||||
|
|
||||||
|
Defenses that can close or go underground to armor up now all take 1/6 damage, instead of 1/4:
|
||||||
|
Arm Dragon's Claw
|
||||||
|
Core Dragon's Maw
|
||||||
|
Arm PACKO
|
||||||
|
Arm Pit Bull
|
||||||
|
Core Viper
|
||||||
|
Arm Thunderstorm
|
||||||
|
Arm Ambusher
|
||||||
|
Core Toaster
|
||||||
|
Arm Annihilator
|
||||||
|
Core Doomsday Machine
|
||||||
|
|
||||||
|
Arm Vanguard explosion sprite made smaller.
|
||||||
|
|
||||||
|
Arm and Core Metal Generators now take 1/4 damage when closed instead of 1/2.
|
||||||
|
|
||||||
|
Arm Avatar and Core Mauler weapon shaking reduced.
|
||||||
|
|
||||||
|
Line of sight support increased up to 3000 pixels.
|
||||||
|
|
||||||
|
Arm Sharpshooter weapon area of effect doubled.
|
||||||
|
|
||||||
|
Arm Jeffy and Core Weasel armor reduced and firepower increased.
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
Beta 92
|
||||||
|
Summary of changes (For more details and notes, see the full changelog (TAT-v2.0-Beta-Changelog.txt) included in the release):
|
||||||
|
|
||||||
|
Arm and Core MRUs energy cost increased to match standard energy drain for building advanced vehicles.
|
||||||
|
|
||||||
|
The following amphibious units had their energy cost lowered to 50% above baseline instead of 100% above:
|
||||||
|
Arm Pincer
|
||||||
|
Arm Pelican
|
||||||
|
Arm Triton
|
||||||
|
Arm Marauder
|
||||||
|
|
||||||
|
Core Garpike
|
||||||
|
Core Gimp
|
||||||
|
Core Shiva
|
||||||
|
Core Croc
|
||||||
|
Core Poison Arrow
|
||||||
|
|
||||||
|
Arm PomPom and Core Aries had their energy cost increased by 50% and their speed increased by 25% to match the other amphibious units.
|
||||||
|
|
||||||
|
Core Gimp speed increased proportionately match the Arm Pelican.
|
||||||
|
|
||||||
|
The following advanced tanks have had their armor increased by 50% and their firepower decreased by 50%:
|
||||||
|
Arm Mumbo
|
||||||
|
Arm Triton
|
||||||
|
Arm Demolisher
|
||||||
|
Core Reaper
|
||||||
|
Core Poison Arrow
|
||||||
|
Core Termite
|
||||||
|
Core Halberd
|
||||||
|
|
||||||
|
The Arm Bulldog and Core Goliath have had their armor doubled and their firepower halved.
|
||||||
|
|
||||||
|
Arm Sneaky Pete and Veil and Core Castro and Shroud no longer automatically cloak as soon as you start to build them. The T1 and T2 jamming towers were also set to cost twice as much metal and energy as the T1 and T2 radar towers. This reduced the T1 jammers cost and increased the T2 jammers cost.
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,23 @@
|
|||||||
|
; Megamap Icon Settings
|
||||||
|
|
||||||
|
[Option] ; General Settings
|
||||||
|
|
||||||
|
FillColor=245; ; The color that will be replaced by the player color
|
||||||
|
TransparentColor=9; ; The color that will be replaced by transparency
|
||||||
|
SelectedColor=255; ; The color that will be shown only when the unit is selected
|
||||||
|
HoverColor=84; ; The color that will show when the icon is hovered on
|
||||||
|
UseCircleHover=FALSE; ; Enable or disable a drawn ring when hovered on, disabled by default
|
||||||
|
UseDefaultIcon=TRUE; ; Enable to use default icons, disable to use custom icons
|
||||||
|
|
||||||
|
[ICON] ; Custom Icons
|
||||||
|
|
||||||
|
Unknow=UNKNOWN.PCX;
|
||||||
|
Nothing=NONE.pcx;
|
||||||
|
NukeIcon=NUKEICON.pcx;
|
||||||
|
|
||||||
|
; When custom icons are enabled, set them below using the category tags from unit fbi files
|
||||||
|
; You can use your own custom icon files, they must be in the TA color palette and PCX format
|
||||||
|
; A disabled example of the syntax is provided below
|
||||||
|
; In the example, any unit with KBOT as a category will use KBOT.pcx as the icon (not provided)
|
||||||
|
|
||||||
|
;KBOT=KBOT.pcx
|
||||||
Binary file not shown.
@@ -0,0 +1,79 @@
|
|||||||
|
# TA Demo Recorder and Community Patch
|
||||||
|
|
||||||
|
## LICENSE
|
||||||
|
|
||||||
|
### TA Community Patch (original filename: tdraw.dll; source directory: src/DDRaw)
|
||||||
|
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2023 Axle1975, FunkyFr3sh
|
||||||
|
Copyright (c) 2019 Xpoy
|
||||||
|
Copyright (c) 2003 SJ, Yeha
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
### TA Demo Recorder (original filename: tplayx.dll; source directory: src/Recorder)
|
||||||
|
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2015 Rime
|
||||||
|
Copyright (c) 2003 SJ, Yeha
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
### TA Demo Replayer (original filename: SERVER.EXE, source directory: src/Server)
|
||||||
|
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2015 Chaos
|
||||||
|
Copyright (c) 2003 Fnordia
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
@@ -0,0 +1,235 @@
|
|||||||
|
; Total Annihilation v3.9.02 advanced settings
|
||||||
|
|
||||||
|
; Windowed mode will disable many TA v3.9.02 features (including some of these) and is not recommended
|
||||||
|
|
||||||
|
[Preferences] ; custom settings, if any entry is disabled the "TA v3.9.02 default" values will be used
|
||||||
|
|
||||||
|
UseVideoMemory=TRUE;
|
||||||
|
|
||||||
|
; Unit limit per player
|
||||||
|
; Set from 20 - 6553 (setting higher than 1500 may cause instability)
|
||||||
|
; TA v3.1 default is 250
|
||||||
|
; TA v3.9.02 default is 1500
|
||||||
|
|
||||||
|
UnitLimit = 1500;
|
||||||
|
|
||||||
|
; Pathfinding cycles
|
||||||
|
; Setting too low (such as TA v3.1 default) ruins pathfinding but setting extremely high lowers fps
|
||||||
|
; TA v3.1 default is 1333
|
||||||
|
; TA v3.9.02 default is 66650
|
||||||
|
|
||||||
|
AISearchMapEntries = 66650;
|
||||||
|
|
||||||
|
; Special effects limit (smoke, etc.)
|
||||||
|
; Setting too low (such as TA v3.1 default) will degrade visual quality
|
||||||
|
; This setting is still experimental, if you experience visual issues set to 400
|
||||||
|
; TA v3.1 default is 400
|
||||||
|
; TA v3.9.02 default is 20480
|
||||||
|
|
||||||
|
SfxLimit = 20480;
|
||||||
|
|
||||||
|
; Unit model size limit
|
||||||
|
; Set max width and height for unit model drawing buffer
|
||||||
|
; TA v3.1 default is 600x600
|
||||||
|
; TA v3.9.02 default is 1280x1280
|
||||||
|
|
||||||
|
X_CompositeBuf = 1280;
|
||||||
|
Y_CompositeBuf = 1280;
|
||||||
|
|
||||||
|
; Unit ID limit
|
||||||
|
; Set the maximum number of unique unit IDs
|
||||||
|
; TA v3.1 default is 512
|
||||||
|
; TA v3.9.02 default is 16000
|
||||||
|
|
||||||
|
UnitType = 16000;
|
||||||
|
|
||||||
|
; Weapon ID limit
|
||||||
|
; Set the maximum number of unique weapon IDs
|
||||||
|
; TA v3.1 default is 256
|
||||||
|
; TA v3.9.02 default is 16000
|
||||||
|
|
||||||
|
WeaponType = 16000;
|
||||||
|
|
||||||
|
; Weapon ID multiplayer patch
|
||||||
|
; Set to TRUE to enable increased Weapon ID limit in multiplayer
|
||||||
|
; Set to FALSE to allow increased Weapon ID limit only in single player
|
||||||
|
; TA v3.1 default is FALSE
|
||||||
|
; TA v3.9.02 default is FALSE (Weapon ID limit increase not yet compatible with Replayer)
|
||||||
|
|
||||||
|
MultiGameWeapon = FALSE;
|
||||||
|
|
||||||
|
; Double-click selection
|
||||||
|
; Enable or disable the new "double-click to select all units of the same type on screen" feature
|
||||||
|
; TA v3.1 default is FALSE
|
||||||
|
; TA v3.9.02 default is TRUE
|
||||||
|
|
||||||
|
DoubleClick = TRUE;
|
||||||
|
|
||||||
|
; Expanded Multiplayer Sharing Menu
|
||||||
|
; Enable or disable the new expanded multiplayer sharing menu
|
||||||
|
; TA v3.1 default is FALSE
|
||||||
|
; TA v3.9.02 default is TRUE
|
||||||
|
|
||||||
|
ShareDialogExpand = TRUE;
|
||||||
|
|
||||||
|
; Main menu resolution adjuster
|
||||||
|
; Set to FALSE to keep main menu resolution at the default 640x480
|
||||||
|
; Set to TRUE to match main menu resolution to the in-game resolution set via options menu
|
||||||
|
; If TRUE, the main menu will not be upscaled to fit increased output resolution
|
||||||
|
; If resolution is not valid, the game will not start (use resolution overrider below to fix)
|
||||||
|
; TA v3.1 default is FALSE
|
||||||
|
; TA v3.9.02 default is FALSE
|
||||||
|
|
||||||
|
MenuResolution = FALSE;
|
||||||
|
|
||||||
|
; Megamap
|
||||||
|
; Enable or disable the new megamap
|
||||||
|
; TA v3.1 default is FALSE
|
||||||
|
; TA v3.9.02 default is TRUE
|
||||||
|
|
||||||
|
FullScreenMinimap = TRUE;
|
||||||
|
|
||||||
|
; Megamap FPS Limit
|
||||||
|
|
||||||
|
MegamapFpsLimit = 1000;
|
||||||
|
|
||||||
|
; Megamap Icon Configuration File
|
||||||
|
; Set the location of the megamap's icon configuration file
|
||||||
|
; TA v3.9.02 default is .\Icon\iconcfg.ini
|
||||||
|
|
||||||
|
MegaMapConfig = .\Icon\iconcfg.ini;
|
||||||
|
|
||||||
|
; Megamap Configuration Settings
|
||||||
|
; Use the fields below to customize the megamap
|
||||||
|
|
||||||
|
; Megamap Mouse Wheel Zooming
|
||||||
|
; Enable or disable ability to zoom in and out of the megamap with the mouse wheel
|
||||||
|
; TA v3.9.02 default is TRUE;
|
||||||
|
|
||||||
|
WheelZoom = TRUE;
|
||||||
|
|
||||||
|
; Megamap Mouse Wheel Zoom In Mode
|
||||||
|
; Set to TRUE to zoom to the cursor location when rolling the wheel up from the megamap
|
||||||
|
; Set to FALSE to zoom to the previous camera location when rolling the wheel up from the megamap
|
||||||
|
; TA v3.9.02 default is TRUE;
|
||||||
|
|
||||||
|
WheelMoveMegaMap = TRUE;
|
||||||
|
|
||||||
|
; Megamap Double-Click to Zoom Option
|
||||||
|
; Enable or disable the option to zoom to the cursor location...
|
||||||
|
; ...when double-clicking terrain on the megamap
|
||||||
|
; TA v3.9.02 default is FALSE;
|
||||||
|
|
||||||
|
DoubleClickMoveMegamap = FALSE;
|
||||||
|
|
||||||
|
; Megamap Unit Icon Flashing When Under Attack
|
||||||
|
; Enable or disable megamap unit icon flashing when under attack
|
||||||
|
|
||||||
|
UnderAttackFlash=TRUE;
|
||||||
|
|
||||||
|
; Megamap Minimum Sensor Range Ring Distances
|
||||||
|
; Set the minimum sensor values required to display range rings on the megamap
|
||||||
|
; These settings could be helpful if you want to eliminate clutter from short-ranged rings
|
||||||
|
; TA v3.9.02 default is 0 for all sensors
|
||||||
|
|
||||||
|
MegamapRadarMinimum = 0;
|
||||||
|
MegamapSonarMinimum = 0;
|
||||||
|
MegamapSonarJamMinimum = 0;
|
||||||
|
MegamapRadarJamMinimum = 0;
|
||||||
|
MegamapAntiNukeMinimum = 0;
|
||||||
|
|
||||||
|
; Player Icon and Line Marker Colors
|
||||||
|
; Customize the colors of the player minimap/megamap icons and line markers
|
||||||
|
; Set from 0 to 255 to select colors from the TA indexed color palette
|
||||||
|
; These settings are disabled by default (remove the semicolons to enable)
|
||||||
|
|
||||||
|
;Player1DotColors=227; ;Default is 227
|
||||||
|
;Player2DotColors=212; ;Default is 212
|
||||||
|
;Player3DotColors=80; ;Default is 80
|
||||||
|
;Player4DotColors=235; ;Default is 235
|
||||||
|
;Player5DotColors=108 ;Default is 108
|
||||||
|
;Player6DotColors=219; ;Default is 219
|
||||||
|
;Player7DotColors=208; ;Default is 208
|
||||||
|
;Player8DotColors=93; ;Default is 93
|
||||||
|
;Player9DotColors=130; ;Default is 130
|
||||||
|
;Player10DotColors=67; ;Default is 67
|
||||||
|
|
||||||
|
; Player Dot Marker Colors
|
||||||
|
; Customize the colors of player dot markers by setting a custom icon file
|
||||||
|
; Edit the example smallcircle.pcx file or create a new icon file
|
||||||
|
; The icon file must contain all 10 player markers from left to right
|
||||||
|
; The icon width and height settings must match the dimensions of your icons
|
||||||
|
; These settings are disabled by default (remove the semicolons to enable)
|
||||||
|
|
||||||
|
;PerPlayerMarkerWidth=10;
|
||||||
|
;PerPlayerMarkerHeight=10;
|
||||||
|
;PlayerMarkerPcx=Icon\smallcircle.pcx;
|
||||||
|
|
||||||
|
[REG] ; registry override settings, if any entry is disabled the last value used will be remembered
|
||||||
|
|
||||||
|
; Sound mode
|
||||||
|
; Set to 0 for no sound, 1 for mono sound, and 2 for 3D positional sound
|
||||||
|
; When set to 3D, the speaker layout is read from the Windows control panel
|
||||||
|
; All speaker layouts are supported by the 3D sound engine (stereo, 5.1, 7.1, etc.)
|
||||||
|
; TA v3.1 default is Mono (dword:1)
|
||||||
|
; TA v3.9.02 default is 3D (dword:2)
|
||||||
|
|
||||||
|
"Sound Mode" = dword:2
|
||||||
|
|
||||||
|
; Max number of simultaneous sounds before sounds are cut off
|
||||||
|
; Set from 2 - 32 for specific limits or 33 or higher for unlimited
|
||||||
|
; TA v3.1 default is 8 (dword:8)
|
||||||
|
; TA v3.9.02 default is 128 / unlimited (dword:128)
|
||||||
|
|
||||||
|
"MixingBuffers" = dword:128
|
||||||
|
|
||||||
|
; Default game speed
|
||||||
|
; Set from 0 - 20 (corresponding to game speed -10 to +10)
|
||||||
|
; Use plus and minus keys to adjust while playing
|
||||||
|
; TA and TA v3.9.02 default is 10 which is equivalent to Normal game speed (dword:10)
|
||||||
|
|
||||||
|
"GameSpeed" = dword:10
|
||||||
|
|
||||||
|
; Group selection hotkey modifier
|
||||||
|
; Set to 1 to select unit groups with number key and build menus with ALT + number key
|
||||||
|
; Set to 0 to select build menus with number key and unit groups with ALT + number key
|
||||||
|
; TA v3.1 default is 0 (dword:0)
|
||||||
|
; TA v3.9.02 default is 1 (dword:1)
|
||||||
|
|
||||||
|
"SwitchAlt" = dword:1
|
||||||
|
|
||||||
|
; Max number of players in skirmish mode
|
||||||
|
; Set from 2 - 10
|
||||||
|
; TA v3.1 default is 4 (dword:4)
|
||||||
|
; TA v3.9.02 default is 10 (dword:10)
|
||||||
|
|
||||||
|
"NumSkirmishPlayers" = dword:10
|
||||||
|
|
||||||
|
; Default setting for display of chat messages from other players
|
||||||
|
; Set to 1 to enable and 0 to disable
|
||||||
|
; Use "+screenchat" command in-game to toggle setting for the current game
|
||||||
|
; TA and TA v3.9.02 default is 1
|
||||||
|
|
||||||
|
"ScreenChat" = dword:1
|
||||||
|
|
||||||
|
; Music playback mode
|
||||||
|
; Set to 1 for Play All, 2 for Random, 3 for Repeat, and 4 for Custom.
|
||||||
|
; When set to Custom, the game will attempt to use the dynamic build/battle system...
|
||||||
|
; ...however this mode is buggy and almost never works correctly on modern systems...
|
||||||
|
; ...resulting in only a single track being played, either stopping thereafter (CD version)...
|
||||||
|
; ...or looping forever (MP3 version), therefore Random is best for most people
|
||||||
|
; TA v3.1 default is Custom (dword:4)
|
||||||
|
; TA v3.9.02 default is Random (dword:2)
|
||||||
|
|
||||||
|
"CDMode" = dword:2
|
||||||
|
|
||||||
|
; Resolution overrider (disabled by default)
|
||||||
|
; Use this to override the resolution set in the options menu (remove semicolons to enable)
|
||||||
|
; All resolutions and aspect ratios supported by your setup are supported by the game...
|
||||||
|
; ...as long as they are available in 8-bit color depth (if not, create a custom resolution)
|
||||||
|
; If you set a resolution not supported by your setup (driver or display) the game will crash
|
||||||
|
; The override is set at game launch, using options menu will defeat override until next launch
|
||||||
|
; Example: dword:1920 x dword:1080 (1920x1080)
|
||||||
|
|
||||||
|
;"DisplayModeWidth" = dword:1920
|
||||||
|
;"DisplayModeHeight" = dword:1080
|
||||||
+3448
-11
File diff suppressed because it is too large
Load Diff
LFS
BIN
Binary file not shown.
@@ -0,0 +1,580 @@
|
|||||||
|
WHAT IS THIS
|
||||||
|
|
||||||
|
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)
|
||||||
|
|
||||||
|
*v2024.12.3
|
||||||
|
- Fix crash on +logo
|
||||||
|
- Fix rare intermitent crash on adding / moving / deleting whiteboard markers
|
||||||
|
|
||||||
|
*v2024.10.27
|
||||||
|
- Ability to create multiplayer/skirmish maps with neutral units and/or additional per-player spawn units
|
||||||
|
- Add a controls to hide/minimise the allies resource bar
|
||||||
|
- Make the allies resource bar actually work with ctrl-f2 setting "background=None"
|
||||||
|
- Fix incorrect player logo colour for "new marker added" messages
|
||||||
|
- Player the "Mission Complete" sound upon winning a multiplayer/skirmish game
|
||||||
|
- Fix bug causing "unit limit reached" in between single player missions
|
||||||
|
- Remove shared metal/energy from player "totals"
|
||||||
|
- Get TAHook to use the click-snapped start position
|
||||||
|
- Increase size capacity of whiteboard marker messages
|
||||||
|
- Fix for 10 player (and other) VerCheck false positives
|
||||||
|
- Support for watching all 10 players in 10 player replays (pending a corresponding TAF update to activate it)
|
||||||
|
|
||||||
|
|
||||||
|
*v2024.3.31 and prior
|
||||||
|
- Set start positions based on battleroom teams (or alliances)
|
||||||
|
- Repair battleroom teams icons so they can be used to create teams before to launching
|
||||||
|
- Add +autoteam battleroom and in-game commands to automatically assign teams
|
||||||
|
- Add +randomteam battleroom command to automatically assign random teams
|
||||||
|
- Add .exereport battleroom command to report CRC32 of each player's totala.exe
|
||||||
|
- Add .tdreport battleroom command to report CRC32 of each player's tdraw.dll (may be a different filename depending on mod)
|
||||||
|
- Add .tpreport battleroom command to report CRC32 of each player's tplayx.dll (may be a different filename depending on mod)
|
||||||
|
- Add .gp3report battleroom command to report CRC32 of each player's rev31.gp3 (may be a different filename depending on mod)
|
||||||
|
- Add .crcreport battleroom command to report fingerprints of each player's totala.exe, tdraw.dll, tplayx.dll and rev31.gp3 file all at once
|
||||||
|
- ClickSnap to snap to nearest mex, geo or reclaimable feature
|
||||||
|
- Add ability to drag queued orders around the map
|
||||||
|
- Con units patrol behaviour - hold position: reclaim only
|
||||||
|
- Fix the "ghost com" bug (remote commanders appear in top left of map during first 50sec of game)
|
||||||
|
- Fix the "units exploding in factories" bug by holding back recycling of deceased units' IDs for 5 seconds
|
||||||
|
- Option to render DTs and fortwalls that belong to the map (not built by a player)
|
||||||
|
- Supress "qqqqqq" whiteboard marker lables when "q" is used as the whiteboard key
|
||||||
|
- Show clock and weather report (wind and tidal strength) on top resource panel
|
||||||
|
- Sync wind speed across all players
|
||||||
|
- Set default resolution on new installs to 1024x768 (.ini setting "DisplayModeMinHeight768 = TRUE/FALSE")
|
||||||
|
- Disable relay of F11 chatmacro text to other players
|
||||||
|
- Enable start button in multiplayer lobby if only one player + AI are present
|
||||||
|
- Add +noshake and .ready buttons to sharing menu
|
||||||
|
- Add .autopause button to battleroom screen
|
||||||
|
- Change whiteboard, mappos and resource indicator colours in response to +logo commands
|
||||||
|
- Prevent +logo commands from affecting other players
|
||||||
|
- Ctrl-B doesn't select aircraft carriers
|
||||||
|
- Ctrl-F centres view on selected factory
|
||||||
|
- Ctrl-S works correctly with mobile-units-can-build-mobile-units hack
|
||||||
|
- Set +lostype as a cheatcode (not available unless cheats enabled)
|
||||||
|
- Look for ddraw.dll in current working directory as backend, or failing that use system ddraw.dll
|
||||||
|
- Use the same .ini file as TotalA.exe
|
||||||
|
- Use the same registry path as TotalA.exe
|
||||||
|
- Add FPS counter to megamap, increase megamap FPS
|
||||||
|
- Fix blue background on scoreboard
|
||||||
|
- Grey background on mega map to distinguish from unmapped area
|
||||||
|
- Prevent Ctrl-F2 dialog and allies resource bar from moving off screen
|
||||||
|
- Improve responsiveness of whiteboard marker movements sent to remote players
|
||||||
|
- Render cursor while in megamap
|
||||||
|
- Fix crash when removing markers
|
||||||
|
- Fix crash on simultaneous whiteboard marker move and delete
|
||||||
|
- Fix rare crash on TA Hook line drawing
|
||||||
|
- Radar and sonar jammers no longer jam your own radar and sonar in >3 player multiplayer
|
||||||
|
- Use CTRL_F and CTRL_B unit category tags for ctrl+f and ctrl+b hotkeys in preference to heuristics
|
||||||
|
- Change ctrl+s to use CTRL_W and NOTAIR/NAIR categories so as not to select jammers etc
|
||||||
|
|
||||||
|
NEW FEATURES IN DETAIL:
|
||||||
|
|
||||||
|
- Start positions
|
||||||
|
|
||||||
|
Start positions are now assigned based on battleroom teams/alliances.
|
||||||
|
With fixed positions, host and their team are assigned the odd positions in the order that they joined the lobby.
|
||||||
|
With random positions, host and their team are randomly assigned the even or odd positions, and they are assigned in random order.
|
||||||
|
|
||||||
|
The Teams icons now function correctly, so they can be used to arrange teams in the battleroom if desired.
|
||||||
|
This is optional, it is perfectly fine to arrange teams by creating alliances too.
|
||||||
|
|
||||||
|
- Autoteam
|
||||||
|
|
||||||
|
In the battleroom, host can type "+autoteam" to have teams assigned automatically.
|
||||||
|
These teams will then determine the start positions as described above.
|
||||||
|
|
||||||
|
If launched from TAF, the battleroom +autoteam will assign autobalanced teams based on the player rating.
|
||||||
|
Otherwise teams are assigned randomly.
|
||||||
|
The +randomteam command is available to use should you prefer random teams over autobalanced teams.
|
||||||
|
|
||||||
|
Alternatively, if host types "+autoteam" in-game, alliances are created based on actual start positions.
|
||||||
|
|
||||||
|
For more than 2 teams, host can type eg "+autoteam 3" to create the desired number of teams.
|
||||||
|
|
||||||
|
- MexSnap and WreckSnap
|
||||||
|
|
||||||
|
This patch includes ability to snap mexes and geos to the nearest metal or geo patch (MexSnap),
|
||||||
|
and to snap reclaim commands to the nearest reclaim (WreckSnap).
|
||||||
|
|
||||||
|
While holding down shift, press q and e alternately to switch between building mexes and reclaiming features.
|
||||||
|
|
||||||
|
If Mex/WreckSnap is temporarily interfering with your wishes,
|
||||||
|
you can hold down alt to override it.
|
||||||
|
The override key can be configured in the ctrl-f2 options menu.
|
||||||
|
|
||||||
|
The Mex/WreckSnap radii can also be configured independently via the ctrl-f2 options menu.
|
||||||
|
Press ctrl-f2, click on the "MexSnap" or "WreckSnap" field and press a number 0 to 9.
|
||||||
|
0 disables the Mex/WreckSnap and a larger radius results in snapping to features further away.
|
||||||
|
|
||||||
|
Note that Mex/WreckSnap is disabled by default.
|
||||||
|
It needs to be enabled by the mod maintainer.
|
||||||
|
If your Mex/WreckSnap radius shows as "NA" in the ctrl-f2 menu,
|
||||||
|
it is likely that Mex/WreckSnap hasn't been enabled by your mod maintainer.
|
||||||
|
|
||||||
|
- Move Queued Orders
|
||||||
|
|
||||||
|
After queueing a build order or a move order,
|
||||||
|
you can later move them around by selecting the unit
|
||||||
|
and left mouse dragging the order to a new position.
|
||||||
|
|
||||||
|
- Construction Units Patrol Behaviour
|
||||||
|
|
||||||
|
Patrol behaviour of contructions units is modified depending on their movement orders:
|
||||||
|
|
||||||
|
Hold Position: your construction units will only look for reclaim
|
||||||
|
Maneuvre/roam: your construction units will both look for reclaim and for units that need repair or assist
|
||||||
|
|
||||||
|
Mash the 'v' key to get the desired movement order and then set a patrol route.
|
||||||
|
|
||||||
|
- Neutral unit and/or per-player additional unit spawn
|
||||||
|
|
||||||
|
To enable this feature add a "[units]" section under the "[Schema 0]" section of your map's .ota file. eg
|
||||||
|
|
||||||
|
[Schema 0]
|
||||||
|
{
|
||||||
|
....
|
||||||
|
[units]
|
||||||
|
{
|
||||||
|
[unit0]
|
||||||
|
{
|
||||||
|
Unitname=ARMHLT;
|
||||||
|
Ident=;
|
||||||
|
XPos=3164;
|
||||||
|
YPos=0;
|
||||||
|
ZPos=2250;
|
||||||
|
Player=11;
|
||||||
|
HealthPercentage=100;
|
||||||
|
}
|
||||||
|
[unit0]
|
||||||
|
{
|
||||||
|
Unitname=ARMPEEP;
|
||||||
|
Ident=;
|
||||||
|
XPos=268;
|
||||||
|
YPos=0;
|
||||||
|
ZPos=384;
|
||||||
|
Player=1;
|
||||||
|
HealthPercentage=100;
|
||||||
|
CreationCountdown=30;
|
||||||
|
InitialMission=p 1750 1828;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
These additional units will spawn in for skirmish/multiplayer.
|
||||||
|
|
||||||
|
The "Player" key in the .ota file refers to the map position 1..10.
|
||||||
|
Whichever player is spawned into these positions will receive ownership of the respective units.
|
||||||
|
|
||||||
|
You can set Player=11. If any Player=11 units are defined, then the last player (eg the 6th in a 3v3)
|
||||||
|
receives ownership of the Player=11 units as long as they are an AI. He does not receive ownership of any other units.
|
||||||
|
|
||||||
|
If a player receives any units by this mechanism, they won't receive a commander.
|
||||||
|
If you want the player to have a commander,
|
||||||
|
then either don't define any units for that position,
|
||||||
|
or include a commander unit in the list of units.
|
||||||
|
|
||||||
|
The required fields for each unit are UnitName, XPos, ZPos and Player.
|
||||||
|
YPos and HealthPercentage are ignored.
|
||||||
|
Optional CreationCountdown is in seconds and InitialMission works.
|
||||||
|
Optional Ident makes it possible to refer to the unit in InitialMission of another unit.
|
||||||
|
You'll have to look at eg totala4.hpi/maps/*.OTA for examples of InitialMission scripts to copy.
|
||||||
|
|
||||||
|
- Vote-to-Reject
|
||||||
|
|
||||||
|
When a player is to be rejected during an in-progress multiplayer game, the rejection must now be
|
||||||
|
approved by a majority vote rather than taking effect immediately.
|
||||||
|
|
||||||
|
Manual reject (initiated via Tab → Control → player → reject prompt):
|
||||||
|
The proposer's YES is counted automatically. All other non-target players are shown a vote dialog
|
||||||
|
and may click YES or NO. The reject passes if at least 2/3 of non-target active players vote YES
|
||||||
|
(minimum 1). If the target has a teammate, that teammate must vote YES for the reject to pass.
|
||||||
|
If the vote fails by a NO majority it is cancelled immediately; otherwise the vote times out after
|
||||||
|
60 seconds with no effect and a 90-second cooldown is imposed before another vote can be proposed.
|
||||||
|
|
||||||
|
Timeout reject (triggered automatically when a player stops responding for 30 seconds):
|
||||||
|
All players are shown the vote dialog. The reject passes if at least 2 players vote YES
|
||||||
|
(or just 1 in a 2-player game), provided at least one ally of the timed-out player has voted YES.
|
||||||
|
If a NO majority makes the threshold unreachable, voting closes early and the player is
|
||||||
|
automatically rejected when the 90-second vote timer expires.
|
||||||
|
|
||||||
|
The vote dialog:
|
||||||
|
Each active vote appears as a row in an overlay dialog at the top-centre of the screen.
|
||||||
|
Each row shows the vote subject ("X has timed out - vote to reject?" or
|
||||||
|
"VOTE: X wants to reject Y"), the current tally (Ny/Nn/total, countdown), and YES / NO buttons.
|
||||||
|
Clicking YES or NO casts your vote and broadcasts it to all other players.
|
||||||
|
|
||||||
|
For timeout votes where the local player is an ally of the timed-out player, a ".take" button
|
||||||
|
is also shown. Clicking it broadcasts the chat message ".take", which the recorder (tplayx.dll)
|
||||||
|
interprets as the player taking over the timed-out player's units. Once the recorder confirms
|
||||||
|
the take, the corresponding vote is automatically cancelled.
|
||||||
|
|
||||||
|
- Per-Unit Veterancy Customization
|
||||||
|
|
||||||
|
This patch introduces new optional keys for unit definition files (units/*.fbi)
|
||||||
|
that allow you to customize veterancy behavior for individual units.
|
||||||
|
|
||||||
|
Example
|
||||||
|
|
||||||
|
[UNITINFO]
|
||||||
|
{
|
||||||
|
UnitName=ARMMART;
|
||||||
|
...
|
||||||
|
VeterancyThresholds=6 12 18 24 30; // OTA default: 5 10 15 20 25
|
||||||
|
VeterancyAccuracyBuffRate=3; // OTA default: 12
|
||||||
|
}
|
||||||
|
|
||||||
|
New Keys
|
||||||
|
|
||||||
|
- VeterancyThresholds:
|
||||||
|
Sets the number of kills required to reach each veterancy level (VetLevel).
|
||||||
|
Example: "6 12 18 24 30" means:
|
||||||
|
- 6 kills for VetLevel 1
|
||||||
|
- 12 kills for VetLevel 2
|
||||||
|
- 18 kills for VetLevel 3
|
||||||
|
- etc.
|
||||||
|
OTA's default thresholds are "5 10 15 20 25".
|
||||||
|
|
||||||
|
- VeterancyAccuracyBuffRate:
|
||||||
|
Controls how quickly a unit’s weapon accuracy improves with kills, independently of veterancy levels.
|
||||||
|
- Accuracy starts at a factor of 1 with 0 kills.
|
||||||
|
- This factor increases by +1 every VeterancyAccuracyBuffRate kills.
|
||||||
|
- Formula: accuracyFactor = 1 + floor(kills / VeterancyAccuracyBuffRate)
|
||||||
|
- OTA’s default rate is 12.
|
||||||
|
- Set to zero to disable accuracy buff altogether
|
||||||
|
|
||||||
|
Veterancy Effects (Unchanged)
|
||||||
|
|
||||||
|
This patch does NOT change what veterancy levels do, only how they are earned.
|
||||||
|
For reference, each VetLevel in OTA gives:
|
||||||
|
|
||||||
|
- Capture cost: +10% worker time needed to capture the unit
|
||||||
|
- Damage taken: -4% damage received
|
||||||
|
- Damage dealt: +6% damage dealt
|
||||||
|
- Target tracking: improved weapon target tracking (effect uncertain)
|
||||||
|
- Reload time: -6% weapon reload time
|
||||||
|
- Accuracy buff: improved firing accuracy (randomness reduced by an increasing factor)
|
||||||
|
|
||||||
|
Note: Reload time also appears to be affected by the unit’s health.
|
||||||
|
|
||||||
|
Veterancy Limits
|
||||||
|
|
||||||
|
OTA limits:
|
||||||
|
- Capture cost: no limit
|
||||||
|
- Damage taken: up to 5 levels
|
||||||
|
- Damage dealt: up to 5 levels
|
||||||
|
- Target tracking: up to 1 level
|
||||||
|
- Reload time: up to 5 levels
|
||||||
|
- Accuracy buff: no limit
|
||||||
|
|
||||||
|
With this patch:
|
||||||
|
- Capture cost: no limit
|
||||||
|
Beyond the last specified threshold, kill requirements are extrapolated linearly from the last two thresholds.
|
||||||
|
- Damage taken: up to 25 levels or the number of VeterancyThresholds, whichever is lower
|
||||||
|
- Damage dealt: up to the number of VeterancyThresholds
|
||||||
|
- Target tracking: up to 1 level
|
||||||
|
- Reload time: up to 16 levels or the number of VeterancyThresholds, whichever is lower
|
||||||
|
- Accuracy buff: no limit
|
||||||
|
|
||||||
|
- Weapon TDF flags: nottoair, nottounderwater and surfacefire
|
||||||
|
|
||||||
|
Two new optional keys for weapon definition files (weapons/*.tdf) give mod developers
|
||||||
|
finer control over which unit types a weapon can target.
|
||||||
|
|
||||||
|
nottoair=1
|
||||||
|
The weapon cannot target or fire at flying units (units with an airborne movement state).
|
||||||
|
Useful for weapons that are physically implausible against air targets, such as depth charges
|
||||||
|
or large ballistic artillery.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
[DEPTH_CHARGE]
|
||||||
|
{
|
||||||
|
...
|
||||||
|
nottoair=1;
|
||||||
|
}
|
||||||
|
|
||||||
|
nottounderwater=1
|
||||||
|
The weapon cannot target or fire at fully-submerged units (a target whose top is at or below
|
||||||
|
sea level, such as a dived submarine). Ordinary weapons already cannot reach underwater
|
||||||
|
targets; this flag is meant for waterweapon=1 weapons, letting them hit surface ships while
|
||||||
|
leaving submerged units to torpedoes and depth charges. It is the underwater mirror of
|
||||||
|
nottoair.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
[NAVAL_GUN]
|
||||||
|
{
|
||||||
|
...
|
||||||
|
waterweapon=1;
|
||||||
|
nottounderwater=1;
|
||||||
|
}
|
||||||
|
|
||||||
|
surfacefire=1
|
||||||
|
Used together with waterweapon=1. Normally a water weapon can only target submarines and
|
||||||
|
other units that are at or below sea level. With surfacefire=1 the weapon can also target
|
||||||
|
surface units above sea level, such as hovercraft or land units near the shoreline.
|
||||||
|
Both auto-aim and manual targeting are affected.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
[TORPEDO_SURFACE]
|
||||||
|
{
|
||||||
|
...
|
||||||
|
waterweapon=1;
|
||||||
|
surfacefire=1;
|
||||||
|
}
|
||||||
|
|
||||||
|
- Building rotation
|
||||||
|
|
||||||
|
While a building is selected for placement, press '/' to cycle through the
|
||||||
|
facings the unit allows. Shift may be held while pressing '/' so you can
|
||||||
|
rotate without lifting the line-build modifier. Most buildings only allow
|
||||||
|
their default facing, in which case the key does nothing. The rotate key
|
||||||
|
can be reassigned in the ctrl-f2 menu.
|
||||||
|
|
||||||
|
Alternatively, hold the snap-override key (default Alt — also configurable
|
||||||
|
in ctrl-f2) and scroll the mouse wheel: forward = counter-clockwise, back
|
||||||
|
= clockwise. This leaves plain mouse-wheel free for the megamap.
|
||||||
|
|
||||||
|
A third option is built into the build menu itself. Each rotatable
|
||||||
|
structure button has a small overlay marker on each cardinal it can
|
||||||
|
face (S = bottom edge, E = right, N = top, W = left). Click the
|
||||||
|
button on the corresponding edge to enter placement mode with that
|
||||||
|
rotation already chosen — clicks in the centre of the button select
|
||||||
|
the unit normally and keep the previously chosen rotation. Tick or
|
||||||
|
un-tick "Build menu rotation overlay" in the ctrl-f2 menu to enable
|
||||||
|
or disable the overlay (when off, the build menu is stock vanilla
|
||||||
|
and clicks behave as if it were never installed).
|
||||||
|
|
||||||
|
Mod authors can replace the built-in chevron art by dropping a 4-
|
||||||
|
frame GAF at anims/buildrotate.gaf beside their other animations.
|
||||||
|
Frames are interpreted in the order S, E, N, W (matching the
|
||||||
|
rotation index), and each frame's hotspot is anchored just inside
|
||||||
|
the cardinal margin band of the build button so the artwork sits
|
||||||
|
cleanly inside the button rather than straddling the edge. An
|
||||||
|
optional second file anims/buildrotateclick.gaf (also 4 frames in
|
||||||
|
the same order) is blitted in place of the idle GAF for the brief
|
||||||
|
click-feedback flash; if absent, no flash is rendered (mods opting
|
||||||
|
into a custom GAF need to ship the companion click GAF themselves
|
||||||
|
if they want one). When neither GAF loads the built-in chevrons
|
||||||
|
are used. A reference generator and example .gaf files live under
|
||||||
|
tools/make_buildrotate_gaf.py in the source tree.
|
||||||
|
|
||||||
|
Mod developers opt-in per unit by adding a "Rotations=" key to the
|
||||||
|
[UNITINFO] section of the FBI listing the cardinal letters they want
|
||||||
|
to allow, e.g.
|
||||||
|
|
||||||
|
[UNITINFO]
|
||||||
|
{
|
||||||
|
...
|
||||||
|
Rotations=SENW;
|
||||||
|
}
|
||||||
|
|
||||||
|
Limitation: a few mods script their Create() function to forcibly TURN
|
||||||
|
the unit body (e.g. so structures face the centre of the map). Such
|
||||||
|
scripts run after the build cursor's rotation is applied and overwrite
|
||||||
|
it, so the Rotations= key has no visible effect on those units.
|
||||||
|
|
||||||
|
- Nanoframe ghost preview
|
||||||
|
|
||||||
|
A small green animated preview of the building you're about to place
|
||||||
|
is drawn inside the build rectangle. It rotates in step with the
|
||||||
|
rotate-build key, and disappears on red (can't-build) squares. When
|
||||||
|
shift-line / shift-row building, the preview is shown at every
|
||||||
|
rectangle in the row.
|
||||||
|
|
||||||
|
Mod authors with upgrade-style units (where the 3DO model contains
|
||||||
|
both the basic and upgraded geometry, and the COB script controls
|
||||||
|
visibility at runtime) can list the pieces that should appear in the
|
||||||
|
preview by adding a "PreviewPieces=" key to [UNITINFO]:
|
||||||
|
|
||||||
|
[UNITINFO]
|
||||||
|
{
|
||||||
|
...
|
||||||
|
PreviewPieces=base, turret, sleeve, barrel, cover;
|
||||||
|
}
|
||||||
|
|
||||||
|
Names are matched case-insensitively against 3DO piece names; comma,
|
||||||
|
space, or semicolon may be used as separators. When the key is set,
|
||||||
|
ONLY listed pieces are rendered. When the key is omitted (the usual
|
||||||
|
case), every piece is rendered minus a small hardcoded set of
|
||||||
|
cosmetic / firing-effect names (flare, flash, muzzle, fire, flame,
|
||||||
|
wake).
|
||||||
|
|
||||||
|
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