Settings

Theme

A video game where you are an operating system

plbrault.com

662 points by drfreckles 3 years ago · 125 comments

Reader

dextersgenius 3 years ago

You know what would be cool? A defragmentation game. It's basically Tetris but in a circular layout, and you get more points the better optimized it is - with frequently used data blocks towards the outer tracks and old/archive file types towards the inner tracks.

I always enjoyed watching graphical defragmenters do their magic back in the day and would unironically love to play a defragging game.

  • mos_basik 3 years ago

    Wilmot's Warehouse is basically this.

    It's top-down 2D. You are alone in a large, empty warehouse. At regular intervals, a truck drops off a load of assorted objects at the back, and a few people ask you for some specific objects at the counter in front. Your role is to arrange the objects in the warehouse such that you can fill the requests in the least amount of time, and you can do this in any way that works for you (by color, function, name, etc).

    As the game goes on, the truck drops off more and more different kinds of objects (usually ones that fit into more than one category), and the requests get more and more complicated.

    At the end you get a time-lapse of the whole warehouse over the whole game and you can see your strategy evolving over time.

    Pretty well executed and simple. Heard about it from one of its devs in a HN comment actually.

  • MatthewCampbell 3 years ago
    • bibanez 3 years ago

      Cool proof of concept... not a fun game

    • registeredcorn 3 years ago

      I like the idea, but I noticed that there seems to be some kind of issue with it registering clicks. I don't know if I'm just sometimes clicking slightly outside of the hitboxes or what, but I find myself "dragging" stuff by accident when the game doesn't register that I "dropped" whatever object I had selected.

    • will5421 3 years ago

      I can’t scroll down to see the rest of the lines

  • runnerup 3 years ago

    https://classic.csunplugged.org/activities/community-activit... (see also: https://www.itgsnews.com/the-defragmentation-game-lesson-pla... )

    https://boardgamegeek.com/boardgame/376284/defrag

    https://www.defraggame.com

    There used to be a few old ones in the day that I recall trying which were a bit more direct simulacrums than these. Not sure if anyone else might find them!

  • etrautmann 3 years ago

    I felt that way about PCB routing and layout when I was building electronics.

    • fragmede 3 years ago

      You're talking about Shenzen.io by Zachtronics, aren't you

      https://www.zachtronics.com/shenzhen-io/

    • ghodith 3 years ago

      Might make a good career then.

      • krasin 3 years ago

        > Might make a good career then.

        Is it, though? As much as the autorouters "known" to not work, I expect that a working one is less than 10 years away. Even for PCIe-level complexity.

        • jakear 3 years ago

          The "career" in question could be autorouter developing.

          That said, I'd suspect it's similar to CS: autoprogrammers are "known" to not work. If you can understand and articulate the business logic in a concise way, understand and articulate all the components of the system and how they may interfere with each other, understand and articulate the system's nominal and practical input ranges, etc., then sure something might autoprogram the code for you, but it's not the autoprogrammer doing the real work.

        • junon 3 years ago

          Highly doubt that, and routing is only part of the puzzle.

        • RF_Savage 3 years ago

          But will the autorouted pcb pass EMC?

      • etrautmann 3 years ago

        somehow I ended up in Neuroscience, where I get to use the electronics skills occasionally, but even that is mostly focused on ASIC design now.

        • ghodith 3 years ago

          Well now ASIC design is an even more niche EE application. How does someone in neuroscience end up needing those skills? Did you Major in EE in undergrad?

          • etrautmann 3 years ago

            Yep, undergrad in EE. I don’t do our semiconductor design but interface with teams of engineers to make tools for biology.

  • Sparkyte 3 years ago

    Lets up the stakes and use a real drive as part of the sacrifice to the game.

  • RheingoldRiver 3 years ago

    it's not really related in concept, but I feel like playing various puzzles with pentominoes would feel a bit similar to this, as it's spatial reasoning puzzles. I adore pentominoes and spent a large portion of my childhood playing with them, recently rediscovered them as an adult.

    • joveian 3 years ago

      For me it was Tangrams, which I've only seen one somewhat odd (in a "feels outsourced" kind of way) computer game (not that you can really improve on the physical version). I first thought you said pantomimes, which could also be interesting :).

      • RheingoldRiver 3 years ago

        Definitely played with tangrams too, and funnily enough, I had a bunch of animal-shaped puzzles that I guess you could call pantomimes haha. If you enjoyed tangrams enough, I can't recommend enough picking up a set of pentominoes - definitely agree that a physical set is the right call. There's 12 total so you have 60 individual squares, (pentominoes are 5-square tiles), so popular figures are 6x10, 5x12 (a bit harder than 6x10), and 3x20 (very challenging). You can also get cubes and do 2x5x6 (really hard) or 3x4x5 (even harder).

        Recently though, I've been doing 8x8 - 4, which means picking 4 squares to remove from an 8x8 square and then filling in the rest (I have some wooden boards i picked up from an etsy seller but you can just as easily trace the outline on paper and color in the forbidden cells, which I've also done). Which has been delightful!

  • snvzz 3 years ago

    It is still fun to run the real thing[0].

    0. https://www.nongnu.org/free-defrag/

  • 2Gkashmiri 3 years ago

    windows 98 SE had the coolest disk defragmentation animation. it felt wrong when it just never reappeared.

    • ForOldHack 3 years ago

      I found jkdefrag, and it was dot based instead of block based. Now that became the coolest - until it was discontinued... Now hard to find... But, mydefrag has become the best defragmenter.

    • iforgotpassword 3 years ago

      It looked exactly the same as 98 and 95, there was nothing changed.

  • reaperducer 3 years ago

    Sort of the opposite of Breakout.

