Skip to content
Sign upLog in
← Back to Community
Prank blue screen of death (SO REALISTIC!!!)
Profile icon
Baconman321

You were playing your favorite video game (which your mom and dad told you specifically not to), when all of a sudden, oh noooes! A BSoD (blue screen of death) appears, you panic, not knowing big boi words. It restarts, then says get fooled! You've been gnomed!

Funny BSOD prank. I tried it out with my dad, he totally got fooled XD. Kinda hard to prank people since it's on a webpage (for the people who know nothing about computers, it may be easy), but nevertheless fun. Looks sooo authentic, I even put real errors in there (yes, DRIVER_IRQL_NOT_GREATER_THAN_OR_EQUAL_TO is an error)! Hope you like it (hint: works best in full screen) :)

Voters
Profile icon
LegendaryWolf
Profile icon
Wilke000
Profile icon
codingjlu
Profile icon
maxina
Profile icon
TsunamiOrSumth
Profile icon
conspicous
Profile icon
rflctnsmusic
Profile icon
Leroy01010
Profile icon
tankerguy1917
Profile icon
dudeactualdev
Comments
hotnewtop
Profile icon
kellanb

insted of saying restarting: 100% say dumping pysical memory: 100%

Profile icon
Baconman321

@kellanb
I mean, so far I haven't seen it say that (I've gotten the BSoD a couple of times, but then again it is way different because I think the one I made mimics before windows 10, so windows 7?)

Profile icon
kellanb

@Baconman321

yea dumping pysical memeory is win7, but i though this was simmilar to win7.

Profile icon
Baconman321

@kellanb
Ah.

Isn't dumping memory to disk just saving the contents of RAM to an ssd/hard drive/other "permanent" storage device?

Profile icon
kellanb
Profile icon
Baconman321
Profile icon
xxpertHacker

So, I had seen your Repls, forked this Repl in particular, and had put in a bit of time to heavily rewrite the code (it was pretty gross, not to be mean), and had completely rewritten it, much more readable all around now.

And it just so happened to be... that you had posted that very Repl, leading me here.

Also, I had updated it to use an image that one of the posters had uploaded (a deleted user).

And, lastly, I failed to get the authentic Windows 7 Lucida Console font family that BSODs used, so I settled for Lucida Sans Typewriter, which is what Lucida Console is a derivative of.

https://repl.it/@xxpertHacker/Fake-BSoD

Much more authentic.

Profile icon
Baconman321

@xxpertHacker
Yeah, it was a one day project, and yeah, I didn't want to buy the lucida console font, since I'm not gonna spend like $30 just for one project. Also, I my style isn't really promises, but I guess I should use the more often.

Profile icon
xxpertHacker

@Baconman321
What do you have against promises? You'll have to get used to them eventually, ECMAScript is usually offered asynchronous and concurrent APIs, so it makes code that revolves around the event loop much nicer. You can do some pretty cool stuff with 'em, and most newer APIs (since 2015+) are using promises, so, unless you stick to below roughly ES2015, you'll need to use them, as the native code uses them.

Also, I see that you're a Node.js user, if you ever use Deno, which Repl supports at https://repl.it/l/deno, they make heavy use of promises, but they also have top-level await enabled by default, making it effortless to use. (V8 has had it since 2019, I have it enabled in my own browser)

It made the multiple levels of nesting into just one level.
Besides that, I made a greater separation between HTML, ES, and CSS, a large portion of it was tightly coupled together, which isn't good practice.

But really, the biggest change was the removal of the switch case, replacing it with one line:

switch(iterator){ case 1: document.getElementById('booting').textContent = 'Booting up... |'; iterator++; break; case 2: document.getElementById('booting').textContent = 'Booting up... /'; iterator++; break; case 3: document.getElementById('booting').textContent = 'Booting up... -'; iterator++; break; case 4: document.getElementById('booting').textContent = 'Booting up... \\'; iterator = 1; break; } iterator2++;

vs

