Making TTD feel more like a game?

Got an idea for OpenTTD? Post it here!

Moderator: OpenTTD Developers

Post Reply
cargohauler
Engineer
Engineer
Posts: 2
Joined: 19 Jun 2022 13:34

Making TTD feel more like a game?

Post by cargohauler »

One of the difficulties we've had with TTD is that it feels like a sandbox with no challenge. Sandboxes can be very fun, especially back when I was a small kid playing the game, though now we find we are looking for a more of a game-like competitive challenge.

Initially we felt that for a LAN game just playing multiplayer would naturally solve this and take the game from a sandbox to a competitive game, because players would then be competing against each other to see who excels the most.

However we found a few issues that has made this not as much the case in our play attempts. Before jumping to them below, I feel I should probably say I am a relatively new visitor back to OpenTTD, so apologies in advance if these observations are generally old/well known ones, or if there are mods already that address these (there are so many that it is tricky to find the suitable one, please lmk if so!).

1. The economy rule of original TTD is broken, since the cargo payment rate is seemingly linearly(?) multiplied by the number of tiles one ships the cargo. This means that one always wants to ship all cargo as far as possible, and never to the nearest consumer. So if there is a coal mine right next to a power plant, one will never want to connect them up (which would be the most logical thing to do in real world), but always find the farthest power plant to ship the coal from that plant to. This makes the maps evolve to odd routes of longest possible networks everywhere, rather than finding the shortest routest to ship items to. The start of the game is a rush to find the longest coal<->power connection and who micromanages the best to connect those up.

Same thing happens with passengers: passenger buses and trains to the next city over are never worth it, only air travel - and there one never wants to build an airport in the middle of the map, but always connect up first the corners and then the edges. So our playthroughs kind of devolve into a center of the map that is not developed much at all, except to contain a passthrough of train networks, and then all the corners and edges of the map fill up with airports.

I think it would be more realistic and intuitive for cargo payments to completely ignore the distance that cargo travels, and only (negatively) care about how long it took to deliver. Delivering a long route should be a headache of the player, not something that the buyer should generously reward. Does there exist a mod like that already? With passengers and mail I suppose the game might value long distances delivered, since the game cannot model desire/intent of the passengers or mail wanting to reach a specific destination.

When googling about this, I did find some sources discussing this effect, most notably this thread: https://www.reddit.com/r/openttd/commen ... nomy_mods/ There are multiple mods mentioned there, but no clear conversation on whether any of them would specifically address this "cargo payout distance factor scaling" issue. Does anyone know of an already existing mod would? I'll check out FIRS and Cargodist and see how they look.

2. the start of the game tends to be a big clicks-per-minute competition of who excels to set up the most lucrative longest routes in the beginning. I am not sure how to change this, though we have been thinking about simply constraining the amount of funds available at start. It would be great to get the game to move from a speed building competition towards a much slower and careful "search & estimate what would give best income" deliberation, since the players would not be able to afford to speed build the best routes.

One way to limit this might be to require players to bid and/or purchase contracts from the industries before they are allowed to haul cargo between them (something similar to buying streets in Monopoly maybe?). Since this would mean that players would not be able to spam all the possible lucrative routes at once, but their availability to the market would be controlled.

3. the game funds/player power is something as of a "superlinearly" growing, meaning that the player who is ahead at any point in time, will be very likely to pull even farther ahead as time grows, because great routes make great money all the way through the game in a stable manner. So far we have played with a custom goal, something like "first player to reach company value of $10,000,000 wins." or similar, to have a nice fixed length game. However so far we've seen that the player who reaches $3 million first will also be the first to reach $10 mil, because of there is nothing that can take away the foothold they have, and they'll enjoy the runaway rewards.

To combat this, I'm thinking it would be great to have some mechanics that would penalize the largest companies, so that there would be a "rubberband" effect in play that would make it possible for the smaller companies to catch up. If there was that kind of "contracts" feature, this might mean that if you are a big company, there would be a surcharge penalty % for bidding contracts that would be imposed on you to help the smaller companies be more lean (or even to force a big company to slim up at times).

These contracts might also be per transport type, e.g. "rights to haul goods via road trucks" vs "rights to haul goods via train", and the more trains you already have, the more % you would have to pay for a yet another train contract, so that it would force players to even out their company to operate on all transport types.

