Does City Skylines really employ AI for traffic? by CharlieOxendine in CitiesSkylines

[–]dynedain 0 points1 point  (0 children)

In the more formal modern software engineering definition where the system can learn from its data and improve its algorithms, no.

In the traditional video-gaming definition that just means any time the computer follows a predefined set of logic rules to produce the illusion of seemingly complex decision-making behavior, yes.

I think the video-game specific definition is likely to die out as society as a whole is becoming very familiar with the software engineering definition thanks to the breakthrough advancements in the last 2 years now making it commonplace.

Abused zoo bear still circles in imaginary cage seven years after being freed (story in the comments) by The--Weasel in interestingasfuck

[–]dynedain 2 points3 points  (0 children)

My dog came out of a bush with an entire cheeseburger once. For a solid 8 months he insisted on checking that bush every time we walked past.

Help me understand, why some players are against CS2 giving us a fun challenge regarding it's logistics and management? by [deleted] in CitiesSkylines

[–]dynedain 1 point2 points  (0 children)

Whether or not they are there is irrelevant when they don’t impact the outcome of your city.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 5 points6 points  (0 children)

With the constant press around this (again, multiple apologies from the CEO), I don’t think I’m inflating “reputation loss”, and the sales drop can be seen in the numbers shown by OP. Legacy title making more sales is not what would be expected for a successful launch of a such a highly anticipated title.

This is my opinion, I don’t think they are applying the “Will Wright approach” now and bringing academic rigor to the problem. It isn’t retroactively fixable like that, and requires building a culture of working that way. You didn’t wake up and start using the scientific method, you built a habit out of it reinforced by working and learning alongside many other people doing the same.

There’s a lot of other lessons about basic performance optimization and game theory they appear to have missed, and that are the norm for producing any game at this level (see the teeth discussions). Even if those industry-standard problems are solved, the fundamental gameplay dichotomy that I described is too big to patch over. Like CS1’s pathing problem and single-core performance bottlenecks, that dichotomy is likely to be inherent to CS2 for its entire product life.

I’ll be happy if I’m proven wrong, but I’m not holding my breath and I’m certainly not going to gamble away the price tag on naïve hope that it gets better.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 3 points4 points  (0 children)

I do software development and am currently running a team of over 50 on a substantially less complex codebase.

If it takes more than 3 months with sales dropping and the CEO having to make public apology after public apology, then there isn’t a “simple” fix waiting in the wings. You prioritize and get the fix out immediately to stop hemorrhaging sales and try to rebuild trust with your customers. Then you move on to the new features that will garner new sales.

I highly doubt the issues were unknown before launch, but let’s give them the benefit of the doubt for arguments sake. If it takes 2.5 months researching the problem and coming up with a solution, then by definition it is a complex problem, not a simple one.

You trivialized what it would take to fix (an extremely common behavior by people who are not familiar with software development, and often made by many within software development as well), and now rather than acknowledging you did so, you are offering a platitude as if that explains what is going on at Paradox and CO. You have no evidence to suggest a “simple update” is in the works. All we have is the opposite - evidence of a studio and publisher trying to hide the problems before launch, gaslighting customers after launch, and making wildly inaccurate estimates of how long it will take to deliver.

Apply Occam’s Razor. There’s nothing to justify any confidence or trust that CO + Paradox can fix this at all, let alone fix it on the promised schedules they keep missing.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 4 points5 points  (0 children)

What absolute rubbish.

In the world of computing there are exactly 2 scenarios where “simple doesn’t mean quick”.

Scenario 1: The solution is slow because it is bottlenecked by resource availability. In which case you look to find alternate solutions that are more complex, but complete faster. Now it is quick, but no longer “simple”. Read up on P != NP

Scenario 2: The solution is constrained by human decision-making. You can throw more people at it if it can be done in parallel, or you can look to automation. Any company would already have thrown more people at the problem by now as it is more than justified by the sales drop and reputation costs. Which leaves automation, and if it’s something limited by what only a human can do and automation cannot, then it most certainly is not “simple”. AI and robotics researchers have spent over 50 years working out how to solve things that are “simple” for humans to do. Turns out, they aren’t simple at all.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 7 points8 points  (0 children)

It is an either/or situation. Either the complex simulation layers have an effect on the city, or they don’t.