{ const limit = 90 + Math.floor( Math.random( ) * 50 ); for ( let iterator = 0; iterator !== limit; ++iterator ) { await delay( 0.1 ); textNode.textContent = "|/-\\"[ iterator & 3 ]; } }

Imho, that's way cleaner now.

But, I just realized, your code was already statically typed, maybe you'd like TypeScript?

Profile icon
Baconman321

@xxpertHacker
I don't really know nodejs, I just use it in minor projects. And anyways, yeah I know how cool promises are and I'm starting to use them more. Anyways, thanks for the tip. Before, I never really used promises (and also I found out the hard way that setTimeout and setInterval aren't actually going to provide exact delays and aren't the best for determining when lines of code should execute). (btw I have nothing against promises, it's just that I never used them a lot)

Profile icon
xxpertHacker

@Baconman321
Oh, sorry for the blind assumption that you "had something against promises," I presumed it was just a lack of familiarity, which seems to be the case.

But what did you mean about the timeouts? They're mildly accurate, for short durations. As long as you don't set a timeout for over an hour, it should be fine.

Profile icon
Baconman321

@xxpertHacker
Wait, why an hour? Also, yeah I don't know that much about promises. Just the resolve/reject and stuff. I learned them in a tutorial, but forgot them again.

Profile icon
xxpertHacker

@Baconman321
They lose precision over time, so, for a minute, it should be accurate, 10 minutes... maybe, don't go too far. SO has this post on them: http://stackoverflow.com/questions/12351521, I personally have never needed timeout/interval, but I think there was one time where I saw them used, that was pretty cool, I think
@AdCharity
had used something like Promise.all on a promise and a delay that rejected to create HTTP timeouts, maybe the wrong person? But still, cool nonetheless.

Timeouts are a very niche feature.

Profile icon
Baconman321

@xxpertHacker
Yeah, anyways thanks for the advice.

Profile icon
jihhyuu202

you can try making it fullscreen so it looks more real

@Baconman321

Profile icon
Baconman321

@jihhyuu202
You can press f11 in chrome to fullscreen it.

Profile icon
Pizzaz4me

I don't know how realistic this is because this type of screen has never appeared on my laptop as long as I remember

Profile icon
Henslo

My computer stopped working and every time I opened it, it said, “You PC needs to be restored please insert a disc or mini SD”

Profile icon
Leroy01010

and guess what the technician say the screen:

GET FOOLED HAHAHAHAHA!

Profile icon
Leroy01010

I thought it actually happened so i brought my computer to the technicans.

Profile icon
Leroy01010

wait nooo!

Profile icon
Leroy01010

I've heard of Black screen of death but not blue!

Profile icon
conspicous

what about the GSOD (Green Screen Of Death) that exists in windows insider editions?

@Leroy01010

Profile icon
Leroy01010

The green screen of death only appears when you're running an Insider Preview version of Windows 10. It's the same as the blue screen of death, and it will show the same error messages. ... If you see a green screen of death (GSOD) on your PC, that's a sign you're using an Insider Preview build of Windows 10.

@Lethdev2019

Profile icon
conspicous

that is literally what i said.

@Leroy01010

Profile icon
Leroy01010
Profile icon
conspicous

also - have you seen my earlier comment?

@Leroy01010

Profile icon
Leroy01010
Profile icon
conspicous

how do i know that? it is because i can't sit down for 5 mins without someone needing help during school with the computers.

@Leroy01010

Profile icon
Leroy01010
Profile icon
conspicous

DRIVER_IRQL_NOT_GREATER_THAN_OR_EQUAL_TO means that there is an issue in your driver software - this can be fixed by reinstalling, updating or uninstalling drivers. Usually this happens because the driver software requests a used memory address so the OS (windows) denies access to the driver which the hardware needs which causes a kernel panic (BSOD)

IRQL_NOT_GREATER_THAN_OR_EQUAL_TO is the generic error code.

you can find more info here: https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0xa--irql-not-less-or-equal

you don't really get those types of bsods UNLESS windows is modifed via regedit.exe. usually you get something like this:

loading

It has actually happend to me with the code MEMORY_MANAGEMENT which is to do with the Random Access Memory.

But still, pretty good job :)

