Silicon Zeroes

Silicon Zeroes

View Stats:
ltron Nov 28, 2017 @ 11:31am
How Realistic is This Game?
I was just wondering out of interest how close this game is to computer engineering in the real world. If you're reasonably good at the game might that be an indicator that you have at least some potential to be good at real computer engineering? Are there any experts who can chime in?

I'm enjoying the game and am around half way through the third board. I've always been interested in computer hardware, had my struggles with some of the puzzles so far but I get there in the end.
Last edited by ltron; Nov 28, 2017 @ 11:31am
< >
Showing 1-15 of 19 comments
Jackeea Nov 28, 2017 @ 12:46pm 
It's... kind of realistic!

  • Each module has their own propagation delay which is analogous to real life ICs

  • Registers can be used to increase latency but massively reduce clock time/increase clock speed/etc

  • When you get onto board 4, you start getting into things such as reg hazards and parallelism - real world concepts!

  • However, a few things aren't so real. Figuring out if a number is odd ends up being a HUGE slog (you can't just compare the last bit)

  • There's no "test if negative" module which would be trivial if working in binary - just check the sign bit

  • There's no working with electricity, transistors, logic gates... it's all kind of high-ish level. Think working with ICs!
ltron Nov 28, 2017 @ 2:09pm 
Originally posted by Jackeea:
It's... kind of realistic!

  • Each module has their own propagation delay which is analogous to real life ICs

  • Registers can be used to increase latency but massively reduce clock time/increase clock speed/etc

  • When you get onto board 4, you start getting into things such as reg hazards and parallelism - real world concepts!

  • However, a few things aren't so real. Figuring out if a number is odd ends up being a HUGE slog (you can't just compare the last bit)

  • There's no "test if negative" module which would be trivial if working in binary - just check the sign bit

  • There's no working with electricity, transistors, logic gates... it's all kind of high-ish level. Think working with ICs!
That's interesting, thanks. So what do you think of the difficulty level in terms of preparing you for an introductory course on the real thing?
Node* n; Nov 28, 2017 @ 4:00pm 
It´s really good. Not only it is a good primer for the basics of electronics and discrete math/logic, but it also pretty much encapsulates the day to day workflow of an engineer just fine.
r4m0n Nov 29, 2017 @ 7:43am 
I'm probably too angry with the absurd puzzle design on this game to be 100% objective on this, but I'll give a shot.

By themselves, the individual parts are reasonably realistic, with the main exception being the '-' state, which has no place in low-level electronics we are supposed to be using.

The higher-level problems are also reasonably realistic, though probably 2/3 of all puzzles are meaningless tasks that don't make much sense in the real world. That much is fine, sometimes you have to build those in the real world as well. I'd prefer to have have seen a full ALU design else than a "full" CPU with half a dozen instructions, really.

Now, where this game really screws up is making the previously mentioned easy tasks in real digital electronics absurdly complicated, by artificially limiting the parts available. Why the hell have you make a '>' operator without access to even subtraction? That's just stupid. As previously mentioned, testing a number signal or parity is a lot more trivial in real electronics than addition.

So overall, while the parts and 1/3 of the puzzles are reasonably realistic, anything you produce in it is just a meaningless mess of visually indistinct parts, with no relation whatsoever with what a real digital electronics circuit or piece of code looks like.

If you're looking for experiences that mirror closely how things operate in real life, this game goes quite low on the list. For something closer to reality in higher-level electronics, stick to Shenzhen I/O, or, if you're looking for something lower level, check the older Zachtronics game Kohctpyktop, which to this day is still the most realistic silicon-level game ever made.
Jackeea Nov 29, 2017 @ 8:51am 
A bit off-topic, but you do understand that the premise of a puzzle game is to work around restrictions to find inventive solutions? Which is what you're complaining about?
r4m0n Nov 29, 2017 @ 9:05am 
Originally posted by Jackeea:
A bit off-topic, but you do understand that the premise of a puzzle game is to work around restrictions to find inventive solutions? Which is what you're complaining about?

If I go to the cinema to watch a Science Fiction movie and the protagonist starts casting fireballs, I'm quite a bit annoyed, even though I like Fantasy just as much myself.

If I buy a game called Silicon Zeroes that's supposed to be a puzzle game based on low-level digital electronics, has a CPU design in it and never mention the word 'carry' in it a single time, I'm a little more than a bit annoyed.

I'd be happier if the whole facade of this being anything related to real world electronics were removed and we were experimenting with random bits of alien technology.
Last edited by r4m0n; Nov 29, 2017 @ 9:08am
Jackeea Nov 29, 2017 @ 11:57am 
"Build complex electronics from a variety of simple components, like Adders, Latches and Multiplexers."

The screenshots show some magical module that reads from memory, as well as one that takes in "BMEM:" and turns it into 4 seperate instructions.

The main video on the steam page shows you working with those adders, latches, comparators and whatnot.

The game doesn't claim "okay, here's transistors and a spool of copper, make a CPU". You're shown from the outset that you're not working with logic gates and capacitors. The game literally screams at you "This isn't a 100% realistic CPU simulator. You literally have a module that turns a string and a colon into a list of instructions magically". You're not shown low level stuff. The trailers, the description, everything... all tell you that you're working with low level stuff. But you're not working with realistic low level stuff.