Another thought would be to implement "victory points" like many board games do. Here, instead of racing to first company to reach $10,000,000 (which is easy to manually track even without an official game rule programmed into OpenTTD), the game would hand out victory points in rankings in different categories ("Most Buses", "Most Trains", "Most Airplanes", "Most diverse hauled cargo types", "Safest company", "Greenest company" (least polluting vehicles, least nature destroyed by infra, hauls least coal, etc.), "Best customer satisfaction" (least % amount of cargo left undelivered at depots, fastest delivery time), "Technologically most modern", "Largest company", "Wealthiest company", etc.), and then the overall winner would be the one who achieves the best added up score after fixed # hours of play, or after fixed number of total points are reached.

4. An interesting thought that one of the players in our group brought up was "what if there was a possibility to trade ownership of already operating vehicles and infrastructure?" (and contracts if those existed). I.e. if a player has a train line serving some goods, players could make buy and sell offers of those lines so that they would be able to get rid of poorly profiting lines, or to purchase a competing company's line to guarantee one's own goods infrastructure to be running into the future. E.g. one might want to purchase a certain already developed Iron Ore Mine -> Steel Mill route from a competitor, if they have won a contract to further service the steel from that Steel Mine over to a Factory.

Curious to read what you think about these ideas, and mod suggestions welcome!
mauried
Engineer
Engineer
Posts: 97
Joined: 07 Sep 2010 11:35

Re: Making TTD feel more like a game?

Post by mauried »

Try changing your goal for winning.
Rather than who has the most money try something like first person to fund say 6 extra towns is the winner.
This needs a custom map where the game starts with the number of starting towns being equal to the number of players.
Also helps if the map is large and industries are few at the start.
Set inflation to on , and medium to high construction costs and maintenence costs.
_dp_
Traffic Manager
Traffic Manager
Posts: 226
Joined: 18 Dec 2013 12:32

Re: Making TTD feel more like a game?

Post by _dp_ »

You probably want to look into competitive openttd, a lot of these things have been figured out over the years. There are some goal servers that specialize in competitive gameplay, mainly CityMania.
1. OpenTTD economy is hopeless, so money and everything around it just don't make a good goal. The main competitive game mode is a city-builder as town growth mechanics are relatively complex and it requires designing an efficient network to supply your town as well. So in a properly designed city-builder mode it takes a lot of research, strategizing, and practice to get good scores. For example, even the simplest CityMania CB is quite challenging: https://citymania.org/goal/52/best-scores
2. There is no way around APM competition. Adding goal basically turns OpenTTD into a RTS and even if it needs some deliberation it can be done very fast with enough practice. So faster player will always have an advantage. There are some ways to make it non-linear though. For example, in that 30k CityMania CB once you can get your town growing at 100% extra speed will only get you extra money that you can spend on powerfunding but the advantage is tiny and it gets lower as the town grows so that effort may be better spent on better town management and making sure you don't miss any supplies. Though for the first year or two building speed is still very important as it means you can start funding faster and it snowballs from there.
3. Once ahead always ahead, that's kind of the way of life. You can't exactly punish players for being too good, so unless you add a lot of randomness to the game there isn't much that can be done about it.
4. I don't see why would a competitor want to sell anything for useless money. Unless is some kind of mistake line that he just wants to get rid of.
Eddi
Tycoon
Tycoon
Posts: 7969
Joined: 17 Jan 2007 00:14

Re: Making TTD feel more like a game?

Post by Eddi »

cargohauler wrote: 19 Jun 2022 14:56 I think it would be more realistic and intuitive for cargo payments to completely ignore the distance that cargo travels, and only (negatively) care about how long it took to deliver. Delivering a long route should be a headache of the player, not something that the buyer should generously reward.
there's a number of problems with that approach.
  1. the "realism" argument usually falls flat, as there are many things in the real world that can't be properly modeled in a game. things like, maybe the local coal is of poor quality. or the cost of extraction is too high. or systemic corruption, or whatever. these are all things which could cause a company to be willing to pay extra for long haul freight
  2. no matter how you're changing the payment algorithm, as long as the player mindset is about minmaxing profits, you're essentially replacing one optimal route pattern with a different one, so as soon as your players figure out what pattern that is, it will devolve into the same race as you had before. it'll just look marginally different.
