• sugar_in_your_tea@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    4
    ·
    2 days ago

    I’ve considered building something like this. Basically:

    • NPCs will gather materials, produce wares, stay inside at night, spawn chidlren, and be permanently killable
    • you play in an MMORPG setting as part of a faction, and you work w/ your faction to protect your sims
    • object of the game is to control and protect the most cities

    However, there must be a reason this doesn’t exist. Perhaps it’s too computationally intensive to simulate an entire city? Or maybe the gameplay ends up not being very fun? Idk, but I think it would be really cool.

    • BluesF@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      2 days ago

      I’m sure there are efficiencies to be found that would make simulating it viable. It’s graphics that are compilationally expensive, far more so than simulation, I think. Shadows of Doubt does it!

      • jet@hackertalks.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 days ago

        Most video game developers are not great computer scientists. I’m not saying this with any dispersion, but it’s true. If you’re going to have a distributed agency model simulated, you have to deal with cross-processor, cross thread, or even cross machine, data structures. Either a lockless data structure, or some locking mechanism that doesn’t have a tremendous critical path. It could be outsourced to a database outside of the game engine. But it gets computationally complex

        Something like this https://aeplay.org/citybound

        Or even dwarf fortress

        • BluesF@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          2 days ago

          I can believe that. I focus on data science so these things seem (relatively) simple to me… or perhaps not simple, but exciting to work with haha! But then I’ve looked with horror at the things you have to write to get graphics working.