OpenTTD

OpenTTD

 This topic has been pinned, so it's probably important
kamnet 1 Apr, 2021 @ 12:35pm
STEAM TOOLS INTEGRATION (Updated 6 February 2024)
As this appears to be one of the most-asked questions currently, since OpenTTD announced its arrival on Steam, we are creating a pinned post to update users on the status of adding Steam tools and workshop features to OpenTTD.

UPDATE ON 6 FEBRUARY 2023, After a few years of careful consideration and work, the upcoming OpenTTD 14.0 release (expected 1 April 2024) will provide integration of select social tools for Steam, GOG and Discord. Due to some limitations, only one service can be active at any given time. For more technical details, please read the PR at https://github.com/OpenTTD/OpenTTD/pull/11628

AS OF LAUCH DATE 1 APRIL 2021, OpenTTD does not yet offer any integration with Steam tools or workshop, and currently has no firm plans to do so.

OpenTTD is an Open Source game, available free of charge (and without DRM etc), build and run by volunteers (contributors). Nobody is paying contributors anything to do the things they love. All contributors develop for OpenTTD in their free time, and OpenTTD fully depends on those contributors to make the game grow.

The primary motivation for adding OpenTTD to Steam was to make the game more widely available through popular platforms. Distribution via Steam has been one of the more sought-after requests from our players. The main obstacle to this had been the tools and processes that OpenTTD had previously set up, and lack of time and capability by contributors to make the necessary changes. In the last few years, changes to the tools and processes needed to be implemented, and adding Steam to our supported platforms became a realistic goal.

With that said, this also means our journey to integrate better with Steam has just begun, and there already has been talk about how to integrate more. But, this is not an easy task, and will take some time. The one thing we do not want to happen is for a Steam version to be developed which is too fragmented to become sustainable, or for us to end up with a version we cannot continue to support if a contributor leaves.

As such, we release OpenTTD on steam currently without integration, and will slowly work on a better tomorrow. For those who wish to help us with this endeavor, feel free to contribute patches and work with the development team to implement features you would like to see in a future release of the game.
Last edited by kamnet; 6 Feb, 2024 @ 1:06am
< >
Showing 1-15 of 136 comments
luckz 31 Jan, 2021 @ 9:04pm 
Steam Achievements
Will you add Steam features, like the obvious, meaning code & compile specifically for Steam, or merely upload the game as it's always been?
orudge 1 Feb, 2021 @ 1:21am 
Initially at least, OpenTTD will remain the same game you can obtain on our web site. There are licensing complications when it comes to integrating Steam more closely. It may be there are potential workarounds for this (and potentially allowing integration with other game services), but this would be a medium-term project at least.
Born Acorn 1 Feb, 2021 @ 3:46am 
Licensing and legal wrangling aside, I think the most powerful "Steam feature" would be cloud saves, if that feature is available. I think my main OpenTTD regret over the any years since OpenTTD first released is losing some really good games to reformats and changing computers.

But as orudge says SDK integration is off the table for the time being.
orudge 1 Feb, 2021 @ 4:05am 
Cloud saves are a feature that could be enabled, I believe, quite easily. My own main concern there is that it would potentially 'take over' your Documents\OpenTTD folder, unless we were to have some other default folder for Steam. Currently I have an OpenTTD folder on my main PC which is synced to OneDrive, and an OpenTTD folder on my Mac which is synced to iCloud Drive. They are not the same folder. What happens if I throw Steam into the mix? :)

The feature would require a bit of thinking before we enabled it, as we wouldn't want to cause issues with anybody's existing content.
luckz 1 Feb, 2021 @ 5:33am 
Cloud Save indeed is just a backend checkbox without needing any code adjustment. https://partner.steamgames.com/doc/features/cloud#steam_auto-cloud

Since GRFs and such large stuff is in that folder, it doesn't seem appropriate to sync it all.
There are cloud storage size limit considerations here too. My Documents\OpenTTD\ from 2010 is already >180MB. (How big are yours these days?)

