[ NOTICE (2026-10-10) ]
I have been in the mood to work on Minecraft modding again, a better written FiguraSVC successor is currently in the works, with a much better API and an actually fairly decent codebase. FiguraSVC was written as mostly a proof-of-concept and can be volatile to VM errors.
FiguraSVC
A unofficial addon for Figura that allows Simple Voice Chat to be detected by Figura Lua scripts.
Example Script
-- Example talking animation
local microphoneOffTime = 0
local isMicrophoneOn = false
function pings.talking(state)
-- (safe on servers) (visible to everyone)
animations.model.talk:setPlaying(state)
end
function events.tick()
local previousMicState = isMicrophoneOn
microphoneOffTime = microphoneOffTime + 1
isMicrophoneOn = microphoneOffTime <= 2 -- has svc.microphone been called in the past 2 ticks?
if previousMicState ~= isMicrophoneOn then
pings.talking(isMicrophoneOn)
end
end
if client:isModLoaded("figurasvc") and host:isHost() then
function events.HOST_MICROPHONE(pcm)
microphoneOffTime = 0
end
end All Versions
+ Add Versionevents.microphone call.-This is simply a bundle of the partial build of 2.1.
- Port to 1.21 versions (yes this works for every version of 1.21)
- Legacy events have been rewritten to use the same system as all other events
- Added new events
events.host_microphone- Only runs on the host client, this can be used to process audio data before its sent out to other clients (W.I.P)
- This event supercedes
svc.microphoneand works almost exactly like it! events.microphone- A new event that runs on all other clients besides the host! Allows for ping-free real time audio animations!
- Forge Support!
- FiguraSVC now (mostly) requires all clients to have the mod installed to enable real time audio processing, otherwise it will fall-back to the old ping system!
- 1.20.4 Port
- Added a parameter to svc.microphone that provides the raw 16-bit PCM data.
- Fixed issue where the SVC plugin would keep erroring out if a figura avatar wasn't loaded on the client.