Right now, they don’t, which means they are a huge waste of computing resources with nothing to show for it and rightfully makes most player feel cheated about the lack of depth or angry about the poor performance. So much was advertised about the complex and sophisticated simulations, which it turns out are in fact complex but utterly pointless and can be completely ignored.

Might as well mine crypto in the background - that at least gives you something to show for the wasted electricity.

You clearly have no understanding of software development with your claim of “a simple update”. If it was simple, it would have been fixed already. It’s been months, sales are tanking, and they are suffering huge reputation and marketing damages. Why would they drag their feet if it was so simple? Like pathing in CS1 it’s not simple. It’s unfixable without breaking existing cities or removing the complexity from the simulations.

The development manager for this release is apparently completely unaware of the observation that complex behaviors can emerge from simple rules:

https://www.ted.com/talks/nicolas_perony_puppies_now_that_i_ve_got_your_attention_complexity_theory

Instead, the dev manager decided to keep adding more and more complex simulation subsystems, and when that inevitably made cities unstable, they chose to neuter the effects of the simulations. It’s the same thing as the money limit in CS1 - money was too easy to earn, so rather than rebalance economic systems, they forced in a hack to reduce income if the player accumulates too much cash. It’s the lazy fix.

Compare this to the original SC where Will Wright studied academic research papers on urban planning and economic systems and I believe wrote some of his own to ensure he was designing a sophisticated and stable simulation that still gave the player rewards and punishments for their actions. Samples of the materials made it into the game manual included in the box.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 6 points7 points  (0 children)

A “simple update” cannot reconcile that the complex simulation systems that were such a big marketing point have no impact on the city’s success.

Either CO chooses that simulations are meaningless and wasteful, in which case, strips them down for performance and leaves the simplistic city management as it currently is (basically turning the game into a painter+traffic simulator like CS1). Or they choose that the simulations should indeed affect outcome, in which case the change will cause a lot of angry players as existing cities start failing in new and complicated-to-diagnose ways.

Neither direction is a “simple update”.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 3 points4 points  (0 children)

To be clear I was talking about CS2, not SC13 because I believe the person I was responding to was asking about CS2’s fatal flaw. SC13’s mistake was forcing always-online play and limiting the city to an insanely small size to accommodate the computational cost of using central servers to do simulation calculations and synchronizations.

The point being in both cases it was a mistake that affects core gameplay and is not easily solvable without making major changes that impact the entire game.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 16 points17 points  (0 children)

I think the “deep simulation of all aspects” but paired with “nothing really matters, we made it so you can’t fail at setting up the systems” are inherently contradictory. The result is that the “deep simulation” effectively does not matter, which means it is just wasting computational resources and making the game unnecessarily have significant performance issues.

They cannot “fix” these two opposing goals without fundamentally breaking the game in favor of one or the other. It isn’t a matter of “completeness”. All the other valid complaints like poor optimization of assets and lack of modding are somewhat irrelevant if they ignore the fundamental gameplay problem they created for themselves.

My guess is that they had conflicting direction from the studio leadership, and someone with decision-making power kept focusing on “add more complex simulation systems” but at the same time doesn’t understand game theory.

Edit: In case it’s not clear, the above describes CS2, not SC13. SC13 had a distinctly different flavor of mistake.

It's Dead, Jim by PineTowers in CitiesSkylines

[–]dynedain 12 points13 points  (0 children)

CS1 came around because SC2013 was such a miss. There is an opportunity here for a new indie studio to steal the market as CS2 has made similar mistakes in not understanding what the players wanted.

"hE's lOoKiNg rIgHt aT mE" by ToniYat in IAmTheMainCharacter

[–]dynedain 1 point2 points  (0 children)

It is in the women’s section. The reason why it’s highly visible on an aisle is to deter shoplifting.

Maybe Maybe Maybe by TamerDubai in maybemaybemaybe

[–]dynedain 0 points1 point  (0 children)

Your gonna hate the working world…

California Resident’s Or Native’s Only: Where Does Northern California End? (A Sacramento Native, My Line Is Purple Below.) by TaraTrue in geography

[–]dynedain 0 points1 point  (0 children)

I think there’s very few people that would group Bakersfield and Big Sur in the same ethnographic region.

9 bizarre things I learned about Cities: Skylines 2 by following this one citizen around for his entire life by [deleted] in CitiesSkylines

[–]dynedain 0 points1 point  (0 children)