So you'd want only... the game config and actual saves? Since you might actually want to have different screen resolutions, options, and addon configs on different computers, syncing the openttd.cfg might not be that great. You'd also want different hotkeys on a linux laptop than a Windows desktop.
The naïve idea is to have Steam-OpenTTD save into a separate folder that you can sync wholly, but since Steam Auto-Cloud also has a pattern option, merely picking .sav & .dat files (and whatever else you got that's reasonable) should do? Then it's on the user to have the necessary community content downloads in place for the saves to be playable.

Or you just sync the OpenTTD\save\ folder and forgo things like hs.dat.


P.S.: Could I have a Steam key, or a few? :lovelock:
It's a more desirable form of game ownership than simply claiming the free to play license.
Last edited by luckz; 1 Feb, 2021 @ 5:41am
TrueBrain 1 Feb, 2021 @ 6:25am 
Although we could enable Steam Cloud Saves, I would consider this unlikely to happen. Doing so would make OpenTTD via Steam different from any other platform we distribute via, and I personally don't fancy that :)

We are, however, looking into adding Cloud Saves to OpenTTD itself, as core capability. This would mean it works the same across all OSes and distribution platforms. But, this won't be done in 1.11; hopefully 1.12 :) And I am really looking forward to building that :D
luckz 1 Feb, 2021 @ 6:59am 
Originally posted by TrueBrain:
Doing so would make OpenTTD via Steam different from any other platform we distribute via
I explained why that's not the case.
Or do you mean that letting users have automagic save backups is bad because non-Steam players won't have backups?
Last edited by luckz; 1 Feb, 2021 @ 7:00am
TrueBrain 1 Feb, 2021 @ 7:09am 
Exactly :) And knowing our community, that will result in questions, complaints, etc :P I always say: one thing at the time, don't overdo it by trying to do everything at once. It tends to tick people off if you try ;)

So for now, I am very much of the opinion all distribution platforms should be equal, and we should not delve into specific features on one we cannot offer on the other. Things can change over time of course :)
luckz 1 Feb, 2021 @ 7:19am 
The potential for outrage that you don't want to spend five minutes clicking some checkboxes on a website to make some (Steam) users' lives easier is still there, is it not?

If you add cloud saves with an account system to the game itself, imagine the potential for outrage from users that don't want to make an account.

The only thing you avoid here is the potential outrage from users who are happy to make an OpenTTD account, yet don't want to use Steam, and would feel overly jealous of Steam users having the game saves transferred to the cloud upon game exit.
orudge 1 Feb, 2021 @ 7:51am 
The main problem, as I see it, is that OpenTTD can save games anywhere on your disk, and we don't want to break or do anything unexpected to the saved games that any existing user has. We could choose to have a "Steam saves" folder inside your Documents\OpenTTD folder which would be auto-synced by Steam cloud. (We could do something similar for other gaming platforms too.) The Steam version could default to that folder for saving games (perhaps reading the default directory out of an .ini file in the game directory, as we don't at this time want to create an actual separate Steam build of the code). To me, this seems like the simplest solution that might keep most people happy.

It's something that we need to think through though and decide if that is the best solution - as TrueBrain has said, we may implement our own platform-independent cloud storage too. That's not to say the two couldn't co-exist. But while in technical terms, yes, we could just tick a box to enable Steam saves, we need to be able to support that option, so we are not going to rush into anything just yet. :)

Don't get me wrong, it would be a very popular feature I'm sure, but if we do choose to implement it, we need to do so carefully, as we do have a large existing player base already.
Tordah 4 Feb, 2021 @ 4:53am 
Steam achievements would be fantastic. :meadowswan:
maxXx 5 Feb, 2021 @ 11:49pm 
We want steam achievements :steamthumbsup:
shakeyourbunny 6 Feb, 2021 @ 2:18pm 
My guess it would be wiser to implement an service-agnostic achievement system first, perhaps as an addon / mod first (like a Rimworld mod does this). Later this could be integrated directly in the code.

On top of this base achievement plugin/mod you can make plugins for this base system, first for the standalone system.

After that, it should be easy to plug in achievement hooks for Steam, GOG, where ever you plan releases. These achievement hooks just proxy the triggered achievements to base achievement system, so you keep the equal footing for every platform / version (and have full control over it).
Last edited by shakeyourbunny; 6 Feb, 2021 @ 2:26pm
orudge 7 Feb, 2021 @ 12:01am 
Originally posted by shakeyourbunny:
After that, it should be easy to plug in achievement hooks for Steam, GOG, where ever you plan releases. These achievement hooks just proxy the triggered achievements to base achievement system, so you keep the equal footing for every platform / version (and have full control over it).
That would be the approach I’d expect us to take if or when we do add any closer integration with Steam (or other platforms).
Stoffs 7 Feb, 2021 @ 2:09am 
pls pls pls add some creative and fun achievements for this game when released on steam! that, and cloud save is a must!!
< >
Showing 1-15 of 136 comments
Per page: 1530 50