• Happy Holidays Guest!

    We want to announce that we will be working at reduced staffing for the holidays. Specifically Monday the 23rd until Jan 2nd.

    This will affect approval queue times and responses to support tickets. Please adjust your plans accordingly and enjoy yourselves this holiday season!

  • Hi Guest!

    Please be aware that we have released a critical security patch for VaM. We strongly recommend updating to version 1.22.0.7 using the VaM_Updater found in your installation folder.

    Details about the security patch can be found here.
Snippets
FocusDistance (New module)

By default, VaM does not save the camera focus distance, only the camera position and player height. It can be annoying to have to reposition and zoom the camera to enable right mouse button to properly orbit the intended focus point such as a person's face. This plugin solves that problem, and allows you to also adjust the focus distance via trigger.



SaveLoadedScene
  • New options
    • Auto confirm overwrite
    • Save screenshot
    • Log message if auto confirm on
  • Disabling the plugin is no longer possible (since it has no effect)
  • Fixed issue where the "Open save dialog if empty/var" toggle value did not save
General
  • Added OpenUI and ToggleEnabled Keybindings actions to all modules (where applicable)
This update is relevant to users who don't have the latest VaM (v1.22) and to creators who depend on these scripts and release content for users who may not have the latest VaM.

I investigated the compatibility of each script with different VaM versions and made some fixes:

- removed VaM 1.22 requirement from UISliderColors, UISliderSync and UITextSync
- alert user if a script requires a newer VaM version than what they currently have (as opposed to the obscure script compilation error logged by VaM)

In conclusion, the required VaM version is v1.20.77.13 or later, except for SaveLoadedScene which requires v1.21 or later.

I also investigated the VaM version compatibility of all of my other plugins, and any minimum version requirement is now shown on each plugin's Hub resource page. I posted a summary of all of my plugins on my profile. Some of the plugins which currently have a minimum requirement will be updated later with some kind of compatibility fix.
UITextSync (New module)

Similar to UIToggleSync and UISliderSync, this allows you to sync the text from a string parameter to a UIText atom's text panel. Some examples: another UIText's text parameter, a plugin's label parameter, presetName of any preset type, texture URL, and any string parameter registered by some plugin.

Supports auto fitting the text to the available area (decreases font size to a defined minimum font size in order to prevent overflow). This also works without selecting a parameter to sync, and is enabled by default.

VRControlGizmos (New module)

Makes the rotation and position control gizmos visible in VR (visual only, cannot manipulate).

gizmo.jpg


General changes
  • alert popup instead of error message if plugin placed on an incorrect atom type, and clicking ok automatically removes the plugin
  • removed some unnecessary plugin duplicate checks, now allowing multiple instances for HairColorChangerEE, UISliderSync, UISliderColors and UIToggleSync
    • it's still not recommended to have multiple instances enabled at the same time though
  • UISliderSync, UITextSync and UIToggleSync: automatically re-establish sync on a plugin parameter when the plugin of that parameter is reloaded
  • FrameRateControlEE: fixed issue where toggling "Use target frame rate" off did not work until VSync mode was changed
  • UISliderSync: toggling "Slider is interactable" off now updates the slider to immediately have the value of the synced float parameter
  • UIToggleSync: toggling "Toggle is interactable" off now updates the toggle to immediately have the value of the synced bool parameter
SaveLoadedScene (New module)

Requires Keybindings by Acidbubbles. Add to Session plugins.

1723666672987.png


1723666679495.png
BulkAllowPossessGrab (New module)
  • enable or disable Allow Possess/Grab for Position or Rotation for many joints at once
  • execute via UI or trigger
  • select which joints to include in the operation

HairColorChangerEE (New module)

Improvements to the original script from LarrysArms.HairColorChanger.2:
  • hair list is automatically synced when navigating to plugin UI, opening Copy From popup, loading a hair preset, and loading an appearance preset
  • hair list can be synced via trigger action (useful mainly after enabling a hairstyle via trigger)
  • Copy From popup value can be set via trigger
  • Apply To All can be called via trigger
  • Restore Hair Defaults can be called via trigger
  • improved preset loading
    • list shortcuts to appropriate var packages
    • fixed issue where reselecting the previously selected preset file did not apply its parameters to the active hairs
    • added Load From Hair Preset With Path action, equivalent to the load preset button in the plugin UI
All new trigger targets:

1723189771737.png


UISliderSync (New module)

Use UISlider as a value or progress indicator. Optionally prevent the user from interacting with the slider, only allowing a change in the synced parameter to change the slider value.

In this demo, the light intensity is being randomized, and this plugin updates the value to the UISlider:



1723189797499.png


UIToggleSync (New module)

Use UIToggle as an indicator of some boolean state. Optionally prevent the user from interacting with the toggle, only allowing a change in the synced parameter to change the toggle's state.
  • Fixed subscene compatibility issue in UISliderColors
  • Fixed issue in FrameRateControlEE (also present in the original) where "Pause VaM when not focused" did not allow the automatic default scene loading to proceed on startup or when restarting via Hard Reset (thanks @redeyes !)
    • The reason was that the plugin caused VaM to be paused before the first scene load had had a chance to begin
    • This only really matters if "On Startup Skip Top Menu and Load Default Scene" is checked in VaM User Preferences Misc tab
Ok, enough update spam for now! :censored:
Fixed: FrameRateControlEE was missing a bit from the original script that checked if VSync was toggled in VAM user preferences.
TL;DR
  • VR selection line settings for width, color and alpha
  • FrameRateControlEE based on FrameRateControl by @MacGruber
VR selection line settings

With the help of a mysterious stranger on Discord, I've expanded VR Pointer Settings to include width, color and alpha settings for the selection line from the VR hand to an object in the scene:

1720526384157.png


The line drawn by VAM is still there (you can see it barely in the screenshot). The script adds a new custom line to overlay it. The custom line is not enabled by default.


1720529178214.png


FrameRateControlEE (New module)

1720530058977.png


Changes compared to FrameRateControl from MacGruber.Essentials.16:
  • Freely select any target frame rate number between 20 and 240
  • The target frame rate popup with fixed options is replaced by the "Use target frame rate" toggle and the "Target frame rate" slider
  • Fixed issue where having the plugin disabled on startup still applied the selected settings; now it properly initializes as disabled
  • Fixed issue in VR mode where saving a session plugin preset containing the plugin would cause the plugin to load with default settings the next time in desktop mode, nullifying your customizations to the settings
    • The fix was to ensure the plugin initializes fully and registers its parameters even in VR
  • Plugin must be added to Session plugins (can't add to some random atom)
Back
Top Bottom