WTT - Komrade Kid by Nyetendo 1.0.1
-
- SPT 3.9
- GrooveypenguinX
- 892 Downloads
- 50 Comments
Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.
The WTT Team is proud to present our first completely custom usable item: a fully functional Nintendo Game Boy. This mod comes complete with:
- Working emulation for .gb ROMs inside an actual Game Boy model
- A custom cartridge creation system for adding more games
- Save compatibility with other emulators
- And even accessories!
This Game Boy is fully animated and can be used in the hideout! Sit back at the rest station, pop on some Tarkov TV, and take yourself back to 1995 with this blast from the past.
I've also opted to include ONE SINGULAR ROM. It is a fan-made version of Pong, a game that was never actually released on the original Game Boy so by all means it's not infringing on any copyright that I know of. (https://github.com/Boniato82/Pocket_Pong)
This project was extremely fun to work on. I learned a ton about how Tarkov handles items, animations, and controllers. Here's some of the highlights that made this project possible:
- A full-fledged Game Boy emulator, specifically designed for Unity projects (UnityGB: https://github.com/KonsomeJona/UnityGB ).
- Three new classes on the client and server for the Game Boy, the accessories, and a new template for the accessories.
- Two new controllers (item controller and client version) to handle the base Tarkov states for the item.
- A fully fleshed-out Weapon Container, based on the range finder, with new layers added to the animator controller and new parameters to control their operations.
- Custom animations, all created in Choccy's first-person rig. Every single button press, cartridge load/unload, and even the power switch is animated. The controller makes simultaneous left/right hand animations using additive layers in the animator controller.
- Tons of backend work in the client to trigger animations, handle emulator states, save game data, prevent "busy hands" bugs, and apply a ton of patches to make the custom items function like regular Tarkov items.
This project would not have been possible without the following incredibly talented individuals:
Tron - Initial Unity Prefab Creation: One of the founding members of WTT, lead asset developer, and my overall partner-in-crime when it comes to Tarkov content. Tron and I met by chance in the SPT Discord, and once we teamed up, our passion for learning has never stopped. With well over 1,300 custom items in WTT alone, Tron has been the driving force behind the creation of custom weapons, wearables, usables—pretty much anything you can imagine. You know him, you love him, and I’m proud to call him my good buddy. ❤️
EpicRangeTime - Sourcing and purchasing the Game Boy model: (https://www.cgtrader.com/3d-mo…ntendo-gameboy-retro-1989) 😎
Krackasaurus - 3D Modeling, Texture Design, and Art Design: Krack personally crafted the worm light from scratch in Blender and helped create teasers for the Game Boy.
Rexana - Texture work: Helped on the textures of the Game Boy, base cartridge, and worm lights.
SSH - SDK Guru: None of this would have been possible without the groundwork SSH and SamSWAT laid with the SDK, as well as the personal help they've both been along the way.
Choccster - Animation Support: Provided his first-person rig and put up with my questions while I navigated creating animations from scratch using it.
Cj - Client Wizard: A constant source of knowledge on the Tarkov client, and always willing to help me learn along the way.
ME - I uh, spent way more time on this project than I'd like to admit lol. Once it became a feasible thing that could actually happen, I went hard and learned how to create custom animations from scratch, new types in the client/server, new controllers, new usable items, all complete with logic to load/unload them from the item as well as sync everything to work within tarkov's fickle animation states lol. It was a super fun project, and I'm glad I took the time to make it what it is today. This is the Team and I's first custom usable item, but it surely isn't going to be the last
I hope you all enjoy this trip down memory lane, packed with as much nostalgia as I could possibly induce
Like my work? Buy me a coffee!
https://ko-fi.com/grooveypenguinx
------------------------------------------------------------------------------------------------------------------
The Game Boy is available from:
- Mechanic:
- Barters at level 1, Sells at level 2.
- Peacekeeper:
- Sells at level 1 (but the price is steep...).
The Cartridges are available from:
- Mechanic:
- Sells Tetris & Pong at level 1, barters for all other cartridges at level 2 and 3.
- Peacekeeper:
- Sells Link's Awakening at level 1 (he's lowkey a Zelda superfan).
The Worm Lights are available from:
- Mechanic:
- Sells the yellow light at level 1
- Sells the purple light at level 2
- Sells the Lisa Frank edition at level 3.
Additional Availability
- All items have a chance to spawn in a few containers on every map. Best of luck!
------------------------------------------------------------------------------------------------------------------
This mod DOES NOT COME WITH ANY ROMS OUTSIDE OF ONE FAN-MADE PONG ROM.
That being said, this mod does allow you to create your own custom cartridges for the Game Boy. Each cartridge is defined through a .json
file, and this guide will walk you through the process of setting up your cartridges, adding game ROMs, customizing cartridge appearance, and adjusting trader and loot availability.
Getting Started: File Setup
Before you begin adding a new cartridge, make sure that your ROM and cartridge image files are placed in the correct directories:
- ROM Files: Add
.gb
files to the following directory:BepInEx/plugins/GameBoyEmulator/roms
- Cartridge Images: Add image files (such as
.png
) that will be displayed on the cartridge's label here:BepInEx/plugins/GameBoyEmulator/CartridgeImages
Step-by-Step Guide: Creating a Cartridge
1. Create or Update a .json
File
- Go to the
db/cartridges
folder, located inside this mod's server folder (WTT - Komrade Kid by Nyetendo) - You can either create a new
.json
file, or update the eicustom_cartridges.json
to include your new cartridge.
2. Define the Cartridge
Each cartridge must have a unique entry in the .json
file. Here’s a breakdown of the properties you’ll need to define:
Basic Information
- ID: Change the ID to a new MongoId to ensure uniqueness. You can generate a MongoId using a tool like this MongoDB Objectid generator.
- RomName: The name of the
.gb
file in theroms
directory, for example: - CartridgeImage: The image file that will be used as the label for the cartridge. Ensure that this matches the file name of the image in the
CartridgeImages
directory: - PrefabPath: This defines the 3D model that the cartridge uses. Update it to match the path of your desired cartridge color or style:
- Included in this mod are the following cartridge color bundles:
- gb_cartridge_blue. bundle
- gb_cartridge_gray. bundle
- gb_cartridge_red. bundle
- gb_cartridge_yellow. bundle
- gb_cartridge_purple. bundle
- gb_cartridge_transparent.bundle
- In this case, we will use the gray cartridge .bundle for tetris:
-
Localization
- Customize how the cartridge appears in-game by modifying the
locales
section:JSON"locales": { "en": { "name": "Tetris", "shortName": "Tetris", "description": "Tetris is a puzzle video game created in 1985 by Alexey Pajitnov, a Soviet software engineer." } }
- name: The full name of the cartridge.
- shortName: A shorter version, for use in tight UI spaces.
- description: A brief description that gives context to the game.
3. Set Pricing
Cartridges can be configured to have different prices in both the Flea Market and the in-game Handbook:
- fleaPriceRoubles: This sets the price of the cartridge if it is sold on the Flea Market.
- handbookPriceRoubles: This determines the base value of the cartridge in the in-game Handbook:
Adjust these values to reflect the worth of the game you’re adding.
4. Add to Traders and Loot Containers (Optional)
You can add the cartridge to in-game traders or static loot containers to make it obtainable through gameplay:
- Add to Traders: Configure the
traders
section to specify which traders can sell the cartridge, at what loyalty level, and for what price:JSON
Display More"addtoTraders": true, "traders": { "MECHANIC": { "6710230f8fc2d4c53d3bb225_settings": { "loyalLevel": "1", "unlimitedCount": false, "stackObjectsCount": 7 }, "6710230f8fc2d4c53d3bb225": [ { "count": 34420, "_tpl": "MONEY_RUB" } ] } }
- Set
addtoTraders
totrue
to enable trader availability. - Define trader specifics like the trader (id or the name from src/resources/configconsts.json),
loyalLevel
(the level of loyalty required) andstackObjectsCount
(the quantity available), and the barter itself requires count (the number of this item required for the trade), and _tpl (you can use the id of the item, or name of the item found in src/resources/items.json) - Make sure you generate new MongoId's for each new barter scheme you add. Multiple schemes with the same Id will break the trader. You can generate a MongoId using a tool like this MongoDB Objectid generator.
- Set
- Add to Static Loot Containers: Specify the loot containers where the cartridge might spawn and set the probability:JSON
Display More"addtoStaticLootContainers": true, "StaticLootContainers": [ { "ContainerName": ["LOOTCONTAINER_DEAD_SCAV"], "Probability": 500 }, { "ContainerName": ["LOOTCONTAINER_DUFFLE_BAG"], "Probability": 500 } ]
- Set
addtoStaticLootContainers
totrue
to enable this. - Adjust
ContainerName
to target specific loot containers likeLOOTCONTAINER_SAFE
orLOOTCONTAINER_JACKET. You can use the id of the container, or the name from the item map found in src/resources/items.json
- Use
Probability
to control how likely the cartridge is to appear.
- Set
5. Save and Test
Once you’ve defined all the necessary fields, save your .json
file. Launch the game to ensure that the cartridge appears correctly and functions as expected. You should see the new cartridge available with the specified traders, or found in loot containers.
Example JSON Structure
Here’s a full example of a cartridge setup:
"670fff8360114b8efbdeb9dc": {
"RomName": "tetris.gb",
"CartridgeImage": "tetris.png",
"Prefabpath": "cartridges/gb_cartridge_gray.bundle",
"locales": {
"en": {
"name": "Tetris",
"shortName": "Tetris",
"description": "Tetris is a puzzle video game created in 1985 by Alexey Pajitnov, a Soviet software engineer."
}
},
"fleaPriceRoubles": 28420,
"handbookPriceRoubles": 22420,
"addtoModSlots": true,
"modSlot": "cartridge",
"addtoTraders": true,
"traders": {
"MECHANIC": {
"6710230f8fc2d4c53d3bb225_settings": {
"loyalLevel": "1",
"unlimitedCount": false,
"stackObjectsCount": 7
},
"6710230f8fc2d4c53d3bb225": [
{
"count": 34420,
"_tpl": "MONEY_RUB"
}
]
}
},
"addtoStaticLootContainers": true,
"StaticLootContainers": [
{
"ContainerName": ["LOOTCONTAINER_SAFE"],
"Probability": 500
}
]
}
Display More
Final Notes
Once your cartridge is set up, you can further tweak the settings as needed, such as adjusting loot probabilities or adding new languages to the locales
section. Enjoy expanding the library of games available for your in-game Game Boy!
This mod has a bepinex menu (F12 by default) that lets you set the keybinds to your preferred keys!
NOTE: If you change keybinds while using the Game Boy, make sure to set the keybinds with the "Update Keybindings" button to apply them.
- Adjust animations for third person (aim and inspect are kinda wonky looking in freecam/third person lol)
- Animating the install/uninstall for accessory attachments
- Handling the power button actually toggling between on/off (right now, it just flips and returns to the off position lol)
- Contrast and volume knobs
- Quest(s)?
- More cartridges?
- More accessories?
- A version of the fake ad I made, the Komrade Kid, that's roughly the size of a small refrigerator
What is Welcome To Tarkov?
Welcome To Tarkov (WTT) is a mod for SPT AKI that has been in development for over a year. What started as a small passion project has grown in size to incorporate 10+ core members as well as contributions from other well-known mod authors and friends of WTT alike.
How does Welcome To Tarkov change the game?
As a mod, WTT overhauls SPT AKI, touching on almost every vanilla game system, as well as adding completely new systems to the game and its core mechanics. Inspired by open-world hardcore survival projects like STALKER: Anomaly and STALKER: GAMMA, WTT takes SPT’s artificial multiplayer MMO difficulty adders and replaces them with a challenging world economy, loot scarcity rebalancing, a lore friendly quest overhaul, and a map-traveling system built from rewritten portions of the Traveler mod allowing seamless travel between maps. Aside from its changes to the game’s core properties, WTT also adds to the world’s variety of traders, NPC’s, characters, items, and quests:
- Over 500 custom bundles adding new weapons, attachments, wearables, containers, food, medical, and barter items.
- New bosses with their own custom gear that will be properly incorporated into WTT’s quest lines.
- New, meaningful traders with their own lore-friendly quests and narrative elements to help the player progress through the story-line of WTT.
- New playable characters and outfits that will add to the player’s customization abilities.
- New quest types incorporating brand new map extraction points, putting the player’s knowledge and familiarization of SPT’s maps to the test.
Welcome To Tarkov stands as one of the largest mods created for SPT AKI thus far.
When does Welcome To Tarkov release?
Thursday.
Which Thursday?
TBD
Want to follow our progress?
You can follow the project through it's development in our discord here:
-
Version 1.0.1
- GrooveypenguinX
- 383 Downloads
- added keybind ordering (Thanks sgtlaggy!)
-
Version 1.0.0
- GrooveypenguinX
- 509 Downloads
initial release
ItsReaperGirl
Deserves more love:(
bepis69
idea: passive hideout regen for health, energy, hydration is off unless you are actively playing on the gameboy.
m2_01001101x2
so impressive
Iustus
Wow.
That's actually awesome and unique, will be checking this out tomorrow.
If stuff like this is possible, can we expect to have something like ability to smoke cigs with animations and everything?
To finally reach 100% immersion and vibe.
Varyable
HOLY SHIT. Now I can go hide in a corner and game out while mom and dad are fighting! just like growing up! seriously Im gonna try this today, and cant say im stoked i am haha
CozyRat
Oh so this is what Zryachiy is doing all day when he isn't sniping
sgt.samples
Modders are the best! Amazing work, thank you.
Arokar
This is fucking sick. Rom suggestion if you ever decide to add more, Pokemon Trading card game.
Klaceyes
this is...madness lmao
imagine you add that to random npc's and you end up sometimes having a dude, on the ground, playing pokemon in a raid while people are killing each others
Next please make a trading card simulator like the existing game so that we can chill in the hideout with cards from the past :o
bepis69
A mod that adds MtG cards except they're all Tarkov themed would be my favorite thing. Call it Tragic the Garnering as a fun reference.
DarkEsteves
top...so were i can get more roms ?
Hjal
this is not the place to ask such thing.
google exists for a reason.
DarkEsteves
kkkk..ok no problem
Computica
Gameboy SP?
hwangilseok
I also tried several other ROMs.
Megaman, which is a gbc file, works well, but Kirby of the Stars does not.
I also tried the gba file, but it doesn't work because it's too big.
mpgh
Wait, you mean this mod can run gbc games?
Preeeemo
UnityGB (the emulator this mod runs) doesn't currently support GBC so..
bepis69
Certain GBC games can run on GB
hwangilseok
다음은 이전 Game Boy 시스템에서 작동했던 몇 가지 클래식 Game Boy Color(GBC) 게임입니다.
이러한 타이틀은 게임보이 컬러의 개선된 그래픽과 컬러 팔레트에 최적화되었지만, 그 중 대부분은 원래 게임보이와도 호환되었습니다.
CheekiBreeki76
Legen... wait for it...dary!
gmorillo_
I can see the animation from the hand sync to the buttons but I can't play the game
startanew
I LOVE THIS !!!!!!!!!
TrinoK
This is insane
bepis69
I already know some of yall are gonna make some sick Tarkov-themed rom hacks.
Zubzub
ain't no way. this is insanity.
what's next, pokemon trading with scavs via link cable? full arcade cabinets in rogue hideouts? bloodhound mortal kombat tourneys?
bepis69
doom
gmorillo_
this is indeed, crazy
seroxyy
crazy
ThatOneHistorian
Do you need to make cartridges? or can you just add a ROM
Toshi Wulf
60 seconds for waiting for ride... now, I can take that more joyful, gratz.
aperolibear
what a time to be alive
Bjorn1983
Amazing
KazPV
Now I know what to do if extraction is locked down with Raid Overhaul
Foxxee
What a crazy addition to the game! It took me a bit to figure out how to add my games to the mod but the instructions were wonderful! now I can play Bubsy II, and Tetris in spt!
IHateChoosing
It's not enough to play a game.
Now I'm playing a game in a game, where the player in the game I'm playing is playing a game.
Seriously, this is crazy. Good job!
Borkel
amazing
Hjal
Actual crazy mod
SlaveToTheGames
Playing pokemon red while I chill in a sniper tower in wait.