Jump to content


Photo

AI DC Master To-Do list - Updated: Nov 23/06 *UPDATED*


  • Please log in to reply
7 replies to this topic

#1 thudo

thudo

    Wacko AI Guy!

  • Division Leaders
  • 12,166 posts
  • Location:Lemonville North, Canada
  • Projects:DoW AI Scripting Project
  • Division:DoW
  • Job:Division Leader

Posted 24 October 2006 - 01:44 PM

A current list of what needs to be considered and/or addressed/optimized in Dark Crusade, AI-wise.

This will be updated every other day so we can keep track of whats complete and whats on-going..

** New Addition Today - Nov 23/06
Updated for completion

Chaos Marines
~~~~~~~~~~~~~
DONE! -- Code ChaosLord's Detector ability - detects nearby infiltrated units - target an area to drop


Eldar
~~~~~
DONE! -- Optimize Harlequin's Dance Ability
DONE! -- Code Webway's Shroud ability to turn on when infiltrated units are detected (filter: IsNotInfiltrating)
DONE! -- Ensure vehicle_low and vehicle_med are produced as Wraithlords are spammed too often. Thud-- Corrected in unitstats.ai
DONE! -- Allow limiting # of Webways per LP or a new script to allow for building placements on a randomized # of LPs (see Misc)


Guard
~~~~~
DONE! -- Ensure HeavyWeapon Team Entrenches\Uproots
DONE! -- Ensure HeavyWeapon Team Upgrades either Lascannon or Autocannon according to threat in Entrench Mode
DONE! -- Code HQ's "Long Range Scanner" to find Infiltrated Units (reveals an area where enemy infiltrated units attack other units?)
DONE! -- Optimize HeavyWeapon Team's Entrench\Uproot Ability so it moves around more reliably after being entrenched -- examine its behaviour as it follows attack force! Note: problem is: HWT team uses two tactic files -- one for regular ebps/sbps unit and the other is the entrenched version. There is a code conflict between the two tactic files which causes the HWT to entrench/uproot over and over again once it faces its first threat. It usually takes 3-5 times before it will stop the loop and follow the attack force. -- Update -- Works perfectly now! Horrarry!!
DONE! -- Ensure both HellHound and Chimera are used in balance. Thud-- Corrected in unitstats.ai

Necrons
~~~~~~~
DONE! -- Fix Unit Build Code -- seems broken as AI will simply not build new units (might be a cost issue)
DONE! -- Optimize ListeningPost ability to attack enemy squads (breaks morale) - targets a position.
DONE! -- Randomize all 8 NecronLord researches (4 researches in Tier1, 2 in Tier2, and 2 in Tier3). Only 3 are allowed in total. Recommend randomization by picking one in each tier OR randomize this by choosing only Tier1 researches.
DONE! -- Code/Optimize TombSpyder's Spawn Ability -- need to discuss this one since spawning scarabs drops Spyder's health by 900hps (still useful to get it working!) - Update -- It works but must investigate further to optimize. Update #2 - Now working real well! Thanks Arkhan!
DONE! -- Code/Optimize TombSpyder's Harvest Ability -- show be able to pick up dead corpses then randomly spawn its 3 units types. Update - May require some future tweaking but its a complex ability to pull off in a warzone.
DONE! -- AI wants to keep building multiple Greater Summoning Cores even though its told not too: I remember us having this problem with mines but was corrected. Eventually, AI will have enough cash to advance to higher tiers.
DONE! -- When NecronLord gets re-animated after dying, he sometimes fails to move at the spot when he is resurrected. Anyway to reset his state incase this happens? Granted, it doesn't happen much. Perhaps 20% of the time. Update - Not reporting this as much anymore.
DONE! -- When Scarab Builders find an enemy trying to build an unfinished LP, they hang around it idle and move back and forth as if wanting to decap/build/attack it. Is there a way to avoid this? --Update: Should be fixed now!
DONE! -- Generators - build more sooner and thus balanced with 2 Scarab builder cappers
DONE! -- NecronLord: correct back-forth movement
DONE! -- NecronLord: increase his frequency of appearance
DONE! -- Wraiths: limit their # since they are too fast and usually show up too quickly into combat without support
N/A -- Examine Warrior/Flayed One's ability to "summon" themselves back to safe LPs or Necron buildings -- might be extension ability to which we cannot script. -- Update: seems to be an extension ability which we cannot script for!
N/A -- Examine Necron Destroyer Lords' ability to hold enemy vehicles in Stasis then can Possess them. -- Update: seems to be an extension ability which we cannot script for!


Orks
~~~~
DONE! -- After ork-recruitment research perhaps allow more sluggas to be created for free? --Does this really need optimization? Note: we'll leave this AS-IS since this research happens after the Fortress Addon so its a moot point for the AI to create free Sluggas if he has KillKans and Trakks around.


Space Marines
~~~~~~~~~~~~~
DONE!


