OpenTTD Changelog

What's new in OpenTTD 1.9.3

Oct 7, 2019
  • This release especially focuses on two issues hitting macOS users: Many have had really bad performance, with framerates below 10 on the title screen. The cause was identified to be colourspace conversions happening (big thanks to SoothedTau in issue #7644) and found a fix. There is a risk this causes incorrect colours, hopefully that’s an acceptable trade-off. Additionally, some misconfigured multiplayer servers have been sending out server names with invalid UTF-8 text, revealing a bug in text handling on macOS, causing crashes. This has also been fixed.
  • Apart from those two bugs, there are also some other improvements: UI scaling fixes, text fixes, file browser sorting, and it’s become a little easier to send vehicles to oil rigs and other water industries. For those playing city builder scenarios in particular, a certain playstyle was causing crashes when building road stops over one-way roads, this is also fixed.

New in OpenTTD 1.9.1 (May 13, 2019)

  • Fix #6564: Enforce types of arguments for station name strings (#7419)
  • Fix #7433: Don't use AirportSpec substitute if it's not enabled (#7435)
  • Fix #7447, #7466, #7476: Missing NewGRF strings due to Action 4 feature check skipping pseudo-feature 48 (#7449)
  • Fix #6222: Advanced sprite layout sometimes showed incorrect railtype ground tile. (#7460)
  • Fix #7439: CompanyRemoveReason overwritten by ClientID (#7465)
  • Fix: [Windows] Incorrect error handling could lead to cascading error windows (#7482)
  • Fix #7478: Don't remove NewGRF objects on company take-over. (#7483)

New in OpenTTD 1.8.0 (Apr 13, 2018)

  • New features:
  • [GFX] Climate-specific Action5 extra airport sprites [FS#6664] (r27976)
  • Draw vertical separators at tile distance in the train depot GUI (r27938, r27899)
  • [Build] MSVC 2017 project file generator. Most noticeable, std:c++latest is enabled (r27920, r27919, r27918, r27917)
  • [Build] Project file generator for kdevelop 4/5 [FS#6577] (r27897)
  • Add option to close windows with right click [FS#4950] (r27826, r27825)
  • Vehicle Group Info: Add profits and occupancy display to group vehicle list (r27822)
  • Display aircraft type in vehicle preview/purchase/detail windows (r27802, r27799, r27797)
  • Changes:
  • [NewGRF] Various performance improvements to resolving VA2 (r27989, r27985, r27984, r27983, r27982)
  • [NewGRF] Increase maximum allowed vehicle sprite size to reduce clipping of ships (r27987)
  • Check companies for bankruptcy before subtracting reoccuring monthly costs [FS#6679] (r27981)
  • [GFX] Replace the office building sprite on various toyland airports with a better fitting sprite [FS#6664] (r27977)
  • [GFX] The switch-toolbar icon contained pixels from the fire cycle. Replace the whole icon with a new version [FS#6654] (r27961)
  • Reword texts in industry view, when stockpiling is used (r27952)
  • Remove the gap between windows when positioning them after opening [FS#6568] (r27934, r27900)
  • [Build] Enable usage of static_assert for MSVC (r27916)
  • [Build] Preserve PKG_CONFIG_PATH and PKG_CONFIG_LIBDIR environment variables in config.cache file [FS#6614] (r27902)
  • Do not cancel headquarter construction and engine-preview-query when shift-clicking (r27889)
  • Parse extmidi command string for parameters to pass on (r27834)
  • Draw images in centre of buttons (r27829, r27821)
  • Fixed:
  • Store the map variety setting in the savegame like the other mapgen settings, so restarting maps considers it [FS#6673] (r27978)
  • Hair selection was missing one option [FS#6642] (r27975)
  • Avoid tile operations outside map border when building lock [FS#6662] (r27973)
  • Catenary sprites got mixed up for depots [FS#6670] (r27972)
  • Make automatic window-positioning RTL-aware (r27934, r27900)
  • Automatic window-positioning now uses GUI-scale/style dependent sizes/distances instead of fixed pixel values (r27934, r27900)
  • [NewGRF] While executing random triggers, var 5F should include the new triggers (r27928)
  • [NewGRF] Reset used random triggers only after all A123 chains have been resolved, so that all RA2 in all chains can test the shared triggers (r27928)
  • [NewGRF] Industry random triggers are stored per tile, even when randomising the shared random bits of the parent industry (r27928)
  • [NPF] Reserved track bits were not accounted for when trying to find any safe position (r27912)
  • Do not modify argv[0] [FS#6575] (r27886)
  • Do not search directories when opening ini files as we already have their full path [FS#6421] (r27816)
  • Road tunnel/bridge heads have no trackbits wrt. catenary drawing (r27812)

New in OpenTTD 1.7.2 (Dec 30, 2017)

  • Change:
  • When train depots have a horizontal scrollbar, allow scrolling 1 tile beyond the longest train, so you can actually attach a wagon at the end (r27937)
  • Fixed:
  • When moving wagons in the depot, the drag highlight did not exactly match the length of the dragged wagon chain (r27936)
  • [Win32] Right mouse scrolling didn't work properly with the Windows 10 Fall Creators Update [FS#6629] (r27935)
  • Forest, candyfloss forest and battery farm skipped the first animation frame [FS#6639] (r27932)
  • Glyphs in range U+0020 to U+00FF may only be defined in orig_extra.grf, not in openttd.grf [FS#6620] (r27915)
  • 'unban' console command was not handling IPv6 adresses properly (r27914, r27913)
  • Keep the 'link' between industry chain and smallmap windows whenever possible [FS#6585] (r27905)
  • When the last vehicle is removed from a shared orders group, hide the 'Stop sharing' button in the vehicle orders window [FS#6593] (r27904)
  • Tooltip of 'increase service interval' said 'decrease' [FS#6606] (r27895)
  • Console command parser passed invalid strings to the debug output, if command lines had many parameters [FS#6576] (r27884, r27883)

New in OpenTTD 1.7.0 (Oct 29, 2017)

  • This new fantastic version brings you a little set of new features, almost all are related to NewGRF but they will allow to do some new things or old things in a better way. Industry set developers should welcome the improved control for displaying the input cargos on the industry GUI (CB 37 result), along with other improvements to NewGRF features like a string command (9A 1E) to print the name of a cargo type, extended range for DCxx strings. Vehicles can now be composed from multiple sprites, potentially reducing duplication for people drawing vehicles with cargos etc. Finally the maximum number of NewGRF texts is increased to 512k and GameScript texts increased to 64k.
  • In other changes we find that waypoint area is now limited to the max station spread while dragging, static grfs do not count anymore towards the max active grfs so it can free some space for more grfs in a single game, and there is a rearranged GUI for the autoreplace feature. Realistic acceleration is now enabled by default for trains and road vehicles (new installations/clean configs) and the drive-in roadstops are now hidden from the tramway station picker, what a relief.
  • Various performance improvements were kicked in for CargoDist and LinkGraphs and a lot of bugs which spanned from simple overflowing text to crashes and memory leaks were fixed too.

New in OpenTTD 1.6.1 (Jul 12, 2016)

  • Fix: Compilation and optimisation issues with GCC6
  • Fix: Compilation with --disable-network
  • Fix: [NewGRF] shift-and-add-divide/modulo varadjusts use signed division/modulo
  • Fix: Company 0 could accept engine previews before they were offered

New in OpenTTD 1.6.0 (Apr 4, 2016)

  • New features:
  • [NewGRF] Allow custom sound IDs in RV property 0x12, ship property 0x10 and aircraft property 0x12 (r27507)
  • When viewing online content of a particular type, hide content of other types unless they have been (auto)selected for download (r27469, r27468, r27444)
  • [NewGRF] Move sprite 8 positions in sprite aligner with ctrl+click [FS#6241] (r27451)
  • Lower the sell-vehicle and sell-chain buttons in the train depot GUI while dragging a vehicle over it [FS#6391] (r27450, r27446)
  • Make the object placement GUI an independent window (r27438, r27397, r27346)
  • [Build] Project files and compilation with MSVC2015 (r27385, r27382, r27381, r27380, r27379)
  • [NewGRF] Allow railtype NewGRF to define separate sprites for the fences on either track side [FS#6315] (r27354, r27343)
  • [NewGRF] Increase the maximum amount of industry types to 128 per NewGRF and 240 in total (r27279)
  • Make Ctrl+Remove-Roadstop also remove the road, just like for rail stations [FS#6252] (r27251)
  • Changes:
  • [NewGRF] Allow static NewGRF to enable the second rocky tile set (r27497)
  • Round loading percentage in loading indicators and conditional orders towards 50%, so that 0% and 100% mean completely empty or full (r27426)
  • [Build] Rework the configure system to make more use of pkg-config (r27377:r27366, r27361, r27360)
  • Enable YAPF cache debugging with desync debug level 2 (r27332)
  • [strgen] Default plural subparameter position for CARGO_xxx string control codes is subparameter 1 (r27295)
  • [NewGRF] Translate industry variable A6 (r27267)
  • Do not consider cargo that is already being loaded as waiting cargo wrt. the station rating [FS#6165] (r27256)
  • Tune down terrain generation to reduce amount of long slopes (r27230)
  • Generate more detailed curves at the coast (r27229)
  • Slightly more water in the non-custom sea levels (r27228)
  • Be more lenient about road stop removal when at least one stop could be removed [FS#6262] (r27225)
  • Fixed:
  • [Win32] Stdin/out/err need to be re-assigned differently if the runtime lib of MSVC2015 is used (r27481)
  • [Haiku] On Haiku use the appropriate system variable to obtain the include dir [FS#6401] (r27472)

New in OpenTTD 1.5.3 (Dec 4, 2015)

  • When selecting a refit cargo for orders, do not check whether the vehicle is in a depot or station, and do not ask whether the vehicle currently allows station-refitting. Also hide the refit cost for orders, it is not predictable (r27428)
  • Use the NewGRF railtype sorting order in the infrastructure window (r27427)
  • Crash when switching to or taking over companies, when an order window of a vehicle of the new company was opened. Now close those windows [FS#5842] (r27425)
  • Towns did not connect roads to existing roads, unless they had only a single roadbit. Otoh, towns also tried to connect to single roadbit tiles such as tunnels and depots, even though they were not connectable in the direction of interest [FS#6374] (r27424)
  • When towns expanded single-bit roadtiles using a grid-layout, they used the layout position of the neighbouring tile (r27423)
  • Aircraft picked the wrong airport entry point, if airports were rotated by 180 degree [FS#6341] (r27422)
  • Consider text and icon sizes when drawing the client list [FS#6265] (r27421)
  • GrowTownAtRoad sometimes returned false, even when a house was built [FS#6362] (r27420)
  • CmdSellRailWagon did not revert all actions properly when no orderlist could be allocated [FS#6369] (r27419)
  • Desync due to incorrect storage of segments with different railtype in the YAPF cache [FS#6329] [FS#6379] (r27418)
  • When a dedicated server was paused with no clients, the master server advertisement interval was slowed, causing deadvertisement of the server [FS#6368] (r27400)
  • [Makefile] Game script directory and compat*.nut were never installed on *nix (r27399)
  • There are two different availability conditions for fdatasync in the manpage. Use them both, since at least on some MinGW versions one is not enough (r27389)
  • win32 sound driver failed to report errors (r27383)
  • Clickareas in settings tree were misaligned when the filter warning was displayed, if the setting height was defined by the icons instead of the font [FS#6358] (r27366)
  • Center settings filter warning also vertically, and also in case of multiple lines (r27365)

New in OpenTTD 1.5.2 (Sep 16, 2015)

  • Change:
  • Auto-complete partial roads when building level-crossings [FS#6283] (r27309)
  • Fixed:
  • Do not rerandomise the town name when only cost-estimating the founding [FS#6332] (r27341)
  • Make variety distribution not assume that sea level is at height 0.2 / 3 * TGPGetMaxHeight() [FS#6335] (r27331, r27330, r27329, r27328)
  • Remove corner-case optimisation for line drawing, which failed for dashed lines (r27324)
  • Clipping of inclined lines did not account for the 'horizontal width' being bigger than the 'real width' (r27323, r27322)
  • Incorrect owner assignment when adding/removing road/tram to/from bridges [FS#6317] (r27313, r27312)
  • Mark infrastructure window dirty in more cases (r27311)
  • Prevent breaking of tram-reversal points by adding more road pieces [FS#6283] (r27308)
  • Error message window with manager face failed with GUI zoom [FS#6259] (r27307)
  • Account for road-bridges and drive-through-stops in CanFollowRoad [FS#6320] (r27306, r27305)
  • Password window layout with GUI zoom [FS#6321] (r27304, r27303)
  • Speed-only timetables got assigned times in stations [FS#6313] (r27302, r27301)
  • Enforce the company's default service intervals when purchasing another company [FS#6254] (r27282, r27281)
  • Cloning/autoreplace/autorenew did not copy custom service intervals (r27280)

New in OpenTTD 1.5.1 (Jun 5, 2015)

  • Fix: Do not consider road junctions with trivial dead ends as branch points during town growth [FS#6245] (r27260, r27259, r27244)
  • Fix: ScriptList::RemoveList failed to remove a list from itself [FS#6287] (r27258)
  • Fix: Combined button+dropdown widgets in order and autoreplace GUI had incorrect hitbox when using GUI zoom [FS#6270] (r27255)
  • Fix: When building a lock on DC_AUTO-removable water-based objects, the water class was always set to canal [FS#6264] (r27254)
  • Fix: When crossing tram tracks with railroads, cost of extra roads was not being counted [FS#6282] (r27253)
  • Fix: Invalid infrastructure counting when crossing tram tracks with railroads [FS#6281] (r27252)
  • Fix: Broken error message in configure [FS#6286] (r27250)
  • Fix: In some cases town growth failure was considered as success [FS#6240] (r27249, r27247)
  • Fix: Town labels on smallmap and zoomed-out viewports were not centered [FS#6257] (r27248)
  • Fix: Removing a rail waypoint used the remove-rail-station cost [FS#6251] (r27245)
  • Fix: Duplicate frees due to pool item classes not having copy constructors [FS#6285] (r27243)
  • Fix: Crash when no AIs were installed due to improper handling of non-ASCII characters by the string pointer lexer [FS#6272] (r27233)
  • Fix: Compilation on DragonflyBSD [FS#6274] (r27224, r27223)
  • Fix: Use the current maximum speed as limited by bridges, orders etc. for all vehicle types alike when considering increased smoke emissions of vehicles [FS#6278] (r27222)
  • Fix: Multi-value keys in the desktop entry shall end with a trailing separator (r27221)
  • Fix: Draw path reservation on the whole bridge, not only on the bridge heads (r27209)
  • Fix: Draw correct overlay sprites for path reservations on bridges and tunnels (r27208)

New in OpenTTD 1.5.0 (Apr 9, 2015)

  • This year, we release the 1.5.0 stable release, with higher mountains than you have ever seen before, a better UI for high resolution screens, and a much more rural intro screen.

New in OpenTTD 1.5.0 Beta 1 (Dec 29, 2014)

  • Hierarchical vehicle groups, update-able NewGRF presets, custom vehicle list filtering, more heightlevels for maps, and a scaleable user interface for your new 3K display!

New in OpenTTD 1.4.4 (Oct 28, 2014)

  • Fix: Image widgets stored 32bit SpriteID in uint16 (r26971)
  • Fix: Owner of road depot road types were not properly changed upon bankruptcy [FS#6126] (r26955)
  • Fix: Compilation on HAIKU (r26922)
  • Fix: Crash when enabling 'Full animation' if multiplayer chat text is on screen [FS#6096] (r26919)
  • Fix: Height computation of game script text in town GUI did not consider margins [FS#6119] (r26859)
  • Fix: [Squirrel] Debian lintian issues (r26853)
  • Fix: Compilation of strgen on various platforms like Solaris (r26850)
  • Fix: Better display of refit information for articulated vehicles [FS#6113] (r26849, r26848)
  • Fix: Do not assign a next hop when returning cargo [FS#6110] (r26847)
  • Fix: The ok-button in the OSK for the signs list should just close the OSK [FS#6116] (r26827)

New in OpenTTD 1.4.2 (Aug 17, 2014)

  • Change: Use awk instead of trying to convince cpp to preprocess nfo files (r26708)
  • Fix: CMD_CLEAR_ORDER_BACKUP should not be suppressed by pause modes (r26716)
  • Fix: [NewGRF] Parameters to SCC_NEWGRF_PUSH_WORD and SCC_NEWGRF_UNPRINT were not skipped during drawing (r26713)
  • Fix: [OSX] Compilation fails with some lzo2 versions, if __LP64__ is defined to 0 instead of checking whether it is defined [FS#6069] (r26709)
  • Fix: Wrong breakdown sound was played for ships [FS#6015] (r26706)
  • Fix: Integer overflows in acceleration code causing either too low acceleration or too high acceleration [FS#6067] (r26702)
  • Fix: Discard incorrectly saved order backups when clients join [FS#6066] (r26700)
  • Fix: Do not crash when trying to show an error about vehicle in a NewGRF and the NewGRF was not loaded at all (r26699)
  • Fix: Slovak uses space as group separator in numbers [FS#6064] (r26695)
  • Fix: Tighten parameter bound checks on GSCargoMonitor functions, and return -1 on out-of-bound parameters (r26685)

New in OpenTTD 1.4.1 (Jun 3, 2014)

  • Fix: First send packages about new company, then clients joining it to admin port [FS#6025] (r26616)

New in OpenTTD 1.4.1 RC (May 9, 2014)

  • Change: Remove demand calculation based on tiles (r26484)
  • Change: Use pkg-config for libpng as well (r26435, r26433, r26432)
  • Change: Use better distance metric for link graph [FS#5941] (r26411)
  • Fix: [Windows] Crash when the operating system performs the "paint" callback during window creation [FS#5994] (r26539, r26538)
  • Fix: OpenBSD compilation [FS#5992] (r26523)
  • Fix: prevent from ever reading huge (or negative) amounts of data in strgen (r26521)
  • Fix: Severity rating of dedicated server messages during world generation (r26518)
  • Fix: Buffer overruns in handling of symbolic links inside tars (r26514)
  • Fix: Incorrect usage of strecpy (r26505, r26485)
  • Fix: Reading console input on dedicated server relied on unspecified behaviour (r26496)
  • Fix: Allow single-vehicle consists to station-refit in a meaningful way (r26483)
  • Fix: Prevent comparing to NULL when strndup could not allocate memory (r26476)
  • Fix: Potentially undefined shifts in NewGRF code (r26475)
  • Fix: Make sure there is no uninitialised sprite data (r26473)
  • Fix: Draw text shadow for ellipses (r26467)
  • Fix: Add special handling for PALETTE_CRASH to work for non-8bpp-mapped sprites (r26463)
  • Fix: Avoid division by 0 when scaling flow values [FS#5970] (r26448)
  • Fix: Draw links to match _settings_game.vehicle.road_side [FS#5961] (r26445)
  • Fix: Load button for heightmap list was missing [FS#5953] (r26428)
  • Fix: Do not crash when supplying an invalid filename without extension to cmd parameter -q (r26423)
  • Fix: Some road constructions used the rail sound effect [FS#5946] (r26422)
  • Fix: Goal GUI failed to shade [FS#5948] (r26420)
  • Fix: Shares button state was not appropriately updated when switching setting or company [FS#5947] (r26416)

New in OpenTTD 1.4.0 (Apr 3, 2014)

  • Feature: [Script] APIs to get cargo waiting from/via other station (r26396)
  • Fix: Do not explain "symmetric" cargodist mode when the setting does not allow it [FS#5939] (r26394)
  • Fix: Update distances between link graph nodes when station sign is moved (r26393)
  • Fix: No need to call OnFocus twice [FS#5933] (r26392)
  • Fix: Select a specific font size when freetype fails to select one automatically [FS#5885] (r26389)
  • Fix: Return correct values from ICU iterators in case of leading or trailing whitespace [FS#5924] (r26384)
  • Fix: All goal commands invalidated the goal list of company 0 [FS#5932] (r26382)
  • Feature: Warn the user about empty setting search results, and about missing setting search results due to filtering (r26322, r26321)
  • Feature: [NewGRF] Extend object variable 0x60 to also return the view [FS#5696] (r26316)
  • Feature: Allow map sizes up to 4096x4096 (r26319)
  • Feature: [NoGo] Allow GS to hide story page date (r26307)
  • Feature: [NoGo] More story APIs: RemovePageElement, GetCompany, GetDate, SetDate (r26306)
  • Feature: [NoGo] ScriptStoryPageElementList() - a list of all story page elements for a given page (r26305)
  • Feature: [NoGo] ScriptStoryPageList() - a list of all story pages (r26303)
  • Change: improve the performance of map generation (r26313, r26312, r26311, r26310, r26309, r26308)
  • Fix: Station sizes > 8 were always allowed [FS#5929] (r26375)
  • Fix: [NewGRF] Mixed up callback mask flags in station inspect window [FS#5928] (r26374)
  • Fix: Calling DoCommandP during the gameloop cleared pending persistent storage changes [FS#5831] (r26371)
  • Fix: [Windows] Use a separate event to indicate that the drawing thread has finished initialising, preventing potential deadlocks (r26367)
  • Fix: [Windows] Protect the whole video driver from concurrent access (r26366)
  • Fix: [Windows] Do not draw the cursor when its sprite is not ready and set _screen.dst_ptr immediately when the buffer changes [FS#5867] (r26365)
  • Fix: Writing out of the bounds of the rail type map [FS#5892] (r26364)
  • Fix: Reset the default window size icon size just like all the other cached icon sizes [FS#5906] (r26362)
  • Fix: ClientSizeChanged is only called via WndProcGdi which already has the mutex [FS#5922] (r26360)
  • Fix: Some order options do not combine with others, e.g. go via + full load [FS#5845] (r26357)
  • Fix: Protect all VideoDriver_SDL methods with the (now recursive) _draw_mutex (r26351)
  • Fix: Make sure link graph jobs can delete themselves after SLA_NULL [FS#5898] (r26347)
  • Fix: Call Layouter::ReduceLineCache from GenerateTownName in all cases to keep cache size in check [FS#5870] (r26346)
  • Fix: Rewrite SmallStack so that it does not use a pool and is re-entrant (r26343)
  • Fix: Reroute cargo when automatic distribution is switched off [FS#5902] (r26341)
  • Fix: Do not redraw the link graph overlay if it is empty [FS#5908] (r26338)
  • Fix: Some inconsistencies regarding link graph (job) IDs (r26331)
  • Fix: The case of rerouting cargo from one VehicleCargoList to another (r26330)
  • Fix: Take care of next_station when reassigning from MTA_DELIVER to MTA_TRANSFER [FS#5901] (r26327)
  • Fix: when autosaving the message about a save already happening could be shown, even though the code's intention was to not show it [FS#5871] (r26326)
  • Fix: Check whether NewGRF change vehicle capacity when they are not supposed to, and truncate cargo appropriately if they are allowed to [FS#5897] (r26317)
  • Fix: The giant-screenshot confirmation window only triggered for ridiculously big screenshots, not for ludicrously big ones [FS#5899] (r26314)
  • Change: [NewGRF] Make vehicle variable 61 return 'not available' instead of zero when using it in invalid callback contexts (r26294)
  • Feature: Display speed limit also for road bridges in the TileInfo window [FS#5849] (r26277)
  • Fix: [NoGo] Invalid DoCommand return callback for method returning bool (r26298)
  • Fix: Correctly identify opposite ends of bridges and tunnels when converting rails [FS#5866, FS#5888] (r26291)
  • Fix: Prevent infinite recursion also in RefreshLinks [FS#5878] (r26283)
  • Fix: [NoAI] Some RemoveRail methods required to set a valid railtype, though it was not used anyway. Remove the need to set one [FS#5853] (r26279)
  • Fix: Do not spawn link graph jobs for link graphs with only one node [FS#5874] (r26276)
  • Fix: [NewGRF] If NewGRF provided the same station name for different industry types, stations would end up with same name. So also consider the provided name, not only the industry type (r26275)

New in OpenTTD 1.4.0 Beta 3 (Jan 23, 2014)

  • Feature: Several small performance improvements with the SSE blitters (r26260, r26259, r26256, r26255, r26254)
  • Feature: [NewGRF] Add StringCodes 9A 1B, 9A 1C and 9A 1D to display amounts of cargo (r26244)
  • Fix: Do not run into infinite recursion when getting next stopping station [FS#5865] (r26267, r26263)
  • Fix: Update smallmap overlay if player joins different company and make sure company masks are valid [FS#5860] (r26266)
  • Fix: Do not rebuild the link graph overlay cache twice in a row (r26265)
  • Fix: Custom currency was reset on game start (r26262)
  • Fix: Possible out of bounds reads with the sse blitters [FS#5854, FS#5855] (r26247)
  • Fix: Do not overreserve after autorefit, but do reserve mail for aircraft (r26236)
  • Fix: Decimal and digit separators were swapped for Korean language (r26235)

New in OpenTTD 1.4.0 Beta 2 (Jan 9, 2014)

  • Feature: Blitter autoselection is now based on full animation state, so a non-animated specialised blitter will generally be chosen when animation is turned off (r26217)
  • Feature: Specialised animated SSE4 blitter, and non-animated SSE4.1, SSSE3 and SSE2 blitters, improving the blitting significantly in many situations (r26214, r26213, r26212, r26211)
  • Feature: Specialised SSE 4.1 sprite sorter, improving the sorting performance significantly (r26205)
  • Fix: Validate everything from ini, obg, obs, obs, ... files [FS#5829] (r26206)
  • Fix: Allow refitting at station if cargo has already been reserved (r26187)
  • Fix: Visual effects did not work for articulated RV parts (r26180)

New in OpenTTD 1.3.3 (Dec 7, 2013)

  • Compared to the previous release candidate an important crashy bug was fixed. We recommend everyone to update to this version, especially server owners are encouraged to update in a timely manner.

New in OpenTTD 1.3.1 RC1 (May 20, 2013)

  • New features:
  • Translations of baseset descriptions via language files (r25209, r25205)
  • Faroese and Scottish Gaelic translations (r25198, r25176)
  • Plural form to be used by Scottish Gaelic (1,11; 2,12; 3..10, 13..19; other) (r25078)
  • Changes:
  • [strgen] Allow any number of colour codes in translations (r25193, r25192, r25191)
  • [Win32] MSVC 2010 comes with stdint.h (r25128)
  • Be slightly more lenient with trying to detect a subversion repository in case someone has a sparse tags checkout. In that case the .svn folder misses from the $ROOT_DIR because it is in the $ROOT_DIR/.. (i.e. tags) folder (r25107)
  • Fixed:
  • 'No station' error was given, even when there was a station that way occupied or not yours [FS#5546] (r25243)
  • Crash when AI is executing a command as it is bankrupted (removed from the game) [FS#5547] (r25236)
  • Give bridges owned by noone (from bankrupt companies) to the first company which replaces the bridge. Everyone could have removed/rebuild the bridge anyway [FS#5541] (r25231, r25227)
  • [NewGRF] Revise when vehicle running sound effects 04, 07 and 08 are played; in depot or tunnel, or when crashed or stopped: No sound. Braking: Effect 08 instead of 07 [FS#5538] (r25226)
  • [NewGRF] Play vehicle sound effect also for planes (r25225)
  • [NewGRF] cur_speed is only valid for the front engine, so make other engines in the consist use the speed of the front [FS#5534] (r25224)
  • [NewGRF] Make tick_counters work the same for vehicles (r25223, r25222)
  • [NewGRF] IsCompatibleTrainStationTile() is not a symmetric function. Clarify the parameters and fix the cases were they were swapped (r25221)
  • Consider map border as water with repsect to river/canal continuation (r25220)
  • [Script] Clarify on which tiles IsDesertTile and IsSnowTile work, i.e. the ones without infrastructure or buildings, and introduce GetTerrainType for the cases where IsDesertTile/IsSnowTile do not work [FS#5537] (r25213)
  • The level crossing sound is an ambient sound and not a new year sound (r25200)
  • Original train and road vehicle acceleration did no longer respect bridge speed limits [FS#5523] (r25167)
  • [Win32] Do not statically link to SHGetFolderPath as it may not exist, and improve its emulation [FS#5522] (r25155, r25153)
  • [Win32] Do not store invalid paths in the search path list (r25154)
  • Remove stray reservation from savegames affected by FS#5510 et al. upon loading [FS#5520] (r25152)
  • [Script] XXBase::Chance function did not work for large values (>65535) [FS#5517] (r25148)
  • Several typos/inconsistencies in English strings [FS#5496] (r25144, r25143)
  • When extra dynamite was disabled, towns would be allowed to clear bridges with trams (r25141)
  • Towns are build as OWNER_TOWN, so they also need to be removed as OWNER_TOWN otherwise parts might remain [FS#5519] (r25140)
  • Editboxes could become too small when resizing windows (r25121)
  • Game script language files did not work, when inside a tar [FS#5509] (r25117, r25114)
  • [NewGRF] Acceleration of NewGRF aircraft was too fast, while acceleration of default aircraft was way too slow (r25115)
  • Pass $LDFLAGS_BUILD to all endian_check compilations (r25108)

New in OpenTTD 1.3.0 (Apr 4, 2013)

  • The first quarter of 2013 is over, so it's time for the first release of the 1.3 series. If you are tired of hopping around and hiding chocolate eggs everywhere, this might be your chance to relax with building some tracks.
  • On the download page you will also find the complete change log, listing all features, changes and fixes since 1.2.3. If you haven't followed the beta and RC stages, you should take a look at the new game scripts and NewGRF via the in-game content download, which become available when using 1.3.0.

New in OpenTTD 1.3.0 Beta 1 (Dec 27, 2012)

  • New features:
  • Advanced settings to disable certain sound effects (r24846)
  • [NewGRF] Support oversized purchase list sprites [FS#5271] (r24839)
  • Improve pylon placement around station tiles that display neither pylons nor catenary (r24836)
  • When using a non-release version of OpenTTD and the basegraphics are missing some sprites, also suggest to use a non-release version of the basegraphics (r24821)
  • Consider engine preview windows always sticky, so non-shift mass-closure does not affect them [FS#2632] (r24809)
  • When share-cloning vehicles do not open the vehicle window of the new vehicle [FS#4458] (r24808)
  • Enable usage of 'companies' console command also in singleplayer [FS#2820] (r24807)
  • Ask for confirmation before creating giant screenshots [FS#3148] (r24806)
  • Separate subdirectory for screenshots (r24804)
  • Unify the difficulty settings window with the advanced settings window (r24791, r24792)
  • Various methods to open the OSK (r24785)
  • Add a string filter to the server list [FS#3852] (r24769)
  • Add industry type and cargo dropdown selection for easier navigating in the industry chain window (r24763)
  • Introduce GUI icons for deleting to the left/right (r24749)
  • Add clear button to all editboxes (r24748)
  • Reset the vehicle engine pool when starting a scenario (r24716)
  • Add basic/advanced/expert filters to the advanced settings GUI [FS#5355] (r24671)
  • Draw cargo labels in the station list black or white depending on the background colour [FS#5311] (r24668)
  • Do not display the preview window for disabled vehicle types (r24660)
  • Add new filter option to the advanced settings window to show only changed settings (r24647)
  • Add text filtering to advanced settings (r24632)
  • Add buttons to expand/collapse all to advanced settings GUI (r24631)
  • [GS] Allow GameScripts to construct and prospect industries without having a sponsor (r24623)
  • Pay interest also on a negative cash value (r24618)
  • Sort cargo filter by cargo name/label at the company stations window [FS#5311] (r24615)
  • More options for the auto-scroll setting (r24590)
  • Allow AI/GS script developers to break the execution of their scripts and pause the game using ScriptController::Break() (r24542, r24575)
  • Scripts can be suspended even if the game is still progressing, thus break-on-log now works also for Game Scripts (r24537)
  • Highlight industries on the smallmap when the mouse is over an entry in the legend (r24534)
  • [NewGRF] Allow resolving var 5F via vehicle var 61 (r24527)
  • [OSX] Additional high-resolution icons for the app bundle [FS#4539] (r24525)
  • Ctrl+Backspace/Delete to remove characters up to next word beginning in text edit boxes [FS#5203] (r24521)
  • Ctrl+Arrow keys to move entire words in text edit boxes [FS#5203] (r24520)
  • When using autorefit only load/refit vehicles if other wagons cannot already take all cargo without refitting [FS#5106] (r24497)
  • [GS] Useful behaviour for GSEngine::IsValidEngine and GSEngine::IsBuildable when outside GSCompanyMode scope (r24492)
  • Display GS dead state in AI debug window [FS#5230] (r24489)
  • Add buttons to view textfiles from the online content window [FS#5236] (r24488)
  • Make the pathfinder decide whether ships shall leave depots towards north or south [FS#5127] (r24481)
  • [GS] API compatibility scripts for Goal Scripts [FS#5219] (r24468)
  • Display in the advanced settings description a setting type which explains the scope of changes to a particular setting [FS#5244] (r24411)
  • [GS] Allow game scripts to monitor cargo pickups and deliveries done by companies (r24406)
  • [NewGRF] Allow vehicle variable 61 for callback 2D (recolour) and re-randomisation (r24371)
  • [NewGRF] Customisable signals for rail types (r24367)
  • Allow filtering for multiple words (separated by whitespace resp. quoted) in script breakpoints, the sign list, content and NewGRF-GUIs (r24337, r24342)
  • Add dropdowns to NewGRF configurations, if all values have labels (r24318)
  • Add dropdowns to AI configurations, if all values have labels (r24317)
  • Allow to select advanced settings with limited range with a dropdown list (r24316)
  • Display default values for advanced settings in the settings description (r24298)
  • News item for exclusive transport rights [FS#2688] (r24287)
  • [GS] Additional GSNews::NewsItem::NewsTypes (r24286)
  • [NewGRF] Variable with the current max speed for vehicles [FS#5052] (r24246)
  • Descriptions explaining the meaning of advanced settings (r24237)
  • Split the renew-months setting text in two string values (one before life time and one after) (r24210)
  • Show a hint in the supplies tab of station windows, if the station is affected by exclusive transport rights [FS#5178] (r24205)
  • [NewGRF] Callback to set industry production level on construction (r24186)
  • South Korean and South African currencies [FS#4907] (r24148)
  • Randomise count of passengers killed in a crash [FS#3576] (r24142)
  • Display rating in the town directory window (r24141)
  • Show group name in the replace vehicle window caption [FS#1117] (r24140)
  • Allow to create a new vehicle group by drag and drop (r24139)
  • Ctrl+Drag to add all vehicles with a shared order list to a group (r24138)
  • Draw indicator icon in the replace vehicle window for vehicles which have a replacement set (r24137)
  • Autoreplace vehicles only when they get old [FS#4465] (r24136)
  • Add configurable limits for tree planting, and remove tree drag size limit (r24134, r24135)
  • Lithuanian currency [FS#4984] (r24133)
  • Ctrl+Clicking to change colour of all colour schemes at once [FS#1952] (r24131)
  • Deselect 'remove' button when changing signal types in the GUI [FS#2314] (r24130)
  • Option to minimise signal distance when dragging over obstacles [FS#3660] (r24129)
  • Allow closing airports for incoming aircraft [FS#1497] (r24127)
  • Drag and drop support for the NewGRF list window [FS#3854] (r24126)
  • Drag destination highlighting to the group GUI [FS#3705] (r24125)
  • [NewGRF] Misc engine flag to disable breakdown smoke [FS#4658] (r24124)
  • Be more careful with the population of a small town while placing a statue (r24105)
  • Debug option for showing the redrawn dirty blocks/rectangles [FS#5101] (r24065)
  • Changes:
  • News display options are now shown in the advanced settings window (r24842, r24843, r24844, r24845)
  • Drop 'signal density' from the advanced settings GUI. It is more suited to be only changed via the signal GUI (r24670)
  • Check for bankruptcy on a monthly basis (r24619)
  • Only bankrupt, if you have negative money considering you took max loan (r24617)
  • When building long roads or tramways, only build the roadbits at the beginning and the end if they can connect to something [FS#5228] (r24503)
  • Disallow original and better road layouts to build roads under bridges along the bridge direction [FS#5229] (r24391)
  • Allow cloning of orders which are unreachable for the destination vehicle if they were already unreachable for the source vehicle [FS#5213] (r24390)
  • Allow building/modifying/removing signals even if a train is on the belonging track (r24356)
  • [NewGRF] Make bounding boxes of road vehicles change according to the vehicle length to make alignment easier [FS#5204] (r24331)
  • Fixed:
  • [NewGRF] Consider regearing-like cargos as no-cargo in cargo filters [FS#5386] (r24848)
  • [NewGRF] Draw NewGRF railtypes in NewGRF station previews (r24840)
  • Don't consider blocked rail station tiles that display wires as non-reachable for masking out unnecessary catenary wires (r24837)
  • The autorefit dropdown in the order GUI wasn't always updated when modifying vehicle consists [FS#5396] (r24834)
  • [NewGRF] Incorrect values are better than a crash when a NewGRF queries vehicle variable 4C before vehicle initialisation is completed [FS#5398] (r24831)
  • determineversion.vbs could hang in a git checkout (r24826)
  • Close pending preview windows when the engine is introduced to everyone (r24812)
  • Close engine preview window when another client accepts it (r24811)
  • Make engine preview offers more robust with regard to changes in the company ranking (r24810)
  • When displaying the previous news message, do not consider news which are turned off [FS#4224] (r24802)
  • Glitch in timetable GUI [FS#5327] (r24800)
  • Unify checks for editability of settings (r24787)
  • Invert the focus handling of the OSK. Keep the focus at the OSK and close it on losing focus (r24774)
  • Shift in the OSK behaved like capslock (r24773)
  • [Win32] Do not crash when switching to an unsupported fullscreen display mode (like 8bpp modes in Windows 8) [FS#5359] (r24762)
  • Crash on corrupted savegame [FS#5367] (r24754)
  • Some editboxes had a different colour than the rest of the window (r24747)
  • In various windows the OSK looked shiny but using it had no effect whatsoever (r24727)
  • AI debug GUI crashed when using disabled buttons via hotkeys (r24723)
  • When starting a scenario apply the local company settings to the new company [FS#5139] (r24717)
  • [NewGRF] Allow stations to draw snow/desert aware ground sprites with railtype overlays [FS#5335] (r24715)
  • [NewGRF] Draw default foundations if resolving of custom station foundation sprites fails [FS#5337] (r24714)
  • [NewGRF] Tolerate old NewGRFs returning invalid values via CB 11 [FS#5262] (r24713)
  • [NewGRF] Station variables 61 and 62 returned incorrect values, if no vehicle ever tried loading [FS#5303] (r24712)
  • Check whether to not display a ^ loading indicator at drop stations only worked if there was no other vehicle unloading for 255 ticks (r24711)
  • [NewGRF] Station var 48 should report acceptance, not supply (r24706)
  • Station rating might consider very old vehicles very young (r24705)
  • Disallow closing oilrig airports in the scenario editor (r24703)
  • Workaround for an overoptimisation done by GCC 4.5 [FS#5246] (r24701)
  • Get packing right on MinGW GCC 4.7 (r24573)
  • Make sure all template functions are instantiated by at least one compilation unit [FS#5276] (r24496)
  • Do not load order backups when loading a server-saved game in single player (r24445)
  • Allow overbuilding bridges with the same type when adding a roadtype [FS#5221] (r24413)
  • Cargo lists cannot have genders (mostly because it is very unclear what gender it would have) (r24374)
  • Off by one errors with regard to clicking on setting buttons (r24313)
  • STRING1 probably means STRING1 (r24295)
  • squirrel_export should match key words like 'virtual', 'static' and 'const' only as whole words (r24288)
  • Hide object specs/classes from the GUI, if they will never be available to the user [FS#4967, FS#5120] (r24171)
  • Unify the spacing in 'AI/Game Script' and never just say 'Game' when 'Game Script' is meant [FS#4898] (r24020)

New in OpenTTD 1.2.3 (Nov 1, 2012)

  • Changed:
  • [NewGRF] Set the reference brightness of 32bpp mask recolouring to 128 (r24610)
  • Fixed:
  • Configure script did not properly handle _BUILD flags during reconfigure (r24601)
  • Configure script failed to detect libfontconfig 2.10 as newer than 2.3 (r24598)
  • When fontconfig is not available, the bootstrap download crashed [FS#5336] (r24597)
  • Crash when a gamescript provided too many parameters to a GSText object [FS#5333] (r24593)
  • [Script] API documentation mistakes/omissions (r24584)
  • Do not add duplicates to the ban list [FS#5308] (r24580)
  • Draw the window resize sprite bottom-aligned [FS#5324] (r24577)
  • Vehicle list at buoys did no longer work [FS#5319] (r24576)
  • [Windows] Do not cast away const in OS specific code (r24572, r24571)
  • Naming of bundles was somewhat broken (r24569)
  • Non-train vehicle lists were not resorted when vehicles were renamed [FS#5261] (r24567)
  • Stop both price and payment inflation if either of them has reached MAX_INFLATION (r24565)
  • Limiting the inflation did not quite work [FS#5312] (r24564)
  • Do not show profit from refits as cost in the refit window [FS#5297] (r24544)
  • Do not limit to reading one UDP packet per game loop (r24532)
  • Max script chance was too big (r24531)
  • [NewGRF] RandomAction 84 should interpret register 100 as signed (r24528)
  • [OSX] Some compile problems in mac-only code [FS#5296] (r24524)
  • The gender of an industry name is defined by the industry-type part of the name, not by the town-name part, even if it comes first (r24523, r24522)
  • GStexts were compiled incompletely when containing certain string codes (r24516, r24515)
  • The mousewheel did not work in the build waypoint window [FS#5285] (r24507)
  • [NewGRF] Airport variables 60 to 65 and 69 used the wrong cargo translation table for translations (r24506)
  • Do not show the global goals as company goals for spectators (r24500)
  • Clarify description of command line option -n (r24485)
  • Do not call RebuildSubsidisedSourceAndDestinationCache() before subsidy savegame conversion is finished [FS#5232] (r24482)
  • Trains were unable to reverse in stations when using NPF (r24479)
  • The --xxx yyy format (instead of --xxx=yyy) for configure did not work (r24471)
  • --prefix was not accepted by configure (r24470)
  • Changing auto-refit for a 'goto station' order was inadvertently modifying the full load state [FS#5264] (r24457)

New in OpenTTD 1.2.3 RC1 (Oct 19, 2012)

  • Changed:
  • [NewGRF] Set the reference brightness of 32bpp mask recolouring to 128 (r24610)
  • Fixed:
  • Configure script did not properly handle _BUILD flags during reconfigure (r24601)
  • Configure script failed to detect libfontconfig 2.10 as newer than 2.3 (r24598)
  • When fontconfig is not available, the bootstrap download crashed [FS#5336] (r24597)
  • Crash when a gamescript provided too many parameters to a GSText object [FS#5333] (r24593)
  • [Script] API documentation mistakes/omissions (r24584)
  • Do not add duplicates to the ban list [FS#5308] (r24580)
  • Draw the window resize sprite bottom-aligned [FS#5324] (r24577)
  • Vehicle list at buoys did no longer work [FS#5319] (r24576)
  • [Windows] Do not cast away const in OS specific code (r24572, r24571)
  • Naming of bundles was somewhat broken (r24569)
  • Non-train vehicle lists were not resorted when vehicles were renamed [FS#5261] (r24567)
  • Stop both price and payment inflation if either of them has reached MAX_INFLATION (r24565)
  • Limiting the inflation did not quite work [FS#5312] (r24564)
  • Do not show profit from refits as cost in the refit window [FS#5297] (r24544)
  • Do not limit to reading one UDP packet per game loop (r24532)
  • Max script chance was too big (r24531)
  • [NewGRF] RandomAction 84 should interpret register 100 as signed (r24528)
  • [OSX] Some compile problems in mac-only code [FS#5296] (r24524)
  • The gender of an industry name is defined by the industry-type part of the name, not by the town-name part, even if it comes first (r24523, r24522)
  • GStexts were compiled incompletely when containing certain string codes (r24516, r24515)
  • The mousewheel did not work in the build waypoint window [FS#5285] (r24507)
  • [NewGRF] Airport variables 60 to 65 and 69 used the wrong cargo translation table for translations (r24506)
  • Do not show the global goals as company goals for spectators (r24500)
  • Clarify description of command line option -n (r24485)
  • Do not call RebuildSubsidisedSourceAndDestinationCache() before subsidy savegame conversion is finished [FS#5232] (r24482)
  • Trains were unable to reverse in stations when using NPF (r24479)
  • The --xxx yyy format (instead of --xxx=yyy) for configure did not work (r24471)
  • --prefix was not accepted by configure (r24470)
  • Changing auto-refit for a 'goto station' order was inadvertently modifying the full load state [FS#5264] (r24457)

New in OpenTTD 1.2.1 (Jun 2, 2012)

  • he first maintenance release of the 1.2 series delivers you a lot of bug fixes, so hopefully a nice playing experience. Most notable the lagging experienced in certain circumstances with 1.2.0 on the title screen and in-game should be gone.

New in OpenTTD 1.2.1 RC1 (May 18, 2012)

  • Change the unit of the sprite-cache size setting from megabytes to megapixels, so it depends on the blitter being used. Also increase it from 64 to 128, and change the name in the cfg file, so everyone gets the new default [FS#5162] (r24252)
  • Do not immediately display error messages from parsing the cfg file, but schedule them for displaying after the GUI is prepared for it [FS#5154] (r24250, r24249, r24248, r24247)
  • Dereferencing uninitialised pointer causing a crash [FS#5159] (r24224)
  • Lag counters were not properly reset when switching states making it possible to get disconnected for lagging when you were not lagging [FS#5166] (r24221)
  • Adopt ICU version detection to also deal with the new versioning scheme since ICU 49 [FS#5182] (r24220)
  • Immediately do the cargo payment on vehicle crashes instead of when they are cleared [FS#5152] (r24219)
  • The confirmation window to abort world generation was hidden during world generation, so actually you could not abort it [FS#5159] (r24214)
  • If a company is taken over or bankrupts, transfer exclusive transport rights to the new owner respectively cancel them (r24204)
  • Make the engine name not overdraw the engine count in the autoreplace GUI (r24203)
  • Make the size of the details in the autoreplace GUI match more the size of the details in the purchase list (r24202)
  • Mark group list dirty when setting/clearing autoreplace for an engine type [FS#5170] (r24201)
  • Invalidate build vehicle windows every month, in case they need resorting due to changed reliabilities [FS#5149] (r24200)
  • If you consider a settings to potentially cause desyncs via NewGRFs and thus disallow changing it in network games, you should probably also sync it to clients (r24193, r24191)
  • Use default value when reading an invalid setting value [FS#5153] (r24192, r24146)
  • [Windows] When going to fullscreen and back, restore to the resolution you were, not to the fullscreen resolution (r24189)
  • [Windows] When changing the basics of a window (fullscreen, 8bpp/32bpp), and a window already exists, it was forced out of maximize mode, and its resolution/position was reset, often causing unwanted side-effects [FS#5151] (r24188)
  • Town radii were not updated immediatelly after construction/destruction of houses, resulting in desyncs [FS#5169] (r24183)
  • The population of a town was computed incorrectly for overridden houses when loading a game (r24182, r24181, r24179)
  • The object name from property A was not displayed in the object GUI [FS#5110] (r24178)
  • The arctic 'shops and offices' used the 'church' sprite in one of its four views [FS#5148] (r24177)
  • The object GUI did not draw objects when all objects of a class are disabled (r24176)
  • If you spent hard work on finding an available object ID, you should probably also use it instead of always 0 (r24159)
  • Town producing no cargo at all could spawn passenger subsidies (r24158)
  • The music volume was set too early during startup causing it to be not set correctly (r24155)
  • [Squirrel] Crash when trying to create an array with negative size [FS#5160] (r24153)
  • [NoAI] Do not return the last 'cached' speed of vehicles when they are stopped/crashed [FS#5157] (r24152)
  • [Script] Typo in script documentation (r24151)
  • Glass-sprite of bubble-generator was not drawn anymore for completely constructed tiles [FS#5143] (r24107)
  • Conflicting strategies for resizing the main toolbar and statusbar after resizing the main window [FS#5136] (r24089)
  • Significantly reduce the area that is redrawn for text effects [FS#5103] (r24068)
  • Do not redraw up to 25% of the map when making a new vehicle visible for the first time (r24067)
  • Do not redraw the text effect when nothing changed (r24066)

New in OpenTTD 1.2.0 (Apr 2, 2012)

  • With this release we introduce a number of major fixes like issues with aircraft freezing mid-flight, time-tabled travel at 0 km/h, wrongly skipped sprites, imported sounds, or reversing trains.

New in OpenTTD 1.2.0 RC3 (Mar 19, 2012)

  • New features:
  • Allow display of baseset textfiles (r24037)
  • Increase the station class limit from 32 to 256 (r24031)
  • Fixed:
  • After opening a text window with the monospaced font, all other text started glitching (r24038)
  • [NoAI] Reset 'is random' status of temporary variable during saveload as it is not always written to when loading an AI which means it wouldd be taking the 'is random' setting of another AI (r24033)
  • [NoAI] Make AIEngine::IsArticulated return true if the articulated callback flag is set, do not try to run the callback (r24029)
  • Pass cases down into the list of cargos [FS#5090] (r24024, r24023, r24022)

New in OpenTTD 1.1.5 / 1.2.0 RC2 (Mar 6, 2012)

  • [Script] AI used in names in API for GSOrder [FS#5088] (r24006)
  • Improve rounding when converting display speeds to internal speeds [FS#5079] (r23995)
  • Also reset the font glyph cache when switching blitters (r23992, r23987)
  • [NewGRF] Also display the cargo subtype for vehicles which have no capacity, but a subtype [FS#5076] (r23991)
  • Zero the offsets of disabled zoomlevels, so they do not influence offset calculations (r23989)
  • Invalid reads when scaling an odd-sized sprite smaller (r23986)
  • Inconsistent quit/abandon/exit game/scenario/editor strings [FS#5074] (r23985)
  • Fix the order of lights on the helipad [FS#5082] (r23984)
  • Tarred heightmaps would not be found [FS#5083] (r23983)
  • Do not load a game during UpdateWindows as that might trigger changing the blitter which triggers re-entrant locking (r23980, r23977)
  • [SDL] Palette update was done too late making switching from 8bpp -> 32bpp look ugly (r23978)
  • Sprites of different zoom levels were not always padded correctly to a common size (r23976)
  • Also save the maximum travel speed for the current vehicle order (r23973)

New in OpenTTD 1.2.0 RC1 (Feb 21, 2012)

  • New features:
  • [NewGRF] Customisable tunnel portals for rail types (r23952)
  • Timetabled maximum travel speeds for non-flying vehicles (r23947)
  • Readme/licence/changelog viewer for AI and game scripts [FS#5047] (r23936)
  • [NewGRF] 32bpp sprites in GRFs (r23897)
  • [NewGRF] Support for RealSprites with multiple zoom levels (r23890)
  • [NewGRF] Support for container version 2 (r23887)
  • Fixed:
  • Refittability should never depend on the current capacity of a vehicle [FS#5070] (r23965)
  • Do not look for missing sprites twice during startup [FS#5072] (r23963)
  • [Script] Infinite recursion within a script was not caught properly, so they could cause crashes of OpenTTD instead of the AI [FS#5068] (r23962)
  • [NewGRF] Make the properties for always/never refittable cargo types not behave incremental, but reset them on reassignment (r23960)
  • [Network] Do not allow chat messages from pre-active clients. As they have not got the savegame yet, they will not have the interface to send them either (r23958)
  • [Network] Allow sending chat to pre-active clients as the clients start accepting once they send 'map ok' to the server, which is the same moment we change their status to pre-active [FS#4990] (r23957)
  • When the population of a town changes the town view might even have to change size due to different cargo requirements [FS#5062] (r23953)
  • [NoGo] Never show GSGoal::Question() to spectators [FS#5063] (r23950)
  • Better rounding when converting internal speed to displayed speed (r23945)
  • Also list DEITY signs in the signlist in the scenario editor [FS#5061] (r23943)
  • Infrastructure cache of standard road stops would get messed up when buying a company with them (r23942)
  • Scale infrastructure cost of rail tracks by the total number of all tracks and not independently for each rail type (r23931)
  • [Script] Do not close the parameter window when a script starts [FS#4944] (r23930)
  • Do not accelerate, for smoke purposes, when you reached the track's maximum speed [FS#5053]
  • 32bpp animated blitter was optimised a bit too far regarding not needing to update the colour mapping when (re)initialising the palette [FS#5056] (r23927)
  • [NoGo] Some news messages would cause an assertion to be triggered due to a missing proper location for the viewport of the news message, so only allow building when valid data for the viewport is provided or no viewport is used [FS#5054] (r23924)
  • Consider only the middle tile of a lock for lock-infrastructure costs. The other two tiles may be owned by other companies. Also do not count the middle tile of a lock as canal, independent of whether it is build on ground or river slope (r23920)
  • [NewGRF] When determining the first refittable cargotype according to CTT order, do not rely on the GRF assigning the refit_mask property. Also check for GRFs setting the default_cargo or refittable-cargo-classes or -types properties (r23916)
  • [NewGRF] Do not test validity of cargobits using a mask of cargoslots (r23914)
  • [NewGRF] When testing whether a engine shall only carry the default cargo, check ctt_include_mask for being empty before applying cargo translation (r23912)
  • [SDL] Handle the SDL_VIDEOEXPOSE event to solve issues with SDL 1.3 (r23910)
  • [SDL] Fix keyboard-related segfault when compiling against SDL 1.3 (r23909)
  • [Makefile] Make sure bin/baseset/openttd.32.bmp is removed on make clean (r23908)
  • [Makefile] Let "make clean --dry-run" not delete Makefiles (r23907)
  • [Windows installer] OpenMSX got downloaded to and extracted in the wrong (non-existent) folder [FS#5045] (r23905)
  • Memory leak everytime one clicked a savegame in the load GUI (r23901)
  • [NewGRF] It was not possible to import sounds from a NewGRF later in the load order (r23883)
  • Removed:
  • PNG sprite loader; use 32bpp sprites in a NewGRF (r23898)

New in OpenTTD 1.2.0 Beta 4 (Feb 6, 2012)

  • New features:
  • [NewGRF] Give NewGRF defined level crossings and rail depots access to the townzone (r23866)
  • [NewGRF] New algorithm (activated via an engine flag) to determine the capacity of vehicles. This allows vehicles to better control the capacity for cargotypes which they know; and let cargo NewGRFs influence the capacity for cargos the vehicle NewGRF does not know, but which the vehicle is refittable to due to cargo classes (r23861)
  • [NewGRF] Add cargo property 1D to set the capacity multipliers when refitting vehicles, which do not use callback 15 (r23860)
  • Allow command line options -e and -g to be combined to load saves/scenarios directly into SE (r23839)
  • [NoGo] Allow querying orders of vehicles [FS#4994] (r23837)
  • Changed:
  • Do not let towns (ever) remove objects [FS#5001, FS#5002] (r23842)
  • Make signs placed in scenario editor belong to the GS. That way they are always shown in game and are not editable [FS#4999] (r23835)
  • Fixed:
  • Generate industry subsidies again [FS#5039] (r23876)
  • [NoGo/NoAI] Scripts with a bad comparator could lock up OpenTTD [FS#5004] (r23870)
  • Make the colour of the dropdown items for opening the vehicle list for which the company has no vehicles looking less horrid [FS#5020] (r23867)
  • Railtype overlays were drawn 'only transparent' on invisible bridges (r23864)
  • Inserting conditional orders for ships checked the wrong orders wrt. maximum distance (r23859)
  • Out of bounds read for slowdown parameter caused desync when railtype >= 4, vehicles were fast, and the original acceleration model was used [FS#5007] (r23855)
  • Infrastructure cache could get out of sync when overbuilding a drive through road stop (r23851)
  • When the network is lagging, you try to copy a vehicle's order but accidentally create a station order and then copy the vehicle's order (before the first command is executed) one could trigger an assertion from the pool [FS#5008] (r23849)
  • When removing road or tram from a tram+road stop, the owner of the road stop's cache was updated instead of the owner of the removed infrastructure (r23847)
  • Infrastructure count for stations was not updated properly on company takeover. And do not count buoys while loading a game either (r23844)
  • Clear NewGRF vehicle cache when their owner changes (r23841)
  • Assertion got hit when destroing a dock when a ship was loading [FS#5000] (r23838)
  • If a vehicle is not refittable to any cargo in the CTT, then pick the first refittable cargoslot (r23836)

New in OpenTTD 1.2.0 Beta 3 (Jan 23, 2012)

  • New features:
  • [NoGo] Allow to chose the goal question window's title from a (small) set of options [FS#4992] (r23827)
  • [NewGRF] Enhance some fatal NewGRF errors with the spritenumber that caused the problem (r23809)
  • Fixed:
  • Loading empty GS strings/translations failed [FS#4996] (r23829)
  • Return early from SlString() for empty strings, before doing invalid things which surprisingly do not break everything. (r23828)
  • The detailed performance rating window showed the cargo count of the current quarter instead of the last quarter like the tooltip says [FS#4972] (r23826)
  • Removal of towns with 0 population failed during map generation [FS#4951] (r23819)
  • [Network] Desync due to different NewGRF version at client and server [FS#4962] (r23817)
  • [NewGRF] Textstack was not properly used when storing parameters for the error message window [FS#4969] (r23803)
  • Game lobby gui not updated when new company information becomes available [FS#4968] (r23802)
  • Reading the UTF-8 BOM from AI/GS files on big-endian machines failed (r23801)
  • Move 'refitable to' text above custom newgrf text in build vehicle gui [FS#4958] (r23792)
  • [NewGRF] Resize text panel for parameter description if it does not fit in 4 lines [FS#4960] (r23791)
  • [NewGRF] While we can only show one error per NewGRF, fatal errors should always disable the GRF. Also give those errors precedence over other information (r23789)
  • [NewGRF] Failure to load newgrf files that use action 0 general prop 15 with a missing language file (r23788)
  • Crash due to genders used for station name in hangar string of Italian translation [FS#4965] (r23782)
  • Under certain circumstances, e.g. a single invalid order, trying to determine the next order state could end up in an infinite loop [FS#4964] (r23781)
  • [Network] Missing naming of some errors[FS#4963] (r23780)
  • Trim all control codes and the likes from strings being passed into the AI. If the AI would be displaying them later we would be showing those control codes as question marks [FS#4957] (r23778)
  • Hide the PCX screenshot format from the options window, if a 32bpp blitter is used (r23775)
  • [NewGRF] Update all cached train properties if a train vehicle enters a new railtype (r23773)

New in OpenTTD 1.1.5 (Jan 16, 2012)

  • Make default timeouts for certain network states lower and configurable [CVE-2012-0049] [FS#4955] (r23764)
  • Check whether a water tile is really empty when overbuilding it with an object [FS#4956] (r23763)
  • Missing locking causing crash in extreme case when being in the MP lobby [FS#4938] (r23752)
  • Clear the backed up orders of a removed station as well, otherwise one could create orders to a station that was never in the original backupped orders. For example a road vehicle trying to go to a buoy [FS#4876] (r23464)
  • Do not assume all industries that cut trees have tile (0,0) and wait until all tiles of an industry are completed before starting to cut trees (r23458)

New in OpenTTD 1.2.0 Beta 2 (Jan 8, 2012)

  • New features:
  • [NewGRF] Allow read-only display of NewGRF parameters, if GRF list may not be edited (r23760)
  • [NewGRF] Alternate rail type label list (r23758)
  • Make the default secondary sort method for the server list the number of clients instead of the name (r23710)
  • Try harder to sort text instead of fancy characters in the server names (r23709)
  • Make a distinction between fully zoomed in and default zoomed in screenshots [FS#4916] (r23695)
  • Add ability to adjust brightness of colour after remapping for 32bpp sprites (r23670)
  • [GS] GSGoal::Question(), to ask a question to a(ll) company(ies). It can contain random text, and at most 3 buttons from a collection of 17 (r23731)
  • Australian translation (r23730)
  • Fixed:
  • Make default timeouts for certain network states lower and configurable [FS#4955] (r23764)
  • Check whether a water tile is really empty when overbuilding it with an object [FS#4956] (r23763)
  • The check for duplicate town names was not really working [FS#4951] (r23759)
  • Missing locking causing crash is extreme case when being in the MP lobby [FS#4938] (r23752)
  • [Win32] Work around a possible deadlock when initialising threaded drawing (r23749)
  • Make vehicle variables A8 and A9 always return 0. Returning cur_image is a potential desyncer due to Action1 in static NewGRFs (r23748)
  • Also set 'info' to NULL if 'instance' dies (for both AI and GS); avoids invalid memory reads (r23746)
  • If autorefit fails, count the vehicle capacity nevertheless, if it is already carrying the right thing (r23745)
  • [NewGRF] Check the version of the right GRF [FS#4923] (r23744)
  • [NewGRF] Call CB 15E for all vehicles before actually executing any refit [FS#4906] (r23743)
  • Cheating to different climates messes things even more up than changing NewGRFs in-game so it was removed [FS#4939] (r23733)
  • When cheating into another company, the SignList was not updated [FS#4942] (r23728)
  • Reading memory of a temporary (already deconstructed) object is invalid (r23721)
  • [Script] Show the script debug window also when the game script crashes [FS#4935] (r23720)
  • Extraction of music packs failed [FS#4930] (r23719)
  • [AI] Rescanai caused crash when the AI settings of an AI was opened [FS#4936] (r23718)
  • Ships going to wrong dock location when moving the dock while the game is paused [FS#4927] (r23717)
  • The amount of goals was too low [FS#4928] (r23699)
  • Hardcode the original defaults for loading old savegames if they could totally mess with the game's behaviour [FS#4859] (r23693)
  • Infrastructure count of canals/locks/ship depots was not updated properly when a company went into bankruptcy or was taken over [FS#4921] (r23686)
  • When fitting another engine the cargo capacity of wagons could become lower, causing them to contain more than they should. This caused the cargo transfer from the replaced parts to put even more stuff in the already full wagon. Prevent this from happening by reducing the amount of cargo in the vehicle to the capacity when moving vehicles/wagons around, or when autoreplacing [FS#4912] (r23683)
  • Vehicle numbers got misaccounted when autoreplacing failed due to length checks [FS#4914] (r23681)
  • [AI] Prevent removal of the (AI) company the local player is in [FS#4915] (r23680)
  • [Script] Close the editbox of settings when changing an AI, to avoid invalid memory read/write (r23678)
  • [Script] Invalidate AI Parameters window when changing AI [FS#4909] (r23677)
  • When removing road stops the wrong tile was checked for updating the infrastructure cache [FS#4913] (r23676)
  • [Script] The 'Configure' button in the 'AI / Game Configuration' window did not get enabled when activating a GameScript (r23668)

New in OpenTTD 1.2.0 Beta 1 (Dec 24, 2011)

  • New features:
  • Ability to run a game script; a script that controls some of the logic of the game, e.g. to implement goals or tutorials (r23637)
  • Allow to place locks also on river rapids and restore rivers, if locks are deleted [FS#4872] (r23512)
  • Aircraft ranges (r23504)
  • Configurable linewidth in plots (r23497, r22292)
  • Add 'view website' button to the online content and NewGRF windows (r23495, r23492)
  • [NewGRF] Action14 node INFO->URL_ to add an url (r23494)
  • When looking for missing content, automatically select it so you can easily start the download [FS#4827] (r23468)
  • Automatically close the online content window after confirming the download with 'ok' [FS#4827] (r23467)
  • Add 'find missing content online' button to 'load savegame' and 'find network game' windows [FS#4827] (r23465)
  • [NoAI] AIStation.GetStationCoverageRadius(StationID) (r23453)
  • Infrastructure maintenance costs (r23415)
  • Allow to create subsidies for any combination of source and destination types (r23408)
  • Diagonal dragging the rail conversion tool when pressing CTRL [FS#4841] (r23338)
  • Add ability to zoom in to 2x and 4x level (r23316)
  • Settings to restrict viewport zoom levels (r23314)
  • An economy.fund_buildingssetting, to disallow funding buildings (r23303)
  • [NoAI] AITown::GetCargoGoal and AITown::GetGrowthRate to query statistics about a town regarding its growing (r23302)
  • Show on the GUI when a town grows and what the requirements for growing are (r23300)
  • [NewGRF] Properties to always include/exclude cargo types from the refit mask (r23291)
  • A monospaced sprite font for the readme reader (r23288, r23274)
  • Attempt to show a window for downloading the base graphics set if it is missing (r23244)
  • In-game (translatable) readme.txt reader [FS#4780] (r23182, r23178)
  • [NoAI] AICONFIG_AI_DEVELOPER flags to hide AI settings unless gui.ai_developer_tools is enabled (r23169)
  • Always draw fences around field tiles [FS#1824] (r23168)
  • Support for NewGRF version 8 (r23159)
  • [NewGRF] Patch/setting variable 14: get the maximum height of the map (r23158)
  • [NewGRF] Road vehicle property 23 to shorten vehicles without callback usage (r23149)
  • [NewGRF] Allow passing 32bit parameters to 60+x variables (using var 7B). Currently most useful for vehicle var 60 (r23138)
  • [NoAI] AICargoList_StationAccepting [FS#3799] (r23134)
  • [NewGRF] Property for the rail type name (r23129)
  • [NoAI] Allow AIs to query the amount of remaining operations for the current tick (r23118)
  • [NewGRF] Ambient sound effect callback (r23114)
  • Auto-refitting of vehicles during loading at a station when the vehicle allows it (r23089, r23087)
  • [NewGRF] Callback to change refit cost depending on old and new cargo type (r23086)
  • [NewGRF] Use variable 10 to enable vehicle GRFs to draw different sprites on the map and in various GUIs (r23080)
  • [NewGRF] House callback 0x148 (r23072)
  • [NewGRF] House variable 0x64 (r23070)
  • [NewGRF] Long date of last service for vehicles, also available in the purchase list (r23068)
  • A -q command line option to read a savegame, write some general info and exit (r23065)
  • [NewGRF] stringscodes 9A 19 and 9A 20 to print 'short volume' and 'short weight' respectively (r23063)
  • [NewGRF] Allow use of NewGRF text stack during callback 23 (r23040)
  • Support company colour for the airports' runways [FS#4797] (r23010)
  • [NewGRF] Allow to use offsets for all types of action5 except sea shores [FS#4795] (r23004)
  • [NewGRF] Action2 variable 0x62 to get curvature/position difference to the n-th vehicle in vehicle chain [FS#2521] (r22998)
  • [NewGRF] Allow access to other vehicles in the vehicle chain in VarAction 2 (r22997)
  • Display autoreplace status in group GUI (r22985)
  • Display profit icons for groups in the group GUI (r22984)
  • Display the number of vehicles in the group GUI also for the ALL and DEFAULT groups (r22983)
  • Allow road corners on steep slopes (r22968)
  • Allow depots, standard road stops and airports on steep slopes (r22960)
  • [NewGRF] Allow Action4 to change text IDs 0x00D1 to 0x00E0 for feature 48 (r22954)
  • [NewGRF] Extended Action1 format to define arbitrary spriteset IDs (r22926)
  • [NewGRF] Allow referencing spritesets from different Action1 in a single Action2 (r22925)
  • Allow towns to build bridges over canals and rivers (r22899)
  • Resize the tree build gui to according to tree size (r22862)
  • Conditional order depending on remaining lifetime of a vehicle (r22858)
  • [NewGRF] Allow replacing depot sprites without having to provide rail overlays (r22854)
  • Display separate ocean and canal speeds in the ship purchase list, if they differ (r22850)
  • [NewGRF] Bits 8-31 in station variable 43 (r22848)
  • [NewGRF] Also age wagons and articulated parts (r22816)
  • [YAPF] Take canal/ocean speed fraction of ships into account (r22801)
  • Progress bar for scanning NewGRFs (r22797)
  • [NewGRF] Stringcodes for printing 0-based dates, unsigned words in power units (r22779, r22778)
  • River generation (r22767)
  • [NoAI] AITile::GetTownAuthority() (r22764)
  • [NewGRF] Implement feature 04 property 18 bit 5 (r22746)
  • [NewGRF] Per vehicle custom cargo ageing period (r22713)
  • Display option to hide competitors' signs and station names [FS#4701] (r22708)
  • Add a menu entry for the sprite bounding box debuging feature in the help menu and enable bounding boxes only in conjunction with the NewGRF developer tools (r22675)
  • [NewGRF] Provide random bits in var 0x10 for callback 0x3B in all cases [FS#4690] (r22673)
  • Do not spawn explosion effects when bulldozing in paused mode. They block the view (r22670)
  • [NewGRF] Support for the land slope check callback for stations (r22659)
  • [NewGRF] Custom error messages for object callback 0x157 (r22658)
  • [NewGRF] More default error messages for the industry shape and location callbacks (r22657)
  • [NewGRF] Add water class to the 'land info of nearby tiles' vars (r22655)
  • [NewGRF] Support for ship props 14/15 (ocean/canal speed fraction) (r22639)
  • [NoAI] Add several functions to AICompany to find out performance information (r22584)
  • [NewGRF] Persistent storage for towns (r22569)
  • [NewGRF] Support for station variable 0x69 (r22543)
  • [NewGRF] Advanced sprite layouts with register modifiers (r22518)
  • Save heightmap in scenario editor (r22514)
  • Make the transparency options for industries also affect the effect vehicles created by industries [FS#4625] (r22506)
  • [NewGRF] Implement variable 18 for custom station foundations (r22453)
  • [NewGRF] When NewGRFs are disabled via Action E or due to GRM failure, also display an error in the GUI (r22444)
  • [NewGRF] Allow to filter by town of the current industry when using industry variable 0x68 [FS#4591] (r22434)
  • An advanced setting to specify the default palette to use for NewGRFs without action 14 palette information; this makes the default choice independent from the used base graphics (r22417)
  • Sort the items in the currency dropdown; separate the 'Custom' item with a horizontal line from the rest (r22312)
  • Separate default and NewGRF-supplied townnames with a horizontal line and only sort them within these groups (r22312)
  • [NewGRF] Allow docks to feature company colour (r22293)
  • Apply the same inflation to the initial loan as to the maximum loan. Note that this is no change to the economy; it only saves players some clicks when starting companies in later years (r22253)
  • [NewGRF] Make var 0x48 available in CB 0x15C (r22231)
  • Changes:
  • [Win32] Move painting the window and doing palette animation into a separate thread (r23482)
  • [SDL] Move 32bpp-anim palette animation to the draw thread instead of the single threaded bit of the game loop. This causes a speedup of up to 15% when animation is turned on with the 32bpp-anim blitter (r23451)
  • Make the company GUI somewhat smaller if there are no shareholders (r23424)
  • [NewGRF v8] Allow translating multiple languages with Action 13 (r23391)
  • Bring Squirrel to 2.2.5; besides some nice bug fixes, it mostly solves the sort() issues (r23383)
  • Move the 'default' overrides out of the base set in order to ensure they all use the same values (r23232)
  • Different directories for base sets and newgrfs. So data to base set or newgrf, and gm to base set (r23219)
  • [NewGRF v8] Do not override rail type prop 1B with prop 09 (r23166)
  • [NewGRF v8] Format of extra callback info for callback 144 (r23157)
  • [NewGRF v8] Use height level units in var 8A of callback 28 (r23155)
  • [NewGRF v8] Use height level units in nearby tile info variables (r23154)
  • [NewGRF v8] Use height level units in variable 20/A0 (r23153)
  • [NewGRF v8] Snow line height table uses values between 0x00 and 0xFF independent of number of height levels (r23152)
  • [NewGRF v8] Deprecate callback 11 and 12, and use callback 36 instead (r23151, r23150)
  • [NewGRF v8] Unify the return values of boolean callbacks, and check the results for validity (r23147)
  • [NewGRF v8] Make callback 22 return a probability to use instead of property 18 (r23146)
  • [NewGRF v8] Determine the 'first' refittable cargo of vehicles using the cargo ordering from the cargo translation table (r23145)
  • [NewGRF v8] Consider the 'default cargotype' properties as indices into the cargo translation table (r23144)
  • [NewGRF v8] Return the translated cargobit in vehicle var 42 (r23143)
  • [NewGRF v8] Unify the return values of callbacks returning D0xx texts (r23142)
  • [NewGRF v8] Invert result bit 10 of callbacks 149 and 157 to make them consistent with other slope check callbacks (r23141)
  • [NewGRF v8] Do no longer apply base cost fallbacks (r23139)
  • [NewGRF v8] New result format for callback 16 (r23137)
  • [NewGRF v8] Deprecate old-style callback results 0xFF?? (r23136)
  • Open the query string window centered as it (almost) always requires your attention [FS#4825] (r23130)
  • [NewGRF] Enforce that the default cargo type of a vehicle is one of the refittable cargos in case of refittable engines (r23077)
  • Use the currency -> euro conversion rate for currencies that have been replaced with the euro, so when the switch happens the conversion rate at that point is roughly that of the real world conversion rate (r23056)
  • Disable palette animation for pixels with alpha, as the alpha and previous colour information will be lost when the palette is animated (r23016)
  • More suitable default news settings instead of everything on 'full' (r22897)
  • Always use the DOS palette for drawing, remove the '-i' option for palette selection (r22419)
  • Make YAPF the default pathfinder for ships, do not discourage players from using it anymore (r22352)
  • Remove pixel limiter for query strings (r22343)
  • Fixed:
  • Dates cut off in the message history [FS#4896] (r23643)
  • Fix transparency for steel mill, colour translations in some arctic buildings and a wrongly replaced sprites [FS#4892] (r23639)
  • Draw PBS reservations also for bridges and tunnels with railtype overlays (r23586, r23584)
  • Add missing characters for certain languages and the large font [FS#4870] (r23582)
  • Extending a path reservation starting at a partially reserved rail station could fail [FS#4888] (r23564)
  • [NoAI] ScriptSign::BuildSign() returned wrong result if the sign name was too long [FS#4886] (r23516)
  • Drawing of newspaper headlines used different padding than the initial sizing of the window [FS#4884] (r23509)
  • [Squirrel] Provide a proper error message when the _cmp meta-function does not return an integer (r23496)
  • Make autoreplace, autorenew, cloning and autorefit check all articulated parts of a vehicle to find a shared cargo subtype (r23487)
  • In case you already have orders, ignore the vehicles when adding an extra order [FS#4770] (r23484)
  • Replace OS error messages with internal error messages when that is possible [FS#4594] (r23480)
  • Clear the backed up orders of a removed station as well, otherwise one could create orders to a station that was never in the original backupped orders. For example a road vehicle trying to go to a buoy [FS#4876] (r23464)
  • Do not assume all industries that cut trees have tile (0,0) and wait until all tiles of an industry are completed before starting to cut trees (r23458)
  • Mark company window dirty when moving a rail engine creates or deletes a train (r23454)
  • Some airport functions did not take the layout into account resulting in wrong noise levels or nearests towns [FS#4764] (r23441)
  • Perform checks for NFORenum/GRFCodec in configure, including a version check so a proper error can be given when a too old GRFCodec or NFORenum is used [FS#4867] (r23438)
  • Recolouring of some animated colours from the Windows (=least consistent) palette went wrong [FS#4868] (r23433)
  • Prevent windows to be resized beyond the bounds of the (main) window [FS#4842] (r23429)
  • [NoAI] The AIEvent.ET_COMPANY_NEW was only triggered if a company named itself, which seems like a very odd place to do so. Trigger it when the company is created instead (r23398)
  • Bring some more order in the ordering of the windows, e.g. do not let a save or load dialog get hidden by a news message [FS#4709] (r23336)
  • Road vehicle purchase info failed to display vehicles carrying no cargo [FS#4820] (r23334)
  • Abort building/moving HQ when clicking on the button again, just like when building rail, stations, etc [FS#4851] (r23331)
  • Change the centre of train vehicles to depend on the vehicle length instead of being fixed at 4/8th of the original vehicle length to make sure shortened vehicles do not block tiles they should not block [FS#2379,FS#3569] (r23290)

New in OpenTTD 1.1.4 (Dec 5, 2011)

  • Savegames made with the Catalan town name generator would trigger a 'savegame corrupt' exception [FS#4866] (r23418)
  • [Network] Do not send chat messages to clients that have not joined yet [FS#4826] (r23337)
  • Assertion could be triggered in case a station was removed just after a vehicle delivered cargo to it [FS#4849] (r23312)
  • Pathfinders go haywire when you build a lock over a ship going perpendicular to the axis of the new lock [FS#4845] (r23284)
  • [NewGRF] Prevent against writing data for unknown fonts (r23283)

New in OpenTTD 1.1.4 RC1 (Nov 21, 2011)

  • 3-column view of NewGRF GUI had too much space for certain font sizes (r23251)
  • Ignore special characters, such as the train 'character', when determining a fallback font (r23237)
  • [NewGRF] Make train var 0xF3 consistent with TTDPatch (r23231)
  • Invalidate build vehicle window when changing the setting for wagon speed limits (r23211)
  • [NoAI] Hide AIObject from the documentation as it cannot be used (r23204, r23201)
  • [Network] Unstable sorting in the network list when two servers had the exact same name [FS#4829] (r23202)
  • Oil rigs that 'expired' did not get removed from the station list [FS#4822] (r23199)
  • [Squirrel] replace custom qsort by std::sort to fix stack overflow [FS#4830] (r23190, r23187, r23186)
  • Do not display railway fences between track and waypoints [FS#4627] (r23163)
  • [NoAI] AIOrder did not handle implicit orders correctly in all cases [FS#4823] (r23135, r23133)
  • When any keys on the on-screen keyboard were pressed the text cursor disappeared (r23132)
  • [NoAI] AIOrder::IsCurrentOrderPartOfOrderList return false for valid vehicles and crashed for invalid ones (r23131)
  • [NoAI] calling require() to include a file gave you 100.000 opcodes for free (r23117)
  • Allow accessing the server's client info as well in the admin network [FS#4813] (r23115)
  • [NewGRF] Run StartupEngines() if NewGRFs changed during loading a savegame, just like it is running when NewGRFs are changed during a game (r23083)
  • Account for snow line table when determining the snow line for building houses (r23082)
  • [NewGRF] If a NewGRF overrides a default house the minimum start year for that house was set to 1930 [FS#4794] (r23059)
  • [NoAI] AIOrder::GetOrderCount() did not hide implicit orders (r23057)
  • [NewGRF] When vehicles break down, update the image cache after changing the vehicle state (r23050)
  • Use the same forest-check for the vegetation-map colour as for nearby station names [FS#4810] (r23049)
  • Check that the selected font size is valid the font face in use and choose the nearest size to that selected if not. Font metrics should then just work (r23038)
  • [NewGRF] Strip newlines from NewGRF strings that should not have newlines, e.g. the NewGRF's name [FS#4769] (r23036, r22970)
  • The last custom playlist items went lost when the files in the .obm are not contiguous [FS#4776] (r23035, r23034, r23033)
  • Palette conversion windows to DOS for light house / stadium animated colour was mixed up (r23032)
  • For the admin 'bots' there was no distinction between bankruptcy and manual removal of companies even though the API suggested that [FS#4804] (r23031)
  • Always show a chat message and send an admin packet when a new company is made [FS#4796] (r23030)
  • Pass bottom of dropdown item rather than bottom of dropdown window, so the dropdown gets drawn better with different font sizes (r23018)
  • AI backlog was to short to fully display the backtrace of some AI crashes [FS#4798] (r23012)
  • When the last used server is deleted from the list also clear the last used server if it is the same [FS#4791] (r23011)
  • [NewGRF] Make sure temporary storage is cleared before test and exec runs for DoCommands so NewGRF callbacks cannot change the result between the runs (r22996)
  • [NewGRF] Tile was cleared before the object-placement callback was run, resulting in possible differences in test and exec run [FS#4775] (r22994)
  • [NoAI] Do not return ERR_UNKNOWN when the vehicle would become too long (r22988)
  • Draw buoy sprite without outline on the map, fix minor issues with original graphics (r22974, r22973, r22971, r22962)
  • The savegame description and loading of savegames would crash with savegames from a patched stable (which did not bump the savegame version) [FS#4778] (r22958, r22957)
  • Guard from reading outside the silly name list (r22955)
  • [NewGRF] Properly limit the length of strings in a choice list (r22952)
  • [NewGRF] Do not call CB 32 for disaster, effect vehicles or aircraft shadows/rotors (r22947)
  • [NewGRF] Crash when accessing vehicle var 44 for a non-front aircraft [FS#4781] (r22946)
  • Calculate the size of the start/stop vehicle button correctly (r22941)
  • [OSX] Various MacOSX 10.7 issues causing OpenTTD to not work [FS#4751] (r22921, r22895, r22893, r22889)
  • [NewGRF] Properties for feature 0x05 were not zeroed for each NewGRF, thus waterfeatures could glitch when the properties were set by a previous NewGRF and the NewGRF assumed the properties to be unmodified (r22918)
  • Old TTO/TTD savegames could get non-stop via orders upon savegame loading, even when those orders did not exist back then. This 'conversion' feature is something for TTDPatch and old OpenTTD savegames [FS#4716] (r22914)
  • The icon would (almost) never be shown for SDL builds [FS#4617] (r22910)
  • The name of the heightmap glitches in the 'play heightmap' window (r22902)
  • Locks would be incorrectly assembled (r22108)

New in OpenTTD 1.1.3 (Sep 16, 2011)

  • Prevent authentication bypass for the admin port when a new game is started [FS#4771] (r22934)
  • TTO savegames with any aircraft not in an hangar caused crashes during load (r22915)
  • Windows 2000 and XP without service pack 3 must use the win9x binary/installer; the newer MSVC compiler of the compile farm does not support those versions of Windows anymore [FS#4749] (r22909)

New in OpenTTD 1.1.2 (Aug 15, 2011)

  • Some corrupted savegames could crash OpenTTD instead of showing the 'savegame corrupted' message [FS#4717] (r22737, r22736)
  • [NewGRF] Triggering NOT_REACHED when playing with a NewGRF that supplies genders/cases for a language that was not installed [FS#4718] (r22735)

New in OpenTTD 1.1.2 RC1 (Jul 25, 2011)

  • Changed:
  • [NewGRF] Only allow access (via hotkey and menu) to the bounding box visualisation when NewGRF developer tools are enabled (r22675)
  • Fixed:
  • [NewGRF] Disallow accessing variable 1B in network games due to desync reasons (r22682)
  • Switching from a red to a white highlight (by switching to another tool) without switching the highlight mode (HT_RECT etc.) did not mark the selection dirty [FS#4670] (r22649)
  • [NewGRF] Parameters from NewGRFs were not properly parsed in all cases [FS#4599] (r22648, r22630, r22629, r22628, r22627)
  • GetSection() does not return a LockPart [FS#4678] (r22645)
  • [NewGRF] Disallow building NewObjects on water tiles owned by another company (r22643)
  • [NewGRF] Disable the 'set parameters' button in the NewGRF GUI, if the GRF specifies to have no parameters and one would not be able to set any parameters anyway (r22642)
  • Keep the previous owner of the upper and lower lock parts if they are built on existing water (r22638)
  • [NewGRF] Airports should not expose the tile specific random bits of the north tile. Only airport tiles should access those (r22636)
  • [NewGRF] Correctly reseed random bits of industries and industry tiles (r22635, r22634)
  • [NewGRF] Implement variables 25 and 7F for railtypes (r22633)
  • [NewGRF] Additional text in fund industry window is NewGRF supplied and thus should have a default colour (r22631)
  • Also initialise _old_vds with newgame settings; TTD savegames do not contain these settings [FS#4622] (r22626)
  • Do not zero the orders of disaster vehicles when converting savegames [FS#4642] (r22625)
  • When closing an AI company the local player cheated to, we need to cheat him to another company [FS#4654] (r22624, r22623)
  • When closing down companies their shares in other companies must be sold even if share trading is disabled at that point of time (r22622)
  • When asking the user to confirm an unsafe unpausing, there is no need to execute a command if 'no' is choosed. This also prevents crashing when clicking unpause while the confirm window is shown (r22621)
  • Enforce refit orders to be 'always go to depot' orders; service-only and stop-in-depot orders make no sense with refitting [FS#4651] (r22620)
  • Consider the size of the vehicle sprite for the lineheight in the company GUI. This also makes the widget containing the sprite not skip drawing it, if the bounds of the widget are outside of the drawing area though the sprite actually needs drawing [FS#4662] (r22619)
  • When changing difficulty settings over the network, do not just reopen the difficulty window if any game options window is opened; instead invalidate them properly [FS#4653] (r22618, r22617)
  • [NewGRF] If callback 33 returns a value out of range, no sound effect shall be played [FS#4656] (r22614)
  • Use rotated heightmap sizes for reporting scaling problems [FS#4663] (r22608)
  • Do not show cargo accepted/produced in the new station window when no tiles are selected (mouse hovering a window or toolbar) [FS#4647] (r22595, r22593)
  • Add active NewGRFs to the list of available ones when selecting the empty preset [FS#4644] (r22594)
  • Reading of heightmaps with uncommon BMP formats failed due to uninitialised variables [FS#4645] (r22592)
  • PBS order forecasting modified the current order index in case of a goto-nearest-depot order and no depot could be found [FS#4641] (r22589)
  • Remove BaseStorageArrays from _changed_storage_arrays on destruction (r22583, r22551)
  • Do not increment STL iterators after they have been invalidated (r22582)
  • Do not lower the arrow buttons in the NewGRF/AI parameter windows if they are clicked when disabled (r22553, r22499)
  • Clear airport persistent storage on construction/removal of airports (r22552)
  • Possible crash when opening the airport build window for the first time [FS#4619] (r22538)
  • Replace the half small airport structure on the intercontinental airport with some grass [FS#3494] (r22537)
  • Documentation omission regarding admin protocol [FS#4632] (r22536)
  • [NoAI] Doing rescan_ai in a game with running AIs caused a crash [FS#4631] (r22534)
  • Do not create an implicit order if the current order is the first order in the order list and we visit the station of the last entry of the order list (r22532)
  • MinGW 64 related compilation issues [FS#4623] (r22522, r22491, r22490, r22489)
  • The layout selectors of the airport build GUI did not latch properly (r22497, r22495)
  • Callback result for airport layout name was incorrectly used (r22496)
  • Airport preview sprite can depend on the layout, so update the cached SpriteID when the layout changes (r22494)
  • Engine IDs for coal and mail wagons were swapped in the TTO savegame conversion [FS#4622] (r22487)
  • The caption of centered windows could be moved out of the main window and thus become inaccessible when resizing the main window (r22485, r22484)
  • No client error packet was sent to the admin bots [FS#4585] (r22384)

New in OpenTTD 1.1.1 (Jun 2, 2011)

  • Change: Automatic orders are better called implicit orders as no real order influencing path finding is added (r22474, r22473)
  • Fix: Only try to insert implicit orders for ground vehicles. Aircraft may reach unscheduled terminals when skipping orders [FS#4624] (r22492)

New in OpenTTD 1.1.0 (Apr 1, 2011)

  • Fix:
  • In the scenario editor you could build a ship depot using the appropriate hotkey. Removing that depot causes an assertion to trigger [FS#4558] (r22266)

New in OpenTTD 1.1.0 RC3 (Mar 21, 2011)

  • Fix: New game settings were applied to early when starting a game via a heightmap. [FS#4557] (r22259)
  • Fix: Do not resort town, industry and signs list directly in OnInvalidateData(). There might be a scheduled rebuild which needs execution first. So, only set a trigger for resorting [FS#4546] (r22249, r22248, r22247, r22246, r22245, r22244, r22243, r22242, r22241, r22236, r22228, r22227, r22226)
  • Fix: [NewGRF] Object variable 0x48 was not available in callback 0x15C (r22231)
  • Fix: Compilation when compiling with --disable-ai (r22222)
  • Fix: When downloading a file via HTTP failed mid-way and OpenTTD fell back to the old system the partial downloaded amount would be counted twice [FS#4543] (r22208)
  • Fix: The 'center' (for movement) of vehicles is (currently still) always at 4/8th original vehicle length from the front, so trains should stop at the same location regardless of the length of the front engine [FS#4545] (r22206)
  • Fix: Make the base costs for building and demolishing NewObjects also local to the individual NewGRFs (r22204)
  • Fix: Removing a station order could stop when removing first automatic order (r22200)
  • Fix: Invalidate the object build window when using the date cheat (r22193)

New in OpenTTD 1.1.0 RC2 (Mar 7, 2011)

  • Following a vehicle with a very high VehicleID was impossible (r22181)
  • [NewGRF] Memory leak if an industry NewGRF had more than one prop A or 15, or a station NewGRF had more than one prop 09 (r22175, r22165)
  • [NewGRF] Disable a station NewGRF when it contains an unterminated spritelayout in action0 prop 08 instead of crashing (r22164)
  • Building a station part adjacent to both an existing station and a rail waypoint failed [FS#4541] (r22163)
  • No update of NewGRF window when unknown GRF name becomes available [FS#4533] (r22162)
  • [NewGRF] Industry prop 0x11 is 4-bytes long, not 3 bytes (r22157)
  • Stations/infrastructure were not properly sold on some clients during bankruptcy [FS#4529] (r22154)
  • The Greek translation did not work as it breached the 200.000 bytes 'limit' for loading language files [FS#4536] (r22153)
  • Windows video driver crashed when it could not go to full screen at the resolution of the configuration file when starting OpenTTD [FS#4521] (r22149)
  • Do not run savegame conversion during SlNullPointers; the pointer might not be converted or be NULL at that point (r22146)
  • Some valid keycodes were ignored along with the invalid ones (r22142)
  • When commands need to invalidate windows, process these events asynchronously before the next redraw. Calling window code directly from command scope uses wrong _current_company and might issue nested DoCommands() which interfer with the running command [FS#4523] (r22141, r22140, r22135, r22134)
  • [NewGRF] Skipping only the invalid part of an action14 failed, the rest of the action was skipped instead (r22138)
  • Spectators had crashes when closing buoy windows (r22131)
  • Build-station-window showed wrong selection when reopening [FS#4530] (r22128)
  • Canals would get drawn as land in the smallmap when using the owner window (r22127)
  • The animation-ness of two goldmine tiles were swapped, causing the wheeltower to not work properly, and the bottom corner to show the wrong sprite [FS#4528] (r22125)
  • CommandQueue::Pop() did not update 'last'; popping the last item caused the queue to disconnect unless there was only one item [FS#4522] (r22123)
  • When a NOT_REACHED in saveload can be reached due to an invalid savegame, use SlErrorCorrupt instead. In other words, do not crash but show an error message (r22122)
  • In case of high frame_freq one could get commands executed after a new network game was started (r22121)
  • [NoAI] Prevent AIs from getting consistently over their allowed amount of operations by subtracting the amount they went over 'budget' from the budget for the next 'tick' (r22120)
  • The refit window was not correctly updated after selecting with Ctrl+Click [FS#4525] (r22118)
  • CanRemoveRoadWithStop() failed for _current_company = OWNER_TOWN, and for OWNER_NONE-owned road (r22117)

New in OpenTTD 1.1.0 RC1 (Feb 21, 2011)

  • New features:
  • [NewGRF] Test all possible industry layouts during construction and prospecting [FS#4131] (r22012, r22010)
  • Wheel scrolling in the console (r21982)
  • Console command to reset the engine pool. It removes the traces of engines which are no longer associated to a NewGRF, and can be used to e.g. 'fix' scenarios which were screwed up by the author. You can only use it when there are no vehicles in the game though (r21975)
  • Add a setting to enable/disable funding local road reconstruction (r21974)
  • Introduce 'minimal' number of industries as a replacment for the old 'none' setting in the new game window (r21969)
  • Changes:
  • When loading old savegames with long trains set the maximum train length to the length of the longest train (r22061)
  • Always report mammoth trains are disabled to NewGRFs, and allow the maximum train length to be modified in multiplayer as well [FS#4471] (r22004)
  • Fixed:
  • Remove invalid keycodes when reading hotkeys.cfg [FS#4510] (r22094)
  • The server list did not get sorted with one item in it, so the 'position in the list' variable was never updated causing problems when using the keyboard shortcuts for scrolling [FS#4514] (r22093)
  • When deleting towns, only relocate objects during DC_EXEC (r22087)
  • [Windows] If fullscreen fails with current resolution, use desktop resolution [FS#4489] (r22081)
  • The owner view of the smallmap was not updated after a company colour change (r22079)
  • Maximum train length interfered with wagon replacement when wagon removal was turned on [FS#4499] (r22078)
  • NewGRFs with invalid multi-tile houses could cause a valid 1x1 house following it to be seen as multi-tile, causing crashes [FS#4501] (r22075)
  • Immediately update the train weight when you change the multiplier for train cargo weight (r22073)
  • Some hotkey names in hotkey.cfg for the scenario editor toolbar were completely bogus (r22071)
  • Crashes when disconnecting after requesting the map [FS#4503] (r22070)
  • Delete all savegame packets, not just the first one (r22069)
  • Return 'connection lost' instead of 'okay' when SendPackets closed the connection, so we do not try to do anything else with the closed socket (r22068)
  • Do not hold a mutex when sending packets and thus possibly closing the connection as that wants to acquire the mutex again (r22067)
  • Verify we can allocate an Order, OrderList, CargoPacket, CargoPayment, and others before we actually try to do so (all corner cases) [FS#4468] (r22066, r22057, r22047, r22042, r22040, r22033, r22031, r22026, r22025, r22024, r22023, r22022)
  • Crash when disconnecting and reconnecting while the server is still saving the savegame [FS#4497] (r22064)
  • Memory leak when saving with LZMA or zlib fails mid-way (r22062)
  • Make the send chat message window follow the position of the status bar (r22059)
  • Metric and imperial HP are not the same. As imperial HP are used internally, set a conversion rate for metric HP [FS#4408] (r22056)
  • [Squirrel] Some invalid squirrel code caused the squirrel compiler to crash [FS#4490] (r22055)
  • The land area information window was not updated after a language change (r22053)
  • Roads under road stops would get a wrong owner after overbuilding (r22051)
  • In ancient savegames, e.g. TTO savegames, non primary vehicles (wagons and such) could have unitnumbers or even orders. However, these orders would not be updated when a station is removed. As such some savegames have wagons with current orders to invalid stations which triggers trouble in the load conversion. So, trash any orders/unitnumbers a non-primary vehicle has [FS#4496] (r22050)
  • [NewGRF] Company 0 does not always exist, so put temporary vehicles in a valid company (r22048)
  • Make sure order indices stay in range when copying, sharing, unsharing or deleting all orders [FS#4487] (r22046)
  • Update the consist cache when a part of a train is flipped in the depot [FS#4493] (r22044)
  • Invalidate the right windows when a part of a train is flipped in the depot (r22043)
  • Tab completion in chat did not cycle through all possible options (r22038)
  • Crash when watching the vehicle view of a vehicle that has multiple sequential nearest depot orders (or consists of a single nearest depot order) when there is no depot with index 0 [FS#4488] (r22034)
  • The server list got not resorted/redrawn after NewGRFs were downloaded [FS#4482] (r22029)
  • When paused and having the allowed actions while paused setting on 'no actions' cheating money would fail [FS#4479] (r22016)
  • Only show one AI per unique ID instead of all versions in the output of 'openttd -h' (r22007)
  • Smoke/sparks of trains would be shown under bridges, or rather through bridges [FS#4480] (r22006)
  • When the difference between force and resistance is smaller than the mass(*4) there would be no acceleration anymore, even when at higher (or lower) speed the force and resistance balance out better [FS#4473] (r21997)
  • [YAPF] Under some circumstances vehicles could be lost [FS#4472] (r21996)
  • [NewGRF] Make computations of closest-land/water-distances handle waterish tiles more correctly (r21994)
  • When building a lock on dry land costs for clearing water were deducted rather than for building canals (r21993)
  • AIs trying to change the AIOF_GOTO_NEAREST_DEPOT flag for existing orders triggered an assert. Explicitly forbid this as precondition for SetOrderFlags [FS#4467] (r21992)
  • The share/copy-orders-cursor was not updated to refer to the new vehicle when it got autoreplaced/-renewed [FS#4466] (r21991)
  • Vehicle status bar glitches on speed changes (r21989)
  • Scrolling of the console in pages used wrong line height and scrolled too much (r21979)
  • Redraw the town authority window after modifying town authority settings (r21973)
  • Crash when a multiplayer company goes bankrupt with 'you' in it [FS#4464] (r21970)

New in OpenTTD 1.1.0 Beta 5 (Feb 7, 2011)

  • New features:
  • GUI setting to disable reversing at signals (r21962)
  • Not loading and not unloading is now possible (r21961)
  • Changed:
  • [NewGRF] Disable the flipping of train engines/wagons in the depot by default for NewGRFs [FS#4462] (r21966)
  • Show the length of vehicles in tiles, instead of half tiles in the depot (r21960)
  • Replace longbridges settings with custom maximum bridge and tunnel length setting (r21959)
  • Randomize the vehicle a small UFO targets, do not use the one with lowest index (r21949)
  • Fixed:
  • Do not count the number of vehicles but the length of vehicles to (configurably) limit train length [FS#4461] (r21960)
  • [NewGRF] Reset the carry flag every 4 bytes in Action 6 when adding more than one variable (r21951)
  • Road vehicle was moved under the bridge when it was destroyed by an UFO while on a bridge (r21948)
  • Crash when converting a savegame with vehicles crashed in a tunnel entry, or with vehicles reversing there (r21947)
  • Funny behaviour when a road vehicle reverses while overtaking, so abort the overtake attempt when reversing the road vehicle [FS#4447] (r21946)
  • Not all vehicles should be tested to be inside a tunnel upon savegame load [FS#4460] (r21940)
  • Do not remove existing road/tram bits when overbuilding stops of the opposite road type [FS#4457] (r21936)
  • Allow to overbuild road stops which are built over trams (r21935)
  • Automatic orders behave now stable wrt. service orders and are not added or removed depending on the need of servicing [FS#4440] (r21933)
  • The town window would not be invalidated in the scenario editor if the ground changed and thus the required cargos for town growth [FS#4554] (r21929)
  • Converting an expensive rail type to a cheap one could give more money than removing and rebuilding cost (r21919)
  • Languages improperly sorted in the 'start server' window [FS#4443] (r21918)
  • the minimum speed needed for (realistic) acceleration to work properly can sometimes be more than the (temporary) maximum speed causing Clamp to 'fail'. Make sure that the minimum speed always overrules the maximum speed [FS#4442] (r21916)
  • Include the capacity of non-refittable vehicles in the refitted-capacity, if their cargo matches (r21904)
  • Do not count articulated parts when passing the number of vehicles to refit to the command. That may exceed 8 bits (r21902)
  • [NoAI] Hide automatic orders from AIs as they have no way of dealing with them (r21900)
  • Do not show a vehicle selection in the RefitWindow for refit orders. You cannot select anything anyway (r21899)
  • Using a pointer-iterator and adding things (thus reallocating) to the iterated array caused OpenTTD to crash on invalid pointers [FS#4438] (r21898)
  • Only some scenarios from the main scenario folder and no heightmaps could be started in the 'start server' window [FS#4421] (r21892)
  • Crash when scrolling outside of the main window (with some video backends) [FS#4434] (r21889)
  • [NewGRF] String codes 0x80 and 0x81 were broken since the typechecking of string parameters [FS#4422] (r21885)
  • When a train after reversing ended at the last bit of a bridge ramp and directed outside the bridge, it could still have track set to TRACK_BIT_WORMHOLE (r21880)
  • When a single-vehicle train was reversed while on a slope, its GOINGUP/DOWN were not swapped (r21874)
  • Removed:
  • Settings for vehicle speed in the vehicle view, long date in status bar, drawing of bridge pillars, support for depot orders, time tabling and joining of stations upon building (r21958, r21957, r21956, r21955, r21954)
  • The non-uniform stations setting; it has been broken for over a year, and thus not used [FS#4456] (r21953)

New in OpenTTD 1.1.0 Beta 4 (Jan 24, 2011)

  • New features:
  • [NewGRF] Rail type property to influence sorting of rail types in the drop down list [FS#4394] (r21866)
  • [Network] Console command to change the password of other companies for servers [FS#4368] (r21855)
  • [NewGRF] Introduction dates/required types for rail types; e.g. introduce a particular rail type in 1960 (or when a vehicle using it is introduced), but also allow limiting its introduction to only happen when the required railtypes are available [FS#4393] (r21842)
  • Limit vehicle lateness to the length of a full timetable cycle, e.g. when a cycle takes 50 days and the vehicle is 65 days later reduce the lateness to 15 days (r21832)
  • After building a road or tram bridge/tunnel, connect it to any existing road or tram (r21778, r21777)
  • Display NewGRF object sprites during object picking (r21772)
  • Display NewGRF station sprites during station picking (r21755)
  • Changes:
  • Allow LMB scrolling with the mouse outside of the extra viewport instead of canceling scrolling when going slightly over the edge (r21838)
  • Only show rail/road types that will eventually be available in-game. For example do not show trams when there is no tram NewGRF loaded (r21817)
  • Keep aqueducts and road/tram tunnels and bridges after removing a company (r21780)
  • Fixed:
  • Distant-join station would build at the wrong location when having persistent building turned on and selecting a 'second' location for the station tile [FS#4430] (r21864)
  • Slowing down of trains was done by reducing the speed by 10%, but also when you are just 1% too fast, so limit the slowdown till the new maximum speed [FS#4423] (r21847)
  • Left-mouse-button dragging would switch over to other viewports instead of staying locked to the viewport you started on [FS#4419] (r21837)
  • When a train was reversed while inside a tunnel/bridge, it would not have (re)set the GOINGUP/DOWN bits after leaving the tunnel/bridge (r21836)
  • Desync debug savegames might not be actually saved in case threading is enabled, which is enabled by default [FS#4427] (r21833)
  • Service orders for trains/aircraft would (sometimes) not get a time when autofilling [FS#4414] (r21831)
  • Crash with the small map window on big endian platforms [FS#4417] (r21830)
  • The expectations from the 'always build infrastructure' setting name/description did not match the behaviour [FS#4007] (r21826)
  • Allow dragging of combo signals (again) [FS#4378] (r21816)
  • [YAPF] Apply a pathfinder penalty for back of one-way path signals so those arenot preferred over other possibilities [FS#3908] (r21815)
  • Check GRF version from action 8, and disallow usage of GRFs with versions above 7 (r21814)
  • Crash when displaying the owner view [FS#4411] (r21813)
  • Do not create automatic orders when there are no manual orders, and remove unreached automatic orders when reaching an ordered waypoint or depot [FS#4404] (r21809, r21808)
  • Loading a TTO savegame failed after loading a TTDP savegame (r21799, r21798)
  • The size (in characters) of the string inputs was too small for loading some TTD savegames (r21797)
  • Drive through road stop state was not properly converted from TTDPatch savegames [FS#4398] (r21796)
  • Broken usage of GetTileOwner() caused wrong conversion of old savegames (r21793)
  • Terraforming limit was off-by-one when terraforming a single tile height [FS#4407] (r21791)
  • TTDPatch savegames can have train waypoints encoded as buoys [FS#4398] (r21790)
  • When the font misses the fallback character '?', use the sprite font's '?' instead [FS#4405] (r21789)
  • Crash due to invalid rail station width and height data stored in TTDPatch savegames [FS#4398] (r21786)
  • Crash when converting savegame with custom waypoint name (r21784)
  • Diagonal tile iterator failed for A0 selections [FS#4396] (r21768)
  • Do not limit tile clearing during bankruptcy [FS#4397] (r21767)
  • PBS reservation was not shown on road crossings with NewGRF railtypes [FS#4369] (r21765)
  • Removed:
  • The 'stopall' console command, as its functionality was broken. Group start/stop commands can be used instead [FS#4409] (r21804)

New in OpenTTD 1.1.0 Beta 3 (Jan 10, 2011)

  • Feature:
  • Configurable limit amount of tiles that can be cleared/terraformed by a company [FS#4331] (r21728)
  • Show a list of companies in the owner legend and allow them to be toggled for visibility (r21720, r21718)
  • Console command 'list_ai_libs' to get a list of recognized AI libraries [FS#4372] (r21703)
  • Allow changing the AI configuration in the scenario editor / in game [FS#4362] (r21696)
  • Change:
  • Tune 'realistic' acceleration even more to make more trains reach their top speed, and make it behave more like TTDPatch (r21712)
  • Display the minimum height of the tile in the LandInfo window instead of the height of the northern corner. So it is more useful for NewGRF and AI developers, and maybe more transparent for players (r21711)
  • Fixed:
  • The diagonal iterator would iterate twice over some tiles [FS#4395] (r21747)
  • [NewGRF] Canal variable 83 accessed water random bits also for non-water tiles (e.g. watery industries or objects) (r21746)
  • [NewGRF] Canal variable 80 shall return consistent heights within a lock (r21745)
  • Allow Ctrl+Clicking automatic orders for scrolling to their destination (r21744)
  • Coast tiles were not drawn under bridges [FS#4386] (r21743)
  • Make clearing refit orders work again [FS#4388] (r21739)
  • Start loading when cur_order_index points to the destination station, i.e. after deleting not-reached automatic orders [FS#4384] (r21738)
  • A loading order was also marked as 'not part of orders' when the order before the current order was deleted (r21737)
  • Admin bots were not always notified of password changes [FS#4377] (r21727)
  • Vehicle sprite was cached into a 16 bit variable, causing incorrect sprites to be displayed (r21709)
  • [NewGRF] Report TTDPatch flag 4A (newobjects) as set (r21708)
  • The old ship pathfinder is too stupid to provide 'lost' notices; it would even get lost while following its own path [FS#4370] (r21706)
  • Do not perform any more checks after the connection is closed [FS#4374] (r21704)
  • Changing AI settings ingame was impossible when the difficulty level was other than custom (r21694)
  • Due to an error in the Debian changelog building of Debian/Ubuntu packages failed (r21682)

New in OpenTTD 1.1.0 Beta 2 (Jan 2, 2011)

  • New features:
  • Command logging using the admin interface (r21668)
  • Concept of automatic station orders; add stub orders for intermediate stations and remove them when not visiting them anymore. This allows you to see what trains visit a station without actually having to order a vehicle to stop at all stations (r21642)
  • Added:
  • [NoAI] AIEventTownFounded (r21664)
  • [NoAI] AIRail::GetName() to get the name of a railtype (r21663)
  • [NoAI] AITown::IsCity() so AIs can find out which towns grow faster than others (r21654)
  • Changed:
  • Do not show price to build a bridge in the scenario editor as they are free to build there [FS#4358] (r21673)
  • Do not highlight tile when selecting a vehicle to clone or an order to skip to (r21616)
  • Fixed:
  • Estonia introduced the Euro in 2011 (r21670)
  • Autofill timetable had side effects in test mode, possibly causing desyncs in MP [FS#4354] (r21660)
  • Cargo payment graph was not properly invalidated when payment rate changed [FS#4351] (r21658)
  • Use a bool instead of uint8 to store a bool and use the dedicated accessor function when reading boolean settings [FS#4345] (r21656)
  • Infinite loop in the road pathfinder due to bouncing around in an 'one way' trap; two one ways pointing towards eachother making it impossible to leave [FS#4338] (r21651)
  • Make '[centre|main] view' consistent, and make '[main|global] view' consistent [FS#4339] (r21650)
  • Newly created skip-to order was created at wrong place (r21633)
  • Ships with the old pathfinder would easily show up as lost, even when it would eventually find a path. Now also the distance from the 'end' of the pathfinding run to the destination is compared to the current distance to the destination; if the distance to the destination at the end of the pathfinder run is less than the current distance from the destination the ship will not be marked as lost. This means that the ships with the old pathfinder will less likely get marked as lost, but due to the design of the old ship pathfinder there 'lostness' is merely a best guess. When you still get a lost message you need to build buoys to guide the ship pathfinder [FS#4325] (r21631)
  • Version detection of subversion branches and tags got broken (r21630)
  • Crash under certain circumstances when using autorail [FS#4327] (r21619)

New in OpenTTD 1.1.0 Beta 1 (Dec 27, 2010)

  • New features:
  • [NewGRF] Variable 7B for accessing 60+x variables while taking the parameter from the accumulator (r21604)
  • Allow to refit only the selected part of a train consist (r21567)
  • Store the used OpenTTD version, base graphics set, NewGRFs and AIs in the PNG screenshots (r21558, r21553)
  • Make the delay of the chat messages timing out unrelated to the number of passed game days, i.e. do not stop aging chat messages when the server is paused, and make the timeout user configurable [FS#532] (r21513, r21512)
  • Vehicle lost messages for ships and road vehicles [FS#1956] (r21511, r21510)
  • Diagonal tile clearing and terraforming by pressing Ctrl [FS#730] (r21500)
  • [NewGRF] Use the station graphics property to determine a fallback for the depot sprites [FS#4279] (r21473)
  • Add explicit make 'shared orders' an option in the orders menu (r21464)
  • Make it more clear that you are stopping a shared order, and make it possible retain the order list upon unsharing [FS#3711] (r21461)
  • Hotkey Ctrl+W for returning to the main menu [FS#3217] (r21459)
  • Scroll to the inserted order [FS#4215] (r21457)
  • Building while paused always works in the scenario editor [FS#1521] (r21430)
  • Perform the compression of savegames to send to the client asynchronously. This will reduce the lag of the other clients to the time it takes to make the memory dump and it will speed up downloading the map as the download starts earlier (possibly with a slightly lower bandwidth due to slow compression) [FS#4284] (r21399)
  • Do not store savegames to disk when transferring it from the server to a client (r21398, r21397)
  • Use alphabetical order when sorting industries by type at the industry directory window (r21389)
  • Allow entering of the new year in a text box when cheating the year [FS#4289] (r21388)
  • Support for limiting the amount of (accepted) incoming data for a server (r21363)
  • Natural sorting of strings using ICU [FS#4214] (r21344)
  • [NewGRF] Implement action0 visual effect properties for ships and RVs (r21240)
  • [NewGRF] Support callback 0x10 for RVs and ships (r21238)
  • [NewGRF] Make positioning of diesel fumes and electric sparks actually work (r21230)
  • [NewGRF] Support OpenTTD's genders, cases and plurals (r21216, r21211, r21209)
  • Display mail capacity when refitting an aircraft to passengers (r21214)
  • Make the statusbar's location configurable [FS#4201] (r21179)
  • Forced construction of missing industries (r21175)
  • Do not build industries during economic recession (r21169)
  • Use desired industry counts rather than relative probability to decide which industry to build (r21168)
  • Allow to sort purchase lists for trains and road vehicles by tractive effort (r21105)
  • [NewGRF] Add CB36 support for road vehicle property 0x15 (Speed) (r21100)
  • [NewGRF] Implement stringcode 9A 0C (station name), 9A 0D (weight) (r21086, r21085)
  • [NewGRF] Add CB36 support for road vehicle properties 0x13 (Power), 0x14 (Weight) and 0x18 (Tractive effort) (r21058)
  • XZ/LZMA2 savegame support. New default reduces savegame size by 10 to 30% with slightly more CPU usage. With maximum settings it reduces savegame size by 20 to 30%, but that takes 7 to 14 times longer. Map saving + downloading takes, on average, 5% less (r21044)
  • Chat directly to the server or a bot/admin/IRC channel monitoring the server (r21000)
  • Remote administration (r20975-r20963)
  • [NewGRF] The concept of minimum loadable version to NewGRFs when choosing compatible NewGRFs (r20960, r20958)
  • Center new extra viewports on the tile below the mouse. Only center on center of main viewport if mouse is not in any viewport (r20956)
  • [NewGRF] Make it possible to distinguish player built/randomly placed industries in the location and land slope check callbacks (r20942)
  • Highlight all destination tiles when building a lock [FS#4153] (r20932)
  • Transfer orders imply 'leave empty' by default [FS#3905] (r20927)
  • Allow to select a custom percentage of water in the map generation window (r20832)
  • Make it possible to select vehicle to clone and vehicle to clone orders from directly from vehicle lists and depot window [FS#3999] (r20753)
  • Separate GUI icons for vehicle/company profit, exclusive rights and unread news (r20720)
  • [NewGRF] Support for newobjects (r20670)
  • Make the (flat) area around an industry configurable (r20659)
  • [Network] Allow rate limiting of incoming commands (r20553)
  • Filter signs at the sign list window [FS#3472] (r20516)
  • Ignore _ in console command names so there is no 'inconsistent' behaviour w.r.t. underscores anymore without breaking backward compatibility greatly (r20515)
  • A new screenshot type that makes a zoomed-in screenshot of the visible viewport [FS#3973] (r20508)
  • Setting for none/original/more smoke [FS#3093] (r20376)
  • Airport previews (r20381, r20369)
  • [NewGRF] Support for callback 0x147 ('add sprite offset') for canals (r20353)
  • [NewGRF] Support for property 09, feature 05, i.e alternate canal sprite layout (r20352)
  • Add rescan_newgrf console command (r20344)
  • [NewGRF] AdvVarAct2 operators for SHL, SHR and SAR (r20332)
  • [NewGRF] Air drag property support for trains and road vehicles. Air drag for vehicles with air drag not set or set to zero will use a default value depending on their max speed (r20303, r20302, r20301, r20300, r20299)
  • More user-friendly gui to change NewGRF parameters (r20258)
  • [NewGRF] Add support for static NewGRF information, i.e. Action 14 (r20250)
  • Display suppliers and customers of an industry or cargo (r20206)
  • Allow horizontal resizing for all vehicle lists [FS#3955] (r20174)
  • [NewGRF] Information (var 4A) about the current railtype a train is on (r20165)
  • Tooltips are shown by hovering the mouse over a widget instead of by right clicking on it [FS#3913]
  • Customizable hotkeys (r20055)
  • Wrap console lines when they are too long [FS#3816] (r20046)
  • [NewGRF] Variable 43 depot build date for railtypes [FS#3886] (r20003)
  • Show some savegame details when selecting items in saveload GUIs (r19984)
  • Open vehicle view when clicking on the caption of vehicle news (r19944)
  • [NewGRF] Access to industry founder (var A7) during callbacks 28 and 2F (r19901)
  • Add highlighting of drag destination in depot and order GUI gui [FS#3705] (r19889, r19888)
  • Configure NewGRFs from a single window (r19841)
  • Give depots an unique name in the same manner buoys and waypoints are named. Also allow them to be custom named [FS#3691] (r19801, r19799)
  • Hide all other industries when Ctrl+clicking an industry type in smallmap legend (r19770)
  • [NewGRF] Access to random bits of houses and industries from construction callbacks 17, 28 and 2F. That is: The random bits the house/industry will start with, if construction succeeds [FS#3477] (r19744)
  • A simple sprite alignment helper. It does not store the new offsets anywhere so as soon as the sprite is reloaded the offsets are gone (use a bigger sprite cache if this happens). Also anything that reloads NewGRFs (new games, loading games or (re)applying NewGRFs) clears the sprite cache and as such resets the offsets (r19723)
  • New base costs for building/clearing canals, building/clearing aqueducts and building/clearing locks (r19720)
  • Ctrl+click on a vehicle to start/stop it (r19714)
  • NewGRF debugging/inspecting of (primarily) enabled callbacks and values of variables (r19709)
  • Graphs with negative values are no longer forced to have the zero axis in the middle, resizeable graphs (r19662, r19631)
  • [NewGRF] Support callback 36 for aircraft speed also in the build menu (r19660)
  • Add an input box to the AI Debug window where you can input a break string [FS#3496] (r19544)
  • Add buttons to enable/disable all cargos at the cargo payment rates graph (r19542)
  • Sort industries alphabetically at the smallmap legend, fund industry list; sort cargos alphabetically at cargo payment graph, build vehicles cargo filter dropdown, station ratings and refit options (r19541, r19540, r19436, r19535, r19522, r19503)
  • Console command 'reload_newgrfs'; only available when NewGRF developer tools are enabled (r19515)
  • Enter the starting year in the scenario editor by clicking at the date panel (r19397)
  • Configurable slope steepness for road vehicles from 0% to 10%, default is 7% (r19346)
  • Realistic acceleration for road vehicles (r19345)
  • Allow to (over)build and remove multiple road stops using drag and drop (r19231, r19230, r19229)
  • Show warnings and errors in console as well, not only in a message box (r19225)
  • [NewGRF] Action 0/1/2/3 support for NewGRF airporttiles (r19194)
  • Added:
  • [NoAI] AIOrder::IsVoidOrder to find void '(Invalid Order)' orders (r20389)
  • Support for MSVC 2010 (r20032)
  • [NoAI] AIIndustry::GetIndustryID(TileIndex) (r19773)
  • Changed:
  • Make it possible to start actions that require selecting stuff (landscaping, vehicle cloning, etc) in the viewport while paused. As side-effect you will get an error message explaining the command cannot be executed because the game is paused instead of seemingly nothing happening when you click. Additional side effect of this is that you can make use of the measurement tooltip while paused [FS#4292] (r21480)
  • Make building aqueducts behave more like building tunnels. They cannot be built on flat (or foundationed) tiles, so there is at most one destination tile like there is only one for tunnels [FS#4153] (r21471)
  • Place the bridge building window under the mouse instead of somewhere randomly on the screen and change the default sort order [FS#3975] (r21460)
  • Make sure the client is listening, or rather receiving, our frames (r21361)
  • Read some metadata from (official) source tarballs so you will more likely get the right version/revision out-of-the-box (r21351)
  • Be more explicit that the game state can get broken by changing NewGRFs (r21335)
  • Use the last red instead of last red exit penalty for making sure other waypoint entries are evaluated as well when they are occupied, e.g. when there are no signals before the waypoint but a train just beyond the waypoint is stopped (like for stations) (r21271)
  • Do not receive money for removing the rail of non-rail rail station tiles, i.e. rail station tiles for which the NewGRF has prevented trains to be routed through (r21266)
  • Show a different 'lag' message when a client is lagging because of connection trouble or lagging because the client is just slow (r21254)
  • Mention the OpenTTD version on the console/logs when starting an OpenTTD dedicated server like we mention it in the title bar for the GUI version (r21253)
  • Filter stations by cargo they have a rating for instead of having cargo waiting [FS#4206] (r21144)
  • Limit the number of exceptions in the refittable cargo list to 7 (r21083)
  • Reduce the chances to accidentally break savegames with NewGRFs by limiting loading of savegames that miss NewGRFs or change NewGRF settings in-game [FS#3012] (r21116)
  • Tuned realistic acceleration to be a bit more realistic in order to make acceleration 'slower', which highlights the differences between vehicle types more (r21106)
  • Do not make client reconnect waiting time depend on the company; in coop games that does not spread clients at all, and most companies have a low number causing it not to be spread out either. Use the ClientID instead. (r21008)
  • Add installing options or rather options to not install certain documentation, in a similar way to GRFCodec/catcodec (r20999)
  • Only display liveries in the livery window if they are used by some vehicle somewhen (r20849)
  • [NoAI] Rename AIAbstractList to AIList (r20563)
  • [NoAI] AIOrder::GetOrderFlags returns AIOrder::AIOF_INVALID for void orders (r20389)
  • [NewGRF] Adapt vehicle var FE bit 6 to new railtypes (r20175)
  • [NewGRF] Call callbacks 14A, 14B and 14C after all industry variables have been assigned, so more variables are valid during the callbacks (r19907)
  • [NoAI] Remove HasNext() from all lists/iterators and add IsEnd() instead (r19294)
  • Add the default installation directory of lzo/zlib for Mac OS X/MinGW to the paths where (the headers of) those libraries are searched [FS#3638] (r19285)
  • Fixed:
  • Crash due to cargo payments belonging to a non-existing company [FS#4324] (r21605)
  • Company league table used stats from two quarters ago instead of last quarter [FS#4323] (r21601)
  • The default visual effect only depends on properties of the Engine (wagon or not, tractiontype, ...), not whether it is used as articulated part, front engine or whatever in a specific consist [FS#4275] (r21598)
  • [OSX] A double mouse cursor was shown under certain circumstances [FS#2585] (r21578)
  • Show 'plant trees' button lowered on the terraform toolbar, like how other buttons are lowered when you selected a 'build' action [FS#4315] (r21539)
  • 2CC recolour sprites were the same for DOS and WIN palette, thus 'dark green', 'brown', 'grey' and 'white' were wrong for DOS [FS#4312] (r21535)
  • Do not apply the last signal red pathfinder penalty when the signal is a path signal [FS#4302] (r21524)
  • Tooltips were not removed when their related window got closed [FS#4300] (r21477)
  • Make sure the query window is only opened once per parent window/callback [FS#4298] (r21472)
  • Crash when news item gets removed at just the wrong moment [FS#4180] (r21458)
  • [NewGRF] Ensure the parameter for house variable 60 is the id of an original house (r21456)
  • [NewGRF] A NewGRF with incomplete string codes at the end of a string could cause invalid memory reads (r21433)
  • The server did not check for the paused state when allowing to execute commands [FS#3771] (r21429)
  • Vehicles could be built while the game is paused. Now you can enable or disable that with a setting, which replaces the build-while-paused cheat [FS#4021] (r21428)
  • Purchase lists were not invalidated when using 'resetengines' (r21374)
  • Fields were not cleared under snow though they were intended to be [FS#4283] (r21367)
  • New railtypes with overlays did not use the shore sprites as groundtiles for three-corner-raised slopes (at shore) [FS#4277] (r21353)
  • Buffer overflow in strgen for strings with very large arguments (r21346)
  • Bogus cache mismatch warnings with desync debugging because some cache was invalidated but never reset [FS#4272] (r21338)
  • Make it more likely that the savegame and transferred file are the same file and not different ones [FS#4271] (r21334)
  • Use the correct font sizes when checking for missing glyphs (r21321)
  • [Content] Crash when creating file download by the content download system failed (r21319)
  • AIs in an infinite loop in e.g. autosave, but also getting settings and such from info.nut, would not be interrupted after a while causing OpenTTD to seem to not respond [FS#4260] (r21311)
  • [Content] Do not add HTTP connection to list of connections when it fails in the beginning (r21302)
  • Fonts set in openttd.cfg were not properly checked for missing glyphs on language change [FS#4261] (r21298)
  • FreeBSD introduced strndup as well [FS#4259] (r21295)
  • [Windows installer] Check for existence of save/scenario dirs before asking for deletion confirmation [FS#4251] (r21294)
  • Under some circumstances two vehicles could leave a non drive-through road stop at once [FS#3935] (r21263)
  • [NewGRF] Custom station foundations using the 'simple foundations'-method did not draw any sprite for WSE-slopes when there are foundations on both neighboured tiles in the north. As there must be at least one sprite to provide the correct offset for the groundsprite draw the (empty) default foundation sprite in that case [FS#4246] (r21262)
  • The main menu error messages would not show when you had an error message open in the game while whatever triggered you to go back to the main menu (r21255)
  • Rescanning AIs did not 'forget' removed AIs [FS#3952] (r21250)
  • Upon rescanning AIs the new AIs would (after some time) show up in the AI list but you could not select all (r21246)
  • [YAPF] Road vehicles not finding the nearest depot in some (corner) cases [FS#4130] (r21229)
  • [NewGRF] The specs' cargo strings and OpenTTD's use of the clashed. Provide properties so NewGRFs can provide cargo strings tailored for OpenTTD while retaining (some) backward compatibility [FS#4172] (r21224)
  • Use proper plural for the short cargo unit names (r21223)
  • Under some conditions, group count would be wrong after moving train engines in the depot window [FS#4207] (r21205)
  • [OSX] Do not let the mouse cursor jump when switching to full screen mode (r21200)
  • [OSX] Finding a fallback font failed when compiling for OSX 10.4 as it tried to match also OpenTTD-specific control characters [FS#4001] (r21197)
  • Use non-interactive randomness for townnames on map generation, so they are controlled by the generation seed as well [FS#4226] (r21192)
  • [OSX] Unify compiler flags with other OS and work around a compiler bug in gcc-4.0.1 which breaks graphics display in x86_64 binaries [FS#4210] (r21149)
  • Station list was not updated when a new cargo got a rating (r21145)
  • Station ratings were not updated (anymore) after an aircraft crashed (r21137)
  • Bridge speed limits should apply to all wagons of a vehicle, not just the head of the vehicle [FS#4213] (r21136)
  • Helicopter flight altitude was determined inconsistently in different places (r21119)
  • Do not use the maximum track speed where the maximum vehicle speed is meant (r21107)
  • Display the real maximum speed for aircraft instead of always using the engine value (r21096)
  • Aircraft speed would ignore callback 36 result when it is greater than the engine speed (r21094)
  • [OSX] Mouse cursor would leave footprint with 8bpp blitter when switching to full screen (r21037)
  • [OSX] Properly set the palette when using the 8bpp blitter during start-up (r21036)
  • Center industry gui and waypoint gui after resize [FS#4171] (r21021)
  • Draw bridge pillars with correct length on all tile corners by drawing only half of the pillar sprite if required (r20950, r20947)
  • Accidentally moving the mouse of the scrollbar arrows while pressing it clicks the button next to the arrow [FS#4071] (r20922)
  • Refit costs were not shown for long cargo names [FS#4160] (r20921)
  • When using non-smooth or NewGRF-economy changing production rates does not work, so allow changing the production multiplier instead (r20901)
  • The station with the second highest rating was doubly penalised when distributing cargo. Now the penalty is completely removed and the granularity/precision of the distribution in increased by using fractional cargo. This should make competing stations less all-or-nothing [FS#3637] (r20857)
  • Make sure (gradual) loading is properly terminated for consists with multiple cargo types. Do not stop loading if the timetabled wait is not over yet [FS#2534] (r20843)
  • Place less trees at once when planting random trees at the scenario editor [FS#4094] (r20829)
  • Do not use new game settings when creating many random towns/industries at the scenario editor [FS#4094] (r20712, r20711)
  • Keep _current_company and _local_company in sync during GUI operation [FS#3804] (r19933)
  • When building a lock, do not add the cost of building canals if they are already built, pay for clearing the other tiles and do not add the first bridge type's cost to aqueducts (r19719, r19718, r19717)

New in OpenTTD 1.0.5 (Nov 22, 2010)

  • An assortment of bugs were fixed and translations were updated.
  • This release also fixes CVE-2010-4168.

New in OpenTTD 1.0.5 RC2 (Nov 15, 2010)

  • Reading (very) recently freed memory (r21182)
  • Default service interval for ships/aircraft got switched [FS#4222] (r21155)
  • Size of sort buttons for save/load and build vehicle list gui could be too small [FS#4221] (r21151)
  • [NewGRF] Crash when disabling static NewGRFs (when joining/starting a server) [FS#4208] (r21130, r21129, r21128)
  • Upper limit for snowline was too low [FS#4203] (r21078)
  • Wrong (maximum) value shown for generation seed in the in-game console [FS#4192] (r21075)
  • [Windows] Make sure to be upgraded openttd is not running when installing [FS#4212] (r21146)
  • Under some circumstances the file handle of the downloaded savegame would not be closed, and validity of the handled was not checked in all cases (r21027)
  • [NewGRF] Crash when getting an industry ID at an offset that uses some 'old' style industry tile [FS#4157] (r20912)

New in OpenTTD 1.0.5 RC1 (Nov 2, 2010)

  • Changes:
  • Make OpenTTD aware of XZ/LZMA compressed savegames so loading those gives a proper error message (r21047)
  • Make it possible to make .tar.xz bundles (r21042)
  • Fixed:
  • Missing default values for the custom town number in the world generation options (r21034)
  • Dropdown menu glitched in small screenshots, when issueing them from the menu (r21031)
  • Do not let the resize button go past the bottom of the screen [FS#4176] (r21015)
  • The detailed performance rating window could be too narrow [FS#4102] (r21010)
  • For the compact notation 1.000.000k and 1.000M would be shown depending on the initial (and later rounded) value. Make everything that would round to 1.000.000k be drawn as 1.000M as well (r21009)
  • Do not consider the text direction character when searching for missing glyphs (r21007)
  • Chat/console messages got sometimes messed up due to LTR names in RTL translations and vice-versa [FS#3746] (r21006, r21004)
  • Size of sort buttons for order and vehicle list gui could be too small (r20997)
  • [NewGRF] The X and Y offsets in the parameter for industry vars 60, 61, 62, 63 are unsigned instead of signed (r20996)
  • When removing a rail station, do not leave track under non-station tiles (r20990)
  • [NewGRF] Ignore the variable for Action7/9 condition type 0x0D and 0x0E as documented (r20979)
  • Crash when, while the 'go to' cursor is active, you open the order list of a vehicle of another company and then select a 'go to' destination [FS#4159] (r20916)
  • Helicopters fired a bit too late [FS#4155] (r20910)
  • Road/water toolbars did not get updated when the first vehicle of their type becomes available [FS#4141] (r20856)
  • Smallmap legend buttons must all be equal in size, even if their contents is not (r20851)
  • Deadlock when aborting map generation on Windows [FS#3707] (r20822)
  • Be a bit more lenient with invalid savegames; do not crash on saveload related NOT_REACHEDs, just show the user an error that the savegame is corrupted [FS#3714] (r20819)
  • Make the crash-on-saveload message clearer and more correct [FS#3791] (r20818)
  • [NewGRF] Clamp/convert some vehicle variables so NewGRFs get their specified range (r20800, r20799, r20792)
  • [NoAI] Document that AITile::HasTransportType does not work for TRANSPORT_AIR [FS#4117] (r20798)
  • [NewGRF] Disable houses without a size that are available according to their building flags (r20797)
  • [NewGRF] Make sure all houses in the house spec array are valid. It was possible that part of a multitile house was not copied because the array was full (r20796)
  • Building 2x2 houses did not work for 2x2 road layouts on all map sizes (r20791)
  • [NewGRF] Remove a check which is wrong for NewGRF houses and serves no use for original houses [FS#4118] (r20790)
  • Spelling mistake in Slovak real town names (r20787)
  • Do autosave-on-exit as well when using kill/CTRL-C to terminate a dedicated OpenTTD (r20783)
  • [NoAI] AIEventCompanyAskMerger was disguised as AIEventCompanyMerger (r20765)
  • [NewGRF] Assert when an industry previously build on water was flooded because its NewGRF changed/is missing [FS#4112] (r20754)
  • Do not use new game settings when creating many random towns/industries in the scenario editor [FS#4094] (r20712, r20711)
  • Graphics glitch when switching to a different-sized font while the chat message box was visible (r20705)
  • Vehicle lists of non-trains could not resize horizontally causing truncation of texts [FS#4123, FS#3955] (r20174)

New in OpenTTD 1.0.4 (Sep 15, 2010)

  • Nothing seriously was reported since the release candidate, and as we are confident the testers did a good job, we are also confident that it is a nice release!
  • Note that there is a new translation available in the release: You can now also enjoy OpenTTD in Belarusian. A good moment to thank all translators continuously maintaining and updating the translations.

New in OpenTTD 1.0.4 RC1 (Aug 31, 2010)

  • Change:
  • Merge the extra GRF's sources and make it possible to rebuild them easily (r20490)
  • Fix:
  • Empty NewGRF presets were not selectable [FS#4087] (r20694)
  • Desync checker checked the wrong variable (r20677)
  • Drawing the 'OpenTTD' text in the intro game caused crashes with very low resolutions [FS#4081] (r20618)
  • Crash when a NewGRF defined an invalid substitute type for a house and the NewGRF was removed during the game, disable houses with different size than their substitute [FS#3702] (r20611, r20610, r20609)
  • Retain information about all base sets that are found and not only the latest version to stop confusing people that use newer versions of the base sets than those available via BaNaNaS (r20607)
  • Let NewGRFs var43 var (information about liveries) for vehicles not be influenced by the local setting determining whether to show liveries or not [FS#4063] (r20605)
  • 'Downscale' a full load order to a load if possible order when removing the order while the vehicle is loading. This to prevent the vehicle from (possibly) staying forever in the station [FS#4075] (r20600)
  • Crash when the tooltip is wider than the window is [FS#4066] (r20596)
  • No (proper) savegame conversion was done when _date_fract got a new value range (r20592)
  • Autoreplace failed while attaching non-replaced wagons to the new chain, if to-be-sold-engines would become front-engines and the unitnumber limit would be exceeded (r20583)
  • Autoreplace can trigger an assertion when at the vehicle limit [FS#4044] (r20582)
  • Go via station and go via waypoint behaved differently when a train went back to the same (unordered) station again [FS#4039] (r20580)
  • Draw bounding boxes using white instead of pure white, so they are recoloured to grey in coloured newspaper instead of blue [FS#4051] (r20578)
  • Scroll button flickering when pressed [FS#4043] (r20577)
  • Warn OpenGFX users when they are using a base set that misses sprites (r20566)
  • Wrong tooltip for the company select button in the AI debug and performance rating windows [FS#4053] (r20556, r20555)
  • In old savegames aircraft can have an invalid state (r20528)
  • Crash when the content download tried to get a MD5 checksum of an 'originally' loaded NewGRF [FS#4038] (r20519)
  • Draw error messages in white by default, they may not have a colour set when coming from a NewGRF (r20514)
  • Entering half the 'generation seeds' in the console's 'newgame' command failed to set the correct seed [FS#4036] (r20512)
  • Desync when vehicles change NewGRF properties such as visual effect when changing railtype [FS#3978] (r20505, r20504, r20503, r20502)
  • Desync when converting rail all as trains with a part on the converted rails need updating and not only the engines (r20500)
  • Ignore the non-stop state when comparing one order type to another order type, otherwise non-stop nearest depot orders fail [FS#4030] (r20498)
  • Non-dedicated servers failing to load a game caused the introgame to be the server's game causing desyncs when people tried to join [FS#3960] (r20497)
  • [NoAI] checking whether water tiles are connected failed in some cases [FS#4031] (r20489)
  • Statues were not removed when towns would be removed (r20481)
  • Do not spend cash when building a statue fails [FS#3985] (r20469, r20227)
  • Adding 'goto nearest depot and stop' orders in one go was denied. This caused both AI adding those orders and backed up order restoration to fail [FS#4024] (r20441)
  • For docks 'facing' north, i.e. having the watery part a the northern side, the station joiner had an off-by-one to the north w.r.t. the station spread against the actual other (correct) building tools [FS#4022] (r20438)
  • Make snow on bridges depend on bridgeheight and make snowyness of bridgeheads depend on the tileheight at the entry [FS#3947] (r20424, r20423, r20422, r20421, r20420)
  • During world generation the snow-mapbits are not yet available, so test the snowline variable directly (as they were before) [FS#4017] (r20418)
  • PBS reservations were always displayed on halftile foundations if the railtype uses overlays [FS#4013] (r20408)
  • Make the default minimum width for editboxes 10 pixels to prevent crashes [FS#4010] (r20394)
  • Prevent buying more vehicles than allowed or buying companies when you'd get too many vehicles [FS#3993] (r20393, r20392, r20391, r20390)
  • Initialize fund-industry buttons when opening window (r20386)
  • Update cursor dimensions when reloading grfs resp. changing base graphics, so the cursor does not glitch if it becomes bigger (r20384)
  • Stop vehicle following after zooming out [FS#3989] (r20361)
  • [NoAI] Ship depots were constructed along the wrong axis [FS#4004] (r20348)
  • Fallback font selection due to missing glyphs did not work as intended (r20296)
  • When it is known the loading an old savegame is going to fail, bail out immediately (using an exception) instead of going on until e.g. the expected number of byte is read (r20247)
  • The caption of the 'Available vehicle' lists was black, whereas for building those vehicles, which uses the exact same window, it was white (r20244)
  • [NoAI] Clarify the documentation for AIBaseStation::GetLocation (r20238)
  • Refit costs from refit orders are subtracted from the vehicle yearly income [FS#3988] (r20234)
  • Road vehicles could be dead locked with one way roads. This allows one wayness to be removed if there are vehicles on a tile; it does not allow you to add one wayness to roads that have vehicles on them as it makes turning vehicles jump [FS#3961] (r20230)
  • 'Service at nearest depot' behaved the same as 'Go to nearest depot' [FS#3986] (r20229)
  • Depot did not become unsnowy, when snowline rises [FS#3976] (r20224)
  • Strip non-printable characters before showing it in an edit box, so when renaming a vehicle type you won't get the 'SETX stuff' that some NewGRFs use [FS#3974] (r20220)
  • NewGRFs that defined a vehicle without either loaded or loading groups could crash OpenTTD [FS#3964] (r20199)
  • [NewGRF] GetNearbyTileInformation can be used to get the terrain type of a MP_VOID tile [FS#3963] (r20197)
  • [NewGRF] Vehicle var FE bit 6 did return incorrect values for new railtypes (r20175)
  • Inconsistencies w.r.t. to km/h vs km-ish/h as 'base' unit for aircraft speeds [FS#3870] (r20164)

New in OpenTTD 1.0.3 (Aug 1, 2010)

  • It fixes various bugs, including desyncs and a security vulnerability (CVE-2010-2534). We encourage you to update your servers for unstoppable fun!

New in OpenTTD 1.0.3 RC1 (Jul 20, 2010)

  • New features:
  • [NewGRF] Textstack support for CB 38 (r20086)
  • [NewGRF] Add a railtype flag to disallow level crossings per railtype (r20049)
  • Change:
  • Improve desync debugging, crash log data and the Debian packaging (by making a debug symbols package) (r20138, r20136, r20129)
  • Fixed:
  • Do not scan /data and ~/data (if they happen to be your working directory). If it is the directory where your binary is located it will still scan them [FS#3949] (r20166)
  • Integer comparison failed in case the difference was more than 'MAX_UINT'/2 [FS#3954] (r20162)
  • [YAPP] Converting a one-way block to a path signal with trains on both sides could lead to a train crash [FS#3937] (r20156)
  • [NewGRF] Improve handling of snowing of railtypes and (infra)structures on foundations [FS#3883] (r20153, r20132, r20126, r20125)
  • Ships were not marked as dirty when stopping inside a depot [FS#3880] (r20142)
  • Some windows ignored all hotkeys [FS#3902] (r20141, r20140, r20139)
  • Do not allow building a rail track to the water using a tree-tile [FS#3695] (r20110)
  • [NoAI] AITown::GetRating() returned wrong values [FS#3934] (r20103)
  • Reading deleted memory when selecting a NewGRF in the content download window of which the data has not been acquired from the content server. The crash would occur after the content server's reply was processed and the ContentInfo object was replaced with another [FS#3899] (r20089, r20082)
  • If after loading a savegame (including intro game) one tried to save a game (including autosave) and that failed (very) early on because it could not open the file for writing all pointers would be converted to NULLs which then causes corrupted game states [FS#3876, FS#3887, FS#3920, FS#3923] (r20087)
  • gitignore and hgignore had more missing/wrong entries (r20078, r20033, r20031)
  • Remove the space between 'open' and 'ttd' in the title screen (r20077)
  • Road vehicles could get crashed twice in a tick [FS#3896] (r20053, r20034)
  • Coloured_news_year was stored in savegames while it should be a client setting [FS#3916] (r20051)
  • Crash when spectator tried to open a vehicle list without selecting any company [FS#3892] (r20041)
  • Instead of loading the intro game when loading a savegame fails on the dedicated server, generate a new game [FS#3907] (r20039)
  • Tram tracks did not show at level crossing with the new railtypes [FS#3911] (r20036)
  • Under some circumstances you could get into an infinite loop [FS#3909] (r20035)
  • The 64 bits TortoiseSVN was not always properly detected (r20029)
  • Do not close the sort dropdown in the (original) vehicle list when there are no vehicles. That code is meant for the 'actions' dropdown [FS#3881] (r20014)
  • When joining a company with a password you could only enter 20 characters of the password (r20012)
  • Sign sorting was unstable [FS#3893] (r20009)
  • Trains should also have running cost while slowing down for stop (r20006)
  • [NewGRF] Stringcodes 82, 83 and 84 were not properly converted to openttd codes so they did not work (r20004)
  • Clear force_proceed when entering depots and when loading, resetting of force_proceed on manual stopping did not work [FS#3878] (r19992)
  • Do not show an error message when trying to start/stop a crashed plane [FS#3874] (r19953)
  • Allow turning of roadvehicles while waiting in a queue (r19945)
  • Disallow moving of vehicle news window [FS#3865] (r19943)
  • Under some (unlucky) circumstances the wrong company would be 'current company' when changing company colour or orders [FS#3903]

New in OpenTTD 1.02 RC1 (Jun 7, 2010)

  • Feature:
  • Translated desktop shortcut comments (r19884)
  • Change:
  • Name invalid engines, cargos and industries 'invalid', if the player removed the supplying NewGRFs, hide invalid engines from the purchase list (r19879, r19877)
  • Fix:
  • When 'pause on new game' is set, pause the game before CleanupGeneration() to avoid conflicts with concurrent GUI code [FS#3857] (r19934)
  • Pay for the rail/road when constructing tunnels, bridges, depots and stations [FS#3859, FS#3827] (r19925, r19887, r19881)
  • Closing chatbox could cause glitches when news message was shown [FS#3865] (r19921)
  • [YAPP] Inform the pathfinder as well about the fact that the backside of an one-way path signal can be a safe waiting point [FS#3803] (r19896)
  • Allow loading savegames from the console without specifying the ".sav" extension, i.e. make it consistent with saving savegames from the console [FS#3761] (r19885)
  • Dropdowns did affect positioning of new windows because they were not yet removed when the new windows were positioned [FS#3812] (r19883)
  • [NoAI] AIEngine::IsValidEngine() and AIEngine::IsBuildable() returned false positives. Especially wagons of unavailable railtypes were reported available (r19880)
  • Default vehicle group texts were drawn one pixel too low [FS#3851] (r19878)
  • It was not possible to send all trains with common waypoint order to depot (r19876)
  • Compilation for NetBSD [FS#3809, FS#3840, FS#3845] (r19874, r19859, r19853, r19781)
  • If the (guessed initial) destination tile of a road vehicle was not a road stop but was a T-junction or turn, the road vehicles would jump around in circles [FS#3817] (r19873)
  • When a network connection gets lost and a game with AIs was loaded the client might crash due to the AIs not being loaded while the game loop is executed [FS#3819] (r19869)
  • Use non-breaking spaces for currency pre-/postfixes (r19867)
  • Crash when changing/viewing locale settings in the console [FS#3830] (r19865, r19864, r19863, r19862)
  • Drawing fallback sprites for unavailable NewGRF waypoints failed (r19852)
  • Ensure that both texts of the NewGRF gui download button fit (r19823)
  • Kicking clients by IP did not work [FS#3784] (r19818)
  • Compilation with MinGW GCC 4.5.0 and UNICODE (r19787)
  • If a waypoint is immediately followed by a path signal a reservation would be made from that path signal before the waypoint is marked passed. As a result the order to go to the waypoint is used to reserve the path after the waypoint and as such trains get lost [FS#3770] (r19784)
  • NULL pointer deference when testing relative scope *action2 on an unbuilt engine [FS#3828] (r19782)
  • Crash on too long paths [FS#3807] (r19780, r19779, r19778, r19777, r19776)
  • MP_VOID tiles shall have no tropic zone [FS#3820] (r19769)
  • Half-desert tiles would never revert back to clear tiles (r19768)
  • Height in smallmap was different from measured heights [FS#3808] (r19767)
  • [NewGRF] Vehicle var 43 missed AI information in purchase list (r19761)
  • Blocked roadvehicles should first check whether they are still blocked before accelerating again, instead of continuous starting/stopping (r19755)
  • Try harder to find a suitable font that can be loaded, i.e. while searching for a suitable font test whether you can open it [FS#3740] (r19753)
  • Make sure the chat area fits in the default window size; if you want it larger, you can always change/override it in the config file [FS#3798] (r19751)
  • [NewGRF] Industry var 0x43 is not 'safe' during callbacks 22 and 38 either (r19750)
  • [NewGRF] Possible divide-by-zero if a NewGRF checked industry var 42 while the production level was 0 (r19749)
  • Do not recenter usually centered windows when resizing main window or changing language, if they have been moved/resized before [FS#3675] (r19746)
  • The GUI is controlled by _local_company, not _current_company (r19745)
  • NewGRFs could access map bits of not yet constructed industries and houses during construction callbacks (r19748, r19743)
  • [NewGRF] Passing some invalid data to industry variable 67/68 could cause a crash (r19713)
  • Check for industry availability more thoroughly and cancel object placement when selecting not available industries [FS#3787] (r19701)
  • Avoid showing building toolbars behind the main toolbar when the 'Link landscape toolbar' setting is active [FS#3781] (r19696)
  • Under some circumstances the player's name could be empty (r19693)
  • Do not show an error message when trying to give another client an amount of 0 money [FS#3779] (r19684)
  • Do not display an error message when double clicking on a vehicle in the 'available vehicles'-window (r19669)

New in OpenTTD 1.0.1 RC2 (Apr 23, 2010)

  • Fixed:
  • Desync when joining the game because of using the wrong variable (r19687)
  • Truncated archives were not detected when using zlib 1.2.3. This also fixes zlib 1.2.4 compatibility, zlib 1.2.5 is bugfree (r19686)
  • Towns with 3x3 and 2x2 road layouts could not expand (r19683)
  • When joining a MP game all clients with company ID > 0 would be shown as if they were a spectator [FS#3775] (r19680)
  • Client status was shown incorrect in the console (r19678)

New in OpenTTD 1.0.1 RC1 (Apr 19, 2010)

  • NBew features:
  • [NewGRF] Support for extended text code 0x9A 11, print qword (r19570)
  • Give more detailed error message when trying to build a too long bridge (r19561)
  • Add rail speed limit to land area information window (r19556, r19434)
  • Added:
  • [NoAI] AIRail::GetMaxSpeed(RailType) to get the speed limit of railtypes (r19591)
  • Changed:
  • Sync Debian packaging updates from Debian, but keep building a single package (r19572)
  • Fixed:
  • Crash of a dedicated server if the null blitter is overridden and (after a while) there is no company 0 on new year anymore [FS#3749] (r19664)
  • In rare cases, update of signals could be missed (r19663)
  • Various improvements of command handling, missing error messages (r19658, r19657, r19656, r19655, r19654, r19637, r19633, r19621, r19616, r19605, r19604)
  • Industry generation failed for large maps and lots of industry types (r19652, r19643)
  • When a company is sold, move connected clients to spectators [FS#3745] (r19651)
  • A client would not be properly moved when moved while joining, e.g. when entering a company's password. This caused the client to be in the wrong company (according to the rest of the clients) and the client being kicked on the first command [FS#3760] (r19648)
  • Trains loaded above the original IDs did not have a default railtypelabel assigned to them, causing them to be unavailable. Could cause desyncs if the multiplayer game was not started from a savegame [FS#3768] (r19647)
  • Do not allow building cacti outside of the desert or rain forest trees outside of the rain forest area. This to prevent people from thinking planting rain forest trees makes the rain forest bigger and thus adds more place to build a lumber mill [FS#3728] (r19644, r19635, r19634)
  • Desync when taking over companies (r19636)
  • Chat message caused glitch when rejoining a network game [FS#3757] (r19629)
  • Desync when a command is received and in the queue while a client starts joining, i.e. save the game state. This can happen in two ways: with frame_freq > 1 a command received in a previous frame might not be executed yet or when a command is received in the same frame as the join but before the savegame is made. In both cases the joining client would not get all commands to get in-sync with the server (and the other clients) (r19620)
  • Company related graphs were not updated correctly after changing the company colour [FS#3763] (r19615)
  • Possible invalid read when server moves client to spectators before he finishes joining [FS#3755] (r19613)
  • Crash when opening a savegame with a waypoint from around 0.4.0 [FS#3756] (r19612)
  • Improve joining behaviour; kicking clients when entering passwords that was just cleared, 'connection lost' for people failing the password (r19610, r19609, r19608, r19607, r19606)
  • Desync debugging; false positives in the cache validity checks and saving/loading the command stream (r19619, r19617, r19602, r19601, r19600, r19596, r19593, r19592, r19589, r19587, r19586)
  • Presence of online content was not properly updated after download due to duplicate slashes in the path (r19600)
  • [NewGRF] Setting industry prop 0x24 to 0 caused empty station names (r19590)
  • Crash when pressing 'h' (non-stop) in the order window of a ship or aircraft [FS#3744] (r19584)
  • Graphs were not properly updated when going toggling keys (i.e. companies) (r19574)
  • The timetable button was not automatically raised [FS#3739] (r19571)
  • [NewGRF] Possible buffer underflow in NewGRF string code (r19569)
  • [NewGRF] Do not return a random colour for unowned industries in var 45; TTDPatch does not seem to set the colour data in that case either and it could lead to desyncs (r19566)
  • Window::OnResize() was not always called while resizing a window causing incorrect windows [FS#3730] (r19563, r19558)
  • Bridge build error message should not show the same message twice (r19560, r19559)
  • [NewGRF] During NewGRF loading, store rail type labels in temporary data and process after loading has finished. This avoids deactivated rail vehicles being reactivated if the climate property is set after the rail type property (r19557, r19502)
  • Improperly scaled cargo payment graph when having lots of cargo (r19550, 19543)
  • [NewGRF] Properties set before property 08 (house, industry, industry tiles) should be ignored, not trigger the NewGRF to be disabled [FS#3725] (r19547)
  • Sorting industries by production was broken for NewGRF industries (r19538)
  • Vehicle details window did not resize correctly after refitting a road vehicle to a longer variant [FS#3720] (r19533)
  • Prevent drawing industries disabled at the smallmap as land tiles when they are built on water (r19523)
  • Tunnels, bridges and roadstops are build with only one roadtype (r19506)
  • Remove same_industry_close setting did not do what it said and caused NewGRF trouble (r19499)
  • Keep number padding intact when cloning vehicle names [FS#3710] (r19498)
  • [NewGRF] Bytes and words get sign-extended for temporary/persistent storage (r19497)
  • Stop reducing the size of the vehicle list after selecting a vehicle with a long description (r19480)
  • Implement custom sound effect for helicopter take-off [FS#3668] (r19364)
  • Update:
  • Plural type of Slovak (r19452)

New in OpenTTD 1.0.0 RC3 (Mar 19, 2010)

  • Make the drive through and cargo list consistency checks only run when 'desync' debugging is enabled (r19403, r19398)
  • Update documentation for console command connect to use ip:port#company parameter format, in line with command line help (r19374)
  • [NewGRF] Increase railtype cost range (r19306)
  • Fixed:
  • Mark industry windows dirty more often [FS#3701] (r19443)
  • Custom group names are misaligned with default ones when using rtl languages [FS#3700] (r19438)
  • With certain game settings one could clear tiles for free when building long roads (r19436)
  • When loading a savegame created with a house NewGRF without that NewGRF available all houses became tall office blocks (r19435)
  • Limit rail clearance earnings to 3/4s of rail build cost, to avoid money making loophole when rail build cost is less than rail removal earnings (r19433)
  • Crash when the error message 'owned by ' was shown [FS#3696] (r19432)
  • [NoAI] When the title game contains an AIPL block the AI settings where overwritten by those from the title game (r19429)
  • Gracefully handle the case where we cannot open a .tar file (r19427)
  • [YAPP] A train on a bridge/tunnel was not always found when checking for trains on a reserved path (r19425)
  • [NoAI] The AI Debug window did not open if an AI or library fails to compile when loading a savegame [FS#3669] (r19395)
  • One could not level the whole map anymore at once (r19392)
  • Only show the 'No AIs available' error message when explicitly changing the number of AI opponents [FS3676] (r19389)
  • [NoAI] When reloading a savegame, an AI failing to compile could trigger (trying) to read the not yet loaded information of another AI via the AI Debug window and its "open with the most recently used AI" feature [FS#3666] (r19388)
  • Close all orders windows when switching companies [FS#3671] (r19387)
  • [IPv6] Netmask calculations were wrong if cidr >= 32 [FS#3684] (r19385)
  • Overbuilding bridges, rail stations did not properly update PBS reservation [FS#3680] (r19384, r19383)
  • [NoAI] List valuator could cause invalid iterators [FS#3665] (r19367)
  • Close error messages about missing ownership when the company closes or is taken over [FS#3663] (r19358, r19357)

New in OpenTTD 1.0.0 RC2 (Mar 5, 2010)

  • Increase the default small font size for freetype fonts as 6 point fonts are usually unreadable [FS#3655] (r19308)
  • [NewGRF] Railtype cost factor from byte to word value (r19306)
  • Improve error message with track building when signals are in the way (r19190, r19189)
  • Do not print the absolute path to AI script files in the AI debug window, use the relative path from /ai/ instead (r19166)
  • The Debian packaging; bring it in sync with the packaging used at Debian excluding package splitting (r19162)

New in OpenTTD 1.0.0 RC1 (Feb 21, 2010)

  • New features:
  • Allow to select different land colours for the smallmap (r19064)
  • [NewGRF] Action 3/2/1 (i.e. new graphics) support for rail types (r19056)
  • Add zoom-out to smallmap (r19039)
  • Added:
  • [NoAI] AIOrder::[G|S]etStopLocation to get/set the stop location of trains in a rail station (r19014)
  • Changes:
  • Move home directory to a better place in Haiku [FS#3625] (r19151)
  • Do not load the 'new game' NewGRFs when you are certain the savegame would not have been saved with them, i.e. do not load the 'new game' NewGRFs for TTO savegames (r19044)
  • Fixed:
  • Invisible depots draw the track, so also draw the overlays (r19154)
  • [v]seprintf should return the number of added characters excluding '\0' on truncation [FS#3627] (r19149, r19148)
  • [YAPF] Look-ahead for multitile waypoints 'made up' data that should not go into the cache, causing desyncs in MP [FS#3619] (r19141)
  • Report a more useful error when failing to build a bubble generator (r19137)
  • Resize station cargo widget when needed to display all accepted cargo types [FS#3617] (r19123)
  • [NewGRF] Industry property 0x17 was interpreted incorrectly and in some cases circumvented the density difficulty setting (r19120)
  • removing towns (in the scenario editor) that had stations/depots refer to them or vehicles were on the town's road could cause a crash [FS#3616] (r19119)
  • In the order window the Non-stop dropdown was not enabled for depot and waypoint orders and some buttons were raised too soon [FS#3593] (r19118, r19117)
  • Do not crash on broken lng file and prevent it from happening again [FS#3611] (r19113, r19112)
  • Not all news data was properly freed when starting a new game [FS#3614] (r19105)
  • The BeMidi driver was broken [FS#3610] (r19097)
  • Crash when one of the items in the news_display group in the config file has no value (r19096)
  • Crash when a baseset has an empty metadata field (r19095)
  • Possible read/write after free when the client triggered the server to close the connection [FS#3599] (r19072)
  • Remove Bidi control characters from the reordered text so they are not drawn [FS#3604] (r19067)
  • [NewGRF] Settings that are part of the "TTPatch flags" can cause desyncs if they are changed in network games (r19066)
  • When banning yourself via rcon do not send the 'command response' to the client as the connection has already been terminated [FS#3598] (r19054)
  • Mass stopping/starting/autoreplacing gave empty errors when there were no vehicles [FS#3577] (r19024)
  • City airport introduction date had become 5 years later (r19023)
  • Loading old (0.1-ish) savegames failed (r19022)
  • Do not NULL the pointers when saving the savegame on an error during saving; the savegame is still valid, so do not make it invalid [FS#3570] (r19021)
  • When removing roads, the player was also charged for removing the foundations [FS#3591] (r19016)

New in OpenTTD 1.0.0 Beta 4 (Feb 5, 2010)

  • New features:
  • Content mirroring support (r18994)
  • Show empty query after creating new group (instead of 'Group nnn') (r18981)
  • [NewGRF] NewGRF-settable rail type properties, increase number of possible rail types, per rail type speed limits (r18970, r18969)
  • [NewGRF] Allow layering of multiple groundsprites in spritelayouts of stations, houses and industrytiles; so hacks with zero-sized bounding boxes are no longer needed and no longer cause trouble (r18959)
  • [NoAI] Introduce GetBuildCost functions in several classes to get easier cost estimations before you start building (r18955)
  • [NoAI] Allow editing AI settings while an AI is running (r18953)
  • Make it possible to change newgame settings from within a game via the console (use setting_newgame instead of setting) [FS#2885] (r18943)
  • Add a setting to reduce/disable aircraft crashes [FS#2678] (r18942)
  • Make the crash position of aircraft a bit random by giving aircraft a chance to crash every tick they are breaking (r18940)
  • Change:
  • [NoAI] Use the highest version of an AI that can load the AI data from a savegame instead of the exact same version [FS#3232] (r18944)
  • Fixed:
  • Off-by-one in the music playlist (song missing) [FS#3588] (r18997)
  • [NewGRF] industry var A5 (=high 8 bits of var A4) returned the high 8 bits of var A2. Same problem for 9B/9A/98 (r18988)
  • [NoAI] Make building long rails fail for AIs if there is an obstacle in the way (r18987)
  • Possible invalid memory access when merging companies [FS#3584] (r18978)
  • Estimating the cost of removing statues could clear the presence flag in the town (r18976)
  • CMD_BUILD_ROAD missed CMD_AUTO. Also do not access tiles anymore after clearing them; that fails either in test or exec run [FS#3578] (r18974)
  • Train acceleration for original acceleration model was not updated if the train's power changed (r18971)
  • Make sure the values of settings loaded from a savegame are valid (r18950)
  • After clicking move up/move down in the NewGRF/AI the selected item could be out of range [FS#1510] (r18948, r18947)
  • It was possible to change AI settings without changing to the custom difficulty level by using the query text window (r18946)
  • Remove the loading indicators as soon as a train crashes [FS#3575] (r18941)
  • [NewGRF] Industrylayout's special water tile check did not properly check for crossing north border of map (r18938)
  • [NewGRF] Value of variables 90 and 91 were not what NARS expects [FS#3551] (r18935)
  • [Windows] In some rare case a deadlock could happen when stopping sound driver (r18934, r18913, r18892)
  • [NoAI] Autoreplace is also valid for the default group (r18930)
  • Preserve some timetable related vehicle flags during autorenew/-replace [FS#3568] (r18929)
  • AIOrder::GetOrderDestination could return a non-waypoint tile when the waypoint was a multitile waypoint [NoAI] (r18924)
  • On bankruptcy the company value did include the loan and as such the value at which you bought the company was too low [FS#3561] (r18908)
  • Writing LZO-compressed savegames would produce invalid files and potentially overwrite memory (r18904)
  • [Windows] File locations for Windows were not documented correctly for all versions of Windows [FS#3562] (r18903)
  • Pressing cancel for the query windows of the world generation window caused the default to be set instead of no changes to the value [FS#3558] (r18896)
  • Avoid duplicate path separator when searching for PNG files which prevented tar-lookups (r18891)
  • [NewGRF] Perform bounds checking for all NewGRF data reads. Explicit length checks (which were not always correct) are no longer needed so these are removed to simplify code (r18884)
  • Aircraft can be send to an hangar when the target airport has one and when it can land, not only when it has a plane terminal (r18880)
  • [NewGRF] Crash when a NewGRF used var62 in an industry tile chain when the industry tile was part of an original industry (r18878)

New in OpenTTD 1.0.0 Beta 2 (Jan 6, 2010)

  • New features:
  • Do not delete the rough/rocky status of a tile when it is covered by snow, this allows rocky tiles under snow if you have a variable snowline (r18719)
  • [NewGRF] Add support for custom station foundation graphics (r18708)
  • Allow virtually paying a percentage of the leg profit in feeder chains. This to give the user a better chance to get a feeder system without 'losses' (r18703)
  • Configurable slope steepness for trains from 0% to 10%, default is 3% as before [FS#3459] (r18674)
  • Allow contour-map to be shown with coloured industries in smallmap [FS#567] (r18665)
  • Added:
  • [NoAI]: AIEngine::IsBuildable to check if you can build a certain engine (r18687)
  • Changed:
  • [NoAI] Merge buoy and waypoint functions (r18725)
  • [NoAI] AIEngine::IsValidEngine will now also return true when you have at least one vehicle of that type even if you cannot build it anymore (r18687)
  • Update Squirrel from 2.2.3 to 2.2.4 (r18639)
  • Fixed:
  • New viewports did not center on the correct position [FS#3414] (r18730)
  • The lock in the company window was only drawn for your own company [FS#3427] (r18729)
  • Some invalid gender/plural indices in strings, which could eventually cause crashes [FS#3480] (r18727)
  • With non-uniform industries the 'supplies' text when building a station could be incorrect (missing a cargo) [FS#3463] (r18726)
  • Refitting a non-refittable vehicle to it's default cargotype failed, causing problems for AIs [FS#3475] (r18724)
  • The join station window did not account for scrolling, so if you did scroll the station was not joined with the selected station [FS#3476] (r18713)
  • The wrong town is mentioned in the error when trying to make one way roads of town owned roads [FS#3478] (r18710)
  • Animation buffer for 32bpp-anim blitter was only validated during sprite blitting, other drawing operations did not check it. Initial startup and window resize could therefore lead to crash [FS#3464] (r18709)
  • Enable DrawGroundSpriteAt() to deal with foundations as DrawGroundSprite() does, and use this for drawing one-way-road-signs and clear-land-fences [FS#3467] (r18702)
  • When deleting an industry on water (oil rigs) the tiles on water were not marked dirty (r18700)
  • [NewGRF] GRF parameters were not properly initialised to zero, and not always checked for valid range (r18699)
  • Crash when scrolling to an item removed by filtering in the 'add NewGRF window' [FS#3471] (r18697)
  • [NoAI] AITile::IsCoastTile returned false for coast tiles with trees on them [FS#3404] (r18696)
  • After a company went bankrupt it was impossible to build a new waypoint close to a deleted one until the grey sign was gone (r18692)
  • Some keys that open windows that want to be located relatively to the toolbars/statusbar could cause a crash when in one of the end game screens [FS#3469] (r18690)
  • In some cases _sl.chs is used when not initialised. As _sl.chs always refers to a single table when initialised replace _sl.chs with the actual table [FS#3470] (r18686)
  • [NewGRF] Tile area of waypoints was not correctly given to NewGRFs in case of multi tile waypoints (r18679)
  • [NewGRF] If an action B did not have a 'data' string but would print it OpenTTD would segfault [FS#3452] (r18671)
  • Update all tiles when snowline height changes in larger steps than one tile [FS#3455] (r18670)
  • [NoAI] crash when trying to get the order destination of a 'nearest depot' order [FS#3454] (r18667)
  • Aircraft on the metropolitan airport took a long route to the closest loading pad [FS#3169] (r18661)
  • [NewGRF] Wrong strings drawn for cargo subtype in vehicle details [FS#3443] (r18658)
  • When trying to attach a wagon to an existing free wagon chain, do not attach it to itself [FS#3442] (r18653)
  • [NoAI] When AI tried to create NO_UNLOAD order, GOTO_NEAREST_DEPOT order was created instead [FS#3438] (r18651)
  • [YAPP] Treat the backside of an one-way path signals as a safe waiting point [FS#3430] (r18648)
  • [YAPP] A train inside a station was not always found when checking for trains on a reserved path (r18647)
  • [YAPP] Do not extend the reserved path through a newly built path signal directly in front of a stopped or loading train. Also restore the reserved path in more cases after removing a signal [FS#3418] (r18646)
  • Company league window was too narrow [FS#3434] (r18644)
  • Rotation could not be changed for heightmaps [FS#3436] (r18643)
  • When a company goes bankrupt and has vehicles on a drive through road stop that is not theirs, the 'filled' cache of the road stops would get corrupted [FS#3432] (r18642)
  • Downloading music sets would fail (r18638)
  • Crash when invalid pointers are left due to saveload failing at e.g. decompressing the savegame [FS#3421] (r18634)
  • When making a screenshot the name of the previous screenshot went missing in the 'successful screenshot' message and the console command would be shown twice [FS#3419] (r18631, r18630)
  • (un)loading counter being reset while loading a train and changing the (path) signal setup around the station [FS#3422] (r18628)
  • {CARGO} takes 2 parameters, not 1. This made {N:XYZ} commands after CARGO mess up their indices and that then triggered an assertion [FS#3425] (r18626)

New in OpenTTD 0.7.4 (Dec 3, 2009)

  • Fix: Endianness issue with saving the zoom level [FS#3333] (r18351)
  • Fix: [NewGRF] When starting a new game the values of action D variable 13 were incorrect [FS#3324] (r18207)

New in OpenTTD 0.7.3 (Oct 2, 2009)

  • Fix: [NewGRF] Crash when trying to build an industry that has no industry layout defined

New in OpenTTD 0.7.2 (Aug 3, 2009)

  • Fix: Vehicles would wait "very long" when they had nothing to unload and gradual loading was disabled [FS#3054] (r16933)

New in OpenTTD 0.7.1 (Jun 9, 2009)

  • 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)

New in OpenTTD 0.7.1 RC2 (May 22, 2009)

  • It contains fixes for a few (very unlikely) desyncs and an assortment of other small fixes.

New in OpenTTD 0.7.0 (Apr 2, 2009)

  • Reworked order system (conditional orders, have both non-stop and via instead of one of the two)
  • Abilitiy to have much more engines
  • Path based signals
  • AI framework giving everyone the ability to write his/her AI
  • Downloading of AIs and graphics from a central server (only when author wants to)
  • Non-water map edges
  • Initial support for right-to-left languages like Arabic and Hebrew
  • Increase or removal of several limits: window size, number of windows, network clients (now 255), companies (now 15)
  • Six new languages (Arabic, Hebrew, Indonesian, Latvian, Luxembourgish, Welsh)

New in OpenTTD 0.7.0 RC1 (Mar 16, 2009)

  • Feature: Pop up the AI Debug Window if one of the AIs crashed and show a message that the user should report the crash [FS#2728] (r15708)
  • Feature: Allow the number of towns that will be generated in the generate world window to be customized [FS#2672] (r15695)
  • Fix: Enabling freeform edges could cause submarines to get stuck on land tiles (r15733)
  • Fix: Centering on a vehicle did not respect its z coordinate (r15725)
  • Fix: Do not show passenger-/mail-capacity if the aircraft carries only cargo (r15705)
  • Fix: Blame NewGRFs returning inconsistent information in purchase-list/after building before users have a chance to blame OpenTTD for incorrectly autorenewing/-replacing [FS#2595] (r15701)
  • Fix: Just sell the old engines after autorenew/replace. Do not bother about trains exceeding the trainlimit, which will be sold anyway [FS#2721] (r15692)
  • Fix: Do not crash when the generate map does not contain a suitable location for a town [FS#2720] (r15689)
  • Fix: Do not crash when someone substitutes the "map generation" sprites with garbage [FS#2720] (r15685)
  • Fix: Vehicle images would be determined during the process of moving the vehicle which means that only the (orientation) data for the vehicles in front of it is valid. Now the data for the vehicles behind the vehicle are valid too [FS#2546] (r15677)
  • Fix: It was possible to remove rail tunnels/bridges and aqueducts build by rival companies [FS#2718] (r15667)
  • Fix: Sorting of engines in the purchase list did not use the same numbers as the GUI showed, e.g. articulated parts were not taken into accound when ordering by capacity [FS#2689] (r15666)
  • Fix: Handling of aircraft crash counter did not take account of the reduced number of calls (from 6 down to 2) to the aircraft event handler, resulting in crashed aircraft taking three times longer than they should to clear. Compensate by increasing the counter by 3 on every call instead of 1 (r15665)
  • Fix: Growing of vsize as (some) threads were not properly released (r15663)
  • Fix: Do not mark a company as having ratings in a town when querying the cost of a command (r15662)

New in OpenTTD 0.7.0 Beta 1 (Feb 17, 2009)

  • New features:
  • Make it possible to have multiple windows with edit box open simultaniously
  • Add ability to select which base graphics set is used from the Game Options window. The change takes effect when the window is closed. This option can only be used from the intro menu, as reloading graphics during a game may cause issues
  • Do not draw superfluous catenary wires
  • Add option to group and subtotal expenses list in the company finance window
  • Allow moving clients between companies/spectators by the server and the clients themselves
  • Native support for Transport Tycoon (Original) savegames
  • Allow terraforming of the tiles at the edges of the map
  • [NewGRF] Allow a grf to customize house name via callback 0x14D, during Tile Inquiry process
  • Downloading content from a central server (content.openttd.org) where authors can upload their NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from within the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates
  • Add support for IP range bans using CIDR notation
  • An AI framework so people can write their own AIs. This also removes the old cheating and heavily broken AI
  • [NewGRF] Support var 0x45 (curvature info) also for road vehicles
  • [NewGRF] Automatically set last engine ageing year to the last 'introduction year plus half model life', to allow engines later than 2050 to appear
  • Distant joining of stations
  • Advanced setting to keep various building tools active, which are usually closed after placing an object
  • Remove the window limit, but leave a configurable limit on the number of non-sticky non-vital windows
  • Allow road vehicles to move multiple steps in a tick (code based on train movement code) and add support for RV prop 15. This gives RVs a maximum speed of 318mph instead 79mph. This only implements higher speeds, not 'realistic acceleration'
  • Automatic reversing in front of block signals can now be disabled by setting pf.wait_oneway_signal respectively pf.wait_twoway_signal to 255
  • Few (optional) optimisations to making (initial) orders; like keeping goto selected
  • Make the road grids of town match, when all are using the same road layout ofcourse
  • Pressing CTRL while dragging to build a bridge builds the last built bridge type if possible
  • Make the date format for default savegame/screenshot names configurable
  • Allow scrolling with the left mouse button pressed (if enabled). Primarily useful for systems with touch screen
  • Allow up to 15 companies
  • Allow up to 255 clients in multiplayer games
  • When the chosen language is not supported by the current font, try to find a font that does and use that instead
  • [NewGRF] Action0Industries property 24 (industry supplies default name for nearby station)
  • Non-destructive autofill with option to keep waiting times
  • Stop-in-depot order; after this order you have to manually start the vehicle again (or sell it)
  • Arrow key scrolling in the server list
  • Initial support for handling bidirectional scripts and connecting Arabic characters
  • Allow sorting vehicles by remaining life time
  • Ability to reset name to default/automatic value (for vehicles, engines, towns, groups, stations, waypoints, managers and companies)
  • [NewGRF] Add Variational Action 2 Variable 0x47 for houses, Coordinates of the house tile
  • Allow overriding the palette of the base GRFs. This way you can play with NewGRFs made for the Windows palette with the DOS palettes base GRFs (and vice versa). Note that for this to work correctly ALL NewGRFs must use the same palette; mix and match is not yet supported
  • Double click to join selected server/company
  • Allow both the German as well as non-German toyland graphics as "correct" and official graphics
  • Allow people to create their own base graphics easily and without requiring code changes
  • [NewGRF]: Add support for property 0x13 for Bridges. In other words, one can now specifies a 16 bits cost multiplier
  • Make it possible to choose between the DOS and Windows graphics packs while retaining the possibility to override the palette
  • Increase the size of the console backlog. Now it'll only remove backlog items when there are more than a threshold and when they are there longer than (another) threshold
  • Make it possible to filter list_patches output like it's done for other list_* console commands
  • Path based signalling
  • Show [total-]cargo info in depot when [ctrl-]right-clicking on vehicle
  • NewGRF presets, selected by a drop down list in the NewGRF window. Presets are saved in the config file
  • Add a few extra columns with information to the server list
  • [NewGRF] Add var 65 in Variational Action 2 Variables for Houses
  • [NewGRF] Implement var 63, variational action2 variable for Houses. Or, in more simple terms, the check for the animation frame of nearby house
  • Aqueducts
  • [NewGRF] Add var 0x69 for industries, long format construction date
  • [NewGRF] Add long format introduction and maximum construction year for house
  • [NewGRF] Add access to current long year and date from Action 7/9/D and VarAction2 (23/24 or A3/A4), and add access to (long format) building year, in Variational Action2 Variable 49 for Vehicles
  • Splitting of the main toolbar when the resolution becomes very low so the buttons are still visible and useable
  • Make news messages use a linked list instead of a moving circular buffer. This makes it possible to store more news messages in the history
  • The number of news messages is reduced by removing every news message that is a configurable amount older than when it would not be shown in the newspaper popup/ticker, which is e.g. a month for industry production changes and half a year for subsidy offers. As a result the more important messages will stay longer in the message history (if longer than 30 messages)
  • Allow to have more than only two airports per town. The number of airports is now controlled by the noise each of them generates, the distance from town's center and how tolerant the town is (13226)
  • Introducing the so called 'engine pool' which primarily removes the fixed engine type limits and also happens to allow (with the patch option 'dynamic_engines') multiple NewGRF vehicle sets to coexist
  • [NewGRF] The ability to play NewGRF sounds for industries and stations
  • [NewGRF] Add some support for NewGRF station animation
  • Sorting vehicle lists by road vehicle/train length
  • Conditional 'skip/jump' orders
  • Ability to send a vehicle (using default orders) to the nearest depot
  • Ability to force a vehicle to not load or to not unload at a station
  • Four different non-stop types, individually selectable per order. Replaces "TTDP compatible order" setting
  • Three different load type in a single game instead of two. One can choose full load all and full load any instead of full load being governed by the "full load any" patch setting
  • Financial and Player Selection Face windows are now remembering their position when toggling sizes
  • Show what cargos a station could be supplied with
  • [NewGRF] Add random action 2 type 84. For vehicles only
  • [NewGRF] Add support for var A2/22 for action 7/9/D: Difficulty level
  • Add +/- toggle buttons to station cargo waiting list to show/hide the detailed transferred cargo information
  • Open the time table when pressing the order button while pressing the CTRL key
  • On Screen Keyboard for input fields so someone without a keyboard can enter text too
  • Changes:
  • When checking for unique names, compare only with manually set names
  • Apply the 'warn if train's income is negative' setting to other vehicle types, too
  • When loading games in "network" mode use the start date of the save game for the server and all clients when loading the NewGRFs instead of the current date. Prevents desyncs caused by action 7/9s skipping parts of the GRF based on the date or some other variables that can differ at NewGRF load time
  • Only say a engine/vehicle is refittable when it can be refitted to at least two cargo type or when it has subcargos
  • [NewGRF] Since our NewGRF handling is better than it used to be, disable a NewGRF if unexpected sprites are reached
  • Fixed:
  • A town could build a statue under a bridge
  • Multiple vehicles could be filling the timetable and only the data from one vehicle would be taken. Now only allow one to be filling at a time
  • When testing for parallel road two tiles away, do not move more than one tile along the road
  • [NewGRF] The subcargo returned by vehicle variable 0x42 should be the most-common-subcargo of the most-common-cargo. If nothing is transported 0x..FFFF00 should be returned
  • A tram circling around in a depot did never actually 'enter' the depot
  • Changing town road layout in-game caused ugly road networks
  • Company could never have auto-assigned colour 0 (dark blue)
  • Deadlock (with wide fonts) or desync when generating manager name
  • Close all windows *before* starting a new game/loading a game instead of doing that as one of the latest steps of loading the game. This caused, in some cases, the NewGRF settings to be reset when the game was already loaded resulting in instant desyncs when joining a network game
  • Aircraft could be 'loading in the air' or have zero speed while in air after converting old savegames
  • Tile error location not reset when leveling land causing a tile to be highlighted when there was nothing to flatten
  • Signs with sign 'Sign' were lost when converting from TTD savegames
  • [NewGRF] Add support for 8 byte action7/9 data, used as a mask for GRFID checks
  • [NewGRF] Keep industry variables 8E and 8F in sync with 93, when changing production using results 0D, 0E or 0F of callback 29 or 35
  • [NewGRF] Disable a NewGRF from loading if it contains multiple Action 8s
  • Wrong defaults for service interval when switching between service interval in days and service interval in percentages
  • [NewGRF] Building new station parts did not allocate a new station spec effectively breaking variable 41. This was due to the limited number of station specs that we can have per station. This fix makes newly build station parts create a new spec until one cannot allocate new station specs anymore and it'll revert to the old behaviour (sharing station specs)
  • [NewGRF] Station specs did not get deallocated when building a new station part over them
  • Sharing/cloning/inserting of orders that the/a vehicle (in the shared list) cannot go to (wrong station type etc)
  • The "animation state" of the bubbles was stored in a variable that was not stored in the savegame. Using a variable that gets saved in the savegame solves the desync and makes it a bit clearer
  • Abort dragging of vehicles in the group window when they are deleted
  • Do not unnecessarily reset the cursor, when a different vehicle is dragged
  • [NewGRF] First create all articulated parts of roadvehicles, then call callback 36 capacity, also call it for all articulated parts
  • Overflow of number of orders per vehicle
  • Off-by-one causing possible out-of-bounds reads
  • In an MP game in SP mode no company would go bankrupt. Furthermore companies that passed the "bankrupt" period (4 quarters) would not go bankrupt when loading the game back in MP. Now any company that is in MP or not "currently controlled by the player" in SP will bankrupt
  • Do not let any disaster vehicle (Helicopter or Airplane) target invalid industry
  • Memory leak in Action 0x0F (new town names)
  • Writing a single char to the config file caused reading outside a buffer
  • First transfer the whole load of a vehicle chain to industries before triggering any processing. This reduces callback usage and resolves critical rounding errors when using input-cargo-multipliers instead of production callbacks
  • Zeppeliner (disaster) should target st->airport_tile, not st->xy
  • [NewGRF] Gradual filling graphics were not chosen according to the NewGRF spec
  • [NewGRF] Check sprite size when executing action 6
  • [NewGRF] Property 7 and callback 12 were broken for aircraft. Now callback 12 is properly called also for 'mail'. If the callback is not used, 'mail' uses 1/4 of property 7
  • Possible stack corruption when reading corrupted sprites
  • [NewGRF] Return the current year as construction year for unfinished houses
  • [NewGRF] When callback 1E fails, use the standard random colour
  • The company ID is off-by-one with respect to the rest of the GUI in the cheat window
  • The range for kicking/banning clients is based on the maximum number of clients, not the maximum number of companies
  • Allow capacity callbacks (15, 36) to return zero capacity
  • Crashes when a NewGRF sends an invalid string
  • Order pool seemed to look full when it was not as it only checked whether it was possible to allocate a new block of pool items instead of checking for free pool items
  • Do not deliver cargo to industries not inside station catchment area
  • Allocate stub (empty) sound entries when loading an empty/corrupt/incorrectly sized sample.cat instead of making valid NewGRFs fail to load
  • Make sure trains stop at the end of a station; a 3/8th length train did stop 2/8th of it's length too early causing a 63/8th long train not to fit in a 4 tile station
  • Small possible chance of desync due to sorting on pointer instead of by (station) index
  • When a road stop gets moved make sure to update the destination of RVs going to that road stop
  • Support for spaces in directories passed to ./configure
  • Trains would sometimes move one time too often/little when moving from diagonalnon-diagonal tracks
  • Balance the monthly random industry changes, by introducing a daily random industry change
  • Save the palette of the loaded NewGRFs in the savegame, so joining with a server using Windows palette will make a client with the DOS palette do palette conversion and (thus) not cause a desync
  • Glitches (alignment issues/inconsistent vehicle graphics) in original graphics
  • One could not get a list of vehicles sharing an order when the number of orders was 0; you could see that the vehicles had a shared order though
  • Various assorted autoreplace issues/malbehaviours
  • The autoreplace gui showed vehicle types for replacement which CmdSetAutoReplace() did not accept
  • Automatically recalculate inflation if NewGRFs are changed and cargo types are added, so that cargo payment rates are correct

New in OpenTTD 0.6.3 (Dec 30, 2008)

  • many bugfixes, including fixes for a few desyncs