News:

SimuTranslator
Make Simutrans speak your language.

Development update Easter 2025

Started by jamespetts, April 21, 2025, 03:15:16 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

jamespetts

Long time players of Simutrans-Extended will be aware that I have not done much in the way of development work lately. In short, this has been because of a combination of matters, but principally a combination of very extensive and disruptive building works at home (which ran a very long way over schedule) and the need for the next work that I do on Simutrans-Extended to be to complete the implementation of the planned feature set for the 15.x branch of the code, which is a very large amount of work and requires a very long period of uninterrupted, intense concentration, spread over many weeks. That was not realistically possible while building works remained ongoing. Other factors include being busier in my professional practice than in former times and having taken up the also time consuming hobby of railway modelling in circa 2018, which competes with Simutrans for my time.

However, the building works have recently been completed, I am hoping to be able to restart work on Simutrans-Extended this year. The latter two factors mentioned in the preceding paragraph are likely to remain, but I should be able to undertake some development work nonetheless. One of the things that I will need to do is update the version of Visual Studio that I use: I am currently using the rather outdated Visual Studio 2019. One thing that I am keen to try is seeing whether modern AI features may make coding more efficient. Although I have interacted regularly with LLMs in a casual context (which shows them to be less impressive than they may first appear, but good for generating humour), I have yet to attempt to leverage it for coding assistance. If it turns out to be helpful, it may assist the difficult work that lies ahead in finalising the 15.x feature set. It may also improve the efficiency of bug fixing, although I do not know at this stage how helpful that it will really be.

The priority at this stage must be to complete the already planned feature set for the 15.x branch. Many of the features are already implemented, albeit much of the most difficult feature, the consist recombination, has yet to be done. This is the priority because it is necessary for the purposes of balancing: the game currently only has a relatively crude interim balance, rather than the intended balance based on researched historical data.

I am aware that Ranran had issued some pull requests a few months ago, which he subsequently closed, presumably because I had not had time to look into them. I accepted the bug fix request, but was not able to look seriously at the others at the time. One difficulty is that dealing with third party contributions not directly aimed at progressing the outstanding work on the 15.x branch makes achieving the goal of completing the work on the 15.x branch more difficult because it means that additional Simutrans-Extended development time has to be taken in reviewing that code, and, critically, checking it carefully for compatibility with the 15.x branch, which more than doubles the normal time for review.

Third party code contributions are, in general, very much appreciated and have always been a very important part of the project, so it is unfortunate that the current point in the development makes it more difficult than would be ideal to accept them at present. That is less so of contributions to the pakset, which are generally less affected by the need for forwards compatibility than the code. I am grateful to Rollmaterial in particular for his recent pakset contributions, but also to everyone who has contributed to pakset or code.

In any event, I hope that everyone is having a lovely Easter. I see that there are still some people playing on the Bridgewater-Brunel server - I hope that their transport networks are growing splendidly.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

prissi

Don't expect help from LLM to help to find bugs. At least not in code as complex as Simutrans. They can spot suspicious actions in a function but that's about it (with their 10000 or whatever token limit).

Coding standard structures is a little less typing, but debugging ios still a job for humans, I am afraid.

So enjoy your Easter break.

209CATrus

Daamn, James, it's good that you have, well, ordinary real life problems, and didn't drop the development. I sincerely hope that your renovation issues will resolve soon.

I was pretty saddened by the fact that Ranran pulled back his PRs. Speaking of v15, i recall Ranran was pretty involved in that too, so i suggest that you talk to him and perhaps give him the authority to accept at least his own PRs. Personally, i trust him, and given how he seemingly gets depressed over long PR acceptance times, works in short bursts, etc. you should let him drive the development in your absence. Your concerns regarding the v15 development possibly bogging down due to PRs do seem solid to some extent, but i got a few points:

  • Ranran always delivers. Never looked into his code in detail, but from player perspective, but whatever he delivers works pretty well (or gets fixed fast)
  • Ranran looks like the type to start rip and tear if any modification makes the game less stable or worse
  • By the power of versioning, you can rollback on questionable PRs
  • Alternatively, you can switch the distributed version (aka the server one) to Ranran's fork until you can fully pick up on development, so the Extended keeps getting improved and Ranran gets his feedback

Basically, Ranran is, perhaps, the first candidate to replace you as the Extended developer, if real life matters get worse, God forbid. Well, aside from moments when Ranran gets crazy mad

The v15 might be coming, but PR makers are freezing to death