Live data from Hacker News

Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

captain-of-coit.github.io

41–50 of 50 posts

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#41
post #20

As a game dev, I'm starting to feel like ECS isn't the right paradigm. Seeing this 700 nodes graph with all the dependencies screams technical debt and domino effect (changing one small system would impact a lot of other ones). Not sure if there's anything better right now, but seeing everyone copy what Unity did feels like there isn't a ton of innovation in how to build gameplay systems. Lots of engines are being ma…

700 nodes with random interdependencies is better than 700000 objects with random interdependencies though ;) PS: I'm kinda surprised that a shipped Unity game contains that much human-readable information for reverse engineering. Is there no symbol stripping in .NET?

> PS: I'm kinda surprised that a shipped Unity game contains that much human-readable information for reverse engineering. Is there no symbol stripping in .NET?

I'm pretty sure Colossal Order (the developers of the game) purposefully makes the game easier to decompile (or at least doesn't employ methods to make it harder) as modding is a large part of the game's community. They want it to be easy to mod.

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#43
post #20

As a game dev, I'm starting to feel like ECS isn't the right paradigm. Seeing this 700 nodes graph with all the dependencies screams technical debt and domino effect (changing one small system would impact a lot of other ones). Not sure if there's anything better right now, but seeing everyone copy what Unity did feels like there isn't a ton of innovation in how to build gameplay systems. Lots of engines are being ma…

This is ECS Done Wrong to be fair, one imagines it'd run even worse with another design.

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#44
post #20

As a game dev, I'm starting to feel like ECS isn't the right paradigm. Seeing this 700 nodes graph with all the dependencies screams technical debt and domino effect (changing one small system would impact a lot of other ones). Not sure if there's anything better right now, but seeing everyone copy what Unity did feels like there isn't a ton of innovation in how to build gameplay systems. Lots of engines are being ma…

This is ECS Done Wrong to be fair, one imagines it'd run even worse with another design.

> This is ECS Done Wrong to be fair

How so? Not sure I love the approach of saying something is "Done Wrong" without pointing to something specific that gives you that impression.

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#45
post #24

> it's one of the first games that is using ECS what do you mean by this?

I had the same question.

"The Entity Component System (ECS) is the core of the Unity Data-Oriented Tech Stack. As the name indicates, ECS has three principal parts:

Entities — the entities, or things, that populate your game or program.

Components — the data associated with your entities, but organized by the data itself rather than by entity. (This difference in organization is one of the key differences between an object-oriented and a data-oriented design.)

Systems — the logic that transforms the component data from its current state to its next state— for example, a system might update the positions of all moving entities by their velocity times the time interval since the previous frame"

From https://docs.unity3d.com/Packages/com.unity.entities@0.17/ma...

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#46
post #24

> it's one of the first games that is using ECS what do you mean by this?

Another (flagged/dead now) comment also asked this. It's helpful to continue reading that line until the end of it. > > it's one of the first games that is using ECS and that I also have a deep interest into > Both, at the same time :) > ECS probably been around since at least early 2000s if not even in the 90s. https://news.ycombinator.com/item?id=38703926 I guess if at least two people asked this question, my initi…

> it's one of the first games that is using ECS and that I also have a deep interest into

FWIW, I did read to the end of the line, but I parsed that as two separate assertions (with “and that” being a means to introduce the second assertion):

1) it is one of the first games using ECS

2) that you also have an interest in it

Rather than the intersection of:

1) the set of games using ECS

2) the set of games that you have an interest in

Or, expressed another way, it’s this (how I read it):

(it's one of the first games that is using ECS) and that (I also have a deep interest into)

Vs

it's one of the first games that: (is using ECS) and that (I also have a deep interest into)

I suppose I would have written this:

It’s one of the first games using ECS which I have also had an interest in.

I’m fairly certain I’ve almost always seen something like “[of] which” to introduce another qualifier, whereas “and” almost always introduces a new statement that stands on its own (the exception being in more formal contexts where there’s a sentence structured along the lines of “consider such [insert class of objects here] which are both: [this] and [that]”).

I think it’s the “and that” which threw me (and others here who misread you) off.

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#47

Earlier quoted context omitted.

Another (flagged/dead now) comment also asked this. It's helpful to continue reading that line until the end of it. > > it's one of the first games that is using ECS and that I also have a deep interest into > Both, at the same time :) > ECS probably been around since at least early 2000s if not even in the 90s. https://news.ycombinator.com/item?id=38703926 I guess if at least two people asked this question, my initi…

> it's one of the first games that is using ECS and that I also have a deep interest into FWIW, I did read to the end of the line, but I parsed that as two separate assertions (with “and that” being a means to introduce the second assertion): 1) it is one of the first games using ECS 2) that you also have an interest in it Rather than the intersection of: 1) the set of games using ECS 2) the set of games that you hav…

Thanks!

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#48
post #26

Earlier quoted context omitted.

> (changing one small system would impact a lot of other ones) Would you not expect that in a sim game though? I mean, why would you have a nice tree when everything interacts with almost everything?

Of course, but their use of the ECS seems excessive. I'd have expected a few big systems for each area of the game, clicking on Game.Simulation.AdjustElectricityConsumptionSystem for example reveals quite a lot of things that could be within one system. I bet the current design passes and queries data all over the place, very redundantly.

[deleted]

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#49
post #26

Earlier quoted context omitted.

> (changing one small system would impact a lot of other ones) Would you not expect that in a sim game though? I mean, why would you have a nice tree when everything interacts with almost everything?

Of course, but their use of the ECS seems excessive. I'd have expected a few big systems for each area of the game, clicking on Game.Simulation.AdjustElectricityConsumptionSystem for example reveals quite a lot of things that could be within one system. I bet the current design passes and queries data all over the place, very redundantly.

> I bet the current design passes and queries data all over the place, very redundantly

That's not how ECS works. A system has one or more queries that provide it direct access to the data. There's no passing around of queries or data.

Re: Show HN: Interactive ECS Systems/Component Explorer for Cities: Skylines 2

#50
post #20

As a game dev, I'm starting to feel like ECS isn't the right paradigm. Seeing this 700 nodes graph with all the dependencies screams technical debt and domino effect (changing one small system would impact a lot of other ones). Not sure if there's anything better right now, but seeing everyone copy what Unity did feels like there isn't a ton of innovation in how to build gameplay systems. Lots of engines are being ma…

This is ECS Done Wrong to be fair, one imagines it'd run even worse with another design.

Judging by the system & component names this looks to be pretty well designed tbh. There are a lot of systems for sure, but considering this is a city simulator that's kind of expected.
Post reply on HN