Tau
~~~
DONE! -- Ensure both Tau Commander and Crisis Suits upgrade their weapon systems
DONE! -- Ensure Firewarrior Squad (command squad) builds both Squad Leader and Drone
DONE! -- Like IG's HeavyWeapon Team's Entrench\Uproot Ability, optimize the Broadsides similar ability so it moves around more reliably after being entrenched
DONE! -- Code/Optimize Ethereal's Spawn Guard ability - ensure Ethereal can spawn these "Honor Guards" as much as possible
DONE! -- Code/Optimize Harbinger Drone Carrier's ability to Spawn Drones -- simply refuses to spawn them -- Working now! Thanks Arkhan!
DONE! -- Ensure Ethereal's Command Squad can reinforce itself when it looses a member
DONE! -- Possibly code a buildorder randomizer between the 2 buildings "tau_shrine_of_montka" and "tau_shrine_of_kauyon" so the 2 build paths are done randomly.
DONE! -- Ensure Ethereal can use its devastating ability "Death Pulse" on targets
DONE! -- Set Stances for Tau units (ensure, for example, Firewarriors never engage in close combat?)
DONE! -- StealthSuits capping probs when jetpack researched
DONE! -- Kroot BuildOrder: Disallow it when against Necrons.
DONE! -- Tau Commander's Snare Traps: should be thrown in front of approaching enemy (not behind -- although I wonder: how does anyone know where Infiltrated Units really are that the AI should toss the trap infront of visible oncoming enemies? ) Update: Seems much better now!
N/A -- Examine/Optimize Kroot Carnivore's Cannibalize ability to ensure the Kroot Squad is able to heal itself with useable bodies around -- Update: seems to be an extension ability which we cannot script for!
N/A -- Examine if Ethereal can use its Project Hologram ability -- Update: seems to be an extension ability which we cannot script for!
N/A -- Check if Drones can use the "burrow" ability and then use it smartly -- Update: seems to be an extension ability which we cannot script for!


Misc
~~~~
DONE! -- Give building abilites their own .ai for each faction rather in the /core
DONE! -- Optimize Builder Repair Code --seems to work quite well although can this be further tweaked?
DONE! -- Optimize Builder Build code like it was in 1.95 where idle builders would quickly help other builders constructing buildings (to build faster)
DONE! -- Examine possibility of having Builders go along "cautiously" with a battle ground and repair damaged vehicle (ie. useful for Necrons to repair the TombSpyder when it spawns scarabs) -- Update: Coded to repair vehicles on the way back to base. Very smart indeed!!
DONE! -- Damaged Vehicles will pause around main base to get healed instead of defending against enemies inside own base