Profile icon
DungeonMaster00

@Lethdev2019
i had it happen when joining a zoom meeting due to a broken camera

Profile icon
Wilke000
Profile icon
DungeonMaster00

@Wilke000
actually i think there was an error in windows. the camera worked fine when it ran Linux

Profile icon
conspicous

yeah it is to do with the camera drivers. it is a type of nmi. (non maskable interrupt). Drivers tells Windows on how to use a device.

@DungeonMaster00

Profile icon
tankerguy1917

this is so cool. it will probalby give hardcore geeks some 'nam flashbacks

Profile icon
ironblockhd

Add this javascript:

onclick=()=>{document.body.requestFullscreen()}

It will go fullscreen when you click :D

Profile icon
Baconman321

@ironblockhd
I thought of that, but I thought it didn't go actual full screen. Thanks, I forgot that :D

Profile icon
ironblockhd

@Baconman321
now you actually can fool people haha

Profile icon
Baconman321

@ironblockhd
problem is it only works if you click. Also, it makes the screen black for some reason. I think it's better just as a prank, like pull it up yourself and ask your mom, dad, or whoever in a worrying voice.

Profile icon
zplusfour

cool

Profile icon
ironblockhd

Use fullscreen and it actually will be realistic :-)

Profile icon
CodeLongAndPros

Uh that’s not an error. This is a real error:
image

Profile icon
[deleted]

@CodeLongAndPros
yes, it's what a windows 7 bluescreen of death looks like. The error you're showing is a kernel panic, which only accours on Unix(-like) systems. This is a bluescreen of death:

IMG_2935

Profile icon
[deleted]

@CodeLongAndPros
additionally, the error shown actually exists: https://youtube.com/watch?v=zjx2cVpnXe8. Linux is better but not the only thing that exists.

Profile icon
CodeLongAndPros

@behavingEffort
Uh I mean a kernel panic is a better error than “Oops, something went wrong”

Profile icon
Baconman321

@CodeLongAndPros
Yes, I can make a more complicated error page, but usually windows makes a more simplified (I kind of imitated their BSoD layout) Blue screen of death.

Profile icon
CodeLongAndPros

@Baconman321
But anyone would know that a STOP error is just Micro$ofts way of saying “we made this bad”. I’ve used Linux for a year and only got a panic once, when I pulled the hard disk out during boot.

Profile icon
Baconman321

@CodeLongAndPros
Ok, just making a more simplified BSoD. Imagine making an actual kernel panic page, I'd drive those computer noobs crazy XD.

Profile icon
CodeLongAndPros

@Baconman321
Nah, just use a sysrq trigger in proc.

Profile icon
Baconman321
Profile icon
CodeLongAndPros

@Baconman321
echo c | sudo tee /proc/sysrq-trigger

Profile icon
Baconman321

@CodeLongAndPros
I haven't really used linux, if I ever get a computer, I'm definitely gonna dual boot it with linux. Thanks, but I don't know much about linux, srry.

Profile icon
CodeLongAndPros

@Baconman321
Well I mean just !w magic sysrq key and !w kernel panic

Profile icon
Baconman321

@CodeLongAndPros
I know nothing about sysrq key and kernels sorry.

Profile icon
CodeLongAndPros

@Baconman321
yeah well bang (!)w in DuckDuckGo searches Wikipedia for it.

So https://duckduckgo.com?q=!w%20magic%20sysrq%20key will show the sysrq Wikipedia page.

Profile icon
Baconman321

@CodeLongAndPros
Yeah, thanks. I already got the basic concept. I'll have to go deeper into it if I need to.

Profile icon
CodeLongAndPros

@Baconman321
Also the boot screen is not great.

Profile icon
Baconman321

@CodeLongAndPros
yeah, sorry. I couldn't think of much more. I think that'll be my work tonight.

Profile icon
leo-ironkey

:o

Profile icon
k9chelsea2

:O

Profile icon
zplusfour

@k9chelsea2
new pfp lmao

Profile icon
k9chelsea2

yes lol