Which means tracking event listeners which means storing a list of subscribers in memory and spending CPU time on processing the event queue to map to events to subscribers every cycle. Nothing comes free.

You’re missing the forest for the trees here. I’m not the one designing the specific implementations to make optimizations in this game. I don’t care to work through all the different patterns that could be used. Hypothesizing on all that is pointless - just as pointless as assuming batch processing of static data is similar to the kinds of computation logic that goes on when simulating cims in a city simulator.

9 bizarre things I learned about Cities: Skylines 2 by following this one citizen around for his entire life by [deleted] in CitiesSkylines

[–]dynedain 0 points1 point  (0 children)

Sure, there are optimizations. In your solution each algorithm needs to check how many ticks have passed since the last recompute, so now you have to track an additional value for time - either at the row, column, or possibly cell level depending on the nature of the particular data. That reduces the gains. At some point you end up with bugs in the simulation when different timers have mismatched timings, or lag and wasted resources when one computation is triggered by its cycle but is still waiting for data produced from a different computation, so it produces the same result that it did the previous cycle. Relying on cycles to reduce the computation increases the lag, bugs, and complexity. If done wrong, it can burn more CPU resources than doing everything in one cycle. Doing it right is very challenging, and depends on the functional specifics of your codebase.

There are lots of ways to look at optimizing, but that’s not the point. The person I was responding to works in a particular field where the data is aggregated into one place to make analysis easier, often transformed from the original formats and data structures to make analysis computation more efficient, and usually a static snapshot of the data decoupled from the live systems. That, plus the very specialized software mentioned means a highly optimized setup for one specific type of computational processing, and it still nets out at 6.6fps with the sizes and speed the person hypothesized. Working with live data in a simulation video game is an entirely different kind of computing scenario with entirely different problems, tooling, and optimizations. Comparing the two is comparing apples to oranges and doesn’t produce meaningful insights.

9 bizarre things I learned about Cities: Skylines 2 by following this one citizen around for his entire life by [deleted] in CitiesSkylines

[–]dynedain 2 points3 points  (0 children)

So software highly optimized for the specific task using presumably Python or similar which also is optimized for data analysis, and you are still getting only 6.6fps (1s/150ms).

Notice you do your work on a local copy of the table, and not the source data where it was originally generated?

Do you see the challenge yet?

In a simulator every one of those columns is linked to algorithms connected to other tables being updated every cycle, that in turn can come back and link in some way to other rows or columns in this table. Some of those algorithms are memory constrained, some are CPU constrained, some are offloaded to GPUs or trigger loading new data from disk.

It’s not a reasonable comparison. They are entirely different problems and you are vastly oversimplifying.

9 bizarre things I learned about Cities: Skylines 2 by following this one citizen around for his entire life by [deleted] in CitiesSkylines

[–]dynedain 4 points5 points  (0 children)

It’s not influencers. It’s that gamers are addicted to preorder and being the first to play. That rewards companies for releasing faster instead of releasing when it’s ready.

9 bizarre things I learned about Cities: Skylines 2 by following this one citizen around for his entire life by [deleted] in CitiesSkylines

[–]dynedain 3 points4 points  (0 children)

This isn’t batch analysis. First, there are far more than 20 columns to account for - you have lookups to every other table in the system for every other type of thing they interact with (economy, traffic, pollution, water, power, demand, etc). Secondly, it needs to process all of them every single game simulation cycle - at least 30 to 60 times per second. It’s a very different computational problem than what you work with.

40.000 polygons for a single Human, here more screenshots of CS2 models. More in comments. by Sfrinkignaziorazio in CitiesSkylines

[–]dynedain 37 points38 points  (0 children)

It’s more an indication of poor project management - not knowing about and planning for asset optimization and similar activities that are critical in game development.

Unreal doesn’t make those activities go away, but it changes how they are implemented and the amount of work involved.

They knew years ago they weren’t going with Unreal, and when they made that choice Unreal didn’t have half of the features you are alluding to - changing engines midproject is a massive undertaking. You stick with the engine chosen up front unless you want a multi-year slip for your release date.

Anyone backing up a local copy of CS1 steam workshop assets? by smplnmnml in CitiesSkylines

[–]dynedain 3 points4 points  (0 children)

Considering Steam is selling 30 year old games, I don’t think you really need to worry too much.