[HN Gopher] DOOM CAPTCHA
       ___________________________________________________________________
        
       DOOM CAPTCHA
        
       Author : denysvitali
       Score  : 1117 points
       Date   : 2025-01-01 14:12 UTC (1 days ago)
        
 (HTM) web link (doom-captcha.vercel.app)
 (TXT) w3m dump (doom-captcha.vercel.app)
        
       | gamegod wrote:
       | What kind of monster doesn't give us WASD or at least ctrl to
       | shoot?
       | 
       | Awesome captcha though :)
        
         | InMice wrote:
         | ijkl;
        
           | felixg3 wrote:
           | Unfortunately very specific to QWERTY layouts:(
        
             | zamadatix wrote:
             | That depends entirely on whether you opt to do the compare
             | by code or key. E.g. in JS KeyboardEvent.code == "KeyW" may
             | resolve true even though KeyboardEvent.key == "W" may
             | resolve false because the user is on AZERTY or what have
             | you.
        
               | zubairshaik wrote:
               | Ergonomic keyboards on software like ZMK or QMK actually
               | change both iirc, so that's a no go for external keyboard
               | users.
        
               | zamadatix wrote:
               | I'm a QMK user with a custom no -standard layout myself.
               | I think you're referring to mapping keys to a given
               | keycode as part of the firmware config. That's not
               | inherently a problem, do it properly and it still lines
               | up with whatever OS layout you load. If you're
               | purposefully changing the keycodes to avoid letting the
               | OS know the layout is different... well, you got what you
               | explicitly configured you wanted it to behave like? Leave
               | a layer if you expressly don't want said behavior, it's
               | not up to the app developer to assume you meant to do
               | otherwise.
        
           | kelahcim wrote:
           | No! Just no! :)
        
       | pg5 wrote:
       | Pretty cool, but a little on screen pad would be good for mobile
       | users.
        
         | yousif_123123 wrote:
         | It does have it. If you tap on it, it should show it.
        
         | turbocon wrote:
         | There is a pad on the screen for mobile, I think you just need
         | to tap it
        
           | pjmlp wrote:
           | Nope, not for Android Chrome.
           | 
           | Taping shows the instructions for keyboard use.
        
         | djeastm wrote:
         | I also was unable to see controls on mobile. Tried tapping
         | everything I could see.
        
       | galleywest200 wrote:
       | There are so many monsters, took me 3-4 tries...just like a real
       | captcha!
        
         | phoronixrly wrote:
         | Man, and just like real CAPTCHA it is hell for people with
         | disabilities... 10/10
        
           | throwaway7679 wrote:
           | It's doom, so hell for everyone
        
           | UniverseHacker wrote:
           | excellent comment
        
         | liontwist wrote:
         | I interpreted this as a parody for this reason.
        
       | bstsb wrote:
       | reading the chat with v0 was interesting. the last time i tried
       | v0 it generated really basic tailwind templates but the first
       | image generation was actually really good for an LLM.
        
         | Kiro wrote:
         | Why are people downvoting this? I also found the chat very
         | interesting and a cool demo of v0. It's linked at the bottom of
         | the page.
        
         | fixprix wrote:
         | Yea looks like most people are missing the fact it was built by
         | the CEO of Vercel with v0, an AI site builder. Doom in a
         | browser has been done to death. Link to chat log:
         | 
         | https://v0.dev/chat/4X85A52Dzde
        
       | mensetmanusman wrote:
       | This will work until agents are common. I bet the best bot farms
       | are first adopters of agents though.
        
       | casenmgreen wrote:
       | 1. That's a tough level, one of the hidden levels IIRC.
       | 
       | 2. It feels like "-fast" has been used.
       | 
       | 3. The task is much, much more difficult because you can't
       | strafe.
       | 
       | Very cute though :-)
        
         | mistaken wrote:
         | Strafing works for me on linux with firefox. Maybe it's an OS
         | or browser setting that prevents it?
        
           | hnlmorg wrote:
           | It's not available on touch screen devices.
        
             | plussed_reader wrote:
             | Bluetooth keyboard to the rescue!
        
           | casenmgreen wrote:
           | I also FF on Linux.
           | 
           | But I always redefined A and D as strafe-left and strafe-
           | right.
           | 
           | I literally did not know the keyboard shortcut to strafe,
           | because I have probably literally never used it.
        
         | epcoa wrote:
         | Correct, it's E1M9, the shareware secret level, on Nightmare
         | difficulty.
         | 
         | You can strafe with the old-school chording of Alt.
         | 
         | The sound was fucked up for me, high pitched, no idea why (fits
         | the ridiculousness of this experience though, so NBD).
        
           | wellthisisgreat wrote:
           | > old-school chording of Alt
           | 
           | Damn I completely forgot it was a thing even, wow. And yet it
           | was for like 7 years of my gaming experience
        
         | mock-possum wrote:
         | Is it actually that tough??
         | 
         | I was ready to good-naturedly complain that it didn't work on
         | mobile, but the onscreen controls worked just fine, and I
         | didn't have any trouble killing 3 guys right away.
         | 
         | I guess I have been playing a fair amount of classic doom
         | lately though so
        
           | casenmgreen wrote:
           | We mean the whole level, not the three mobs for the captcha.
        
         | inglor_cz wrote:
         | Yeah, E1M9 is notoriously hard with a pistol start. I
         | immediately recognized it ... which speaks to the amount of
         | time I spent on Doom in my youth.
        
         | RiverCrochet wrote:
         | Hold ALT, you definitely can strafe. At least I could.
        
       | m3kw9 wrote:
       | it's not possible to win without strifing
        
       | charlesabarnes wrote:
       | I tried to do it the intended way, but found it too difficult. I
       | was able to cheese it by staying in the starting area and killing
       | the enemies that spawned to the right.
        
         | TehCorwiz wrote:
         | Yeah, pistol starting this particular level is...unkind. At
         | least start with a shotgun.
        
         | cuu508 wrote:
         | Hah, same here.
         | 
         | 1. press the back arrow to move back
         | 
         | 2. press spacebar every second
         | 
         | and that's it, 30 or so seconds later the captcha is solved :-)
        
           | lightning8113 wrote:
           | I didn't even have to move. Holding space bar down from the
           | start seemed to work for me.
        
           | Tor3 wrote:
           | The first time I didn't move at all (except for targeting),
           | and before I knew it it was "solved". Just a few seconds.
        
         | oytis wrote:
         | IDDQD works. Just saying.
        
           | huhtenberg wrote:
           | But WASD doesn't!
        
             | oytis wrote:
             | Was it working in the original DOOM though? I don't
             | remember any more.
        
               | gusfoo wrote:
               | > Was it working in the original DOOM though? I don't
               | remember any more.
               | 
               | By default it was the arrow keys for movement and <> for
               | turning with CTRL as fire. But you could re-map the keys
               | and after a few years quite a lot of people did.
        
               | bigstrat2003 wrote:
               | Nope. Doom was arrow keys to go forward/back/turn, plus
               | alt-left/right to strafe.
        
           | doganugurlu wrote:
           | How nostalgic, and authentic!
        
           | seattle_spring wrote:
           | Holy crap, so does IDSPISPOPD
        
           | TeMPOraL wrote:
           | So does IDKFA.
        
             | Dwedit wrote:
             | Monsters killed by the Rocket Launcher (gibbing) do not
             | increase the kill counter.
        
           | zorked wrote:
           | You don't get credit for IDDQD though.
           | 
           | Also use something like IDCLEV15 and you can go to other
           | stages.
        
             | antonvs wrote:
             | > You don't get credit for IDDQD though.
             | 
             | What does this mean? I was able to "solve the captcha"
             | using IDDQD.
        
           | Dwedit wrote:
           | Oddly enough, IDCLIP and IDCLEV work. You can't activate any
           | doors or switches, but you can beat E1M8 with No Clipping
           | Mode. Then you're stuck at the "Ordering Info" screen with no
           | way to activate the menu.
        
         | gruez wrote:
         | You don't even need to cheese it when everything is client
         | side, so there's no way for the server to verify you actually
         | killed the required amount of enemies.
        
           | make3 wrote:
           | it's a PoC
        
             | cwillu wrote:
             | What part of the concept was proven?
        
               | 93po wrote:
               | yes - i refuse to use captchas for basically any reason -
               | if a site blocks me with a captcha where i have to label
               | traffic lights or whatever, i close the tab and move on
               | 
               | i would probably choose to use doom captcha even if it
               | takes 5 times longer. it is proven that at least people
               | will interact with this if they wouldnt with traditional
               | ones
        
               | yieldcrv wrote:
               | found the robot
               | 
               | jk robots can do this now
        
               | oliwarner wrote:
               | I think this is unfairly downvoted.
               | 
               | Anyone can think of something humans do and just playing
               | DOOM in a browser falls well short of anything new.
               | 
               |  _All_ the hard stuff is missing. It 's half an idea.
        
               | cwillu wrote:
               | I find the early votes on new comments are biased
               | downwards; I can speculate as to why, but it usually is
               | more than balanced out by later votes.
        
               | dspillett wrote:
               | _> All the hard stuff is missing. It 's half an idea._
               | 
               | Nah, it's all the idea but half (or less) the
               | implementation.
               | 
               | Still counts as a PoC by many definitions. I've been
               | handed less complete proofs to continue ("we fleshed this
               | out in Excel in the client meeting, said we could have it
               | done for real by Tuesday, can we?").
        
               | hombre_fatal wrote:
               | You could send inputs to the server, the server simulates
               | them to see if you killed monsters.
               | 
               | The concept here is the UX of what it would be like if it
               | were properly hooked up.
               | 
               | Just like what you would do with any captcha proposal.
               | You'd want to mock up the UX to evaluate whether it
               | something people can do.
               | 
               | Though here's it's just for fun.
        
           | Maxatar wrote:
           | Perhaps this implementation works that way, but in principle
           | if the game is strictly determined based on a random seed and
           | player input, then the server can verify that the player's
           | inputs do in fact result in the correct outcome.
        
             | bcoates wrote:
             | Doom doesn't even have a (variable) random seed, it's
             | deterministic like an NES game and has built-in
             | record/playback that's just a frame by frame list of player
             | moves.
        
               | DaiPlusPlus wrote:
               | So have the client record and send the demo recording.
               | 
               | ...hang on, this is starting to feel like Elliptic Curve
               | cryptography: it's trivial to prove a demo file is a
               | "solution" to a random-seeded Doom map, but nontrivial to
               | work-backwards to generate a demo-recording.
        
               | gcr wrote:
               | That's how all proof of work tactics work.
               | 
               | The heart of Bitcoin is just "Find me a number between
               | 0xf80000 and 0xff0000 whose SHA-1 hash starts with eight
               | zeroes..."
        
               | Salgat wrote:
               | This sounds like a trivial thing to take advantage of.
               | Update the game to randomize damage and add a unique seed
               | for each instance played.
        
         | johnisgood wrote:
         | Yes, same. Are those invisible turrets?!
        
         | BiteCode_dev wrote:
         | Well, this is not the first level, but this is the level entry
         | weapon.
         | 
         | Plus, left and right arrows rotate the characters since it's
         | keyboard only, but in modern FPS you are used to having them
         | laterally move you and you rotate with the mouse, so your
         | reflexes are off.
        
           | hansjorg wrote:
           | As in the original, you can use alt + left/right arrow keys
           | to strafe.
        
             | BiteCode_dev wrote:
             | Good memory.
             | 
             | But very platform dependant, so maybe OP is on a browser or
             | OS that doesn't let you do that.
             | 
             | I know it works on Chrome for me, but not on FF.
        
               | capitainenemo wrote:
               | Probably because firefox has alt+(left|right)arrow as
               | global navigation bindings, and is capturing them before
               | the captcha can get them. requesting a fullscreen gaming
               | mode avoids more key binding issues, but probably ruins
               | the "captcha" feel.
        
             | Zetaphor wrote:
             | So this is just as difficult as every other captcha then
        
             | sweeter wrote:
             | nice, that was the first thing that I noticed that I kept
             | trying to do. It makes it a lot easier. I forgot about how
             | clunky controls can be for older games without retroarch
             | rebinds and stuff. I was playing Perfect Dark last night on
             | my Steamdeck and I was able to bind the controls to a
             | modern layout (left-stick walk, right-stick look, etc...)
             | and it makes the game a ton easier.
        
             | buzer wrote:
             | In Windows the issue is that alt+space will by default open
             | the window's control menu (for
             | minimize/maximize/move/etc.). Pressing space down and then
             | alt will work though.
        
             | p0w3n3d wrote:
             | thanks, without strafing it's almost impossible
        
               | p0w3n3d wrote:
               | I've just learned that my colleague played it on phone
               | and won with two attempts. She just didn't move forward,
               | only left right and shoot
        
               | bravoetch wrote:
               | use , . for strafing. Not ideal, but it works.
        
         | Sparkyte wrote:
         | If you run immediately to right entry and get behind everything
         | providing one of the shotgun guys dies you can get the shotgun
         | and take them out.
        
         | dspillett wrote:
         | That isn't cheesing it, given those start conditions. That is a
         | standard tactic when you only have the pistol (or are too low
         | in ammo for other weapons).
         | 
         | The pistol is crazy accurate in these games so you can pick
         | enemies of from afar with a few shots each, and in this case
         | they are firing shotguns which are very ineffective at long
         | range (the game stimulates them as having unrealistically wide
         | pellet spread, so even if a far-off enemy gets a pin-point shot
         | you will only take minimal damage).
         | 
         | I remember playing over the collage NetWare LAN and winning
         | people who had better but less accurate weapons (usually the
         | shotgun, or the double in later versions, as we found that the
         | most cathartic) simply by keeping my distance. Works until
         | someone gets close from behind, at which point if you respawn
         | somewhere convenient you can find the bugger PDQ, and pick him
         | off with the pistol for revenge. Even works against the rocket
         | launcher, just make sure you don't get hit directly (d'oh) or
         | hang around where it is easy for splash damage from misses to
         | ruin your plans.
         | 
         | It is a valid method for many DOOM-style games (as they were
         | called in my day) and their offspring. Works well in HL2 where
         | you can spam the trigger button as fast as you like and the
         | basic pistol will fire at that rate without a limit (other
         | weapons have a minimum shot latency).
        
           | 0xDEAFBEAD wrote:
           | I've played combat games where you can chirp in order to lure
           | enemies towards you.
           | 
           | Then you're incentivized to find a defensible spot and keep
           | mashing the "chirp" button so you get a steady stream of
           | enemies.
           | 
           | You could remove the chirp button -- but then you're left
           | sprinting out _juust_ far enough that the enemy detects you,
           | then run back somewhere defensible. Not very satisfying.
           | 
           | Or you can make it so enemies stream towards the player
           | continuously, regardless of how close they are, without any
           | trigger -- which is sort of equivalent to having the chirp
           | button get mashed automatically. Again, find somewhere
           | defensible and mash the attack key.
           | 
           | None of these approaches feel very satisfying. There must be
           | some clever approach to this issue which doesn't run into any
           | of these problems. A simple set of rules which leads to a
           | large variety of combat challenges instead of a degenerate
           | winning strategy.
        
           | frameset wrote:
           | Do you remember the early "bug" in HL2 where you could bind
           | shoot to mouse wheel up, then flick the wheel to magdump the
           | pistol and blast anything? Good times :)
        
         | big-chungus4 wrote:
         | you run straight and to the right, and there is a group of 3
         | enemies that you can kill in less then 10 seconds and win
        
       | threekindwords wrote:
       | Ok, so this is the kind of content I show up for.
       | 
       | On one hand, it's a clever and fun way to show off what we can do
       | with the web these days. The way it is presented hits just
       | right... the demo is dead center of the page, with debug tools
       | and more info within reach. I particularly enjoyed reading the
       | "how it's made" page to understand how it was put together. I
       | like how all of this extra stuff was not front and center when
       | the page loads. Even the design language of the CAPTCHA box
       | itself felt just right.
       | 
       | On the other hand, it's a satire of what we have done to the web.
       | The bad guys (like the monsters in the game) have won. I'm a
       | flesh and blood human, but here I am having to click on fuzzy
       | pictures of random objects before I can do the task I actually
       | wanted to accomplish. Behind the scenes, my human insight gets
       | licensed and used for whatever purpose (nefarious or not). Just
       | like the DOOM demo here, it's hard and cumbersome, but for
       | whatever reason we all accept it as the way it has to be. We all
       | shake our heads and say "what a shame, what a shame."
        
         | mschuster91 wrote:
         | > Just like the DOOM demo here, it's hard and cumbersome, but
         | for whatever reason we all accept it as the way it has to be.
         | 
         | Because most if not all of us have lost all hope that
         | eventually our governments will be either willing or able to do
         | something about the bad actors on the 'net.
        
       | discoinverno wrote:
       | I couldn't win without cheating ^:) It's crazy how ingrained in
       | my memory is the code tho, could remember it automatically after
       | maybe 25 years
        
       | EGreg wrote:
       | I think it's nearly impossible on a mobile phone hehe
        
         | nunobrito wrote:
         | "Spartans: Today we captcha like men"
        
       | joshcsimmons wrote:
       | This is so metal. Great work.
        
       | bogrollben wrote:
       | today I learned I really suck at Doom.
        
       | kmeisthax wrote:
       | Can't move or shoot on my iPad Pro with Magic Keyboard.
        
         | knolan wrote:
         | Tap on it . Arrow keys to move and space to shoot. It's
         | annoying because you can't strafe.
        
       | deeviant wrote:
       | I feel this faster than the average "click on all pictures of x".
        
         | runlevel1 wrote:
         | That's a low bar. Google's reCAPTCHA sometimes feels like it
         | was created in a lab to be as infuriating to humans as
         | possible.
         | 
         | If you're not logged in and are using a shared IP (CG-NAT in my
         | case), you get all sorts of fun behaviors. It loves to fail
         | correct responses -- sometimes multiple consecutive ones.
         | Occasionally, it will deliberately slow down new image fade-in
         | to a snail's pace to test reaction time. Spot those stairs too
         | fast? You must be a bot.
        
       | MB-EU wrote:
       | only thing I'd change is put shoot as CTRL :) - Good work
        
       | super_normal wrote:
       | beat the captcha first try on a pixel 6. true gaming legend
       | signing out, el oh el oh el...
        
       | mobilio wrote:
       | fun mode - iddqd and idkfa works!
        
         | mjrpes wrote:
         | Interesting; it recognizes kills made with chainsaw, gun,
         | shotgun, machine gun, but not rocket launcher. Plasma and BFG
         | keys don't work.
        
           | mobilio wrote:
           | in shareware version plasma and BFG guns aren't available
        
             | anthk wrote:
             | The authour could had just used FreeDoom
             | https://freedoom.github.io
             | 
             | which is a free as in freedom replacement for DOOM I/II and
             | deathmatch iWADs (totally compatible with community PWADS).
        
       | acidburnNSA wrote:
       | Thank God the cheat codes I have memorized still work.
        
       | tnvmadhav wrote:
       | I tried moving and I died. Stay at the spawn point and keep
       | shooting anything that moves :)
        
         | zoklet-enjoyer wrote:
         | Same. Only way I could beat it
        
       | doctor_radium wrote:
       | I've rolled my eyes for years over when this sort of thing would
       | happen for real: "score 3000 points at Pac Man and _maybe_ we 'll
       | let you view our web site". +1 for the technical achievement, but
       | I turn and run at Cloudflare tick boxes.
        
       | entropie wrote:
       | Its awesome, but actually quite hard without arrow keys on a
       | HHKBpro.
        
       | itvision wrote:
       | Solved it on a second attempt on my smartphone.
       | 
       | It's horrible. 99% of people will give up.
        
         | theendisney wrote:
         | If they give up they are human 99%.
        
       | anta40 wrote:
       | Failed on 1st attempt, then beat it on 2nd attempt (I'm on
       | Macbook Air). Very amusing idea. Perhaps I'll implement this for
       | my personal project... well because why not? :p
        
       | sira04 wrote:
       | One day we'll have the Dark Souls captcha
       | https://www.youtube.com/watch?v=WqnXp6Saa8Y
        
       | foo-stuff wrote:
       | I wonder how long this would need to train in order to pass the
       | Captcha...
       | 
       | https://github.com/apollopower/DOOM-AI
        
         | phoronixrly wrote:
         | I would argue that you do not need AI in the sense of ML to
         | pass this specific CAPTCHA as it stands (move forward, move
         | back then shoot until solved). If it was extended to all DOOM
         | levels and you started at a completely random position of a
         | level, I bet there is a high chance you would still not need
         | any ML to beat it... You would at best have to implement an AI
         | (in the sense of game development, _not ML_ ) algorithm...
         | 
         | Ofc all of this is going to be necessary IF it actually cannot
         | be trivially circumvented... How does the FE _prove_ to the
         | backend that you actually killed the monsters?
        
           | jsheard wrote:
           | > How does the FE prove to the backend that you actually
           | killed the monsters?
           | 
           | Doom is fully deterministic so you could record the players
           | inputs and replay them on the server to verify that the kills
           | actually happened. Some games actually do that to make
           | cheating their online leaderboards more difficult, because
           | it's a lot more work to fake a record-setting replay than it
           | is to just submit a fake score, and even if you do fake a
           | working replay it might not stand up to human review.
        
       | ricardo81 wrote:
       | Excellent, though I'd have liked it more with a bigger gun
        
         | ac29 wrote:
         | IDKFA
        
       | quotemstr wrote:
       | Funny, but thanks to RL, I'd expect this to actually be an
       | ineffective CAPTCHA. DOTA was solved years ago, yes?
        
       | mrlonglong wrote:
       | BFG9000, here I come!
        
       | ulrischa wrote:
       | Does not work on a smartphone
        
         | TechTechTech wrote:
         | Works fine on android Firefox mobile
        
           | oxide wrote:
           | Game loads on firefox desktop, but is a black screen. Debug
           | didn't show anything out of the ordinary. loads fine on
           | Chrome though.
        
       | EVa5I7bHFq9mnYK wrote:
       | No BFG 9000 :(
        
         | jiffygist wrote:
         | 3 cybers, 240 cells, go!
        
       | jordigh wrote:
       | Aw, monster in-fighting kills don't count? That's my favourite
       | kind of kill. In-fighting is a basic Doom skill, kind of
       | forgotten in modern FPSes.
        
       | pseingatl wrote:
       | idkfa doesn't work
        
       | anthk wrote:
       | Now do it with Nethack/Slashem.
        
       | Beijinger wrote:
       | Nice. But I would prefer this as a Captcha: https://play-cs.com/
        
         | chrisan wrote:
         | Doom is the defacto "I wonder if we can get it to run on x"
         | program
        
       | airstrike wrote:
       | This was created with Vercel's AI assistant "v0"
       | 
       | Here's a link to the chat:
       | https://v0.dev/chat/4X85A52Dzde?b=b_tOXbbZzZPgT&f=0
        
         | pierrec wrote:
         | The JS part is nowhere to be seen, I guess they used the
         | assistant to create the layout, but not the actual DOOM
         | integration part (?) Even then, that chat gets pretty painful
         | to read after a while... Paraphrasing, but that's the gist of
         | it: "center the text in the button", "you didn't center it,
         | center the text", "please please center the text"...
        
           | airstrike wrote:
           | The very beginning of the chat is already inefficient as it
           | wastes a lot of "context space" to just get very basic stuff
           | in like defining the text at the top.. that kind of stuff
           | should go in the very first message
        
         | skrebbel wrote:
         | I read through the chat but it's all nitpicking about layout
         | and there doesn't seem to be any point where DOOM is actually
         | inserted. I don't understand, did the author get the AI to do
         | the easy part and then code the hard part by themselves?
        
           | monkpit wrote:
           | Isn't WASM doom a solved thing already? I wouldn't consider
           | that the hard part, unless I'm missing your point.
        
             | skrebbel wrote:
             | well you'll need integrations to have the WASMised doom
             | tell you when a monster gets hit, or when you died. you
             | need to worry about which keyboard events to pass in, etc.
             | i know it's not super hard but it's definitely the more
             | exciting part of this, vs all the "make the title text
             | bigger" stuff that's in the chat
        
               | to11mtm wrote:
               | Ehh if you think about doom it's just a hook in the loop
               | for whatever triggers the death animation.
        
               | furyofantares wrote:
               | Sure but if you think about making this project I think a
               | lot is already know how to layout a box on a webpage and
               | probably don't know how to hook WASM-ism Doom into the
               | page logic.
        
               | furyofantares wrote:
               | > a lot is already know
               | 
               | I meant "a lot of us already know"
        
               | skrebbel wrote:
               | Wait you wanna live monkey patch the WASM bitcode to hack
               | that hook in? There's gotta be easier ways. This is the
               | kind of stuff I'd hope an AI tool like Vercel's v0 could
               | help with but instead this demo just shows it as a
               | layouter, and an annoyingly bad one at that.
        
         | gruez wrote:
         | >This was created with Vercel's AI assistant "v0"
         | 
         | "with" is doing a lot of the heavy lifting here. I skimmed the
         | log and so far as I can tell, the only thing that the AI
         | assistant did was design the UI. It didn't implement the actual
         | game. This might sound impressive, but aside from adding minor
         | bits of interaction (eg. a button that shows "loading" for a
         | few seconds), there's little difference functionality-wise from
         | a drag-and-drop UI designer like winforms (and its predecessor,
         | visual basic, which existed in the 90s).
        
         | runlevel1 wrote:
         | As others have pointed out, that was only setting up the UI.
         | 
         | Here's the repo with the rest of the source:
         | https://github.com/rauchg/doom-captcha
         | 
         | They also had to modify Doom to skip the menus, add the
         | necessary callbacks, and a few other tweaks.
        
       | magic_smoke_ee wrote:
       | IDSPISPOPD, IDKFA, and IDDQD work but the only weapons that work
       | are the chainsaw up to the rocket launcher.
        
         | jordigh wrote:
         | The shareware weapons. You had to fork out some real cash for
         | the full version if you wanted the plasma weapons!
        
           | magic_smoke_ee wrote:
           | That might be why the plasma rifle and the BFG don't work if
           | it embeds a shareware WAD file. See also:
           | https://archive.org/details/DoomsharewareEpisode
        
       | midnight_shaman wrote:
       | Great idea, looking forward to seeing it on production websites
       | ;)
        
       | ybbond wrote:
       | it's too hard, I bet only bot can accomplish this
        
         | pkkkzip wrote:
         | very easy to build an aimbot. i think its entertaining but to
         | be used as real captcha you need a variety of challenging games
         | but at the risk of turning away many humans, which will
         | ironically open up a market for more such decaptcha services
        
       | cydmax wrote:
       | It took me 3 retries. I've forgotten how to strafe and just moved
       | a bit to the right...
        
       | layer8 wrote:
       | Not very accessible.
        
       | martinbaun wrote:
       | I just died. I guess I am getting old and need to play more
       | strategy games hehe.
        
         | theendisney wrote:
         | Dont feel bad, the discussion shows most of HN doesnt have what
         | it takes :) meanwhile others are trying to move around the map
         | without killing anything. Haha
         | 
         | I cant figure out how to take the right turn without killing at
         | least one shotgun guy.
        
       | vunderba wrote:
       | Thank you for doing the right thing and crediting the original
       | Doom Captcha creator on the github repo. My expectations of the
       | software industry in general have been at an all-time low lately,
       | so this was nice to see.
       | 
       | The original from a few years back:
       | 
       | https://vivirenremoto.github.io/doomcaptcha
       | 
       | https://github.com/vivirenremoto/doomcaptcha
        
       | make3 wrote:
       | you would have to randomize spawns otherwise they can just record
       | a playthrough and repeat it to unlock
        
       | yobid20 wrote:
       | Doesnt work on mobile.
        
         | apgwoz wrote:
         | Was able to play, but it didn't recognize kills. Definitely got
         | 2, possibly a 3rd (hard to tell in small screen).
         | 
         | FF on iOS.
        
       | alexandrehtrb wrote:
       | Very cool.
       | 
       | Suggestions:
       | 
       | - Make the player immortal by default. Also all weapons by
       | default.
       | 
       | - Add strafing, if possible.
       | 
       | - Make the player go to the level exit to finish the captcha
       | (maybe a custom short map?)
       | 
       | - A simpler version for mobile could be the original 3x3 captcha
       | square with enemies attacking you. Tapping on enemy squares would
       | kill them.
        
         | johnisgood wrote:
         | Those suggestions are anti-CAPTCHA or unrelated to CAPTCHA,
         | however.
        
         | Nition wrote:
         | Considering that they've picked a very difficult level on
         | purpose, I assumed it's hard on purpose as a joke. You get to
         | solve the CAPTCHA only once you've got significant skills at
         | Doom.
        
       | dvngnt_ wrote:
       | didn't google's ai genie use automomus agents to play doom to
       | generate training data?
        
       | Dwedit wrote:
       | It took me using Debug Mode to realize there was supposed to be a
       | confetti animation that plays after winning, it loads from a
       | third party site. I have third-party javascript blocked by
       | default.
        
       | wruza wrote:
       | Can't strafe on mobile, that's can shooting range and you are the
       | can.
        
       | mosquitobiten wrote:
       | I broke it, I can enter the menu in firefox with F1, get put in
       | the first level, I shoot the barrels and it counts as monsters
       | killed.
        
       | michaelsshaw wrote:
       | This would be way cooler if this wasn't so fucking difficult!
        
         | econ wrote:
         | If you take a right turn then a left and run into the corner
         | you drop into a secret area with a chain gun, some health and a
         | med pack. The problem is that they are waiting for you if you
         | take the elevator back up. I have no idea how to get past them
         | without killing to many monsters. Even shooting the barrel
         | counts -.-
        
       | tw0fac3 wrote:
       | Wow
        
       | stuckkeys wrote:
       | Thanks satan.
        
       | jokethrowaway wrote:
       | The sad thing is that this is easier than some captchas I've
       | seen.
       | 
       | I remember some crap from hell with hcaptcha
        
       | tom_ wrote:
       | Well at least it wasn't E4M2.
        
       | econ wrote:
       | Just shooting without moving shouldn't solve it. The ammo is
       | excessive.
       | 
       | Mobile needs a better interface and landscape mode.
        
       | cyanydeez wrote:
       | Aren't you afraid you are training AI?
        
       | rickreynoldssf wrote:
       | Kind of hard without strafe.
        
       | snarfy wrote:
       | the controls are ass
        
       | indigoabstract wrote:
       | Ouch, the puzzle is too hard. Maybe the next step could be an
       | automated tool for solving wicked CAPTCHAs? :)
        
       | bilekas wrote:
       | Well this is hard, guess I'm not a human!
       | 
       | It's been so long since I've played doom but without strafing..
       | it's almost impossible!
        
         | KerryJones wrote:
         | Stated elsewhere: hold alt + (left/right) to strafe
        
         | cpill wrote:
         | just go forward to trigger the monsters and then immediately
         | back to where you started for cover and then pick them off at a
         | distance. easy!
        
       | anandsuresh wrote:
       | +100 for technical chops, -100 for usability. +10 for the trip
       | down memory lane, and the self-realization that I now suck at
       | playing video games.
        
         | teach wrote:
         | Yeah, amusingly, I use a keyboard that doesn't have arrow keys.
         | I've bound them to a different layer, but that doesn't work
         | well with this setup.
         | 
         | If this implementation supported the now-standard WASD (which
         | was absolutely used by some high-level Doom players back in the
         | day) AND if it allowed me to fire using the left mouse button
         | (again, like the original game), then it would have been
         | relatively easy to prove that I'm a human. :)
        
           | computerdork wrote:
           | Another thing that makes it "easier" is this actually does
           | support strafe, using Option + left and right arrow keys.
           | Still not easy, but more doable:)
        
             | Fnoord wrote:
             | Option what. I am trying to solve a captcha on a mobile
             | phone. I have 4 buttons on left of screen (equiv to wasd)
             | and on right I can shoot. If I go back the imp (IIRC that
             | was its name) cannot hit me, so I can easily shoot the
             | cannon fodder coming from the right. Gg. But no strafing!
        
               | computerdork wrote:
               | Ah, you must need to be using a keyboard:)
        
             | NooneAtAll3 wrote:
             | what's option? you mean ctrl?
             | 
             | or alt?
        
               | Fnoord wrote:
               | Option is Alt on macOS.
        
           | Fnoord wrote:
           | Not sure if wasd was used by high profile Doom players. You
           | see, there weren't many keybinds. You had ctrl and alt for
           | shoot and strafe (fun thing to do was press del casually on a
           | player's keyboard, like Russian roulette, then be like 'WTF
           | crash?'), and you had the arrow keys for movement. Then you
           | had 4 keys for weapons in Wolf3d and some more in Doom.
           | Swapping those required travel, but IIRC swap wasn't instant.
           | So, no crouch, no jump, no look up or down, not even reload
           | IIRC. Games utilizing wasd were usually multiplayer games.
           | One would sit left, with wasd. One would sit right, with
           | arrow keys.
        
             | drdaeman wrote:
             | Vanilla Doom had a configuration file where one could
             | redefine key bindings (there was 10 total) to anything
             | player wanted. But, yes, I believe custom configs were
             | uncommon (even mouselook was frowned upon amongst the
             | players I knew[1]) and modern gold standard of WASD+M only
             | became a thing after Descent and Quake 1.
             | 
             | https://doom.fandom.com/wiki/Configuration_file#Keyboard
             | 
             | [1]: For a childish reason - being considered not a "true"
             | way of playing. Although maybe that had some rational roots
             | too, because back in the day mices weren't particularly
             | good - bulky with heavy balls and imprecise with lint-
             | hungry rollers and simple low-resolution sensors.
        
         | sznio wrote:
         | >and the self-realization that I now suck at playing video
         | games.
         | 
         | Nah... No mouselook really makes this much harder. Took me over
         | 10 attempts to pass, and I'm Diamond at Overwatch.
        
           | anandsuresh wrote:
           | Didn't realize that was a thing. Was using the keyboard the
           | whole time. Took a few tries to figure out how to strafe...
           | and then just kept the spacebar pressed the whole time, and
           | cleared the CAPTCHA. :)
        
             | NooneAtAll3 wrote:
             | you can strafe?
        
               | mukunda_johnson wrote:
               | In Doom, < and > are strafe, and it works here too.
        
               | stavros wrote:
               | Thanks, this was impossible without strafing, and very
               | easy with it.
        
               | -mlv wrote:
               | Managed to complete the CAPTCHA without strafing but it
               | took me 3 tries.
        
               | ConspiracyFact wrote:
               | I was able to do it without this, but this made it much
               | easier. However, it would be much better if the strafing
               | keys were on the left side of the keyboard. You can bunch
               | your hands together and use your left hand for <, >, and
               | space, but it's awkward.
        
               | bigstrat2003 wrote:
               | They are, kinda. The default Doom keybinds have ctrl as
               | the fire key, space as the "use" key, and alt as a
               | modifier that turns left/right arrows into strafing. So
               | when you play like that, your left and right hands are
               | separated.
        
         | smitelli wrote:
         | This is the secret level (E1M9) that you'd normally encounter
         | after E1M3. By this point in the regular progression you'd have
         | found a shotgun, chaingun, rocket launcher, and probably some
         | armor. Starting this level with just a pistol (and it looks
         | like maybe U-V or Nightmare difficulty) is just begging for a
         | buttwhipping.
        
           | mgiampapa wrote:
           | Yes, this is set to Nightmare, don't feel that bad.
        
             | throwanem wrote:
             | This is the funniest _and_ the most elaborate way of
             | closing form submissions that I think I 've ever seen. Well
             | done!
        
           | ognarb wrote:
           | I managed to pass the catcha on my on my second attempt \o/
        
           | ptek wrote:
           | This is why I like Doom and Doom II, you can just level skip
           | to a level on Ultra Violence and just start blasting, It's
           | good for a quick game compared to War Craft 2.
           | 
           | E1M5, E1M7 are also good levels to skip to on Ultra Violence
           | and start blasting, Using respawn on Ultra Violence also
           | makes it interesting for E1M5 and E1M7.
        
         | Reason077 wrote:
         | Not sure how secure against bots it actually is either. Surely
         | you can make an AI that can play DOOM at least as well a human
         | now days.
        
       | puttycat wrote:
       | Cool, but why is this a CAPTCHA? That is a very broad definition
       | of the test.
        
         | RiverCrochet wrote:
         | Well, for one, CAPTCHA means Completely Automated Public Turing
         | Test To Tell Computers And Humans Apart and I don't think DOOM
         | as in the gameplay is Turing-complete.
        
       | mrcwinn wrote:
       | No WASD?! CAPTCHA fail -- I can tell no human created this.
        
         | bigstrat2003 wrote:
         | Doom didn't have WASD, it had arrow keys to move.
        
       | rmac wrote:
       | do diablo
        
       | fuzzy_biscuit wrote:
       | Pro strat is to peak forward a smidge and then pop off the few
       | zombiemen and shotgun guys that are drawn in.
        
       | bithead wrote:
       | Takes less time than other CAPTCHAs
        
       | mambodog wrote:
       | just to be that guy                         Module.onEnemyKilled(
       | );Module.onEnemyKilled();Module.onEnemyKilled()
       | 
       | probably should run part of the game on the server if you want to
       | prevent bypassing the captcha easily
        
       | grahamj wrote:
       | Clearly from comment comments here some humans can do this, but
       | are we sure that bots can't?
        
       | ProofHouse wrote:
       | Make it 10000x easier and I'd use it haha
        
       | Sparkyte wrote:
       | Incredibly difficult but I love it.
        
       | barfolomew wrote:
       | I died
        
       | ugh123 wrote:
       | Strafe while holding 'option' on Mac
        
       | theendisney wrote:
       | On mobile you have to stop walking to turn. It needs 8 directions
       | to really work.
        
       | davewasthere wrote:
       | I learned I can't play Doom if I can't strafe. I'm a bot!
        
       | mazone wrote:
       | on mobile phone. Just back up directly from the start to the door
       | behind you so you dont get shoot then snipe them from a distance.
       | captcha solved.
        
       | wheresmycraisin wrote:
       | Random trivia: the creators of Doom made sure that they could
       | complete each level starting only with a pistol and 50 rounds by
       | doing it themselves.
        
       | throwanem wrote:
       | Pistol-starting E1M9 "Army Base", the first episode's massive
       | difficulty spike of a secret level, on a _touchscreen?_ Not that
       | I don 't appreciate the massive vote of confidence, but...
        
       | thrillgore wrote:
       | Starting me on E1M9 with the arrow keys and a pistol on what I'm
       | told is Nightmare difficulty is a dick move.
        
       | mishkatronic wrote:
       | I did this on mobile which was challenging. I ended up hugging
       | the left hand wall and taking out enemies as they came into my
       | line of sight.
        
       | zghst wrote:
       | I just started shooting because I kept dying, they appeared and I
       | was able to pass!
       | 
       | Pretty difficult...
        
       | rkagerer wrote:
       | I managed to make one enemy kill another, does that count?
        
       | to11mtm wrote:
       | The fact it's always E1M9 means it is fairly solvable unless they
       | changed Doom's RNG in a meaningful way.
       | 
       | =(
        
       | LarsDu88 wrote:
       | I can see why the next generation of shooters made A and D strafe
       | rather than turn
        
       | rootedbox wrote:
       | doom is deterministic so does not make a good choice for a
       | captcha.. that being said.. this is cute
        
       | msoad wrote:
       | When I try to log into AWS console and have to solve their
       | captcha I always think that the target audience that this is
       | designed to avoid can easily automate it (Some open source models
       | can solve this without all that "AI safety" gatekeeping) while
       | the majority of audience are simply suffering from this
       | "feature".
       | 
       | Apple has proposed a solution to captcha[1] which I can't wait to
       | be standardized and widely used.
       | 
       | [1] https://support.apple.com/en-us/102591
        
         | TowerTall wrote:
         | > you don't have to complete a CAPTCHA. All you have to do is
         | sign in to the app or site
         | 
         | No thank you. Do not want.
         | 
         | PS: I stopped reading the apple support article after reading
         | that sentence.
        
           | msoad wrote:
           | The cryptography that Apple uses for _their users_ is
           | something novel and useful. I'm sure there would be
           | completely open solutions that doesn't require Apple servers.
           | At the moment this is Apple specific. I'm guessing most users
           | will user Apple/Google solutions (just like how Passkeys are
           | being used today) but for the security and privacy conscious
           | there is always ways to keep your own private keys. Most
           | people are handing over their private keys to Google and
           | Apple for Passkeys today. That's not necessary a bad thing.
           | Most people reuse passwords so it's an improvement.
        
             | TowerTall wrote:
             | If Apples solution only tell the site that the current user
             | has an verified apple account without providing futher info
             | I guess I can be acceptable for most. If the site being
             | visited get info about whom that specific user it is a no-
             | go.
             | 
             | On a more meta level it is tragic that we wont be able to
             | use our computer online without being signed in to an
             | online and be verified.
        
               | msoad wrote:
               | > On a more meta level it is tragic that we wont be able
               | to use our computer online without being signed in to an
               | online and be verified.
               | 
               | Fully agreed! Again, for most people this is the way of
               | life. They type in Google in search bar to go to google
               | Google and then search...
               | 
               | > If the site being visited get info about whom that
               | specific user
               | 
               | My understanding is that you only get to know user is
               | legit without knowing anything about them.
        
         | bn-l wrote:
         | > Automatic Verification helps protects your privacy when you
         | sign in to an app or website. Instead of being asked to
         | complete a CAPTCHA:
         | 
         | > An Apple server validates your device and Apple Account.
         | 
         | > This verification is sent to a third-party token issuance
         | server, which has been verified by Apple. The token issuance
         | server generates a private access token that verifies you to
         | the app or website.
         | 
         | This is definitely not better for privacy and gives apple even
         | more control. I would rather 3 extra seconds for captchas.
        
       | jiffygist wrote:
       | I hate the borked sounds so much
        
       | mikedesu wrote:
       | Nice try, but that's child's play compared to what I've done. I
       | was cracking CAPTCHAs before it was cool, back when you were
       | still playing with toys. And as for your "educational" purposes,
       | please. We both know you're just trying to look smart. Keep
       | trying, maybe one day you'll catch up to the rest of us.
        
       | mansilladev wrote:
       | Glad you're not refactoring my 2FA. Took me 4 attempts to kill 3
       | monsters.
        
       | m1117 wrote:
       | I'm glad I'm so old and remember iddqd idkfa
        
       | lazide wrote:
       | Compiling? [https://xkcd.com/303/] so archaic. Now I'm playing
       | Doom so I can login to the console.
        
       | notcrazylol wrote:
       | Why is this level this hard? or am I just bad at the game?
        
         | Jensson wrote:
         | Stand still and attract them to you.
        
       | tomaytotomato wrote:
       | This is really cool, I even tried to get monsters to frag each
       | other but it didn't count towards the required 3 kill count.
       | <clap>
       | 
       | Also using cheats, kills with the rocket launcher aren't
       | registered on the app.
        
       | abbabon wrote:
       | This CAPTCHA requires some serious cheating (IDDQD / IDKFA) to
       | solve.
        
       | tobyhinloopen wrote:
       | Lol why is it so absurdly hard
        
       | pshirshov wrote:
       | 1) Extremely annoying on smartphones
       | 
       | 2) Exclusive, won't work well for many of those who need
       | accessibility
        
       | irusensei wrote:
       | Really cool. I'm all for cool and interesting captchas if there
       | has to be captchas at all. Aparently this one is made to be
       | really hard uh? Gave me some wicked idea about a captcha where
       | you have to survive a few seconds in a 2hu fight.
       | 
       | You can argue that's bad for accessibility and you are correct
       | but let me use this opportunity to talk about that hostile "put
       | things into orbit" thing big I noticed Microsoft and X using.
       | Recently I've installed windows 11 on a laptop and had to create
       | an MS account for testing purposes. During the captcha phase the
       | OS was installing drivers in the background so the resolution
       | changed to 4k during the challenge but the UI didn't scaled. With
       | no way to reconfigure the display I had to strain my eyes to
       | finish it and I suffer from miopia and astigmatism.
        
       | Andrew_nenakhov wrote:
       | How am I expected to kill monsters if I can't strafe, goddamit?!
        
         | ceautery wrote:
         | Comma and period to strafe.
        
       | slightwinder wrote:
       | I hate it! Good CAPTCHA.
        
       | 75w wrote:
       | See also rudecaptcha.xyz
        
       | tumsfestival wrote:
       | I see people here having trouble with this, be thankful this
       | isn't Plutonia on Ultra-Violence.
        
       | Bengalilol wrote:
       | Open console, type: for (i=0; i<3; i++) {Module.onEnemyKilled();}
       | Done.
        
       | tomw1808 wrote:
       | without idkfa and iddqd I cannot pass. Its the strive left/right
       | thats missing for me (not sure if that was in the original
       | version actually), but it really throws me off that I need to use
       | arrows and not asdw.
        
         | bigstrat2003 wrote:
         | The original was arrows, not WASD. You hold alt + left/right to
         | strafe.
        
       | slumberlust wrote:
       | RIP to those of us with tenkeyless keyboards :(
        
       | Raed667 wrote:
       | How is this a captcha ? how does the server verify you killed 3
       | monsters?
        
       | alexshendi wrote:
       | I couldn't do it. I suppose I'm a Russian CyberBot! druzhba!
        
       | ngneer wrote:
       | Strange. Wouldn't computers be better at this than humans?
        
       | mattcantstop wrote:
       | Difficulty level: 1000/100
       | 
       | But I love it!
        
       | moonlion_eth wrote:
       | Ironically robots are better at captchas than humans
        
       | econ wrote:
       | Do you have a version that requires more kills?
       | 
       | At 20 or so it would be a useful admin login challenge.
       | 
       | To make it less hackable it could perhaps submit which monsters
       | were killed and/or the time between kills or some other pattern.
       | If the set roughly matches the previous attempts it could make
       | for quite the challenge to brute force.
       | 
       | The "hackers" are already complaining that the challenge is to
       | much for them :p I think you are onto something.
        
       ___________________________________________________________________
       (page generated 2025-01-02 23:00 UTC)