News:

Simutrans.com Portal
Our Simutrans site. You can find everything about Simutrans from here.

Recent posts

#91
Patches & Projects / Re: Script API: return planned...
Last post by Andarix - August 16, 2026, 07:00:15 AM
The script AI currently cannot build bridges over flat obstacles.

Pathfinding is currently the biggest problem for me.

However, I cannot say which version was used to build the route. It is currently running on r12146.
#92
Crashes when executing test test_way_planner_terraform_matches_executor

#7 grund_t::neuen_weg_bauen() at /home/ceeac/code/simu/simusvn/src/simutrans/ground/grund.cc:1,974
#8 way_builder_t::build_road() at /home/ceeac/code/simu/simusvn/src/simutrans/builder/wegbauer.cc:2,827
#9 way_builder_t::build() at /home/ceeac/code/simu/simusvn/src/simutrans/builder/wegbauer.cc:3,250
#10 tool_build_way_t::do_work() at /home/ceeac/code/simu/simusvn/src/simutrans/tool/simtool.cc:2,927
#11 two_click_tool_t::work() at /home/ceeac/code/simu/simusvn/src/simutrans/tool/simmenu.cc:1,419
#12 karte_t::call_work_api() at /home/ceeac/code/simu/simusvn/src/simutrans/world/simworld.cc:5,838
#13 script_api::param<script_api::call_tool_work>::push() at /home/ceeac/code/simu/simusvn/src/simutrans/script/api/api_command.cc:291
#14 script_api::call_std_function_t<script_api::call_tool_work(player_t*, koord3d, koord3d, way_desc_t const*, bool, bool)>::call_function_helper<0ul, 1ul, 2ul, 3ul, 4ul>() at /home/ceeac/code/simu/simusvn/src/simutrans/script/api_function.h:393
#15 script_api::call_std_function_t<script_api::call_tool_work(player_t*, koord3d, koord3d, way_desc_t const*, bool, bool)>::call_function() at /home/ceeac/code/simu/simusvn/src/simutrans/script/api_function.h:401
#16 script_api::embed_call_t<script_api::call_tool_work (*)(player_t*, koord3d, koord3d, way_desc_t const*, bool, bool)>::call_function() at /home/ceeac/code/simu/simusvn/src/simutrans/script/api_function.h:463
#17 command_build_way() at /home/ceeac/code/simu/simusvn/src/simutrans/script/api/api_command.cc:368
#18 SQVM::CallNative() at /home/ceeac/code/simu/simusvn/src/squirrel/squirrel/sqvm.cc:1,226
#19 SQVM::Execute() at /home/ceeac/code/simu/simusvn/src/squirrel/squirrel/sqvm.cc:788
#20 sq_wakeupvm() at /home/ceeac/code/simu/simusvn/src/squirrel/squirrel/sqapi.cc:1,242
#93
I've just downloaded the latest nightly build and I'm so grateful that my saved game is working properly again.

Thanks so much. :)

I can now enjoy Simutrans and carry on with my passion for creativity. :)