You might not exactly be interested in Ferion, but if you are, have fun :)
User avatar
sevenfm
Engineer
Engineer
Posts: 110
Joined: 25 Jul 2016 23:44
Location: Soviet Russia

Re: Making TTD feel more like a game?

Post by sevenfm »

cargohauler wrote: 19 Jun 2022 14:56I think it would be more realistic and intuitive for cargo payments to completely ignore the distance that cargo travels.
I would try instead sqrt(distance/base_distance) as payment modifier instead of distance/base distance (where base_distance is 20 as I remember), in this case you still can transport goods farther, but it's less profitable.
This can be implemented in NML with cargo payment callback or with game source modification.
cargohauler
Engineer
Engineer
Posts: 2
Joined: 19 Jun 2022 13:34

Re: Making TTD feel more like a game?

Post by cargohauler »

Thanks all, really great and informative suggestions! We'll try these directions next. :)
User avatar
luk3Z
Traffic Manager
Traffic Manager
Posts: 181
Joined: 25 Dec 2005 17:42
Location: Kielce, Poland (Mars sometimes)

Re: Making TTD feel more like a game?

Post by luk3Z »

cargohauler wrote: 19 Jun 2022 14:56 (...)

I think it would be more realistic and intuitive for cargo payments to completely ignore the distance that cargo travels, and only (negatively) care about how long it took to deliver. Delivering a long route should be a headache of the player, not something that the buyer should generously reward. Does there exist a mod like that already? With passengers and mail I suppose the game might value long distances delivered, since the game cannot model desire/intent of the passengers or mail wanting to reach a specific destination.
(...)
Simple Cargo Profit:
https://bananas.openttd.org/package/newgrf/4b490101
or
Simple Cargo Decay Override:
https://bananas.openttd.org/package/newgrf/53536303
(for disable distance you will need parameters set as 256)
Find new graphics easier:
GRFCrawler -> http://grfcrawler.tt-forums.net
BaNaNaS -> https://bananas.openttd.org/
32 bit gfx in OTTD (32bpp) -> https://wiki.openttd.org/en/Community/N ... 20graphics
TTDPatch 2.6 -> viewtopic.php?f=19&t=67694
How to subtract tax from income (workaround) -> viewtopic.php?t=89763&start=20
How to ban distance from income -> Simple Cargo Decay Override
LaChupacabra
Transport Coordinator
Transport Coordinator
Posts: 285
Joined: 08 Nov 2019 23:54

Re: Making TTD feel more like a game?

Post by LaChupacabra »

cargohauler wrote: 19 Jun 2022 14:56 1. The economy rule of original TTD is broken
Well... is it broken? I would rather say that it contains many simplifications, but the effect is not as unrealistic as it might seem. :) It was rightly described by Eddi. I will even give a very recent example from reality. Poland, where I live, which has its own large coal resources, often right next to a power plant (!), Instead of extracting it, was buying coal from Russia because it was simply cheaper and less polluted. Currently, but also to some extent earlier, Poland imports and imported coal from... Australia! Yes, from the other side of the world. Why? The same reason: because it was and is simply cheaper and it is profitable to pay for its transport.
cargohauler wrote: 19 Jun 2022 14:56 2. the start of the game tends to be a big clicks-per-minute competition of who excels to set up the most lucrative longest routes in the beginning. I am not sure how to change this, though we have been thinking about simply constraining the amount of funds available at start. It would be great to get the game to move from a speed building competition towards a much slower and careful "search & estimate what would give best income" deliberation, since the players would not be able to afford to speed build the best routes.
Probably every game that has an online mode also has this problem. :) In short: there will always be someone who knows the game mechanics better or is simply faster. Buying contracts won't solve this problem at all. Although I admit that contracts are an idea I like (point 2 on my economic wish list). I may be wrong, but it seems possible to add them to the game via a script. The Bee Reward script now has a similar function.
For now, the best solution is to just play and compete with people of similar level. Then the fun is best. ;)

