OtviAI (version 423)
Moderator: OpenTTD Developers
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
OtviAI (version 423)
This AI is part of a collection of test AI's written with the intention of training and improving our main AI: rondje (Rondje om de kerk, winner of the TJIP challenge 2008. See seperate post on that.).
OtviAI was previously a collection of a few testing AI's but it's now all merged into one code base.
What does it do?
- busses & trucks
- tram
- trains
- boats
- aircraft
It's mainly passenger and mail, but it will do the occasional cargo route. It's tested with various newgrf's like ECS, FIRS, 2CC etc.
During the challenge we had OtviAI and Convoy running against each other on a 512x512 temperate map for 10 years on a laptop in the background and OtviAI won this I had to start this head-to-head game as Truebrain didn't believe us when we said our test ai could beat Convoy
It would be nice to see how it's performing in the tournament here
All our code is released under GPL v2, we already made our profit by winning the TJIP challenge anyway
Comments and suggestions are always welcome, just post them here or use the email address provided in the README's in the tar files.
Changelog:
====
1.1: gpl v3 --> gpl v2, also in the files and repackaging now with directories included.
1.2: update for changes in API (new and improved: now WITH initialized roadtype)
1.3: update for all the latest greatest API changes; also fixes bug in distance boundaries for new routes.
1.4: change directory structure (no more '..' in paths) and change tar packaging again
282: change numbering to only subversion numbers (for bananas), merge subsidyAI into main ai
283: include svn number in info.nut file for bananas
310: update for new subsidy api calls
312: 1.0 API and fix the load() call
379: code restructure, trains, trams, newgrf support
383: bugfix release
395: eastern edition: got rid of this accidental easter egg (aka: bug)
396: doh-edition: remove temporary test code that prevented it from building anything for passengers and/or mail
397: blame it on the gf-edition: fix vehicle count calculation for very slow vehicles
398: fix double routes and mix up town-industry numbers
399: API 1.1 and a few bugfixes and tweaks
411: API 1.2; added boats and numerous tweaks and small changes
413: fixed the boats and various small improvements
414: mostly train improvements to better work with 2cc, nutracks and other newgrfs
415: fix industry filtering bug that popped up in tropical
418: aircraft support and loads of small fixes and tweaks
423: overdue bugs and API bump to 1.11
The AI can be find with the 'find online content' within OpenTTD and there's a downloadable copy attached to this post.
OtviAI was previously a collection of a few testing AI's but it's now all merged into one code base.
What does it do?
- busses & trucks
- tram
- trains
- boats
- aircraft
It's mainly passenger and mail, but it will do the occasional cargo route. It's tested with various newgrf's like ECS, FIRS, 2CC etc.
During the challenge we had OtviAI and Convoy running against each other on a 512x512 temperate map for 10 years on a laptop in the background and OtviAI won this I had to start this head-to-head game as Truebrain didn't believe us when we said our test ai could beat Convoy
It would be nice to see how it's performing in the tournament here
All our code is released under GPL v2, we already made our profit by winning the TJIP challenge anyway
Comments and suggestions are always welcome, just post them here or use the email address provided in the README's in the tar files.
Changelog:
====
1.1: gpl v3 --> gpl v2, also in the files and repackaging now with directories included.
1.2: update for changes in API (new and improved: now WITH initialized roadtype)
1.3: update for all the latest greatest API changes; also fixes bug in distance boundaries for new routes.
1.4: change directory structure (no more '..' in paths) and change tar packaging again
282: change numbering to only subversion numbers (for bananas), merge subsidyAI into main ai
283: include svn number in info.nut file for bananas
310: update for new subsidy api calls
312: 1.0 API and fix the load() call
379: code restructure, trains, trams, newgrf support
383: bugfix release
395: eastern edition: got rid of this accidental easter egg (aka: bug)
396: doh-edition: remove temporary test code that prevented it from building anything for passengers and/or mail
397: blame it on the gf-edition: fix vehicle count calculation for very slow vehicles
398: fix double routes and mix up town-industry numbers
399: API 1.1 and a few bugfixes and tweaks
411: API 1.2; added boats and numerous tweaks and small changes
413: fixed the boats and various small improvements
414: mostly train improvements to better work with 2cc, nutracks and other newgrfs
415: fix industry filtering bug that popped up in tropical
418: aircraft support and loads of small fixes and tweaks
423: overdue bugs and API bump to 1.11
The AI can be find with the 'find online content' within OpenTTD and there's a downloadable copy attached to this post.
- Attachments
-
- OtviAI.tar
- OtviAI version 423
- (350 KiB) Downloaded 324 times
Last edited by Maninthebox on 21 Apr 2021 13:28, edited 24 times in total.
Re: OtviAI
Nice, I don't have time to look at it now, but I'll do some testing later this week.
OpenTTD is released under GPL v2, so if you want your code to be reusable in an AI that gets included in OpenTTD, you might consider releasing it under GPL v2.Maninthebox wrote:All our code is released under GPL v3, we already made our profit by winning the TJIP challenge anyway
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Re: OtviAI
I sorta half realized that after posting (that realisation might have something to do with a certain mail from teammember michiel ). So:
:%s/GPL v3/GPL v2/g
I'll change the uploaded files in the start post soon
:%s/GPL v3/GPL v2/g
I'll change the uploaded files in the start post soon
Re: OtviAI
Eager to try it out, however, it doesn't show up when I type list_ai (yes, it's placed in the right folder along with other AI's that do show up). Have I missed something... Maybe it's a problem with the licence?? (just kidding )
Re: OtviAI
They f*** up packing the tar, like most people do They seem to think it is a good idea to omit 'dirs', while our system depends on it. Most linux 'tar's do this correct, but most GUI based ones don't ... It is silly, I know ..
Either way, here are the tars in their form which OpenTTD understands.
(removed files, as first post has now working files )
Either way, here are the tars in their form which OpenTTD understands.
(removed files, as first post has now working files )
The only thing necessary for the triumph of evil is for good men to do nothing.
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Re: OtviAI
I actually did use a linux tar, but I did a rather manual tarring with a find on *.nut to prevent packing all the subversion files in the tar, I'll try to remember to add the directories to it next time. Better yet... I'll make it a Makefile target Thanks for the retarring anyway
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Update
Changed the GPL version to version 2 (in the post, the COPYING and each and every source file). Also changed the way the tarballs are created: new: now WITH directory structure
Re: OtviAI (version 1.1 aka svn272)
I was going to try to compare some AI's but the latest NoAI binary doesn't load OtviAI (or the other ones in this thread).
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Re: OtviAI (version 1.1 aka svn272)
Hmmmm... I verified this with the lastest subversion version and it does fail to load the tarred version. I forgot to include the top level directory in the tarball. Adding this solves the problem of loading the tar, but leads to a new problem:
dbg: [misc] [squirrel] Failed to compile '%aitar%otviai/RoadFinder/../graph/AStar.nut'
dbg: [ai] [1] Your script made an error: cannot open the file
It almost looks like the tar loader can't handle '..' in filenames anymore?
Unpacking the tarball (I think winrar can do this for windows users) solves the problem for now.
dbg: [misc] [squirrel] Failed to compile '%aitar%otviai/RoadFinder/../graph/AStar.nut'
dbg: [ai] [1] Your script made an error: cannot open the file
It almost looks like the tar loader can't handle '..' in filenames anymore?
Unpacking the tarball (I think winrar can do this for windows users) solves the problem for now.
Re: OtviAI (version 1.1 aka svn272)
Tried it with some other AI's for a few years and there were some things I noticed:
- OtviAI builds drive-through stops for mail but only connects one side of it. This looks a bit awkward.
- Builds a lot of unnecessary road, if cities are already connected OtviAI 'often' builds extra road which isn't significantly faster. (Esthetics are important for me in an OpenTTD AI ).
Other than that, it's very active in connecting cities and that's very nice IMO!
- OtviAI builds drive-through stops for mail but only connects one side of it. This looks a bit awkward.
- Builds a lot of unnecessary road, if cities are already connected OtviAI 'often' builds extra road which isn't significantly faster. (Esthetics are important for me in an OpenTTD AI ).
Other than that, it's very active in connecting cities and that's very nice IMO!
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Re: OtviAI (version 1.2 aka svn274)
Updated all three AI's to reflect changes in road API. Tarballs are in the first post
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Re: OtviAI (version 1.3 aka svn277)
Updated OtviAI (others aren't updated yet) to reflect all the latest greatest API changes. Also fixes bug with too large boundaries on checking for new cities to connect after a few years.
Re: OtviAI (version 1.3 aka svn277)
So finally *.openttd.org came online again and I finnaly could download your AI from bananas. (hmm, man is stupid, I could just have downloaded it from here.. )
However I got some errors, see attached image. So I restarted OpenTTD incase it was a cacheproblem, but same result. Second thing I did was to unpack the tar file and move the tar-file out of searched path. This solved the errors. Third thing I tested was to make a tar using 7zip. Exactly the same way as I made my own tars and with my own tars. And with this tar I got the same problems as with the tar I downloaded from BaNaNaS.
However I got some errors, see attached image. So I restarted OpenTTD incase it was a cacheproblem, but same result. Second thing I did was to unpack the tar file and move the tar-file out of searched path. This solved the errors. Third thing I tested was to make a tar using 7zip. Exactly the same way as I made my own tars and with my own tars. And with this tar I got the same problems as with the tar I downloaded from BaNaNaS.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
Junctioneer (a traffic intersection simulator)
Re: OtviAI (version 1.3 aka svn277)
I have the same problem here, it is caused by this line in roadfinder.nut:
OpenTTD seems to fail on the "../" in that path, for now it can be circumvented by removing the require from roadfinder.nut and adding
to main .nut.
Just to be clear: using ".." in the path when your files are inside a tar is not and will not be supported by OpenTTD
Code: Select all
require("../graph/AStar.nut");
Code: Select all
require("graph/AStar.nut");
Just to be clear: using ".." in the path when your files are inside a tar is not and will not be supported by OpenTTD
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Re: OtviAI (version 1.4 aka svn280)
Tar and I are not on speaking terms anymore
Anyhow... changed directory structure to avoid having to use '..' in pathnames, also changed tar packaging again. New version available via online content system and in the first post (note: only OtviAI.tar is up to date at the moment, repackaging others as soon as main version is problem free ).
---
edit: '..' seems to be handled in the source code?
Anyhow... changed directory structure to avoid having to use '..' in pathnames, also changed tar packaging again. New version available via online content system and in the first post (note: only OtviAI.tar is up to date at the moment, repackaging others as soon as main version is problem free ).
---
edit: '..' seems to be handled in the source code?
Re: OtviAI (version 1.4 aka svn280)
Maninthebox: can you start using integer versions (ie not 1.3)? OpenTTD reads the version from info.nut as integer, so both 1.3 and 1.4 of OtviAI register to openttd as version 1, which might give problems with loading the correct version for savegames and such.
-
- Engineer
- Posts: 113
- Joined: 08 Aug 2008 11:35
- Contact:
Re: OtviAI (version 1.4 aka svn280)
Hmmm... guess I'll better stop the whole dual versioning then and just use the svn version. Now if only I could automagically put that number in my info.nut on the right spot... think I need to script something
- planetmaker
- OpenTTD Developer
- Posts: 9432
- Joined: 07 Nov 2007 22:44
- Location: Sol d
Re: OtviAI (version 1.4 aka svn280)
The AI died on me:
I'm playing with r15235 and OtviAI v1.4.
I'm playing with r15235 and OtviAI v1.4.
- Attachments
-
- error log for the AI
- AI Observer GmbH & Co KG, 1953-10-15.png (19.31 KiB) Viewed 34661 times
-
- AI Observer GmbH & Co KG, 1953-02-08.sav
- save of time when I noticed
- (1.19 MiB) Downloaded 659 times
-
- AI Observer GmbH & Co KG, 1948-11-19.sav
- (1.15 MiB) Downloaded 705 times
OpenTTD: manual | online content | translations | Wanted contributions and patches
#openttdcoop: blog | wiki | public server | DevZone | NewGRF web translator
DevZone - home of the free NewGRFs: OpenSFX | OpenMSX | OpenGFX | Swedish Rails | OpenGFX+ Trains|RV|Industries|Airports|Landscape | NML
Re: OtviAI (version 1.4 aka svn280)
AIEventVehicleCrash has been renamed to AIEventVehicleCrashed some time ago.
Re: OtviAI (version 1.4 aka svn280)
Drive through bus stops + full load orders = bad mix
Who is online
Users browsing this forum: No registered users and 10 guests