V-Pet

Customizer

V-Pet Guide

One virtual pet that your whole chat raises together on Twitch, YouTube, and Kick. Raise a Digimon through training and battles, or a classic egg pet through care and discipline. Everything runs through Streamer.bot, with no database or account.

Setup

About five minutes. You need Streamer.bot running on the same PC as OBS, connected to the platforms you stream on.

  1. Turn on the Streamer.bot WebSocket server. In Streamer.bot open Servers/Clients → WebSocket Server, tick Auto Start, and click Start Server. The defaults are address 127.0.0.1 and port 8080. If you set a password there, put the same one in the customizer.
  2. Import the V-Pet action. Copy the import string below, then in Streamer.bot click Import (top bar), paste it, and click Import. This adds one action called ZeMaxi - V-Pet. It saves the pet in a persisted global called zmx.vpet.state and sends chat replies. Leave it as it is. It needs no triggers.
  3. Pick your settings in the customizer. Choose the theme, shell colour, screen, where the stats go, and how fast time passes. Untick any platform you don't stream on. The preview on the right runs 30 times faster with a pretend chat, so use the test buttons to try things out.
  4. Add the overlay to OBS. Click Generate, then Copy. In OBS add a Browser source, paste the URL, and set it to 800 × 600. The background is transparent. Leave Shutdown source when not visible off so the pet keeps living when you switch scenes.
  5. Optional: add the dock. Copy the Dock URL from the Streamer.bot section of the customizer. In OBS open Docks → Custom Browser Docks, name it V-Pet, and paste the URL. It gives you care buttons, time controls, forms, renaming, and the memorial.
  6. Optional: add channel point rewards. Make Twitch or Kick rewards whose titles match the Redemptions section of the customizer (for example Feed the Pet). See Redemptions.

Streamer.bot import string

Loading…

If the overlay says it can't reach Streamer.bot, check the WebSocket server is running and the address, port, and password in the overlay URL match. The customizer shows a green Connected badge above the preview when it can see Streamer.bot.

How it works

There is one pet for the whole channel, and everyone in chat looks after it together.

The OBS browser source runs the pet. It counts time, reads chat and stream events through Streamer.bot, and saves the pet after every change. Saving goes through the ZeMaxi - V-Pet action into a persisted Streamer.bot global, so the pet survives OBS restarts, PC restarts, and days between streams. There is no database and nothing is stored online.

If more than one copy of the overlay is open, only one runs the pet at a time. The others show the same pet and take over within a few seconds if the first one closes. The dock never runs the pet. It sends its button presses to the overlay through Streamer.bot.

The customizer preview has its own pretend pet. Nothing you do in the preview touches your real pet.

Themes

ThemeWhat chat does
Digimon V-PetHatch a Digitama and raise it from Baby to Mega. Chat feeds it meat and protein, trains it, battles wild Digimon, and fights raid bosses. Training, care mistakes, overfeeding, and battle wins decide what it digivolves into. Three Digitama lines: Ver.1 (Agumon), Ver.2 (Gabumon), and Ver.3 (Veemon). This is the default.
Classic PetA 90s egg pet with original pixel characters. Chat feeds it meals and snacks, plays left-or-right games, cleans up, and disciplines it when it throws a tantrum. How well chat cares for it decides which of seven adults it grows into.

Time and sleep

The pet runs on its own clock, measured in pet hours and pet days.

Minutes of stream per pet day sets the speed. At the default of 60, one pet day passes every real hour, so one pet hour is 2.5 real minutes. Everything in this guide is given in pet hours, so it scales with this setting.

ClockWhen time passes
Only while liveOnly while you are live. Stream online and offline events start and pause it, and the first chat message after going live also starts it. The pet never starves between streams. This is the default.
While the overlay is openWhenever the OBS source is loaded, live or not.
Real time, 24/7All the time. When the overlay loads, it catches up on up to 3 days that passed while it was closed.

Sleep

Every pet is born at 8 in the morning, pet time. It falls asleep at 10 at night and wakes at 2, so it sleeps for 4 pet hours a day (10 real minutes at the default speed). While it sleeps, chat should turn the lights off with !vlights. Leaving them on counts as a call, and ignoring it is a care mistake. Most commands are ignored while it sleeps. Lights, medicine, and cleaning still work.

Hunger and strength don't drop while it sleeps, and it doesn't poop.

Chat commands

These are the defaults. You can rename any of them in the customizer and add aliases with a vertical bar, like vfeed|vmeat. They all start with v so they don't clash with other bots' commands, such as a song request !play. During a game or training round, plain !left, !high and so on also count as votes.

CommandDigimonClassic
!vfeed !vmeatMeat: +1 hunger, +1 weight. At full hunger it overfeeds (+1 weight, counts toward Meramon), up to 3 in a row.A meal: +1 hunger, +1 weight. Refused when full.
!vsnack !vproteinProtein: +1 strength, +2 weight.A snack: +1 happy, +2 weight. Four snacks in a short time may make it sick.
!vplay !vtrainStarts training: 3 rounds of !vhigh / !vlow.Starts a game: 5 rounds of !vleft / !vright.
!vclean !vflushCleans up all the poop.
!vmedicine !vhealTreats sickness or an injury. Babies and injuries need 1 dose. Older sick pets need 2.
!vlightsToggles the lights. Turn them off when it falls asleep.
!vscoldDigimon don't need discipline, so this just costs 1 strength.Disciplines a tantrum or a refusal: +25% discipline. Scolding for no reason costs 1 happy.
!vpraise+1 strength, at most once per pet hour.+1 happy, at most once per pet hour.
!vbattleBattles a wild Digimon. Rookie and up. See battles.Not used.
!vpet !vdigiReplies in chat with the pet's status. The stats also flash up on screen.
!vnameNot used. Digimon use their form name. Rename from the dock.Votes for a name for 60 seconds after hatching: !vname Mochi.
!vattackHits the raid boss during a raid battle.Not used.
!vjogressJoins a DNA digivolution when a raid brings a partner.Not used.
!vletterSends a letter to another channel's pet on the V-Pet Hub: !vletter zemaxi cheer. Only works when you are signed in to the hub.
!vpetresetMods only. Starts a new egg straight away.
!vpetreviveMods only. Brings a dead pet back.

Anyone can vote in games, name votes, raid attacks, and Jogress. Who can use the care commands is set by Who can care for the pet. Mods and the broadcaster always can. Each chatter has a 15 second cooldown per command, and each command has a 3 second cooldown across chat. Both can be changed.

Try it

!vfeed

The screen

A V-Pet screen with a row of 4 icons above and below. An icon lights up while that thing is happening or needs doing.

IconDigimonClassic
Status. Lights while the stats are shown.
Food. Lights while eating.
Training.Game.
Battle. Lights during a battle or a raid.Not used.
Poop on the floor.
Lights. On while it is asleep with the lights still on.
Injured or sick.Sick.
Not used.Discipline. Lights during a tantrum.
Call. The pet needs something. Answer it within 1.5 pet hours or it is a care mistake.

Stats panel

Right or Below puts a panel next to the screen with the name, stage, generation, every stat, and the best caretaker. On the screen is the minimal look. All 8 icons move to the top bar and the stats fill the bottom bar. Hidden shows just the screen. The shell colour sets the screen border and the panel outline.

Above the screen, a banner shows what is going on: game rounds and votes, battles, raid boss health, name votes, Jogress progress, and parties. Below it, the action feed lists who did what.

Stats

Hunger and strength (happy on the Classic pet) go from 0 to 4 hearts and slowly drop. Everything else only goes up.

Digimon

StatWhat it doesGoes upGoes down
HungerAt 0 it calls. Eight pet hours at 0 and it dies.!vfeed +1. Subs fill it.1 heart every 1 to 3 pet hours. Older stages drop slower.
StrengthAdds to battle power. At 0 it calls and refuses to battle. Eight pet hours at 0 and it dies.Protein, praise, winning training, follows, subs, and tips. +1 each.1 heart every 1.2 to 3.2 pet hours, and −1 every battle.
EffortAdds more to battle power than strength does, and never drops.+1 for every 4 trainings, won or lost. Tips worth 2+ vitamins also add +1. Max 4.Never, until a new egg.
WeightEach stage has a base weight. More than 10G over lowers battle power, and 15G over makes sickness more likely.Meat +1, protein +2, overfeeding +1.Training −2, battles −2. Never below the base weight.
AgeIn pet days. Reaching the lifespan ends its life.With time.
Battles and winsThe win rate in each stage decides the next digivolution.Wild battles and raid bosses.Stage counts reset on digivolving.

Battle power is stage power × 10 + strength × 3 + effort × 4 + trainings ÷ 4 (trainings count up to 40), minus a little for being overweight. So training and effort matter most, and strength tops it up.

Classic

StatWhat it does
HungerSame as Digimon. Meals fill it.
HappyDrops over time. Snacks, praise, winning games (3 of 5), follows, and gifts raise it. At 0 it calls.
Discipline0 to 100%. Below 50% it sometimes refuses food or games. Below 100% it throws tantrums every 5 to 9 pet hours. !vscold during a tantrum or right after a refusal adds 25%. It also lengthens its life and helps it grow into the best adults.
WeightGrows with food and snacks. Games bring it down. Being very overweight makes sickness more likely.

Care and mistakes

A care mistake is a call that nobody answers. Mistakes steer evolution, shorten its life, and 20 of them kill it.

The pet calls (bell icon and a beep) when hunger hits 0, when strength or happy hits 0, or when it is asleep with the lights on. Chat has 1.5 pet hours to fix it. If the need goes away in time, there's no mistake. After a missed call, it waits 3 pet hours before calling again.

Poop and sickness

  • It poops about every 3 pet hours (slower or faster with Hunger speed). Up to 4 piles fit on screen. One more after that makes it sick.
  • It can also get sick at random. Dirty screens and being overweight each make that more likely. Baby I Digimon and Classic babies never get sick at random.
  • Sick or injured pets can't play or battle. Leave it untreated for 12 pet hours and it dies.
  • Digimon get injured when they lose a wild battle, 40% of the time. Twenty injuries in one life is fatal.

Eggs

An egg hatches after 1 pet hour. Chatting warms it a little. Care commands, follows, and other events warm it more, so a busy chat hatches it sooner. On the Classic theme, chat then has 60 seconds to vote on a name with !vname.

Training and battles

Digimon only. Training builds power, and battles prove it.

Training

!vtrain starts 3 rounds. Each round, chat votes !vhigh or !vlow for where to shoot. A shield guards one side at random. Pick the open side to land the hit. Land 2 of 3 and training succeeds (+1 strength). Every session counts as a training either way. It adds to the stage training count used for digivolution and to effort, and burns 2G of weight. The round length is Game round length in the customizer (8 seconds by default).

Wild battles

!vbattle sends it against a random Digimon from one stage below to one stage above its own. It needs to be Rookie or older, not sick or injured, with at least 1 heart of hunger and strength. There's a shared cooldown (90 seconds by default).

  • The chance to win is its battle power against the enemy's. Battle difficulty makes enemies weaker (Easy) or stronger (Hard).
  • Attributes matter: Vaccine beats Virus, Virus beats Data, Data beats Vaccine. The winning side gets 20% more power.
  • Every battle costs 1 strength and 2G. A loss has a 40% chance of an injury.
  • Champions and Ultimates need battles and a good win rate to reach the next stage. See Digivolution.

Raid bosses

When a Twitch raid comes in, a random Mega appears as a raid boss (unless Jogress kicks in first). Its health is 30 plus 3 per raider, up to 400. Everyone in chat, raiders included, spams !vattack for 45 seconds. Each chatter can hit once every 1.5 seconds, and the pet attacks on its own too. A raid battle counts as a battle, and beating the boss counts as a win. Losing doesn't injure it. Babies skip the boss and just get +2 strength.

Digivolution

When a stage's time is up, the pet checks the rules for its current form in order, and the first one it meets decides what it becomes.

All counts are for the current stage only and reset each time it digivolves. Care mistakes are missed calls, trainings are !vtrain sessions, and overfeeds are meat given at full hunger. Battles and wins include raid bosses. If a Champion or Ultimate hasn't met its battle rule when the time is up, it stays as it is and checks again as it keeps battling. Each hype train start or level-up cuts a quarter off the current stage's time.

Pick a Digitama line. Digitama in the customizer chooses one line or picks at random for each generation.

Armor and Jogress

Armor digivolution

For Ver.3 (Veemon) only. A sub, gift bomb, Party Time reward, or hype train while the pet is a Digitama, Baby, or Rookie gives it the Digi-Egg of Miracles. As a Veemon it armor digivolves into Gold Veedramon straight away. If it gets the egg earlier, it takes that path when Veemon's time is up. Gold Veedramon digivolves into UlforceVeedramon after 20 battles with a 60% win rate. Turn this off with Armor digivolution.