smountjoy 3 years ago

I like to imagine that, as in Ender's Game, the top-ranked player is unknowingly allocating memory for some critical infrastructure somewhere.

  • shostack 3 years ago

    Getting Severance vibes.

    • doctorwho42 3 years ago

      Oh man,(spoilers) my pet theory is that the 'work' is actually them self-adjusting their implants. Remember they describe a number as a 'feeling' and some numbers 'feel' wrong. And we see behind the scenes that they are testing the main character with the psychiatrist/wife to see if it breaks the 'chips control/severance'.

      They are simply engineers perfecting the implants so that they operate better.

      • aspenmayer 3 years ago

        I think that the numbers are in-house red team fuzzing attempts against the implant, with the goal being lower mean time between failures of the implant. It could also represent a debugger IDE, with the “spooky” numbers that we see jumping around onscreen on the workstation representing some kind of bad data that doesn’t pass tests that the normal numbers onscreen do pass.

        I’m reminded of the in house help desk tech support that someone calls for in the film Vanilla Sky, analogously.

    • flopsamjetsam 3 years ago

      Just started watching this, and I have no real idea what's going on :)

  • SilasX 3 years ago

    “To compete your registration, tell us whether this image has a stop sign. And hurry it up, our self driving car needs this.”

    https://xkcd.com/1897/

Waterluvian 3 years ago

I’m half a sentence into this website and I’m already completely on board.

One of the best ways to grok a problem like this. “Hey now you’re the memory manager. Good luck.”

I love this idea so much. I bet it could be dressed up in a cute way where it’s a take on the restaurant management sim. But the restaurant is a computer and your customers are the resources.

Human Resource Machine was great this way. I remember at one point thinking, “wait, did I just make a linked list?”

  • yung_steezy 3 years ago

    Human Resource Machine is great! My wife ended up having a career change into coding after finishing it and the sequel

mamborambo 3 years ago