Also, you could have tried the demo first before being annoyed that the game isn't what you thought it was!
r4m0n Nov 29, 2017 @ 12:54pm 
We're getting WAY out of topic here. This thread is about how realistic the game is, not the reasons I like or dislike the game. So to end that: I *like* the game. The story is crap, but most of the puzzles of the first 3 chapters are pretty good overall. But there's one thing I absolutely despise in it, and that's locking up mechanics after you introduce them.
Jackeea Nov 29, 2017 @ 1:04pm 
The point of puzzle games is to be a, well, puzzle. If you were given the multiply module for the puzzle "Multiply", and given a "greater than" module for "Greater", it wouldn't be much of a game.
r4m0n Nov 29, 2017 @ 1:12pm 
Originally posted by Jackeea:
The point of puzzle games is to be a, well, puzzle. If you were given the multiply module for the puzzle "Multiply", and given a "greater than" module for "Greater", it wouldn't be much of a game.

<sigh> Fine, let's continue the derailment.

What about having the multiply block *after* you have solved multiply, and a comparison block *after* solving Greater? *THAT* is the problem. The block architecture of the game make it impossible to make a generic comparison test, so gives us one after we make the horrible, slow, clunky one. And for **** sake, why the hell most of the puzzles don't even have subtraction?

If the point isn't to build a tool library and apply it in the future, just give me a NAND port and get out of my way.
Last edited by r4m0n; Nov 29, 2017 @ 1:15pm
Jackeea Nov 29, 2017 @ 1:20pm 
The point is that you rarely need a multiply block after solving Multiply (only Quadruple explicitly requires it but "doesn't" give you it), nor do you need a comparison block after solving Greater. The reason you're rarely given subtraction is because you never need it (just add a negative number to decrement values).

Show me where you desperately need modules that were stripped away from you and I'll consider this argument.
r4m0n Nov 29, 2017 @ 1:28pm 
Just a couple of examples from the top of my head, I could go over each puzzle and show more examples.

Multiply would have better solutions with subtraction. Multiple puzzles do. You can replicate addition with subtraction, the reverse isn't true. Yes, you can subtract fixed numbers from variables with addition, but you can't subtract a variable from another without either the subtraction module or multiplication (which they taunt you with in 1 or 2 puzzles and never more).

Division comes right after Greater and beneficts greatly from a comparison operator. Also would be very helpful to have multiplication here.
Jackeea Nov 29, 2017 @ 1:42pm 
You can replicate subtraction with addition; the only time you need subtraction in Multiply is to decrement a variable - which adding -1 achieves. What's your solution to Multiply that needs subtraction by variable values?

The point of Divide is "okay, so you can implement a greater than! Now fiddle around with that implementation". If you were allowed a comparison operator, it'd literally be Multiply except with an extra module or two.
r4m0n Nov 29, 2017 @ 2:08pm 
A few points, if they haven't become clear yet:
1 - Of course you can implement all the puzzles with whatever was given, or they wouldn't have solutions...
2 - We are talking about having to fiddle all the time with stuff you've already developed in the step before else than pack it up and reuse as a module, which returning to the thread topic, is unrealistic. Let's also mention that the Palette is a terrible way to transfer designs around. Half of the later puzzles consist into you walking into them, quitting to the menu, going to the previous puzzle, adding to the Pallete whole, quitting to menu, loading the new puzzle, and finally pasting it from the Palette...

Originally posted by Jackeea:
You can replicate subtraction with addition
I think you haven't understood what I've said before. You CAN'T build '-' from '+' alone, we don't have a negation operator and we don't get to use multiply. In the case of the Multiply puzzle, we don't get much better solutions with just subtract, though we could get some nice optimizations with comparison operators.

Originally posted by Jackeea:
The point of Divide is "okay, so you can implement a greater than! Now fiddle around with that implementation". If you were allowed a comparison operator, it'd literally be Multiply except with an extra module or two.
The point of implementing something in real life is so you don't have to keep doing it over and over again. Yes, division becomes a trivial problem with the comparison operator, WHICH IS THE POINT.
Last edited by r4m0n; Nov 29, 2017 @ 2:09pm
Jackeea Nov 29, 2017 @ 2:42pm 
You can pack things up and reuse them, just not as a specific module. You say that the pallete is awful, but it'd be identical if you could pack things up; the designs would just be a tad smaller than they are.

"Half of the later puzzles consist into you walking into them, quitting to the menu, going to the previous puzzle, adding to the Pallete whole, quitting to menu, loading the new puzzle, and finally pasting it from the Palette..."

If you could bundle them as a module, then half of the later puzzles would consist of you walking into them, quitting to the menu, going to the previous puzzle, bundling it as a module, quitting to menu, loading the new puzzle, and finally pasting it... Literally zero difference except a bit of space.

"In the case of the Multiply puzzle, we don't get much better solutions with just subtract"

Then why need it? You say that you can get nice optimizations with it, but you can get nice optimizations with the multiply module, too. You could also get nice optimizations with many modules. The reason that you're not allowed to use the Subtract module is to nudge you in the direction of "oh, we can decrement numbers using + (-1)!" which is a big problem in Multiply.

"The point of implementing something in real life is so you don't have to keep doing it over and over again."

Yes, correct

"Yes, division becomes a trivial problem with the comparison operator"

Mmhm, it is. You just created one in the previous puzzle! So use it!
< >
Showing 1-15 of 19 comments
Per page: 1530 50