cargohauler wrote: 19 Jun 2022 14:56 3. the game funds/player power is something as of a "superlinearly" growing, meaning that the player who is ahead at any point in time, will be very likely to pull even farther ahead as time grows, because great routes make great money all the way through the game in a stable manner.
The best solution I can imagine on this moment is taxes. Of course, they should be progressive, which means that the big one pays more and the beginner pays nothing. Some time ago I "encoded" such an idea in PNG format. ;) The only problem that remains is that someone would have to translate it into the game code... A short description of the idea can be found on the list mentioned above (point 6). Besides this way, taxes can be also added by the script. Currently, perhaps the only one with such a function is Villages Is Villages
cargohauler wrote: 19 Jun 2022 14:56 4. An interesting thought that one of the players in our group brought up was "what if there was a possibility to trade ownership of already operating vehicles and infrastructure?" (and contracts if those existed). I.e. if a player has a train line serving some goods, players could make buy and sell offers of those lines so that they would be able to get rid of poorly profiting lines, or to purchase a competing company's line to guarantee one's own goods infrastructure to be running into the future.
Yes, that would be nice. Rather useless on servers like _dp_ runs, but on those with less specific goals it would be very useful. For example, when I see that someone is serving a enterprise that I care about. I could buy a selected part of the infrastructure from this player. The solution may be similar to copying the infrastructure from the City Mania client
_dp_ wrote: 20 Jun 2022 00:12 I don't see why would a competitor want to sell anything for useless money. Unless is some kind of mistake line that he just wants to get rid of.
It happens that it pays to spend even tens of millions on access to an enterprise. Such a transaction can be profitable for both parties. ;)


Okay, just a few more concrets...
There are additions that can significantly change the economy of OTTD. I will mention a few of them... but you need to know that the jungle of ottd add-ons is very deep and unexplored. Every now and then new unknown species are discovered. ;)

NewGRF

1. Max Tile Paid - Limits the maximum distance for which the company will take a payment - if you set eg 50, you will not earn more on longer distance transport. It also removes the element of time so no matter how long the transport takes. Theoretically made for the ECS industrial set, but it works as well with any other set.
2. Buy, process, sell - Change payment rates, also dedicated for ECS set, but can also be used with default industry and derivatives like Manpower or Improved Town Industries. Here, the distance is also irrelevant, because the stake is always the same. But that's not the biggest change. Here, first of all, you only earn money from transporting goods, and you pay for all the resources.
3. Industries of the Caribbean - New, still under development, similar to the above. Here, too, you pay for resources and earn money by exporting goods by sea. Besides, for any industry to produce something, it needs workers to be provided. Of course, the workers are paid, so you have to pay them too. ;)
4. Base Cost Mod - An add-on that allows you to change the cost of many items in the game. Thanks to it, you can reduce the advantage of default planes or FISH/Squid/Shark ships.
5. World Airlines Set - Currently the best balanced set of planes. Only helicopters and early planes are missing (there is Av8 minimal Supp WAS, but unfortunately it is poorly balanced). Planes cost here from $270k to $8M, which is a much more adequate price, though I find increasing it maintenance and purchace costs by x2 or x4 will be even more appropriate. :D
6. 2CC Trains - Overall a well-balanced set of trains from around the world. Maybe too expensive, but that can be changed in the settings.
7. FISH / Squid / Shark - A family of a set of ships. Shark is the newest and offers the most. Much more useful units than the default ones, allowing you to create longer connections with less amount of ships. One drawback is the too high income they generate, so it is worth increasing the prices and maintenance costs x2 or x4.
8. eGRVTS - The most universal set of vehicles. Works well with a set of HEQS trucks.
9. U&Ratt - The richest set of different types of roads at the moment (in my opinion it is worth switch on the OpenGFX cursor)
10. Passengers and Mail Payment Control - Allows you to reduce (or increase) rates for transporting passengers and mail. Especially useful when using FIRS, SPI or PIRS sets, where these rates are so high that it is not worth transporting anything else - setting 40% for both gives a much better balance.
11. Ultimate Cargo Payment - Allows you to freely change all rates. Setting it up is a bit of a pain, but if transporting some cargo feels too profitable, it is possible to change it.
12. FIRS - The mother of most industrial sets. Currently, there are 4 versions with slightly different mechanics, most of them have several economy in settings that are included various enterprises. The most universal and the most interesting in my opinion is the FIRS 3 with the Extreme setting.
13. XIS - If you play FIRS and find that you would like to have all the enterprises at the same time.
14. PIRS - An interesting set which is something between the FIRS rich in many different industries, SPI, which limits the number of loads accepted by enterprises and the default, simple industry.
15. Wasteland - Post-apocalyptic complete set, though still being developed. Containing all elements of the game, such as industry, vehicles and buildings. The game starts in 2077. All cities are in ruins and your task is to rebuild them.