In fact human living is basically a type of operating system, as we all juggle on a daily basis tasks, resources, input/output, storage, cache, and states. The concept of dashboard is an essential operating system tool, and on a human scale it is basically your bank, tasks, calendar and inboxes. Plenty of "self improvement" concepts then translate neatly into operating system best practices, such as using FIFO or LIFO to manage allocations, planning ahead to break deadlock situations, managing parallelism, and JIT garbage collection etc.

  • isolli 3 years ago

    It reminds me a bit of this book, which I recommend: Algorithms to live by.

    [0] https://algorithmstoliveby.com/

  • codetrotter 3 years ago

    Humans often like to compare the brain to technology.

    For example, when gears were high tech there were people that drew heads with gears turning inside of the head, likening the act of thinking to the motion of gears. And I think in cartoons etc we still see this sometimes.

    :D

    • codetrotter 3 years ago

      Also relevant: “How an Algorithm Feels from Inside” (2008)

      https://www.lesswrong.com/posts/yA4gF5KrboK2m2Xu7/how-an-alg...

    • duckmysick 3 years ago

      Yes, I remember those. And later, a light bulb flashing inside of the head when the character has an idea.

      • TeMPOraL 3 years ago

        Gears did something, they stood for purposeful activity. A light bulb illuminates its surrounding, letting you see in the dark - an apt metaphor for having an idea, seeing something that previously couldn't be seen, etc. In both cases these are metaphors, not actually imagining the brain running on gears or light bulbs.

        Computer analogies are different. These are direct, not metaphorical, and rightfully so, because computation is fundamental and not just a piece of technology. Computer science stands at the intersection between mathematics and physics.

  • sorokod 3 years ago

    Possibly our autonomic nervous system is closer to what we think is an OS. Abstracts over the low level operation of the wetware

    https://en.m.wikipedia.org/wiki/Autonomic_nervous_system

  • rolisz 3 years ago

    And civilization is a distributed operating system! (I heard this from Joscha Bach)

  • white_dragon88 3 years ago

    What is the operating system analogy for whacking off? Clearing the cache?

    • sva_ 3 years ago

      Luckily our computer hardware can Not self-repruduce yet.

      • codetrotter 3 years ago

        But computer software can. Worms, viruses, etc

        Heck, even the operating system could reproduce in some sense. If the operating system on one machine is set up to regard itself as DHCP server, it would begin responding to DHCP requests in the local network. And in the DHCP response it can provide network boot instructions telling other computers to network boot a copy of the OS image of itself that it is serving. Any other computer that is configured to net boot could then boot the OS. Of course most computers are not set up to net boot out of the box. But on a network where they use net boot already you might be able to race their own DHCP server and get some of the clients to boot your OS image instead.

    • engcoach 3 years ago

      Sending an email to yourself

    • sorokod 3 years ago

      Garbage Collection

fragmede 3 years ago

FWIW, this was posted to HN on Sept 30th* and gained zero traction, with even the poster deleting their own comment.

As I posted there, it's a really good concept. Add in levels (eg microcontroller in $interesting_product, is on a smartphone, load balancer or api box for a SaaS company), with the levels letting you introduce concepts one at a time, and then you've got yourself a college grade operating systems class. Throw in a bit of programming for automation and dig deep into OS cache algorithms (LRU baby!) and that's something I could have finished before I graduated high school.

* https://news.ycombinator.com/item?id=36938032

dxdm 3 years ago

Awesome idea, but it's too hard for me. In normal mode, I'm already clicking like a maniac in the first 20 seconds of the game, and red processes accumulate, even though I'm cycling out the blocked ones. I had one process killed because no IO event ever came for it. Easy mode seems to be the same, or actually even harder. I don't even get to the point where memory becomes an issue, but at this pace I don't want to.

Maybe I'm getting old, and I get that being an OS is stressful, but so is my job. I don't need another one!

