mirror of
https://github.com/TheJordanDev/PEAK-JordanMod.git
synced 2026-10-16 23:56:44 +02:00
Speak through BingBong with a live microphone, streamed from a relay rather than over PEAK's Photon servers. This is the in-game half only: the relay and the web app that captures the microphone are not built yet, so the feature does nothing on its own until they exist. Every BingBong gets a voice source as it spawns, positioned on the plush and inheriting the 3D setup of his own voice lines. His mouth animates to the live audio on every client, and hands back to the vanilla animation while one of his own lines plays. Those lines take priority: the live voice ducks for their duration and resumes at the live position. Playback uses OnAudioFilterRead rather than a streaming AudioClip. A clip created with stream:true fills Unity's decode buffer ahead of playback, and that read-ahead cannot be satisfied from a live stream because the audio has not arrived yet -- the buffer drained to empty on a cycle no matter how deep it was made, which was audible as constant clicking. The filter callback runs in lockstep with playback, so demand can never outrun real time. Includes tools/stub_relay.py, a development stub speaking the same wire format with steady, swept and speech-shaped test signals, so the client can be tested end to end without the real backend, a microphone or a browser.
38 lines
1.3 KiB
XML
38 lines
1.3 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<!-- This is the most appropriate target framework for the game's Unity version. -->
|
|
<TargetFramework>netstandard2.1</TargetFramework>
|
|
<!-- This is the GUID of your mod. Example: com.github.YourAccount.BepInExTemplate -->
|
|
<AssemblyName>com.github.TheJordanDev.JordanMod</AssemblyName>
|
|
<!-- This is the display name of your mod. Example: BepInEx Template -->
|
|
<AssemblyTitle>JordanMod</AssemblyTitle>
|
|
<!-- This is the version number of your mod. -->
|
|
<Version>0.1.15</Version>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<DebugType>none</DebugType>
|
|
<DebugSymbols>false</DebugSymbols>
|
|
<Optimize>true</Optimize>
|
|
</PropertyGroup>
|
|
|
|
<!--
|
|
How to include thunderstore mods as dependencies via nuget
|
|
|
|
We have already added the windows10ce nuget feed to this project
|
|
in NuGet.Config so all you need to do is list a dependency like
|
|
this:
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="ModTeam-ModName" Version="1.0.0" Private="False"/>
|
|
</ItemGroup>
|
|
|
|
Private="false" will stop it from being copied to the output folder
|
|
during build. This will cause the mod to be downloaded and its
|
|
methods will be available at compile time for your code. You'll still
|
|
need to add it as a dependency in your manifest.json, of course
|
|
-->
|
|
|
|
</Project>
|