Again thanks so much.  :) 
#94
Randomness Lounge / Re: Rust implements an LLM (AI...
Last post by isidoro - August 16, 2026, 01:29:22 AM
Since this is a "randomness lounge", I guess one can digress...  If not, sorry.

Recently, I have read the book "If anyone builds it, everyone dies" (Eliezer Yudkowsky and Nate Soares), which talks about what have AI models done in the last years and why we should just turn AI off at once and forever.  But you get a glimpse of amazing things they have already done.

Perhaps a little dated (pre LLM), but also very, very interesting is "Artificial Intelligence. A guide for thinking humans" (Melanie Mitchell).

And, finally, since I see that Víctor speaks Spanish, I can't refrain from talking about "Platón contra las máquinas" (Plato vs. the machines, Marcos Alonso).  A genuine jewel, not only because it tries to deal with the philosophical implications of AI, but also because he's against Plato, the worst philosopher of all times from my point of view.
#95
Patches & Projects / Re: Modernisation of the Squir...
Last post by victor_18993 - August 15, 2026, 10:21:39 PM
Squirrel 3.2 migration — progress and updated roadmap
The pre-3.2 preparation has progressed faster than expected, so I can bring the roadmap forward a little.
The preparation stack is now integrated in trunk as r12158–r12162. This includes the generated API baseline, the refreshed Squirrel modification inventory, the repaired update workflow, the small upstream error-message correction, and the VM regression tests.
The final pre-migration baseline is also frozen: the Script API, customised VM behaviour, and the real
sqai /
sqai_rail consumers now have independent reference points that can be compared against the 3.2 result.
The actual Squirrel 3.2 runtime migration has now started in a separate development branch, based on r12162. It is not being developed directly in trunk, so intermediate migration errors or incomplete states should not affect the official builds while this work is in progress.
The upstream delta turned out to be relatively small and well bounded. The main areas requiring careful reconciliation are the
sq_getinstanceup API change, the new
bindenv compiler/VM behaviour, a string hashing change, and a few remaining library/runtime changes. Several Simutrans-specific VM areas we were concerned about are untouched by upstream 3.2, which has reduced the expected migration work.
Updated tentative roadmap
  • 16–17 August: runtime/API migration cuts (
    sq_getinstanceup, compiler/VM
    bindenv, remaining upstream reconciliation)
  • 17–18 August: Script API and VM regression comparison
  • 18–19 August:
    sqai /
    sqai_rail consumer comparison and final pre-integration freeze
  • around 19–20 August: integration candidate, if all regression gates remain clean
  • afterwards: nightly/stabilisation period and fixes for any regressions reported by testers
These are still target windows rather than promises. If a migration cut exposes a real semantic regression, I will prefer to stop and investigate it rather than keep the date.
So far, however, the work has been less complicated than the original conservative schedule assumed, and the Squirrel 3.2 migration is now actively underway.
#96
Bug Reports / Re: r11216 - moving objects
Last post by prissi - August 15, 2026, 07:50:53 PM
Exceeding 250 on the next tile, they refuse to move to the next tile, so it should not crash.
#97
Patches & Projects / Re: Modernisation of the Squir...
Last post by victor_18993 - August 15, 2026, 05:31:42 PM
Squirrel Script API modernisation — current roadmap
A short roadmap update, now that the preparation work has progressed enough to give a clearer picture of the next steps.
The dates below are target windows, not fixed deadlines. If a regression, compatibility issue or unclear contract appears, I would rather stop and investigate it than force the migration to fit a date.
15–16 August — bundled Script AI fixes
We are currently closing two pre-existing consumer-side issues found while establishing the pre-3.2 baseline:
  • sqai: failure handling when the initial convoy cannot be created.
  • sqai_rail: use of the currently undefined
    debug.messages flag.
These are being handled as independent fixes, before the runtime migration, so they do not become mixed with Squirrel 3.2 compatibility work.
16–18 August — pre-migration tooling and regression baseline
The next target is to finish and integrate the preparation work that will be used to validate the runtime update:
  • generated Script API signature baseline;
  • refreshed
    squirrel_modifications.diff;
  • repaired Squirrel update workflow;
  • targeted regression tests for Simutrans-specific VM behaviour;
  • removal of a path-length dependency found in one of the new arity tests.
The goal is to have these changes reviewable independently from the actual Squirrel update.
18–20 August — final pre-3.2 consumer baseline
sqai and
sqai_rail are being used as real consumers of the Script API in addition to the normal automated tests.
The remaining baseline work is focused on behaviour such as:
  • route/build-cost calculations;
  • sleep() suspend/resume behaviour;
  • generator yield/resume behaviour;
  • opcode accounting;
  • save/load compatibility.
Once this is complete, we will freeze a final pre-3.2 reference consisting of API signatures, VM regressions and real consumer behaviour.
Around 20–24 August — Squirrel 3.2 migration
If the pre-migration gates are clean, the next major step will be the actual update from the current Squirrel 3.1.1-based snapshot to Squirrel 3.2.
This will not be a blind source replacement. Simutrans has several local VM customisations that need to be reconciled deliberately, including:
  • operation-budget handling;
  • suspend/resume behaviour;
  • sq_call /
    sq_wakeupvm;
  • the native
    sq_tailcall() decision;
  • error and arity diagnostics;
  • compiler-related changes;
  • the local
    _OP_LOADFLOAT implementation.
After the import, the same pre-3.2 API, VM and consumer baselines will be rerun against 3.2.
Late August — stabilisation and follow-up
Any issue found during the migration will be classified separately as:
  • an upstream Squirrel 3.2 behavioural change;
  • a regression introduced by our integration;
  • or a pre-existing Simutrans consumer/API issue.
Only the changes required for a safe migration will be included in this phase. Broader cleanup — for example further standardisation between
sqai and
sqai_rail — should remain a separate follow-up project rather than expanding the scope of the runtime update.
So the current sequence is essentially:
consumer fixes → preparation/tooling → final pre-3.2 baseline → Squirrel 3.2 → stabilisationIf everything continues to test cleanly, the aim is to have the Squirrel 3.2 work in active integration during the second half of August, but the validation gates remain more important than the dates.
#98
Pak192.Comic / Re: New cityhouses
Last post by Václav - August 15, 2026, 05:12:04 PM
Next two sets of cityhouses.

Now, with green larger balconies - and with 5 and 6 floors. But base shape and roof are the same. Only some flowerbeds are replaced with sidewalk ocupied by benches.
#99
Extension Requests / Re: change icon size
Last post by prissi - August 15, 2026, 03:38:33 PM
The increase of icon usually also require large nottun and arrow which is why is was moved to the gui themes, so a user can modify it on the fly
#100
Patches & Projects / Re: Modernisation of the Squir...
Last post by Andarix - August 15, 2026, 03:29:36 PM
For many functions, the option to display notifications is available at the beginning.

industry_connection_planner.nut#L44

The current method for calculating construction and maintenance costs is actually quite good. This is evident from the fact that sqai_rail relatively rarely goes bankrupt (pak64, pak64.german).

It runs into difficulties when routes are too long and profits are too low such as in pak128, where industrial profits are very low.

Whether a route is built depends on more factors than just construction costs.

And once the route is known, construction costs can be determined based on the object properties (which, in my view, are complete here).

However, the credit refunds vary; in some cases, a full credit is returned, while in others, one-hundredth of a credit is returned.