Scripts
Their list is like a bucket of all kinds of candy from which you can only choose one. They have different tasks, some change the rules of city development, making it important not only to serve five stops regardless of the size of the city, but also the delivery of various cargoes, others can add taxes, yet others can build roads or set goals and reward a players for achievement. Unfortunately, you can only choose one of them. Due to changes in the game, many of the scripts don't work anymore, so before you choose one to play on the server, it's a good idea to check if it works. City Buildier, Simpleton's City Buildier, New World Disorder and Renewed City Growth are definitely out (as of June 2022).

1. Renewed Village Growth - City development. It is an extension of another, no longer working Renewed City Growth script. Currently the best polished script of this type. Apart from passengers and mail, raw food supplies have the greatest impact on development, followed by supplies of raw mineral (to local factories).
2. Renewed World Disorder - City development. Also based on RCG. Differently composed categories based on which the city develops. The greatest impact on development is construction, i.e. the supply of building materials, followed by trade, i.e. the supply of such cargoes as food or goods. Here, as above, the basic condition is the transport of city residents.
3. City Growth Limiter - City development. A simple script that adds one or two clear conditions such as the level of passenger and / or mail transport. The speed of development is still regulated by the number of stops served (1-5, you never need more).
4. Villages Is Villages - City development + Taxes. Not very clear rules of development, but interestingly constructed taxes added, which prevent companies from having to worry about excess cash available. ;)
5. Bee Reward - Goals and rewards. Each player receives a list of a dozen or so goals, for the achievement of which he receives a lot of money. The script can be combined with any of the add-ons lowering the rates for transport, thanks to which these goals will be almost like contracts, much more profitable than transporting even to the farthest corners of the map.
6. NoCarGoal - Goals and competition. The goals (always only 3) are common to all players here. Every now and then the script shows a window with the ranking of companies.

Settings:

1. Infrastructure Maintenance - Encourages players to try to reduce their amount, which itself can be an interesting challenge.
2. Cargodist - Legend says that thanks to this, it is the game, not the player, that decides the direction in which passengers and other cargo will go. This is not entirely true. Cargodist only distributes loads between available stations. If there is no connection, even with a change, the cargodist will not send anyone there. Unfortunately, as this someone wrote on reddit, OTTD does not encourage network expansion, and here cargodist doesn't really change anything. It is still most profitable to build insulated A-B connections. There was the New World Disorder script available few years ago that quite effectively encouraged to use Cargodist and network building, but is currently not working fully properly. However, it is worth using cargodist for passengers and mail, because playing with this setting is still more interesting. But I strongly advise against use it for transporting other goods. (When you enable this setting, a yellow + will appear next to the number of pending loads in the station window - press it to see where it is being sent to)

I just wanted to write only a few points... impossible. :lol:
I am sorry for may English. I know is bed.
User avatar
kamnet
Moderator
Moderator
Posts: 7861
Joined: 28 Sep 2009 17:15
Location: Eastern KY
Contact:

Re: Making TTD feel more like a game?

Post by kamnet »

The economy from the original game isn't broken, you're looking at the game from the wrong perspective.

This is a clone of a game from the early 1990s. There was only one goal: score more points than your opponents on the leader board when the game ends in the year 2050. Hauling cargo long distance scores more points faster. It was never about realism or being an accurate business simulator. Instead of chasing pellets and ghosts around a screen, you shuffle bits from one place to another.

If that's not what you're playing for, then you basically get to make up your own rules to determine what's competitive and who wins or loses. Or if there's any such thing at all.
Eddi
Tycoon
Tycoon
Posts: 7969
Joined: 17 Jan 2007 00:14

