mirror of
https://github.com/NotAKidoS/NAK_CVR_Mods.git
synced 2026-02-04 00:56:11 +00:00
Compare commits
4 commits
226b369537
...
77a033047c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
77a033047c | ||
|
|
ce992c70ee | ||
|
|
a38530562c | ||
|
|
7c3a8f4f39 |
13 changed files with 1038 additions and 129 deletions
146
.Experimental/PlapPlapForAll/Components/DPS.cs
Normal file
146
.Experimental/PlapPlapForAll/Components/DPS.cs
Normal file
|
|
@ -0,0 +1,146 @@
|
|||
using ABI_RC.Core;
|
||||
using UnityEngine;
|
||||
|
||||
namespace NAK.PlapPlapForAll;
|
||||
|
||||
public enum DPSLightType
|
||||
{
|
||||
Invalid,
|
||||
Hole,
|
||||
Ring,
|
||||
Normal,
|
||||
Tip
|
||||
}
|
||||
|
||||
public struct DPSOrifice
|
||||
{
|
||||
public DPSLightType type;
|
||||
public Light dpsLight;
|
||||
public Light normalLight;
|
||||
public Transform basis;
|
||||
}
|
||||
|
||||
public struct DPSPenetrator
|
||||
{
|
||||
public Transform penetratorTransform;
|
||||
public float length; // _Length // _TPS_PenetratorLength
|
||||
}
|
||||
|
||||
public static class DPS
|
||||
{
|
||||
private static readonly int Length = Shader.PropertyToID("_Length");
|
||||
private static readonly int TpsPenetratorLength = Shader.PropertyToID("_TPS_PenetratorLength");
|
||||
|
||||
public static DPSLightType GetOrificeType(Light light)
|
||||
{
|
||||
int encoded = Mathf.RoundToInt(Mathf.Repeat((light.range * 500f) + 500f, 50f) + 200f);
|
||||
return encoded switch
|
||||
{
|
||||
205 => DPSLightType.Hole, // 0.41
|
||||
210 => DPSLightType.Ring, // 0.42
|
||||
225 => DPSLightType.Normal, // 0.45
|
||||
245 => DPSLightType.Tip, // 0.49
|
||||
_ => DPSLightType.Invalid
|
||||
};
|
||||
}
|
||||
|
||||
public static bool ScanForDPS(
|
||||
GameObject rootObject,
|
||||
out List<DPSOrifice> dpsOrifices,
|
||||
out bool foundPenetrator)
|
||||
{
|
||||
dpsOrifices = null;
|
||||
foundPenetrator = false;
|
||||
|
||||
// Scan for DPS
|
||||
Light[] allLights = rootObject.GetComponentsInChildren<Light>(true);
|
||||
int lightCount = allLights.Length;
|
||||
if (lightCount == 0) return false;
|
||||
|
||||
// DPS setups are usually like this:
|
||||
// - Empty Container
|
||||
// - Light (Type light) (range set to 0.x1 for hole or 0.x2 for ring)
|
||||
// - Light (Normal light) (range set to 0.x5)
|
||||
|
||||
for (int i = 0; i < lightCount; i++)
|
||||
{
|
||||
Light light = allLights[i];
|
||||
|
||||
DPSLightType orificeType = GetOrificeType(light);
|
||||
|
||||
if (orificeType == DPSLightType.Tip)
|
||||
{
|
||||
foundPenetrator = true;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (orificeType is DPSLightType.Hole or DPSLightType.Ring)
|
||||
{
|
||||
Transform lightTransform = light.transform;
|
||||
Transform parent = lightTransform.parent;
|
||||
|
||||
// Found a DPS light
|
||||
DPSOrifice dpsOrifice = new()
|
||||
{
|
||||
type = orificeType,
|
||||
dpsLight = light,
|
||||
normalLight = null,
|
||||
basis = parent // Assume parent is basis
|
||||
};
|
||||
|
||||
// Try to find normal light sibling
|
||||
foreach (Transform sibling in parent)
|
||||
{
|
||||
if (sibling == lightTransform) continue;
|
||||
if (sibling.TryGetComponent(out Light siblingLight)
|
||||
&& GetOrificeType(siblingLight) == DPSLightType.Normal)
|
||||
{
|
||||
dpsOrifice.normalLight = siblingLight;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
dpsOrifices ??= [];
|
||||
dpsOrifices.Add(dpsOrifice);
|
||||
}
|
||||
}
|
||||
|
||||
return dpsOrifices is { Count: > 0 } || foundPenetrator;
|
||||
}
|
||||
|
||||
public static void AttemptTPSHack(GameObject rootObject)
|
||||
{
|
||||
Renderer[] allRenderers = rootObject.GetComponentsInChildren<Renderer>(true);
|
||||
int count = allRenderers.Length;
|
||||
if (count == 0) return;
|
||||
|
||||
SkinnedDickFixRoot fixRoot = rootObject.AddComponent<SkinnedDickFixRoot>();
|
||||
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
Renderer render = allRenderers[i];
|
||||
if (render.gameObject.CompareTag(CVRTags.InternalObject))
|
||||
continue;
|
||||
|
||||
Material mat = render.sharedMaterial;
|
||||
if (!mat) continue;
|
||||
|
||||
float length = 0f;
|
||||
if (mat.HasProperty(TpsPenetratorLength)) length += mat.GetFloat(TpsPenetratorLength);
|
||||
if (mat.HasProperty(Length)) length += mat.GetFloat(Length);
|
||||
if (length <= 0f) continue;
|
||||
|
||||
Transform dpsRoot;
|
||||
SkinnedMeshRenderer smr = render as SkinnedMeshRenderer;
|
||||
if (smr && smr.rootBone)
|
||||
dpsRoot = smr.rootBone;
|
||||
else
|
||||
dpsRoot = render.transform;
|
||||
|
||||
fixRoot.Register(render, dpsRoot, length);
|
||||
|
||||
PlapPlapForAllMod.Logger.Msg(
|
||||
$"Added shared DPS penetrator light for mesh '{render.name}' in object '{rootObject.name}'.");
|
||||
}
|
||||
}
|
||||
}
|
||||
126
.Experimental/PlapPlapForAll/Components/DickFix.cs
Normal file
126
.Experimental/PlapPlapForAll/Components/DickFix.cs
Normal file
|
|
@ -0,0 +1,126 @@
|
|||
using UnityEngine;
|
||||
|
||||
namespace NAK.PlapPlapForAll;
|
||||
|
||||
public sealed class SkinnedDickFixRoot : MonoBehaviour
|
||||
{
|
||||
private struct Entry
|
||||
{
|
||||
public Transform root;
|
||||
public GameObject lightObject;
|
||||
public Renderer[] renderers;
|
||||
public int rendererCount;
|
||||
public bool lastState;
|
||||
}
|
||||
|
||||
private Entry[] _entries;
|
||||
private int _entryCount;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_entries = new Entry[4];
|
||||
_entryCount = 0;
|
||||
}
|
||||
|
||||
public void Register(Renderer renderer, Transform dpsRoot, float length)
|
||||
{
|
||||
int idx = FindEntry(dpsRoot);
|
||||
if (idx < 0)
|
||||
{
|
||||
idx = _entryCount;
|
||||
if (idx == _entries.Length)
|
||||
{
|
||||
Entry[] old = _entries;
|
||||
_entries = new Entry[old.Length << 1];
|
||||
Array.Copy(old, _entries, old.Length);
|
||||
}
|
||||
|
||||
GameObject lightObj = new("[PlapPlapForAllMod] Auto DPS Tip Light");
|
||||
lightObj.transform.SetParent(dpsRoot, false);
|
||||
lightObj.transform.localPosition = new Vector3(0f, 0f, length * 0.5f); // Noachi said should be at base
|
||||
lightObj.SetActive(false); // Initially off
|
||||
|
||||
Light l = lightObj.AddComponent<Light>();
|
||||
l.type = LightType.Point;
|
||||
l.range = 0.49f;
|
||||
l.intensity = 0.354f;
|
||||
l.shadows = LightShadows.None;
|
||||
l.renderMode = LightRenderMode.ForceVertex;
|
||||
l.color = new Color(0.003921569f, 0.003921569f, 0.003921569f);
|
||||
|
||||
Entry e;
|
||||
e.root = dpsRoot;
|
||||
e.lightObject = lightObj;
|
||||
e.renderers = new Renderer[2];
|
||||
e.rendererCount = 0;
|
||||
e.lastState = false;
|
||||
|
||||
_entries[idx] = e;
|
||||
_entryCount++;
|
||||
}
|
||||
|
||||
ref Entry entry = ref _entries[idx];
|
||||
Renderer[] list = entry.renderers;
|
||||
|
||||
for (int i = 0; i < entry.rendererCount; i++)
|
||||
if (list[i] == renderer)
|
||||
return;
|
||||
|
||||
if (entry.rendererCount == list.Length)
|
||||
{
|
||||
Renderer[] old = list;
|
||||
list = new Renderer[old.Length << 1];
|
||||
Array.Copy(old, list, old.Length);
|
||||
entry.renderers = list;
|
||||
}
|
||||
|
||||
list[entry.rendererCount++] = renderer;
|
||||
}
|
||||
|
||||
private int FindEntry(Transform root)
|
||||
{
|
||||
for (int i = 0; i < _entryCount; i++)
|
||||
if (_entries[i].root == root)
|
||||
return i;
|
||||
return -1;
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
for (int i = 0; i < _entryCount; i++)
|
||||
{
|
||||
ref Entry entry = ref _entries[i];
|
||||
|
||||
bool active = false;
|
||||
Renderer[] list = entry.renderers;
|
||||
int count = entry.rendererCount;
|
||||
|
||||
for (int r = 0; r < count; r++)
|
||||
{
|
||||
Renderer ren = list[r];
|
||||
if (!ren) continue;
|
||||
if (ren.enabled && ren.gameObject.activeInHierarchy)
|
||||
{
|
||||
active = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (active != entry.lastState)
|
||||
{
|
||||
entry.lastState = active;
|
||||
entry.lightObject.SetActive(active);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
for (int i = 0; i < _entryCount; i++)
|
||||
{
|
||||
ref Entry entry = ref _entries[i];
|
||||
entry.lightObject.SetActive(false);
|
||||
entry.lastState = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
271
.Experimental/PlapPlapForAll/Components/PlapPlapTap.cs
Normal file
271
.Experimental/PlapPlapForAll/Components/PlapPlapTap.cs
Normal file
|
|
@ -0,0 +1,271 @@
|
|||
using ABI.CCK.Components;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Animations;
|
||||
|
||||
namespace NAK.PlapPlapForAll;
|
||||
|
||||
public enum PlapPlapAudioMode
|
||||
{
|
||||
Ass,
|
||||
Mouth,
|
||||
Generic,
|
||||
Vagina
|
||||
}
|
||||
|
||||
public sealed class PlapPlapTap : MonoBehaviour
|
||||
{
|
||||
private static readonly Rule[] Rules =
|
||||
{
|
||||
new(PlapPlapAudioMode.Mouth, HumanBodyBones.Head, 3,
|
||||
"mouth", "oral", "blow", "bj"),
|
||||
new(PlapPlapAudioMode.Vagina, HumanBodyBones.Hips, 3,
|
||||
"pussy", "vagina", "cunt", "v"),
|
||||
new(PlapPlapAudioMode.Ass, HumanBodyBones.Hips, 2, "ass",
|
||||
"anus", "butt", "anal", "b"),
|
||||
new(PlapPlapAudioMode.Generic, null, 1,
|
||||
"thigh", "armpit", "foot", "knee", "paizuri", "buttjob", "breast", "boob", "ear")
|
||||
};
|
||||
|
||||
private DPSOrifice _dpsOrifice;
|
||||
private Animator _animator;
|
||||
private ParentConstraint _constraint;
|
||||
private bool _dynamic;
|
||||
private bool _lastLightState;
|
||||
private int _activeSourceIndex = -1;
|
||||
private PlapPlapAudioMode _mode;
|
||||
private GameObject _plapPlapObject;
|
||||
private RenderTexture _memoryTexture;
|
||||
private bool _hasInitialized;
|
||||
|
||||
public static bool IsBuiltInPlapPlapSetup(DPSOrifice dpsOrifice)
|
||||
{
|
||||
Transform basis = dpsOrifice.basis;
|
||||
|
||||
// Check if basis name is plap plap
|
||||
if (basis.name == "plap plap") return true;
|
||||
|
||||
// Check if there is a texture property parser under the basis
|
||||
SkinnedMeshRenderer smr = basis.GetComponentInChildren<SkinnedMeshRenderer>(true);
|
||||
if (smr && smr.sharedMaterial && smr.sharedMaterial.name == "Unlit_detect dps")
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static PlapPlapTap CreateFromOrifice(DPSOrifice dpsOrifice, Animator animator, GameObject plapPlapPrefab)
|
||||
{
|
||||
Light light = dpsOrifice.dpsLight;
|
||||
PlapPlapTap tap = light.gameObject.AddComponent<PlapPlapTap>();
|
||||
tap._dpsOrifice = dpsOrifice;
|
||||
tap._animator = animator;
|
||||
|
||||
GameObject plapPlap = Instantiate(plapPlapPrefab, light.transform, false);
|
||||
tap._plapPlapObject = plapPlap;
|
||||
|
||||
// Duplicate memory texture
|
||||
CVRTexturePropertyParser parser = plapPlap.GetComponentInChildren<CVRTexturePropertyParser>(true);
|
||||
Camera camera = plapPlap.GetComponentInChildren<Camera>(true);
|
||||
|
||||
RenderTexture instancedTexture = new(parser.texture);
|
||||
instancedTexture.name += $"_Copy_{instancedTexture.GetHashCode()}";
|
||||
parser.texture = instancedTexture;
|
||||
camera.targetTexture = instancedTexture;
|
||||
tap._memoryTexture = instancedTexture;
|
||||
|
||||
ParentConstraint pc = tap.GetComponentInParent<ParentConstraint>(true);
|
||||
if (pc && pc.sourceCount > 0)
|
||||
{
|
||||
tap._constraint = pc;
|
||||
tap._dynamic = true;
|
||||
}
|
||||
|
||||
tap.SetOrificeMode(dpsOrifice.type);
|
||||
tap.RecomputeMode();
|
||||
tap.SyncLightState();
|
||||
|
||||
PlapPlapForAllMod.Logger.Msg(
|
||||
$"PlapPlapTap created for orifice '{dpsOrifice.type}' using light '{dpsOrifice.basis.name}'. " +
|
||||
$"Dynamic: {tap._dynamic}, Initial Mode: {tap._mode}");
|
||||
|
||||
tap._hasInitialized = true;
|
||||
|
||||
return tap;
|
||||
}
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
if (!_hasInitialized) return;
|
||||
RecomputeMode();
|
||||
SyncLightState();
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
if (!_hasInitialized) return;
|
||||
SyncLightState();
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
if (_memoryTexture)
|
||||
{
|
||||
Destroy(_memoryTexture);
|
||||
_memoryTexture = null;
|
||||
}
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (!_dynamic || !_constraint) return;
|
||||
|
||||
int top = -1;
|
||||
float best = -1f;
|
||||
|
||||
int count = _constraint.sourceCount;
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
ConstraintSource src = _constraint.GetSource(i);
|
||||
if (!src.sourceTransform) continue;
|
||||
|
||||
float w = src.weight;
|
||||
if (w > best)
|
||||
{
|
||||
best = w;
|
||||
top = i;
|
||||
}
|
||||
}
|
||||
|
||||
if (top != _activeSourceIndex)
|
||||
{
|
||||
_activeSourceIndex = top;
|
||||
RecomputeMode();
|
||||
}
|
||||
}
|
||||
|
||||
private void SyncLightState()
|
||||
{
|
||||
Light light = _dpsOrifice.dpsLight;
|
||||
if (!light) return;
|
||||
|
||||
bool on = light.isActiveAndEnabled;
|
||||
if (_lastLightState == on) return;
|
||||
_lastLightState = on;
|
||||
|
||||
_plapPlapObject.SetActive(on);
|
||||
}
|
||||
|
||||
private void RecomputeMode()
|
||||
{
|
||||
Transform basis = _dpsOrifice.dpsLight.transform;
|
||||
|
||||
if (_dynamic && _constraint && _activeSourceIndex >= 0)
|
||||
{
|
||||
ConstraintSource src = _constraint.GetSource(_activeSourceIndex);
|
||||
if (src.sourceTransform)
|
||||
basis = src.sourceTransform;
|
||||
}
|
||||
|
||||
string basisName = basis.name;
|
||||
int bestScore = int.MinValue;
|
||||
PlapPlapAudioMode bestMode = PlapPlapAudioMode.Generic;
|
||||
|
||||
for (int r = 0; r < Rules.Length; r++)
|
||||
{
|
||||
ref readonly Rule rule = ref Rules[r];
|
||||
int score = 0;
|
||||
|
||||
if (rule.HintBone.HasValue && _animator)
|
||||
{
|
||||
Transform bone = _animator.GetBoneTransform(rule.HintBone.Value);
|
||||
if (bone && basis.IsChildOf(bone))
|
||||
score += rule.BoneWeight;
|
||||
}
|
||||
|
||||
string lowerName = basisName.ToLowerInvariant();
|
||||
|
||||
for (int k = 0; k < rule.Keywords.Length; k++)
|
||||
{
|
||||
string kw = rule.Keywords[k];
|
||||
string lowerKw = kw.ToLowerInvariant();
|
||||
|
||||
if (lowerName == lowerKw)
|
||||
{
|
||||
score += 8;
|
||||
continue;
|
||||
}
|
||||
|
||||
bool tokenMatch = false;
|
||||
int start = 0;
|
||||
for (int i = 0; i <= lowerName.Length; i++)
|
||||
{
|
||||
if (i == lowerName.Length || !char.IsLetter(lowerName[i]))
|
||||
{
|
||||
int len = i - start;
|
||||
if (len == lowerKw.Length)
|
||||
{
|
||||
bool equal = true;
|
||||
for (int c = 0; c < len; c++)
|
||||
{
|
||||
if (lowerName[start + c] != lowerKw[c])
|
||||
{
|
||||
equal = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (equal)
|
||||
{
|
||||
tokenMatch = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
start = i + 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (tokenMatch)
|
||||
{
|
||||
score += lowerKw.Length == 1 ? 6 : 5;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (lowerKw.Length >= 4 && lowerName.Contains(lowerKw))
|
||||
score += 3;
|
||||
}
|
||||
|
||||
if (score > bestScore)
|
||||
{
|
||||
bestScore = score;
|
||||
bestMode = rule.Mode;
|
||||
}
|
||||
}
|
||||
|
||||
if (bestMode == _mode) return;
|
||||
_mode = bestMode;
|
||||
|
||||
SetAudioMode(_mode);
|
||||
|
||||
PlapPlapForAllMod.Logger.Msg($"PlapPlapTap applying mode {_mode}");
|
||||
}
|
||||
|
||||
private readonly struct Rule(PlapPlapAudioMode mode, HumanBodyBones? bone, int boneWeight, params string[] keywords)
|
||||
{
|
||||
public readonly PlapPlapAudioMode Mode = mode;
|
||||
public readonly HumanBodyBones? HintBone = bone;
|
||||
public readonly int BoneWeight = boneWeight;
|
||||
public readonly string[] Keywords = keywords;
|
||||
}
|
||||
|
||||
/* Interacting with Plap Plap */
|
||||
|
||||
public void SetAudioMode(PlapPlapAudioMode mode)
|
||||
{
|
||||
CVRAnimatorDriver animatorDriver = _plapPlapObject.GetComponent<CVRAnimatorDriver>();
|
||||
animatorDriver.animatorParameter01 = (float)mode;
|
||||
}
|
||||
|
||||
public void SetOrificeMode(DPSLightType mode)
|
||||
{
|
||||
CVRAnimatorDriver animatorDriver = _plapPlapObject.GetComponent<CVRAnimatorDriver>();
|
||||
animatorDriver.animatorParameter02 = (float)mode;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
using ABI_RC.Core.InteractionSystem;
|
||||
using ABI_RC.Core.InteractionSystem.Base;
|
||||
using UnityEngine;
|
||||
|
||||
namespace NAK.PlapPlapForAll;
|
||||
|
||||
public class StopHighlightPropagation : Pickupable
|
||||
{
|
||||
public override void OnGrab(InteractionContext context, Vector3 grabPoint)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void OnDrop(InteractionContext context)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void OnUseDown(InteractionContext context)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void OnUseUp(InteractionContext context)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void FlingTowardsTarget(ControllerRay controllerRay)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool CanPickup { get; }
|
||||
public override bool DisallowTheft { get; }
|
||||
public override float MaxGrabDistance { get; }
|
||||
public override float MaxPushDistance { get; }
|
||||
public override bool IsAutoHold { get; }
|
||||
public override bool IsObjectRotationAllowed { get; }
|
||||
public override bool IsObjectPushPullAllowed { get; }
|
||||
public override bool IsTelepathicGrabAllowed { get; }
|
||||
public override bool IsObjectUseAllowed { get; }
|
||||
}
|
||||
124
.Experimental/PlapPlapForAll/Main.cs
Normal file
124
.Experimental/PlapPlapForAll/Main.cs
Normal file
|
|
@ -0,0 +1,124 @@
|
|||
using ABI_RC.Core;
|
||||
using ABI_RC.Core.Networking.IO.Social;
|
||||
using MelonLoader;
|
||||
using ABI_RC.Core.Player;
|
||||
using ABI_RC.Systems.GameEventSystem;
|
||||
using ABI.CCK.Components;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Animations;
|
||||
|
||||
namespace NAK.PlapPlapForAll;
|
||||
|
||||
public class PlapPlapForAllMod : MelonMod
|
||||
{
|
||||
public static MelonLogger.Instance Logger;
|
||||
|
||||
public override void OnInitializeMelon()
|
||||
{
|
||||
Logger = LoggerInstance;
|
||||
CVRGameEventSystem.Initialization.OnPlayerSetupStart.AddListener(OnPlayerSetupStart);
|
||||
CVRGameEventSystem.Avatar.OnLocalAvatarLoad.AddListener(OnLocalAvatarLoaded);
|
||||
CVRGameEventSystem.Avatar.OnRemoteAvatarLoad.AddListener(OnRemoteAvatarLoaded);
|
||||
LoadAssetBundle();
|
||||
}
|
||||
|
||||
private static void OnPlayerSetupStart()
|
||||
{
|
||||
PlapPlapPrefab.SetActive(false);
|
||||
|
||||
// Remove ParentConstraint so we can reparent later
|
||||
ParentConstraint parentConstraint = PlapPlapPrefab.GetComponent<ParentConstraint>();
|
||||
if (parentConstraint) UnityEngine.Object.DestroyImmediate(parentConstraint);
|
||||
|
||||
// Remove lights to avoid interfering with avatar lights
|
||||
Light[] lights = PlapPlapPrefab.GetComponentsInChildren<Light>(true);
|
||||
foreach (Light light in lights) UnityEngine.Object.DestroyImmediate(light);
|
||||
|
||||
// Register the audio sources underneath to the Avatar mixer group
|
||||
AudioSource[] audioSources = PlapPlapPrefab.GetComponentsInChildren<AudioSource>(true);
|
||||
foreach (AudioSource audioSource in audioSources) audioSource.outputAudioMixerGroup = RootLogic.Instance.avatarSfx;
|
||||
|
||||
// Add StopHighlightPropagation to prevent plap plap from being highlighted
|
||||
StopHighlightPropagation stopHighlight = PlapPlapPrefab.AddComponent<StopHighlightPropagation>();
|
||||
stopHighlight.enabled = false; // marker only
|
||||
|
||||
Logger.Msg("Patched PlapPlap prefab!");
|
||||
}
|
||||
|
||||
private static void OnLocalAvatarLoaded(CVRAvatar avatar)
|
||||
=> OnAvatarLoaded(PlayerSetup.Instance, avatar.gameObject);
|
||||
private static void OnRemoteAvatarLoaded(CVRPlayerEntity playerEntity, CVRAvatar avatar)
|
||||
=> OnAvatarLoaded(playerEntity.PuppetMaster, avatar.gameObject);
|
||||
|
||||
private static void OnAvatarLoaded(PlayerBase player, GameObject avatarObject)
|
||||
{
|
||||
// Enforcing friends with benefits
|
||||
if (!Friends.FriendsWith(player.PlayerId))
|
||||
return;
|
||||
|
||||
// Scan for DPS setups
|
||||
if (!DPS.ScanForDPS(avatarObject, out List<DPSOrifice> dpsOrifices, out bool foundPenetrator))
|
||||
return;
|
||||
|
||||
// If no penetrator found, attempt to find one via TPS
|
||||
if (!foundPenetrator) DPS.AttemptTPSHack(avatarObject);
|
||||
|
||||
// Setup PlapPlap for each found orifice
|
||||
if (dpsOrifices.Count != 0)
|
||||
{
|
||||
// Log found orifices
|
||||
Logger.Msg($"Found {dpsOrifices.Count} DPS orifices on avatar '{avatarObject.name}' for player '{player.PlayerUsername}':");
|
||||
foreach (DPSOrifice dpsOrifice in dpsOrifices) Logger.Msg($"- Orifice Type: {dpsOrifice.type}, DPS Light: {dpsOrifice.dpsLight.name}, Normal Light: {(dpsOrifice.normalLight != null ? dpsOrifice.normalLight.name : "None")}");
|
||||
|
||||
// Configure PlapPlap for each orifice
|
||||
Animator avatarAnimator = player.Animator;
|
||||
foreach (DPSOrifice dpsOrifice in dpsOrifices)
|
||||
{
|
||||
// Skip if this is already a plap plap setup
|
||||
if (PlapPlapTap.IsBuiltInPlapPlapSetup(dpsOrifice))
|
||||
continue;
|
||||
|
||||
PlapPlapTap.CreateFromOrifice(
|
||||
dpsOrifice,
|
||||
avatarAnimator,
|
||||
PlapPlapPrefab
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Asset Bundle Loading */
|
||||
|
||||
private const string PlapPlapAssetsName = "PlapPlapForAll.Resources.plap plap.assets";
|
||||
private const string PlapPlapPrefabName = "Assets/Noachi/Plap Plap/plap plap.prefab";
|
||||
|
||||
private static GameObject PlapPlapPrefab;
|
||||
|
||||
private void LoadAssetBundle()
|
||||
{
|
||||
LoggerInstance.Msg($"Loading required asset bundle...");
|
||||
using Stream resourceStream = MelonAssembly.Assembly.GetManifestResourceStream(PlapPlapAssetsName);
|
||||
using MemoryStream memoryStream = new();
|
||||
if (resourceStream == null) {
|
||||
LoggerInstance.Error($"Failed to load {PlapPlapAssetsName}!");
|
||||
return;
|
||||
}
|
||||
|
||||
resourceStream.CopyTo(memoryStream);
|
||||
AssetBundle assetBundle = AssetBundle.LoadFromStream(memoryStream);
|
||||
if (assetBundle == null) {
|
||||
LoggerInstance.Error($"Failed to load {PlapPlapAssetsName}! Asset bundle is null!");
|
||||
return;
|
||||
}
|
||||
|
||||
PlapPlapPrefab = assetBundle.LoadAsset<GameObject>(PlapPlapPrefabName);
|
||||
if (PlapPlapPrefab == null) {
|
||||
LoggerInstance.Error($"Failed to load {PlapPlapPrefabName}! Prefab is null!");
|
||||
return;
|
||||
}
|
||||
PlapPlapPrefab.hideFlags |= HideFlags.DontUnloadUnusedAsset;
|
||||
LoggerInstance.Msg($"Loaded {PlapPlapPrefabName}!");
|
||||
|
||||
LoggerInstance.Msg("Asset bundle successfully loaded!");
|
||||
}
|
||||
}
|
||||
7
.Experimental/PlapPlapForAll/PlapPlapForAll.csproj
Normal file
7
.Experimental/PlapPlapForAll/PlapPlapForAll.csproj
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<ItemGroup>
|
||||
<None Remove="Resources\plap plap.assets" />
|
||||
<EmbeddedResource Include="Resources\plap plap.assets" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
32
.Experimental/PlapPlapForAll/Properties/AssemblyInfo.cs
Normal file
32
.Experimental/PlapPlapForAll/Properties/AssemblyInfo.cs
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
using NAK.PlapPlapForAll.Properties;
|
||||
using MelonLoader;
|
||||
using System.Reflection;
|
||||
|
||||
[assembly: AssemblyVersion(AssemblyInfoParams.Version)]
|
||||
[assembly: AssemblyFileVersion(AssemblyInfoParams.Version)]
|
||||
[assembly: AssemblyInformationalVersion(AssemblyInfoParams.Version)]
|
||||
[assembly: AssemblyTitle(nameof(NAK.PlapPlapForAll))]
|
||||
[assembly: AssemblyCompany(AssemblyInfoParams.Author)]
|
||||
[assembly: AssemblyProduct(nameof(NAK.PlapPlapForAll))]
|
||||
|
||||
[assembly: MelonInfo(
|
||||
typeof(NAK.PlapPlapForAll.PlapPlapForAllMod),
|
||||
nameof(NAK.PlapPlapForAll),
|
||||
AssemblyInfoParams.Version,
|
||||
AssemblyInfoParams.Author,
|
||||
downloadLink: "https://github.com/NotAKidoS/NAK_CVR_Mods/tree/main/PlapPlapForAll"
|
||||
)]
|
||||
|
||||
[assembly: MelonGame("ChilloutVR", "ChilloutVR")]
|
||||
[assembly: MelonPlatform(MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)]
|
||||
[assembly: MelonPlatformDomain(MelonPlatformDomainAttribute.CompatibleDomains.MONO)]
|
||||
[assembly: MelonColor(255, 246, 25, 99)] // red-pink
|
||||
[assembly: MelonAuthorColor(255, 158, 21, 32)] // red
|
||||
[assembly: HarmonyDontPatchAll]
|
||||
|
||||
namespace NAK.PlapPlapForAll.Properties;
|
||||
internal static class AssemblyInfoParams
|
||||
{
|
||||
public const string Version = "1.0.0";
|
||||
public const string Author = "NotAKidoS, Noachi";
|
||||
}
|
||||
16
.Experimental/PlapPlapForAll/README.md
Normal file
16
.Experimental/PlapPlapForAll/README.md
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# PlapPlapForAll
|
||||
|
||||
Adds Noach's PlapPlap prefab to any detected DPS setups on avatars.
|
||||
|
||||
Will also fix existing penetrator setups which are missing the tip light.
|
||||
|
||||
---
|
||||
|
||||
Here is the block of text where I tell you this mod is not affiliated or endorsed by ~~~~ABI.
|
||||
https://documentation.abinteractive.net/official/legal/tos/#7-modding-our-games
|
||||
|
||||
> This mod is an independent creation and is not affiliated with, supported by or approved by Alpha Blend Interactive.
|
||||
|
||||
> Use of this mod is done so at the user's own risk and the creator cannot be held responsible for any issues arising from its use.
|
||||
|
||||
> To the best of my knowledge, I have adhered to the Modding Guidelines established by Alpha Blend Interactive.
|
||||
BIN
.Experimental/PlapPlapForAll/Resources/plap plap.assets
Normal file
BIN
.Experimental/PlapPlapForAll/Resources/plap plap.assets
Normal file
Binary file not shown.
173
NAK_CVR_Mods.sln
173
NAK_CVR_Mods.sln
|
|
@ -18,11 +18,9 @@ EndProject
|
|||
EndProject
|
||||
EndProject
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RelativeSync", "RelativeSync\RelativeSync.csproj", "{B48C8F19-9451-4EE2-999F-82C0033CDE2C}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RelativeSyncJitterFix", "RelativeSyncJitterFix\RelativeSyncJitterFix.csproj", "{B48C8F19-9451-4EE2-999F-82C0033CDE2C}"
|
||||
EndProject
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LazyPrune", "LazyPrune\LazyPrune.csproj", "{8FA6D481-5801-4E4C-822E-DE561155D22B}"
|
||||
EndProject
|
||||
EndProject
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScrollFlight", "ScrollFlight\ScrollFlight.csproj", "{1B5D7DCB-01A4-4988-8B25-211948AEED76}"
|
||||
|
|
@ -32,8 +30,6 @@ EndProject
|
|||
EndProject
|
||||
EndProject
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KeepVelocityOnExitFlight", "KeepVelocityOnExitFlight\KeepVelocityOnExitFlight.csproj", "{0BB3D187-BBBA-4C58-B246-102342BE5E8C}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ASTExtension", "ASTExtension\ASTExtension.csproj", "{6580AA87-6A95-438E-A5D3-70E583CCD77B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvatarQueueSystemTweaks", "AvatarQueueSystemTweaks\AvatarQueueSystemTweaks.csproj", "{D178E422-283B-4FB3-89A6-AA4FB9F87E2F}"
|
||||
|
|
@ -64,10 +60,58 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LuaNetworkVariables", ".Exp
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TouchySquishy", ".Blackbox\TouchySquishy\TouchySquishy.csproj", "{FF4BF0E7-698D-49A0-96E9-0E2646FEAFFA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CVRLuaToolsExtension", ".Experimental\CVRLuaToolsExtension\CVRLuaToolsExtension.csproj", "{3D221A25-007F-4764-98CD-CEEF2EB92165}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConfigureCalibrationPose", "ConfigureCalibrationPose\ConfigureCalibrationPose.csproj", "{31667A36-D069-4708-9DCA-E3446009941B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SuperAwesomeMod", ".Deprecated\SuperAwesomeMod\SuperAwesomeMod.csproj", "{11417BE7-7C4F-40D9-9FCB-467C7B3DCF66}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OriginShift", ".Experimental\OriginShift\OriginShift.csproj", "{A891F616-D163-4B1D-99E4-17C49810D3E4}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChatBubbles", "ChatBubbles\ChatBubbles.csproj", "{6981A299-1743-4342-9F20-B8FC0263C54D}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InDepthLogging", ".Blackbox\InDepthLogging\InDepthLogging.csproj", "{544C21EF-51EF-4947-BBED-26A6794A71D7}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FuckCameras", "FuckCameras\FuckCameras.csproj", "{D2B53F5A-9D6A-4402-B7FD-83BB1503D395}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FuckCohtml2", "FuckCohtml2\FuckCohtml2.csproj", "{F1CCF5D2-EA11-4FE8-A5E2-A92655245893}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MisatyanEffector", "MisatyanEffector\MisatyanEffector.csproj", "{0EA59927-C46A-43DE-9E16-ED64EC1F4FB5}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DummyMenu", "DummyMenu\DummyMenu.csproj", "{DDCEE1C8-80EE-4DFF-84F2-6CE67D02AC22}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tinyboard", "Tinyboard\Tinyboard.csproj", "{3678F633-47DD-443B-8A6B-0CF33F45097F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FuckOffUICamera", "FuckOffUICamera\FuckOffUICamera.csproj", "{FAF20A58-1CA6-4543-A8FB-70085F31EFDF}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IFUCKINGHATECAMERAS", "IFUCKINGHATECAMERAS\IFUCKINGHATECAMERAS.csproj", "{2878A29C-E40F-4A1D-A0A3-678742D3814F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ApiSwitcher", ".Blackbox\ApiSwitcher\ApiSwitcher.csproj", "{BBDFF009-CD61-4345-AE16-01B18B5F8073}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Blackbox", "Blackbox", "{FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BufferParticleFixer", "BufferParticleFixer\BufferParticleFixer.csproj", "{46E47494-A96A-4138-BA3E-3A9A012C518A}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShowPlayerInSelfMirror", "ShowPlayerInSelfMirror\ShowPlayerInSelfMirror.csproj", "{33435863-4366-438B-9524-354D61E06806}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChatBoxTweaks", "ChatBoxTweaks\ChatBoxTweaks.csproj", "{661119FB-B83B-4C48-8810-48293C6D7661}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ControlToUnlockEyes", "ControlToUnlockEyes\ControlToUnlockEyes.csproj", "{42C051F5-8DF6-4335-83F9-43A732595C05}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AccountSwitcher", ".Blackbox\AccountSwitcher\AccountSwitcher.csproj", "{CB20A400-51AC-456E-B261-3F6804EA6314}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RConHelper", ".Blackbox\RConHelper\RConHelper.csproj", "{E3950FB3-C4BD-4320-89F9-331C93781FBB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ByeByePerformanceThankYouAMD", "ByeByePerformanceThankYouAMD\ByeByePerformanceThankYouAMD.csproj", "{B9B67099-777A-4686-AE01-455B101B3B36}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CVRGizmos", ".Deprecated\CVRGizmos\CVRGizmos.csproj", "{77FF7FA8-EBC2-4400-B7FF-3A5F7DBFAEAE}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CVRPersonalMirror", ".Blackbox\CVRPersonalMirror\CVRPersonalMirror.csproj", "{A19BF0EC-70C3-49D0-B278-02807669F240}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PlayableNetIk", ".Blackbox\PlayableNetIk\PlayableNetIk.csproj", "{7CE6B276-A25C-4B7B-B99D-AD52C6B48E5B}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Experimental", "Experimental", "{B8FAD767-CB47-4112-8AFC-8620A51B946A}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PlapPlapForAll", ".Experimental\PlapPlapForAll\PlapPlapForAll.csproj", "{1DE6CF9F-996E-459B-9129-D76245001F5F}"
|
||||
EndProject
|
||||
EndProject
|
||||
EndProject
|
||||
EndProject
|
||||
|
|
@ -147,10 +191,6 @@ Global
|
|||
{24A069F4-4D69-4ABD-AA16-77765469245B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{24A069F4-4D69-4ABD-AA16-77765469245B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{24A069F4-4D69-4ABD-AA16-77765469245B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{8FA6D481-5801-4E4C-822E-DE561155D22B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8FA6D481-5801-4E4C-822E-DE561155D22B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8FA6D481-5801-4E4C-822E-DE561155D22B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8FA6D481-5801-4E4C-822E-DE561155D22B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{05C427DD-1261-4AAD-B316-A551FC126F2C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{05C427DD-1261-4AAD-B316-A551FC126F2C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{05C427DD-1261-4AAD-B316-A551FC126F2C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
|
@ -191,10 +231,6 @@ Global
|
|||
{7C675E64-0A2D-4B34-B6D1-5D6AA369A520}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7C675E64-0A2D-4B34-B6D1-5D6AA369A520}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7C675E64-0A2D-4B34-B6D1-5D6AA369A520}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0BB3D187-BBBA-4C58-B246-102342BE5E8C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0BB3D187-BBBA-4C58-B246-102342BE5E8C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0BB3D187-BBBA-4C58-B246-102342BE5E8C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0BB3D187-BBBA-4C58-B246-102342BE5E8C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{6580AA87-6A95-438E-A5D3-70E583CCD77B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{6580AA87-6A95-438E-A5D3-70E583CCD77B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{6580AA87-6A95-438E-A5D3-70E583CCD77B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
|
@ -323,14 +359,102 @@ Global
|
|||
{FF4BF0E7-698D-49A0-96E9-0E2646FEAFFA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FF4BF0E7-698D-49A0-96E9-0E2646FEAFFA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FF4BF0E7-698D-49A0-96E9-0E2646FEAFFA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3D221A25-007F-4764-98CD-CEEF2EB92165}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3D221A25-007F-4764-98CD-CEEF2EB92165}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3D221A25-007F-4764-98CD-CEEF2EB92165}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3D221A25-007F-4764-98CD-CEEF2EB92165}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{31667A36-D069-4708-9DCA-E3446009941B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{31667A36-D069-4708-9DCA-E3446009941B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{31667A36-D069-4708-9DCA-E3446009941B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{31667A36-D069-4708-9DCA-E3446009941B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{11417BE7-7C4F-40D9-9FCB-467C7B3DCF66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{11417BE7-7C4F-40D9-9FCB-467C7B3DCF66}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{11417BE7-7C4F-40D9-9FCB-467C7B3DCF66}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{11417BE7-7C4F-40D9-9FCB-467C7B3DCF66}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A891F616-D163-4B1D-99E4-17C49810D3E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A891F616-D163-4B1D-99E4-17C49810D3E4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A891F616-D163-4B1D-99E4-17C49810D3E4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A891F616-D163-4B1D-99E4-17C49810D3E4}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{6981A299-1743-4342-9F20-B8FC0263C54D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{6981A299-1743-4342-9F20-B8FC0263C54D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{6981A299-1743-4342-9F20-B8FC0263C54D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6981A299-1743-4342-9F20-B8FC0263C54D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{544C21EF-51EF-4947-BBED-26A6794A71D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{544C21EF-51EF-4947-BBED-26A6794A71D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{544C21EF-51EF-4947-BBED-26A6794A71D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{544C21EF-51EF-4947-BBED-26A6794A71D7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D2B53F5A-9D6A-4402-B7FD-83BB1503D395}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D2B53F5A-9D6A-4402-B7FD-83BB1503D395}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D2B53F5A-9D6A-4402-B7FD-83BB1503D395}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D2B53F5A-9D6A-4402-B7FD-83BB1503D395}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F1CCF5D2-EA11-4FE8-A5E2-A92655245893}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F1CCF5D2-EA11-4FE8-A5E2-A92655245893}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F1CCF5D2-EA11-4FE8-A5E2-A92655245893}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F1CCF5D2-EA11-4FE8-A5E2-A92655245893}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0EA59927-C46A-43DE-9E16-ED64EC1F4FB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0EA59927-C46A-43DE-9E16-ED64EC1F4FB5}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0EA59927-C46A-43DE-9E16-ED64EC1F4FB5}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0EA59927-C46A-43DE-9E16-ED64EC1F4FB5}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{DDCEE1C8-80EE-4DFF-84F2-6CE67D02AC22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DDCEE1C8-80EE-4DFF-84F2-6CE67D02AC22}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DDCEE1C8-80EE-4DFF-84F2-6CE67D02AC22}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DDCEE1C8-80EE-4DFF-84F2-6CE67D02AC22}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3678F633-47DD-443B-8A6B-0CF33F45097F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3678F633-47DD-443B-8A6B-0CF33F45097F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3678F633-47DD-443B-8A6B-0CF33F45097F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3678F633-47DD-443B-8A6B-0CF33F45097F}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FAF20A58-1CA6-4543-A8FB-70085F31EFDF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FAF20A58-1CA6-4543-A8FB-70085F31EFDF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FAF20A58-1CA6-4543-A8FB-70085F31EFDF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FAF20A58-1CA6-4543-A8FB-70085F31EFDF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{2878A29C-E40F-4A1D-A0A3-678742D3814F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{2878A29C-E40F-4A1D-A0A3-678742D3814F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{2878A29C-E40F-4A1D-A0A3-678742D3814F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{2878A29C-E40F-4A1D-A0A3-678742D3814F}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{BBDFF009-CD61-4345-AE16-01B18B5F8073}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{BBDFF009-CD61-4345-AE16-01B18B5F8073}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{BBDFF009-CD61-4345-AE16-01B18B5F8073}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{BBDFF009-CD61-4345-AE16-01B18B5F8073}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{46E47494-A96A-4138-BA3E-3A9A012C518A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{46E47494-A96A-4138-BA3E-3A9A012C518A}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{46E47494-A96A-4138-BA3E-3A9A012C518A}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{46E47494-A96A-4138-BA3E-3A9A012C518A}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{33435863-4366-438B-9524-354D61E06806}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{33435863-4366-438B-9524-354D61E06806}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{33435863-4366-438B-9524-354D61E06806}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{33435863-4366-438B-9524-354D61E06806}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{661119FB-B83B-4C48-8810-48293C6D7661}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{661119FB-B83B-4C48-8810-48293C6D7661}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{661119FB-B83B-4C48-8810-48293C6D7661}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{661119FB-B83B-4C48-8810-48293C6D7661}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{42C051F5-8DF6-4335-83F9-43A732595C05}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{42C051F5-8DF6-4335-83F9-43A732595C05}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{42C051F5-8DF6-4335-83F9-43A732595C05}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{42C051F5-8DF6-4335-83F9-43A732595C05}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{CB20A400-51AC-456E-B261-3F6804EA6314}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CB20A400-51AC-456E-B261-3F6804EA6314}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CB20A400-51AC-456E-B261-3F6804EA6314}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{CB20A400-51AC-456E-B261-3F6804EA6314}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E3950FB3-C4BD-4320-89F9-331C93781FBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E3950FB3-C4BD-4320-89F9-331C93781FBB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E3950FB3-C4BD-4320-89F9-331C93781FBB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E3950FB3-C4BD-4320-89F9-331C93781FBB}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B9B67099-777A-4686-AE01-455B101B3B36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B9B67099-777A-4686-AE01-455B101B3B36}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B9B67099-777A-4686-AE01-455B101B3B36}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B9B67099-777A-4686-AE01-455B101B3B36}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{77FF7FA8-EBC2-4400-B7FF-3A5F7DBFAEAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{77FF7FA8-EBC2-4400-B7FF-3A5F7DBFAEAE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{77FF7FA8-EBC2-4400-B7FF-3A5F7DBFAEAE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{77FF7FA8-EBC2-4400-B7FF-3A5F7DBFAEAE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A19BF0EC-70C3-49D0-B278-02807669F240}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A19BF0EC-70C3-49D0-B278-02807669F240}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A19BF0EC-70C3-49D0-B278-02807669F240}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A19BF0EC-70C3-49D0-B278-02807669F240}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{7CE6B276-A25C-4B7B-B99D-AD52C6B48E5B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7CE6B276-A25C-4B7B-B99D-AD52C6B48E5B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7CE6B276-A25C-4B7B-B99D-AD52C6B48E5B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7CE6B276-A25C-4B7B-B99D-AD52C6B48E5B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{1DE6CF9F-996E-459B-9129-D76245001F5F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1DE6CF9F-996E-459B-9129-D76245001F5F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1DE6CF9F-996E-459B-9129-D76245001F5F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{1DE6CF9F-996E-459B-9129-D76245001F5F}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
@ -338,4 +462,15 @@ Global
|
|||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {CD7DECEC-F4A0-4EEF-978B-72748414D52A}
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{BBDFF009-CD61-4345-AE16-01B18B5F8073} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{FF4BF0E7-698D-49A0-96E9-0E2646FEAFFA} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{544C21EF-51EF-4947-BBED-26A6794A71D7} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{0EA59927-C46A-43DE-9E16-ED64EC1F4FB5} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{CB20A400-51AC-456E-B261-3F6804EA6314} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{E3950FB3-C4BD-4320-89F9-331C93781FBB} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{A19BF0EC-70C3-49D0-B278-02807669F240} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{7CE6B276-A25C-4B7B-B99D-AD52C6B48E5B} = {FF8CA700-BB6F-45FD-AEB6-CCAEACE50B0F}
|
||||
{1DE6CF9F-996E-459B-9129-D76245001F5F} = {B8FAD767-CB47-4112-8AFC-8620A51B946A}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
|||
29
README.md
29
README.md
|
|
@ -6,23 +6,23 @@
|
|||
|
||||
| Name | Description | Download |
|
||||
|------|-------------|----------|
|
||||
| [ASTExtension](ASTExtension/README.md) | Extension mod for [Avatar Scale Tool](https://github.com/NotAKidoS/AvatarScaleTool): | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/ASTExtension.dll) |
|
||||
| [ASTExtension](ASTExtension/README.md) | Extension mod for [Avatar Scale Tool](https://github.com/NotAKidoS/AvatarScaleTool): | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/ASTExtension.dll) |
|
||||
| [AvatarQueueSystemTweaks](AvatarQueueSystemTweaks/README.md) | Small tweaks to the Avatar Queue System. | No Download |
|
||||
| [ConfigureCalibrationPose](ConfigureCalibrationPose/README.md) | Select FBT calibration pose. | No Download |
|
||||
| [CustomSpawnPoint](CustomSpawnPoint/README.md) | Replaces the unused Images button in the World Details page with a button to set a custom spawn point. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/CustomSpawnPoint.dll) |
|
||||
| [DoubleTapJumpToExitSeat](DoubleTapJumpToExitSeat/README.md) | Replaces seat exit controls with a double-tap of the jump button, avoiding accidental exits from joystick drift or opening the menu. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/DoubleTapJumpToExitSeat.dll) |
|
||||
| [FuckToes](FuckToes/README.md) | Prevents VRIK from autodetecting toes in Halfbody or Fullbody. | No Download |
|
||||
| [CustomSpawnPoint](CustomSpawnPoint/README.md) | Replaces the unused Images button in the World Details page with a button to set a custom spawn point. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/CustomSpawnPoint.dll) |
|
||||
| [DoubleTapJumpToExitSeat](DoubleTapJumpToExitSeat/README.md) | Replaces seat exit controls with a double-tap of the jump button, avoiding accidental exits from joystick drift or opening the menu. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/DoubleTapJumpToExitSeat.dll) |
|
||||
| [FuckToes](FuckToes/README.md) | Prevents VRIK from autodetecting toes in Halfbody or Fullbody. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/FuckToes.dll) |
|
||||
| [KeepVelocityOnExitFlight](KeepVelocityOnExitFlight/README.md) | Keeps the player's velocity when exiting flight mode. Makes it possible to fling yourself like in Garry's Mod. | No Download |
|
||||
| [LazyPrune](LazyPrune/README.md) | Prevents loaded objects from immediately unloading on destruction. Should prevent needlessly unloading & reloading all avatars/props on world rejoin or GS reconnection. | No Download |
|
||||
| [PropLoadingHexagon](PropLoadingHexagon/README.md) | https://github.com/NotAKidoS/NAK_CVR_Mods/assets/37721153/a892c765-71c1-47f3-a781-bdb9b60ba117 | No Download |
|
||||
| [RCCVirtualSteeringWheel](RCCVirtualSteeringWheel/README.md) | Allows you to physically grab rigged RCC steering wheels in VR to provide steering input. No explicit setup required other than defining the Steering Wheel transform within the RCC component. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/RCCVirtualSteeringWheel.dll) |
|
||||
| [RelativeSyncJitterFix](RelativeSyncJitterFix/README.md) | Relative sync jitter fix is the single harmony patch that could not make it into the native release of RelativeSync. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/RelativeSyncJitterFix.dll) |
|
||||
| [ShareBubbles](ShareBubbles/README.md) | Share Bubbles! Allows you to drop down bubbles containing Avatars & Props. Requires both users to have the mod installed. Synced over Mod Network. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/ShareBubbles.dll) |
|
||||
| [SmootherRay](SmootherRay/README.md) | Smoothes your controller while the raycast lines are visible. | No Download |
|
||||
| [PropLoadingHexagon](PropLoadingHexagon/README.md) | https://github.com/NotAKidoS/NAK_CVR_Mods/assets/37721153/a892c765-71c1-47f3-a781-bdb9b60ba117 | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/PropLoadingHexagon.dll) |
|
||||
| [RCCVirtualSteeringWheel](RCCVirtualSteeringWheel/README.md) | Allows you to physically grab rigged RCC steering wheels in VR to provide steering input. No explicit setup required other than defining the Steering Wheel transform within the RCC component. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/RCCVirtualSteeringWheel.dll) |
|
||||
| [RelativeSyncJitterFix](RelativeSyncJitterFix/README.md) | Relative sync jitter fix is the single harmony patch that could not make it into the native release of RelativeSync. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/RelativeSyncJitterFix.dll) |
|
||||
| [ShareBubbles](ShareBubbles/README.md) | Share Bubbles! Allows you to drop down bubbles containing Avatars & Props. Requires both users to have the mod installed. Synced over Mod Network. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/ShareBubbles.dll) |
|
||||
| [SmootherRay](SmootherRay/README.md) | Smoothes your controller while the raycast lines are visible. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/SmootherRay.dll) |
|
||||
| [Stickers](Stickers/README.md) | Stickers! Allows you to place small images on any surface. Requires both users to have the mod installed. Synced over Mod Network. | No Download |
|
||||
| [ThirdPerson](ThirdPerson/README.md) | Original repo: https://github.com/oestradiol/CVR-Mods | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/ThirdPerson.dll) |
|
||||
| [Tinyboard](Tinyboard/README.md) | Makes the keyboard small and smart. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/Tinyboard.dll) |
|
||||
| [YouAreMyPropNowWeAreHavingSoftTacosLater](YouAreMyPropNowWeAreHavingSoftTacosLater/README.md) | Lets you bring held, attached, and occupied props through world loads. This is configurable in the mod settings. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r47/YouAreMyPropNowWeAreHavingSoftTacosLater.dll) |
|
||||
| [ThirdPerson](ThirdPerson/README.md) | Original repo: https://github.com/oestradiol/CVR-Mods | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/ThirdPerson.dll) |
|
||||
| [Tinyboard](Tinyboard/README.md) | Makes the keyboard small and smart. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/Tinyboard.dll) |
|
||||
| [YouAreMyPropNowWeAreHavingSoftTacosLater](YouAreMyPropNowWeAreHavingSoftTacosLater/README.md) | Lets you bring held, attached, and occupied props through world loads. This is configurable in the mod settings. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/YouAreMyPropNowWeAreHavingSoftTacosLater.dll) |
|
||||
|
||||
### Experimental Mods
|
||||
|
||||
|
|
@ -30,9 +30,10 @@
|
|||
|------|-------------|----------|
|
||||
| [CVRLuaToolsExtension](.Experimental/CVRLuaToolsExtension/README.md) | Extension mod for [CVRLuaTools](https://github.com/NotAKidoS/CVRLuaTools) Hot Reload functionality. | No Download |
|
||||
| [CustomRichPresence](.Experimental/CustomRichPresence/README.md) | Lets you customize the Steam & Discord rich presence messages & values. | No Download |
|
||||
| [LuaNetworkVariables](.Experimental/LuaNetworkVariables/README.md) | Adds a simple module for creating network variables & events *kinda* similar to Garry's Mod. | No Download |
|
||||
| [LuaNetworkVariables](.Experimental/LuaNetworkVariables/README.md) | Adds a simple module for creating network variables & events *kinda* similar to Garry's Mod. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/LuaNetworkVariables.dll) |
|
||||
| [LuaTTS](.Experimental/LuaTTS/README.md) | Provides access to the built-in text-to-speech (TTS) functionality to lua scripts. Allows you to make the local player speak. | No Download |
|
||||
| [OriginShift](.Experimental/OriginShift/README.md) | Experimental mod that allows world origin to be shifted to prevent floating point precision issues. | No Download |
|
||||
| [OriginShift](.Experimental/OriginShift/README.md) | Experimental mod that allows world origin to be shifted to prevent floating point precision issues. | [Download](https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/OriginShift.dll) |
|
||||
| [PlapPlapForAll](.Experimental/PlapPlapForAll/README.md) | Adds Noach's PlapPlap prefab to any detected DPS setups on avatars. | No Download |
|
||||
| [ScriptingSpoofer](.Experimental/ScriptingSpoofer/README.md) | Prevents **local** scripts from accessing your Username or UserID by spoofing them with random values each session. | No Download |
|
||||
|
||||
<!-- END MOD LIST -->
|
||||
|
|
|
|||
|
|
@ -20,8 +20,8 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Assembly-CSharp.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Aura2_Core">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Aura2_Core.dll</HintPath>
|
||||
<Reference Include="AsyncImageLoader.Runtime">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\AsyncImageLoader.Runtime.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="AVProVideo.Extensions.Timeline">
|
||||
|
|
@ -92,6 +92,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Crc32.NET.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="CVRLogger">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\CVRLogger.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="DarkRift.Client">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\DarkRift.Client.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -100,6 +104,14 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\DarkRift.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="DiscordRPC">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\DiscordRPC.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="dotmore">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\dotmore.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="DTLS.Net">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\DTLS.Net.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -116,6 +128,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\ECM2.Walkthrough.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="EmbedIO">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\EmbedIO.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="endel.nativewebsocket">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\endel.nativewebsocket.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -128,6 +144,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\FMODUnityResonance.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Hacks">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Hacks.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="ICSharpCode.SharpZipLib">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\ICSharpCode.SharpZipLib.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -140,6 +160,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\LibVLCSharp.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="LucHeart.CoreOSC">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\LucHeart.CoreOSC.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="MagicaCloth">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\MagicaCloth.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -148,6 +172,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\MagicaClothV2.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="MeaMod.DNS">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\MeaMod.DNS.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="MeshBakerCore">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\MeshBakerCore.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -156,6 +184,26 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Meta.XR.BuildingBlocks.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Meta.XR.EnvironmentDepth">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Meta.XR.EnvironmentDepth.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Meta.XR.ImmersiveDebugger">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Meta.XR.ImmersiveDebugger.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Meta.XR.ImmersiveDebugger.Interface">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Meta.XR.ImmersiveDebugger.Interface.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Meta.XR.MultiplayerBlocks.Shared">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Meta.XR.MultiplayerBlocks.Shared.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Win32.Registry">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Microsoft.Win32.Registry.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Security">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Mono.Security.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -200,6 +248,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Oculus.VR.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="OSCQuery">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\OSCQuery.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="PICO.Platform">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\PICO.Platform.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -224,10 +276,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\SALSA-LipSync.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="SALSA">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\SALSA.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="ShapesRuntime">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\ShapesRuntime.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -244,10 +292,18 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\SteamVR_Actions.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Swan.Lite">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Swan.Lite.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Buffers">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\System.Buffers.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Collections.Immutable">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\System.Collections.Immutable.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.ComponentModel.Composition">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\System.ComponentModel.Composition.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -288,6 +344,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\System.IO.Compression.FileSystem.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.IO.Hashing">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\System.IO.Hashing.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Memory">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\System.Memory.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -384,10 +444,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.AI.Navigation.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Analytics.DataPrivacy">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Analytics.DataPrivacy.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Burst">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Burst.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -420,6 +476,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Entities.Hybrid.HybridComponents.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Entities.UI">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Entities.UI.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.InputSystem">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.InputSystem.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -440,10 +500,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.InternalAPIEngineBridge.003.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.InternalAPIEngineBridge.012">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.InternalAPIEngineBridge.012.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Jobs">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Jobs.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -460,10 +516,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Mathematics.Extensions.Hybrid.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Platforms.Common">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Platforms.Common.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Polybrush">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Polybrush.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -496,18 +548,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Profiling.Core.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Properties">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Properties.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Properties.Reflection">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Properties.Reflection.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Properties.UI">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Properties.UI.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.RenderPipelines.Core.Runtime">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.RenderPipelines.Core.Runtime.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -532,62 +572,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Serialization.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Analytics">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Analytics.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Authentication">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Authentication.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Analytics">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Analytics.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Configuration">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Configuration.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Device">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Device.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Environments">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Environments.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Environments.Internal">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Environments.Internal.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Internal">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Internal.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Networking">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Networking.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Registration">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Registration.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Scheduler">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Scheduler.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Telemetry">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Telemetry.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Services.Core.Threading">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.Services.Core.Threading.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.TextMeshPro.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -628,6 +612,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.XR.Management.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.XR.MockHMD">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.XR.MockHMD.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Unity.XR.Oculus">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Unity.XR.Oculus.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -704,6 +692,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.ClusterRendererModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ContentLoadModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.ContentLoadModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.CoreModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.CoreModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -788,6 +780,10 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.ProfilerModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.PropertiesModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.PropertiesModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -860,10 +856,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.UIElementsModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UIElementsNativeModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.UIElementsNativeModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UIModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.UIModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -872,10 +864,6 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.UmbraModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UNETModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.UNETModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityAnalyticsCommonModule">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\UnityEngine.UnityAnalyticsCommonModule.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
|
@ -952,5 +940,25 @@
|
|||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Valve.Newtonsoft.Json.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="WasmScripting.UnsafeUtils">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\WasmScripting.UnsafeUtils.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Wasmtime.Dotnet">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\Wasmtime.Dotnet.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="ZLinq">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\ZLinq.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="ZLinq.Unity">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\ZLinq.Unity.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="ZLinq.Unity.UnityCollectoins">
|
||||
<HintPath>$(MsBuildThisFileDirectory)\.ManagedLibs\ZLinq.Unity.UnityCollectoins.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
|
|
|||
|
|
@ -10,10 +10,10 @@ $cvrDefaultPath = "C:\Program Files (x86)\Steam\steamapps\common\ChilloutVR"
|
|||
# $cvrDefaultPath = "E:\temp\CVR_Experimental"
|
||||
|
||||
# Array with the dlls to strip
|
||||
$dllsToStrip = @('Assembly-CSharp.dll','Assembly-CSharp-firstpass.dll','AVProVideo.Runtime.dll', 'Unity.TextMeshPro.dll', 'MagicaCloth.dll', 'MagicaClothV2.dll', 'ECM2.dll', 'TheClapper.dll', 'MTJobSystem.dll')
|
||||
$dllsToStrip = @('Assembly-CSharp.dll','Assembly-CSharp-firstpass.dll','AVProVideo.Runtime.dll', 'Unity.TextMeshPro.dll', 'MagicaCloth.dll', 'MagicaClothV2.dll', 'ECM2.dll', 'DarkRift.dll', 'DarkRift.Client.dll', 'MTJobSystem.dll')
|
||||
|
||||
# Array with the mods to grab
|
||||
$modNames = @("BTKUILib", "BTKSAImmersiveHud", "PortableMirrorMod", "VRBinding", "TheClapper")
|
||||
$modNames = @("BTKUILib")
|
||||
|
||||
# Array with dlls to ignore from ManagedLibs
|
||||
$cvrManagedLibNamesToIgnore = @("netstandard", "Mono.Cecil", "Unity.Burst.Cecil")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue