Last updated
Last updated
The custom splash is an assembly file that loads before the splash is displayed. It allows you to create custom splashes from simple progress bars to complex console art.
[!TIP] To get started to our Kernel Simulator API, visit .
The mods have the file extension of .dll
, and can support more than one code file for each mod. This will allow you to make bigger mods that can't fit on one source file, or if you want to separate some parts of the big source code to multiple fragments.
[!NOTE] We recommend following the template repository for making your own mod .
If you're going to make your custom splash, follow these steps:
On the Start Page, click on New Project
Click on Class Library (.NET Framework)
or Class Library
, select VB or C#, and name your splash. Select Framework as .NET Framework 4.8
or .NET 6.0
. When you're finished, click Create
.
Right-click on References in the Solution Explorer, and press Manage NuGet packages...
Go to Browse
, and find Kernel Simulator
and install it.
You will see that your KS executable files are added to the references. In your project file, this will be added:
The code will be ready in your SplashName codefile:
Now, follow these steps to create your first mod:
Between the Public Class... and the End Class lines, let Visual Studio know that you're going to create your KS mod by writing: Implements ISplash
Define properties for mod information by putting below the Implements ISplash: (Change the values as appropriate)
Make your opening splash sub named Opening() that implements the ISplash.Opening, by writing:
Replace every 'Your code below
comment with your code. Repeat this step on all the interface subs
Make your display splash sub named Display() that implements the ISplash.Display, by writing:
Make your progress report splash sub named Report() that implements the ISplash.Report, by writing:
Make your closing splash sub named Closing() that implements the ISplash.Closing, by writing:
Right-click on the solution and press Build.
Copy the output .dll
file to KSSplashes directory in your profile folder (/home/<user>/
in Linux, and Users\<user>\
in Windows)
Run your Kernel Simulator you've just referenced to in your project, and set it to display your splash using the settings
command. Be sure to reboot the kernel.
You can make your subs anywhere on the class, but if:
they're on the different class, make a separate code file for it:
The new subs or functions should meet the following conditions:
They shouldn't make an infinite loop unless you're making them that exits if specified conditions are met
They shouldn't try to cause errors with the kernel.
If you're an exploiter and are making the exploit code for the splash implementation, do so on your test environment first then the production environment, then make your CVE report so we get attention and fix that quickly.
If you're going to add imports, these rules must be met:
Don't import "KS" by itself. KS does that automatically
When importing modules/classes like TextWriterColor, it's written like this: Imports KS.Misc.Writers.TextWriterColor
If you want to check out the examples, feel free to check them out in the respository in GitHub.