dumb.js: a simple PSO based AI that stronger than bonecrusher

Did you create a mod, map, music, or a tool? Present them here and earn feedback!
Note: addon requests do not belong here.
Note, everything uploaded to this forum, MUST have a license!
wanjia1
Trained
Trained
Posts: 44
Joined: 01 Nov 2023, 06:05

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by wanjia1 »

Reason of forgotten can be vary, as lack of maintenance, no specialty, or simply hard to download
But for merged one, there is always maintenance, and exists with the game

Merged AI have one common: they are best of the time.
Maybe it's the only way to be merged...
wanjia1
Trained
Trained
Posts: 44
Joined: 01 Nov 2023, 06:05

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by wanjia1 »

The map to test AI, not in map database:
Attachments
3c-Ng-RO1v1Spec-a433e1a676a928260ba7474d29c48a7e908007ec908c71ab160325abbdf945b7.wz
License: GPL 2+
(9.67 KiB) Downloaded 141 times
wanjia1
Trained
Trained
Posts: 44
Joined: 01 Nov 2023, 06:05

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by wanjia1 »

dumb23: Rocket tweaks
It can beat all previous Insane bot with Rocket
It can beat previous Insane Rocket bot with Cannon

Now all chat commands starts with '!', like '!s1'
23.png
23.png (19.75 KiB) Viewed 5746 times
It will attack parallel
Build gate if power>2500 && enemy flamer ratio>60%
Build tracks if enemy mortar ratio>60%
Tweaked rocket path, complete Rocket ROF3 before 10 minutes, Tiger Body before 25 minutes
When uses cannon and against rocket, It will rush into enemy

Introduced behavior tree, but not enabled

(bugfix: truck build at edge of map)
Attachments
dumb23.zip
(32.67 KiB) Downloaded 136 times
wanjia1
Trained
Trained
Posts: 44
Joined: 01 Nov 2023, 06:05

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by wanjia1 »

24: Low oil tweaks (only T1, rocket tested)
It can beat all previous Insane bot in land low oil
It can beat most Insane bot in hover low oil

Limit factory count in low oil
Take oil earlier and with less trucks
Build repair droid if no repair center
Better build position for terrain map

bugfix:
Infinite loop when destination of spamBuild unreachable
dumb24-2 against builtin AI
dumb24-2 against builtin AI
24.png (10.84 KiB) Viewed 5131 times
Attachments
dumb24.zip
(45.8 KiB) Downloaded 119 times
User avatar
Tzeentch
Trained
Trained
Posts: 324
Joined: 14 Oct 2012, 14:24

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by Tzeentch »

Having an interest in the progress, I made a few tests on Sk-FishNets map with this bot.

The build order when using no bases, strongly advise changing this. This factor is causing it to lose the game. Other bots first make 2 facs, lab, then CC after but dumb24 makes lab, gen and CC first before any facs. As per this screenshot.
This delays trucks way too long or any other kind of unit production.
It lost against my arty-hackbot ( almost same as Cobra ) on Hard vs Hard.

On body weapon pairing, I saw Heavy Cannons being used on a Leopard body which is another thing to look at adjusting.
You'd want to match weight to body ratio is more appropriate.

With those tweaks it'll do much better on no base games.

( Getting a consistent HTTP error uploading the png file that is 1.5 MiB )

I see this though - "Maximum filesize per attachment: 10 MiB." - Maybe that message is out of date now?
Attachments
Dumb24-base.jpg
Last edited by Tzeentch on 06 Sep 2024, 08:11, edited 1 time in total.
wanjia1
Trained
Trained
Posts: 44
Joined: 01 Nov 2023, 06:05

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by wanjia1 »

It only tested on full base, where already have 2 factories
For it's truck code, only structure count and power involved, other is ignored
I will fix it at next version

(The max file size is 1 MiB, convert the image to jpg to reduce size)
User avatar
Tzeentch
Trained
Trained
Posts: 324
Joined: 14 Oct 2012, 14:24

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by Tzeentch »

I had a thought as well that, while droid order == move || retreat, to perform some terrain analysis as it moves to prefer moving over roads if seen and to avoid steep inclines where possible.

Also, consider factory orientation to face direction of produced units to local map gateway or enemy, relevant to position.
wanjia1
Trained
Trained
Posts: 44
Joined: 01 Nov 2023, 06:05

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by wanjia1 »

dumb24a: no-base & rocket bugfix

Normal dumb24a-1 beat Hard dumb24-1 at 50% chance
Normal dumb24a-2 beat Hard dumb24-2 at 65% chance

(new code have bugs at low oil map)

(below enabled at >= 24 oils or no base)
better 40 oils, no base truck code

(below enabled at >= 24 oils)
better rocket hit-run function, droid will not rush into enemy when patroling
better rocket Anti Tank / Artillery ratio, calculated from enemy Tank / Cyborg ratio
rocket attack earlier when against flamer
cannon will hit-run when against cannon
reduce movement at defense state

remove unused functions
add comment for legacy truck code
Attachments
dumb24a.zip
(24.47 KiB) Downloaded 64 times
wanjia1
Trained
Trained
Posts: 44
Joined: 01 Nov 2023, 06:05

Re: dumb.js: a simple PSO based AI that stronger than bonecrusher

Post by wanjia1 »

25: rocket bugfix, rocket with mortar (low oil support is removed)

Normal dumb25-2 beat Insane dumb24a-2, dumb24a-1
It weak against MG rush from side

Fixed many zero-division error, it will make full AT rocket when enemy build 0 cyborgs
Won't change target position when attacked
Use 50% mortar and 50% rocket array to anti cyborg
Replace Heavy Rocket Array with Pepper Pot
Mortars will firesupport first sensor, if it have target.
Research and use Tracks if event of attacked by artillery > 50
Attachments
dumb25.zip
(19.15 KiB) Downloaded 23 times
Post Reply