Re: Making TTD feel more like a game?

Post by Eddi »

kamnet wrote: 23 Jun 2022 23:38 The economy from the original game isn't broken, you're looking at the game from the wrong perspective.
well, that's a very disputable claim. there's lots of perspectives which make the economy appear "broken". and also, perspectives aren't usually "wrong", just different.
You might not exactly be interested in Ferion, but if you are, have fun :)
JC_85
Engineer
Engineer
Posts: 1
Joined: 02 Aug 2022 09:44

Re: Making TTD feel more like a game?

Post by JC_85 »

Hey, long time listener, first time caller.

I've been playing TT/TTD ever since I got it from a friend back around '95. Every time I come back to the game I spend a lot of time thinking the same that OP brought up, that the economy is a bit too linear and it would be real nice with some more advanced game play requirements.

My main enjoyment in the game comes from planning longer routes and intricate transport networks but at the same time it still feels that shorter routes should make more logical sense. The argument that in the real world longer routes are sometimes the cheaper is valid, but it's also besides the point since this game isn't about buying and selling goods, it's about transporting someone-else's goods from point A to point B. (But with the odd quirk that the buyer doesn't get to decide what supplier they get their goods from, the transport company does.) So from a transport company's point of view, longer routes means higher cost, and with a fixed profit margin that would mean longer routes are more profitable. But from a buyers perspective, longer routes means longer lead-times and less value-added for the service, so shorter routes should be more attractive.

And this is already how cargo payment is calculated, at least in essence. But as can be read in the wiki, at longer routes the distance component of the profit calculation absolutely dwarfs the time component and effectively making it moot. I think should be fixed so that time is the single most important factor in calculating profits. And time should start counting from when the good is available, not from when loading starts.

But a change like that would kind of break a key aspect of the game since you would no longer be rewarded for building large and intricate transport networks. Instead you'd end up with small local loops where related industries are grouped together. But I think there's an elegant solution to this that would at the same time fix one of my biggest pet peeves with the game. As it stands now, having multiple consuming industries of a cargo is kind of pointless. It doesn't matter if there are 5,10 or 50 power plants across the map since the main strategy is to find the power plant furthest from any coal mine and direct all coal there. Watching a train fully loaded with coal passing by multiple power plants just to get to the one furthest away just feels off.

My suggestion would be consumption limits.

A single coal mine produces enough coal to supply multiple power plants, and that is how it should be in the game too. Say a coal mine produces 200 tonnes of coal every month, but the closest power plant only accepts 50 tonnes per month. If you transport 200 tonnes your only paid for 50 tonnes, the other 150 tonnes just sit at the station waiting to be consumed. And when the next month rolls around another 50 tonnes is consumed but by this time 30 days of transport time is added to the profit calculation, so you'll be penalized for over-delivering goods. So you scale down your route to just deliver 50 tonnes a month to make full profit, but the coal mine is still producing 200 tonnes of coal and the other 150 tonnes are losing value waiting to be picked up for delivery. This minor change in technical terms would have major effects on the game play;
Before you start an new route you would need to plan for distribution of the good to multiple consumers immediately or you run the risk of not being able to make a profit from the route.
Changes in production at an industry could have major consequences since even an increase in production can have negative effects on on profits if you don't scale up what volumes your routes can handle.
A competitor already delivering to an industry means it's probably not a good idea delivering to that same industry since neither of you would make a profit. Or that might be a good strategy to reduce their earnings.

I think a change like this would add a lot of fun new strategies and would love to see something like this implemented.
mauried
Engineer
Engineer
Posts: 97
Joined: 07 Sep 2010 11:35

Re: Making TTD feel more like a game?

Post by mauried »

This happens now , at least if you are using the ECS industry set.
Primary industries like coal mines vary the amounts of coal over time, and supplying them with vehicles will increase their outputs.
Secondary industries have upper limits on how much cargo they will accept and this value varies over time, so once this limit is reached they wont take any more, and you wont get paid at all for delivering anything to them.
Eventually the industries will start accepting again and then you can start redelivering to them.
Post Reply

Return to “OpenTTD Suggestions”

Who is online

Users browsing this forum: No registered users and 1 guest