With more forgiving pacing that starts out easy and then increases to keeps just outside of my comfort zone, this could be a very fun game.

  • bloggie 3 years ago

    I had this same problem, where a process gets killed while waiting for an IO event that never came. All of the killed processes were killed in this state! Seems that there's no way to prevent this if it happens.

  • aio2 3 years ago

    That's what computers are for, doing the repetitive stuff without freaking out for you :)

    • cptnapalm 3 years ago

      Maybe write a program that plays the game for you. It could be called You're the Operating System Operating System.

keyle 3 years ago

Games like these have a strong future.

Basically games that innovate beyond what a game engines like Unity or Unreal can offer are, by design, going in a direction that is more likely to succeed than anything we see come out these days...

Making super nerdy games that are so far off the field the engines users can't touch you, puts you in a different league; even if your game looks like a dog's breakfast, as long as it's fun and usable.

Indie games are dead, in the sense that they were indie games 5 years ago. This, is the new indie games now. GG. (ref: failed indie developer with 2+ commercial titles).

It's a shame that Zachtronics stopped, they've always been ahead of the game.

  • duxup 3 years ago

    Maybe I'm missing something in your post but I find the same types of games have been popular for many decades now. I'm not sure those are any less likely to succeed, or that "You're the OS!" is more likely to succeed.

    And I'm pretty sure you can make this game in Unity...

    • cornel_io 3 years ago

      Not only could you make this in Unity, it'd probably be easier than in Pygame by a good margin.

      Game tech is basically universal for zero-graphics games like this, it's 100% "business logic". If you have to fight with the UI/display system for even a moment to make a game like this, then you're probably either using a library without enough features (which, ahem...Pygame, yeah...) or you just don't know the system well enough to be efficient.

      • utucuro 3 years ago

        So, as someone with considerable Python knowledge but no gamedev knowledge, what would your suggestion be for me?

        Specifically, I want to have some fun developing a few game ideas into at least prototypes. I never really had time to do a proper analysis of Pygame, Godot, Unity etc.

    • pests 3 years ago

      I'm guessing they are used to the default Unity 3D scene and player controller.

      Unity can create any type of game. In the end it's just helping you push vertices and shaders around.

      I do agree Unreal has it's roots more in 3D character shooters. A lot of assumptions built in but you can still work around them there too.

    • zogrodea 3 years ago

      I remember, as a child, having fun with a Yoshi (from Mario) fangame that pretended like he was in Windows 95/98. It might have been this one. https://youtu.be/AwZfivyZ20c?t=184

  • mcluck 3 years ago

    There's no reason this couldn't have been built in Unity or Unreal. You can build literally anything (within the limits of computation) in those engines.

  • dangero 3 years ago

    In what way does this game go beyond what Unity can offer?

  • dragonwriter 3 years ago

    > Basically games that innovate beyond what a game engines like Unity or Unreal can offer are, by design, going in a direction that is more likely to succeed than anything we see come out these days

    It depends what you mean by “succeed”. If you mean, “turn a profit”, probably not. Games that are far off the trend supported by engines optimized for what the market is looking for probably will fail more often than games within it.

    If you mean, “become a surprise, breakout, hit that changes the direction of gaming”, yes, the extremely low probability of that happening in either case is probably higher for games that are outside of the box.

    Better chance of a home run, but also better chance of getting out, and less chance of getting a hit.

  • PurpleRamen 3 years ago

    Not sure what you are talking about. Nerdy Games have existed all the time, and they usually not very successful because they are so nerdy. In the last years, we also had a number of tech-nerdy games, but none of them could be called a hit. They probably make their game, but as the audience is naturally small, their ceiling for success is limited. And I don't see this changing in the future. It's probably the opposite, as the younger generation seems to become less nerdy, and more distanced from low-level topics and tech.

infogulch 3 years ago

As the game gets harder with higher utilization you should be able to "buy" upgrades with tokens that you "earn" for hitting milestones or performance targets that automate small mundane tasks. Kinda like the universal paperclips game. Then you throw pathological workloads at the user that thwart the simple automations so you have to unstick it manually. So the user buys upgrades to slightly better automations, thwarted again by slightly more pathological workloads... Boom game progression loop.

