Giter Site home page Giter Site logo

ecgberht's People

Contributors

adakitesystems avatar jabbo16 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

ecgberht's Issues

More defenses at key locations

Right now Ecg only builds one bunker and one turret at the Main Chokepoint that is closest to the Natural Region, some improvements would be:

  • Being able to place defenses at other locations like the natural base, this helps FE builds.

  • Build more turrets if getting drops or cloaked unit attacks like DTs or Lurkers, helps with #8

  • Bunker rush for BBS?

Improve bunker placement heuristic

Current algorithm sometimes builds the bunker a bit far from the command center.

A nice heuristic could be a mix of key buildings distances and maybe? covered/protected tilepositions by bunker range.

Fix Random opponents learning

Ecgberht learning versus Random opponents is bugged because of BASIL picking a race from the start.
A fix would be generating a learning file for each opponents played race (including proper random)

High ground Siege Tanks

Use of JPS to calculate best positions for sieging tanks to protect main path from enemy base

Different strategies per matchup

Right now all of the bot strategies are meant for TvX, so the bot can play worse strategies vs certain matchups (like Bio vs Protoss or Terran).

Current strategies should be reworked/deleted/added so the bot plays using proper metagame and not meme strategies.

One example its the new 2PortWraith build that its good vs Zerg.

Fix Attack

In some test game against the built-in AI Ecgberht stopped attacking after sending the first wave.
Got to 150+ supply but didnt attack when It should have.

Full Mech build and behaviour

  • ImproveMech Build Order (implemented right now but floats a lot of minerals).

  • Add Armory building, upgrades.

  • Goliaths.

  • Finish #12 .

  • Reactive unit composition for mech, add more goliaths if enemy air units spotted, no marines to kill air.

Add Config File and Parsing

Add config file to allow for different config parameters like text debugging, build orders enabled/disabled, tournament mode and debug drawing.

Fix repair

SCVs fail to repair buildings other than bunkers.

Port to BWAPI4J

Port latest version to BWAPI4J
https://github.com/OpenBW/BWAPI4J

Two main benefits from this is:

  1. Bot will be faster because of BWAPI4J caching.
  2. Being able to use BWEM instead of BWTA.

Taking advantage of this rework also complete #2 at the same time

Firebats against Zerg

The bot should train a few firebats when playing against Zerg, the max amount of firebats should be a fixed value, around 2-3 firebats max, may be increased/decreased depending on the amount of zerglings.

Fix Scouting

Sometimes when destroying enemy main base Ecgberht doesnt send a scouter to check other BaseLocations.
Probably has something to do with the enemyBuildings Set not being empty when It should be.

Improve Agents micro

List of current bugs/improvements to be done:

  • Vultures suicide too much, combat sim ignores sunkens?
  • Wraiths should be able to target/focus Overlords.
  • Wraiths should be able path around the enemy base to target workers/overlords.
  • Air agents should run from scourges if they cant kill them before getting hit.
  • Vessels dont run away if getting focused
  • Vessels irradiate Zerg Eggs ยฟ?ยฟ? ๐Ÿ’ฉ nvm It was hydralisks morphing into lurkers after getting irradiated.
  • Run away from spores.

Improve BioMech logic

The marines usually get too far ahead and leave the tanks undefended at the backline, this usually gets the tanks killed and the marines then exposed to the enemy units.

One improvement I have thought is to split the squads by "Bio" and "Mech", setting the "Bio" squads to protect the "Mech" squads and to not get too far from them.

Also tanks wont unsiege when enemies are too close and get killed while sieged.

Add proper drops

Dropships are already implemented but only for island expansions (not used right now because of BWAPI bug).

Should be just adding new logic to DropShipAgent to pick units, follow a proper path to the enemy base and to drop them to cause the max amount of damage to the economy (killing workers, etc.).

Test AIST S2 Map pool

Test if choke/base detection logic works fine and army doesnt derp anywhere with AIST S2 map pool:

  • (2) Benzene

  • (2) New Heartbreak Ridge

  • (3) Aztec

  • (4) Circuit Breaker

  • (4) Eddy

  • (4) Fighting Spirit

  • (4) Roadkill 1.08

AIST S2 planned improvements and fixes

Fix these current opened issues:

Other improvements/fixes:

  • Fix tanks looping (siege -> unsiege, repeat) when enemy targets are in range but not visible ๐Ÿค”

  • Vessels still run fly float into scourges ๐Ÿ˜ž

  • Vultures suicide when retreating ๐Ÿ˜ฅ

  • Implement high ground siege tanks (insert star wars prequels meme)

  • Ebay bm and proxy fac learning?? (kinda similar to SH gas steal or locutus pylon bm)

  • Medic only squads should move to closer non-medic squad instead of chilling around the nearest Command Center ๐Ÿน

  • Implement own fixed getDistance method

  • Add new memes ๐Ÿ‘

Fix InfluenceMap

Something its wrong with it, Squads dont try to attack enemy buildings in sight and only move to the center of the enemy base.

Add EMP vs Protoss

Not sure if worth it but It would be really easy to implement because Its similarity with the Irradiate implementation.

Refactor almost everything

Right now GameState its too big and does too many things, It should contain objects relegated to general tasks and manage them.

Fix Squad movements

Sometimes the marines get stuck at ramps/chokepoints when changing the "objective" to attack.
Orders should be issued instantly instead of waiting for the squad to get close to the previous objective.

Improve scans and detection of cloaked units

Issue related to #6

  • Use scans only when being able to kill invisible units.

  • Squad retreating if no detection available against cloaked units.

  • Training of Science Vessels and implementing an agent for them.

Give and check buffer when building Factory

Factory needs some space to build the addon, currently not implemented in our BuildingMap class.
It should check the extra size required for the addon when choosing the position where to build the new Factory and also update the map with the extra addon size.

The bot currently gets bugged when the factory has no space for constructing the addon.

Fix Wraiths

Related with #22, wraith logic was is borked.
Atm the wraiths just flee when there are enemies close enough to the cluster which the wraith belongs, It should consider wraith's distance to enemy units to see It if can kite any of them or one of the units are close enough to be a danger. Logic before used tried to do that but It was awful and didnt work.

Track supply

Because of latency supply is not tracked correctly when not playing singleplayer, this messes up some timings that check supply numbers like scouting.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.