I don't really like emotes so that wave will be the first and the last.
My name's Nik, or Nikita Krapivin if you prefer boring legal names, I speak English and Russian, my timezone is UTC+05 or MSK+02.
I'm 19 years old, my current occupation is doing console ports. I (currently) study at PMK
- Discord: nik5351
- E-Mail: basically the email I use for my git commits, well, alienoom (the at symbol) yandex (dot) ru
- Twitter: (at) nkrapivindev
- GitHub: you're here!
- VK (Russian only please): (at) nkrapivindev
I'm also present at some Discord servers related to GameMaker research like Underminers and the GameMaker Kitchen.
Oh, right, here's a list of my activities, boring adults call this a CV:
-
Wally and the FANTASTIC PREDATORS
My first ever commercial console port! Out on Xbox One/Series (back compat), PlayStation 4/5 (back compat) and the Nintendo Switch.
Uses Kotfile for saving and NekoPresence for Discord Rich Presence.
The leaderboards and cloud save servers for the VK Play version are powered by Kotodoski and Deta Space.
Made with GameMaker.
-
A pretty simple game that I ported to PlayStation 4/5 (back compat) in a few weeks, has PSN leaderboards and trophies.
Uses Kotfile for saving.
Can't say much else about it, it's just a simple game.
Made with GameMaker.
-
Ported for Valkyrie Initiative to the Nintendo Switch.
Made with GameMaker.
-
Ported for Valkyrie Initiative to the Nintendo Switch.
Made with Unity. My first ever experience with this engine, actually.
-
Ported for Valkyrie Initiative to the Nintendo Switch (Xbox One planned in the far future).
(Was?) Made with a custom engine in C++ and Windows's OpenGL (WGL), also Audiere as the audio backend.
I integrated the SDL2 library for controls, saving and pretty much everything. This worked well on the Switch.
(Thanks to Ryan "icculus" C. Gordon, Ethan "flibitijibibo" Lee and many others for maintaining the Nintendo Switch port of SDL2!!)
Then I replaced the Audiere backend with mojoAL since Audiere is licensed under LGPL and I couldn't use it on the Switch.
After all of my changes I was also able to run this game on the Xbox One with relative ease,
however, some things in SDL2 for GDK were not implemented, so I implemented them and contributed my code back.
Overall this was the coolest projet to work on, looking forward to more Xbox/GDKX stuff.
-
Ported for Valkyrie Initiative to the Nintendo Switch.
Had to tweak the controls a little, and also saving.
Made with GameMaker.
-
Ported for Valkyrie Initiative to the Nintendo Switch.
My first ever Ren'Py port!
This is a kinetic visual novel with no interactions and the default Ren'Py UI,
so it was a good first candidate for porting, which also proved that my port passes Lotcheck.
-
Ported for Valkyrie Initiative to the Nintendo Switch.
My second Ren'Py port! This time a more complex VN.
Thanks to the original dev team for helping out with art assets.
-
Ported for Valkyrie Initiative to the Nintendo Switch.
My third Ren'Py port! This time with video playback and system on-screen keyboard integration.
Thanks to the developer for providing all the art assets to our team and being very helpful in general.
-
Ported for Valkyrie Initiative to the Nintendo Switch, Xbox One + Series X|S + PC (Xbox Live), PlayStation 4, GOG (Galaxy SDK), VK Play (Fume) and Linux (Steam Deck)!
The biggest porting project so far! Also uses NekoPresence for Discord Rich Presence on PC.
Denis is very cool I hope you have a very awesome life!!!
-
Skelethrone: The Chronicles of Ericona
Ported for Valkyrie Initiative to the Nintendo Switch, Xbox One + Series X|S + PC (Xbox Live), PlayStation 4, GOG (Galaxy SDK), VK Play (Fume) and Linux (Steam Deck)!
This is Valkyrie Initiative's first PlayStation 4 release, Mondealy was the second release due to sudden release date changes.
-
This is an open source wrapper around Discord's rich presence library for GameMaker.
It's used in many games, for example Mondealy: Day One, Vividerie, MAKE ME REAL or Wally and the FANTASTIC PREDATORS.
-
This is a fork of the ESCAPI webcam library that adds GameMaker support, so yeah, this is a webcam extension for GameMaker.
Sadly I don't know of any public games that actually use it, maybe because it's kinda spooky to take pictures from the webcam nowadays? Who knows.
-
This is a library to create and manage multiple windows from GameMaker, very useful for in-game tools like level editors or whatnot.
It's using Direct2D for rendering and accepts GML surfaces as canvases.
-
This is a callback-driven library for easy asynchronous file operations in GameMaker.
Very important if you're porting a game to consoles and want to pass certification.
Right now Kotfile is used in Wally and the FANTASTIC PREDATORS
-
A small 'audio player'-like class for Nintendo Switch HD Rumble files (aka .bnvib).
It has the ability to play, stop, pause and rewind bnvibs, it also allows to play looping bnvibs that have loop points assigned in them.
It's also used in Wally and the FANTASTIC PREDATORS.
-
A pure-GML implementation of the UPnP protocol, very useful if you want to do automatic port forwarding in a multiplayer game on a compatible router.
-
I also made workarounds for some issues with the new Steamworks extension on Linux, but nowadays they're obsolete due to the Steam Runtime migration on YoYo's side.
-
A port of Keevee's aberration shader as an IDE layer filter, yes, not approved by YYG.
-
Same thing except it's a port of odditica's bktGlitch shader.
-
A Python library to communicate with the EPOS web diary used in Russia, Permskiy krai.
-
I'd list more but I probably shouldn't... :|
-
Undertale Spaghetti Project installer
I made an installer for a fan italian translation of Undertale, called the Undertale Spaghetti Project.
It's written in C#, the UI is written in Avalonia, and compiled with .NET 5 for Windows, Linux and even macOS!
-
This is a tool to generate glue JNI->C code for native C/C++ Android GameMaker extensions.
Since GameMaker's Android module doesn't allow you to call into C/C++ native libraries directly, you need to go through the awful chain:
GML -> C++ (engine) -> JNI -> Java (engine java code) -> JNI -> C/C++ (your extension)
And JniGen allows to automate this process a little.
See ya~