markus_zhang 3 years ago

And very soon you will provide a scripting language that allow the OS to automate things, right?

Oh I see...

shove 3 years ago

Very cool. Reminds me of the game posted last week (defcon thing?) in which Tetris-block-like squares containing op codes fall and the user has to position Rube Goldberg sequences that shuffle the biggest possible number into the “score” memory register

CaesarA 3 years ago

In idea, this reminds of the old game Core Wars and its special "Red Code" programming language.

Terr_ 3 years ago

This seems related to a larger genre of "hectic customer service" games, often involving idiosyncratically demanding customers at a restaurant limited by time and resources.

In fact, several of them have been rather explicit about the idea of humans subordinated into thankless jobs for machines, considering titles like "Sushi For Robots" or "Human Resource Machine".

thisOtterBeGood 3 years ago

Found a small bug i think. If i assign a process to the cpu just when it dies (during the fly anmiation i guess) the game freezes (Cannot click any buttons anymore). https://i.imgur.com/4gbwwEZ.png

pil0u 3 years ago

Reminds me of this game where you are a paper clip factory: https://www.decisionproblem.com/paperclips/index2.html

sandworm101 3 years ago

Total nostalgia for the days when an OS cared about the user. Moving memory pages around is all well and good, but a realworld OS has far more important functions than responding to the demands of the user. I suggest adding a dimension whereby the player must respond to the wishes of the OS creator/owner. Have the OS be asked to inject ads into content. The OS could slowly depreciate itself in order to upsell the user on the next version. The OS should detect un-friendly activity by the user and brick itself and/or report the user as a "pirate". Or the OS could be asked to respond to FBI/NSA requests to spy on the user.

mlfreeman 3 years ago

