Commit Graph

45 Commits

Author SHA1 Message Date
yexo b71de3a377 (svn r17233) -Fix (r17232): typo 2009-08-20 11:02:35 +00:00
yexo 8839bdbefd (svn r17232) -Fix (r17223): Kill an AI when it tries to Sleep / execute a DoCommand during Save() instead of failing to save 2009-08-20 10:58:22 +00:00
yexo 0cb004e1d2 (svn r17231) -Fix [FS#3134]: AIs that crashed during Save() weren't killed as they should 2009-08-20 10:45:57 +00:00
yexo 14b5862c22 (svn r17230) -Fix (r15027): don't assert when an AI uses AI*Mode objects incorrectly but crash the AI instead 2009-08-20 10:39:39 +00:00
yexo a4afa140f3 (svn r17223) -Change [NoAI] [FS#2980]: Crash an AI when it uses a DoCommand / Sleep instead of just printing an error message in the AI Debug Window 2009-08-19 16:14:15 +00:00
yexo 67106dc063 (svn r17214) -Add [NoAI]: GetAPIVersion() as optional function in info.nut. Return "0.7" to get an api compatible (as much as possible) with the 0.7 api or "0.8" to get the latest api.
-Change [NoAI]: move all deprecated functions to a separate squirrel script that is only loaded if an AI requests an old API version.
2009-08-18 18:51:42 +00:00
yexo 5d0ae8ad47 (svn r17125) -Cleanup: remove an unused variable 2009-08-08 22:09:53 +00:00
rubidium 1fe3ad3288 (svn r17075) -Codechange: rename ~750 strings to be more uniform with their relatives 2009-08-05 17:59:21 +00:00
yexo 8c2709d97f (svn r17043) -Change [NoAI]: Load the API before compiling an AI script so AIs can subclass API classes and use API constants as part of their own constants 2009-08-02 18:26:32 +00:00
yexo 8c05194c02 (svn r17011) -Change [NoAI]: Add AIBaseStation as a parentclass for AIStation and AIWaypoint, and move GetName, SetName and GetLocation to AIBaseStation
Remove (nearly) all references to WaypointID and replace them with StationID
2009-07-31 22:30:54 +00:00
yexo f085d7775b (svn r16834) -Fix [FS#3034]: call the AI Save() function only once so AIs can't crash OpenTTD 2009-07-15 19:47:06 +00:00
yexo d09d3566dd (svn r16585) -Add [NoAI]: AIBuoyList to get a list of all buoys 2009-06-17 13:12:08 +00:00
smatz bea3fe2b8b (svn r16559) -Codechange: introduce Company::IsValidAiID() and Company::IsValidHumanID(), don't use IsHumanCompany() where possible 2009-06-10 22:05:01 +00:00
smatz 83e2df5b72 (svn r16556) -Codechange [NoAI]: use accessor for AIInstance::is_dead 2009-06-10 19:23:25 +00:00
yexo 7425bf779d (svn r16425) -Change [FS#2869]: Stop an AI when it takes too long to initialize or load 2009-05-25 21:55:47 +00:00
yexo 0b243d25cb (svn r16400) -Add [NoAI]: add AISignList that can be used to get a list of valid signs. This makes AISign::GetMaxSignID obsolete. 2009-05-23 14:54:55 +00:00
smatz 871107f529 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 2009-05-17 01:00:56 +00:00
smatz 6221d74644 (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 2009-05-16 23:34:14 +00:00
yexo bc8f31da4e (svn r16174) -Fix (r16093) [FS#2863]: crash when starting a game/loading a game with no AIs available. 2009-04-26 19:30:31 +00:00
rubidium d8bc98d5de (svn r16149) -Fix [FS#2860]: when there's no AI and an AI is started... *boom* 2009-04-25 22:40:24 +00:00
yexo a91ff2d5e8 (svn r16093) -Feature [FS#2808]: Add GetURL() as possible function to info.nut. If AIs implement it, that url is shown when the AI crashes and also in the AI selection window. 2009-04-19 15:14:23 +00:00
yexo d2dae07595 (svn r15774) -Fix (r15708): Don't show the message about reporting an AI crash for the dummy AI. 2009-03-19 23:38:51 +00:00
yexo 2e6e2457f1 (svn r15708) -Feature [FS#2728]: Pop up the AI Debug Window if one of the AIs crashed and show a message that the user should report the crash. 2009-03-14 01:32:04 +00:00
yexo 13fb01d07d (svn r15668) -Fix: a few typos. 2009-03-11 07:32:31 +00:00
yexo ffe2caf20f (svn r15614) -Add [NoAI]: AIVehicleList_Group(group_id) and AIVehicleList_DefaultGroup(vehicle_type). 2009-03-04 22:37:25 +00:00
glx ab3fc1d437 (svn r15535) -Fix (r15460, pre noai merge): use '.' as 'any' for squirrel calls typechecking as stated in squirrel docs 2009-02-21 00:43:18 +00:00
yexo 07a37af14c (svn r15530) -Fix (r15519): The AIWaypoint classes were not exported to squirrel. 2009-02-20 10:03:16 +00:00
yexo c0e7ddeb9e (svn r15519) -Add [NoAI]: support for waypoints by adding AIRail::Build/Remove RailWaypoint, AIWaypoint and AIWaypointList. 2009-02-19 07:40:08 +00:00
yexo 8e14d77d05 (svn r15467) -Fix [NoAI]: AIs with an error in their info.nut are no longer available in-game. 2009-02-13 17:17:34 +00:00
yexo 1eeb0f6748 (svn r15440) -Fix: Backup AIObject::GetAllowDoCommand and restore the old value so AIs can't work around it. 2009-02-10 19:22:09 +00:00
frosch cb049e4e58 (svn r15359) -Add [NoAI]: AIEventVehicleCrashed::CRASH_RV_UFO, AIEventDisasterZeppelinerCrashed and AIEventDisasterZeppelinerCleared as aliens accepted NoAIs as competing life-form. 2009-02-05 17:38:47 +00:00
frosch 7f198507f7 (svn r15358) -Add [NoAI]: AIEventVehicleCrashed::GetCrashReason() 2009-02-05 17:28:37 +00:00
rubidium 1c30c8c801 (svn r15330) -Fix [FS#2597]: leaking of Squirrel when using circular references (by enabling the GC). 2009-02-03 22:42:42 +00:00
Yexo 101f55e65c (svn r15328) -Fix (r15327): Load(data, version) was called instead of Load(version, data). 2009-02-03 21:05:32 +00:00
Yexo 1892c34ac6 (svn r15327) -Fix (r15027): AIs could access the map and other data in their constructor and Load() function while the savegame was not completely loaded. 2009-02-03 20:49:08 +00:00
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 2009-01-31 20:16:06 +00:00
Yexo ea01534e6d (svn r15284) -Fix [FS#2582] (r15045): Parameters were popped from the squirrel stack twice. 2009-01-27 13:11:11 +00:00
glx 062f32a186 (svn r15270) -Change [API CHANGE]: remove AIEventTest 2009-01-25 19:06:00 +00:00
peter1138 dba9d60d3a (svn r15133) -Fix: Crash if no NoAIs are present. 2009-01-17 22:22:53 +00:00
truebrain 4bc7afae41 (svn r15124) -Fix: last memory leak related to NoAI 2009-01-17 15:38:37 +00:00
truebrain 94dd36d1ec (svn r15101) -Change [API CHANGE]: more consistant naming for consts:
INVALID_TOWN_RATING        -> TOWN_RATING_INVALID
   INVALID_TRANSPORT          -> TRANSPORT_INVALID
   INVALID_ORDER              -> ORDER_INVALID
   INVALID_GROUP              -> GROUP_INVALID
   GROUP_ALL/DEFAULT          -> ALL/DEFAULT_GROUP
   VEHICLE_RAIL/ROAD/..       -> VT_RAIL/ROAD/..
   MY_COMPANY                 -> COMPANY_SELF
   FIRST/LAST/INVALID_COMPANY -> COMPANY_FIRST/LAST/INVALID
2009-01-16 00:05:26 +00:00
truebrain 5119132dda (svn r15100) -Add [NoAI]: introduce TILE_INVALID as const 2009-01-15 21:20:12 +00:00
truebrain ef62688522 (svn r15095) -Add [NoAI]: allow AI Libraries to be in .tar files (subdir required, as with AIs
-Add [NoAI]: allow multiple versions of the same AI co-exist
-Change [NoAI]: updated the whole method of AI (Library) finding and loading; it is now much more clear and transparent
-Change [NoAI]: the name of the AI is now the name used by CreateInstance()
-Change [NoAI]: make the AI finder a bit more clever, mostly related to version finding
2009-01-15 18:15:12 +00:00
truebrain bcbbf2c366 (svn r15045) -Add [NoAI API CHANGE]: in info.nut you can now have (optional) a CanLoadFromVersion(version), which should return true/false, to indicate if you can load a savegame made with your AI of version 'version'
-Add [NoAI API CHANGE]: in main.nut the Load() function now should be Load(version, data), where 'version' is the version of your AI which made the savegame
-Codechange [NoAI]: various of function renames to make things more sane
-Add [NoAI]: push the 'version' of the AI through various of layers
-Codechange [NoAI]: various of code cleanups
-Add [NoAI]: store the version of the AI in the savegame too
2009-01-13 01:46:46 +00:00
truebrain a3dd7506d3 (svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
NoAI is an API (a framework) to build your own AIs in. See:
   http://wiki.openttd.org/wiki/index.php/AI:Main_Page
 With many thanks to:
  - glx and Rubidium for their syncing, feedback and hard work
  - Yexo for his feedback, patches, and AIs which tested the system very deep
  - Morloth for his feedback and patches
  - TJIP for hosting a challenge which kept NoAI on track
  - All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
2009-01-12 17:11:45 +00:00