0.7.1 (2009-06-09) ------------------------------------------------------------------------ - Fix: When finding duplicate graphics sets favour the more complete one (r16538) - Fix: [Squirrel] Crash that occured when an AI was halted while one or more generators were still in a 'running' state [FS#2942] (r16534) - Fix: [Squirrel] Do not copy an object when we just checked that the pointer to it is NULL (r16532) - Fix: Notify small UFOs on deletion of road vehicles, so they can head for somewhere else instead of stumbling over a ghost (r16525) - Fix: [NoAI] StationIDs from oilrigs were not considered valid by the API (r16529) - Fix: Draw PBS reservation as groundsprite resp. childsprite of foundation/bridgehead [FS#2959] (r16528) - Fix: Missing guards in the NoAI API making it possible to hit an assert in OpenTTD [FS#2963] (r16524) - Fix: [NoAI] Possible assert in AI debug window when an AI was stopped and a human company took its CompanyID [FS#2962] (r16522) - Fix: [NoAI] Make sure AIBridge::BuildBridge returns what the documentation says it does (r16520) 0.7.1-RC3 (2009-06-03) ------------------------------------------------------------------------ - Add: [NoAI] AISignList that can be used to get a list of valid signs (r16400) - Change: [NoAI] Stop an AI when it takes too long to initialize or load [FS#2869] (r16425) - Fix: Base graphics names must be unique, so do not add duplicates (r16503) - Fix: [NoAI] When an AI was suspended while in a function called (indirectly) via call/acall/pcall OpenTTD crashed. Fix this by disallowing AIs to be suspended while called via call/acall/pcall [FS#2935] (r16502) - Fix: [NewGRF] Invalidate NewGRF variable caches of more vehicles in more places. Esp. they were only invalidated for trains (r16480) - Fix: [NewGRF] Call callbacks after initialisation of vehicle variables (r16479) - Fix: [NewGRF] Determining most common (sub-)cargo-type was broken due to someone confusing similiary named variables (r16478) - Fix: Loading indicator when 'unload' in and 'no loading' is off was pointing in the wrong direction [FS#2936] (r16477) - Fix: Track reservation was drawn at bridge heads in the menu (r16470) - Fix: [NoAI] Another try/catch related bug (r16454) - Fix: Road vehicles ending up on the pavement when they are in a drive through station that got removed due to bankruptcy [FS#2909] (r16448) - Fix: [NoAI] AIRail::GetRailStationDirection returned incorrect information (r16440) - Fix: Crash when a company is deleted while a dropdown with company names is open (r16430) - Fix: Do not allow content download via the console when there is no zlib as it is done for the GUI already [FS#2919] (r16420) - Fix: Some 64bit architectures require size_t to be aligned at 8-byte boundary, ensure it for MemBlock (r16415) - Fix: [NewGRF] Disable multitile houses with non-zero population on additional tiles as they cause desyncs and because the specs do not allow that either (r16383) - Fix: [NewGRF] Valid UTF-8 sequences between 0x20 and 0xFF should be allowed as is instead of being treated as control codes (r16374) - Fix: [NewGRF] Use a valid StringID as fall-back when undefined generic NewGRF strings of vehicles are requested (r16366) 0.7.1-RC2 (2009-05-21) ------------------------------------------------------------------------ - Fix: The previously selected NewGRF station type was still remembered after switching to a different game without newstations enabled, preventing stations from being built (r16363) - Fix: Pointer incremented with wrong count (r16361) - Fix: Delete invalid depots in TTD savegames caused by improper SVXConverter conversions (r16357) - Fix: Invalid read when OTTD savegame contains VEH_INVALID (r16353) - Fix: Signal handler could end in endless loop (r16351) - Fix: [NewGRF] When overriding 'original sounds', only allow overriding of the 'original sounds' and not any other that is already loaded (r16339) - Fix: Desyncs when removing lots of stations/towns (r16329, r16328) - Fix: Desyncs due to the fact that depot searching with a maximum search depth simply does not work with YAPF's caches [FS#2900] (r16323) - Fix: Trains could get stuck in a depot when they wanted to go to the same depot again [FS#2873] (r16322) - Fix: In the scenario editor change the (starting) game year of the scenario, not the (starting) game year for new games/scenarios (r16321) - Fix: Loading of savegames created in revision between 0.3.5 and 0.3.6 caused crash (r16320) - Fix: [NoAI] Set the autorenew settings for new AI companies to the default values, not to 0 or the local settings (r16316) - Fix: [NewGRF] Allow accessing the house age when the house is not yet built (r16314) - Fix: (Get|Set)TrackBits() is only valid for RAIL_TILE_NORMAL and _SIGNALS (r16311) - Fix: Parameter is invalid when it is equal to length of an array (r16308) - Fix: Close all windows before unloading the AI system as closing the content-download window will rescan for AIs [FS#2901] (r16306) - Fix: ICC (Intel C++ Compiler) defined __GNUC__ but does not define __builtin_bswap32, so fall back to the default swap method for ICC (r16295) - Fix: Road vehicles were unable to find a depot when turning around (in some cases), causing 'nearest depot' orders to be occasionally lost [FS#2893] (r16291 - Fix: Unable to (re)set the desert state for watery tiles [FS#2888] (r16290) - Fix: Possible (in theory) desync related to autorenew settings (r16287) - Fix: Crash after using the 'Reset landscape' function and remove all waypoint signs and buoys after resetting landscape (r16280) - Fix: [NewGRF] Disable multitile houses for which the NewGRF does not define proper additional tiles (r16274) 0.7.1-RC1 (2009-05-11) ------------------------------------------------------------------------ - Add: [NoAI] AIController::GetVersion, this returns the version of OpenTTD in the same way as for NewGRFs (r16253) - Add: [NoAI] AIAirport::GetPrice, returning the building cost of an airport (r16252) - Add: [NoAI] Two new error codes to AITile: ERR_AREA_ALREADY_FLAT and ERR_EXCAVATION_WOULD_DAMAGE (r16171) - Add: [NoAI] AITile::Get(Min|Max|Corner)Height (r16166) - Add: [NoAI] Several functions to AIOrder to check the what kind of order an order is [FS#2801] (r16165) - Add: [NoAI] UseAsRandomAI as function in info.nut. When an AI returns false, it will never be chosen as random AI (r16113) - Add: [NoAI] AIOF_STOP_IN_DEPOT to the orderflags in AIOrder to allow stop-in-depot orders (r16107) - Add: [NoAI] 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 [FS#2808] (r16093) - Change: [NoAI] Reverse the order of the lines in the AI debug window [FS#2778] (r16091) - Change: Harden string copying on places where it is possible (r16024) - Change: Use recent Czech language for plural form (r15965) - Fix: Wrong number of parameters or wrong parameter types sent to printf-like functions at several places (r16269) - Fix: [NewGRF] When callback 2E returns an amount of 0, do not transport 1 unit to the station (r16268) - Fix: [NoAI] Various documentation omissions with respect to IDs of various objects and corners for AITile::(Raise|Lower)Tile (r16267, r16266) - Fix: [NoAI] Check slopes passed to the API better for validity (r16264, r16262) - Fix: [NewGRF] Interpret setting bridge property 08 to 0 as always available (r16263) - Fix: [NoAI] Enable parameter checking for AIController::* functions again (r16249) - Fix: [NoAI] Make sure AITunnel::BuildTunnel returns what the documentation says it does (r16244) - Fix: [NoAI] CmdBuildTunnel could be called with invalid parameters from the API code, causing crashes later [FS#2875] (r16243) - Fix: Improve corner case order handling: mark order as done only when actually done, obey non-stop orders, do only stop/refit at the depot in the order (r16240, r16228, r16199, r16198, r16187) - Fix: [NoAI] Use the stop/non-stop intermediate orderflags AIs can give for goto-depot orders (r16239) - Fix: [NewGRF] ActionB should use the online parameters from GRFFile instead of the initial user-specified values from GRFConfig. Also use the values as they were set when the ActionB was executed, not as they are set when the message is shown (r16223) - Fix: Possible crashes when quiting OpenTTD or forcing resizes/redraws of the screen during map generation [FS#2862] (r16220) - Fix: Shared orders without orders were not properly converted causing corrupt/invalid orders when loading pre 0.7 savegames [FS#2878] (r16214) - Fix: Hardcoded (old sized) MAX_COMPANIES constant (r16182) - Fix: [Squirrel] The traps variable was not restored, causing try/catch blocks to be 'forgotten' during a suspend (r16181) - Fix: Do not try to reserve path for trains crashed in station [FS#2866] (r16178) - Fix: Forbid joining AI companies via the 'move' and 'join' console commands/multiplayer lobby (r16176, r16175) - Fix: [NoAI] AIOrder::GetOrderDestination and AIOrder::GetOrderFlags did not work on ORDER_CURRENT when the vehicle was loading/leaving in a station (r16165) - Fix: [NoAI] Change WAYPOINT_INVALID to 0xFFFF from -1 as that is the value the AIs got (due to casting) (r16150) - Fix: The overflowsafe type did not like dividing by int64 larger than MAX_INT32 causing division by negative numbers and small anomolies when drawing graphs [FS#2855] (r16130) - Fix: Road was removed when both the Remove button was active and Ctrl was pressed [FS#2582] (r16119) - Fix: [NoAI] Make sure AIOrder::GetDestination always returns a tile belonging to the station (16109) - Fix: [NoAI] When giving an aircraft a goto-hangar order do not let it be a normal goto-station order (r16108) - Fix: [NoAI] AIOrder::SetOrderFlags always removed "Service if needed" from goto-depot orders (r16106) - Fix: Connect tried to validate too much of the company ID with too little information on hand [FS#2849] (r16096) - Fix: [NoAI] AIDebug window profiled the blitters by invalidating itself unconditionally on repaint. On the other hand it was not invalidated in other cases when needed (r16094) - Fix: The language is called Slovak, not Slovakish (r16090) - Fix: Insanely fast trains would not stop in time for stations/'jump' over waypoints/via stations within a tick, which would cause the order not to be processed causing the train to go in loops until (with luck) it 'hit' the tile [FS#2824] (r16079) - Fix: Content download progress bar 'resetting' due to mathematical overflow [FS#2845] (r16071) - Fix: Memory leak when querying a server multiple times (r16064) - Fix: [NoAI] MOF_COND_DESTINATION was not accepted by CmdModifyOrder() (r16063) - Fix: Non advanced vehicle list did not handle company switching correctly (r16054) - Fix: Do not warn that crashed vehicles are getting old; upgrading them is impossible [FS#2740] (r16048) - Fix: The currency abbreviation for the Romanian Leu is now RON [FS#774] (r16041) - Fix: Dash was not able to run iconv detection (r16035) - Fix: [NewGRF] Do not give "... Mines" as name to the station of oil rigs, or more general: do not add "... Mines" when the all of the cargoes are part of the liquid, passenger or mail classes [FS#2785] (r16029) - Fix: Storing/loading some currencies failed due to inconsistent settings "tables" [FS#2826] (r16028) - Fix: Usage of uninitialised memory when trying to build a random new industry, but there are no industrytypes to choose from (i.e. all appearance probabilities are zero) (r16027) - Fix: "Build separate station" in the station picker would reuse deleted stations [FS#2818] (r16025) - Fix: 32 bpp sprites in tars would also be shown in the list of heightmaps [FS#2817] (r16023) - Fix: Sometimes the unregister "query" thread could be delayed so much that the network stuff was already closed and the packet would never reach the master server causing the server to appear online longer than necessary (r16022) - Fix: Chance16() did not work for b = 1. Also transform the formula to not use divisions (r16006) - Fix: Inconsistency between using NETWORK_NAME_LENGTH and NETWORK_CLIENT_NAME_LENGTH for the length of client names (r15988) - Fix: [NewGRF] Abort production callback after 0x10000 iterations and show a messagebox blaming the NewGRF [FS#2787] (r15958) - Fix: [NewGRF] Set callback_param1 (var 10) to 1 only when requested (r15957) - Fix: Tooltip of detailed ratings window button showed wrong message (r15943)