Page 1 of 1

AgentSpeak AI feasibility

Posted: 18 Mar 2021 10:39
by dngrrng
Hi,

I've got a university assignment to create a multi-agent Jason system, and I was wondering how feasible it would be to create some OpenTTD agents.

Jason is a java implementation of an agent-orientated programming language (I know it looks and sounds horrible). I've done some brief searching around, and found that there's a java library for connecting to a server admin port (JOAN), and ServerGS lets admin port clients access the GameScript API. Before diving too far in I thought I'd ask if y'all think this is a feasible thing to try, or whether you had any thoughts?

Thanks

Re: AgentSpeak AI feasibility

Posted: 18 Mar 2021 19:36
by jfs
Not really feasible as-is, I think.
In OpenTTD all AI's run in-process via a special mechanism, they are not network clients.
The Admin Port feature does not allow you to be a playing client, it only lets you do administrative things.
It would be possible to make a network client that is actually an AI, but a network client for OpenTTD must contain the full game simulation, so effectively has to be derived from the original game. That would make integration of a Java based system a lot of work, since you would need to host a Java runtime inside OpenTTD and translate all the game data structures into data in the Java runtime.

Unless of course the system you're thinking of is a "visual" AI that would work by inspecting a picture of the game screen, as if it was a robot controlling a monitor/keyboard/mouse to interact.