{"id":2511,"date":"2024-05-05T11:45:25","date_gmt":"2024-05-05T16:45:25","guid":{"rendered":"https:\/\/blog.simutrans.com\/?p=2511"},"modified":"2024-05-05T11:45:25","modified_gmt":"2024-05-05T16:45:25","slug":"simutrans-124-released","status":"publish","type":"post","link":"https:\/\/blog.simutrans.com\/?p=2511","title":{"rendered":"Simutrans 124 Released"},"content":{"rendered":"<p>The long awaited Simutrans 124 is finally here! This version comes with a lot of changes, although the most visible ones are the improved support for anti-alising of fonts and some reworked windows. Under the hood, many less visible changes were made to allow this to be the first stable Android release &#8211; which means you will be able to play online now on Android too!<\/p>\n<p><img src=https:\/\/i.imgur.com\/j9V8Pig.png \/><\/p>\n<h2>Download Simutrans 124<\/h2>\n<ul>\n<li><a href=\"https:\/\/forum.simutrans.com\/index.php\/topic,22946.0.html\">Download on the Simutrans Forums<\/a> (From SourceForge)<\/li>\n<li><a href=\"https:\/\/store.steampowered.com\/app\/434520\/Simutrans\/\">Download on Steam<\/a>. For Steam players, please read the <a href=\"https:\/\/store.steampowered.com\/news\/app\/434520\/view\/4181105931131998021\">Steam announcement<\/a>.<\/li>\n<\/ul>\n<h2>Highlights of this version<\/h2>\n<ul>\n<li> Improved anti-aliasing of fonts, now using TrueType fonts by default.\n<li> Reworked main menu and option windows.\n<li> Reworked list windows, they are now checkered lists easier to read.\n<li> The minimap now changes if you are in underground mode.\n<li> The new directory structure allows the players to install paksets if they don&#8217;t have admin rights.\n<li> Fixed loading of heightmaps.\n<\/ul>\n<h2>Paksets updated since Simutrans 123<\/h2>\n<ul>\n<li> pak64 124.0\n<li> pak128 2.9\n<li> pak192.comic 0.71\n<li> pak64.german 124.0.0.2\n<li> pak128.german 2.2\n<li> pak64.nippon 0.62\n<\/ul>\n<h2>Full changelog<\/h2>\n<p>Here&#8217;s the full list of changes since the last version.<\/p>\n<p><b>Added<\/b><\/p>\n<ul>\n<li> pak64.german 0.124.0.0.1 uses 40&#215;40 buttons and therefore the theme is necessary and should not be missing\n<li> labelupdate for all windows were it makes sense\n<li> Checkered list windows\n<li> obj_xxx_details in translation will display some more details on an obj, especially vehciles\n<li> traffic lights remove themselves if only a curve or a single tile is below them\n<li> fontconfig for linux font selection\n<li> Aliasing fonts\n<li> Rework of banner and options windows. Added button to play tutorial and load last save to banner\n<li> rotate house tool will also switch railroad switches (eyecandy only)\n<li> new parameter in simuconf.tab cityroad_speeds for a timeline (year,new_speed) of speed limits of way with pavement\n<li> rotate also rotates the order of vehicles on a tile to avoid overlapping\n<li> Sell all convois in a depot with Ctrl + Sell button\n<li> Signals can be replaced by overbuilding them using left-click\n<li> missing script ai text\n<li> menubar can be dragged to each corner\n<li> Display artist credits for music\n<li> function find backend specific default TTF font dr_get_system_font()\n<li> Theme colour parameter for highlighted objects (gui_color_object_highlight)\n<li> scroll to selected font in load-font window\n<li> theme parameter gui_color_image_transparency to set transparency color for icons (Yona-TYT)\n<li> update vehicle history frame with search string\n<li> .pak files are now also searched for in subdirectories of pakset\n<li> tooltip warnign when try to cross way without suitable crossing or curves on runways\n<li> Loading time display in depot, convoi info and vehicle timeline\n<li> MSI installer for SDL2 MSVC builds\n<li> single toolbar mode (top and centered) primarily for Android and tablets\n<li> Try to detect base_dir when installed on linux\n<li> new tool (and button in signal dialog) for removing signals only\n<li> map view can be changed with any general tool by dragging the pointer above a threshold\n<\/ul>\n<p><b>Changed<\/b><\/p>\n<ul>\n<li> High resolution icon for Android\n<li> all list react immediately on editing the filter name\n<li> removed a lot of table to speed up convoi list and added route bar\n<li> right click\/control+left -> goto pos, left click -> open window\n<li> Again orange as default unowned color to have more contrast\n<li> Decouple label style and show option\n<li> enforce a minimum width of 5 digits for number edit fields\n<li> GUI numberinputs stretch horizontally to fill their space\n<li> Players can&#8217;t build over public ways if there is another player halt on them\n<li> Slightly improved goods window\n<li> Almost impossible to have a language selected with a non-matching font\n<li> rename texttype to correct name\n<li> save button and save window single translate\n<li> button text to exists translate (equal to the window title of the dialog)\n<li> state of railroad switches will be saved between games\n<li> Delete buttons are always shown when saving\/loading. Config show_delete_buttons is deprecated\n<li> Increased default vertical spacing of loadsave items from 0 to 1 (so it doesn&#8217;t look super crammed)\n<li> use internal server list name for backup\n<li> use 5bit granularity for alpha-blending sometimes\n<li> do not change debug tab in scenario window if debug text is empty\n<li> issue warning when old object is overlaid by new one\n<li> click on ticker jumps to coordinate of message under cursor (or opens message window)\n<li> send doubled-object warning as message, click on the message shows the full warning\n<li> only warn about doubled objects with different checksums\n<li> a go-to-coordinate action will change view to underground\/normal view if target is invisible\n<li> messages, speed records, ticker use 3d coordinates\n<li> tests use command_x.set_slope\n<li> Display number of station tiles in parenthesis in convoi details\n<li> update convoi list name filter on enter to avoid longer delays\n<li> reflect underground view settings in minimap windows\n<li> Look for fonts in subdirectories recursively (up to 5 levels)\n<li> pedestrians spawned on more tiles, more distributed over tiles, now client wise settings for server games\n<li> Ignore pedestrians for deletion tool\n<li> only show connection of top factory window in minimap\n<li> use TAB to change between tabs\n<li> 6% speed gain to to a freelist with integrated iterator\n<li> Always allow &#8216;-until&#8217; command line parameter\n<li> MacOS bundle is now self-contained\n<li> removed LEFT_REPEAT message hack, as this destroys left dragging for fps<10\n\n\n<li> discard all but the last drag event in a single call to check_events(() or the calac_route maz be called twice during mark_tiles\n<li> process events in screen refresh and queue them for execution for more responsiveness on weak devices\u201d\n<li> reset frame time when zoom in\n<li> file location in the same directory\n<li> pakset downloader in separate file\n<li> Divide minimap &#8216;Selections&#8217; button into two (Show networks and Selections)\n<li> Use XDG_DATA_HOME for user dir on linux (only if it has been set)\n<li> allow dragging scrollpanes instead using scrollbars\n<li> only load goods for a destination into a single convoi. This avoids loading in parrallel of slow loading convois\n<li> test connect timeout now 2 seconds (for windows, please adapt and test on Linux\/Mac) for query server status\n<\/ul>\n<p><b>Fixed<\/b><\/p>\n<ul>\n<li> generating header script works under windows again\n<li> all again to connect from vertical cliff to monorailboden\n<li> vehiclelist ignored name filter for waytypes selection\n<li> vehicle list did not sort by capacity and was not properly restored after saving\n<li> hide wayremover, wayobjremover and signalremove icons when those ways are not available\n<li> labellist positions need to be 3D\n<li> derive ground info from obj info so long waynames work again\n<li> a bridge and tunnel has just a default street => do not show info\n<li> extra margins of objects inside a marginless container fixed => all dialogues open in the same size again\n<li> if a schedule open not of plane 1 => crash\n<li> Could connect way to side of sloped elevated way\n<li> Game lags when paused, especially on big maps\n<li> Withdraw Line button did not indicate withdraw status correctly\n<li> OS window sometimes does not close when modal dialogue is open\n<li> makeobj MSVC builds\n<li> show waiting bars even without labels\n<li> banner window does not close on window close!\n<li> outside was not redrawn when windows minimized\n<li> wrong function name\n<li> default char for cyr.bdf and revision detection fpor MSVC\n<li> start also with a wrong unloadable font specified\n<li> Error when using &#8216;makeobj dump&#8217;\n<li> removed unblocking sockets for linux\n<li> distribute.sh was not working for some time on linux with default template\n<li> Height conversion mode ignored if selected after heightmap\n<li> Wrong speed of bridge ramps in some cases\n<li> Wrong length for bridges in build preview tooltip\n<li> pakset.nsh\n<li> built nsis again for github nightly\n<li> Extract .cab and .tar.gz correctly\n<li> (THLeaderH) crossings upgrade in ways are upgraded\n<li> crash when loading vehiles as cnv==1 is used as flag during loading\n<li> drawing order of private car\n<li> better calculation of dsip_lane also with overtaking cars and road convois\n<li> Wrong draw order of road convois turning E->SE or NW->N\n<li> airplane convois are somewhat working. Need through stops better for this\n<li> Makeobj ignored switch images for tracks with no seasons\n<li> Graphical glitches related to translucent player colours\n<li> Wrong brightness of colours in screenshots\n<li> Label colours when label is unowned\n<li> swallow all extra finger events to have better zoom and three finger scrolling\n<li> Debug assertion failure when starting a new scenario\n<li> Loading window no longer closes all other windows and does not trigger other loading tools in the toolbar.\n<li> Missing translation of &#8216;Depot&#8217; (dataobj\/schedule.cc:590)\n<li> Clamp env_t::max_acceleration correctly\n<li> Cannot load sounds from pakset if pakset is in user directory\n<li> ticker messages &#8211; use one method to insert in list\n<li> replace %% in translated strings by %, but only for those strings where the base string does not contain format specifiers\n<li> Memory label cut off when increasing map size in New World dialogue\n<li> Broken compat.tab parsing\n<li> Crash when trying to load TTF font without family or style name\n<li> Crash when allocation of buffer for node name fails\n<li> Crash when dumping pak file containing a node with invalid size\n<li> Crash when reading pak nodes with malformed or unknown type\n<li> Crash when using &#8216;makeobj dump&#8217; on corrupted pak files\n<li> Crash when reading non-null-terminated object names from pak files\n<li> Use-after-free when listing node names of pak files\n<li> crash when such a pedestrian was created near map border\n<li> do not generate pedestrians on roads without any connected roads\n<li> Crash when displaying alpha images near window border\n<li> builing vehicles from the future is not allowed\n<li> problems with transparent pixels\n<li> crash in build-station tool without cursor\n<li> get_available_* returns only descs of buildable objects\n<li> do not draw on the window boundary\n<li> correctly check for character 30\n<li> improved width calculation for numberinput elements\n<li> cannot build double slopes if the pakset does not support it\n<li> try to repair broken format strings (replace % with %% for broken specifiers)\n<li> use double percent sign in translatable strings\n<li> format string checks\n<li> fix\/remove more RGB555 stuff\n<li> crash if desc == NULL (may come from scripts)\n<li> Missing credits of midi tracks\n<li> Credits of midi tracks\n<li> correctly handle suspended calls with ct == FORCE\n<li> crash in scripted tools\n<li> correctly reset tool-drag event if scenario check failed\n<li> search_folder_t::search_path if d_type is not supported (koroal)\n<li> invert schedule function not working properly (koroal)\n<li> window position not being saved in some cases (koroal)\n<li> factory_x::get_tile_list returns list of tile_x&#8217;s (Yona-TYT)\n<li> remove preview image of tools if moved on a tile that is forbidden by scenario rules\n<li> memory leak\n<li> -addons\/-noaddons setting saved in settings.xml\n<li> do not reset full underground mode when zoom with mouse wheel\n<li> apply the correct coordinates when processing links in scenario window\n<li> Vehicle list name filter not saved due to typo\n<li> initialize restart-variable (Yona-TYT)\n<li> properly clear random-mode flag\n<li> do not check for local execution, shut down network on quit\n<li> size calculation of depot dialog to properly show vehicle list (Roboron)\n<li> loading of scenarios for paksets from addons (Yona-TYT)\n<li> (after ranran) loading of legacy translation files\n<li> schedule positions when rotating non-square maps\n<li> clear schedule-editing flag if check fails\n<li> trivial case in haltestelle_t::is_connected\n<li> crash with invalid defaultparam\n<li> Cannot build trees on clouds\n<li> world.generate_goods did not work correctly for mail\/freight\n<li> Uninitialized read in gui_image_t::get_min_size when COLOUR_DEPTH=0\n<li> Adapt Load Script dialog to new directory structure\n<li> restore all open convoi and halt windows\n<li> quit does not quit the server\n<li> Addons are loaded by default (contrary to documentation)\n<li> starting a scenario in now a command to do this in the step\n<li> call the quit tool from dialogues for quitting\n<li> Undefined Behaviour when converting char * to utf8 *&#038;\n<li> Crash when supplying invalid default_param to tool_plant_groundobj_t\n<li> Crash when supplying invalid default_param to tool_build_station_t\n<li> Crash when supplying null default_param to tool_build_station_t\n<li> implement constructor in c++ instead in squirrel\n<li> correctly propagate error when pushing large arrays\n<li> Crash when supplying invalid default_param to tool_plant_tree_t\n<li> Speedbonus not being applied to air (reverts partly r9208)\n<li> use translated error message instead of raw string\n<li> setslope for scripts on server games on single-height paks\n<li> accept sym-links as directory\n<li> dragging of tools with ctrl, propagate flags through defered calls\n<li> scrolling with mouse wheel in droplists opened above combobox\n<li> copy way-flags when replacing ground tiles\n<li> Cannot load addon scenarios if there are no addon objects\n<li> Use-after-free in makeobj when reading malformed dat file\n<li> crash when trying to save to unreachable location\n<li> check for NULL pointers\n<li> Paks loaded from addon subdirectory even if -noaddons is specified\n<li> Signals not shown when minimap is set to show tracks\n<li> Graphical glitch when ticker disappears while background is visible\n<li> Position of elements in &#8216;Sort by&#8217; depot combobox\n<li> PVkraftwerk should produce again power\n<li> Disable font size button for bitmaps fonts\n<li> do not updtae crossing speed with new way\n<li> when deleting stuff from tiles with two or more objects\n<li> Don&#8217;t double sync_step citycars\n<li> focus with comboboxes\n<li> pedestrians agon walking diagonal\n<li> also forbid pedestrian entry on tiles with more than 240 objects\n<li> Do not generate too many pedestrians per ground\n<li> pedestrians try to hop to full ground\n<li> beaches were not properly recognised for environmental sounds\n<li> Curl pakset download for built-in installer\n<li> pakset downloader not listing any paksets\n<li> crash due to calc_route called twice when dragging way tools at low fps\n<li> Obey control lock tool in more all situations where the control key would work\n<li> accidently swapped single toolbar option defualt for non-android\n<li> Pakset selector failed to load a single pakset with no addons\n<li> Network filter comboboxes take preference capturing the mouse wheel over the minimap\n<li> control+drag of ways\n<li> append halt only once\n<li> show no tooltips on toolbars if cursor is on title bar\n<li> do not swallow keys and scrollwheel events in scrollpanes\n<li> windows were topped before the underlying window got their removal message => topped window function not working as expecting i.e. schedule display of convois\n<li> Disallow merging with public stop (or any stop) to take over ownership\n<li> heavy_rotate_saves does not delete old saves correctly\n<li> Cannot load PPM heightmaps\n<li> Int overflow for large power networks in minimap\n<li> missing string and no spaces at the end of translator objects\n<li> switch on and off network overlay when line is active\n<li> minimap background rendiering mode is not reset but selecting other options\n<li> crossing logic did not correctly obeyed speed limits\n<li> After loading a save, the color of the stop list title\n<li> display_snapshot uses wrong area if area is offset horizontally\n<li> scaling window with GDI\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The long awaited Simutrans 124 is finally here! This version comes with a lot of changes, although the most visible ones are the improved support for anti-alising of fonts and some reworked windows. Under the hood, many less visible changes were made to allow this to be the first stable Android release &#8211; which means [&hellip;]<\/p>\n","protected":false},"author":16,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[4,5],"tags":[],"class_list":["post-2511","post","type-post","status-publish","format-standard","hentry","category-announcements","category-development-and-releases"],"_links":{"self":[{"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=\/wp\/v2\/posts\/2511","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2511"}],"version-history":[{"count":0,"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=\/wp\/v2\/posts\/2511\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2511"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2511"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.simutrans.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2511"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}