Request for all NoAI-AI authors and their AI's

Discuss the new AI features ("NoAI") introduced into OpenTTD 0.7, allowing you to implement custom AIs, and the new Game Scripts available in OpenTTD 1.2 and higher.

Moderator: OpenTTD Developers

Post Reply
User avatar
SirkoZ
Tycoon
Tycoon
Posts: 1518
Joined: 06 Mar 2004 23:51
Location: The sunny side of Alps

Request for all NoAI-AI authors and their AI's

Post by SirkoZ »

I would like to request all NoAI AI authors to build in their AI's a switch or a hard coded rule so AI's do not compete with player's company at industries (only industries, not towns) with more than 60% transported.

Such was also a hard coded rule in the good old TTD-like AI (which has long been thrown out from 0.7.0/trunk releases).

So far none of the AI's have this implemented (from what I know) so buying land around player-serviced industries is necessary if one doesn't want the AI's to come in and unnecessarily lower one's percent_transported because that is mainly what they do with their "competition".

An extreme example is if you load multiple Admiral AI's - they will all service one mine/industry, thusly lowering even their chances of industry increase...I know though that Admiral AI is not yet programmed to properly compete against itself.

I think such a rule/option is fair and balanced.
Rubidium
OpenTTD Developer
OpenTTD Developer
Posts: 3815
Joined: 09 Feb 2006 19:15

Re: Request for all NoAI-AI authors and their AI's

Post by Rubidium »

So "competitors" aren't allowed to compete for resources? Isn't the competing a major part in being a competitor?

If you want an AI that doesn't "steal" your cargo you should take a look at the TownAI and WrightAI.

Finally, because TTD behaves in a way doesn't mean we must at all cost implement that exact same behaviour. If you really like the behaviour of TTD and do not like OpenTTD's behaviour the best solution would be to play TTD and not TTDPatch as it changes TTD's behaviour on at least the Windows NT based Windowses.
User avatar
belugas
OpenTTD Developer
OpenTTD Developer
Posts: 1507
Joined: 05 Apr 2005 01:48
Location: Deep down the deepest blue
Contact:

Re: Request for all NoAI-AI authors and their AI's

Post by belugas »

SirkoZ wrote:I would like to request all NoAI AI authors to build in their AI's a switch or a hard coded rule so AI's do not compete with player's company at industries (only industries, not towns) with more than 60% transported.
I think it's against the nature of NoAI to impose such a limit to any writer. The goal is to make good AI, worth the challenge. If you remove an ability, you need to add one. Imposing artificial limits based on "Good-Old-Time" does not seems to be logic at all. Plus, it might give the impression you fear a good competition ;)
SirkoZ wrote:Such was also a hard coded rule in the good old TTD-like AI (which has long been thrown out from 0.7.0/trunk releases).
1) It has not been thrown out. It has been replaced.
2) It was not the Good Old AI, it was already a new engine
3) It was not THAT long a go that the change has been performed.

But I guess Rubidium explained it all much better than I did
If you are not ready to work a bit for your ideas, it means they don't count much for you.
OpenTTD and Realism? Well... Here are a few thoughs on the matter.
He he he he
------------------------------------------------------------
Music from the Bloody Time Zones
User avatar
Bilbo
Tycoon
Tycoon
Posts: 1710
Joined: 06 Jun 2007 21:07
Location: Czech Republic

Re: Request for all NoAI-AI authors and their AI's

Post by Bilbo »

SirkoZ wrote:I would like to request all NoAI AI authors to build in their AI's a switch or a hard coded rule so AI's do not compete with player's company at industries (only industries, not towns) with more than 60% transported.

I think such a rule/option is fair and balanced.
That would be complicated due to FS#2776 - AI can't see opponents stations and vehicles, but since the GetLastMonthProduction+GetLastMonthTransported only tell how much have been transported, AI can't tell whether it was transported by single company (and then there are chances to get some share of the cargo) or by many companies (and then chances of getting some decent share of industry output are rather low)

Also, AI's can't tell whether other companies are controlled by AI or a human (though that is usually not necessary to know, just treat all opponents equally ...).

In my AI I am going with assumption that if AI have to compete with N other competitors, it will get 1/N of industry production, therefore it will prefer industry with 300 tons/month before competing for industry with 550 tons/month already serviced by 1 other company. (well, not only the output matters, but also distance to drop point, etc ....)

But if there is 1 industry with 1000 tons/month serviced to 80% by 1 player and second best is 200 tons/month ... my AI will select to compete for goods (on default settings).