Bugfix
~~~~~~
DONE! -- Utility.ai at function distance_sqr( vec1, vec2 ) at line dbAssert( vec1 ~= nil ) -- this causes an Assertion error in defendplan.ai at random times during the game.
Seems to mostly occur 1-2 minutes after vehicles appear on the battlefield. Note: Seems fixed now! Thanks Arkhan!
DONE! -- Tactic.ai at function Tactic:GetClosestUnitForMelee(iRange, bRanged) -- this causes a "attempted to compare nil with number" error at line 1149: if (iDistanceToTarget < iRangeSQR and (oTurretEntity == nil or iDistanceToMe < iClosestDistance)) then -- Seems to happen randomly especially with Tier1-2 Necrons Update - Not reporting this problem anymore
DONE! -- PlayerInfo.ai 92: attempt to index local `vPos2' (a nil value) -- Got this error when a Chaos AI overthrew a Necron AI and just as the last Necron building was destroyed this Fatal Exception error
DONE! -- Cpu_manager.ai at function CpuManager:GetUnitStrength(oUnit) -- this caused an error in line: "for iLoop1 in aAttachments do" between Eldar AI and Chaos AI. Error was: attempt to call a nil value.

To Do
====
DONE! -- Examine how AI plays when allied with player -- this is largely inconclusive but sometimes AI player on human team won't build much or be aggressive. Other times he is. Update: Generally, seems MUCH improved over WA!
DONE! -- A script similar to BuildBack or Turret which will randomize the construction of a building on a random # of LPs (useful for Eldar Webways, for example)
DONE! -- Ability for AI to donate resources between allies (human or AI)
DONE! -- Optimize Assassination code -- can AI commanders simply seek safe places and never engage in combat? Update -- works quite well now.
DONE! -- Optimize code so AI will move forces together and drastically minimize single squads or individual units from going solo and thus getting slaughtered. -- Update: this has been minimized. Its not perfect but because its hard to move single units around we had to compromise.
DONE! -- Allow building of turrets around Large Generators to protect them.
DONE! -- Idle check to move a unit or squad to safety when under fire but unable to defend itself (ie. Sluggas being attacked by Infiltrated *hidden* StealthSuits). Update: Arkhan has done a superb job of adding more detectors around so this event should now be minimized.
DONE! -- A script check to prevent idle units which can jump from being stuck in places like middle of its own base. This would allow for military and civilan "jumpable" units which can easily get sandwitched into spot to have a "idle time-out" which then scripts them to jump to next available spot. This would prevent such units from ever getting stuck. Update: Monolith essentially uses this code and can be thus applied to other units in the future if necessary.
N/A -- Possible to create an Addon Check so buildings below a certain health percentage and if a threat exists nearby with the buildings health being low will NOT run a Research or build an Addon to prevent such a cost to be squandered (since the building will likely die anyway). Update: Likely impossible as we cannot even tell the AI where to build certain units (ie. ubers) to prevent bottlenecking

-- Hit&Run Tactics (send a small group of units to harass then flee an enemy-controlled area)
-- Inter AI communications between alliance games (better AI team coordination when defending fellow allies and assaulting enemy bases/LPs) - Corsix investigating
Advanced Skirmish AI Team Lead for the coolest Warhammer40k PC RTS out there:

Dawn of War Advanced AI Headquarters

Latest DoW Advanced AI Download!

#2 thudo

thudo

    Wacko AI Guy!

  • Division Leaders
  • 12,166 posts
  • Location:Lemonville North, Canada
  • Projects:DoW AI Scripting Project
  • Division:DoW
  • Job:Division Leader

Posted 07 November 2006 - 02:58 PM

List Updated - no new additions..
Advanced Skirmish AI Team Lead for the coolest Warhammer40k PC RTS out there:

Dawn of War Advanced AI Headquarters

Latest DoW Advanced AI Download!

#3 thudo

thudo

    Wacko AI Guy!

  • Division Leaders
  • 12,166 posts
  • Location:Lemonville North, Canada
  • Projects:DoW AI Scripting Project
  • Division:DoW
  • Job:Division Leader

Posted 12 November 2006 - 04:10 AM

List Updated -- No new Additions
Advanced Skirmish AI Team Lead for the coolest Warhammer40k PC RTS out there:

Dawn of War Advanced AI Headquarters

Latest DoW Advanced AI Download!

#4 Finaldeath

Finaldeath
  • Project Team
  • 188 posts
  • Location:UK

Posted 14 November 2006 - 12:24 PM

The free sluggas are pretty "powerful" - good for defensive measures, but does require a good few extra boyz hutz. They do soak up a bit of damage for sure, and also provide the bonus morale immunity for anyone nearby, and I think damage bonus too? (the mob bonus).

If the AI doesn't reinforce them (except perhaps nobs) and has the health and damage upgrades, free 120 req squads really help fill the pop cap if under attack and low on resources :thumbsupsmiley:

Useful versus other AI's more then players however, who can easily counter it if there is only slugga boys.

Edited by Finaldeath, 14 November 2006 - 12:27 PM.


#5 thudo

thudo

    Wacko AI Guy!

  • Division Leaders
  • 12,166 posts
  • Location:Lemonville North, Canada
  • Projects:DoW AI Scripting Project
  • Division:DoW
  • Job:Division Leader

Posted 14 November 2006 - 08:19 PM

Well problem is: if the Ork AI even gets to that point there is no bother to use Sluggas as other better stuff (ie. Flash Gitz) are far superior. Sluggas just become a "flesh fence" but don't worry: we call the AI to build 3 immediately Sluggas right after the recruitment research is done. :thumbsupsmiley:
Advanced Skirmish AI Team Lead for the coolest Warhammer40k PC RTS out there:

Dawn of War Advanced AI Headquarters

Latest DoW Advanced AI Download!

#6 thudo

thudo

    Wacko AI Guy!

  • Division Leaders
  • 12,166 posts
  • Location:Lemonville North, Canada
  • Projects:DoW AI Scripting Project
  • Division:DoW
  • Job:Division Leader

Posted 16 November 2006 - 08:57 PM

List Updated -- also added new section on it: To Do. Almost complete with it.
Advanced Skirmish AI Team Lead for the coolest Warhammer40k PC RTS out there:

Dawn of War Advanced AI Headquarters

Latest DoW Advanced AI Download!

#7 thudo

thudo

    Wacko AI Guy!

  • Division Leaders
  • 12,166 posts
  • Location:Lemonville North, Canada
  • Projects:DoW AI Scripting Project
  • Division:DoW
  • Job:Division Leader

Posted 20 November 2006 - 03:22 PM

Updated List - quite a few things completed. Thanks Arkhan/Larkin!
Advanced Skirmish AI Team Lead for the coolest Warhammer40k PC RTS out there:

Dawn of War Advanced AI Headquarters

Latest DoW Advanced AI Download!

#8 thudo

thudo

    Wacko AI Guy!

  • Division Leaders
  • 12,166 posts
  • Location:Lemonville North, Canada
  • Projects:DoW AI Scripting Project
  • Division:DoW
  • Job:Division Leader

Posted 23 November 2006 - 05:16 AM

List Updated and now we're REAL CLOSE to closing this beta up! Solid work gents! Fantastic!!
Advanced Skirmish AI Team Lead for the coolest Warhammer40k PC RTS out there:

Dawn of War Advanced AI Headquarters

Latest DoW Advanced AI Download!




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users