Changeset - r18966:5d9d52c47d55
[Not reviewed]
master
0 5 0
rubidium - 13 years ago 2012-01-21 14:28:53
rubidium@openttd.org
(svn r23831) -Prepare: 1.2.0-beta3
5 files changed with 45 insertions and 6 deletions:
0 comments (0 inline, 0 general)
changelog.txt
Show inline comments
 
1.2.0-beta3 (2012-01-21)
 
------------------------------------------------------------------------
 
- Feature: [NoGo] Allow to chose the goal question window's title from a (small) set of options [FS#4992] (r23827)
 
- Feature: [NewGRF] Enhance some fatal NewGRF errors with the spritenumber that caused the problem (r23809)
 
- Fix: Loading empty GS strings/translations failed [FS#4996] (r23829)
 
- Fix: Return early from SlString() for empty strings, before doing invalid things which surprisingly do not break everything. (r23828)
 
- Fix: 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)
 
- Fix: Removal of towns with 0 population failed during map generation [FS#4951] (r23819)
 
- Fix: [Network] Desync due to different NewGRF version at client and server [FS#4962] (r23817)
 
- Fix: [NewGRF] Textstack was not properly used when storing parameters for the error message window [FS#4969] (r23803)
 
- Fix: Game lobby gui not updated when new company information becomes available [FS#4968] (r23802)
 
- Fix: Reading the UTF-8 BOM from AI/GS files on big-endian machines failed (r23801)
 
- Fix: Move 'refitable to' text above custom newgrf text in build vehicle gui [FS#4958] (r23792)
 
- Fix: [NewGRF] Resize text panel for parameter description if it does not fit in 4 lines [FS#4960] (r23791)
 
- Fix: [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)
 
- Fix: [NewGRF] Failure to load newgrf files that use action 0 general prop 15 with a missing language file (r23788)
 
- Fix: Crash due to genders used for station name in hangar string of Italian translation [FS#4965] (r23782)
 
- Fix: 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)
 
- Fix: [Network] Missing naming of some errors[FS#4963] (r23780)
 
- Fix: 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)
 
- Fix: Hide the PCX screenshot format from the options window, if a 32bpp blitter is used (r23775)
 
- Fix: [NewGRF] Update all cached train properties if a train vehicle enters a new railtype (r23773)
 

	
 

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

	
 

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

	
 

	
 
1.1.5 (2012-01-14)
 
------------------------------------------------------------------------
 
- Fix: Make default timeouts for certain network states lower and configurable [CVE-2012-0049] [FS#4955] (r23764)
 
- Fix: Check whether a water tile is really empty when overbuilding it with an object [FS#4956] (r23763)
 
- Fix: Missing locking causing crash in extreme case when being in the MP lobby [FS#4938] (r23752)
 
- Fix: 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)
 
- Fix: 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)
 

	
 

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

	
 

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

	
 

	
 
1.1.3 (2011-09-15)
 
------------------------------------------------------------------------
 
- Fix: Prevent authentication bypass for the admin port when a new game is started [FS#4771] (r22934)
 
- Fix: TTO savegames with any aircraft not in an hangar caused crashes during load (r22915)
 
- Fix: 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)
 

	
 

	
 
1.1.3-RC1 (2011-09-04)
 
------------------------------------------------------------------------
 
- Add: River graphics for the original base set (r22766)
 
- Fix: [NewGRF] DCxx text references via the text stack are not allowed, but caused crash [FS#4758] (r22882)
 
- Fix: Harden memory allocation (r22881, r22880, r22875)
 
- Fix: Miscalculation of train curve speed limits (r22879)
 
- Fix: Validate image dimensions before loading [CVE-2011-3343] [FS#4747] (r22878, r22877, r22874, r22873)
 
- Fix: Report an error in the news if autoreplace/renew fails due to the engine type being no longer available [FS#4712] (r22876)
 
- Fix: Perform stricter checks on RLE compressed BMP images [CVE-2011-3343] [FS#4746] (r22872, r22871)
 
- Fix: [NewGRF] Variables 40 and 81 of callback 18 are not the same as 80 (r22867)
 
- Fix: [NewGRF] Generic callbacks shall chain to the next GRF when the callback fails (r22866, r22865)
 
- Fix: Perform stricter checks on some commands [CVE-2011-3341] [FS#4745] (r22845)
 
- Fix: Harden savegame load against too many AI config settings [CVE-2011-3342] [FS#4748] (r22843)
 
- Fix: Compilation with GCC 4.7 (r22832, r22728, r22719)
 
- Fix: Allow to demolish aqueducts built in the scenario editor [FS#4741] (r22821)
 
- Fix: Towns expanding from the 'wrong' side of a tunnel or bridge [FS#4731] (r22810, r22809)
 
- Fix: [NewGRF] String codes for dates should use unsigned words, like old OpenTTD did before it learned dates before 1920 (r22774)
 
- Fix: [NoAI] Clarify the meaning of AIStation::IsWithinTownInfluence(), AITile::IsWithinTownInfluence() and AITown::IsWithinTownInfluence() [FS#4702] (r22763)
 
- Fix: [NewGRF] Also free allocated depot tables of NewGRF airports (r22760)
 
- Fix: [NewGRF] Invalid memory access when querying the grfID of the default objects [FS#4730] (r22757)
 
- Fix: When marking tile selections dirty, use the height information of the corners instead of the surface slope. This is more accurate when the foundation is kind of undefined [FS#4727] (r22755)
 
- Fix: Make aircraft point to the exit when leaving the hangar [FS#4696] (r22743, r22742, r22741)
 
- Fix: Display the size of the leveled platform in the measurement tooltip of terraforming operations [FS#4708] (r22740, r22739)
 
- Fix: Setting company passwords via the GUI on servers (including starting a company with the default password) failed, so no client could join that company [FS#4722] (r22738)
 
- Fix: [NewGRF] The construction stage sprites were incorrectly selected in cases other than 1 or 4 sprites per set (r22731)
 
- Fix: [NoAI] AITile::GetCargoAcceptance, AITile::GetCargoProduction and AIRail::BuildNewGRFRailStation did not check the cargo argument for validity (r22726)
 
- Fix: [NewGRF] Always draw NewGRF supplied texts with a default colour (r22725)
 
- Fix: [NewGRF] Do not restrict AdvVarAct2 to 255 operations (r22723)
 
- Fix: If there is no point in opening the rail/air toolbar, do not open it for people who use hotkeys either rather than only for those using GUI elements (r22716, r22715, r22714)
 
- Fix: [NoAI] Allow AIAirport::GetNoiseLevelIncrease() also for expired airports [FS#4704] (r22710)
 

	
 

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

	
 

	
 
1.1.2-RC2 (2011-07-30)
 
------------------------------------------------------------------------
 
- Fix: Cost of adding an extra road type to a bridge or tunnel was undercalculated [FS#4680, FS#4681] (r22700, r22699)
 
- Fix: Only insert cleared object tiles into _cleared_object_areas if clearing actually succeeds, else subsequential tests of the same tile will be skipped and considered successful [FS#4694] (r22698)
 
- Fix: When building a house it could be built at the wrong place if multitile houses failed some tests (r22697)
 
- Fix: [Network] Failed network address resolving could trigger temporary freezes [FS#4697] (r22696, r22695)
 
- Fix: [NewGRF] The override managers were not reset in some cases like creating a new scenario [FS#4691] (r22693)
 
- Fix: [NewGRF] Aircrafts defined with IDs above the default aircrafts always defaulted to passenger cargo (r22690)
 

	
 

	
 
1.1.2-RC1 (2011-07-24)
 
------------------------------------------------------------------------
 
- Change: [NewGRF] Only allow access (via hotkey and menu) to the bounding box visualisation when NewGRF developer tools are enabled (r22675)
 
- Fix: [NewGRF] Disallow accessing variable 1B in network games due to desync reasons (r22682)
 
- Fix: 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)
 
- Fix: [NewGRF] Parameters from NewGRFs were not properly parsed in all cases [FS#4599] (r22648, r22630, r22629, r22628, r22627)
 
- Fix: GetSection() does not return a LockPart [FS#4678] (r22645)
 
- Fix: [NewGRF] Disallow building NewObjects on water tiles owned by another company (r22643)
 
- Fix: [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)
 
- Fix: Keep the previous owner of the upper and lower lock parts if they are built on existing water (r22638)
 
- Fix: [NewGRF] Airports should not expose the tile specific random bits of the north tile. Only airport tiles should access those (r22636)
 
- Fix: [NewGRF] Correctly reseed random bits of industries and industry tiles (r22635, r22634)
 
- Fix: [NewGRF] Implement variables 25 and 7F for railtypes (r22633)
 
- Fix: [NewGRF] Additional text in fund industry window is NewGRF supplied and thus should have a default colour (r22631)
 
- Fix: Also initialise _old_vds with newgame settings; TTD savegames do not contain these settings [FS#4622] (r22626)
 
- Fix: Do not zero the orders of disaster vehicles when converting savegames [FS#4642] (r22625)
 
- Fix: When closing an AI company the local player cheated to, we need to cheat him to another company [FS#4654] (r22624, r22623)
 
- Fix: When closing down companies their shares in other companies must be sold even if share trading is disabled at that point of time (r22622)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: [NewGRF] If callback 33 returns a value out of range, no sound effect shall be played [FS#4656] (r22614)
 
- Fix: Use rotated heightmap sizes for reporting scaling problems [FS#4663] (r22608)
 
- Fix: 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)
 
- Fix: Add active NewGRFs to the list of available ones when selecting the empty preset [FS#4644] (r22594)
 
- Fix: Reading of heightmaps with uncommon BMP formats failed due to uninitialised variables [FS#4645] (r22592)
 
- Fix: 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)
 
- Fix: Remove BaseStorageArrays from _changed_storage_arrays on destruction (r22583, r22551)
 
- Fix: Do not increment STL iterators after they have been invalidated (r22582)
 
- Fix: Do not lower the arrow buttons in the NewGRF/AI parameter windows if they are clicked when disabled (r22553, r22499)
 
- Fix: Clear airport persistent storage on construction/removal of airports (r22552)
 
- Fix: Possible crash when opening the airport build window for the first time [FS#4619] (r22538)
 
- Fix: Replace the half small airport structure on the intercontinental airport with some grass [FS#3494] (r22537)
 
- Fix: Documentation omission regarding admin protocol [FS#4632] (r22536)
 
- Fix: [NoAI] Doing rescan_ai in a game with running AIs caused a crash [FS#4631] (r22534)
 
- Fix: 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)
 
- Fix: MinGW 64 related compilation issues [FS#4623] (r22522, r22491, r22490, r22489)
 
- Fix: The layout selectors of the airport build GUI did not latch properly (r22497, r22495)
 
- Fix: Callback result for airport layout name was incorrectly used (r22496)
 
- Fix: Airport preview sprite can depend on the layout, so update the cached SpriteID when the layout changes (r22494)
 
- Fix: Engine IDs for coal and mail wagons were swapped in the TTO savegame conversion [FS#4622] (r22487)
 
- Fix: The caption of centered windows could be moved out of the main window and thus become inaccessible when resizing the main window (r22485, r22484)
 
- Fix: No client error packet was sent to the admin bots [FS#4585] (r22384)
 

	
 

	
 
1.1.1 (2011-06-01)
 
------------------------------------------------------------------------
 
- 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)
 

	
 

	
 
1.1.1-RC1 (2011-05-15)
 
------------------------------------------------------------------------
 
- Feature: [NewGRF] Allow to filter by town of the current industry when using industry variable 0x68 [FS#4591] (r22434)
 
- Change: Improve the speed of YAPF by tweaking hash tables size (r22351, r22350, r22348)
 
- Change: Show one digit of the fractional train length in the depot (r22336, r22305, r22304, r22303)
 
- Fix: When determining the executable path failed, the working directory was used instead, circumventing the not-home-directory check [FS#4613] (r22465)
 
- Fix: [Windows] Prevent a crash when launching OpenTTD with -d from a MSYS console [FS#4587] (r22464)
 
- Fix: Update the saveload window immediatelly after scanning a new directory, so queued events reach the window when already updated [FS#4615] (r22463)
 
- Fix: [NewGRF] The c and p parts of station vars 40, 41 and 49 were incorrect for large stations (r22455, r22286)
 
- Fix: [NewGRF] Zero register 0x100 as specified before resolving custom station foundations (r22452)
 
- Fix: Do not 'log' the NewGRFs in the screenshot when in the menu [FS#4610] (r22450)
 
- Fix: [NewGRF] When GRFs are disabled via Action E or due to GRM failure, also display an error in the GUI (r22444, r22443)
 
- Fix: [NewGRF] Do not popup fatal NewGRF error messages in the intro screen. The GRFs are not going to be activated there anyway and the GRF settings GUI will not display the errors either (r22442)
 
- Fix: Catenary was drawn incorrectly next to level crossings with foundations (r22437)
 
- Fix: [NewGRF] Apply railtype property 12 (station graphics) also to station groundsprites from action 1 (r22436)
 
- Fix: Git revision detection would return too much when tags are involved (r22435)
 
- Fix: [NewGRF] When action14 specified different values for the palette, the values were OR-ed. Use the last set value instead (r22416)
 
- Fix: [Network] Kicking yourself via remote console crashes the server [FS#4606] (r22414)
 
- Fix: [NewGRF] Make sure the action2 ID of a generic feature callback is valid (r22409)
 
- Fix: Check the availability year of all houses, not just the NewGRF houses, when making sure that at least one is available onwards from year 0 [FS#4581] (r22389, r22300, r22299)
 
- Fix: When a game uses a lot of NewGRFs the buffer for storing that information in the PNG is too small (r22388)
 
- Fix: Windows' recv seems to return 'graceful closed' before having passed the remaining buffer which causes OpenTTD to think all connections are 'incorrectly' terminated, i.e. without the 'I am leaving' packet from the client. So let the client wait a tiny bit after sending the 'I am leaving' packet and before gracefully closing the connection [FS#4601] (r22387)
 
- Fix: When the last AI company gets removed, the 'dead' state was not reset in the AI debug window [FS#4602] (r22386)
 
- Fix: Recolouring of silicon bridge was done incorrectly (r22380, r22379, r22378)
 
- Fix: Crash when clicking a removed company in the vehicle list dropdowns [FS#4592] (r22373)
 
- Fix: Keep better accounting of the order in which clients joined; client cannot be starved from joining and they get shown the amount of clients waiting in front of them (r22372, r22370, r22369, r22368, r22367, r22366, r22365, r22364, r22363, r22362, r22361)
 
- Fix: Make sure saving has completely and utterly finished before starting a new one. Otherwise you could start a save, which would be marked as done by the previous save stopping and then yet another save could be started... and that could create a deadlock [FS#4596] (r22371)
 
- Fix: Delete the client list popup when the client got removed (instead of previously selecting some other client) (r22360, r22359, r22358)
 
- Fix: When inserting automatic orders, do not create consecutive duplicate orders (r22333, r22332, r22331, r22330, r22329, r22328, r22327)
 
- Fix: Destinations of conditional orders were update incorrectly when deleting orders in front of the conditional orders, if the target order was the order just before of the conditional order (r22326)
 
- Fix: Vehicles skipped orders when inserting automatic orders failed (r22324)
 
- Fix: [NewGRF] When determining refittability use the cargo translation table of the GRF setting the refitmask instead of the GRF defining the action 3 (r22316)
 
- Fix: Make road vehicles, ships and aircraft skip orders if they are leaving a depot and heading to the same one again; just like trains (r22309)
 
- Fix: Waiting on a server could kick the client, or rather the client would kick itself due to an unexpected packet [FS#4574] (r22308)
 
- Fix: When drawing the town authority window, check whether the availability of the actions changed, and force a complete redraw in that case (r22307)
 
- Fix: The 'freeform edges' setting could be enabled when there were buoys on the northern border [FS#4580] (r22297)
 
- Fix: Reset Window::scrolling_scrollbar when raising scrollbar buttons [FS#4571] (r22294)
 

	
 

	
 
1.1.0 (2011-04-01)
 
------------------------------------------------------------------------
 
- 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)
 

	
 

	
 
1.1.0-RC3 (2011-03-18)
 
------------------------------------------------------------------------
 
- Fix: New game settings were applied too 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)
 

	
 

	
 
1.1.0-RC2 (2011-03-04)
 
------------------------------------------------------------------------
 
- Fix: Following a vehicle with a very high VehicleID was impossible (r22181)
 
- Fix: [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)
 
- Fix: [NewGRF] Disable a station NewGRF when it contains an unterminated spritelayout in action0 prop 08 instead of crashing (r22164)
 
- Fix: Building a station part adjacent to both an existing station and a rail waypoint failed [FS#4541] (r22163)
 
- Fix: No update of NewGRF window when unknown GRF name becomes available [FS#4533] (r22162)
 
- Fix: [NewGRF] Industry prop 0x11 is 4-bytes long, not 3 bytes (r22157)
 
- Fix: Stations/infrastructure were not properly sold on some clients during bankruptcy [FS#4529] (r22154)
 
- Fix: The Greek translation did not work as it breached the 200.000 bytes 'limit' for loading language files [FS#4536] (r22153)
 
- Fix: 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)
 
- Fix: Do not run savegame conversion during SlNullPointers; the pointer might not be converted or be NULL at that point (r22146)
 
- Fix: Some valid keycodes were ignored along with the invalid ones (r22142)
 
- Fix: 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)
 
- Fix: [NewGRF] Skipping only the invalid part of an action14 failed, the rest of the action was skipped instead (r22138)
 
- Fix: Spectators had crashes when closing buoy windows (r22131)
 
- Fix: Build-station-window showed wrong selection when reopening [FS#4530] (r22128)
 
- Fix: Canals would get drawn as land in the smallmap when using the owner window (r22127)
 
- Fix: 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)
 
- Fix: CommandQueue::Pop() did not update 'last'; popping the last item caused the queue to disconnect unless there was only one item [FS#4522] (r22123)
 
- Fix: 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)
 
- Fix: In case of high frame_freq one could get commands executed after a new network game was started (r22121)
 
- Fix: [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)
 
- Fix: The refit window was not correctly updated after selecting with Ctrl+Click [FS#4525] (r22118)
 
- Fix: CanRemoveRoadWithStop() failed for _current_company = OWNER_TOWN, and for OWNER_NONE-owned road (r22117)
 

	
 

	
 
1.1.0-RC1 (2011-02-18)
 
------------------------------------------------------------------------
 
- Feature: [NewGRF] Test all possible industry layouts during construction and prospecting [FS#4131] (r22012, r22010)
 
- Feature: Wheel scrolling in the console (r21982)
 
- Feature: 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)
 
- Feature: Add a setting to enable/disable funding local road reconstruction (r21974)
 
- Feature: Introduce 'minimal' number of industries as a replacment for the old 'none' setting in the new game window (r21969)
 
- Change: When loading old savegames with long trains set the maximum train length to the length of the longest train (r22061)
 
- Change: Always report mammoth trains are disabled to NewGRFs, and allow the maximum train length to be modified in multiplayer as well [FS#4471] (r22004)
 
- Fix: Remove invalid keycodes when reading hotkeys.cfg [FS#4510] (r22094)
 
- Fix: 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)
 
- Fix: When deleting towns, only relocate objects during DC_EXEC (r22087)
 
- Fix: [Windows] If fullscreen fails with current resolution, use desktop resolution [FS#4489] (r22081)
 
- Fix: The owner view of the smallmap was not updated after a company colour change (r22079)
 
- Fix: Maximum train length interfered with wagon replacement when wagon removal was turned on [FS#4499] (r22078)
 
- Fix: 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)
 
- Fix: Immediately update the train weight when you change the multiplier for train cargo weight (r22073)
 
- Fix: Some hotkey names in hotkey.cfg for the scenario editor toolbar were completely bogus (r22071)
 
- Fix: Crashes when disconnecting after requesting the map [FS#4503] (r22070)
 
- Fix: Delete all savegame packets, not just the first one (r22069)
 
- Fix: 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)
 
- Fix: Do not hold a mutex when sending packets and thus possibly closing the connection as that wants to acquire the mutex again (r22067)
 
- Fix: 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)
 
- Fix: Crash when disconnecting and reconnecting while the server is still saving the savegame [FS#4497] (r22064)
 
- Fix: Memory leak when saving with LZMA or zlib fails mid-way (r22062)
 
- Fix: Make the send chat message window follow the position of the status bar (r22059)
 
- Fix: Metric and imperial HP are not the same. As imperial HP are used internally, set a conversion rate for metric HP [FS#4408] (r22056)
 
- Fix: [Squirrel] Some invalid squirrel code caused the squirrel compiler to crash [FS#4490] (r22055)
 
- Fix: The land area information window was not updated after a language change (r22053)
 
- Fix: Roads under road stops would get a wrong owner after overbuilding (r22051)
 
- Fix: 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)
 
- Fix: [NewGRF] Company 0 does not always exist, so put temporary vehicles in a valid company (r22048)
 
- Fix: Make sure order indices stay in range when copying, sharing, unsharing or deleting all orders [FS#4487] (r22046)
 
- Fix: Update the consist cache when a part of a train is flipped in the depot [FS#4493] (r22044)
 
- Fix: Invalidate the right windows when a part of a train is flipped in the depot (r22043)
 
- Fix: Tab completion in chat did not cycle through all possible options (r22038)
 
- Fix: 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)
 
- Fix: The server list got not resorted/redrawn after NewGRFs were downloaded [FS#4482] (r22029)
 
- Fix: When paused and having the allowed actions while paused setting on 'no actions' cheating money would fail [FS#4479] (r22016)
 
- Fix: Only show one AI per unique ID instead of all versions in the output of 'openttd -h' (r22007)
 
- Fix: Smoke/sparks of trains would be shown under bridges, or rather through bridges [FS#4480] (r22006)
 
- Fix: 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)
 
- Fix: [YAPF] Under some circumstances vehicles could be lost [FS#4472] (r21996)
 
- Fix: [NewGRF] Make computations of closest-land/water-distances handle waterish tiles more correctly (r21994)
 
- Fix: When building a lock on dry land costs for clearing water were deducted rather than for building canals (r21993)
 
- Fix: 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)
 
- Fix: The share/copy-orders-cursor was not updated to refer to the new vehicle when it got autoreplaced/-renewed [FS#4466] (r21991)
 
- Fix: Vehicle status bar glitches on speed changes (r21989)
 
- Fix: Scrolling of the console in pages used wrong line height and scrolled too much (r21979)
 
- Fix: Redraw the town authority window after modifying town authority settings (r21973)
 
- Fix: Crash when a multiplayer company goes bankrupt with 'you' in it [FS#4464] (r21970)
 

	
 

	
 
1.1.0-beta5 (2011-02-04)
 
------------------------------------------------------------------------
 
- Feature: GUI setting to disable reversing at signals (r21962)
 
- Feature: Not loading and not unloading is now possible (r21961)
 
- Change: [NewGRF] Disable the flipping of train engines/wagons in the depot by default for NewGRFs [FS#4462] (r21966)
 
- Change: Show the length of vehicles in tiles, instead of half tiles in the depot (r21960)
 
- Change: Replace longbridges settings with custom maximum bridge and tunnel length setting (r21959)
 
- Change: Randomize the vehicle a small UFO targets, do not use the one with lowest index (r21949)
 
- Fix: Do not count the number of vehicles but the length of vehicles to (configurably) limit train length [FS#4461] (r21960)
 
- Fix: [NewGRF] Reset the carry flag every 4 bytes in Action 6 when adding more than one variable (r21951)
 
- Fix: Road vehicle was moved under the bridge when it was destroyed by an UFO while on a bridge (r21948)
 
- Fix: Crash when converting a savegame with vehicles crashed in a tunnel entry, or with vehicles reversing there (r21947)
 
- Fix: Funny behaviour when a road vehicle reverses while overtaking, so abort the overtake attempt when reversing the road vehicle [FS#4447] (r21946)
 
- Fix: Not all vehicles should be tested to be inside a tunnel upon savegame load [FS#4460] (r21940)
 
- Fix: Do not remove existing road/tram bits when overbuilding stops of the opposite road type [FS#4457] (r21936)
 
- Fix: Allow to overbuild road stops which are built over trams (r21935)
 
- Fix: Automatic orders behave now stable wrt. service orders and are not added or removed depending on the need of servicing [FS#4440] (r21933)
 
- Fix: 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)
 
- Fix: Converting an expensive rail type to a cheap one could give more money than removing and rebuilding cost (r21919)
 
- Fix: Languages improperly sorted in the 'start server' window [FS#4443] (r21918)
 
- Fix: 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)
 
- Fix: Include the capacity of non-refittable vehicles in the refitted-capacity, if their cargo matches (r21904)
 
- Fix: Do not count articulated parts when passing the number of vehicles to refit to the command. That may exceed 8 bits (r21902)
 
- Fix: [NoAI] Hide automatic orders from AIs as they have no way of dealing with them (r21900)
 
- Fix: Do not show a vehicle selection in the RefitWindow for refit orders. You cannot select anything anyway (r21899)
 
- Fix: Using a pointer-iterator and adding things (thus reallocating) to the iterated array caused OpenTTD to crash on invalid pointers [FS#4438] (r21898)
 
- Fix: Only some scenarios from the main scenario folder and no heightmaps could be started in the 'start server' window [FS#4421] (r21892)
 
- Fix: Crash when scrolling outside of the main window (with some video backends) [FS#4434] (r21889)
 
- Fix: [NewGRF] String codes 0x80 and 0x81 were broken since the typechecking of string parameters [FS#4422] (r21885)
 
- Fix: 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)
 
- Fix: When a single-vehicle train was reversed while on a slope, its GOINGUP/DOWN were not swapped (r21874)
 
- Remove: 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)
 
- Remove: The non-uniform stations setting; it has been broken for over a year, and thus not used [FS#4456] (r21953)
 

	
 

	
 
1.1.0-beta4 (2011-01-21)
 
------------------------------------------------------------------------
 
- Feature: [NewGRF] Rail type property to influence sorting of rail types in the drop down list [FS#4394] (r21866)
 
- Feature: [Network] Console command to change the password of other companies for servers [FS#4368] (r21855)
 
- Feature: [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)
 
- Feature: 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)
 
- Feature: After building a road or tram bridge/tunnel, connect it to any existing road or tram (r21778, r21777)
 
- Feature: Display NewGRF object sprites during object picking (r21772)
 
- Feature: Display NewGRF station sprites during station picking (r21755)
 
- Change: Allow LMB scrolling with the mouse outside of the extra viewport instead of canceling scrolling when going slightly over the edge (r21838)
 
- Change: 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)
 
- Change: Keep aqueducts and road/tram tunnels and bridges after removing a company (r21780)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: Left-mouse-button dragging would switch over to other viewports instead of staying locked to the viewport you started on [FS#4419] (r21837)
 
- Fix: 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)
 
- Fix: Desync debug savegames might not be actually saved in case threading is enabled, which is enabled by default [FS#4427] (r21833)
 
- Fix: Service orders for trains/aircraft would (sometimes) not get a time when autofilling [FS#4414] (r21831)
 
- Fix: Crash with the small map window on big endian platforms [FS#4417] (r21830)
 
- Fix: The expectations from the 'always build infrastructure' setting name/description did not match the behaviour [FS#4007] (r21826)
 
- Fix: Allow dragging of combo signals (again) [FS#4378] (r21816)
 
- Fix: [YAPF] Apply a pathfinder penalty for back of one-way path signals so those arenot preferred over other possibilities [FS#3908] (r21815)
 
- Fix: Check GRF version from action 8, and disallow usage of GRFs with versions above 7 (r21814)
 
- Fix: Crash when displaying the owner view [FS#4411] (r21813)
 
- Fix: 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)
 
- Fix: Loading a TTO savegame failed after loading a TTDP savegame (r21799, r21798)
 
- Fix: The size (in characters) of the string inputs was too small for loading some TTD savegames (r21797)
 
- Fix: Drive through road stop state was not properly converted from TTDPatch savegames [FS#4398] (r21796)
 
- Fix: Broken usage of GetTileOwner() caused wrong conversion of old savegames (r21793)
 
- Fix: Terraforming limit was off-by-one when terraforming a single tile height [FS#4407] (r21791)
 
- Fix: TTDPatch savegames can have train waypoints encoded as buoys [FS#4398] (r21790)
 
- Fix: When the font misses the fallback character '?', use the sprite font's '?' instead [FS#4405] (r21789)
 
- Fix: Crash due to invalid rail station width and height data stored in TTDPatch savegames [FS#4398] (r21786)
 
- Fix: Crash when converting savegame with custom waypoint name (r21784)
 
- Fix: Diagonal tile iterator failed for A * 0 selections [FS#4396] (r21768)
 
- Fix: Do not limit tile clearing during bankruptcy [FS#4397] (r21767)
 
- Fix: PBS reservation was not shown on road crossings with NewGRF railtypes [FS#4369] (r21765)
 
- Remove: The 'stopall' console command, as its functionality was broken. Group start/stop commands can be used instead [FS#4409] (r21804)
 

	
 

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

	
 

	
 
1.1.0-beta2 (2010-12-31)
 
------------------------------------------------------------------------
 
- Feature: Command logging using the admin interface (r21668)
 
- Feature: 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)
 
- Add: [NoAI] AIEventTownFounded (r21664)
 
- Add: [NoAI] AIRail::GetName() to get the name of a railtype (r21663)
 
- Add: [NoAI] AITown::IsCity() so AIs can find out which towns grow faster than others (r21654)
 
- Change: Do not show price to build a bridge in the scenario editor as they are free to build there [FS#4358] (r21673)
 
- Change: Do not highlight tile when selecting a vehicle to clone or an order to skip to (r21616)
 
- Fix: Estonia introduced the Euro in 2011 (r21670)
 
- Fix: Autofill timetable had side effects in test mode, possibly causing desyncs in MP [FS#4354] (r21660)
 
- Fix: Cargo payment graph was not properly invalidated when payment rate changed [FS#4351] (r21658)
 
- Fix: Use a bool instead of uint8 to store a bool and use the dedicated accessor function when reading boolean settings [FS#4345] (r21656)
 
- Fix: 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)
 
- Fix: Make '[centre|main] view' consistent, and make '[main|global] view' consistent [FS#4339] (r21650)
 
- Fix: Newly created skip-to order was created at wrong place (r21633)
 
- Fix: 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)
 
- Fix: Version detection of subversion branches and tags got broken (r21630)
 
- Fix: Crash under certain circumstances when using autorail [FS#4327] (r21619)
 

	
 

	
 
1.1.0-beta1 (2010-12-24)
 
------------------------------------------------------------------------
 
- Feature: [NewGRF] Variable 7B for accessing 60+x variables while taking the parameter from the accumulator (r21604)
 
- Feature: Allow to refit only the selected part of a train consist (r21567)
 
- Feature: Store the used OpenTTD version, base graphics set, NewGRFs and AIs in the PNG screenshots (r21558, r21553)
 
- Feature: 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)
 
- Feature: Vehicle lost messages for ships and road vehicles [FS#1956] (r21511, r21510)
 
- Feature: Diagonal tile clearing and terraforming by pressing Ctrl [FS#730] (r21500)
 
- Feature: [NewGRF] Use the station graphics property to determine a fallback for the depot sprites [FS#4279] (r21473)
 
- Feature: Add explicit make 'shared orders' an option in the orders menu (r21464)
 
- Feature: Make it more clear that you are stopping a shared order, and make it possible retain the order list upon unsharing [FS#3711] (r21461)
 
- Feature: Hotkey Ctrl+W for returning to the main menu [FS#3217] (r21459)
 
- Feature: Scroll to the inserted order [FS#4215] (r21457)
 
- Feature: Building while paused always works in the scenario editor [FS#1521] (r21430)
 
- Feature: 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)
 
- Feature: Do not store savegames to disk when transferring it from the server to a client (r21398, r21397)
 
- Feature: Use alphabetical order when sorting industries by type at the industry directory window (r21389)
 
- Feature: Allow entering of the new year in a text box when cheating the year [FS#4289] (r21388)
 
- Feature: Support for limiting the amount of (accepted) incoming data for a server (r21363)
 
- Feature: Natural sorting of strings using ICU [FS#4214] (r21344)
 
- Feature: [NewGRF] Implement action0 visual effect properties for ships and RVs (r21240)
 
- Feature: [NewGRF] Support callback 0x10 for RVs and ships (r21238)
 
- Feature: [NewGRF] Make positioning of diesel fumes and electric sparks actually work (r21230)
 
- Feature: [NewGRF] Support OpenTTD's genders, cases and plurals (r21216, r21211, r21209)
 
- Feature: Display mail capacity when refitting an aircraft to passengers (r21214)
 
- Feature: Make the statusbar's location configurable [FS#4201] (r21179)
 
- Feature: Forced construction of missing industries (r21175)
 
- Feature: Do not build industries during economic recession (r21169)
 
- Feature: Use desired industry counts rather than relative probability to decide which industry to build (r21168)
 
- Feature: Allow to sort purchase lists for trains and road vehicles by tractive effort (r21105)
 
- Feature: [NewGRF] Add CB36 support for road vehicle property 0x15 (Speed) (r21100)
 
- Feature: [NewGRF] Implement stringcode 9A 0C (station name), 9A 0D (weight) (r21086, r21085)
 
- Feature: [NewGRF] Add CB36 support for road vehicle properties 0x13 (Power), 0x14 (Weight) and 0x18 (Tractive effort) (r21058)
 
- Feature: 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)
 
- Feature: Chat directly to the server or a bot/admin/IRC channel monitoring the server (r21000)
 
- Feature: Remote administration (r20975-r20963)
 
- Feature: [NewGRF] The concept of minimum loadable version to NewGRFs when choosing compatible NewGRFs (r20960, r20958)
 
- Feature: 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)
 
- Feature: [NewGRF] Make it possible to distinguish player built/randomly placed industries in the location and land slope check callbacks (r20942)
 
- Feature: Highlight all destination tiles when building a lock [FS#4153] (r20932)
 
- Feature: Transfer orders imply 'leave empty' by default [FS#3905] (r20927)
 
- Feature: Allow to select a custom percentage of water in the map generation window (r20832)
 
- Feature: Make it possible to select vehicle to clone and vehicle to clone orders from directly from vehicle lists and depot window [FS#3999] (r20753)
 
- Feature: Separate GUI icons for vehicle/company profit, exclusive rights and unread news (r20720)
 
- Feature: [NewGRF] Support for newobjects (r20670)
 
- Feature: Make the (flat) area around an industry configurable (r20659)
 
- Feature: [Network] Allow rate limiting of incoming commands (r20553)
 
- Feature: Filter signs at the sign list window [FS#3472] (r20516)
 
- Feature: Ignore _ in console command names so there is no 'inconsistent' behaviour w.r.t. underscores anymore without breaking backward compatibility greatly (r20515)
 
- Feature: A new screenshot type that makes a zoomed-in screenshot of the visible viewport [FS#3973] (r20508)
 
- Feature: Setting for none/original/more smoke [FS#3093] (r20376)
 
- Feature: Airport previews (r20381, r20369)
 
- Feature: [NewGRF] Support for callback 0x147 ('add sprite offset') for canals (r20353)
 
- Feature: [NewGRF] Support for property 09, feature 05, i.e alternate canal sprite layout (r20352)
 
- Feature: Add rescan_newgrf console command (r20344)
 
- Feature: [NewGRF] AdvVarAct2 operators for SHL, SHR and SAR (r20332)
 
- Feature: [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)
 
- Feature: More user-friendly gui to change NewGRF parameters (r20258)
 
- Feature: [NewGRF] Add support for static NewGRF information, i.e. Action 14 (r20250)
 
- Feature: Display suppliers and customers of an industry or cargo (r20206)
 
- Feature: Allow horizontal resizing for all vehicle lists [FS#3955] (r20174)
 
- Feature: [NewGRF] Information (var 4A) about the current railtype a train is on (r20165)
 
- Feature: Tooltips are shown by hovering the mouse over a widget instead of by right clicking on it [FS#3913]
 
- Feature: Customizable hotkeys (r20055)
 
- Feature: Wrap console lines when they are too long [FS#3816] (r20046)
 
- Feature: [NewGRF] Variable 43 depot build date for railtypes [FS#3886] (r20003)
 
- Feature: Show some savegame details when selecting items in saveload GUIs (r19984)
 
- Feature: Open vehicle view when clicking on the caption of vehicle news (r19944)
 
- Feature: [NewGRF] Access to industry founder (var A7) during callbacks 28 and 2F (r19901)
 
- Feature: Add highlighting of drag destination in depot and order GUI gui [FS#3705] (r19889, r19888)
 
- Feature: Configure NewGRFs from a single window (r19841)
 
- Feature: 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)
 
- Feature: Hide all other industries when Ctrl+clicking an industry type in smallmap legend (r19770)
 
- Feature: [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)
 
- Feature: 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)
 
- Feature: New base costs for building/clearing canals, building/clearing aqueducts and building/clearing locks (r19720)
 
- Feature: Ctrl+click on a vehicle to start/stop it (r19714)
 
- Feature: NewGRF debugging/inspecting of (primarily) enabled callbacks and values of variables (r19709)
 
- Feature: Graphs with negative values are no longer forced to have the zero axis in the middle, resizeable graphs (r19662, r19631)
 
- Feature: [NewGRF] Support callback 36 for aircraft speed also in the build menu (r19660)
 
- Feature: Add an input box to the AI Debug window where you can input a break string [FS#3496] (r19544)
 
- Feature: Add buttons to enable/disable all cargos at the cargo payment rates graph (r19542)
 
- Feature: 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)
 
- Feature: Console command 'reload_newgrfs'; only available when NewGRF developer tools are enabled (r19515)
 
- Feature: Enter the starting year in the scenario editor by clicking at the date panel (r19397)
 
- Feature: Configurable slope steepness for road vehicles from 0% to 10%, default is 7% (r19346)
 
- Feature: Realistic acceleration for road vehicles (r19345)
 
- Feature: Allow to (over)build and remove multiple road stops using drag and drop (r19231, r19230, r19229)
 
- Feature: Show warnings and errors in console as well, not only in a message box (r19225)
 
- Feature: [NewGRF] Action 0/1/2/3 support for NewGRF airporttiles (r19194)
 
- Add: [NoAI] AIOrder::IsVoidOrder to find void '(Invalid Order)' orders (r20389)
 
- Add: Support for MSVC 2010 (r20032)
 
- Add: [NoAI] AIIndustry::GetIndustryID(TileIndex) (r19773)
 
- Change: 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)
 
- Change: 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)
 
- Change: Place the bridge building window under the mouse instead of somewhere randomly on the screen and change the default sort order [FS#3975] (r21460)
 
- Change: Make sure the client is listening, or rather receiving, our frames (r21361)
 
- Change: Read some metadata from (official) source tarballs so you will more likely get the right version/revision out-of-the-box (r21351)
 
- Change: Be more explicit that the game state can get broken by changing NewGRFs (r21335)
 
- Change: 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)
 
- Change: 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)
 
- Change: Show a different 'lag' message when a client is lagging because of connection trouble or lagging because the client is just slow (r21254)
 
- Change: 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)
 
- Change: Filter stations by cargo they have a rating for instead of having cargo waiting [FS#4206] (r21144)
 
- Change: Limit the number of exceptions in the refittable cargo list to 7 (r21083)
 
- Change: 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)
 
- Change: Tuned realistic acceleration to be a bit more realistic in order to make acceleration 'slower', which highlights the differences between vehicle types more (r21106)
 
- Change: 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)
 
- Change: Add installing options or rather options to not install certain documentation, in a similar way to GRFCodec/catcodec (r20999)
 
- Change: Only display liveries in the livery window if they are used by some vehicle somewhen (r20849)
 
- Change: [NoAI] Rename AIAbstractList to AIList (r20563)
 
- Change: [NoAI] AIOrder::GetOrderFlags returns AIOrder::AIOF_INVALID for void orders (r20389)
 
- Change: [NewGRF] Adapt vehicle var FE bit 6 to new railtypes (r20175)
 
- Change: [NewGRF] Call callbacks 14A, 14B and 14C after all industry variables have been assigned, so more variables are valid during the callbacks (r19907)
 
- Change: [NoAI] Remove HasNext() from all lists/iterators and add IsEnd() instead (r19294)
 
- Change: 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)
 
- Fix: Crash due to cargo payments belonging to a non-existing company [FS#4324] (r21605)
 
- Fix: Company league table used stats from two quarters ago instead of last quarter [FS#4323] (r21601)
 
- Fix: 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)
 
- Fix: [OSX] A double mouse cursor was shown under certain circumstances [FS#2585] (r21578)
 
- Fix: Show 'plant trees' button lowered on the terraform toolbar, like how other buttons are lowered when you selected a 'build' action [FS#4315] (r21539)
 
- Fix: 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)
 
- Fix: Do not apply the last signal red pathfinder penalty when the signal is a path signal [FS#4302] (r21524)
 
- Fix: Tooltips were not removed when their related window got closed [FS#4300] (r21477)
 
- Fix: Make sure the query window is only opened once per parent window/callback [FS#4298] (r21472)
 
- Fix: Crash when news item gets removed at just the wrong moment [FS#4180] (r21458)
 
- Fix: [NewGRF] Ensure the parameter for house variable 60 is the id of an original house (r21456)
 
- Fix: [NewGRF] A NewGRF with incomplete string codes at the end of a string could cause invalid memory reads (r21433)
 
- Fix: The server did not check for the paused state when allowing to execute commands [FS#3771] (r21429)
 
- Fix: 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)
 
- Fix: Purchase lists were not invalidated when using 'resetengines' (r21374)
 
- Fix: Fields were not cleared under snow though they were intended to be [FS#4283] (r21367)
 
- Fix: New railtypes with overlays did not use the shore sprites as groundtiles for three-corner-raised slopes (at shore) [FS#4277] (r21353)
 
- Fix: Buffer overflow in strgen for strings with very large arguments (r21346)
 
- Fix: Bogus cache mismatch warnings with desync debugging because some cache was invalidated but never reset [FS#4272] (r21338)
 
- Fix: Make it more likely that the savegame and transferred file are the same file and not different ones [FS#4271] (r21334)
 
- Fix: Use the correct font sizes when checking for missing glyphs (r21321)
 
- Fix: [Content] Crash when creating file download by the content download system failed (r21319)
 
- Fix: 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)
 
- Fix: [Content] Do not add HTTP connection to list of connections when it fails in the beginning (r21302)
 
- Fix: Fonts set in openttd.cfg were not properly checked for missing glyphs on language change [FS#4261] (r21298)
 
- Fix: FreeBSD introduced strndup as well [FS#4259] (r21295)
 
- Fix: [Windows installer] Check for existence of save/scenario dirs before asking for deletion confirmation [FS#4251] (r21294)
 
- Fix: Under some circumstances two vehicles could leave a non drive-through road stop at once [FS#3935] (r21263)
 
- Fix: [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)
 
- Fix: 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)
 
- Fix: Rescanning AIs did not 'forget' removed AIs [FS#3952] (r21250)
 
- Fix: Upon rescanning AIs the new AIs would (after some time) show up in the AI list but you could not select all (r21246)
 
- Fix: [YAPF] Road vehicles not finding the nearest depot in some (corner) cases [FS#4130] (r21229)
 
- Fix: [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)
 
- Fix: Use proper plural for the short cargo unit names (r21223)
 
- Fix: Under some conditions, group count would be wrong after moving train engines in the depot window [FS#4207] (r21205)
 
- Fix: [OSX] Do not let the mouse cursor jump when switching to full screen mode (r21200)
 
- Fix: [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)
 
- Fix: Use non-interactive randomness for townnames on map generation, so they are controlled by the generation seed as well [FS#4226] (r21192)
 
- Fix: [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)
 
- Fix: Station list was not updated when a new cargo got a rating (r21145)
 
- Fix: Station ratings were not updated (anymore) after an aircraft crashed (r21137)
 
- Fix: Bridge speed limits should apply to all wagons of a vehicle, not just the head of the vehicle [FS#4213] (r21136)
 
- Fix: Helicopter flight altitude was determined inconsistently in different places (r21119)
 
- Fix: Do not use the maximum track speed where the maximum vehicle speed is meant (r21107)
 
- Fix: Display the real maximum speed for aircraft instead of always using the engine value (r21096)
 
- Fix: Aircraft speed would ignore callback 36 result when it is greater than the engine speed (r21094)
 
- Fix: [OSX] Mouse cursor would leave footprint with 8bpp blitter when switching to full screen (r21037)
 
- Fix: [OSX] Properly set the palette when using the 8bpp blitter during start-up (r21036)
 
- Fix: Center industry gui and waypoint gui after resize [FS#4171] (r21021)
 
- Fix: Draw bridge pillars with correct length on all tile corners by drawing only half of the pillar sprite if required (r20950, r20947)
 
- Fix: Accidentally moving the mouse of the scrollbar arrows while pressing it clicks the button next to the arrow [FS#4071] (r20922)
 
- Fix: Refit costs were not shown for long cargo names [FS#4160] (r20921)
 
- Fix: When using non-smooth or NewGRF-economy changing production rates does not work, so allow changing the production multiplier instead (r20901)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: Place less trees at once when planting random trees at the scenario editor [FS#4094] (r20829)
 
- Fix: Do not use new game settings when creating many random towns/industries at the scenario editor [FS#4094] (r20712, r20711)
 
- Fix: Keep _current_company and _local_company in sync during GUI operation [FS#3804] (r19933)
 
- Fix: 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)
 

	
 

	
 
1.0.5 (2010-11-20)
 
------------------------------------------------------------------------
 
(None)
 

	
 

	
 
1.0.5-RC2 (2010-11-14)
 
------------------------------------------------------------------------
 
- Fix: Reading (very) recently freed memory [CVE-2010-4168] (r21182)
 
- Fix: Default service interval for ships/aircraft got switched [FS#4222] (r21155)
 
- Fix: Size of sort buttons for save/load and build vehicle list gui could be too small [FS#4221] (r21151)
 
- Fix: [Windows] Make sure to be upgraded openttd is not running when installing [FS#4212] (r21146)
 
- Fix: [NewGRF] Crash when disabling static NewGRFs (when joining/starting a server) [FS#4208] (r21130, r21129, r21128)
 
- Fix: Upper limit for snowline was too low [FS#4203] (r21078)
 
- Fix: Wrong (maximum) value shown for generation seed in the in-game console [FS#4192] (r21075)
 
- Fix: 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)
 
- Fix: [NewGRF] Crash when getting an industry ID at an offset that uses some 'old' style industry tile [FS#4157] (r20912)
 

	
 

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

	
 

	
 
1.0.4 (2010-09-14)
 
------------------------------------------------------------------------
 
- Change: Move removal of bin/data/opentt[dw].grf from distclean to maintainer-clean (r20752)
 
- Fix: Recent NFORenum does not know '-?' (r20715)
 

	
 

	
 
1.0.4-RC1 (2010-08-30)
 
------------------------------------------------------------------------
 
- 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)
 
- Fix: Desync checker checked the wrong variable (r20677)
 
- Fix: Drawing the 'OpenTTD' text in the intro game caused crashes with very low resolutions [FS#4081] (r20618)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: '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)
 
- Fix: Crash when the tooltip is wider than the window is [FS#4066] (r20596)
 
- Fix: No (proper) savegame conversion was done when _date_fract got a new value range (r20592)
 
- Fix: 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)
 
- Fix: Autoreplace can trigger an assertion when at the vehicle limit [FS#4044] (r20582)
 
- Fix: Go via station and go via waypoint behaved differently when a train went back to the same (unordered) station again [FS#4039] (r20580)
 
- Fix: Draw bounding boxes using white instead of pure white, so they are recoloured to grey in coloured newspaper instead of blue [FS#4051] (r20578)
 
- Fix: Scroll button flickering when pressed [FS#4043] (r20577)
 
- Fix: Warn OpenGFX users when they are using a base set that misses sprites (r20566)
 
- Fix: Wrong tooltip for the company select button in the AI debug and performance rating windows [FS#4053] (r20556, r20555)
 
- Fix: In old savegames aircraft can have an invalid state (r20528)
 
- Fix: Crash when the content download tried to get a MD5 checksum of an 'originally' loaded NewGRF [FS#4038] (r20519)
 
- Fix: Draw error messages in white by default, they may not have a colour set when coming from a NewGRF (r20514)
 
- Fix: Entering half the 'generation seeds' in the console's 'newgame' command failed to set the correct seed [FS#4036] (r20512)
 
- Fix: Desync when vehicles change NewGRF properties such as visual effect when changing railtype [FS#3978] (r20505, r20504, r20503, r20502)
 
- Fix: Desync when converting rail all as trains with a part on the converted rails need updating and not only the engines (r20500)
 
- Fix: Ignore the non-stop state when comparing one order type to another order type, otherwise non-stop nearest depot orders fail [FS#4030] (r20498)
 
- Fix: 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)
 
- Fix: [NoAI] checking whether water tiles are connected failed in some cases [FS#4031] (r20489)
 
- Fix: Statues were not removed when towns would be removed (r20481)
 
- Fix: Do not spend cash when building a statue fails [FS#3985] (r20469, r20227)
 
- Fix: 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)
 
- Fix: 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)
 
- Fix: Make snow on bridges depend on bridgeheight and make snowiness of bridgeheads depend on the tileheight at the entry [FS#3947] (r20424, r20423, r20422, r20421, r20420)
 
- Fix: During world generation the snow-mapbits are not yet available, so test the snowline variable directly (as they were before) [FS#4017] (r20418)
 
- Fix: PBS reservations were always displayed on halftile foundations if the railtype uses overlays [FS#4013] (r20408)
 
- Fix: Make the default minimum width for editboxes 10 pixels to prevent crashes [FS#4010] (r20394)
 
- Fix: Prevent buying more vehicles than allowed or buying companies when you'd get too many vehicles [FS#3993] (r20393, r20392, r20391, r20390)
 
- Fix: Initialize fund-industry buttons when opening window (r20386)
 
- Fix: Update cursor dimensions when reloading grfs resp. changing base graphics, so the cursor does not glitch if it becomes bigger (r20384)
 
- Fix: Stop vehicle following after zooming out [FS#3989] (r20361)
 
- Fix: [NoAI] Ship depots were constructed along the wrong axis [FS#4004] (r20348)
 
- Fix: Fallback font selection due to missing glyphs did not work as intended (r20296)
 
- Fix: 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)
 
- Fix: The caption of the 'Available vehicle' lists was black, whereas for building those vehicles, which uses the exact same window, it was white (r20244)
 
- Fix: [NoAI] Clarify the documentation for AIBaseStation::GetLocation (r20238)
 
- Fix: Refit costs from refit orders are subtracted from the vehicle yearly income [FS#3988] (r20234)
 
- Fix: 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)
 
- Fix: 'Service at nearest depot' behaved the same as 'Go to nearest depot' [FS#3986] (r20229)
 
- Fix: Depot did not become unsnowy, when snowline rises [FS#3976] (r20224)
 
- Fix: Strip non-printable characters before showing it in an edit box, so when renaming a vehicle type you will not get the 'SETX stuff' that some NewGRFs use [FS#3974] (r20220)
 
- Fix: NewGRFs that defined a vehicle without either loaded or loading groups could crash OpenTTD [FS#3964] (r20199)
 
- Fix: [NewGRF] GetNearbyTileInformation can be used to get the terrain type of a MP_VOID tile [FS#3963] (r20197)
 
- Fix: [NewGRF] Vehicle var FE bit 6 did return incorrect values for new railtypes (r20175)
 
- Fix: Inconsistencies w.r.t. to km/h vs km-ish/h as 'base' unit for aircraft speeds [FS#3870] (r20164)
 

	
 

	
 
1.0.3 (2010-08-01)
 
------------------------------------------------------------------------
 
- Fix: Make it possible to properly assess the length of the rail toolbar caption, do not require '{WHITE}' control codes (r20242)
 
- Fix: Check for disallowed level crossings also when converting rail (r20237)
 
- Fix: Haiku uses a 'special' location for headers (r20219)
 
- Fix: Desync due to (temporary) wrong railtype; when loading a savegame the railtype of some (high ID) trains could be wrong [FS#3945] (r20137)
 

	
 

	
 
1.0.3-RC1 (2010-07-17)
 
------------------------------------------------------------------------
 
- Feature: [NewGRF] Textstack support for CB 38 (r20086)
 
- Feature: [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)
 
- Fix: 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)
 
- Fix: Integer comparison failed in case the difference was more than 'MAX_UINT'/2 [FS#3954] (r20162)
 
- Fix: [YAPP] Converting a one-way block to a path signal with trains on both sides could lead to a train crash [FS#3937] (r20156)
 
- Fix: [NewGRF] Improve handling of snowing of railtypes and (infra)structures on foundations [FS#3883] (r20153, r20132, r20126, r20125)
 
- Fix: Ships were not marked as dirty when stopping inside a depot [FS#3880] (r20142)
 
- Fix: Some windows ignored all hotkeys [FS#3902] (r20141, r20140, r20139)
 
- Fix: Do not allow building a rail track to the water using a tree-tile [FS#3695] (r20110)
 
- Fix: [NoAI] AITown::GetRating() returned wrong values [FS#3934] (r20103)
 
- Fix: 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)
 
- Fix: 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#3786, FS#3887, FS#3920, FS#3923] (r20087)
 
- Fix: gitignore and hgignore had more missing/wrong entries (r20078, r20033, r20031)
 
- Fix: Remove the space between 'open' and 'ttd' in the title screen (r20077)
 
- Fix: Road vehicles could get crashed twice in a tick [FS#3896] (r20053, r20034)
 
- Fix: Coloured_news_year was stored in savegames while it should be a client setting [FS#3916] (r20051)
 
- Fix: Crash when spectator tried to open a vehicle list without selecting any company [FS#3892] (r20041)
 
- Fix: Instead of loading the intro game when loading a savegame fails on the dedicated server, generate a new game [FS#3907] (r20039)
 
- Fix: Tram tracks did not show at level crossing with the new railtypes [FS#3911] (r20036)
 
- Fix: Under some circumstances you could get into an infinite loop [CVE-2010-2534] [FS#3909] (r20035)
 
- Fix: The 64 bits TortoiseSVN was not always properly detected (r20029)
 
- Fix: 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)
 
- Fix: When joining a company with a password you could only enter 20 characters of the password (r20012)
 
- Fix: Sign sorting was unstable [FS#3893] (r20009)
 
- Fix: Trains should also have running cost while slowing down for stop (r20006)
 
- Fix: [NewGRF] Stringcodes 82, 83 and 84 were not properly converted to openttd codes so they did not work (r20004)
 
- Fix: Clear force_proceed when entering depots and when loading, resetting of force_proceed on manual stopping did not work [FS#3878] (r19992)
 
- Fix: Do not show an error message when trying to start/stop a crashed plane [FS#3874] (r19953)
 
- Fix: Allow turning of roadvehicles while waiting in a queue (r19945)
 
- Fix: Disallow moving of vehicle news window [FS#3865] (r19943)
 
- Fix: Under some (unlucky) circumstances the wrong company would be 'current company' when changing company colour or orders [FS#3903]
 

	
 

	
 
1.0.2 (2010-06-19)
 
------------------------------------------------------------------------
 
- Fix: Owner of the Waypoint View window was not properly set (r19990)
 
- Fix: Close list of vehicles with given oil rig in orders when the oil rig is deleted (r19956)
 
- Fix: Close list of vehicles with given buoy/oil rig in orders when switching company (r19955)
 
- Fix: Do not close list of waypoint's trains when the waypoint view is closed when it is sticky (r19952)
os/debian/changelog
Show inline comments
 
openttd (1.2.0~beta3) unstable; urgency=low
 

	
 
  * New upstream release 1.2.0-beta3
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 21 Jan 2012 16:00:00 +0100
 

	
 
openttd (1.2.0~beta2) unstable; urgency=low
 

	
 
  * New upstream release 1.2.0-beta2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 07 Jan 2012 00:00:00 +0100
 

	
 
openttd (1.2.0~beta1) unstable; urgency=low
 

	
 
  * New upstream release 1.2.0-beta1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 24 Dec 2011 00:00:00 +0100
 

	
 
openttd (1.1.4) unstable; urgency=low
 

	
 
  * New upstream release 1.1.4
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Mon, 05 Dec 2011 00:00:00 +0400
 

	
 
openttd (1.1.4-RC1) unstable; urgency=low
 

	
 
  * New upstream release 1.1.4-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 20 Nov 2011 17:00:00 +0100
 

	
 
openttd (1.1.3) unstable; urgency=low
 

	
 
  * New upstream release 1.1.3
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Thu, 15 Sep 2011 21:00:00 +0200
 

	
 
openttd (1.1.3-RC1) unstable; urgency=low
 

	
 
  * New upstream release 1.1.3-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 04 Sep 2011 17:00:00 +0200
 

	
 
openttd (1.1.2) unstable; urgency=low
 

	
 
  * New upstream release 1.1.2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 14 Aug 2011 17:00:00 +0200
 

	
 
openttd (1.1.2~RC2) unstable; urgency=low
 

	
 
  * New upstream release 1.1.2-RC2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 30 Jul 2011 21:00:00 +0200
 

	
 
openttd (1.1.2~RC1) unstable; urgency=low
 

	
 
  * New upstream release 1.1.2-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 24 Jul 2011 21:00:00 +0200
 

	
 
openttd (1.1.1) unstable; urgency=low
 

	
 
  * New upstream release 1.1.1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Wed, 01 Jun 2011 00:00:00 +0200
 

	
 
openttd (1.1.1~RC1) unstable; urgency=low
 

	
 
  * New upstream release 1.1.1-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 15 May 2011 21:00:00 +0200
 

	
 
openttd (1.1.0) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 01 Apr 2011 00:00:00 +0100
 

	
 
openttd (1.1.0~RC3) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-RC3
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 18 Mar 2011 22:00:00 +0100
 

	
 
openttd (1.1.0~RC2) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-RC2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 04 Mar 2011 22:00:00 +0100
 

	
 
openttd (1.1.0~RC1) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 18 Feb 2011 22:00:00 +0100
 

	
 
openttd (1.1.0~beta5) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-beta5
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 04 Feb 2011 22:00:00 +0100
 

	
 
openttd (1.1.0~beta4) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-beta4
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 21 Jan 2011 00:00:00 +0100
 

	
 
openttd (1.1.0~beta3) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-beta3
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 09 Jan 2011 18:00:00 +0100
 

	
 
openttd (1.1.0~beta2) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-beta2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 31 Dec 2010 18:00:00 +0100
 

	
 
openttd (1.1.0~beta1) unstable; urgency=low
 

	
 
  * New upstream release 1.1.0-beta1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 24 Dec 2010 00:00:00 +0100
 

	
 
openttd (1.0.5-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.5
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 20 Nov 2010 21:00:00 +0000
 

	
 
openttd (1.0.5~rc2-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.5~rc2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 14 Nov 2010 15:00:00 +0000
 

	
 
openttd (1.0.5~rc1-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.5-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 31 Oct 2010 15:00:00 +0000
 

	
 
openttd (1.0.4-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.4
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Tue, 14 Sep 2010 20:00:00 +0000
 

	
 
openttd (1.0.4~rc1-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.4-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Mon, 30 Aug 2010 20:00:00 +0000
 

	
 
openttd (1.0.3-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.3
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 01 Aug 2010 00:00:00 +0000
 

	
 
openttd (1.0.3~rc1-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.3-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 05 Jul 2010 17:37:21 +0000
 

	
 
openttd (1.0.2-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 19 Jun 2010 18:36:21 +0000
 

	
 
openttd (1.0.2~rc1-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.2-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 05 Jun 2010 23:36:21 +0000
 

	
 
openttd (1.0.1-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 01 May 2010 00:00:00 +0200
 

	
 
openttd (1.0.1~rc2-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.1-RC2
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Wed, 21 Apr 2010 21:36:21 +0200
 

	
 
openttd (1.0.1~rc1-0) unstable; urgency=low
 

	
 
  * New upstream release 1.0.1-RC1
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sat, 17 Apr 2010 23:36:21 +0000
 

	
 
openttd (1.0.0-1) unstable; urgency=low
 

	
 
  * [30a2162] New upstream release 1.0.0. (Closes: #570104)
 
  * [102698a] Make openttd-wrapper work with older mktemp versions.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 02 Apr 2010 23:36:21 +0200
 

	
 
openttd (1.0.0~rc3-2) unstable; urgency=low
 

	
 
  * [279c5ef] Recommend openttd-opengfx and suggest openttd-opensfx.
 
  * [9330ad7] Update README.Debian concerning music files.
 
  * [07bde24] Move openttd from contrib to main. (Closes: #560810)
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Thu, 18 Mar 2010 13:16:32 +0100
 

	
 
openttd (1.0.0~rc3-1) unstable; urgency=low
 

	
 
  * [412d153] New upstream release 1.0.0~rc3.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Thu, 18 Mar 2010 10:09:33 +0100
 

	
 
openttd (1.0.0~rc2-1) unstable; urgency=low
 

	
 
  * [9c99af4] New upstream release 1.0.0~rc2.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Thu, 04 Mar 2010 12:22:28 +0100
 

	
 
openttd (1.0.0~rc1-1) unstable; urgency=low
 

	
 
  * [fe4eb51] New upstream release 1.0.0~rc1.
 
  * [6aa2be0] Note that the embedded md5 implementation has a different
 
    license.
 
  * [39eb336] Remove lintian override for empty gm directory.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 19 Feb 2010 13:00:53 +0100
 

	
 
openttd (1.0.0~beta4-1) unstable; urgency=low
 

	
 
  * [6718224] New upstream release 1.0.0~beta4.
 
  * [7b0fa8d] Remove some more docs that we don't want in the package.
 
  * [bb9d744] Use liblzo2 instead of an embedded minilzo version.
 
  * [949c06b] Explicitly disable iconv support.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 19 Feb 2010 12:59:27 +0100
 

	
 
openttd (0.7.5-4) unstable; urgency=low
 

	
 
  * [174d0b1] Don't use deprecated < in Replaces.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Mon, 15 Feb 2010 00:35:33 +0100
 

	
 
openttd (0.7.5-3) unstable; urgency=low
 

	
 
  * [d12fc5a] Make openttd-data replace openttd (< 0.7.5-2).
 
    (Closes: #569679)
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Sun, 14 Feb 2010 16:56:31 +0100
 

	
 
openttd (0.7.5-2) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * [fbab21d] Switch to source format 3.0 (quilt).
 
  * [85c0c7d] No longer check for (and complain about missing) datafiles
 
    on installation and upgrades. (Closes: #524651, 562574)
 
  * [827eb61] Split the architecture independent data into openttd-data.
 
    (Closes: #492462)
 
  * [6fbd9c7] Update README.Debian.
 
  * [76a5148] Support cross compilation. (Closes: #550951)
 
  * [2005bf8] Simplify the rules file, make debhelper do more stuff.
 
  * [fc0500e] Remove some configure arguments.
 
  * [8ca38bb] Explicitly enable or disable all of the dependencies.
 
  * [e38fb3e] Let the upstream Makefile install documentation.
 
  * [5954fcf] Update the watch file to the new upstream url scheme.
 
  * [7249594] Fix typo in copyright file.
 
  * [660fb61] Bump the Standards-Version to 3.8.4, with no changes
 
    required.
 
  * [f94ab89] Move the packaging git repository to git.debian.org.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Tue, 09 Feb 2010 21:40:24 +0100
 

	
 
openttd (0.7.5-1) unstable; urgency=high
 

	
 
  * [cdcb73a] Imported Upstream version 0.7.5. This release fixes
 
    CVE-2009-4007.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Thu, 24 Dec 2009 00:55:45 +0100
 

	
 
openttd (0.7.4-1) unstable; urgency=low
 

	
 
  * [a2c297b0] Imported Upstream version 0.7.4
 
  * [0232a645] Make Debian-specific patches executable.
 
  * [76be04b] Switch the Debian packaging to git.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Tue, 15 Dec 2009 22:11:52 +0100
 

	
 
openttd (0.7.3-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release
 
  * Use printf instead of echo -en in openttd-wrapper to make it POSIX
 
    compatible (Closes: #547758).
 
  * Remove three patches that are now included in upstream.
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Thu, 01 Oct 2009 22:52:59 +0200
 

	
 
openttd (0.7.2-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release
 
  * Bump Standards-Version to 3.8.3, with no changes required.
 
  * Clean up the rules file a bit and add some lintian overrides.
 
  * Explain why openttd is in contrib (Closes: #539381).
 
  * Add the DM-Upload-Allowed control field.
 
  * Re-add dpatch infrastructure.
 
  * Fix the copyright file, since upstream only allows GPLv2, not later
 
    versions.
 
  * Add a section to the copyright file on the different license used by the
 
    "Squirrel" programming language, which is shipped with OpenTTD since
 
     0.7.0.
 
  * Backport upstream r17226, which removes the deprecated Encoding entry from
 
    the .desktop file.
 
  * Add a wrapper script for openttd, which captures any stderr output and
 
    displays it when openttd returns an error code (Closes: #533557).
 
  * Recommend x11-utils, since we use xmessage for displaying errors. Don't
 
    depend on it, since openttd will still run fine without it, you just won't
 
    see any errors.
 
  * Backport upstream r17227 and r17229, which prevents terminal escape codes
 
    from ending up in the captured error output.
 
  * Backport upstream r17240, which improves stderr output when files are
 
    missing or corrupt.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Fri, 21 Aug 2009 15:27:26 +0200
 

	
 
openttd (0.7.1-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release.
 
  * Link against libicu to enable right-to-left language support.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Tue, 09 Jun 2009 21:46:28 +0200
 

	
 
openttd (0.7.0-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release.
 
  * Remove Debian specific desktop file, upstream provides one now.
 
  * Add debian/watch file.
 

	
 
  [ Jordi Mallach ]
 
  * Bump Standards-Version to 3.8.1, with no changes required.
 
  * Move to debhelper compat 7. Bump Build-Depends accordingly.
 
  * Use dh_prep.
 
  * Add "set -e" to config script.
 
  * Remove a few extra doc files that get installed by upstream Makefile.
 
  * Add more complete copyright information.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Wed, 15 Apr 2009 18:22:10 +0200
 

	
 
openttd (0.6.3-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release.
 

	
 
  [ Jordi Mallach ]
 
  * Add Spanish Debconf template translation, after fixing its corrupted
 
    encoding (thanks, Germana Oliveira, closes: #499214).
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Thu, 02 Oct 2008 16:59:03 +0200
 

	
 
openttd (0.6.2-1) unstable; urgency=low
 

	
 
  * New upstream release.
 
    - Fixes remote crash vulnerability CVE-2008-3547. Closes: #493714
 

	
 
 -- Matthijs Kooijman <matthijs@stdin.nl>  Fri, 08 Aug 2008 11:07:05 +0200
 

	
 
openttd (0.6.2~rc2-1) experimental; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release.
 

	
 
  [ Jordi Mallach ]
 
  * Fix typo in README.Debian (lintian).
 
  * Remove dpatch build-dep and the empty debian/patches dir.
 
  * Don't ignore possible "make distclean" errors.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Sat, 26 Jul 2008 01:35:30 +0200
 

	
 
openttd (0.6.2~rc1-1) experimental; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Thu, 24 Jul 2008 16:09:57 +0200
 

	
 
openttd (0.6.1-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release.
 
  * Remove no_install_personal.dpatch, it is included upstream now.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Thu, 05 Jun 2008 00:47:36 +0200
 

	
 
openttd (0.6.0-2) unstable; urgency=low
 

	
 
  [ Jordi Mallach ]
 
  * Rename XS-Vcs-* to the official Vcs-* fields.
 

	
 
  [ Matthijs Kooijman ]
 
  * Don't install anything into ~ during make install, this prevented
 
    successful builds on some architectures. Fix imported from upstream.
 
  * Put the homepage in its own Homepage field instead of in the description.
 
  * Bump Standards-Version to 3.7.3
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Thu, 03 Apr 2008 00:07:10 +0200
 

	
 
openttd (0.6.0-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release:
 
    - Adds note about font-configuration for non-latin languages.
 
      Closes: #462604
 
  * Add .desktop file, provided by Andrea Colangelo.
 
    Closes: #460073
 
  * Add Finnish Debconf translation, provided by Esko Arajärvi.
 
    Closes: #456956
 

	
 
  [ Jordi Mallach ]
 
  * Fixes and improvements for the .desktop file according to the spec.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Wed, 02 Apr 2008 14:04:40 +0200
 

	
 
openttd (0.5.3-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Tue, 18 Sep 2007 12:05:28 +0200
 

	
 
openttd (0.5.2-1) unstable; urgency=low
 

	
 
  [ Jordi Mallach ]
 
  * New upstream release.
 
  * Debconf translation updates:
 
    - Catalan.
 

	
 
  [ Christian Perrier ]
 
  * Debconf templates and debian/control reviewed by the debian-l10n-
 
    english team as part of the Smith review project.
 
    Closes: #422183, #419096.
 
  * Debconf translation updates:
 
    - Swedish. Closes: #422780
 
    - Basque. Closes: #422786
 
    - Czech. Closes: #422809
 
    - Galician. Closes: #422831
 
    - German. Closes: #422908
 
    - Tamil. Closes: #423079
 
    - Russian. Closes: #423224
 
    - Portuguese. Closes: #423413
 
    - French. Closes: #424436
 
    - Brazilian Portuguese. Closes: #425585
 
    - Dutch. Closes: #425707
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Sat, 02 Jun 2007 06:24:34 +0200
 

	
 
openttd (0.5.1-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release
 
  * Add German and Swedish translations (Closes: #420258, #419097)
 
  * Remove bogus fuzzy mark from the Catalan translation
 

	
 
  [ Jordi Mallach ]
 
  * debian/control: add XS-Vcs-Svn and XS-Vcs-Browser fields.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Mon, 23 Apr 2007 21:03:06 +0200
 

	
 
openttd (0.5.0-2) unstable; urgency=low
 

	
 
  * Upload to Debian.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Sun, 11 Mar 2007 14:12:37 +0100
 

	
 
openttd (0.5.0-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release
 

	
 
  [ Jordi Mallach ]
 
  * Depend on ${misc:Depends}, not debconf directly.
 

	
 
 -- Jordi Mallach <jordi@debian.org>  Thu,  8 Mar 2007 15:34:54 +0100
 

	
 
openttd (0.5.0~rc5-1) unstable; urgency=low
 

	
 
  [ Matthijs Kooijman ]
 
  * New upstream release
 
  * Compile with freetype and fontconfig support.
 

	
 
  [ Jordi Mallach ]
 
  * Convert debconf templates to podebconf.
 
  * Add a Catalan translation.
 
  * Minor packaging cleanups.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Mon, 12 Feb 2007 09:25:41 +0100
 

	
 
openttd (0.5.0~rc4-1) unstable; urgency=low
 

	
 
  * New upstream release
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Thu, 18 Jan 2007 21:17:28 +0100
 

	
 
openttd (0.5.0~rc3-1) unstable; urgency=low
 

	
 
  * New upstream release
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Thu, 18 Jan 2007 20:21:04 +0100
 

	
 
openttd (0.5.0~rc2-1) unstable; urgency=low
 

	
 
  * New upstream release
 
  * Removed fix for empty scenarios dir, openttd Makefile now properly handles
 
    this.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Sun, 31 Dec 2006 12:24:37 +0100
 

	
 
openttd (0.5.0~rc1-1) unstable; urgency=low
 

	
 
  * New upstream release.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Fri, 22 Dec 2006 11:03:46 +0100
 

	
 
openttd (0.4.8-1) unstable; urgency=low
 

	
 
  * New upstream release
 
  * Bump standards version to 3.7.2
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Mon, 14 Aug 2006 16:28:50 +0200
 

	
 
openttd (0.4.7-1) unstable; urgency=low
 

	
 
  * New upstream release.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Mon, 27 Mar 2006 23:40:00 +0200
 

	
 
openttd (0.4.6-1) unstable; urgency=low
 

	
 
  * New upstream release.
 
  * Remove old terminal messages and make sure that debconf is always called.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Wed,  8 Mar 2006 23:57:35 +0100
 

	
 
openttd (0.4.5-1) unstable; urgency=low
 

	
 
  * New upstream release
 
  * Bump Standards-Version to 3.6.2
 
  * s/timdity/timidity/ in README.Debian.
 
  * Use debconf for prompting instead of terminal.
 
  * Fix makefile to create icon dir if necessary.
 
  * Fix syntax error in manpage.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Wed,  1 Feb 2006 01:56:39 +0100
 

	
 
openttd (0.4.0.1-5) unstable; urgency=low
 

	
 
  * Fixed capitalization of menu item.
 
  * Install xpm icon to /usr/share/pixmaps and don't install png icon, since
 
    it is not used.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Thu, 22 Sep 2005 10:35:09 +0200
 

	
 
openttd (0.4.0.1-4) unstable; urgency=low
 

	
 
  * Changelog was distributed twice.
 
  * Put openttd in contrib.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Mon, 19 Sep 2005 23:49:18 +0200
 

	
 
openttd (0.4.0.1-3) unstable; urgency=low
 

	
 
  * Clarified installing instructions in README.Debian
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Thu, 16 Jun 2005 03:51:13 +0200
 

	
 
openttd (0.4.0.1-2) unstable; urgency=low
 

	
 
  * Added Suggests: timidity, freepats
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Thu, 16 Jun 2005 03:34:03 +0200
 

	
 
openttd (0.4.0.1-1) unstable; urgency=low
 

	
 
  * New upstream release
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Mon, 23 May 2005 13:04:24 +0200
 

	
 
openttd (0.4.0-1) unstable; urgency=low
 

	
 
  * New upstream release
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Mon, 16 May 2005 00:16:17 +0200
 

	
 
openttd (0.3.6-1) unstable; urgency=low
 

	
 
  * New upstream release
 
  * Modifed Makefile to install xpm icon and scenarios in /usr/share/games/openttd/
 
  * Added openttd.32.xpm, openttd.64.xpm was too big
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Tue, 25 Jan 2005 19:21:08 +0100
 

	
 
openttd (0.3.5-2) unstable; urgency=low
 

	
 
  * Fixed some lintian warnings.
 
  * Added openttd.64.xpm (icon for menu).
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Mon, 27 Dec 2004 01:51:36 +0100
 

	
 
openttd (0.3.5-1) unstable; urgency=low
 

	
 
  * Initial Release.
 

	
 
 -- Matthijs Kooijman <m.kooijman@student.utwente.nl>  Fri, 24 Dec 2004 02:58:47 +0100
 

	
os/os2/installer/make_installer.cmd
Show inline comments
 
@echo off
 

	
 
set OPENTTD_VERSION=1.2.0-beta2
 
set OPENTTD_VERSION=1.2.0-beta3
 
set OPENSFX_VERSION=0.8.0
 
set NOSOUND_VERSION=0.8.0
 
set OPENGFX_VERSION=1.2.0
 

	
 
echo To make the installer, you must have the WarpIN compiler (wic) installed and in
 
echo your path, as well as wget and unzip. This file will download the various DLLs
 
echo to be distributed with the installer. If you do not want to continue, please
 
echo press CTRL-C now.
 
echo.
 
pause
 

	
 
cd ..\..\..\bundle
 

	
 
if not exist SDL12.dll goto getsdl
 
if not exist FSLib.dll goto getsdl
 
goto libc
 

	
 
:getsdl
 

	
 
wget http://www.os2site.com/sw/dev/sdl/sdl-1.2.10-bin-20080804.zip -O dl.zip
 
unzip -j dl.zip SDL/FSLib.dll SDL/SDL12.dll
 
del dl.zip
 

	
 
:libc
 

	
 
if exist libc063.dll goto gcc
 

	
 
wget ftp://ftp.netlabs.org/pub/gcc/libc-0.6.3-csd3.zip -O dl.zip
 
unzip -j dl.zip libc063.dll
 
del dl.zip
 

	
 
:gcc
 

	
 
if exist gcc442.dll goto tools
 

	
 
wget http://www.owenrudge.net/various/gcc442.zip -O dl.zip
 
unzip -j dl.zip gcc442.dll
 
del dl.zip
 

	
 
:tools
 

	
 
cd ..\os\os2\installer
 
if exist tools goto opengfx
 

	
 
mkdir tools
 
cd tools
 

	
 
wget http://download.smedley.info/wget-1.11.4-os2-20090315.zip -O dl.zip
 
unzip -j dl.zip wget/bin/wget.exe
 
del dl.zip
 

	
 
wget ftp://ftp.os4.su/moveton/p7zip-9.04-bin-os2.zip -O dl.zip
 
unzip -j dl.zip bin/7za.exe dll/ilibca.dll
 
del dl.zip
 

	
 
cd ..
 

	
 
:opengfx
 

	
 
if exist opengfx goto opensfx
 

	
 
mkdir opengfx
 
sed s/OPENGFX_VERSION/%OPENGFX_VERSION%/ < download_opengfx.cmd > opengfx\download_opengfx.cmd
 
copy remove_opengfx.cmd opengfx
 

	
 
:opensfx
 
if exist opensfx goto nosound
 

	
 
mkdir opensfx
 
sed s/OPENSFX_VERSION/%OPENSFX_VERSION%/ < download_opensfx.cmd > opensfx\download_opensfx.cmd
 
copy remove_opensfx.cmd opensfx
 

	
 
:nosound
 

	
 
mkdir nosound
 
sed s/NOSOUND_VERSION/%NOSOUND_VERSION%/ < download_nosound.cmd > nosound\download_nosound.cmd
 
copy remove_nosound.cmd nosound
 

	
 
:end
 

	
 
if exist openttd-%OPENTTD_VERSION%-os2.exe del openttd-%OPENTTD_VERSION%-os2.exe
 
wic -a openttd-%OPENTTD_VERSION%-os2.exe 1 -c../../../bundle -r * 2 -ctools -r * 3 -copengfx -r * 4 -copensfx -r * 5 -cnosound -r * -U -s openttd.wis
os/windows/installer/install.nsi
Show inline comments
 
# Version numbers to update
 
!define APPV_MAJOR 1
 
!define APPV_MINOR 2
 
!define APPV_MAINT 0
 
!define APPV_BUILD 1
 
!define APPV_EXTRA "-beta2"
 
!define APPV_BUILD 2
 
!define APPV_EXTRA "-beta3"
 

	
 
!define APPNAME "OpenTTD"   ; Define application name
 
!define APPVERSION "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}${APPV_EXTRA}"  ; Define application version
 
!define APPVERSIONINTERNAL "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}.${APPV_BUILD}" ; Define application version in X.X.X.X
 
!define INSTALLERVERSION ${APPV_MAJOR}${APPV_MINOR}${APPV_MAINT}${APPV_BUILD}
 
!include ${VERSION_INCLUDE}
 

	
 
!define APPURLLINK "http://www.openttd.org"
 
!define APPNAMEANDVERSION "${APPNAME} ${APPVERSION}"
 

	
 
!define OPENGFX_BASE_VERSION "1.2.0"
 
!define OPENSFX_BASE_VERSION "0.8.0"
 
!define OPENMSX_BASE_VERSION "1.0.0"
 

	
 
!define MUI_ICON "..\..\..\media\openttd.ico"
 
!define MUI_UNICON "..\..\..\media\openttd.ico"
 
!define MUI_WELCOMEFINISHPAGE_BITMAP "welcome.bmp"
 
!define MUI_HEADERIMAGE
 
!define MUI_HEADERIMAGE_BITMAP "top.bmp"
 

	
 
BrandingText "OpenTTD Installer"
 
SetCompressor LZMA
 

	
 
; Version Info
 
Var AddWinPrePopulate
 
VIProductVersion "${APPVERSIONINTERNAL}"
 
VIAddVersionKey "ProductName" "OpenTTD ${APPBITS}-bit Installer for Windows ${EXTRA_VERSION}"
 
VIAddVersionKey "Comments" "Installs ${APPNAMEANDVERSION}"
 
VIAddVersionKey "CompanyName" "OpenTTD Developers"
 
VIAddVersionKey "FileDescription" "Installs ${APPNAMEANDVERSION}"
 
VIAddVersionKey "ProductVersion" "${APPVERSION}"
 
VIAddVersionKey "InternalName" "InstOpenTTD-${APPARCH}"
 
VIAddVersionKey "FileVersion" "${APPVERSION}-${APPARCH}"
 
VIAddVersionKey "LegalCopyright" " "
 
; Main Install settings
 
Name "${APPNAMEANDVERSION} ${APPBITS}-bit for Windows ${EXTRA_VERSION}"
 

	
 
; NOTE: Keep trailing backslash!
 
InstallDirRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Install Folder"
 
OutFile "openttd-${APPVERSION}-${APPARCH}.exe"
 
CRCCheck force
 

	
 
ShowInstDetails show
 
ShowUninstDetails show
 

	
 
RequestExecutionLevel admin
 

	
 
Var SHORTCUTS
 
Var CDDRIVE
 

	
 
; Modern interface settings
 
!include "MUI2.nsh"
 
!include "InstallOptions.nsh"
 
!include "WinVer.nsh"
 

	
 
!define MUI_ABORTWARNING
 
!define MUI_WELCOMEPAGE_TITLE_3LINES
 
!insertmacro MUI_PAGE_WELCOME
 
!insertmacro MUI_PAGE_LICENSE "..\..\..\COPYING"
 

	
 
!define MUI_COMPONENTSPAGE_SMALLDESC
 
!insertmacro MUI_PAGE_COMPONENTS
 

	
 
;---------------------------------
 
; Custom page for finding TTDLX CD
 
Page custom SelectCDEnter SelectCDExit ": TTD folder"
 

	
 
!insertmacro MUI_PAGE_DIRECTORY
 

	
 
;Start Menu Folder Page Configuration
 
!define MUI_STARTMENUPAGE_DEFAULTFOLDER $SHORTCUTS
 
!define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKEY_LOCAL_MACHINE"
 
!define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD"
 
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Shortcut Folder"
 

	
 
!insertmacro MUI_PAGE_STARTMENU "OpenTTD" $SHORTCUTS
 

	
 
!insertmacro MUI_PAGE_INSTFILES
 

	
 
!define MUI_FINISHPAGE_TITLE_3LINES
 
!define MUI_FINISHPAGE_RUN_TEXT "Run ${APPNAMEANDVERSION} now!"
 
!define MUI_FINISHPAGE_RUN "$INSTDIR\openttd.exe"
 
!define MUI_FINISHPAGE_LINK "Visit the OpenTTD site for more information"
 
!define MUI_FINISHPAGE_LINK_LOCATION "${APPURLLINK}"
 
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
 
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\readme.txt"
 
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
 
!define MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT DisableBack
 

	
 
!insertmacro MUI_PAGE_FINISH
 
!define MUI_PAGE_HEADER_TEXT "Uninstall ${APPNAMEANDVERSION}"
 
!insertmacro MUI_UNPAGE_CONFIRM
 
!insertmacro MUI_UNPAGE_INSTFILES
 

	
 
; Set languages (first is default language)
 
!insertmacro MUI_LANGUAGE "English"
 
!insertmacro MUI_RESERVEFILE_LANGDLL
 

	
 
;--------------------------------------------------------------
 
; (Core) OpenTTD install section. Copies all internal game data
 
Section "!OpenTTD" Section1
 
	; Make sure to be upgraded OpenTTD is not running
 
	Call CheckOpenTTDRunning
 

	
 
	; Overwrite files by default, but don't complain on failure
 
	SetOverwrite try
 

	
 
	SetShellVarContext all
 

	
 
	; Define root variable relative to installer
 
	!define PATH_ROOT "..\..\..\"
 

	
 
	; Copy language files
 
	SetOutPath "$INSTDIR\lang\"
 
	File ${PATH_ROOT}bin\lang\english.lng
 

	
 
	; Copy AI files
 
	SetOutPath "$INSTDIR\ai\"
 
	File ${PATH_ROOT}bin\ai\compat_*.nut
 

	
 
	; Copy data files
 
	SetOutPath "$INSTDIR\baseset\"
 
	File ${PATH_ROOT}bin\baseset\*.grf
 
	File ${PATH_ROOT}bin\baseset\*.obg
 
	File ${PATH_ROOT}bin\baseset\*.obm
 
	File ${PATH_ROOT}bin\baseset\*.obs
 
	File ${PATH_ROOT}bin\baseset\opntitle.dat
 

	
 
	; Copy the scripts
 
	SetOutPath "$INSTDIR\scripts\"
 
	File ${PATH_ROOT}bin\scripts\*.*
 
	Push "$INSTDIR\scripts\readme.txt"
 
	Call unix2dos
 

	
 
	; Copy some documention files
 
	SetOutPath "$INSTDIR\docs\"
 
	File ${PATH_ROOT}docs\multiplayer.txt
 
	Push "$INSTDIR\docs\multiplayer.txt"
 
	Call unix2dos
 
	File ${PATH_ROOT}docs\32bpp.txt
 
	Push "$INSTDIR\docs\32bpp.txt"
 
	Call unix2dos
 

	
 
	; Copy the rest of the stuff
 
	SetOutPath "$INSTDIR\"
 

	
 
	; Copy text files
 
	File ${PATH_ROOT}changelog.txt
 
	Push "$INSTDIR\changelog.txt"
 
	Call unix2dos
 
	File ${PATH_ROOT}COPYING
 
	Push "$INSTDIR\COPYING"
 
	Call unix2dos
 
	File ${PATH_ROOT}readme.txt
 
	Push "$INSTDIR\readme.txt"
 
	Call unix2dos
 
	File ${PATH_ROOT}known-bugs.txt
 
	Push "$INSTDIR\known-bugs.txt"
 
	Call unix2dos
 

	
 
	; Copy executable
 
	File /oname=openttd.exe ${BINARY_DIR}\openttd.exe
 

	
 

	
 
	; Delete old files from the main dir. they are now placed in baseset/ and lang/
 
	Delete "$INSTDIR\*.lng"
 
	Delete "$INSTDIR\*.grf"
 
	Delete "$INSTDIR\sample.cat"
 
	Delete "$INSTDIR\ttd.exe"
 
	Delete "$INSTDIR\data\opntitle.dat"
 
	Delete "$INSTDIR\data\2ccmap.grf"
 
	Delete "$INSTDIR\data\airports.grf"
 
	Delete "$INSTDIR\data\autorail.grf"
 
	Delete "$INSTDIR\data\canalsw.grf"
 
	Delete "$INSTDIR\data\dosdummy.grf"
 
	Delete "$INSTDIR\data\elrailsw.grf"
 
	Delete "$INSTDIR\data\nsignalsw.grf"
 
	Delete "$INSTDIR\data\openttd.grf"
 
	Delete "$INSTDIR\data\roadstops.grf"
 
	Delete "$INSTDIR\data\trkfoundw.grf"
 
	Delete "$INSTDIR\data\openttdd.grf"
 
	Delete "$INSTDIR\data\openttdw.grf"
 
	Delete "$INSTDIR\data\orig_win.obg"
 
	Delete "$INSTDIR\data\orig_dos.obg"
 
	Delete "$INSTDIR\data\orig_dos_de.obg"
 
	Delete "$INSTDIR\data\orig_win.obs"
 
	Delete "$INSTDIR\data\orig_dos.obs"
 
	Delete "$INSTDIR\data\no_sound.obs"
 

	
 
	; Create the Registry Entries
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Comments" "Visit ${APPURLLINK}"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "DisplayIcon" "$INSTDIR\openttd.exe,0"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "DisplayName" "OpenTTD ${APPVERSION}"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "DisplayVersion" "${APPVERSION}"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "HelpLink" "${APPURLLINK}"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Install Folder" "$INSTDIR"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Publisher" "OpenTTD"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Shortcut Folder" "$SHORTCUTS"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "UninstallString" "$INSTDIR\uninstall.exe"
 
	WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "URLInfoAbout" "${APPURLLINK}"
 
	; This key sets the Version DWORD that new installers will check against
 
	WriteRegDWORD HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Version" ${INSTALLERVERSION}
 

	
 
	!insertmacro MUI_STARTMENU_WRITE_BEGIN "OpenTTD"
 
	CreateShortCut "$DESKTOP\OpenTTD.lnk" "$INSTDIR\openttd.exe"
 
	CreateDirectory "$SMPROGRAMS\$SHORTCUTS"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\OpenTTD.lnk" "$INSTDIR\openttd.exe"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Uninstall.lnk" "$INSTDIR\uninstall.exe"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Readme.lnk" "$INSTDIR\Readme.txt"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Changelog.lnk" "$INSTDIR\Changelog.txt"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Known-bugs.lnk" "$INSTDIR\known-bugs.txt"
 
	CreateDirectory "$SMPROGRAMS\$SHORTCUTS\Docs"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Docs\Multiplayer.lnk" "$INSTDIR\docs\multiplayer.txt"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Docs\32bpp.lnk" "$INSTDIR\docs\32bpp.txt"
 
	CreateDirectory "$SMPROGRAMS\$SHORTCUTS\Scripts"
 
	CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Scripts\Readme.lnk" "$INSTDIR\scripts\readme.txt"
 
	!insertmacro MUI_STARTMENU_WRITE_END
 
SectionEnd
 

	
 
;--------------------------------------------------------------
 
; OpenTTD translation install section. Copies only translations
 
Section "OpenTTD translations" Section6
 
	; Overwrite files by default, but don't complain on failure
 
	SetOverwrite try
 

	
 
	; Copy language files
 
	SetOutPath "$INSTDIR\lang\"
 
	File ${PATH_ROOT}bin\lang\*.lng
 
SectionEnd
 

	
 
;----------------------------------------------------------------------------------
 
; OpenGFX files install section. Downloads OpenGFX and installs it
 
Section "Download OpenGFX (free graphics set)" Section3
 
	SetOverwrite try
 

	
 
	NSISdl::download "http://binaries.openttd.org/installer/opengfx-${OPENGFX_BASE_VERSION}.7z" "$INSTDIR\baseset\opengfx.7z"
 
	Pop $R0 ;Get the return value
 
	StrCmp $R0 "success" +3
 
		MessageBox MB_OK "Downloading of OpenGFX failed"
 
		Goto Done
 

	
 
	; Let's extract the files
 
	SetOutPath "$INSTDIR\baseset\"
 
	NSIS7z::Extract "$INSTDIR\baseset\opengfx.7z"
 

	
 
	Delete "$INSTDIR\baseset\opengfx.7z"
 
	SetOutPath "$INSTDIR\"
 
Done:
 

	
 
SectionEnd
 

	
 
;----------------------------------------------------------------------------------
 
; OpenSFX files install section. Downloads OpenSFX and installs it
 
Section "Download OpenSFX (free sound set)" Section4
 
	SetOverwrite try
 

	
 
	NSISdl::download "http://binaries.openttd.org/installer/opensfx-${OPENSFX_BASE_VERSION}.7z" "$INSTDIR\baseset\opensfx.7z"
 
	Pop $R0 ;Get the return value
 
	StrCmp $R0 "success" +3
 
		MessageBox MB_OK "Downloading of OpenSFX failed"
 
		Goto Done
 

	
 
	; Let's extract the files
 
	SetOutPath "$INSTDIR\baseset\"
 
	NSIS7z::Extract "$INSTDIR\baseset\opensfx.7z"
 

	
 
	Delete "$INSTDIR\baseset\opensfx.7z"
 
	SetOutPath "$INSTDIR\"
 
Done:
 

	
 
SectionEnd
 

	
 
;----------------------------------------------------------------------------------
 
; OpenMSX files install section. Downloads OpenMSX and installs it
 
Section "Download OpenMSX (free music set)" Section5
 
	SetOverwrite try
 

	
 
	NSISdl::download "http://binaries.openttd.org/installer/openmsx-${OPENMSX_BASE_VERSION}.7z" "$INSTDIR\gm\openmsx.7z"
 
	Pop $R0 ;Get the return value
 
	StrCmp $R0 "success" +3
 
		MessageBox MB_OK "Downloading of OpenMSX failed"
 
		Goto Done
 

	
 
	; Let's extract the files
 
	SetOutPath "$INSTDIR\gm\"
 
	NSIS7z::Extract "$INSTDIR\gm\openmsx.7z"
 

	
 
	Delete "$INSTDIR\gm\openmsx.7z"
 
	SetOutPath "$INSTDIR\"
 
Done:
 

	
 
SectionEnd
 

	
 
;----------------------------------------------------------------------------------
 
; TTDLX files install section. Copies all needed TTDLX files from CD or install dir
 
Section /o "Copy data from Transport Tycoon Deluxe CD-ROM" Section2
 
	SetOverwrite try
 
	; Let's copy the files with size approximation
 
	SetOutPath "$INSTDIR\baseset"
 
	CopyFiles "$CDDRIVE\gm\*.gm" "$INSTDIR\baseset\" 1028
 
	CopyFiles "$CDDRIVE\sample.cat" "$INSTDIR\baseset\sample.cat" 1566
 
	; Copy Windows files
 
	CopyFiles "$CDDRIVE\trg1r.grf" "$INSTDIR\baseset\trg1r.grf" 2365
 
	CopyFiles "$CDDRIVE\trgcr.grf" "$INSTDIR\baseset\trgcr.grf" 260
 
	CopyFiles "$CDDRIVE\trghr.grf" "$INSTDIR\baseset\trghr.grf" 400
 
	CopyFiles "$CDDRIVE\trgir.grf" "$INSTDIR\baseset\trgir.grf" 334
 
	CopyFiles "$CDDRIVE\trgtr.grf" "$INSTDIR\baseset\trgtr.grf" 546
 
	; Copy DOS files
 
	CopyFiles "$CDDRIVE\trg1.grf" "$INSTDIR\baseset\trg1.grf" 2365
 
	CopyFiles "$CDDRIVE\trgc.grf" "$INSTDIR\baseset\trgc.grf" 260
 
	CopyFiles "$CDDRIVE\trgh.grf" "$INSTDIR\baseset\trgh.grf" 400
 
	CopyFiles "$CDDRIVE\trgi.grf" "$INSTDIR\baseset\trgi.grf" 334
 
	CopyFiles "$CDDRIVE\trgt.grf" "$INSTDIR\baseset\trgt.grf" 546
 
	SetOutPath "$INSTDIR\"
 
SectionEnd
 

	
 
;-------------------------------------------
 
; Install the uninstaller (option is hidden)
 
Section -FinishSection
 
	WriteUninstaller "$INSTDIR\uninstall.exe"
 
SectionEnd
 

	
 
; Modern install component descriptions
 
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
 
	!insertmacro MUI_DESCRIPTION_TEXT ${Section1} "Minimal OpenTTD installation in English. You need at least one of the game graphics and sound sets installed."
 
	!insertmacro MUI_DESCRIPTION_TEXT ${Section6} "Translations of OpenTTD."
 
	!insertmacro MUI_DESCRIPTION_TEXT ${Section3} "Download the free OpenGFX game graphics set. This download is about 3 MiB."
 
	!insertmacro MUI_DESCRIPTION_TEXT ${Section4} "Download the free OpenSFX game sound set. This download is about 10 MiB."
 
	!insertmacro MUI_DESCRIPTION_TEXT ${Section5} "Download the free OpenMSX game music set. This download is about 200 KiB."
 
	!insertmacro MUI_DESCRIPTION_TEXT ${Section2} "Copies the game graphics, sounds and music from the Transport Tycoon Deluxe CD."
 
!insertmacro MUI_FUNCTION_DESCRIPTION_END
 

	
 
;-----------------------------------------------
 
; Uninstall section, deletes all installed files
 
Section "Uninstall"
 
	SetShellVarContext all
 

	
 
	IfFileExists "$INSTDIR\save" 0 NoRemoveSavedGames
 
	MessageBox MB_YESNO|MB_ICONQUESTION \
 
		"Remove the save game folders located at $\"$INSTDIR\save$\"?$\n \
 
		If you choose Yes, your saved games will be deleted." \
 
		IDYES RemoveSavedGames IDNO NoRemoveSavedGames
 
	RemoveSavedGames:
 
		Delete "$INSTDIR\save\autosave\*"
 
		RMDir "$INSTDIR\save\autosave"
 
		Delete "$INSTDIR\save\*"
 
		RMDir "$INSTDIR\save"
 
	NoRemoveSavedGames:
 

	
 
	IfFileExists "$INSTDIR\scenario" 0 NoRemoveScen
 
	MessageBox MB_YESNO|MB_ICONQUESTION \
 
		"Remove the scenario folders located at $\"$INSTDIR\scenario$\"?$\n \
 
		If you choose Yes, your scenarios will be deleted." \
 
		IDYES RemoveScen IDNO NoRemoveScen
 
	RemoveScen:
 
		Delete "$INSTDIR\scenario\heightmap*"
 
		RMDir "$INSTDIR\scenario\heightmap"
 
		Delete "$INSTDIR\scenario\*"
 
		RMDir "$INSTDIR\scenario"
 
	NoRemoveScen:
 

	
 
	; Remove from registry...
 
	!insertmacro MUI_STARTMENU_GETFOLDER "OpenTTD" $SHORTCUTS
 
	ReadRegStr $SHORTCUTS HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Shortcut Folder"
 

	
 
	DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD"
 

	
 
	; Delete self
 
	Delete "$INSTDIR\uninstall.exe"
 

	
 
	; Delete Shortcuts
 
	Delete "$DESKTOP\OpenTTD.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\OpenTTD.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\Uninstall.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\Readme.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\Changelog.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\Known-bugs.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\Docs\Multiplayer.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\Docs\32bpp.lnk"
 
	Delete "$SMPROGRAMS\$SHORTCUTS\Scripts\Readme.lnk"
 

	
 
	; Clean up OpenTTD dir
 
	Delete "$INSTDIR\changelog.txt"
 
	Delete "$INSTDIR\readme.txt"
 
	Delete "$INSTDIR\known-bugs.txt"
 
	Delete "$INSTDIR\openttd.exe"
 
	Delete "$INSTDIR\COPYING"
 
	Delete "$INSTDIR\INSTALL.LOG"
 
	Delete "$INSTDIR\crash.log"
 
	Delete "$INSTDIR\crash.dmp"
 
	Delete "$INSTDIR\openttd.cfg"
 
	Delete "$INSTDIR\hs.dat"
 
	Delete "$INSTDIR\cached_sprites.*"
 
	Delete "$INSTDIR\save\autosave\network*.tmp" ; temporary network file
 

	
 
	; AI files
 
	Delete "$INSTDIR\ai\compat_*.nut"
 

	
 
	; Baseset files
 
	Delete "$INSTDIR\baseset\opntitle.dat"
 
	Delete "$INSTDIR\baseset\openttd.grf"
 
	Delete "$INSTDIR\baseset\orig_win.obg"
 
	Delete "$INSTDIR\baseset\orig_dos.obg"
 
	Delete "$INSTDIR\baseset\orig_dos_de.obg"
 
	Delete "$INSTDIR\baseset\orig_win.obs"
 
	Delete "$INSTDIR\baseset\orig_dos.obs"
 
	Delete "$INSTDIR\baseset\no_sound.obs"
 
	Delete "$INSTDIR\baseset\sample.cat"
 
	Delete "$INSTDIR\baseset\trg1r.grf"
 
	Delete "$INSTDIR\baseset\trghr.grf"
 
	Delete "$INSTDIR\baseset\trgtr.grf"
 
	Delete "$INSTDIR\baseset\trgcr.grf"
 
	Delete "$INSTDIR\baseset\trgir.grf"
 
	Delete "$INSTDIR\baseset\trg1.grf"
 
	Delete "$INSTDIR\baseset\trgh.grf"
 
	Delete "$INSTDIR\baseset\trgt.grf"
 
	Delete "$INSTDIR\baseset\trgc.grf"
 
	Delete "$INSTDIR\baseset\trgi.grf"
 
	Delete "$INSTDIR\baseset\*.gm"
 

	
 
	Delete "$INSTDIR\data\sample.cat"
 
	Delete "$INSTDIR\data\trg1r.grf"
 
	Delete "$INSTDIR\data\trghr.grf"
 
	Delete "$INSTDIR\data\trgtr.grf"
 
	Delete "$INSTDIR\data\trgcr.grf"
 
	Delete "$INSTDIR\data\trgir.grf"
 
	Delete "$INSTDIR\data\trg1.grf"
 
	Delete "$INSTDIR\data\trgh.grf"
 
	Delete "$INSTDIR\data\trgt.grf"
 
	Delete "$INSTDIR\data\trgc.grf"
 
	Delete "$INSTDIR\data\trgi.grf"
 
	Delete "$INSTDIR\gm\*.gm"
 

	
 
	; Downloaded OpenGFX/OpenSFX/OpenMSX
 
	Delete "$INSTDIR\baseset\opengfx\*"
 
	RMDir  "$INSTDIR\baseset\opengfx"
 
	Delete "$INSTDIR\baseset\opensfx\*"
 
	RMDir  "$INSTDIR\baseset\opensfx"
 
	Delete "$INSTDIR\baseset\openmsx\*"
 
	RMDir  "$INSTDIR\baseset\openmsx"
 

	
 
	Delete "$INSTDIR\data\opengfx\*"
 
	RMDir  "$INSTDIR\data\opengfx"
 
	Delete "$INSTDIR\data\opensfx\*"
 
	RMDir  "$INSTDIR\data\opensfx"
 
	Delete "$INSTDIR\gm\openmsx\*"
 
	RMDir  "$INSTDIR\gm\openmsx"
 

	
 
	; Language files
 
	Delete "$INSTDIR\lang\*.lng"
 

	
 
	; Scripts
 
	Delete "$INSTDIR\scripts\*.*"
 

	
 
	; Documentation
 
	Delete "$INSTDIR\docs\*.*"
 

	
 
	; Base sets for music
 
	Delete "$INSTDIR\gm\orig_win.obm"
 
	Delete "$INSTDIR\gm\no_music.obm"
 
	Delete "$INSTDIR\baseset\orig_win.obm"
 
	Delete "$INSTDIR\baseset\no_music.obm"
 

	
 
	; Remove remaining directories
 
	RMDir "$SMPROGRAMS\$SHORTCUTS\Extras\"
 
	RMDir "$SMPROGRAMS\$SHORTCUTS\Scripts\"
 
	RMDir "$SMPROGRAMS\$SHORTCUTS\Docs\"
 
	RMDir "$SMPROGRAMS\$SHORTCUTS"
 
	RMDir "$INSTDIR\ai"
 
	RMDir "$INSTDIR\data"
 
	RMDir "$INSTDIR\baseset"
 
	RMDir "$INSTDIR\gm"
 
	RMDir "$INSTDIR\lang"
 
	RMDir "$INSTDIR\scripts"
 
	RMDir "$INSTDIR\docs"
 
	RMDir "$INSTDIR"
 

	
 
SectionEnd
 

	
 
;------------------------------------------------------------
 
; Custom page function to find the TTDLX CD/install location
 
Function SelectCDEnter
 
	SectionGetFlags ${Section2} $0
 
	IntOp $1 $0 & 0x80 ; bit 7 set by upgrade, no need to copy files
 
	IntCmp $1 1 DoneCD ; Upgrade doesn't need copy files
 

	
 
	IntOp $0 $0 & 1
 
	IntCmp $0 1 NoAbort
 
	Abort
 
NoAbort:
 

	
 
	GetTempFileName $R0
 
	!insertmacro MUI_HEADER_TEXT "Locate TTD" "Setup needs the location of Transport Tycoon Deluxe in order to continue."
 
	!insertmacro INSTALLOPTIONS_EXTRACT_AS "CDFinder.ini" "CDFinder"
 

	
 
	ClearErrors
 
	; Now, let's populate $CDDRIVE
 
	ReadRegStr $R0 HKLM "SOFTWARE\Fish Technology Group\Transport Tycoon Deluxe" "HDPath"
 
	IfErrors NoTTD
 
	StrCmp $CDDRIVE "" 0 Populated
 
	StrCpy $CDDRIVE $R0
 
Populated:
 
	StrCpy $AddWinPrePopulate "Setup has detected your TTD folder. Don't change the folder. Simply press Next."
 
	Goto TruFinish
 
NoTTD:
 
	StrCpy $AddWinPrePopulate "Setup couldn't find TTD. Please enter the path where the graphics files from TTD are stored and press Next to continue."
 
TruFinish:
 
	ClearErrors
 
	!insertmacro INSTALLOPTIONS_WRITE "CDFinder" "Field 2" "State" $CDDRIVE          ; TTDLX path
 
	!insertmacro INSTALLOPTIONS_WRITE "CDFinder" "Field 3" "Text" $AddWinPrePopulate ; Caption
 
DoneCD:
 
	; Initialize the dialog *AFTER* we've changed the text otherwise we won't see the changes
 
	!insertmacro INSTALLOPTIONS_INITDIALOG "CDFinder"
 
	!insertmacro INSTALLOPTIONS_SHOW
 
FunctionEnd
 

	
 
;----------------------------------------------------------------
 
; Custom page function when 'next' is selected for the TTDLX path
 
Function SelectCDExit
 
	!insertmacro INSTALLOPTIONS_READ $CDDRIVE "CDFinder" "Field 2" "State"
 
	; If trg1r.grf does not exist at the path, retry with DOS version
 
	IfFileExists $CDDRIVE\trg1r.grf "" DosCD
 
	IfFileExists $CDDRIVE\trgir.grf "" NoCD
 
	IfFileExists $CDDRIVE\sample.cat hasCD NoCD
 
DosCD:
 
	IfFileExists $CDDRIVE\TRG1.GRF "" NoCD
 
	IfFileExists $CDDRIVE\TRGI.GRF "" NoCD
 
	IfFileExists $CDDRIVE\SAMPLE.CAT hasCD NoCD
 
NoCD:
 
	MessageBox MB_OK "Setup cannot continue without the Transport Tycoon Deluxe location!"
 
	Abort
 
hasCD:
 
FunctionEnd
 

	
 
;-------------------------------------------------------------------------------
 
; Determine windows version, returns "win9x" if Win9x/Me/2000/XP SP2- or "winnt" for the rest on the stack
 
Function GetWindowsVersion
 
	ClearErrors
 
	StrCpy $R0 "win9x"
 
	${If} ${IsNT}
 
		${If} ${IsWinXP}
 
		${AndIf} ${AtLeastServicePack} 3
 
		${OrIf} ${AtLeastWin2003}
 
			StrCpy $R0 "winnt"
 
		${EndIf}
 
	${EndIf}
 
	Push $R0
 
FunctionEnd
 

	
 
;-------------------------------------------------------------------------------
 
; Check whether we're not running an installer for 64 bits on 32 bits and vice versa
 
Function CheckProcessorArchitecture
 
	GetVersion::WindowsPlatformArchitecture
 
	Pop $R0
 
	IntCmp $R0 64 Win64 0
 
	ClearErrors
 
	IntCmp ${APPBITS} 64 0 Done
 
	MessageBox MB_YESNO|MB_ICONSTOP "You are trying to install the 64-bit OpenTTD on a 32-bit operating system. This is not going to work. Please download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
 
	GoTo Done
 
Win64:
 
	ClearErrors
 
	IntCmp ${APPBITS} 64 Done 0
 
	MessageBox MB_YESNO|MB_ICONINFORMATION "You are trying to install the 32-bit OpenTTD on a 64-bit operating system. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
 
	GoTo Done
 
Abort:
 
	Quit
 
Done:
 
FunctionEnd
 

	
 
;-------------------------------------------------------------------------------
 
; Check whether we're not running an installer for NT on 9x and vice versa
 
Function CheckWindowsVersion
 
	Call GetWindowsVersion
 
	Pop $R0
 
	StrCmp $R0 "win9x" 0 WinNT
 
	ClearErrors
 
	StrCmp ${APPARCH} "win9x" Done 0
 
	MessageBox MB_YESNO|MB_ICONSTOP "You are trying to install the Windows XP SP3, Vista and 7 version on Windows 95, 98, ME, 2000 and XP without SP3. This is will not work. Please download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
 
	GoTo Done
 
WinNT:
 
	ClearErrors
 
	StrCmp ${APPARCH} "win9x" 0 Done
 
	MessageBox MB_YESNO|MB_ICONEXCLAMATION "You are trying to install the Windows 95, 98, 2000 and XP without SP3 version on Windows XP SP3, Vista or 7. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
 
Abort:
 
	Quit
 
Done:
 
FunctionEnd
 

	
 
;-------------------------------------------------------------------------------
 
; Check whether OpenTTD is running
 
Function CheckOpenTTDRunning
 
	IfFileExists "$INSTDIR\openttd.exe" 0 Done
 
Retry:
 
	FindProcDLL::FindProc "openttd.exe"
 
	Pop $R0
 
	IntCmp $R0 1 0 Done
 
	ClearErrors
 
	Delete "$INSTDIR\openttd.exe"
 
	IfErrors 0 Done
 
	ClearErrors
 
	MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "OpenTTD is running. Please close it and retry." IDRETRY Retry
 
	Abort
 
Done:
 
FunctionEnd
 

	
 
;-------------------------------------------------------------------------------
 
; strips all CRs
 
; and then converts all LFs into CRLFs
 
; (this is roughly equivalent to "cat file | dos2unix | unix2dos")
 
;
 
; usage:
 
;    Push "infile"
 
;    Call unix2dos
 
;
 
; beware that this function destroys $0 $1 $2
 
Function unix2dos
 
	ClearErrors
 

	
 
	Pop $2
 
	Rename $2 $2.U2D
 
	FileOpen $1 $2 w
 

	
 
	FileOpen $0 $2.U2D r
 

	
 
	Push $2 ; save name for deleting
 

	
 
	IfErrors unix2dos_done
 

	
 
	; $0 = file input (opened for reading)
 
	; $1 = file output (opened for writing)
 

	
 
unix2dos_loop:
 
	; read a byte (stored in $2)
 
	FileReadByte $0 $2
 
	IfErrors unix2dos_done ; EOL
 
	; skip CR
 
	StrCmp $2 13 unix2dos_loop
 
	; if LF write an extra CR
 
	StrCmp $2 10 unix2dos_cr unix2dos_write
 

	
 
unix2dos_cr:
 
	FileWriteByte $1 13
 

	
 
unix2dos_write:
 
	; write byte
 
	FileWriteByte $1 $2
 
	; read next byte
 
	Goto unix2dos_loop
 

	
 
unix2dos_done:
 
	; close files
 
	FileClose $0
 
	FileClose $1
 

	
 
	; delete original
 
	Pop $0
 
	Delete $0.U2D
 

	
 
FunctionEnd
 

	
 

	
 
Var OLDVERSION
 
Var UninstallString
 

	
 
;-----------------------------------------------------------------------------------
 
; NSIS Initialize function, determine if we are going to install/upgrade or uninstall
 
Function .onInit
 
	StrCpy $SHORTCUTS "OpenTTD"
 

	
 
	SectionSetSize ${Section3} 6144
 
	SectionSetSize ${Section4} 13312
 
	SectionSetSize ${Section5} 1024
 

	
 
	SectionSetFlags 0 17
 

	
 
	; Starts Setup - let's look for an older version of OpenTTD
 
	ReadRegDWORD $R8 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Version"
 

	
 
	IfErrors ShowWelcomeMessage ShowUpgradeMessage
 
ShowWelcomeMessage:
 
	ReadRegStr $R8 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Version"
 
	; In the event someone still has OpenTTD 0.1, this will detect that (that installer used a string instead of dword entry)
 
	IfErrors FinishCallback
 

	
 
ShowUpgradeMessage:
 
	IntCmp ${INSTALLERVERSION} $R8 VersionsAreEqual InstallerIsOlder  WelcomeToSetup
 
WelcomeToSetup:
 
	; An older version was found.  Let's let the user know there's an upgrade that will take place.
 
	ReadRegStr $OLDVERSION HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "DisplayVersion"
 
	; Gets the older version then displays it in a message box
 
	MessageBox MB_OK|MB_ICONINFORMATION \
 
		"Welcome to ${APPNAMEANDVERSION} Setup.$\nThis will allow you to upgrade from version $OLDVERSION."
 
	SectionSetFlags ${Section2} 0x80 ; set bit 7
 
	SectionSetFlags ${Section3} 0x80 ; set bit 7
 
	SectionSetFlags ${Section4} 0x80 ; set bit 7
 
	SectionSetFlags ${Section5} 0x80 ; set bit 7
 
	Goto FinishCallback
 

	
 
VersionsAreEqual:
 
	ReadRegStr $UninstallString HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "UninstallString"
 
	IfFileExists "$UninstallString" "" FinishCallback
 
	MessageBox MB_YESNO|MB_ICONQUESTION \
 
		"Setup detected ${APPNAMEANDVERSION} on your system. This is the same version that this program will install.$\nAre you trying to uninstall it?" \
 
		IDYES DoUninstall IDNO FinishCallback
 
DoUninstall: ; You have the same version as this installer.  This allows you to uninstall.
 
	Exec "$UninstallString"
 
	Quit
 

	
 
InstallerIsOlder:
 
	MessageBox MB_OK|MB_ICONSTOP \
 
		"You have a newer version of ${APPNAME}.$\nSetup will now exit."
 
	Quit
 

	
 
FinishCallback:
 
	ClearErrors
 
	Call CheckProcessorArchitecture
 
	Call CheckWindowsVersion
 
FunctionEnd
 
; eof
 

	
readme.txt
Show inline comments
 
OpenTTD readme
 
Last updated:    2012-01-07
 
Release version: 1.2.0-beta2
 
Last updated:    2012-01-21
 
Release version: 1.2.0-beta3
 
------------------------------------------------------------------------
 

	
 

	
 
Table of contents
 
-----------------
 
1.0) About
 
2.0) Contacting
 
 * 2.1) Reporting bugs
 
 * 2.2) Reporting desyncs
 
3.0) Supported platforms
 
4.0) Installing and running OpenTTD
 
 * 4.1) (Required) 3rd party files
 
 * 4.2) OpenTTD directories
 
 * 4.3) Portable installations (portable media)
 
 * 4.4) Files in tar (archives)
 
5.0) OpenTTD features
 
 * 5.1) Logging of potentially dangerous actions
 
6.0) Configuration file
 
7.0) Compiling
 
 * 7.1) Required/optional libraries
 
 * 7.2) Supported compilers
 
8.0) Translating
 
 * 8.1) Translation
 
 * 8.2) Previewing
 
9.0) Troubleshooting
 
X.X) Credits
 

	
 

	
 
1.0) About
 
---- -----
 
OpenTTD is a transport simulation game based upon the popular game Transport
 
Tycoon Deluxe, written by Chris Sawyer. It attempts to mimic the original
 
game as closely as possible while extending it with new features.
 

	
 
OpenTTD is licensed under the GNU General Public License version 2.0. For
 
more information, see the file 'COPYING'.
 

	
 

	
 
2.0) Contacting
 
---- ----------
 
The easiest way to contact the OpenTTD team is by submitting bug reports or
 
posting comments in our forums. You can also chat with us on IRC (#openttd
 
on irc.oftc.net).
 

	
 
The OpenTTD homepage is http://www.openttd.org/.
 

	
 
You can also find the OpenTTD forums at
 
http://forum.openttd.org/
 

	
 
2.1) Reporting bugs
 
---- --------------
 
First of all, check whether the bug is not already known. Do this by looking
 
through the file called 'known-bugs.txt' which is distributed with OpenTTD
 
like this readme.
 

	
 
For tracking our bugs we are using a bug tracker called Flyspray. You can find
 
the tracker at http://bugs.openttd.org/. Before actually reporting take a look
 
through the already reported bugs there to see if the bug is already known.
 
The 'known-bugs.txt' file might be a bit outdated at the moment you are
 
reading it as only bugs known before the release are documented there. Also
 
look through the recently closed bugs.
 

	
 
When you are sure it is not already reported you should:
 
 * Make sure you are running a recent version, i.e. run the latest stable or
 
   nightly based on where you found the bug.
 
 * Make sure you are not running a non-official binary, like a patch pack.
 
   When you are playing with a patch pack you should report any bugs to the
 
   forum thread related to that patch pack.
 
 * Make it reproducible for the developers. In other words, create a savegame
 
   in which you can reproduce the issue once loaded. It is very useful to give
 
   us the crash.dmp, crash.sav, crash.log and crash screenshot which are
 
   created on crashes.
 
 * Check whether the bug is already reported on our bug tracker. This includes
 
   searching for recently closed bug reports as the bug might already be fixed.
 

	
 
After you have done all that you can report the bug. Please include the
 
following information in your bug report:
 
 * OpenTTD version (PLEASE test the latest SVN/nightly build)
 
 * Bug details, including instructions how to reproduce it
 
 * Platform (Win32, Linux, FreeBSD, ...) and compiler (including version) if
 
   you compiled OpenTTD yourself.
 
 * Attach a saved game *and* a screenshot if possible
 
 * If this bug only occurred recently please note the last version without
 
   the bug and the first version including the bug. That way we can fix it
 
   quicker by looking at the changes made.
 
 * Attach crash.dmp, crash.log and crash.sav. These files are usually created
 
   next to your openttd.cfg. The crash handler will tell you the location.
 

	
 
2.2) Reporting desyncs
 
---- -----------------
 
As desyncs are hard to make reproducible OpenTTD has the ability to log all
 
actions done by clients so we can replay the whole game in an effort to make
 
desyncs better reproducible. You need to turn this ability on. When turned
 
on an automatic savegame will be made once the map has been constructed in
 
the 'save/autosave' directory, see OpenTTD directories to know where to find
 
this directory. Furthermore the log file 'commands-out.log' will be created
 
and all actions will be written to there.
 

	
 
To enable the desync debugging you need to set the debug level for 'desync'
 
to at least 1. You do this by starting OpenTTD with '-d desync=<level>' as
 
parameter or by typing 'debug_level desync=<level>' in OpenTTD's internal
 
console.
 
The desync debug levels are:
 
 0: nothing.
 
 1: dumping of commands to 'commands-out.log'.
 
 2: same as 1 plus checking vehicle caches and dumping that too.
 
 3: same as 2 plus monthly saves in autosave.
 
 4 and higher: same as 3
 

	
 
Restarting OpenTTD will overwrite 'commands-out.log'. OpenTTD will not remove
 
the savegames (dmp_cmds_*.sav) made by the desync debugging system, so you
 
have to occasionally remove them yourself!
 

	
 
The naming format of the desync savegames is as follows:
 
dmp_cmds_XXXXXXXX_YYYYYYYY.sav. The XXXXXXXX is the hexadecimal representation
 
of the generation seed of the game and YYYYYYYY is the hexadecimal
 
representation of the date of the game. This sorts the savegames by game and
 
then by date making it easier to find the right savegames.
 

	
 
When a desync has occurred with the desync debugging turned on you should file
 
a bug report with the following files attached:
 
 - commands-out.log as it contains all the commands that were done
 
 - the last saved savegame (search for the last line beginning with
 
   'save: dmp_cmds_' in commands-out.log). We use this savegame to check
 
   whether we can quickly reproduce the desync. Otherwise we will need...
 
 - the first saved savegame (search for the first line beginning with 'save'
 
   where the first part, up to the last underscore '_', is the same). We need
 
   this savegame to be able to reproduce the bug when the last savegame is not
 
   old enough. If you loaded a scenario or savegame you need to attach that.
 
 - optionally you can attach the savegames from around 50%, 75%, 85%, 90% and
 
   95% of the game's progression. We can use these savegames to speed up the
 
   reproduction of the desync, but we should be able to reproduce these
 
   savegames based on the first savegame and commands-out.log.
 
 - in case you use any NewGRFs you should attach the ones you used unless
 
   we can easily find them ourselves via bananas or when they are in the
 
   #openttdcoop pack.
 

	
 
Do NOT remove the dmp_cmds savegames of a desync you have reported until the
 
desync has been fixed; if you, by accident, send us the wrong savegames we
 
will not be able to reproduce the desync and thus will be unable to fix it.
 

	
 

	
 
3.0) Supported platforms
 
---- -------------------
 
OpenTTD has been ported to several platforms and operating systems. It shouldn't
 
be very difficult to port it to a new platform. The currently working platforms
 
are:
 

	
 
  BeOS                 - SDL or Allegro
 
  DOS                  - Allegro
 
  FreeBSD              - SDL
 
  Linux                - SDL or Allegro
 
  MacOS X (universal)  - Cocoa video and sound drivers
 
  MorphOS              - SDL
 
  OpenBSD              - SDL
 
  OS/2                 - SDL
 
  Windows              - Win32 GDI (faster) or SDL or Allegro
 

	
 

	
 
4.0) Installing and running OpenTTD
 
---- ------------------------------
 
Installing OpenTTD is fairly straightforward. Either you have downloaded an
 
archive which you have to extract to a directory where you want OpenTTD to
 
be installed, or you have downloaded an installer, which will automatically
 
extract OpenTTD in the given directory.
 

	
 
OpenTTD looks in multiple locations to find the required data files (described
 
in section 4.2). Installing any 3rd party files into a "shared" location has
 
the advantage that you only need to do this step once, rather than copying the
 
data files into all OpenTTD versions you have.
 
Savegames, screenshots, etc are saved relative to the config file (openttd.cfg)
 
currently being used. This means that if you use a config file in one of the
 
shared directories, savegames will reside in the save/ directory next to the
 
openttd.cfg file there.
 
If you want savegames and screenshots in the directory where the OpenTTD binary
 
resides, simply have your config file in that location. But if you remove this
 
config file, savegames will still be in this directory (see notes in section 4.2)
 

	
 
OpenTTD comes without AIs, so if you want to play with AIs you have to download
 
them. The easiest way is via the "Check Online Content" button in the main menu.
 
You can select some AIs that you think are compatible with your playing style.
 
Another way is manually downloading the AIs from the forum although then you
 
need to make sure that you install all the required AI libraries too; they get
 
automatically selected (and downloaded) if you get the AIs via the "Check
 
Online Content". If you do not have an AI but have configured OpenTTD to start
 
an AI a message will be shown that the 'dummy' AI has been started.
 

	
 
4.1) (Required) 3rd party files
 
---- --------------------------
 
Before you run OpenTTD, you need to put the game's data files into a baseset/
 
directory which can be located in various places addressed in the following
 
section.
 

	
 
For OpenTTD you need to acquire some third party data files. For this you have
 
the choice of using the original Transport Tycoon Deluxe data files or a set
 
of free data files.
 

	
 
Do NOT copy files included with OpenTTD into "shared" directories (explained in
 
the following sections) as sooner or later you will run into graphical glitches
 
when using other versions of the game.
 

	
 
4.1.1) Free graphics and sound files
 
------ -----------------------------
 
The free data files, split into OpenGFX for graphics, OpenSFX for sounds and
 
OpenMSX for music can be found at:
 
 - http://www.openttd.org/download-opengfx for OpenGFX
 
 - http://www.openttd.org/download-opensfx for OpenSFX
 
 - http://www.openttd.org/download-openmsx for OpenMSX
 
Please follow the readme of these packages about the installation procedure.
 
The Windows installer can optionally download and install these packages.
 

	
 
4.1.2) Original Transport Tycoon Deluxe graphics and sound files
 
------ ---------------------------------------------------------
 
If you want to play with the original Transport Tycoon Deluxe data files you
 
have to copy the data files from the CD-ROM into the data/ directory. It does
 
not matter whether you copy them from the DOS or Windows version of Transport
 
Tycoon Deluxe. The Windows install can optionally copy these files.
 
You need to copy the following files:
 
 - sample.cat
 
 - trg1r.grf or TRG1.GRF
 
 - trgcr.grf or TRGC.GRF
 
 - trghr.grf or TRGH.GRF
 
 - trgir.grf or TRGI.GRF
 
 - trgtr.grf or TRGT.GRF
 

	
 
4.1.3) Original Transport Tycoon Deluxe music
 
------ --------------------------------------
 
If you want the Transport Tycoon Deluxe music, copy the files from the gm/
 
folder from the Windows version of Transport Tycoon Deluxe to the baseset
 
folder in your OpenTTD folder (also explained in the following sections).
 
The music from the DOS version as well as the original Transport Tycoon does
 
not work.
 

	
 
4.1.4) AIs
 
------ ---
 
If you want AIs use the in-game content downloader. If for some reason that is
 
not possible or you want to use an AI that has not been uploaded to the content
 
download system download the tar file and place it in the ai/ directory. If the
 
AI needs libraries you'll have to download those too and put them in the
 
ai/library/ directory. All AIs and AI Libraries that have been uploaded to
 
the content download system can be found at http://noai.openttd.org/downloads/
 
The AIs and libraries can be found their in the form of .tar.gz packages.
 
OpenTTD can read inside tar files but it does not extract .tar.gz files by
 
itself.
 
To figure out which libraries you need for an AI you have to start the AI and
 
wait for an error message to pop up. The error message will tell you
 
"couldn't find library 'lib-name'". Download that library and try again.
 

	
 
4.2) OpenTTD directories
 
---- -------------------
 
OpenTTD uses its own directory to store its required 3rd party base set files (see section
 
4.1 "Required 3rd party files") and non-compulsory extension and configuration files. See
 
below for their proper place within this OpenTTD main data directory.
 

	
 
The main OpenTTD directories can be found in various locations, depending on your operating
 
system:
 
	1. The current working directory (from where you started OpenTTD)
 
		For non-Windows operating systems OpenTTD will not scan for files in this
 
		directory if it is your personal directory, i.e. "~/", or when it is the
 
		root directory, i.e. "/".
 
	2. Your personal directory
 
		Windows: C:\My Documents\OpenTTD (95, 98, ME)
 
		         C:\Documents and Settings\<username>\My Documents\OpenTTD (2000, XP)
 
		         C:\Users\<username>\Documents\OpenTTD (Vista, 7)
 
		Mac OSX: ~/Documents/OpenTTD
 
		Linux:   ~/.openttd
 
	3. The shared directory
 
		Windows: C:\Documents and Settings\All Users\Shared Documents\OpenTTD (2000, XP)
 
		         C:\Users\Public\Documents\OpenTTD (Vista, 7)
 
		Mac OSX: /Library/Application Support/OpenTTD
 
		Linux:   not available
 
	4. The binary directory (where the OpenTTD executable is)
 
		Windows: C:\Program Files\OpenTTD
 
		Linux:   /usr/games
 
	5. The installation directory (Linux only)
 
		Linux:   /usr/share/games/openttd
 
	6. The application bundle (Mac OSX only)
 
		It includes the OpenTTD files (grf+lng) and it will work as long as they aren't
 
		touched
 

	
 
Different types of data or extensions go into different subdirectories of the chosen main
 
OpenTTD directory:
 
	Config File:         (no subdirectory)
 
	Screenshots:         (no subdirectory)
 
	Base Graphics:       baseset                 (or a subdirectory thereof)
 
	Sound Sets:          baseset                 (or a subdirectory thereof)
 
	NewGRFs:             newgrf                  (or a subdirectory thereof)
 
	32bpp Sets:          newgrf                  (or a subdirectory thereof)
 
	Music Sets:          baseset                 (or a subdirectory thereof)
 
	AIs:                 ai                      (or a subdirectory thereof)
 
	AI Libraries:        ai/libraries            (or a subdirectory thereof)
 
	Game Scripts (GS):   game                    (or a subdirectory thereof)
 
	GS Libraries:        game/libraries          (or a subdirectory thereof)
 
	Savegames:           save
 
	Automatic Savegames: save/autosave
 
	Scenarios:           scenario
 

	
 
The (automatically created) directory content_download is for OpenTTD's internal use and
 
no files should be added to it or its subdirectories manually.
 

	
 
Notes:
 
	- Linux in the previous list means .deb, but most paths should be similar for others.
 
	- The previous search order is also used for NewGRFs and openttd.cfg.
 
	- If openttd.cfg is not found, then it will be created using the 2, 4, 1, 3, 5 order.
 
	- Savegames will be relative to the config file only if there is no save/
 
	  directory in paths with higher priority than the config file path, but
 
	  autosaves and screenshots will always be relative to the config file.
 

	
 
The preferred setup:
 
Place 3rd party files in shared directory (or in personal directory if you don't
 
have write access on shared directory) and have your openttd.cfg config file in
 
personal directory (where the game will then also place savegames and screenshots).
 

	
 
4.3) Portable installations (portable media)
 
---- ---------------------------------------
 
You can install OpenTTD on external media so you can take it with you, i.e.
 
using a USB key, or a USB HDD, etc.
 
Create a directory where you shall store the game in (i.e. OpenTTD/).
 
Copy the binary (OpenTTD.exe, OpenTTD.app, openttd, etc), baseset/ and your
 
openttd.cfg to this directory.
 
You can copy binaries for any operating system into this directory, which will
 
allow you to play the game on nearly any computer you can attach the external
 
media to.
 
As always - additional grf files are stored in the newgrf/ dir (for details,
 
again, see section 4.1).
 

	
 
4.4) Files in tar (archives)
 
---- -----------------------
 
OpenTTD can read files that are in an uncompressed tar (archive), which
 
makes it easy to bundle files belonging to the same script, NewGRF or base
 
set. Music sets are the only exception as they cannot be stored in a tar
 
file due to being played by external applications.
 

	
 
OpenTTD sees each tar archive as the 'root' of its search path. This means
 
that having a file with the same path in two different tar files means that
 
one cannot be opened, after all only one file will be found first. This is
 
done to make it possible to have the large 32bpp zoomed graphics in a separate
 
file to the (relatively small) unzoomed 8bpp NewGRF. As such it is advisable
 
to put an uniquely named folder in the root of the tar and put all the
 
content in that folder. For example, all downloaded content has a path that
 
concatenates the name of the content and the version, which makes the path
 
unique. For custom tar files it is advised to do this as well.
 

	
 
The normal files are also referred to by their relative path from the search
 
directory, this means that also normal files could hide files in a tar as
 
long as the relative path from the search path of the normal file is the
 
same as the path in the tar file. Again it is advised to have an unique path
 
to the normal file so they do not collide with the files from other tar
 
files.
 

	
 

	
 
5.0) OpenTTD features
 
---- ----------------
 
OpenTTD has a lot of features going beyond the original Transport Tycoon Deluxe
 
emulation. Unfortunately, there is currently no comprehensive list of features,
 
but there is a basic features list on the web, and some optional features can be
 
controlled through the Advanced Settings dialog. We also implement some
 
features known from TTDPatch (http://www.ttdpatch.net/).
 

	
 
Several important non-standard controls:
 

	
 
* Ctrl modifies many commands and makes them more powerful. For example Ctrl
 
  clicking on signals with the build signal tool changes their behaviour, holding
 
  Ctrl while the track build tool is activated changes it to the track removal
 
  tool, and so on. See http://wiki.openttd.org/Hidden_features for a non-
 
  comprehensive list or look at the tooltips.
 
* Ingame console. More information at
 
  http://wiki.openttd.org/index.php/Console
 
* Hovering over a GUI element shows tooltips. This can be changed to right click
 
  via the advanced settings.
 

	
 
5.1) Logging of potentially dangerous actions
 
---- ----------------------------------------
 
OpenTTD is a complex program, and together with NewGRF, it may show a buggy
 
behaviour. But not only bugs in code can cause problems. There are several
 
ways to affect game state possibly resulting in program crash or multiplayer
 
desyncs.
 
Easier way would be to forbid all these unsafe actions, but that would affect
 
game usability for many players. We certainly do not want that.
 
However, we receive bug reports because of this. To reduce time spent with
 
solving these problems, these potentially unsafe actions are logged in
 
the savegame (including crash.sav). Log is stored in crash logs, too.
 

	
 
Information logged:
 

	
 
* Adding / removing / changing order of NewGRFs
 
* Changing NewGRF parameters, loading compatible NewGRF
 
* Changing game mode (scenario editor <-> normal game)
 
* Loading game saved in a different OpenTTD / TTDPatch / Transport Tycoon Deluxe /
 
  original Transport Tycoon version
 
* Running a modified OpenTTD build
 
* Changing settings affecting NewGRF behaviour (non-network-safe settings)
 
* Changing landscape (by cheat)
 
* Triggering NewGRF bugs
 

	
 
No personal information is stored.
 

	
 
You can show the game log by typing 'gamelog' in the console or by running
 
OpenTTD in debug mode.
 

	
 

	
 
6.0) Configuration file
 
---- ------------------
 
The configuration file for OpenTTD (openttd.cfg) is in a simple Windows-like
 
.INI format. It's mostly undocumented. Almost all settings can be changed
 
ingame by using the 'Advanced Settings' window.
 
When you cannot find openttd.cfg you should look in the directories as
 
described in section 4.2. If you do not have an openttd.cfg OpenTTD will
 
create one after closing.
 

	
 

	
 
7.0) Compiling
 
---- ---------
 
Windows:
 
  You need Microsoft Visual Studio .NET. Open the project file
 
  and it should build automatically. In case you want to build with SDL support
 
  you need to add WITH_SDL to the project settings.
 
  PNG (WITH_PNG) and ZLIB (WITH_ZLIB) support is enabled by default. For these
 
  to work you need their development files. For best results, download the
 
  openttd-useful.zip file from http://www.openttd.org/download-openttd-useful
 
  Put the header files into your compiler's include/ directory and the
 
  library (.lib) files into the lib/ directory.
 
  For more help with VS see docs/Readme_Windows_MSVC.txt.
 

	
 
  You can also build it using the Makefile with MSYS/MinGW or Cygwin/MinGW.
 
  Please read the Makefile for more information.
 

	
 
Solaris, FreeBSD, OpenBSD:
 
  Use "gmake", but do a "./configure" before the first build.
 

	
 
Linux/Unix:
 
  OpenTTD can be built with GNU "make". On non-GNU systems it's called "gmake".
 
  However, for the first build one has to do a "./configure" first.
 

	
 
MacOS X:
 
  Use "make" or Xcode (which will then call make for you)
 
  This will give you a binary for your CPU type (PPC/Intel)
 
  However, for the first build one has to do a "./configure" first.
 
  To make a universal binary type "./configure --enabled-universal"
 
  instead of "./configure".
 

	
 
BeOS:
 
  Use "make", but do a "./configure" before the first build.
 

	
 
MorphOS:
 
  Use "make". However, for the first build one has to do a "./configure" first.
 
  Note that you need the MorphOS SDK, latest libnix updates (else C++ parts of
 
  OpenTTD will not build) and the powersdl.library SDK. Optionally libz,
 
  libpng and freetype2 developer files.
 

	
 
OS/2:
 
  A comprehensive GNU build environment is required to build the OS/2 version.
 
  See the docs/Readme_OS2.txt file for more information.
 

	
 
DOS:
 
  A build environment with DJGPP is needed as well as libraries such as
 
  Allegro, zlib and libpng, which all can be downloaded from the DJGPP
 
  website. Compilation is straight forward: use make, but do a "./configure"
 
  before the first build. The build binary will need cwsdpmi.exe to be in
 
  the same directory as the openttd executable. cwsdpmi.exe can be found in
 
  the os/dos subdirectory. If you compile with stripping turned on a binary
 
  will be generated that does not need cwsdpmi.exe by adding the cswdstub.exe
 
  to the created OpenTTD binary.
 

	
 
7.1) Required/optional libraries
 
---- ---------------------------
 
The following libraries are used by OpenTTD for:
 
  - libSDL/liballegro: hardware access (video, sound, mouse)
 
  - zlib: (de)compressing of old (0.3.0-1.0.5) savegames, content downloads,
 
    heightmaps
 
  - liblzo2: (de)compressing of old (pre 0.3.0) savegames
 
  - liblzma: (de)compressing of savegames (1.1.0 and later)
 
  - libpng: making screenshots and loading heightmaps
 
  - libfreetype: loading generic fonts and rendering them
 
  - libfontconfig: searching for fonts, resolving font names to actual fonts
 
  - libicu: handling of right-to-left scripts (e.g. Arabic and Persian) and
 
    natural sorting of strings.
 

	
 
OpenTTD does not require any of the libraries to be present, but without
 
liblzma you cannot open most recent savegames and without zlib you cannot
 
open most older savegames or use the content downloading system.
 
Without libSDL/liballegro on non-Windows and non-MacOS X machines you have
 
no graphical user interface; you would be building a dedicated server.
 

	
 
To recompile the extra graphics needed to play with the original Transport
 
Tycoon Deluxe graphics you need GRFCodec (which includes NFORenum) as well.
 
GRFCodec can be found at: http://www.openttd.org/download-grfcodec
 
The compilation of these extra graphics does generally not happen, unless
 
you remove the graphics file using "make maintainer-clean".
 

	
 
7.2) Supported compilers
 
---- -------------------
 
The following compilers are known to compile OpenTTD:
 
  - Microsoft Visual C++ (MSVC) 2005, 2008 and 2010.
 
    Version 2005 gives bogus warnings about scoping issues.
 
  - GNU Compiler Collection (GCC) 3.3 - 4.7.
 
    Versions 4.1 and earlier give bogus warnings about uninitialised variables.
 
    Versions 4.4 - 4.6 give bogus warnings about freeing non-heap objects.
 
    Versions 4.5 and later give invalid warnings when lto is enabled.
 
  - Intel C++ Compiler (ICC) 12.0.
 

	
 
The following compilers are known not to compile OpenTTD:
 
  - Microsoft Visual C++ (MSVC) 2003 and earlier.
 
  - GNU Compiler Collection (GCC) 3.2 and earlier.
 
    These old versions fail due to OpenTTD's template usage.
 
  - Intel C++ Compiler (ICC) 11.1 and earlier.
 
    Version 10.0 and earlier fail a configure check and fail with recent system
 
        headers.
 
    Version 10.1 fails to compile station_gui.cpp.
 
    Version 11.1 fails with internal error when compiling network.cpp.
 
  - Clang/LLVM 2.8 and earlier.
 
  - (Open) Watcom.
 

	
 
If any of these compilers can compile OpenTTD again, please let us know.
 
Patches to support more compilers are welcome.
 

	
 

	
 
8.0) Translating
 
---- -----------
 
See http://www.openttd.org/development for up-to-date information.
 

	
 
The use of the online Translator service, located at
 
http://translator.openttd.org/, is highly encouraged. For getting an account
 
simply follow the guidelines in the FAQ of the translator website.
 

	
 
If for some reason the website is down for a longer period of time, the
 
information below might be of help.
 

	
 
Please contact the translations manager (http://www.openttd.org/contact)
 
before beginning the translation process! This avoids double work, as
 
someone else may have already started translating to the same language.
 

	
 
8.1) Translation
 
---- -----------
 
So, now that you've notified the development team about your intention to
 
translate (You did, right? Of course you did.) you can pick up english.txt
 
(found in the SVN repository under /src/lang) and translate.
 

	
 
You must change the first two lines of the file appropriately:
 

	
 
##name English-Name-Of-Language
 
##ownname Native-Name-Of-Language
 

	
 
Note: Do not alter the following parts of the file:
 

	
 
    * String identifiers (the first word on each line)
 
    * Parts of the strings which are in curly braces (such as {STRING})
 
    * Lines beginning with ## (such as ##id), other than the first two lines of
 
      the file
 

	
 
8.2) Previewing
 
---- ----------
 
In order to view the translation in the game, you need to compile your language
 
file with the strgen utility. You can download the precompiled strgen from:
 
http://www.openttd.org/download-strgen
 
To compile it yourself just take the normal OpenTTD sources and build that.
 
During the build process the strgen utility will be made.
 

	
 
strgen is a command-line utility. It takes the language filename as parameter.
 
Example:
 

	
 
strgen lang/german.txt
 

	
 
This results in compiling german.txt and produces another file named german.lng.
 
Any missing strings are replaced with the English strings. Note that it looks
 
for english.txt in the lang subdirectory, which is where your language file
 
should also be.
 

	
 
That's all! You should now be able to select the language in the game options.
 

	
 

	
 
9.0) Troubleshooting
 
---- ---------------
 
To see all startup options available to you, start OpenTTD with the
 
"./openttd -h" option. This might help you tweak some of the settings.
 

	
 
If the game is acting strange and you feel adventurous you can try the
 
"-d [[<name>]=[<level>]" flag, where the higher levels will give you more
 
debugging output. The "name" variable can help you to display only some type of
 
debugging messages. This is mostly undocumented so best is to look in the
 
source code file debug.c for the various debugging types. For more information
 
look at http://wiki.openttd.org/index.php/Command_line.
 

	
 
The most frequent problem is missing data files. Please install OpenGFX and
 
possibly OpenSFX and OpenMSX. See section 4.1.1 for more information.
 

	
 
Under certain circumstance, especially on Ubuntu OpenTTD can be extremely slow
 
and/or freeze. See known-bugs.txt for more information and how to solve this
 
problem on your computer.
 

	
 
Under Windows 98 and lower it is impossible to use a dedicated server; it will
 
fail to start. Perhaps this is for the better because those OSes are not known
 
for their stability.
 

	
 
With the added support for font-based text selecting a non-latin language can
 
result in lots of question marks ('?') being shown on screen. Please open your
 
configuration file (openttd.cfg - see Section 4.2 for where to find it)
 
and add a suitable font for the small, medium and / or large font, e.g.:
 
	small_font = "Tahoma"
 
	medium_font = "Tahoma"
 
	large_font = "Tahoma"
 
You should use a font name like "Tahoma" or a path to the desired font.
 

	
 
Any NewGRF file used in a game is stored inside the savegame and will refuse
 
to load if you don't have that NewGRF file available. A list of missing files
 
can be viewed in the NewGRF window accessible from the file load dialogue window.
 

	
 
You can try to obtain the missing files from that NewGRF dialogue or - if they
 
are not available online - you can search manually through our forum's graphics
 
development section (http://www.tt-forums.net/viewforum.php?f=66) or GrfCrawler
 
(http://grfcrawler.tt-forums.net/). Put the NewGRF files in OpenTTD's newgrf folder
 
(see section 4.2 "OpenTTD directories") and rescan the list of available NewGRFs.
 
Once you have all missing files, you are set to go.
 

	
 

	
 
X.X) Credits
 
---- -------
 
The OpenTTD team (in alphabetical order):
 
  Albert Hofkamp (Alberth)        - GUI expert
 
  Jean-François Claeys (Belugas)  - GUI, newindustries and more
 
  Matthijs Kooijman (blathijs)    - Pathfinder-guru, pool rework
 
  Christoph Elsenhans (frosch)    - General coding
 
  Loïc Guilloux (glx)             - Windows Expert
 
  Michael Lutz (michi_cc)         - Path based signals
 
  Owen Rudge (orudge)             - Forum host, OS/2 port
 
  Peter Nelson (peter1138)        - Spiritual descendant from newGRF gods
 
  Ingo von Borstel (planetmaker)  - Support
 
  Remko Bijker (Rubidium)         - Lead coder and way more
 
  Zdeněk Sojka (SmatZ)            - Bug finder and fixer
 
  José Soler (Terkhen)            - General coding
 
  Thijs Marinussen (Yexo)         - AI Framework
 

	
 
Inactive Developers:
 
  Bjarni Corfitzen (Bjarni)       - MacOSX port, coder and vehicles
 
  Victor Fischer (Celestar)       - Programming everywhere you need him to
 
  Tamás Faragó (Darkvater)        - Ex-Lead coder
 
  Jaroslav Mazanec (KUDr)         - YAPG (Yet Another Pathfinder God) ;)
 
  Jonathan Coome (Maedhros)       - High priest of the NewGRF Temple
 
  Attila Bán (MiHaMiX)            - WebTranslator 1 and 2
 
  Christoph Mallon (Tron)         - Programmer, code correctness police
 

	
 
Retired Developers:
 
  Ludvig Strigeus (ludde)         - OpenTTD author, main coder (0.1 - 0.3.3)
 
  Serge Paquet (vurlix)           - Assistant project manager, coder (0.1 - 0.3.3)
 
  Dominik Scherer (dominik81)     - Lead programmer, GUI expert (0.3.0 - 0.3.6)
 
  Benedikt Brüggemeier (skidd13)  - Bug fixer and code reworker
 
  Patric Stout (TrueBrain)        - Programmer (0.3 - pre0.7), sys op (active)
 

	
 
Thanks to:
 
  Josef Drexler                   - For his great work on TTDPatch.
 
  Marcin Grzegorczyk              - For his TTDPatch work and documentation of Transport Tycoon Deluxe internals and graphics (signals and track foundations)
 
  Petr Baudiš (pasky)             - Many patches, newgrf support, etc.
 
  Simon Sasburg (HackyKid)        - For the many bugfixes he has blessed us with
 
  Stefan Meißner (sign_de)        - For his work on the console
 
  Mike Ragsdale                   - OpenTTD installer
 
  Cian Duffy (MYOB)               - BeOS port / manual writing
 
  Christian Rosentreter (tokai)   - MorphOS / AmigaOS port
 
  Richard Kempton (RichK67)       - Additional airports, initial TGP implementation
 
  Alberto Demichelis              - Squirrel scripting language
 
  L. Peter Deutsch                - MD5 implementation
 
  Michael Blunck                  - For revolutionizing TTD with awesome graphics
 
  George                          - Canal graphics
 
  Andrew Parkhouse (andythenorth) - River graphics
 
  David Dallaston (Pikka)         - Tram tracks
 
  All Translators                 - For their support to make OpenTTD a truly international game
 
  Bug Reporters                   - Thanks for all bug reports
 
  Chris Sawyer                    - For an amazing game!
0 comments (0 inline, 0 general)