V2T
Hold one key and talk. Speech to text into chat for everyone, plus live voice chat with crewmates who have the mod. Offline, 42 languages.V2T - Voice to Text and Voice Chat for Jump Space
by Pasharacc / ICGICommander
Talk to your crew. Hold one key and speak.
Your words appear in chat for everyone, and every crewmate who has V2T hears your voice live. In any lobby, whoever hosts it.
The benefits of V2T
- Voice chat in any lobby, whoever hosts
Voice chat is between players who have V2T installed. Host your own game, join a friend, or drop into a stranger's lobby: every player there with V2T can talk to every other player with V2T, even when the host does not have it. Players without V2T do not hear the voice chat, but they still read what you say, transcribed as normal chat text.
- Speech to text in 42 languages
Speak, and within about a second your words appear as a normal chat message. Everyone can read the message, with or without V2T. English, Dutch, German, French, Spanish, Italian, Polish, Russian, Japanese, Mandarin and many more.
- Speak any language, send English
Speak in your own language and V2T sends your words to chat in English, so the whole crew can read you.
- Push to talk / Voice activation
Hold a key to talk, or switch to voice activation and just speak.
- Private, no servers, no Discord
Speech recognition runs on your own PC, fully offline, so nothing is uploaded to be transcribed. Voice travels over Epic's peer-to-peer networking, the same service the game itself uses, so there is no server, Discord or port forwarding to set up.
- Follows your default audio device
V2T automatically switches to your Windows default microphone and speakers whenever you change them, and reconnects by itself when headphones drop out or come back. No settings to touch.
Huge thanks to Cobaltto ❤️
Cobaltto (also known as WalTaka) spent hours testing V2T in real games with me: hosted sessions, strangers' lobbies, enduring multiple restarts and lobby switches, over and over. Thanks man! ✨
Using V2T
Controls
On most keyboards the key sits to the left of
, just under
.
| Keys | What it does |
|---|---|
| Push to talk (text is transcribed on release) | |
| Switch between TEXT, VOICE, BOTH and MUTE | |
| Switch between PUSH TO TALK and VOICE ACTIVATED | |
| Pick the language you speak | |
| Switch translation to English on or off | |
| Re-read the settings file | |
| Move the comms panel: top left, bottom centre or top centre | |
| Show the controls reminder again |
- Be in a session. The hangar counts. V2T's interface does not display in the menus.
- The first time you reach the hangar, a short reminder of the controls appears at the
bottom of the screen. The reminder goes away the first time you press the talk key. Hold
and press
to bring it back.
While you hold the key, what you say appears where you normally type in chat, with the language you speak at the right end. Your level shows on your own row in the comms panel (see Voice chat below).
- Watch your level. Green is good, amber is loud, red means you are clipping. Turn your mic gain down if your level hits red.
- The talk key does nothing while you are typing in chat, or while the game window is not focused.
- You can start talking as you press. V2T keeps a moment of audio from before the keypress, so short words like "yes" do not get clipped.
Modes
Hold and press
to switch. The selector shows at the bottom of the screen for a couple of seconds, so
you can see which one you landed on.
| Mode | What the key does | Do you hear crewmates? |
|---|---|---|
| TEXT | Transcribes to chat | Yes |
| VOICE | Live voice to crewmates | Yes |
| BOTH | Transcribes and talks (the default) | Yes |
| MUTE | Transcribes to chat only | No |
- BOTH is the safe default: crewmates without V2T still read you, and crewmates with V2T also hear you.
- MUTE shows a red VOICE CHAT MUTED line at the bottom of the screen the whole time MUTE is on, so you cannot forget you set it. Crewmates with V2T see MUTED (Can't hear you) on your row. Restarting the game always switches MUTE off again.
Push to talk or voice activated
Hold and press
to switch between the two. A selector flashes up at the bottom of the
screen for a couple of seconds, showing which one you landed on.
- PUSH TO TALK (the default): hold the key to talk, as above.
- VOICE ACTIVATED: just speak. V2T hears that you are talking and does whatever the
current mode does, exactly as if you were holding the key: text to chat, voice to
crewmates, or both. Holding
still works too.
- Voice activation learns your room's background noise within a few seconds, ignores short clicks and knocks, and keeps listening for 0.7 s after you stop, so pauses between words do not cut you off. The start of each sentence is kept, not clipped.
- A green VOICE ACTIVATED line stays at the bottom of the screen the whole time voice activation is on, so you always know your mic is live. The choice is remembered between sessions.
- Use headphones with voice activation. With speakers, voice activation also hears the game and your crewmates, and with text on, their words can end up in your chat.
Voice chat
- Crewmates need V2T to hear you. Text works for everyone regardless.
- Everyone with V2T hears everyone else with V2T in the same session, whoever hosts, even when the host does not have it. Allow 10 to 20 seconds after someone joins. Everyone should be on V2T 2.1.6 or newer.
- You only hear players in your current session, never someone from a lobby you left.
The COMMS panel lists everyone in your session, and stays on screen the whole time you
are in a game. It starts in the top left, under the ship status. Hold and press
to move it to the bottom centre, again for the top centre, and once more to bring it back.
| Row | What it means |
|---|---|
| TX your name | You. Lights up while you are sending |
| RX name | A crewmate with V2T. Lights up while they talk. Several people can talk at once |
| name ●○○ connecting | V2T is still connecting to a player who just joined |
| ✕ name No V2T detected | That player does not have V2T. Shown in red for a few seconds, about a minute after they join, then the row goes |
| RX name MUTED (Can't hear you) | That crewmate has V2T on MUTE and hears nobody |
The counter includes you: V2T | 3/4 ACTIVE means 3 of the 4 players in your session
have V2T, and V2T | 1/4 ACTIVE means only you do.
If your level does not move
Hold the talk key for a second without speaking. If V2T hears nothing from the microphone, the chat field says, in amber:
NO AUDIO DETECTED | <the microphone V2T is listening to>
V2T always listens to your Windows default input and follows it live. Pick the right microphone in Windows Settings > System > Sound > Input and V2T switches to it within a second, no restart needed.
Voice chat uses Steam's microphone setting, not V2T's. If your text works but crewmates cannot hear you, check Steam > Settings > Voice > Voice Input Device.
Other languages
V2T understands 42 languages, including Dutch, German, French, Spanish, Italian, Polish, Russian, Japanese and Mandarin.
- Hold
and press
in game to open the language picker
- Press
again (still holding
) to move down the list
- Whichever you pick is shown as a tag, such as
NL, at the right end of the chat field while you talk
English uses its own smaller, faster model. The larger multilingual one is only loaded the first time you pick another language, so staying in English costs you nothing.
If you only ever use two or three of them, set Languages (see Settings) to just those.
The picker then holds only your list, so switching takes a press or two instead of hunting
through 42 entries.
V2T only listens for the selected language. Speak English while German is selected and you get confident-looking nonsense, so check the language tag while you talk.
Manual install
Only needed if you are not using a mod manager. The one zip below is the quickest way.
Download the V2T drop-in zip with the button above (direct link). The zip holds MelonLoader
and V2T together, so there is nothing else to get first. Extract everything in the zip into your
Jump Space folder, next to Jump Space.exe (in Steam: right-click Jump Space >
Manage > Browse local files), then start the game. The first start takes a few
minutes and may look frozen. That is normal.
If Windows asks whether to replace
version.dll, choose Skip. Another mod, such as More Players, uses that name. Then save the zip'sversion.dllinto the folder aswinhttp.dlland both load side by side.INSTALL.txtin the zip says the same.
Google Drive warns that it cannot scan the zip for viruses because the file is large: click Download anyway.
Step by step
If you would rather install V2T by hand.
Requirements
- Jump Space
- MelonLoader 0.7.3 (x64)
- A microphone
- A few spare CPU cores
- ~250 MB of disk space
1. Install MelonLoader
First, find your Jump Space folder. In Steam, right-click Jump Space >
Manage > Browse local files. A folder opens containing Jump Space.exe.
Keep that window open, you will need it again in step 2.
Then:
- Download
MelonLoader.x64.zip(19 MB) - Open the zip. Inside are a
MelonLoaderfolder andversion.dll - Copy both into your Jump Space folder, next to
Jump Space.exe
⚠️ Check for an existing
version.dllfirst.Look in your Jump Space folder before copying. If a
version.dllis already there, another mod is using that filename and copying MelonLoader's over it would break that mod. The More Players mod uses it, and so do various other native mods, injectors and overlays, so check rather than assume you would know.If one is there:
- Keep it, and rename MelonLoader's
version.dlltowinhttp.dllas you copy it in.- Both mods then load side by side. This is tested and works.
If
winhttp.dllis taken too, MelonLoader accepts other proxy names. Check its wiki for the current list.
2. Copy this package in
Drag the Mods, UserLibs and Plugins folders from this zip into your Jump Space
folder, next to Jump Space.exe. You should end up with:
JumpSpace\
Plugins\
V2TBootstrap.dll
Mods\
V2T.dll
V2T\
ggml-base.en-q5_1.bin (English)
ggml-small-q5_1.bin (all other languages)
runtimes\win-x64\ (4 .dll files)
UserLibs\ (4 .dll files)
Why there is a
Pluginsfolder in here. When Jump Space updates, MelonLoader 0.7.3 keeps leftovers from the previous game version in its working folder, and since 0.7.16.6 one of those leftovers makes MelonLoader crash while preparing the game for mods, so nothing loads.V2TBootstrap.dllruns before that step and clears the leftovers. The plugin is 6 KB of plain housekeeping, nothing from MelonLoader itself. Skip this folder and the console saysError Generating Interop Assembliesand V2T never appears.
3. Launch
The first start takes a few minutes while MelonLoader sets itself up, and the window may look frozen. That is normal. A black console window opens alongside the game. Among other lines, the console should show these, in this order:
[voice] live voice ready (mode: BOTH - voice and chat)
push-to-talk key: Backquote (vk 0xC0)
english model loaded in 120 ms (ggml-base.en-q5_1.bin)
microphone: <your mic> (the Windows default input - V2T follows it)
ready - hold Backquote to talk.
Linux and Steam Deck
Jump Space runs through Proton there, and V2T runs with it (tested with r2modman on Proton 11). Two one-time steps, whichever way you install:
- In Steam, right-click Jump Space > Properties > General > Launch Options and paste:
WINEDLLOVERRIDES="version,winhttp=n,b" %command% - Install the Windows .NET 6 runtime into the game's Proton prefix:
protontricks 1757300 dotnetdesktop6
Your log is in MelonLoader/Latest.log inside the game folder, or inside your profile
folder if you use r2modman (Settings > Locations > Browse profile folder).
Settings
UserData\MelonPreferences.cfg. Edit it with the game closed, or edit it while playing and
press  + right after saving (otherwise the game can overwrite your change when it next
saves its settings). After that, `Volume`, `TalkMode`, `InputMode`, `TranslateToEnglish`, the voice activation
settings and the voice processing settings (`HighPassHz`, `Denoise`, `AutoLevel`,
`Compressor`) change straight away. Anything else, such as the keys, `PlaybackLatencyMs` or
`JitterBufferMs`, needs a game restart.
[V2T] - speech to text and the display
| Setting | Default | What it does |
|---|---|---|
PushToTalkKey |
Backquote |
The talk key. A key name from the list below, or Mouse4 / Mouse5 |
Languages |
en |
The language you start on. With several listed ("en,nl"), the picker offers only those |
ModelEnglish |
ggml-base.en-q5_1.bin |
The speech model used for English |
ModelMultilingual |
ggml-small-q5_1.bin |
The speech model used for all other languages |
TranslateToEnglish |
false |
Translates your speech into English before sending it to chat. Same as |
ShowHud |
true |
Shows V2T on screen: the comms panel, what you say, and the selectors |
HudPosition |
TopLeft |
Where the comms panel sits: TopLeft, BottomCentre or TopCentre. Same as |
HudX / HudY |
1.7 / 51.0 |
Where the language picker opens, in % of the screen width and height |
HudFontSize |
20 |
Font size of everything V2T shows. Increase it on 4K screens |
LivePreview |
true |
Shows the transcript while you are still talking |
PreRollMs |
300 |
How much audio from just before the keypress is kept, in ms |
Threads |
6 |
CPU threads used for speech recognition. Lower it if the game stutters |
Verbose |
false |
Writes extra detail to the log, such as why a key press was ignored |
[V2TShared] - the modes
| Setting | Default | What it does |
|---|---|---|
TalkMode |
2 |
What the talk key does: 0 text, 1 voice, 2 both, 3 mute. Same as |
InputMode |
0 |
How you talk: 0 push to talk, 1 voice activated. Same as |
VoiceActivationThresholdDb |
12 |
How far above the room's noise your voice must be. Lower triggers more easily |
VoiceActivationHangoverMs |
700 |
How long voice activation keeps listening after you stop speaking |
[V2TVoice] - live voice
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
Turns live voice (sending and receiving) on or off. Speech to text works either way |
Volume |
1.0 |
Volume of your crewmates' voices, 0 to 2 |
PlaybackLatencyMs |
100 |
Size of the audio output buffer, in ms. Lower is snappier, too low crackles |
JitterBufferMs |
200 |
How much incoming voice is held back to smooth out network hiccups, in ms. Raise it if voice breaks up |
ShowStartupHint |
true |
Shows the controls reminder when you first reach the hangar |
HighPassHz |
100 |
Cuts rumble and desk thumps. 0 disables |
Denoise |
true |
Pulls down background noise between words |
AutoLevel |
true |
Brings quiet and loud crewmates to the same level |
Compressor |
true |
Evens out each speaker's dynamics |
HudX / HudY / HudFontSize |
1.7 / 58.0 / 20 |
Position and font size of V2T's short pop-up messages, such as TRANSLATE TO ENGLISH: ON |
Everything else under [V2TVoice] is for fine-tuning and diagnosing problems. Leave it
alone unless you have been asked to change it.
Picking a key:  is the default. If the key you pick also does something in the game, set `SuppressKeyFromGame = true`. Key names: `Backquote`, `A`-`Z`, `D0`-`D9`, `Numpad0`-`Numpad9`, `F1`-`F24`, `Mouse4`, `Mouse5`, `LeftAlt`, `RightAlt`. An unknown name is logged and falls back to Backquote.
Models. Both needed models ship with this package. If you want to swap one out,
grab it from huggingface.co/ggerganov/whisper.cpp
and drop it in Mods\V2T\:
| Model | Size | Speed | Notes |
|---|---|---|---|
ggml-base.en-q5_1.bin |
57 MB | ~500 ms | Included. English |
ggml-small-q5_1.bin |
181 MB | ~900 ms | Included. All other languages |
ggml-tiny.en-q5_1.bin |
32 MB | ~300 ms | Optional. Faster, less accurate |
ggml-small.en-q5_1.bin |
181 MB | ~900 ms | Optional. More accurate English |
If something is wrong
Logs are in MelonLoader\Logs\. Set Verbose = true for more detail.
| Symptom | Fix |
|---|---|
| Nothing happens on the key | Are you in a session? Is the game focused? Check push-to-talk key: in the log |
NO AUDIO DETECTED in the chat field |
Wrong input. Make your mic the default input in Windows sound settings; V2T follows it |
| Voice activated triggers on its own | Use headphones, or raise VoiceActivationThresholdDb to 18 |
| Voice activated misses quiet speech | Lower VoiceActivationThresholdDb to 8 |
| Text works, crewmates cannot hear you | Check Steam > Settings > Voice > Voice Input Device. Voice uses Steam's mic, not V2T's |
V2T | 1/4 ACTIVE |
Your crewmates need to install V2T too. Your text still reaches them |
| Two crewmates cannot hear each other | Both need V2T 2.1.6 or newer. Allow 20 seconds after joining |
| A crewmate with V2T shows No V2T detected | They need V2T 2.1.6 or newer. Their row becomes a normal RX row as soon as the link opens |
| Voice breaks up | Raise JitterBufferMs to 300. If voice crackles instead, raise PlaybackLatencyMs |
| You hear nobody and VOICE CHAT MUTED shows at the bottom of the screen | You are in MUTE. Hold |
| "Native Library not found" | Mods\V2T\runtimes\win-x64\ must contain all 4 .dll files |
Error Generating Interop Assemblies in the console |
Plugins\V2TBootstrap.dll is missing. Copy the Plugins folder from this package in and relaunch |
| Your level is red | Turn your mic gain down. Clipping hurts speech to text accuracy |
| Transcripts are wrong | Try a bigger model, or check the language tag while you talk |
| Stutters while transcribing | Lower Threads to 4 |
| Broke after a game update | MelonLoader rebuilds itself on next launch (slow once). If V2T still fails, V2T needs an update |
Notes
- The mic stays open while the game runs, so Windows shows the microphone as in use. The open microphone is what lets V2T capture the start of short words. Audio is continuously overwritten in memory and never saved. Audio is only sent or transcribed while you hold the key, or while voice activation is on and hears you speak.
- Voice never touches chat. Compression happens on your own machine through Steam's voice codec, and packets travel over Epic's peer-to-peer networking, the same service the game uses for its own connections. No Steam ID leaves your machine; crewmates with V2T only receive the name the game already shows them, and whether you have V2T on mute.
- Transcription runs on a background thread, so the game does not freeze while V2T transcribes.
Built with MelonLoader, Whisper.net, whisper.cpp and NAudio.