Somehow this needs to be linked to PsDoom (https://psdoom.sourceforge.net/), perhaps as "multiplayer" mode of some sort?

Jeff_Brown 3 years ago

I love the idea. The interface is not friendly to people with bad eyesight, though. It would be better if you could tab to change what you were looking at and make those things bigger.

bijoo 3 years ago

My results: uptime: 7:44 score: 259513 mode: easy

How did yours compare?

samsquire 3 years ago

I've been trying to imagine a game which is like a real time strategy game for programming

You command coroutines, threads and processes across machines to do work for you, like units.

You can collect data from database, transform it in a pipeline and give it back.

itronitron 3 years ago

Fun, I wonder if anyone has done a garbage collection game. I'm imagining an isometric view, like Zaxxon, where you drive a garbage truck around and collect dead references.

  • PurpleRamen 3 years ago

    Or maybe just fit it into Doom, equip a flamethrower, and burn the corpse of dead processes and their zombies. Not that we hadn't this already before in some way.

bratgpttamer 3 years ago

TIL: Being a computer is hard and I don't ever want to be a computer.

  • aio2 3 years ago

    Well it's a good thing it's an autonomous job already replaced by computers.

aviavinash 3 years ago

Aren't we are the operating system and the main character in all the game?

benj111 3 years ago

Coming soon, an OS where all components are gamified and done by humans.

spiritplumber 3 years ago

Give it a Tron skin and I'll play it for a whole day <3

rkagerer 3 years ago

It needs ways to upgrade your computer to live longer.

carreau 3 years ago

Now, I want to write a program the play that game...

iraqmtpizza 3 years ago

dwarf fortress rekt

xunil2ycom 3 years ago

so much stress. It's too much like my dev machine.

Konohamaru 3 years ago

Superlatively cool.

Apocryphon 3 years ago

This is pretty nerdy but c'mon, it's like Cookie Clicker or some other idle game when compared to Zachtronics titles.

  • Scaevolus 3 years ago

    TIS-100 is certainly far up there in "nerdiest game" rankings, and I must offer Bombe as well, the only game I know of that embeds Z3: https://store.steampowered.com/app/2262930/Bombe/

  • TillE 3 years ago

    It fits very comfortably into the category of "time management" game, which was a fairly popular casual genre 10-15 years ago. Cook Serve Delicious is probably the one notable example which is still going strong.

    Definitely distinct from idle games.

    • joveian 3 years ago

      Wilmot's Warehouse is the one it most reminds me of (maybe the graphics), which is quite fun (except for the random crashing :( that seems to get worse after it starts happening). This one needs a lot of work, though. I did it wrong it seems looking at the other comments here but nothing about this one makes me want to try again. Wilmot's Warehouse has excellent pacing. The theme of this one could be made to work well but throwing everything at the player right away and see how long they can keep going is not my idea of fun. I'd suggest automation options combined with changing the use pattern of the system over time. Plus something to give the player more customization options so it isn't just "do this repetitive task as quickly as you can". Maybe a choice of cute loading icons that you can display in certain circumstances?

      Mini Metro is another well known game in the time management genera. I've seen some recent games with this design and played a demo of a not yet released game. It seems like a common small indie game genera since larger developers don't seem to touch it that I can think of (except possibly some mini games? I can't think of anything off hand but there must be some). I guess the larger developers go for RTS games instead.

      Possibly the OS theme could be turned into a kind of "bot combat" game (at least I think that would be the general genera I'm thinking of, but without direct combat in this case) if the internals are automated and then compared to the market as a whole, with established OSes that are fairly good at everything but not great at anything. These established OSes could then take various anti-competitive actions along the way that force you to get better at a different specialty than you previously targeted.

  • xeckr 3 years ago

    Unlike cookie clicker, this game can actually teach you something.

    • cwillu 3 years ago

      I learned a great deal about the dangers of grandmas from cookieclicker.

    • Apocryphon 3 years ago

      I’m not contesting that, just making an analogy to quibble against “the nerdiest game ever” claim. Like I appreciate its existence but just saying there are entire genres of this stuff.

  • nextaccountic 3 years ago

    > Zachtronics

    Kinda sad that the dev quitted

MaxikCZ 3 years ago

I selected easy and still got fed so many processes I cant possibly satisfy them all for more than a minute. What am I doing wrong?

  • NooneAtAll3 3 years ago

    Same. If easy is that stressful, what happens on higher levels?

    I think easy makes you forget about memory-swap side of the game. Still feels unfairly hard tho

  • explaininjs 3 years ago

    Remove any processes with an hourglass from the queue, and frequently click the I/O Events button to clear out the hourglasses.

    • MaxikCZ 3 years ago

      I think I was already doing that, yet by the time 4 processes in processor turn green, 10 processes in queue turns red? Also even in the first 10 seconds I was already clicking like mad, wasnt really "easy" mode.

      Maybe one of my extensions designed to skip "wait 10 sec to skip this" is messing up the timings of the game?

      • pcthrowaway 3 years ago

        > Maybe one of my extensions designed to skip "wait 10 sec to skip this" is messing up the timings of the game?

        Might be related to time accounting differences between browsers also... are you using firefox?

        • MaxikCZ 3 years ago

          Edge (sorry)

          • explaininjs 3 years ago

            Fine for me on edge. Maybe don't wait for processes to go totally green? If something is dark red/frozen it needs to be on the CPU immediately, regardless of what else is there.

      • SilasX 3 years ago

        I saw the same with no extensions. My only hope was to do custom mode and give myself more cpus and lower I/O probability.

        Edit: Also, keyboard shortcuts would be really, really nice.

        Edit2: Also, the "menu" button in the top right isn't clickable (unless I resize) because the "Follow drfreckles" and "add to collection" buttons overlay it.

      • explaininjs 3 years ago

        Could be the extension. Though the logic seems to be all in wasm, not sure how the extension would modify it.

bijoo 3 years ago

uptime 0:07:44 - 259513

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection