[HN Gopher] Shapez.io: open-source base building game inspired b...
       ___________________________________________________________________
        
       Shapez.io: open-source base building game inspired by Factorio
        
       Author : smusamashah
       Score  : 257 points
       Date   : 2020-10-04 13:01 UTC (9 hours ago)
        
 (HTM) web link (shapez.io)
 (TXT) w3m dump (shapez.io)
        
       | VectorLock wrote:
       | This by the same guy who made diep.io? Looks like very similar
       | style.
        
         | dengr1065 wrote:
         | This game is made by Tobias Springer, author of YORG.io and
         | YORG.io 3 (and other contributors).
        
       | avree wrote:
       | This website broke my browser back button. :(
        
       | sdfjkl wrote:
       | That website is very wrong. The links aren't links and right-
       | clicking is disabled.
        
         | Kaze404 wrote:
         | Links are anchor tags and right clicking works for me on
         | Firefox.
        
       | dlhavema wrote:
       | Add a link or something to not completely turn away mobile
       | browsers. I can't play now, but would love to see what it's like
       | with screenshots or something...
        
         | laumars wrote:
         | Yeah. The mobile page is rather hostile. I went to the site
         | with no intention to play on the phone but just to find out
         | more about it. Instead I got turned away.
        
       | zyxzevn wrote:
       | To make the upgrades and building more interesting, it would be
       | more of a challenge when upgraded structures require certain
       | parts. Parts that you have to build yourself.
        
       | oh_boy wrote:
       | Would be good if the website would feature a description and
       | screenshots when accessing it on mobile.
        
       | thurn wrote:
       | What exactly are the limitations that prevent this game from
       | working in Firefox to the point where they need a "please
       | download Chrome" banner? Just curious, I thought WebAssembly and
       | WebGL were pretty competitive these days.
        
         | wtracy wrote:
         | Chrome seems to have a more full-featured shim layer for
         | handling older graphics drivers.
         | 
         | I have a netbook that Firefox won't even try to launch WebGL
         | on. Chrome seems to run WebGL just fine, though shaders with
         | more than about twelve instructions fall off a performance
         | cliff.
         | 
         | (Add one multiplication operation over the limit, and
         | performance decreases twentyfold. Keep the new line, but delete
         | any other single line of code in the shader, and performance
         | goes back to normal.)
        
           | CraftThatBlock wrote:
           | Not sure how true this is, since both Chrome and Firefox use
           | ANGLE as their default WebGL backend (at least on Windows).
           | 
           | https://github.com/google/angle
        
           | Uehreka wrote:
           | That's bananas. I write a lot of complex WebGL shaders, I had
           | never heard that some devices have such a clear (and early)
           | performance cliff.
        
             | Jasper_ wrote:
             | I imagine it's doing the SwiftShader fallback, and the JIT
             | tends to have a few specializations for "quick" shaders.
             | Would be curious what's going on, though.
        
             | Kiro wrote:
             | So what is the issue in this game? I presume the banner is
             | there for a reason. I see a lot of complaints about it and
             | if it really was something easily fixed someone should make
             | a PR.
        
         | Waterluvian wrote:
         | FWIW I can't for the life of me get WebGL to work on Firefox
         | anywhere near as good as it works on Chrome. GTS 1050 on
         | Ubuntu.
        
         | Kiro wrote:
         | This is one issue making my WebGL app unusable in Firefox:
         | https://bugzilla.mozilla.org/show_bug.cgi?id=925025
        
         | Kiro wrote:
         | It could also be more indirect issues not necessary related to
         | performance or rendering. Here are a couple commits for fixed
         | issues in Firefox:
         | 
         | https://github.com/tobspr/shapez.io/commit/d2903f5606d285678...
         | 
         | https://github.com/tobspr/shapez.io/commit/bf8b3253b97fb5d10...
        
         | dom96 wrote:
         | This game appears to be written in JS. I've been working on a
         | browser game recently myself and there is definitely some
         | bottlenecks when it comes JS execution in Firefox, especially
         | on Linux.
        
           | Kiro wrote:
           | Not sure why you're getting downvoted since it's completely
           | true. Making a cross-browser game is hard.
           | 
           | For regular apps it hardly matters but when you need to run
           | complicated logic 60 times a second differences between
           | browsers and even nuances in implementations between
           | platforms (Windows vs Mac, desktop vs mobile) start to
           | matter. And then we have all the rendering and sound caveats.
        
         | Krasnol wrote:
         | GTX 660 on Win10 here while running Elite Dangerous parallel to
         | it: no issues at all.
        
         | vbernat wrote:
         | I am also wondering. On my Firefox, it seems to run smoothly.
        
           | dengr1065 wrote:
           | I completely agree - 99% of the time, I play (and test) the
           | game on Firefox. It looks like it runs there even better than
           | on Chromium. I've tried to tell the main developer that it
           | 100% works, but the badge is still there; you can ignore it.
        
             | Kiro wrote:
             | What device are you on? I have an issue which only happens
             | on Firefox on Mac where WebRender is disabled by default,
             | causing massive drops in FPS. I think it works fine on
             | Windows though.
        
       | ezconnect wrote:
       | Factorio seems like a nice UI to program FPGAs
        
         | narrationbox wrote:
         | Maybe for CPLDs, the abstraction level of Factorio is a bit too
         | low for FPGAs unless you want to work entirely at the
         | transistor level.
        
       | chrisdalke wrote:
       | Really smooth gameplay, nice art style, satisfying sound effects
       | -- Nice work!
        
       | aurbano wrote:
       | Bought the full version and played it for a good few hours -
       | lovely game!
       | 
       | After a while it did feel slightly too similar to work though
       | (programming), as once you unlock copy pasting of structures it's
       | really all about optimising. Still some good fun, and definitely
       | worth the price :)
        
       | [deleted]
        
       | simias wrote:
       | I bought this game a couple of weeks ago and played it for a few
       | hours. The build system is a lot more relaxed than Factorio,
       | since you have no enemies and you have access to an unlimited
       | amount of elementary building blocks (mines, transport belts,
       | splitters etc...) whereas in Factorio you have to assemble
       | everything from elementary ores.
       | 
       | The advantage is that it makes Shapez a lot more chill to play
       | and a lot more forgiving. The inconvenient is that it's also
       | vastly easier and it doesn't have quite as much depth. Once you
       | reach the level 15 or so it starts getting very repetitive, since
       | you're always doing the same thing over and over, just at an
       | always greater scale.
       | 
       | Factorio is better at varying its gameplay, the game really plays
       | differently as you unlock trains, blueprints, drones, etc...
       | 
       | Of course Shapez is a much younger game, so it's unfair to expect
       | the same level of polish and variety.
       | 
       | At any rate there's no reason not to support a nice open source
       | game at this price, so I definitely recommend giving it a try.
        
         | overlordalex wrote:
         | Then I think you'd be excited to know that there is a major
         | content update coming on the 8th of October that adds logic,
         | wires, and some other new components to make the late game more
         | interesting.
         | 
         | That being said, I thoroughly enjoyed the first few hours and I
         | feel like I got my monies worth even without the upcoming
         | update
        
           | simias wrote:
           | Interesting, I'll be sure to try it out.
           | 
           | And yeah I actually found the first couple of hours actually
           | more fun than Factorio (at least once you know how Factorio
           | works) because you get started much faster. But yeah, Shapez
           | loses steam a lot faster too, while Factorio keeps ramping
           | up.
           | 
           | I think the main problem of Shapez is not so much that there
           | aren't logic or wires though, it's that (with the exception
           | of blueprints) you only build disposable components. In
           | Factorio with the exception of science packs every production
           | artifact can be useful on its own which means that you build
           | to build to build to build... Whereas in shapez once you're
           | done making your "blue stars in red squares with a purple
           | circular corner" factory then you can forget about it
           | completely.
        
             | umvi wrote:
             | > Whereas in shapez once you're done making your "blue
             | stars in red squares with a purple circular corner" factory
             | then you can forget about it completely.
             | 
             | I started making generic "color factories" and "slicing"
             | factories that could do things at scale and then just
             | deleting the inputs/outputs and hooking them up to
             | different sources to get the desired outcome.
        
         | naikrovek wrote:
         | Factorio is a lot more fun for me when I turn enemies off
         | entirely. It stops being a game of extreme panic with that
         | single change, and you can focus on resource collection and
         | construction.
         | 
         | (Valid responses to that approach are valid. I'm not going to
         | try to predict what everyone will say and address those
         | responses before they come. Or at all.)
        
       | mdaniel wrote:
       | $ git clone https://github.com/tobspr/shapez.io.git
       | Receiving objects: 100% (16655/16655), 534.19 MiB | 2.09 MiB/s,
       | done.
       | 
       | wowzers, 535MB for an in-browser game? But it seems it's the
       | res_raw, and the sounds subdir specifically, that's the source of
       | pain:                   168K res_raw/sounds/sfx/dialog_ok.wav
       | 236K res_raw/sounds/sfx/place_building.wav         280K
       | res_raw/sprites/belt/built         352K
       | res_raw/sounds/sfx/destroy_building.wav         728K
       | res_raw/sounds/sfx/badge_notification.wav         1.2M
       | res_raw/sounds/sfx/level_complete.wav          17M
       | res_raw/sounds/music/menu.wav          44M
       | res_raw/sounds/music/theme-short.mp3          80M
       | res_raw/sounds/music/theme-full.mp3
       | 
       | With a 535MB clone size, how many times have those files
       | changed?! It seems LFS was jettisoned with the explanation "Get
       | rid of lfs files"
       | https://github.com/tobspr/shapez.io/commit/f12cae7bd3fc3b51f...
       | so there goes my suggestio for how to keep game binaries outside
       | of the clone pain
        
         | hughes wrote:
         | What do you suggest here? Git surgery to rebase through all
         | 1700 commits looking for large files, or blowing away the repo
         | and starting from scratch? Neither seems particularly appealing
         | for the benefit of saving a few hundred megabytes of
         | developers' disk space.
        
       | paulgb wrote:
       | For a game that's open source and written in JavaScript, it's a
       | shame that the packaged, downloadable version is only available
       | through Steam on Windows. I'd pay the $5 for a DRM-free Mac
       | version.
        
         | MrGilbert wrote:
         | You can get a DRM-free version from itch.io [1]. There is also
         | a statement regarding MacOS, which reads:
         | 
         | > Mac users: I currently don't do builds for your OS since it
         | got much harder with the recent policy changes from apple. Feel
         | free to make a PR!
         | 
         | [1]: https://tobspr.itch.io/shapezio
        
         | opencl wrote:
         | It's also available for Linux. If the developer doesn't already
         | own a Mac and have a paid Apple developer account they are
         | probably not going to make back their money buying those things
         | in order to make a Mac build.
        
           | paulgb wrote:
           | That's a very fair point! I didn't realize there was a Linux
           | option.
           | 
           | In that case, I'd also pay to be able to unlock all of the
           | features on the web version.
        
           | SXX wrote:
           | Developer can certainly make build using Travis CI if someone
           | decide to test it and contribute build configuration. It's
           | open source after all.
        
             | mdaniel wrote:
             | The latest (as of this comment) change to package.json was
             | a PR to turn on macOS builds:
             | https://github.com/tobspr/shapez.io/pull/687 but unknown if
             | the reservation was more political than technical
        
           | HenryBemis wrote:
           | There are a few sites that show step by step how you can run
           | Mac on a VMWare on a PC. Yes it disregards some T&Cs but the
           | dev will avoid the $1000 apple-tax.
        
       | jasonjayr wrote:
       | Mindustry is another great open source game with factory-building
       | mechanics to get upgrades.
        
         | bryan0 wrote:
         | One great thing about mindustry is you can play on mobile.
         | Shapez says "mobile coming soon" and Factorio would be just
         | about impossible to play mobile
        
         | brylie wrote:
         | https://mindustrygame.github.io/
        
       | umvi wrote:
       | I love when a game unlocks a new genre that further refines and
       | perfects the formula... Dark Souls, Factorio, etc.
        
         | TheTacoMerchant wrote:
         | Well, to be technical, it says in the Factorio about page that
         | it's heavily inspired by a Minecraft mod called Buildcraft, so
         | you could trace the genre back to there.
        
           | ejj28 wrote:
           | That's super cool, I never knew this but I always thought
           | that it was very similar to Buildcraft.
        
           | slim wrote:
           | minecraft was inspired by infiniminer
           | 
           | https://notch.tumblr.com/post/227922045/the-origins-of-
           | minec...
        
             | Kiro wrote:
             | Buildcraft is a Minecraft mod that is completely different
             | from the vanilla game. Saying Factorio can be traced back
             | to Infiniminer is a stretch.
        
       | lloydatkinson wrote:
       | "I'm sorry but this game is not available on mobile devices"
       | 
       | What a short sighted approach to making a website. Just because I
       | am on a phone I don't get to even read about the game on the
       | site? Fuck me for using a mobile device I guess.
        
         | Kiro wrote:
         | There is no website. What you see is a warning in the game. If
         | someone is up to the task there's room to render more
         | information for mobile users here:
         | https://github.com/tobspr/shapez.io/blob/5a3807883e44640bb8a...
        
       | raldi wrote:
       | Not even a screenshot for visitors on mobile.
        
         | jiriro wrote:
         | Exactly. The impression was .. What a complete crap?!
        
           | jiriro wrote:
           | To clarify. The game looks terrific!
           | 
           | The "what a complete crap" belongs _only_ to the shapez.io
           | (mobile) home page. I just can't believe that it was designed
           | _this_ way.
        
             | Kiro wrote:
             | I presume no-one has gotten around to fix it yet. Maybe
             | they didn't have any screenshot that was a good
             | representation when they put up the mobile warning. It's
             | not going to happen magically by itself so feel free to
             | send a PR: https://github.com/tobspr/shapez.io/blob/5a38078
             | 83e44640bb8a...
             | 
             | My point is that this is an open source effort. It's not
             | like someone intentionally omitted a screenshot to annoy
             | people. It needs a contributor who cares about changing the
             | mobile prompt for it to be fixed.
             | 
             | I have a similar useless prompt in one of my open source
             | games and it's just a boring issue to fix and I rather
             | focus on the game itself.
        
           | Kiro wrote:
           | It's a game, open source and free. This is not some SaaS
           | trying to maximize conversions.
        
             | laumars wrote:
             | Doesn't mean the mobile page couldn't be improved upon.
        
               | Kiro wrote:
               | No, but it doesn't warrant a "What a complete crap?!".
        
               | laumars wrote:
               | True true
        
       | thomasikzelf wrote:
       | Great game. In about 4 days the wire update will be released,
       | which includes logic gates into the game:
       | https://shapez.io/wires/
        
       | Donckele wrote:
       | Does anyone know why ffmpeg is a dependency?
        
       | thih9 wrote:
       | Offtopic, I've opened the game on my macbook pro 15" 2018, the
       | one with touchbar. I picked the web version and opened it in
       | chromium. After about 10 minutes the laptop got unbearably hot
       | and the fans were audible. This is a popular problem so I wanted
       | to gather more data, are others experiencing thermal issues now
       | as well?
        
       | shapeofmyheart wrote:
       | Fun for a while, but quickly devolves into make work.
        
       | Arkdy wrote:
       | I gave up on Factorio when I realized that if I was gonna think
       | that way, I might as well just write some code and make something
       | tangible.
       | 
       | But if it's just shapes, and I don't have to memorize as many new
       | concepts, maybe the load will be light enough to be relaxing like
       | _Mini Metro_.
        
         | afterburner wrote:
         | Also, Factorio looks ugly as sin.
        
         | dexwiz wrote:
         | I have put about 100 hours into the game and hitting about that
         | same wall. But I am now learning sequential circuits, because
         | my familiar algorithms and constructs don't map well to the
         | signal system in the game. So even though it's programming,
         | it's a different kind.
         | 
         | The refactoring thing is up to you, it's pretty easy to give up
         | on a base and build one next door. Space is pretty much
         | infinite.
         | 
         | Stretching your brain in similar but new ways in not always a
         | waste.
        
         | adkadskhj wrote:
         | I found it hilarious how much Factorio and Satisfactory tired
         | me out in the same way that programming does.
         | 
         | I love them, but the difficulty curve that they give the player
         | just strikes too many similarities with my day job. I feel like
         | i want to play a Satisfactory-lite. Something that gives me the
         | fun of programming without the complexity. Help me build an
         | abomination of complexity that i don't have to maintain.
         | Refactoring shouldn't exist in this hypothetical game,
         | maintenance should never be a concern - just forward movement
         | and the joy of unburdened chaos.
        
           | Dauros wrote:
           | > Refactoring shouldn't exist in this hypothetical game
           | 
           | Without refactoring the factory planning phase would be more
           | difficult since I don't want to fill the best places on the
           | map with unmaintainable, non scalable factories. Refactoring
           | should be very easy, e.g. like in Factorio with construction
           | bots: just press ctrl + x and the bad part of the factory is
           | gone.
           | 
           | If you want to build an abomination, try SeaBlock mod [1] for
           | Factorio. You don't have to refactor anything, space and
           | resources are infinite, so just build a new factory next to
           | the old one after you research a new tier of technology.
           | 
           | [1]: https://mods.factorio.com/mod/SeaBlock
        
           | scotty79 wrote:
           | I used Factorio to train myself to overcome psychological
           | barriers to progressing my projects. It's easier to do it in
           | Factorio because Factorio is more engaging and problems with
           | overwhelming chaos and complexity and legacy barriers to
           | progress and the needs for refactoring are the same.
        
           | tomc1985 wrote:
           | I've heard Inifnifactory is like Factorio lite
           | 
           | You know what's funny? I'm a programmer and I think the same
           | of XCOM 2. It's a game where everything's always on fire,
           | everything always goes wrong for you to fix, and there's
           | never enough time to sit back and relax. It was a game about
           | grit and perserverance against overwhelming odds... and it
           | felt exactly like my most previous job as as a Senior SE at a
           | small startup.
           | 
           | No fucking thank you.
        
           | theptip wrote:
           | Have you tried any of the Zachtronics games? Magnum Opus,
           | Spacechem, etc?
           | 
           | Still scratches the "programming puzzle" itch for me, still
           | complex in the later stages, but more bite sized problems so
           | no refactoring/maintenance to speak of (unless you want to
           | try reimplementing to beat your previous score).
        
             | mdaniel wrote:
             | I believe it was spacechem that made me long for testable
             | components in the game, since the stage was conceptually
             | getting several submodules to work, and then orchestrating
             | their outputs into the final product
             | 
             | When I started longing for unit testing in a game, that was
             | the end for me
        
       | tomc1985 wrote:
       | It broke the back button and insulted my browser....
        
       | MauranKilom wrote:
       | Small feedback:
       | 
       | I did not initially realize that the upgrades are different from
       | the "main quest" and was wondering why all my upgrades required
       | parts that I could not produce. Not sure if it could be clearer
       | than having the thing I was missing smack-dab in the middle of
       | the screen, but just sharing some experience.
        
         | simias wrote:
         | There's some overlap between the upgrade and the "main quest"
         | shapes (often main quest shapes enter upgrade recipes, as not
         | to be immediately useless as the objective is reached). The
         | current objective is always displayed on the left of the screen
         | (and you can pin additional recipes there if you want).
        
       ___________________________________________________________________
       (page generated 2020-10-04 23:00 UTC)