Bronya-Rand / DDLCModTemplate2.0

A new template for producing DDLC mods that adhere to Team Salvato's guidelines based off DDLC itself.
58 stars 18 forks source link

Better Blue Screens of Death #11

Closed Bronya-Rand closed 2 years ago

Bronya-Rand commented 2 years ago

The original DDLC featured a Blue Screen of Death (BSOD) for players running the game on Windows and in fullscreen mode. While this was useful to scare people of their PCs crashing, it was very limiting and static (non-animated). Additionally no BSODs were made for macOS or Linux.

Recently, some users have taken up making their own attempts of the BSOD for each different OS but due to how limited Ren'Py 6's platform module is and again the issues of a single BSOD image, it would be a bit challenging to make different BSODs and call them each time.

This PR proposes the feature Better Blue Screens of Death. This add-on to screens.rpy adds almost-realistic Windows BSODs from the XP era to Windows 10/11 as of this PR date (10/27/2021) with the ability to make your own error code than re-use the same DDLC_ESCAPE_PLAN_FAIL or multiple single BSOD images. Additionally it adds macOS and Linux kernel panics to the screen layout and a QR code for Windows 10/11 BSODs. This feature will behave very similarly to scene bsod from the original game but use call scene bsod() instead with either given or non-given parameters.

Features

  1. BSODs from XP to Windows 10/11 (21H1) .
  2. New BSODs for macOS and Linux.
  3. Custom Error Code Messages.
  4. Custom File Name Error. (Windows 7 and Linux BSOD Only)
  5. Red Screen of Death. (Windows 11 BSOD Only. Thanks Jacob from the TSC!)
  6. Animated progress percentage. (Windows 8+)
  7. QR Code Support (Windows 10+)

How to use

Simply call the BSOD screen using the following line and optional syntax.

call screen bsod(bsodCode, bsodFile, rsod)

Optional Syntax:

Examples

call screen bsod(bsodCode="metaverse_kernel_error", rsod=True)
call screen bsod()
call screen bsod(bsodCode="metaverse_kernel_error", bsodFile="mihoprot2.sys")
Bronya-Rand commented 2 years ago

Preview Screenshots

The iconic error screen from the original game screenshot0005

Legacy error screen (Windows 7 and below) screenshot0003

Modernized error screen from the original game screenshot0006

More modern error screen from the original game screenshot0007

The RSOD (thanks Jacob) screenshot0008

Mac OS BSOD/Kernel Panic Preview (based off OS X Snow Leopard) screenshot0010

Linux BSOD/Kernel Panic (loosely based off FreeBSD) screenshot0012