-
-
Notifications
You must be signed in to change notification settings - Fork 126
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[AI] Medics and Support Ships should heal nearby units #4
Comments
Hi Team, I am getting this issue while setting up the project. |
This looks like an issue with Windows, please join our Discord's |
Anyone working on this? I want to attempt this issue. |
There is no open PR for this, so feel free to create one. |
@SnowDingo I have been playing a bit on this issue to learn the working of the AI. I have done the create healing units part here anan474@170a5d0 which is might be not ideal yet but you can use it. It calculate a score to create a Medic or Support Ship by considering the available heal units/building, units with heal needs and fund availability. I'm still trying to figure out the healing other units bit but might be slow going.
I can think these might a good start to consider:
|
The AI currently does not know how to heal units. The Medic and Support Ship can heal various unit types, specified via
healTypes
. You can see how it is used in thegetHealableVectors
library function.Implementation
For this task, the AI should receive a top level function
healUnit
that filters units that can heal units and finds nearby units to heal. It should make a good choice about whether to heal other units by considering health, cost of healing, and how many funds the AI is generating and/or whether it needs to build units or buildings instead. You may want to consider defining a weight for whether a unit should be healed or not, similar to whether an opposing unit should be sabotaged instead of attacked.getHealCost
is used to determine to cost of healing a specific unit.Additionally, the AI should consider building a Medic or Support Ship from time to time via its
createUnit
function.AI Info
The current AI is called
DionysusAlpha
and its code can be found there. There are also many AI specific helpers indionysus/lib
. Check out the AI Playground.Test for new AI behaviors should be added to
AIBehavior.test.tsx
. These tests must fail without the change from this issue, ie. they must ensure that the AI deterministically implements the new behavior.Funding
The text was updated successfully, but these errors were encountered: