The inventory: 198 clips in thirteen groups
Helping Your Boyfriend is a short game, and it is short in a way that hides how much was built underneath it. The English script runs to more than 8,000 words and a single run takes roughly half an hour, but the audio layer the script sits on is nearly two hundred separate recordings, cues and loops. This page catalogues all of them, because the audio is the most legible production document the game ships: it tells you what the cast was asked to perform, what the composer was asked to underline, and which mechanical action each individual effect exists to serve.
One number matters more than any other, and it is the one most people get wrong. The build's audio file lists every clip twice: once under its bare name, the name the game actually stores it by, and once again under the Naninovel bgm_sfx/ path. That means the raw file carries 403 keys, but only 198 unique clip names. If you have ever counted the tracks in the game's own data and landed somewhere near four hundred, that is why: you counted registrations, not sounds. Every figure on this page counts unique clips, so the tables add up cleanly to 198.
The 198 fall into thirteen groups, and the groups are not arbitrary buckets. They are the shape of the game's own mechanics: what was spoken, what was scored, and what was triggered by something you did. Two of the thirteen are voice, because the game has two different kinds of voice in it. One is the score. The remaining ten are sound effects, and those are where the mechanical grammar lives.
| Group | Clips | What it covers |
|---|---|---|
| Voice takes | 69 | The recorded dialogue lines for Adrian, Ian and Oliver, each filed under the mood it was performed in. |
| Score | 23 | Music and music beds, from the menu loop to the end credits. |
| Violence and impact | 14 | Breaks, falls, gunshots, stabs, slaps, body handling and the two waking gasps. |
| Other sound effects | 14 | Props and contact: paper, cameras, cars, hands, kisses and thunder. |
| Doll minigame | 13 | The bench, the gore reskin, the glitch and the jumpscare material. |
| Voice blips | 12 | The short vocalisations that play under a line of dialogue instead of replacing it. |
| Doors and barriers | 11 | Knocks, locks, slams, and the panic door on the escape. |
| Interface and cursor | 11 | Buttons, arrows, slides, warnings and the clock. |
| Footsteps and movement | 9 | Walking, other people walking, Oliver walking and the run cue. |
| Telephone | 7 | The entire sound vocabulary of the phone screen, and nothing else. |
| Medicine and injections | 6 | The pill set, the glass of water and the syringe. |
| Blanket and arrest | 5 | Being held down under something, and the blanket moving. |
| Heartbeat, stings and waking | 4 | The heartbeat bed and the three stings. |
Add them up and you get 69 plus 12 plus 23 plus 94, which is 198. That last figure, 94, is the number of pure sound effects in the game: everything you hear that is neither a spoken line nor a musical cue, including the twelve short character vocalisations that sit underneath a line of dialogue. It is a lot of audio for a half-hour game, and it is unevenly distributed on purpose. Ninety-five effects against eight thousand words of dialogue means the sound design, not the script, is doing most of the work of making the story feel dangerous.
A warning before the list
The game carries a content warning for jumpscares, loud noises, flashing and disturbing images, blood and cartoon gore, violence, drug use, unhealthy and obsessive behaviour, toxic relationships and crude language. Audio is where a lot of that lands. The doll group alone contains eight jump-related clips, the violence group contains a gunshot and two arm-breaking sounds, and the stings group contains a ringing in the ears. If you are sensitive to sudden loud noises, read the group names below before you start a fresh run.
The three voice actors
Three people record Helping Your Boyfriend, and the game credits them by name. Adrian is voiced by Vertin Vii, Ian by BigG, and Oliver by Omong. The music is original work by Zakkabeur and K(at), and the sound design is by SakiMew, who built the effect library from freesound.org material. The English translation is by T_nam and the floor plan and layout by NaNi.Mon. The game itself is Zieelane's and Mousefishdog's, built in Unity with Naninovel, and released for the Spooktober 8th Annual Visual Novel Jam in 2026 under the name My Perfect Doctor Boyfriend.
Of the three, Ian has by far the largest voice file set, and the reason is not that he talks more. It is that he has to cover more ground. The actor playing Ian has to deliver mocking and genuinely shaken, gun and crying, nervous and shouting, and six separate smiles, plus a four-pose sitting set. Adrian's set is smaller but wider per mood: six happy takes to Ian's six smiles, three teases, three sad lines and a manic pair that reads as a completely different character from the one who calls himself a doctor. Oliver has the smallest set of all, thirteen takes, and that is a deliberate fit with a character who mostly exists as a voice on a telephone.
| Character | Voice credit | Takes | Share of the 69 |
|---|---|---|---|
| Ian | BigG | 34 | 49 per cent |
| Adrian | Vertin Vii | 22 | 32 per cent |
| Oliver | Omong | 13 | 19 per cent |
| All three | Vertin Vii, BigG, Omong | 69 | 100 per cent |
The distribution is worth a moment because it tells you what the game is about. Half of all the voice in the game belongs to the character who is lying to you for most of the story, and only a fifth belongs to the character who is trying to get you out of the house. Adrian sounds constant. Ian sounds like an intruder who can turn on a dime. Oliver sounds like a man on a loudspeaker somewhere else entirely, which is exactly how the game frames him for most of its runtime.
The mood vocabulary
Here is the part that makes the voice data genuinely useful rather than just a list. Every voice file is named with a mood tag between the actor's initial and the take number, and those tags are not cosmetic. They are the direction sheet. When you read a mood tag such as the shaking in vo_i_shaking_1, you are reading a note the director wrote for the actor before the session: this line is shaking. The mood vocabulary is therefore the closest thing the game has to a script of intent, and it is possible to read the whole performance plan without hearing a single take.
Adrian's vocabulary has eight moods and runs to twenty-two takes. Ian's has seventeen tags and thirty-four takes. Oliver's has seven tags and thirteen takes. The difference in tag count is the interesting part: Ian's tags describe states (nervous, uneasy, shaking) where Adrian's describe tones (tease, manic, cold). Adrian is always performing something at you; Ian is usually reacting to something.
Adrian: 22 takes across 8 moods
| Mood tag | Takes | Clip files |
|---|---|---|
| cold | 3 | vo_a_cold_1, vo_a_cold_2, vo_a_cold_3 |
| end | 2 | vo_a_end_1, vo_a_end_2_th (the Thai-language one) |
| happy | 6 | vo_a_happy_1, vo_a_happy_2, vo_a_happy_3, vo_a_happy_4, vo_a_happy_5, vo_a_happy_6 |
| manic | 2 | vo_a_manic_1, vo_a_manic_2 |
| mocking | 1 | vo_a_mocking_1 |
| sad | 3 | vo_a_sad_1, vo_a_sad_2, vo_a_sad_3 |
| serious | 2 | vo_a_serious_1, vo_a_serious_2 |
| tease | 3 | vo_a_tease_1, vo_a_tease_2, vo_a_tease_3 |
Adrian's set is the only one in the game with six takes in a single positive mood. Six happy lines, six different ways of sounding delighted, and that is what the actor playing Adrian is being asked for on the nights when the story needs him to sound like a good partner rather than a doctor. Three teases sit next to them. The teasing is the voice of a man who knows exactly what he is doing to you, and the game gives him three takes of it because he uses the tone often.
Ian: 34 takes across 17 moods
| Mood tag | Takes | Clip files |
|---|---|---|
| blush | 2 | vo_i_blush_1, vo_i_blush_2 |
| cold | 1 | vo_i_cold_1 |
| cry | 2 | vo_i_cry_1, vo_i_cry_2 |
| gun | 2 | vo_i_gun_1, vo_i_gun_2 |
| mocking | 2 | vo_i_mocking_1, vo_i_mocking_2_th |
| nervous | 2 | vo_i_nervous_1, vo_i_nervous_2 |
| scraem | 2 | vo_i_scraem_1, vo_i_scraem_2 |
| serious | 1 | vo_i_serious_2 |
| shaking | 2 | vo_i_shaking_1, vo_i_shaking_2 |
| shock | 3 | vo_i_shock_1, vo_i_shock_2, vo_i_shock_3 |
| shout | 4 | vo_i_shout_1, vo_i_shout_2, vo_i_shout_3, vo_i_shout_3.5 |
| sit_blush | 1 | vo_i_sit_blush_1 |
| sit_sad | 1 | vo_i_sit_sad_1 |
| sit_shock | 1 | vo_i__sit_shock_1 |
| sit_smile | 1 | vo_i_sit_smile_1 |
| smile | 6 | vo_i_smile_1, vo_i_smile_2, vo_i_smile_3_th, vo_i_smile_4, vo_i_smile_5_th, vo_i_smile_6 |
| uneasy | 1 | vo_i_uneasy_1 |
Three features of Ian's table are worth pointing out, because they are all checkable in the shipped data and all of them tell you something about how the recording session ran. The first is the shout row, which holds four files where every other mood holds one, two or three. vo_i_shout_3.5 is the only fractional take in the entire game. The .5 is a pickup: a line recorded between the third and fourth shout because the third one was not quite the right shape. Sessions produce those. The second is the serious row, which holds a single file, vo_i_serious_2, with no number 1 anywhere in the build. There is a hole in that numbering, and the hole is real rather than an omission on this page. The third is the four sit rows: blush, sad, shock and smile. They are the sitting set, one take per pose, and they are the only mood tags in the game with two words in them, which tells you they were recorded as a block rather than as part of the main session. The shock one is also the odd spelling of the lot: the shipped audio list files it with a doubled underscore as vo_i__sit_shock_1, which is how you will see it in the raw data even though the table above writes it in the shorter form.
And then there is scraem. Ian's two scream takes are filed with a typo, vo_i_scraem_1 and vo_i_scraem_2, where scream belongs. That spelling is in the shipped build's own audio data, not an error introduced here, and the game plays those two files perfectly well. It is the kind of filename artefact that happens when a folder is typed under pressure and never revisited. The same kind of artefact shows up elsewhere in the game, most visibly in the score titles on the next-but-one section.
Oliver: 13 takes across 7 moods
| Mood tag | Takes | Clip files |
|---|---|---|
| blush | 1 | vo_o_blush_1 |
| dream | 4 | vo_o_dream_1, vo_o_dream_2, vo_o_dream_3, vo_o_dream_4_th |
| firm | 1 | vo_o_firm_1_th (the only file in the tag) |
| serious | 2 | vo_o_serious_1, vo_o_serious_2 |
| shock | 1 | vo_o_shock_1 |
| what | 2 | vo_o_what_1, vo_o_what_2 |
| worried | 2 | vo_o_worried_1, vo_o_worried_2 |
Oliver's vocabulary is the smallest and the plainest. Two worried lines, two serious ones, two of the awkward "what" that a man says when he is trying to work out whether you are safe. Four dream lines, which is almost a third of his entire set, because the dream sequence is the one place the game lets him speak at length. And one firm line, filed under a tag with no English sibling, which is the clearest signal in the whole table that this is a translated and re-recorded line rather than a fresh performance.
Six files carry the second language
The suffix _th marks the Thai-language recording of a line: Adrian's vo_a_end_2_th, Ian's vo_i_mocking_2_th, vo_i_smile_3_th and vo_i_smile_5_th, and Oliver's vo_o_dream_4_th and vo_o_firm_1_th. The game ships in English and Thai, and these six files are the same performances' second-language counterparts rather than new material. That is a useful thing to know when you are counting the voice work in the game: six of the 69 takes are translation takes, not extra performances.
The twelve voice blips
Underneath the recorded dialogue is a second, smaller voice system: short vocalisations that play under a line of dialogue instead of replacing it. In a Naninovel visual novel these are the per-character type blips, and this game has twelve of them. They are the sounds you hear when a character is talking and you are reading rather than listening, and they are what keeps a text box from feeling like a document on a screen.
| Speaker | Clips | What the numbering tells you |
|---|---|---|
| Ian | ian-text-voice1, ian-text-voice2, ian-text-voice3, ian-text-voice4, ian-text-voice5 | Five in a row, the widest set in the game. |
| Adrian | adrian-text-voice2, adrian-text-voice3 | Starts at number 2. There is no number 1 in the build. |
| Narrator | narrator-text-voice1, narrator-text-voice4, narrator-text-voice5 | Numbers 2 and 3 are not in the build; the set skips them. |
| Oliver | oliver-text-voice1 | One blip only, which suits a character who is mostly on a telephone. |
| Player | player-text-voice1 | Exactly one, so your own lines are close to silent by design. |
The gaps are the interesting part. Adrian starts at 2, the narrator runs 1, 4 and 5, and Oliver has only the first. Those are numbering holes rather than missing content: the game has one Adrian blip that was never filed and a narrator set with two numbers dropped somewhere in the session. The practical consequence is that the characters you hear most often are the ones with the thinnest blip vocabulary. Adrian, who talks more than anyone in the story, has two. Ian, who has half the voice work in the game, has five.
The player row is the one that affects you directly. You have exactly one blip file, so your own dialogue in the dialogue box is nearly silent while everyone else's is not. That is a small design decision with an enormous effect on the story: the game gives the player a voice in the credits and in the ending, but it deliberately refuses to put a performance behind your typing. You sound like yourself precisely because you are not given anything to sound like.
The twenty-three score tracks
The music in Helping Your Boyfriend is credited to Zakkabeur and K(at), and it runs to twenty-three tracks. The titles are unusually informative, which is unusual for a jam game: you are not guessing at the emotional map from the music, you are being told it in the filenames. Two naming conventions run through the list. Eleven tracks carry plain English titles named after the scene or the moment they belong to, and ten more use the bgm- prefix. Two further entries are ambience loops, which get their own section below.
| Track | What it covers |
|---|---|
| hyb intro | The opening theme, named with the game's own initials. |
| main-menu | The loop you sit and listen to before you start. |
| heart and soul | The intimate bed, for the scenes where the two of you are alone. |
| helping time! | The working title, with the exclamation mark exactly as it ships. |
| in curse_ i trusted you | The curse track. The stray underscore before the i is in the shipped name. |
| lover time | The lover-time sequence, matched by the sfx-lover-time effect. |
| murder sitting next to you | The most literally alarming title in the game, and it is about proximity. |
| no promise | The track for when nothing is being promised to you. |
| the offering | The pill sequence. The offering has its own cue and its own sound set. |
| your boyfriend | The track named after the subject of the game itself. |
| running out of time | The deadline cue. Its name is a warning, and it is the only track in the game that sounds like one. |
bgm-credit | The end credits. |
bgm-dream1 | The dream sequence, the one place Oliver gets to speak at length. |
bgm-ending | The ending cue, played as the last scene resolves. |
bgm-home | The house interior bed. |
bgm-ian-theme | The only track in the game named after a character. |
bgm-investigation | The searching and searching-through-the-house scenes. |
bgm-ominous | The dread bed, for when the house is quiet and that is the problem. |
bgm-rain | The rain, which is where Ian's arc and Oliver's arrival both happen. |
bgm-stressful2 | The stress bed. The 2 in the name says it is the second of its kind. |
bgm-whoooo | The long falling vocal that sits under the doll material. |
creepy-industrial-ambience | The interior industrial loop, under the basement and the back rooms. |
night ambience | The exterior night loop: street, fog, fence, wind. |
Three of those titles are worth sitting with, because they are the composer's summary of the story. Murder sitting next to you is the one that names the horror most honestly: the threat is not a monster in the dark, it is a person you are sitting beside. The offering is the pill, and it is also the arrangement Adrian proposes. No promise is what the game gives you at the end of every route that ends badly. And bgm-ian-theme is the only track in the entire game named after a character, which is a strange thing for a composer to do with the antagonist and a completely ordinary thing to do with the man you are rooting for. The titles in curse_ i trusted you and helping time! also carry their own odd punctuation into the shipped filenames, exactly like the scraem tag did in the voice set.
Ambience, stings and beds
Two of the twenty-three score tracks are loops rather than cues, and they are the ones that carry the most screen time per second, because they run underneath everything else. night ambience is the exterior: the street, the fog, the chain-link fence, the bare trees. creepy-industrial-ambience is the interior counterweight, a low mechanical hum that belongs to the basement and the back rooms. Between them they cover both halves of the house, and both are ambient enough to sit under a whole conversation without announcing themselves.
The four clips in the heartbeat and stings group are the opposite of ambience. They are punctual, short and deliberately intrusive, and they are what the game reaches for when the story needs you to feel something in the body rather than in the head.
| Clip | What it does |
|---|---|
sfx-heartbeat | The heartbeat bed, for the passages where your own body is the subject. |
sting-tinnitus | The ringing in the ears. It arrives, it sits for a moment and it leaves, and it is the game's single most unpleasant ear-level sound. |
sting-card-dream | The first dream-card sting, cut into the dream sequence. |
sting-card-dream1 | The second dream-card sting, for the repeat visit to the same sequence. |
One more file belongs in this conversation because its name is the most urgent in the whole list: running out of time. Every track in this game is a bare name with no prefix, and this one is the only one that reads as a deadline rather than as a mood. It is the one file in the audio data whose name is a warning, and it is worth listening for.
Sound effects, group by group
Ninety-four effects remain, and they are the part of the audio that actually earns its place in a guide. Every one of them exists because something on screen does something: a door closes, a hand moves, a key is pressed, a piece of a bear is cut off. The tables below list every clip in each group and what triggers it, so that when you are replaying a route you can tell from the sound alone which mechanical moment you are in.
Doors and barriers: 11 clips
| Clip | What plays it |
|---|---|
sfx-door knocking | The knock on a door that will not open for you. It is the sound of trying a barrier. |
sfx-door-angry1 | First angry-door hit, for the moment the knocking becomes shoving. |
sfx-door-angry2 | Second angry-door hit. |
sfx-door-angry3 | Third angry-door hit, so a sustained banging sequence never repeats the same impact. |
sfx-door-attack3 | A door hit inside the attack sequence, numbered to match the attack beats. |
sfx-door-lock | The lock turning. This is the sound of the locked door in the house being the problem. |
sfx-door-open1 | A door giving way and opening. |
sfx-door-slam | A door slammed in a hurry. |
sfx-door-slam2 | The second slam variant, for the beat after the first one. |
sfx-open-door | The generic open-door cue, kept separate from the numbered one for ordinary entrances. |
sfx-panic-door | The panic door: the frantic, repeated handling of a door that will not do what you want. |
Eleven clips for doors is the game's largest barrier set, and the reason is structural. The escape from Adrian's house is a sequence of doors: the living room door, the locked door, the key door, the exit. Every stage of that sequence has its own audio, and the difference between a knock and a lock and a panic door tells you instantly which stage of the escape you are in. If a run is going badly, the sound of the door set is usually the first place it goes wrong.
Telephone: 7 clips
| Clip | What plays it |
|---|---|
sfx-phone-ring | The incoming call, and the sound of your one chance to answer. |
sfx-phone-ringback-tone | The tone on your end while the other side is ringing. |
sfx-phone-pick | The handset being lifted, on either side of the call. |
sfx-phone-press | A keypress on the handset, which is the sound of dialling. |
sfx-phone-hang-up | Hanging up deliberately. |
sfx-phone-disconnect | The line dropping on its own, which is a different outcome entirely from hanging up. |
phone_sfx | The phone interface's own cue, for the dial screen itself. |
Seven clips, and they are exactly the vocabulary that one screen needs. The phone activity branches on phoneTried, phoneCorrect, phoneLeave and oliverCallDropped, and between them those four outcomes need a ring, a tone, a pick-up, a press, a hang-up, a disconnect and a screen cue. That is the whole set, with nothing spare. The practical consequence is that the phone sequence has a fully audible grammar: if you hear the hang-up you left it, if you hear the disconnect the call was dropped on you, and if you hear the ringback tone then somebody is not picking up.
Medicine and injections: 6 clips
| Clip | What plays it |
|---|---|
sfx-pill-split | The tablet being broken in half. This is the sound of the pill being offered, in both Midnight scenes. |
sfx-pill-swallow-normal | The swallow, on the path where you take it without resistance. |
sfx-pill-swallow-mid | The swallow variant for the middle path, where the taking is not clean. |
sfx-drink-water | The glass of water, which covers the drinking rather than the pill. |
sfx-inject | The injection. |
sfx-inject2 | A second injection recording, so a needle going in twice is not the same sound twice. |
This is the tightest set in the game, and the tightest set is the most useful. The pill sounds exist as a matched set: one clip for the tablet being broken, two clips for the two swallow variants, and one separate clip for the glass. There is no filler in it. If you hear the split and then one of the swallows, you took it, and which swallow you heard tells you which version of taking it you performed. If you hear the split and no swallow, you refused. The Midnight scenes are StoryGame/Midnight1 and StoryGame/Midnight2, and the second one is where the story turns on what happened to the first one.
Footsteps and movement: 10 clips
| Clip | What plays it |
|---|---|
sfx-walk-s1 | First footstep variant, for walking through the house. |
sfx-walk-s2 | Second footstep variant. |
sfx-walk-s3 | Third footstep variant. |
sfx-walk-s4 | Fourth footstep variant. |
sfx-walking | The general walking cue. |
sfx-walking-room | Walking indoors, in a room rather than a corridor. |
sfx-ppl-walk | Other people walking, which is how the house sounds occupied without anyone speaking. |
sfx-oli-walk | Oliver's own walk, a separate recording so that his approach is audibly his. |
sfx-mg-run | The run cue used by the minigame sequences. |
Four footstep variants is the minimum for a walk cycle that does not sound mechanical, and the game uses them properly. sfx-ppl-walk is the one to listen for: it is the sound of somebody else in the house, and because you cannot walk, every other set of footsteps in this game belongs to Adrian or to Ian. Oliver gets his own file, sfx-oli-walk, so that when a rescue arrives you know it is him and not the man in the house.
Violence and impact: 14 clips
| Clip | What plays it |
|---|---|
sfx-arm-break | An arm breaking, first recording. |
sfx-arm-break1 | An arm breaking, second recording. |
sfx-gasp-attack3 | The gasp that lands on the third attack beat. |
sfx-gasp-necktie | The gasp when the necktie is used. |
sfx-gunshot | The only gunshot in the game. |
sfx-stab | The stab. |
sfx-slap-face | A hand across a face. |
sfx-crack-finger | A finger cracking. |
sfx-body-drag | A body being dragged across a floor. |
sfx-fall-hard | A heavy fall, first recording. |
sfx-fall-hard2 | A heavy fall, second recording. |
sfx-fall-hard3 | A heavy fall, third recording. |
| sfx-wake-gasp | Waking up sharply, first recording. |
| sfx-wake-gasp2 | Waking up sharply, second recording. |
Three fall recordings, two arm breaks and two waking gasps: this is the only group in the game where the same physical event was recorded several times on purpose. That is a practical decision about the game's most violent beats. A fall that plays the same recording twice in a row is obviously a loop, and a loop is the one thing that breaks the illusion that something is happening to you. Three variations of a fall give the moment texture without giving away that you have heard it before. The two waking gasps are the reset cue, the sound of you coming back to yourself at the start of a scene.
Blanket and arrest: 5 clips
| Clip | What plays it |
|---|---|
sfx-blanket-arrest | Being held down, first recording. |
sfx-blanket-arrest2 | Being held down, second recording. |
sfx-blanket-rustle | The blanket moving, first recording. |
sfx-blanket-rustle-2 | The blanket moving, second recording. |
sfx-blanket-rustle-3 | The blanket moving, third recording. |
Five clips, and every one of them is about fabric rather than force. The interesting thing about this group is that the game does not show the arrest so much as it covers it: the rustle is the sound of something being pulled over you, and the arrest clips are the moment of pressure underneath it. Three rustle recordings and two arrest recordings is a full vocabulary for that one gesture.
Interface and cursor: 11 clips
| Clip | What plays it |
|---|---|
button-hover-sfx | The pointer entering a button. |
button-pressed-sfx | The button actually being pressed. |
sfx-arrow-click | A click on an arrow. |
sfx-arrow-click-f | The click on the forward-facing arrow, kept as its own file. |
sfx-slide-click | A click on a slide or a slider. |
sfx-spacebar-click | The click registered by the spacebar, which is the confirm key inside the quick-time events. |
cancel_09 | The cancel or back cue. |
tup | A short interface blip for a neutral confirmation. |
warning_01 | The warning cue, which fires when something in the interface is telling you that what you are about to do is a bad idea. |
transition-sparkle | The sparkle under a scene transition. |
sfx-clock | The clock, which is the game's ticking time pressure. |
This is the group you interact with the most and notice the least, because every one of these clips is triggered by your own mouse or keyboard. sfx-spacebar-click is the one worth remembering: it is the sound of the spacebar being used as the confirm key during the quick-time events, and if you press space during a frantic sequence you will hear it fire whether or not you wanted it to. The sfx-clock cue is the game's stated time pressure made audible, and warning_01 is the one that most often precedes a choice you did not mean to take.
Doll minigame: 13 clips
| Clip | What plays it |
|---|---|
sfx-doll-cut | The cut on the bench, for the scissors and the scalpel. The bench shakes on a cut. |
sfx-doll-slip | The seam giving way when a piece comes off. |
sfx-doll-cotton | The hand scooping up the loose stuffing and taking it to its slot. |
sfx-doll-gore-cut | The cut in the gore reskin, where the pieces are pinker and wetter. |
sfx-doll-gore-slip | The seam giving way in the gore reskin. |
sfx-glitch-creepy-doll | The glitch sound that replaces the room when the twist fires. |
sfx-creepydoll-jump | The creep up that runs alongside the twist's hold. |
sfx_creepydoll_jumpscare_2 | The full jumpscare, the loudest single clip in the game. |
jump1 | The clip the shipped doll data points the twist at, and the one you hear on the twist's own sting. |
jump2 | A second jump, used where the first has already been spent. |
jump3 | A third jump, for the last of the jump material. |
sfx-jump-a-cd | The jump used on the beat where the scene plays its own extra hit. |
sfx-jump-mid1 | The jump placed at the midpoint of a sequence. |
Thirteen clips for one minigame, split cleanly in two. Five are the bench itself: the cut, the slip, the cotton, and their two gore counterparts. The other eight are jumps. The shipped doll data makes the arrangement explicit: when the twist fires, the room's background is replaced by a glitching version of itself, the main sting is jump1, and sfx-creepydoll-jump is layered on top as the extra hit. The other jump clips are spares for the beats around it, and sfx_creepydoll_jumpscare_2 is the full one, reserved for the moment the screen goes wrong.
Other sound effects: 14 clips
| Clip | What plays it |
|---|---|
sfx-camera-shutter | The camera shutter, for the photographs in Adrian's room. |
sfx-clap-snap | A snap, like fingers or a fast hand movement. |
sfx-buble-pop | A bubble popping. The shipped name spells bubble without the second l. |
sfx-car engine start1 | The car engine starting. |
sfx-car-oli | The car with Oliver in it, kept separate from the generic engine start. |
sfx-hand-clean | Hands being cleaned, which is the sound of washing after the doll job. |
sfx-ian-pet1 | Ian's hand on you, first recording. |
sfx-ian-pet2 | Ian's hand on you, second recording. |
sfx-kiss | The kiss. |
sfx-lover-time | The lover-time cue, which pairs with the track of the same name. |
sfx-new-paper | A sheet of paper being laid down or unfolded. |
sfx-slam-paper | Paper slammed down, hard enough to end a conversation. |
| sfx-pull-out | Something being pulled out of something else. |
sfx-thunder | Thunder, which belongs to the storm outside the house. |
Fourteen props and contacts, and three of them carry a lot of weight. sfx-camera-shutter is the photograph in Adrian's room, which is one of the four clues the second half of the game depends on, so the sound of the shutter is the sound of a clue being available to you. sfx-ian-pet1 and sfx-ian-pet2 are the sound of a hand on you, recorded twice, and they are the only sounds in the game that are affectionate. sfx-hand-clean is the sound of washing your hands afterwards, and it is the last thing the doll job leaves you with. Note also that the shipped name of sfx-buble-pop drops a letter from bubble, the same kind of quiet filename typo as the scraem tag and the stray underscore in the score titles.
What the sound design tells you
Pull all of that together and the audio turns into a second script, one that is shorter and more honest than the written one. Three sets in particular carry branch information, and all three are checkable against the flags the game records.
The first is the pill. The pill set is six clips, but only four of them matter for the story: the split, the two swallows and the water. Taking the pill at StoryGame/Midnight1 sets tookPill to true and refusing sets it to false, and the story reads that flag much later, when StoryGame/Midnight2 asks you again. Midnight2 is reached from the scene where you spit the pill out instead of swallowing it, which sets spatPill. So the two swallows and the split are a matched pair across two visits to the same question, and the audio tells you which answer you gave the first time before the game has even shown you the second.
The second is the telephone. The seven clips are the whole screen, and the screen branches four ways: phoneTried when you dial, phoneCorrect when you dial the number that connects, phoneLeave when you walk away from the handset, and oliverCallDropped when the call to Oliver is cut. Every one of those four outcomes has an audible identity, and the game never once says No signal in a way that tells you which digit was wrong. It just gives you the disconnect. Learn to tell the hang-up from the disconnect and you can tell, on a replay, whether you chose to leave the phone or whether the call was taken from you.
The third is the doors, which is the escape. The knock, the lock, the slams and the panic door are the sound of a house being closed one barrier at a time, and the order in which you meet them is the order of the escape sequence. And then there are the three game over variants, StoryGame/GameOver1, StoryGame/GameOver2 and StoryGame/GameOver3, which means a failure in the frantic sequences is not a nudge but a different outcome, with its own cue.
The three sets worth memorising
The pill set of four, the phone set of seven and the door set of eleven are the audio you actually need to understand. Together with the three game over stingers, they tell you which branch you are on without a single line of text. Everything else in this catalogue is atmosphere, and atmosphere is what makes the game frightening, but atmosphere does not change your route.
A listening route for replays
Once you have played the game once, the audio becomes the fastest way to audit a second run. You do not need a guide for the story any more; you need a way to confirm that the story you are playing is the one you meant to play. Here is how to do that by ear.
Start with the phone, because it is the most binary. The sequence is: ring, ringback tone, pick, press, and then either a hang-up, a disconnect or a connection. If you hear a hang-up, you left it, and you have set phoneLeave. If you hear the disconnect, the call was dropped on you and oliverCallDropped is what you are carrying. If you hear a press and then nothing but the line, you dialled and got phoneTried with no connection. Only a completed call sets phoneCorrect, and that is the one you want, because the call to Oliver is the only thing that gets you out of the house with somebody still talking to you.
Then check the pill. At StoryGame/Midnight1 you should hear the split and then one of the two swallows if you took it. If you heard the split and nothing after it, you refused, and tookPill is false. That single fact decides which half of the game you are in for the rest of the run, and it is much easier to catch as a missing sound than as a remembered conversation.
Then check the doors, which tell you the shape of the escape. A knock that is followed by an angry hit is a door you are trying to force. A lock is a door that is closed on purpose. The panic door is the frantic handling of a door in the escape sequence, and if you hear it several times in a row you are in the part of the run where you are stuck.
Finally, listen for the music, because the score tells you the ending before the ending does. bgm-ian-theme is the only track in the game named after a character, so if it comes up you know you are in Ian's half of the story. bgm-ending is the ending cue and bgm-credit is the credits. If your run ends without ever hearing bgm-ian-theme, you did not end up in the route that the game has a theme for, whatever the text said.
One last practical note. Listen with headphones if you can. The game's mixing puts the character blips under the dialogue box, so in a room with a fan running you will miss the blips entirely and the characters will sound identical. The blips are the cheapest way to tell who is speaking when two sprites are on screen at once, and Ian is the one whose five blips you will miss most easily, because he is also the character who has to sound like someone else half the time.
Frequently asked questions
How many audio tracks are in Helping Your Boyfriend?
There are 198 unique clips. The raw audio file the game ships carries 403 keys, but every clip is registered twice, once under its bare name and once under the Naninovel path, so the number worth using is 198, split across thirteen groups.
Who voices the three characters?
Adrian is voiced by Vertin Vii, Ian by BigG and Oliver by Omong. Ian has the largest set with 34 takes, Adrian has 22 and Oliver has 13, for 69 voice takes in total. The original music is by Zakkabeur and K(at), and the sound design is by SakiMew, with audio libraries from freesound.org.
Why do some voice files end in _th?
Because they are the Thai-language version of the same line. The game ships in English and Thai, and the _th suffix marks the second-language recording rather than a different piece of dialogue. Adrian has one such file, Ian has three and Oliver has two, for six in total.
Is the scraem misspelling in the voice file names a bug?
It is a typo that ships in the filenames, and it is checkable in the game's own audio data: two of Ian's takes are filed with scraem where scream belongs. Nothing in the game is broken by it. It is simply the spelling those two takes carry in the shipped build.
How many sound effect groups are there?
Thirteen, counting the voice takes, the voice blips and the score as groups of their own. The 198 clips divide into voice takes 69, score 22, violence and impact 14, other sound effects 14, doll minigame 13, voice blips 12, doors and barriers 11, interface and cursor 11, footsteps and movement 10, telephone 7, medicine and injections 6, blanket and arrest 5, and heartbeat, stings and waking 4.
Which sounds tell you which branch you are on?
The phone screen, the pill and the game over stingers. The phone activity has exactly seven clips and branches on phoneTried, phoneCorrect, phoneLeave and oliverCallDropped. The pill set is matched: sfx-pill-split for the tablet being broken, sfx-pill-swallow-normal and sfx-pill-swallow-mid for the two swallow variants, with sfx-drink-water for the glass. The three game over variants are StoryGame/GameOver1, StoryGame/GameOver2 and StoryGame/GameOver3.
Is there music in the game, and how much?
Twenty-three score tracks, plus two ambience loops that sit alongside them, night ambience and creepy-industrial-ambience. One of the score tracks is the main menu, one is the credits, and one is called bgm-ian-theme, the only track in the whole game named after a character.
Which sound effects belong to the doll job?
Thirteen of them. The bench itself uses sfx-doll-cut for the scissors and the scalpel, sfx-doll-slip for the seam giving way and sfx-doll-cotton for the hand scooping up the stuffing, with sfx-doll-gore-cut and sfx-doll-gore-slip for the gore reskin. The rest are the jumpscare material: jump1, jump2, jump3, sfx-jump-a-cd, sfx-jump-mid1, sfx-creepydoll-jump, sfx_creepydoll_jumpscare_2 and sfx-glitch-creepy-doll.
Does the game warn you about the audio?
Yes. The warning covers jumpscares, loud noises, flashing and disturbing images, blood and cartoon gore, violence and drug use. The audio is where most of that lands: the jump clips in the doll group, the gunshot, the arm-breaking sounds and the ringing-in-the-ears sting.
How can I use the audio to check my route on a replay?
Listen for three sets: the doors, the pill and the phone. Three angry door recordings plus a lock and a panic door tell you which barrier moment you are in. The pill split and the two swallow variants tell you whether you took it or refused it. The ring, the ringback tone, the pick, the press, the hang-up and the disconnect tell you exactly where the phone screen left you.