Jogress (DNA digivolution)

If a Twitch raid lands while the pet is WarGreymon or MetalGarurumon, the raider brings the other one. Chat has 60 seconds for enough different chatters to type !vjogress (3 by default, set by Chatters needed for Jogress). Get there and the two DNA digivolve into Omnimon. Turn this off with Jogress on raids.

Reaching Mega

Megas get 4 extra pet days of life. They don't digivolve any further, apart from Jogress.

Classic pet

An egg hatches into Dotchi, grows into Mochi, then a teen, then one of seven adults.

StageLastsGrows into
Egg1 pet hourDotchi
Baby · Dotchi2 pet hoursMochi
Child · Mochi10 pet hoursPipi with 2 or fewer care mistakes, otherwise Grumb
Teen · Pipi20 pet hoursStarla with 75%+ discipline and 2 or fewer mistakes, Bonbon with 2 or fewer mistakes, otherwise Tako
Teen · Grumb20 pet hoursKappu with 75%+ discipline, Nubbo with 4 or fewer mistakes, otherwise Blorp
SecretGlitchi: a teen that gets a hype train and makes no care mistakes that stage
AdultUntil 80% of its lifespanOldie, the senior form

Visitors and the matchmaker

A raid brings the raider's pet to visit with a gift (+2 happy, +1 hunger). When a hype train starts while the pet is an adult, the matchmaker brings it a partner. Six pet hours later it moves in with them and leaves an egg. That egg's pet has the family trait, so hunger and happy drop 15% slower.

Stream events

Every event is free to turn off in the customizer. Events also warm an egg.

EventPlatformsWhat happens
FollowTwitch, KickA fan letter: +1 strength or happy.
Sub or membershipTwitch, YouTube, KickA cake: hunger and strength or happy go to full. Can drop the Digi-Egg of Miracles.
Gift bombTwitch, YouTube, KickA cake plus a 20 second party. Can drop the Digi-Egg.
Bits, Super Chats, Jewels, KicksTwitch, YouTube, KickVitamins: one per 100 bits, 5 Super Chat currency, or 100 Kicks, up to 4. Cures sickness and injuries, +1 strength or happy per vitamin, and +1 effort for 2 or more.
RaidTwitchDigimon: a raid boss or Jogress. Classic: a visiting pet with a gift. On the V-Pet Hub, the raider's real pet visits instead.
Hype trainTwitchA 30 second party. The start and every level-up each cut a quarter off the current stage's time and can drop the Digi-Egg. The start can also bring the matchmaker.
First-time chatterTwitch, YouTube, KickThe pet waves at them.
Stream online / offlineTwitch, YouTube, KickStarts and pauses the clock when it is set to Only while live.

The Platforms section of the customizer turns whole platforms on or off for chat and events. Leave Twitch off on a browser source that sits on a Twitch simulcast.

Redemptions

Twitch channel points and Kick rewards can do the care for chat. Redemptions skip cooldowns and permissions.

Create a reward whose title matches one in the customizer. The match ignores upper and lower case, and you can list several titles with a vertical bar. YouTube has no channel points, so YouTube chat uses the commands.

Default titleDoes
Feed the PetSame as !vfeed
Give a SnackSame as !vsnack
Play a GameSame as !vplay
Clean UpSame as !vclean
MedicineSame as !vmedicine
LightsSame as !vlights
BattleSame as !vbattle (Digimon)
Party TimeA cake and a party, like a gift bomb

Dock

A control panel for you and your mods, added as an OBS custom browser dock.

  • Care: every care action as a button. Dock presses skip cooldowns.
  • Pause time freezes the clock. Mark live starts the clock by hand if a stream online event was missed.
  • Evolve now moves it to its next form, even if the rules aren't met. Set form jumps to any form, and switches the Digitama line to match.
  • Rename gives it a name. Digimon keep the name as a nickname through digivolutions.
  • Revive brings a dead pet back with 2 hearts, and New egg starts a fresh generation.
  • Best caretakers, the Memorial of past pets, and a Log of everything that happened.
  • V-Pet Hub (when signed in): who is online, hub news, and a box to send letters. See V-Pet Hub.