I personally have few switches in AI that I am developing, the AI can either be friendly (avoid servicing same industries as any opponents), competitive (service opponents industries if AI estimates it will be more profitable than servicing any unserviced industry, i.e. maximize expected profit) or even aggresive (slightly prefer competing for goods) or hostile (be aggresive and don't be shy to use "dirty" tricks like buying exclusive rights in the process).

So there would be chance for my AI to be set as "friendly", but I am not going to use hardcoded constant like "60% production transported" in the decision process. ("friendly" AI will simply strongly prefer connecting only unserviced industries and therefore it will start competing only once there are no unserviced industries/towns available on the map.)

My defaults are easy=friendly, medium=competitive and hard=aggresive.
SirkoZ wrote: An extreme example is if you load multiple Admiral AI's - they will all service one mine/industry, thusly lowering even their chances of industry increase...I know though that Admiral AI is not yet programmed to properly compete against itself.
Also, the fact that industry is serviced is seen with some delay (Fixing FS#2776 may give AI's better chance to see if and with how many companies is the industry serviced), so perhaps those 4 Admiral AI's see same "best" unserviced industry and start building around it ....

I'll have to definitely add some randomization to my AI - never choose "the single best", but pick few best options and then randomly choose amongst them - with "the best" having somewhat higher chance.
SirkoZ wrote: So far none of the AI's have this implemented (from what I know) so buying land around player-serviced industries is necessary if one doesn't want the AI's to come in and unnecessarily lower one's percent_transported because that is mainly what they do with their "competition".
If people does not want AI's to service their industries, they should not use AI's and play alone. Competition is competition. As for the industry blocking - I think I'll add this behavior to the "hostile" level of my AI :)
If you need something, do it yourself or it will be never done.

My patches: Extra large maps (1048576 high, 1048576 wide) (FS#1059), Vehicle + Town + Industry console commands (FS#1060), few minor patches (FS#2820, FS#1521, FS#2837, FS#2843), AI debugging facility

Other: Very large ships NewGRF, Bilbo's multiplayer patch pack v5 (for OpenTTD 0.7.3)
User avatar
AndersI
Tycoon
Tycoon
Posts: 1732
Joined: 19 Apr 2004 20:09
Location: Sweden
Contact:

Re: Request for all NoAI-AI authors and their AI's

Post by AndersI »

SirkoZ wrote:I would like to request all NoAI AI authors to build in their AI's a switch or a hard coded rule so AI's do not compete with player's company at industries (only industries, not towns) with more than 60% transported.
Will you also promise not to ever compete with an AI that have more than 60% of the transports from an industry? I thought the whole point (at least one of them) with NoAI was that AI:s and humans compete on equal ground - no artificial bonuses for the AI:s (or the humans).
User avatar
Zutty
Director
Director
Posts: 565
Joined: 22 Jan 2008 16:33

Re: Request for all NoAI-AI authors and their AI's

Post by Zutty »

Yeah OK...
pz_sirkoz.png
pz_sirkoz.png (41.51 KiB) Viewed 3497 times
;)

No, seriously I will put this in as I like the idea of making my AI configurable. I'll have some kind of variable aggression/competetiveness level. I'll credit you with the idea! :P
PathZilla - A networking AI - Now with tram support.
User avatar
Xander
Route Supervisor
Route Supervisor
Posts: 485
Joined: 18 May 2007 12:47
Location: Oxford
Contact:

Re: Request for all NoAI-AI authors and their AI's

Post by Xander »

I'm sorry - but this is one of the dumbest requests I've seen on these forums. If you don't want competion, don't play with competitors! If you want to "defeat" an opponent in TT, you have to dominate their network with your own. This promotes efficent and effective networks, capable of ferrying cargo faster and more frequently than your competitors. Indeed, the most effective and fun AI will target industries over 60% that it is not involved in simply because it's the best way to attack the player.
Real Tycoons do it on Trains!

JAMI: Just Another Moronic Intelligence
User avatar
Bilbo
Tycoon
Tycoon
Posts: 1710
Joined: 06 Jun 2007 21:07
Location: Czech Republic

Re: Request for all NoAI-AI authors and their AI's

Post by Bilbo »

Well, if the request is "AI's should have OPTION to be nice", then it is a reasonable request (I planned such option even before this request), but MUST ALWAYS? Nope :)

Also, when I looked at changelog of NoCAB, I noticed this:

-= 1.11 (r282) =-
....
* Now recognizes 'Disable * for AIs' settings and adheres to it.

I think we may put up some page with "Friendly AI guidelines". I put up wiki page at http://wiki.openttd.org/AI:Behavior - so maybe we can set up some recommendations to adhere to, so the AI could be considered a user-friendly AI.

Xander: In original TT you had many ways of sabotaging the AI (blocking it, blocking space around your industries, demolishing buildings to stop cargo aceptance, ramming their trucks with trains, removing town-owned roads to interrupt a route, buying exclusive rights if everythiong else fails, etc ... ). Perhaps it is time for AI's to strike back :) Though nobody would probably like playing with such aggresive AI.
If you need something, do it yourself or it will be never done.

My patches: Extra large maps (1048576 high, 1048576 wide) (FS#1059), Vehicle + Town + Industry console commands (FS#1060), few minor patches (FS#2820, FS#1521, FS#2837, FS#2843), AI debugging facility

Other: Very large ships NewGRF, Bilbo's multiplayer patch pack v5 (for OpenTTD 0.7.3)
User avatar
SirkoZ
Tycoon
Tycoon
Posts: 1518
Joined: 06 Mar 2004 23:51
Location: The sunny side of Alps

Re: Request for all NoAI-AI authors and their AI's

Post by SirkoZ »

Belugas - yes - the "good old AI" was thrown out - and I use these words because no NoAI replacement has been provided. I think that such replacement would be a much better example for players wanting to make their AI's than that WrightAI that quits as quickly as it stubles upon a pothole. :-)
Jokes aside - it's always nice to have a default AI that can manage all the means of transport already included into a release.
As much as this NoAI framework is good, there's not quite many "AI" authors and besides - it's taking quite long for people to make some good all-around AI's (so far only AdmiralAI is an example of such an effort) which perhaps is a sign that it's not so easy to make an "AI".

Now then - as I see it, I wasn't either simple or elaborate enough with my request.
As anyone knows, station ratings calculation for competing stations is awful/TTD-like and this results (if production is not high enough) that any new party that comes to get some cargo only loweres % transported for the others and gets minimal amount of cargo.

Again with a simple setting such as _do_not_compete_if_LAST_month_percent_transported_is_more_than_60% one can make a much more relaxing game with anyone getting their fair share. Of course a player can turn it off at any time.

Also look at it this way - TTD competitiors despite all the easy ways they can be sabotaged (as Bilbo pointed out) have it so that there is a way you can prevent their meddling with your affairs - so to speak. :-)

I'm looking forward to quality "AI"'s with such a setting.
Roujin
Tycoon
Tycoon
Posts: 1884
Joined: 08 Apr 2007 04:07

Re: Request for all NoAI-AI authors and their AI's

Post by Roujin »

SirkoZ wrote:Belugas - yes - the "good old AI" was thrown out - and I use these words because no NoAI replacement has been provided. I think that such replacement would be a much better example for players wanting to make their AI's than that WrightAI that quits as quickly as it stubles upon a pothole. :-)[...]
Would you want this AI to cheat, or not? If yes, it would kind of violate the goal of NoAI to give the player fair opponents that don't use cheats. If no (and otherwise left the same as the "original" AI), I'd guess it would quit as fast as WrightAI because it fails building any stations due to horrible town ratings after massive terraforming, and runs out of money.
* @Belugas wonders what is worst... a mom or a wife...
<Lakie> Well, they do the same thing but the code is different.

______________
My patches
check my wiki page (sticky button) for a complete list

ImageImage
ImageImageImageImageImageImageImage
User avatar
Bilbo
Tycoon
Tycoon
Posts: 1710
Joined: 06 Jun 2007 21:07
Location: Czech Republic

Re: Request for all NoAI-AI authors and their AI's

Post by Bilbo »

Well, WrightAI is very simple, it does no terraforming at all when attempting to place an airport dso even single small hump at the desired spot will cause it to fail. Adn hilly terrain? No chance.

I'd consider WrightAI more like example of AI to base on, not useful AI to play with (though at ideal conditions (very flat terrain) it can perform quite well)
If you need something, do it yourself or it will be never done.

My patches: Extra large maps (1048576 high, 1048576 wide) (FS#1059), Vehicle + Town + Industry console commands (FS#1060), few minor patches (FS#2820, FS#1521, FS#2837, FS#2843), AI debugging facility

Other: Very large ships NewGRF, Bilbo's multiplayer patch pack v5 (for OpenTTD 0.7.3)
Yexo
Tycoon
Tycoon
Posts: 3663
Joined: 20 Dec 2007 12:49

Re: Request for all NoAI-AI authors and their AI's

Post by Yexo »

Bilbo wrote:Well, WrightAI is very simple, it does no terraforming at all when attempting to place an airport dso even single small hump at the desired spot will cause it to fail. Adn hilly terrain? No chance.

I'd consider WrightAI more like example of AI to base on, not useful AI to play with (though at ideal conditions (very flat terrain) it can perform quite well)
And that's exactly what WrightAI is, an example for AI writers. Nothing more, nothing less. That's also the reason it isn't available for download in 0.7.x via the ingame content download system: to prevent bug reports about a failing AI.
User avatar
Bilbo
Tycoon
Tycoon
Posts: 1710
Joined: 06 Jun 2007 21:07
Location: Czech Republic

Re: Request for all NoAI-AI authors and their AI's

Post by Bilbo »

Yexo wrote:
Bilbo wrote:Well, WrightAI is very simple, it does no terraforming at all when attempting to place an airport dso even single small hump at the desired spot will cause it to fail. And hilly terrain? No chance.

I'd consider WrightAI more like example of AI to base on, not useful AI to play with (though at ideal conditions (very flat terrain) it can perform quite well)
And that's exactly what WrightAI is, an example for AI writers. Nothing more, nothing less. That's also the reason it isn't available for download in 0.7.x via the ingame content download system: to prevent bug reports about a failing AI.
It isn't? But I've downloaded it via that ingame content download ....
Oh, it was there but it is not present anymore.

I think relatively small change (try to terraform desired spot and perhaps maybe handle the noise levels so it won't attempt to build intercontinental airport near smallish cities) would make the AI useful (at least unless the terrain is really mountainous....), so maybe we'll see it there again in time :)
If you need something, do it yourself or it will be never done.

My patches: Extra large maps (1048576 high, 1048576 wide) (FS#1059), Vehicle + Town + Industry console commands (FS#1060), few minor patches (FS#2820, FS#1521, FS#2837, FS#2843), AI debugging facility

Other: Very large ships NewGRF, Bilbo's multiplayer patch pack v5 (for OpenTTD 0.7.3)
User avatar
Xander
Route Supervisor
Route Supervisor
Posts: 485
Joined: 18 May 2007 12:47
Location: Oxford
Contact:

Re: Request for all NoAI-AI authors and their AI's

Post by Xander »

You will - but WrightAI is just a shell, as stated above it's a demo to learn how AI's work. You see that functionality in the AI's being built up by the AI devs :)

Would I be right in assuming that once the AI's have matured some will start to make it into trunk?
Real Tycoons do it on Trains!

JAMI: Just Another Moronic Intelligence
User avatar
Bilbo
Tycoon
Tycoon
Posts: 1710
Joined: 06 Jun 2007 21:07
Location: Czech Republic

Re: Request for all NoAI-AI authors and their AI's

Post by Bilbo »

Xander wrote:Would I be right in assuming that once the AI's have matured some will start to make it into trunk?
Well, I am not one of the devs, but I doubt it. AI development is quite independent on OpenTTD development (except perhaps AI X requiring Openttd version at least Y, due to some features being added to NoAI API ....) and I don't think any AI author would want to "bind" some version of their AI with specific version of trunk. And there is not much of "official" AI code (WrightAI is rather a proof of concept) to put up some usable AI. I think that current situation with AI's on bananas is quite fine....

Even the "standard generic trams" have not made it to the trunk (and I expected them to make it there sooner or later), though they can be easily downloaded through bananas, so it is not much of an issue.
If you need something, do it yourself or it will be never done.

My patches: Extra large maps (1048576 high, 1048576 wide) (FS#1059), Vehicle + Town + Industry console commands (FS#1060), few minor patches (FS#2820, FS#1521, FS#2837, FS#2843), AI debugging facility

Other: Very large ships NewGRF, Bilbo's multiplayer patch pack v5 (for OpenTTD 0.7.3)
User avatar
SirkoZ
Tycoon
Tycoon
Posts: 1518
Joined: 06 Mar 2004 23:51
Location: The sunny side of Alps

Re: Request for all NoAI-AI authors and their AI's

Post by SirkoZ »

Roujin wrote:
SirkoZ wrote:Belugas - yes - the "good old AI" was thrown out - and I use these words because no NoAI replacement has been provided. I think that such replacement would be a much better example for players wanting to make their AI's than that WrightAI that quits as quickly as it stubles upon a pothole. :-)[...]
Would you want this AI to cheat, or not? If yes, it would kind of violate the goal of NoAI to give the player fair opponents that don't use cheats. If no (and otherwise left the same as the "original" AI), I'd guess it would quit as fast as WrightAI because it fails building any stations due to horrible town ratings after massive terraforming, and runs out of money.
Oh my - I totally forgot - I guess I was so used to the "free" terraform for that old AI, sorry... :lol: :oops:
Post Reply

Return to “OpenTTD AIs and Game Scripts”

Who is online

Users browsing this forum: No registered users and 4 guests