Page 1 of 1

Bot interface?

Posted: Tue Jan 14, 2014 5:36 am
by Ardagan
Just a matter of fun. How about doing 1 of 2 things (both better). Or even 3:
1) interface for implementing bots for player side
2) interface for implementing bots for environment side
3) zerg-vs-zerg bot game
4) ok. probably human vs environment bots challenge

I don't think that will bring you a lot of money, but will earn you love of players like me or, probably, dysoch.

Re: Bot interface?

Posted: Tue Jan 14, 2014 6:23 am
by ssilk
What do you mean with player/environment side bots?

Re: Bot interface?

Posted: Tue Jan 14, 2014 6:34 am
by Ardagan
I mean that I write bot that will play instead of me. I write bot that develops base (i suppose without actual player character or with it), or I write bot that manages spawners and biters. Bot means program/rules/guidelines that uses some interface provided by game to manage the logic on how units act. I still have to follow rules, like limit of spawning positioning or max group size for example (not to wipe player in 5minutes).
Having this will also partially solve the issue for devs to invent AI for biters.

That's just an idea.

Re: Bot interface?

Posted: Tue Jan 14, 2014 7:24 am
by ssilk
Yes, it's needed sooner or later. :)

Implementing AI is a hard job. For example: if you built a belt from a coal resource to your burners, then this belt exists in two ways:
- on the map as working entity
- in your mind as function to generate energy

But for an AI this is not so clear.... Some natives cut the belt, coal is not flowing anymore. Then your algorithms need to be so smart to see the cut and conclude, that the energy generation is in danger and rethink it.

Assumed that the AI is so smart (which means it knows about usage of a transport), then the process of rethinking the coal transport would generate another belt from resource to burners or it builds a completely new power plant, instead of just fixing the broken belts.

Not that easy... :)

Re: Bot interface?

Posted: Tue Jan 14, 2014 4:29 pm
by Ardagan
I know. That's why I said it will not bring you money. :(

Spent months on grobots and didn't actually make anything truly worthy. But learned some bycicles.

Re: Bot interface?

Posted: Tue Jan 14, 2014 5:02 pm
by Nova
First make a robot which can just build something. After that, think about repairing or expanding already existing parts. ^^

Re: Bot interface?

Posted: Tue Jan 14, 2014 5:19 pm
by kovarex
One of my previous projects was BWAPI, api to interact with starcraft from C++ enviroment https://code.google.com/p/bwapi/
The fact that others are trying to write bots for starcraft using this as part of AI university curses and my own experiments with writing my own ai leads me to conclusion, that it is really lot of work with uncertain results.
It is lot of fun as well, no doubt about that, but as it was said, it will not bring much money, so we could do this kind of "fun stuff" if are not pressured by the money so much someday :)

Re: Bot interface?

Posted: Tue Jan 14, 2014 8:39 pm
by Ardagan
@Kovarex
I just don't know how easy it is for you to expose some interface. Plus that is just an idea I would be happy to see implemented.

Re: Bot interface?

Posted: Sat Jan 18, 2014 12:58 am
by azoundria
With the belt example, there are a few simple solutions:

1) Damaged items are simply rebuilt as they were by default.

2) Belts are allocated to certain resources (one for each side). The AI knows that it needs a coal belt connection from the coal mining to the boilers. It compares prototypes for where this belt can be constructed, settling on the one with the least cost, which will be fixing the route in most cases.

Re: Bot interface?

Posted: Sat Jan 18, 2014 2:09 am
by Ardagan
@azoundria, @kovalex:
I this case, player is to decide on how bot hadles the issue with broken buildings. The point is that bot should have interface to find out if it is broken. Game should not solve the tasks, bot should.