The dock sends its commands through Streamer.bot to the overlay, so the overlay must be open in OBS for the buttons to work.

V-Pet Hub

Optional. The hub links your pet with other streamers who use V-Pet. Streamer.bot still runs your pet. The hub only carries presence, news, raid visits, and letters.

  1. In the customizer, open V-Pet Hub and click Sign in with Twitch. It asks for no permissions. The hub only reads your public name and picture.
  2. Back in the customizer you'll see Connected as your name. Click Generate and copy the overlay and dock URLs into OBS again. They now carry your hub key.
  3. Pick what to share. Changes save straight away, with no new URL needed.
FeatureWhat it does
DirectoryYour pet shows on the hub page and in other docks while your overlay is open.
Raid visitsWhen a hub streamer raids you on Twitch and you use the same theme, their real pet visits by name. Digimon come to train (+1 strength, +1 effort) instead of bringing a raid boss. Jogress still comes first. Everyone else still gets the random visitor or raid boss.
NewsBig moments are shared: hatches, Ultimate and Mega, Jogress, Armor, every 5th generation, pets that lived 10 days or more, and Classic weddings. Other overlays show them in the banner, and the hub page lists them.
LettersChat sends !vletter <channel> <letter>, or you use the dock. The pet gets a letter animation and a feed line like A letter from ZeMaxi's chat: Cheer! If they are offline, it waits for them (up to 20 letters).
LetterEffect
cheer+1 strength or happy
snack+1 strength or happy, +1 weight
getwellOne dose of medicine if the pet is sick or injured
goodluckA message only
hiThe pet waves

Each channel can get one letter from your chat every 5 minutes, and your chat can send 20 an hour. The per-chatter cooldown also applies. Letters to an egg keep it warm instead.

The block list stops letters and raid visits between you and a channel, in both directions. Pet names from chat are filtered before other channels see them. New key cuts off old overlay URLs, for example if you shared one by accident. Sign out only forgets the key in this browser.

Death and rebirth

Every pet eventually moves on, and a new egg arrives 30 seconds later (set by New egg after).

CauseWhen
NeglectHunger or strength/happy at 0 for 8 pet hours
Sickness or injurySick or injured for 12 pet hours without medicine
Injuries20 injuries in one life (Digimon)
Care mistakes20 care mistakes in one life
Old ageLifespan reached. The default is 16 pet days, minus a quarter day per care mistake. Megas get 4 more days. Classic pets get up to 2 more days from discipline.

Untick Pets can die for Peaceful mode. The same things happen, but the pet runs away, retires, or goes to the vet instead of dying. Each pet goes into the memorial with its generation, form, age, and what happened. Digimon come back as a new Digitama.

Mods can type !vpetrevive or use the dock's Revive to undo a death before the new egg arrives. !vpetreset starts a new egg at any time.

Troubleshooting

ProblemFix
Nothing reacts to chatCheck the Streamer.bot WebSocket server is running and the overlay URL has the right address, port, and password. Check the platform is ticked in the customizer. Check Who can care for the pet and the cooldowns.
The pet forgets everythingImport the ZeMaxi - V-Pet action. Without it the overlay can't save. Don't rename the action.
Time isn't passingWith Only while live, time only runs while you are live. Use Mark live in the dock or pick another clock. Check the dock hasn't paused time.
No chat repliesTick Reply in chat and make sure Streamer.bot is connected to that platform's broadcaster or bot account.
Dock buttons do nothingThe overlay has to be open in OBS. The dock only sends commands to it.
Hub key was rejectedSomeone pressed New key. Open the customizer, click Generate, and paste the new overlay and dock URLs into OBS.
My pet isn't on the hub pageThe overlay has to be open, and Show my pet in the hub directory ticked. The hub page refreshes every 30 seconds.
Starting overType !vpetreset or click New egg in the dock. To wipe everything, including the memorial, delete the zmx.vpet.state global in Streamer.bot (Variables → Persisted Globals) while the overlay is closed.

Credits

The full colour 16×16 Digimon dot sprites were compiled, coloured, and in places completed by Tortoiseshel on the With the Will forums, and are shared free for anyone to use.

Digimon and all related characters are © Bandai / Toei Animation. V-Pet is a free, non-commercial fan overlay and is not affiliated with or endorsed by Bandai. The Classic pets are original pixel art.