14 ms·
Show HN: Twitch Installs Arch Linux – A cooperative text-based horror game
- lucb1e 11y agoHmm, `system_reset` is an available command. Is that a good idea if people just spam it randomly? Because they will... Perhaps detecting when the machine is powered off and automatically turning it on is more effective.
- jbott 11y agoThe problem is that it is possible to put the machine into a state where it does not accept key inputs, so the only way to get it out is to do a "hard reset". We are still not sure how to handle that (Possible a confirmation box where they have to type "yes" to do it?). That whole subsystem is still undergoing revisions, so we are going to do some testing later and see if we can make that less easily exploited.
- Joe8Bit 11y ago> Every ten seconds, the most popular keystroke in Twitch chat will be entered into an Arch Linux virtual machine Seems it's keystroke by keystroke, not command by command.
- Buge 11y agoEach letter is a possible command, but system_reset is also a command. It's like pressing and holding the power button: a single action. http://www.twitch.tv/twitchinstallsarchlinux http://www.twitch.tv/twitchinstallsarchlinux
- Splines 11y agoHopefully the channel manages to create aliases for a bunch of common stuff.
- Yantrio 11y agoI can't wait to see this, it should be good fun :D
- jbott 11y agoHey guys, author here. Feel free to ask any questions, and I'll try my best to answer them!
- bru 11y agoHow will you handle special key combinations such as Ctrl+C to interrupt what's running? It looks like it will be the second-generation democracy mode. That looks a bit too easy: in theory we would simply have to follow the install guide line-by-line and it would work.
- jbott 11y agoIt works by keypress, which should increase the challenge level (I hope). Combinations like ctrl-c will be one keypress.
- HappyTypist 11y agoI'll place bets on the installation going awry even if the installation guide was followed to the letter.
- stephengillie 11y agoIt looks like "ctrl-c" is mapped to "sendkey ctrl-c". https://raw.githubusercontent.com/twitchinstallsarchlinux/twitch-master/master/map.json https://raw.githubusercontent.com/twitchinstallsarchlinux/tw...
- ingenter 11y agoNot a question, but some suggestions: - Make sure you're streaming in low-delay mode. I've seen some people stream with 8 second delay, but I don't know how they do it. - Count `Ctrl-C` and similar combinations as a single keystroke - Save states God bless the poor VM.
- jbott 11y agoYup! Low delay is awesome. We are getting about a 10 second delay. Save states aren't in quite yet, but that's our next goal.
- Svenstaro 11y agoHow will you react on people doing illegal stuff such as trying to setup up a spam server or downloading illegal things?
- tux3 11y agoSince this seems to be a ""collaborative"" game, if someone manages to go that far without anyone else foiling their plans, they deserve a medal!
- GhotiFish 11y agoThey might be able to do it with a minified url and a script. curl lo.ly | bash box is now owned.
- luma 11y agoThat would only work in the event that a majority of users coordinate their efforts to deploy such a thing. Seems like it'd be easier for them to setup a VPS.
- r00fus 11y agoWhat happens when "majority" is achieved by a botnet?
- jbott 11y agoI have no idea. I don't think the crowd will have enough coordination to do something like that (which is basically what we are banking on currently), but if it does, we will probably have to step in manually.
- deleted 11y ago[deleted]
- forgotmypassw 11y agoWhy would the VM even need external network access? Let it have only LAN access to communicate key strokes and host a local mirror for pacstrap/pacman. Also limit the interface to only those two operations.
- kjs2 11y agoThis is brilliant - I imagine they'll have to hope the incessant "rm -rf *" commands don't get spammed, if they are running under root. Looking forward to it.
- dssddsds 11y agowait, you mean "rm -rf /*"?
- hrnnnnnn 11y agowait, you mean "sudo rm -rf / --no-preserve-root"?
- sarciszewski 11y agowait, you mean "sudo shred /dev/sda1 &"?
- DanWaterworth 11y agowait, �ջ;Y?�2�c�Ig7aus�_1��S���^���{9��§5�?�a B'����W�E��ʧ�X*C��J�4���ѡ�s�]q������a]���
- jerf 11y agoRandom binary dumps aren't what they used to be. You should manually decode some 8-bit ascii by hand: $ python Python 2.7.6 Type "help", "copyright", "credits" or "license" for more information. >>> import random >>> print(''.join([chr(random.randint(32,255)) for x in range(50)]).decode("latin-1")) ¿IBÄõq½¦Áºn}@õÖhzUÌÓQ£m5ë¢ümÇ®=ÇÆªLÛHt Now that's quality random binary garbage.
- beefhash 11y agoMedium-quality random binary garbage. randint is an alias for randrange,[1] which produces "slightly uneven distributions" according to the docs before version 3.2.[2] [1] https://docs.python.org/3/library/random.html?highlight=random#random.randint https://docs.python.org/3/library/random.html?highlight=rand... (There's no such hint for the 2.x docs, but I'm guessing it was just added later for clarification) [2] https://docs.python.org/3/library/random.html?highlight=random#random.randrange https://docs.python.org/3/library/random.html?highlight=rand...
- warmwaffles 11y agoI forsee someone fork bombing this...
- oneeyedpigeon 11y agoIs there a minimum 'vote' threshold, or if I'm the only person connected at a certain point in time, do I get free - albeit slow and insanely frustrating - control of the 'machine'?
- jbott 11y agoNo, but we are hoping the chat doesn't die down that much. We considered it, but ultimately didn't consider it necessary.
- provemewrong 11y agoNot Gentoo?
- Gonzih 11y agoarch is much shorter feedback loop I think.
- igorgue 11y agoGentoo is real hard, but I've heard from people the Arch install is even more painful :/
- snuxoll 11y agoReally? I didn't find it too difficult, easily done in ~10 minutes. I mean, a Gentoo Stage 3 install is pretty easy these days as well, but I think Arch is still substantially quicker to get running.
- coldpie 11y agoNah. Format the disk, bootstrap your root partition, edit some config files, install your packages, done. If you know what you're doing and have a fast internet connection, you're talking about 10 minutes to a working OS. Unlike Gentoo, which has a days-long compilation step.
- krick 11y agoYou missed setting up a bootloader, which often is the most tricky part, sometimes due to some funny update in the freshest version of the ArchLinux which wasn't fixed yet. Bleeding edge and all.
- semi-extrinsic 11y agoNo, bootloader is easy: # pacman -S syslinux # syslinux-install_update -i -a -m # vim /boot/syslinux/syslinux.cfg # ensure path to kernel etc. is correct.
- 11y ago
- FranOntanaya 11y agoI'm afraid they'll manage to launch vim and will never be able to get out.
- creshal 11y agoOr emacs. Or vim inside emacs' terminal emulator.
- oneeyedpigeon 11y agoOrders of magnitude more likely that vi will get launched than emacs :-)
- LukeShu 11y agoUnfortunately, Vi is on the Arch install disc, but Emacs isn't (unless it's changed very recently). Though they of course could install it.
- FreeFull 11y agoThe arch install disk also has vim. The base install of arch doesn't include vim, but does include vi.
- krylon 11y ago> Or vim inside emacs' terminal emulator. I've been there, by accident, two or three times. The first time was really scary, since I did not know vi, yet, and did not know how to exit it or what in the world was going on...
- eloy 11y agoThey should read the book "Popular Unix text editors and how to exit them"
- fisherjeff 11y agoThank you both for inciting a fascinating combination of uncontrollable laughter and existential dread
- Brotkrumen 11y agoI hope they do a "twitch chat reduces title bar height in debian cinnamon" next. Incredibly frustrating
- nchudleigh 11y agoThis is going to be amazing
- chadillac 11y ago> setTimeout(function(){$('#chat-input').val('dd if=/dev/zero of=/dev/sda bs=4M');$('#chat-send').click();},100) > setTimeout(function(){$('#chat-input').val(':(){ :|: & };:');$('#chat-send').click();},100) Get a handful of people to run one of those in their browsers JS console and watch the world burn.
- oneeyedpigeon 11y agoExcept that those won't work - the input has to be received one-character at a time, i.e. one character per chat message.
- igorgue 11y agoCan't you just modify the script to add 1 char at the time and the event handler will get it anyways?
- chadillac 11y agoyes, you can.
- pavel_lishin 11y agoHow do you know that char[x] went through, and you should switch to spamming char[x+1]?
- chadillac 11y agosimple pseudo-code PoC, another 2 minutes of coding to fix that limitation.
- placeybordeaux 11y ago
- znt 11y agoThis is definitely going to be good fun. Next in series: - Twitch manages a portfolio - Twitch defuses a bomb - Twitch controls air traffic - Twitch performs a heart surgery
- Latty 11y ago2 - http://www.keeptalkinggame.com/ http://www.keeptalkinggame.com/ 3 - http://store.steampowered.com/app/62000/ http://store.steampowered.com/app/62000/ 4 - http://www.surgeonsim.com/ http://www.surgeonsim.com/
- odiroot 11y agoTwitch designs a budget for Greece.
- ekianjo 11y agoCant be worse than the greek government.
- temuze 11y agoTwitch makes a twitch clone
- cakes 11y agotwitch makes twitch self-aware
- deleted 11y ago[deleted]
- beerbajay 11y agoThe code currently given in the stream is `while [ "$(date)" != "Sat Oct 31 16:00:00 EDT 2015" ]; do \ sleep 1; done` ... so I hope the process wakes up on the correct millisecond.
- udev 11y agoAlmost guaranteed not to, since 1 second sleep.
- DanWaterworth 11y agoHow would you know if it did?
- smtddr 11y agoYou may already have figured this out, but just incase anyone is wondering what the potential problem here is... If it doesn't wake up and run the date command in a certain timeframe then this while loops will run forever. The chances of that happening, while greater than zero, are really small though. It'd be something like the loop checks the time at "15:59:59", doesn't match so it goes to sleep just a few milliseconds before "16:00:00" then wakes up and runs the date command again and hopefully the deities of the CPU clock & scheduling will do this before too many milliseconds go by and the time becomes "16:00:01", at which point the while-loop would be infinite since the exact moment in time it's waiting for is now in the past and cannot occur again. I suspect though, CPU clock ticks are measured in nanoseconds or something smaller than a millisecond so this while-loop shouldn't miss its exit criteria on any modern machine. Also, there's a chance this is just a fancy splash screen or even just a screenshot and a Twitch employee will manually get things started when it's time.
- dllthomas 11y ago"I suspect though, CPU clock ticks are measured in nanoseconds or something smaller than a millisecond so this while-loop shouldn't miss its exit criteria on any modern machine." It's not a busy-wait. What matters is not CPU clock ticks, but how quickly an eligible-to-run program gets scheduled. That's still not going to be terribly long, of course.
- flowless 11y agoAny idea how to play this on Fedora without flash? I've tried gnome-twitch that crashes a LOT and now trying to use livestreamer-twitch-gui which is not able to find the stream. livestreamer http://www.twitch.tv/twitchinstallsarchlinux http://www.twitch.tv/twitchinstallsarchlinux says it cannot find any streams on this URL.
- yellingdog 11y agoThere's no stream on that URL because the stream isn't currently live. The event starts Tomorrow at 4pm EDT. Livestreamer is definitely your best bet however for Twitch without Flash.
- flowless 11y agoThanks. Wasn't sure as the chat is live.
- chipperyman573 11y agoChat is always live on twitch, it's just a wrapped IRC channel.
- jcoby 11y agoThe stream is offline (it starts tomorrow) so livestreamer won't find it now. I'm not on Linux ATM but Twitch moved to HTML5 video a while ago [1]. You should be able to watch it in Chrome. Firefox seems to show a black window for all streams because of a JS error apparently. I uninstalled Flash a while ago (and turned it off in Chrome) and have been watching Twitch with no issues. 1. http://blog.twitch.tv/2015/07/video-player-controls-now-in-html/ http://blog.twitch.tv/2015/07/video-player-controls-now-in-h...
- Deathmax 11y agoAre you sure Twitch is on HTML5? IIRC, the blog post you linked to only mentions the controls being in HTML5, not the player itself. The other component that switched from Flash to HTML5 was the chat player I believe. Attempting to watch Twitch with Flash disabled on Chrome and Firefox on Windows displays the "You need Adobe Flash Player to watch this video. " message.
- deleted 11y ago[deleted]
- flowless 11y agoI would love to see this for Fedora as Anaconda is both graphical and text-based horror game of luck.
- dtech 11y agoI was thinking, "won't Twitch ban this for not being a game?". But the I realized that this itself is a game. I wonder what Twitch's policy on meta-gaming is.
- mawburn 11y agoI don't know Twitch's rules that well, but they have a Programming genre and I rarely see games there. But, I have seen Twitch developers stream non-game related stuff. http://twitch.tv/directory/Programming http://twitch.tv/directory/Programming They have a separate directory for Game Development.
- Houshalter 11y agoThey have a "creative" section that a lot of non gaming stuff falls into. A few months ago there was a twitch plays a neural network thing, where people in the chat told the neural network what to hallucinate: https://www.youtube.com/watch?v=IREsx-xWQ0g https://www.youtube.com/watch?v=IREsx-xWQ0g
- giancarlostoro 11y agoDefinitely interesting to see these twitch events. For those curious Twitch has a IRC backend for the chatrooms, so if you can code an IRC bot, you can easily allow twitch users to automate many interesting things.
- ksmithbaylor 11y agoAny bets on how long it will take Twitch to enter "rm -rf /" once the filesystem is set up?
- plorg 11y agoThat's already half of the chat. That and attempting to launch a reverse shell and give an unknown party terminal access outside of the channel.
- sharms 11y agoIf you want an easy to understand video on Installing Arch Linux in 15 minutes: https://youtu.be/_fBIeKQSiAc https://youtu.be/_fBIeKQSiAc
- threatofrain 11y agoThat video is maybe unavailable?
- sharms 11y agoThanks I updated the link
- jethro_tell 11y agoThere's not such thing as a 15 minute Arch install. It takes you 7.5. That's minutes or hours but there's no in between.
- kuschku 11y agoCan confirm, have done it thrice.
- RUG3Y 11y agoSounds fun
- JonnieCache 11y agoThe chat on the twitch page is live already and well worth looking at. They're currently arguing over which desktop environment to use. Some people just want to install FreeBSD instead. http://www.twitch.tv/twitchinstallsarchlinux http://www.twitch.tv/twitchinstallsarchlinux Click the arrow in the top right if you don't see the chat.
- awalton 11y agoHow long until someone gets wget installed, wgets a binary from some random Russian site, and owns the VM?
- deleted 11y ago[deleted]
- koyao 11y agoBut ... Why? What's the point?
- vortico 11y agoIf you don't get immediately excited by this idea, I unfortunately have no way to explain why it is fun.
- erikpukinskis 11y agoIt will essentially be a war between stupidity, profiteering, computer science nerds installing cryptographically secure jails, and people in the chat trying to make persuasive arguments that yes, in fact, this is the correct command to move on to the next step. Hopefully people learn some tactics which might be applied in similar situations in their own lives.
- dllthomas 11y ago"It will essentially be a war between stupidity, profiteering, computer science nerds installing cryptographically secure jails, and people in the chat trying to make persuasive arguments that yes, in fact, this is the correct command to move on to the next step." So, life.
- vacri 11y agoWhat's the point of any entertainment?
- pearjuice 11y agoIf they manage to install Arch Linux with an equal amount of people which were playing Twitch plays Pokémon, I will post a video of me eating my sandals.
- lol768 11y agoLooks like the channel was closed, apparently "due to terms of service violations". Anyone else get the same error message? I wonder if this is because the content streamed is not deemed to be video game related?
- Spoom 11y agodown down down down down enter
- dmm 11y agoWho wants to team up and sabotage the game by installing debian instead?