PFS Vision

From PFS Wiki
Revision as of 08:41, 15 December 2022 by Nico (talk | contribs)
PFS vision system huds 1024.png

[PFS] Vision

The [PFS] Vision system is a tool to increase your immersion while enforcing some view effect on your side, you will be able to:
- Blind using the sphere view technology to limit the view distance
- Change others avatars into a simple silhouette past a distance
- Replace the world textures by an unique one
- Block the camera inside the sphere view
- Hide the location
- Block the start IM within a distance (RLVa only)
- Display the keyholder position and rotation on a radar
- Add an mask overlay (RLVa) or a mask HUD (RLV) with differents forms
- Adjust the transparency of the mask
- Adjust the main color of the mask (RLVa only)
- Lock the environnement with EEP settings
- Force the mouselook view
- lock the camera position
- limit the camera mouvement within a range
- focus the camera to look at a certain part of your keyholder


Warning64.png

WARNING: Some people can be more sensitive to some visual effect which can trigger motion sickness or other type of seizures. use it wisely and respects people safewording!





1. Generalities

This object has been scripted in an unique way to make it flexible, versatile, accessible, modifiable and robust. In particular these themes has been defined as a new standard for today's and tomorrow PFS products and affiliate creators




1.1 RLV

As a viewer standard, RLV restrictions are filtered to the object UUID and if your object uses same restrictions for several functions, you may run into trouble and the result may look a way different than expected. Thay's why RLV, here, is managed to the script level. You can have several scripts triggering restrictions w/o any interactions between them. You can easily follows the object restrictions table from the RLV menu.
Both RLV and RLVa are supported here but for some special features like screen overlay an addition attachement is required for RLV users. Even if most of us uses RLVa viewers today we still need to make things compatible to previous standards.




1.2 Access

The menu access is build in an inovative way. As standard, everyone can access the menu, with different access levels. Access levels are:
- public
- locker
- keyholder
- selftouch
Depending on the lock state of the object, you may get different access levels (they are cumulable) which allows you to do things or not. The not allowed functions are strikethrough but the positive side is you can still read every parameter and setting, including the user.
The menu is still mono user but the keyholder has always the priority to access it.
You can access it using the command line over channel 7, just hit /7##vision to get access to the main menu of the object. Replace ## with the user 2 first letters of the user name.
The use of the API allows you to override the actual keyholder, this will help you to implement your own access list from wherever you want. You can implement "key grabbing" scripts as much you want they are asked one after the other. For more info look at the included public access script "plug.access.public".



1.3 Configurable

The object include a "config" notecard that allows you to modify it to your wishes. In our case here you can for example adds your own mask textures or your own world textures. There is no limitation except the script memory, consider you can have up to 20 masks textures and up to 20 world textures. For the world texture we prefer image file w/o alpha values.



1.4 API

Objects you cannot mod are no fun, that why you will find here an integrated API that will allows you to interact yourself with the object. Firstly created to manage the key grabbing for PFS, it is now documented and available to create for example: access plugins, interaction with other objects to enforce mask and world textures or your own HUD. More will come depending on the people and affiliate creators requests. To keep it easy and accessible to everyone the API works over JSON string shared on linked message channel 99.



1.5 Integrated help

To make is accessible and easy to use, the object menus have a "help" feature to stream in your chat window some general informations regarding the actual menu displayed to help you to understand what does every buttons.



1.6 Truekey

The only way to unlock the object is the use of the key held by the keyholder. In case you are stuck or the keyholder not showing back you can, if seted up previously, use the Truekey feature to get unlocked by everyone having the key password. You can access it, set it up and use it fromt he "Tools" menu.



2. Vision features

2.1 HUD

PFS vision main hud v1.1.png


PFS vision main hud lock green.png


[PFS] Vision is locked


PFS vision main hud mask green.png


A mask is covering the display


PFS vision main hud sphere green.png


A sphere is limitating the view


PFS vision main hud eye green.png


The camera is focused to look at the keyholder


PFS vision main hud world green.png


All the world textures are overwritten





2.2 HUD radar mode

PFS vision radar hud.png


The radar mode is available from the "blind" menu. It helps the user to find the keyholder when blinded. the PFS vision red cross hud.png represents the user position and PFS vision triangle hud.png represents the keyholder position with the red triangle giving the direction where the keyholder is looking at.
The range of the radar is 40m with a logarithmic scale to give a better positionning when coming closer to the keyholder. This is particularly usefull for those enjoying activities like Silent blinded dressage.




2.3 Main menu

PFS vision hud main menu.png


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⏏ EXIT ⏏: Close the menu and allows someone else to grab it.
- locked ✘: the HUD is not locked.
- locked ✔: the HUD is locked, you cannot detach it anymore.
- key ✘: the key has been taken, see the keyholder name.
- key ✔: the key is available and anyone can grab it.
- tools: sub menu for truekey, HUD controller...
- RLV: sub menu for RLV specifics features (if they are).
- timer: sub menu for RL/SL timer.
- blind: sub menu for all the blind functions like sphere, avatar, world texture, camera lock, location, start IM and radar.
- view: sub menu for all the view functions like mask, transparency, color and environnement.
- vision: sub menu for all the vision functions like mouselook, camera lock, camera limit and focus.




2.4 Tools menu

PFS vision hud tools menu.png


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⇫ BACK ⇫: Go back to previous menu.
- ⏏ EXIT ⏏: Close the menu and allows someone else to grab it.
- TrueKey: Get a new TrueKey.
- set pw: set a new password number.
- use key: use your TrueKey to grab the key.
- get HUD: get the HUD to control this [PFS] Vision.




2.5 RLV menu

PFS vision hud rlv menu.png


- ⇫ BACK ⇫: Go back to previous menu.
- ⏏ EXIT ⏏: Close the menu and allows someone else to grab it.
- list: Stream in your chat window all the active restrictions with the script name which is the source of the restriction. You may see same restriction for different scripts, this is all normal.




2.6 Timer menu

PFS vision hud timer1 menu.png
PFS vision hud timer2 menu.png


NOTE: When the timer runs out, the key is given back to the user. No one will be able to grab it except if they are some "key grabbing" plugin scripts installed.

- ⇫ BACK ⇫: Go back to previous menu.
- ⇦ PREVIOUS: previous page.
- NEXT ⇨: next page.
- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- stop: Stop the actual timer but don't give back the key to the user.
- RLtime ✔: Online timer mode. Switching timer mode is possible while running.
- hide ✔: The actual timer value and the added time triggered by the menu vuttons are hided to the user.
- +2min: Add 2 minutes to the actual timer value.
- +5min: Add 5 minutes to the actual timer value.
- +30min: Add 30 minutes to the actual timer value.
- +1h: Add 1 hour to the actual timer value.
- +3h: Add 3 hours to the actual timer value.
- +6h: Add 6 hours to the actual timer value.
- +12h: Add 12 hours to the actual timer value.
- +24h: Add 24 hours to the actual timer value.




2.7 Blind menu

PFS vision hud blind menu.png


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⇫ BACK ⇫: Go back to previous menu.
- ⏏ EXIT ⏏: Close the menu and allows someone else to grab it.
- blind ✘: no sphere view active, click for options.
- blind ✔: sphere view is active, click for options.
- avatar ✔: Turns all avatars past the distance to silouhettes and nametags are hidden, if the 'blind' mode is active the distance is adjusted the the sphere size otherwise a menu will allow you to adjust it.

NOTE: With Firestorm 6.6.3.67470 the avatars may just vanish from the screen! nice avatar eraser feature. With Kokua 6.6.3.52925 the body vanish but some attachement stay more or less visible like haire, freaking!

example of the avatars turned into silhouettes with Catznip R13.2

- world ✘: no world texture applied, click for options.
- world ✔: a world texture is applied, click for options.
- camera ✔: Force the camera to stay inside the sphere range, only available if the 'blind' is set (only RLVa).
- loc ✔: The user is unable to know where they are: the world map is hidden, the parcel and region name on the top menubar are hidden, they cannot create landmarks, nor buy land, nor see what land they have left after teleport, nor see the location in the About box, and even system and object messages are ofuscated if they contain the name of the region and/or the name of the parcel. In addition the user is unable to view the mini map and world map.
- startIM ✔: RLVa user can only start IMs to people who are on the same region they are between 0m and the distance. In case 'blind' is active the distance is set to the sphere range otherwise a menu will allow you to adjust it.
- startIM ✔: RLV user are prevented to start IMs, the distance modifier is not available!.
-radar ✔: the user's HUD is now a radar to show position and looking direction of the keyholder. The range is 40m and the scale is logarithmic.

In radar mode the user HUD turns into a radar


-names ✔: unable to see name and they are replaced by dummies, tooltips are hiden and pie menu is almost useless so user can't get the profile, etc... nametags are not displayed anymore, nearby window is useless.
-clear: all restrictions are cleared and reseted to defaults values.




2.7.1 Blind sub menu

PFS vision hud blind option menu2.png


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⇫ BACK ⇫: Go back to previous menu.
- none ✔: blind level to none, defaults values for mode, color and opacity are applied.
- level ✘: no sphere view, ▁: 16m, ▂: 8m, ▃: 4m, ▆: 2m, ▇: 1m, ▉: 0.5m. Works only in one way, to remove the actual sphere view, one has to step up all levels until coming back to the start or hit 'none' button.

example of sphere view at medium level

- range (✔): if you don't find the adapted sphere size in 'level' you can enter a value between 0.0m and 255.0m, under 0.3m you can consider being fully blind, ✔ means a custom value is actually active.
- pixel ✔: the colored sphere is replaced by a pixelisation effect depending on the 'blind" setting (only RLVa).

example of the pixel mode at medium level

- black, D.gray, gray, L.gray or custom: Color the sphere with different settings.
- RGB: Enter the R/G/B values for the custom color.

example of the sphere mode colored in red at medium level




2.7.2 World sub menu

PFS vision hud world option menu2.png


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⇫ BACK ⇫: Go back to previous menu.
- add: add a custom world texture to the set, format is texture UUID + name (8 chars max) no space no punctuation.
- delete: remove a custom previously added world texture from the set.
- std gray: set the world texture to the standard gray.
- cow spot: set the world texture to cow spots.

example of the world textures changed to cow spot

- leather: set the world texture to leather.

example of the world textures changed to cow spot

- wood: set the world texture to wood.

example of the world textures changed to cow spot

- stone: set the world texture to stone.

example of the world textures changed to cow spot




2.8 View menu

PFS vision hud view menu2.png


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⇫ BACK ⇫: Go back to previous menu.
- ⏏ EXIT ⏏: Close the menu and allows someone else to grab it.
- mask ✘: no mask view is active, click for options.
- mask ✔: a mask is currently covering the screen, click for options.
- env ✘: no environnement settings active, click for options.
- env ✔: an environnement settings is active, click for options.
- clear: all restrictions are cleared and reseted to defaults values.




2.8.1 Mask sub menu

PFS vision hud view masl option1.png


PFS vision hud view masl option2.png


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- NEXT ⇨: toggle to next page.
- ⇦ PREVIOUS: - ⇫ BACK ⇫: Go back to previous menu.
- add: Add a custom mask texture to the set, format is texture UUID + name (8 chars max) no space no punctuation. Best result with texture resolution 1024x512.
- delete: Remove a custom previously added mask texture from the set.
- transparency: set the transparency value of the mask.
- color: Set the color of the mask.
- 2Bholes ✔: covers the entire screen with the specified texture (mask), here a mask with 2 big sized holes. The aspect ratio will be the aspect ration of the viewer’s world view and the mask will always render below all HUDs. RLVa user can only click throught the cuts outs if they are some. RLV user will get an additional HUD attached and the only way to touch world is the small pinhole in middle.

example of the '2Bholes' mask

- 2Mholes ✔: mask with 2 middle sized holes.

example of the '2Mholes' mask

- 2Sholes ✔: mask with 2 small sized holes.

example of the '2Sholes' mask

- blinders ✔: mask witht he 2 sides blinders that ponies are used to get to focus in front of them and avoid any side distraction.

example of the 'blinders' mask

- harness ✔: mask with straps for the user of headharness gags.

example of the 'harness' mask

- harnblin ✔: mask with a combinaision of blinders and headharness straps.

example of the 'harnblind' mask

- FullMask ✔: mask fully covers the screen without any cut out.

example of the 'FullMask' mask




2.8.1.1 Tranasparency sub menu

PFS vision hud view trans menu.png


- ⇫ BACK ⇫: Go back to previous menu.
- 0%: the mask is fully opaque.
- 100%: the mask is fully transparent. The touch rules are still opeartive!
- -10%: decrease the transparency by 10%.
- 50%: Set the transparency to 50%.
- +10%: increase the transparency by 10%.




2.8.1.2 Color sub menu

PFS vision hud color view menu.png


- ⇫ BACK ⇫: Go back to previous menu.
- ⇦ PREVIOUS: previous page.
- NEXT ⇨: next page.
- black, D.gray, L.gray, red, blue, green, pink, purple, brown or custom ✔: Seelct the desired color for the mask.
- RGB: Enter the R/G/B values for the custom color.
- cycle ✔: The mask color will change during the cycle time.
- time: Enter a nex cycle time.




2.8.2 Environnement sub menu

PFS vision hud view env option2.png


Warning64.png

If your 'settings' folder is not populated with environnement settings, the final result may differ depending on the viewer you are using! For the 'Foggy' & 'Gelatto' settings, best copy the sets from your Librairy\Environnements\Skies\ to your Inventory\settings\


- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⇫ BACK ⇫: Go back to previous menu.
- add: add a custom environnement setting to the set, format is name (8 chars max) no space no punctuation. In case of EEP be sure the setting is present in the user inventory, see folder 'settings'.
- delete: remove a custom environment setting from the set.
- none ✔: no environnement preset active.
- foggy ✔: the user is unable to change the viewer environment settings and the selected preset, here a foggy environnement, will be forced. Preset can be EEP settings if the user folders are previously setup.
-gelato ✔: environnement preset gelatto.




2.9 Vision menu

PFS vision hud vision menu2.png

- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- ⇫ BACK ⇫: Go back to previous menu.
- ⏏ EXIT ⏏: Close the menu and allows someone else to grab it.
- ML ✔: forces the user to stay in mouselook as long focus is not active. ML will be suspended the time focus is active.
- lock ✔: prevents the user from unlocking the camera from the avatar, meaning that the user cannot use Alt to focus nor orbit the camera around the avatar. While the camera is locked, the sim forces it to stay in a line of sight from the avatar.
- limit ✘: no camera limit range is active, click for options.
- limit ✔: a camera limit range is active, click for options.
- focus ✘: no focus target active, click for options.
- focus ✔: a focus target is active, click for options.
- clear: all restrictions are cleared and reseted to defaults values.




2.9.1 Focus sub menu

PFS vision hud limit option menu.png

- ⇫ BACK ⇫: Go back to previous menu.
- ⍰ HELP ⍰: Stream in your chat window the help for this menu.
- limit ✔: prevents the user from moving the camera outside the defined range from the avatar, either with the mouse wheel or when focusing with the Alt key.
- +1m, +2m, +5m, +10m: increase the camera limit range of the selected value, maximum is 96m.
- default: set the camera limit range to the default value of 3m.
- -1m, -2m, -5m -10m: decrease the camera limit range of the selected value, minimum is 1m.




2.9.2 Focus sub menu

PFS vision hud vision option menu1.png
PFS vision hud vision option menu2.png

- ⇫ BACK ⇫: Go back to previous menu.
- ⇦ PREVIOUS: previous page.
- NEXT ⇨: next page.
- focus ✔: If the keyholder is present and inside the defined focus range, forces the user to turn toward the avatar and the camera will focus one of the selected 'target', the height of the camera can be forced with 'myEyes'. If the user sit on the floor, or sit on any object, or the keyholder is off sim, or if the keyholder is outside the focus range, the focus is replaced by camera limit of 3.0m. Be aware that ML is not allowed, if the user decide to roll into ML position an RLV command will be triggered to force to leave ML. In case ML setting is ✔ the user will be toggled from ML to forced camera and vice versa to keep the feeling of the special experience.
- +1m, +2m, +5m, +10m: increase the keyholder detection range within the user is forced to focus toward the keyholder, maximum is 96m.
- default: set the focus range to the default value of 20m.
- 1m, -2m, -5m -10m: decrease the keyholder detection range within the user is forced to focus toward the keyholder, minimum is 96m. - myEyes: Select the height of the user's camera (head, half height, floor) when focus is active. Typically to adjust the user camera to its position: standing, kneeling or laying on the floor.

myEyes to head position and target to head position too
myEyes to half height position and target to head position too
myEyes to floor position and target to head position too

- target: Select the target height of the user's camera (head, half height, floor) when focus is active. Typically to force to look at your head, butt or feet.

myEyes to head position and target to head position too
myEyes to head position and target to half height position too
myEyes to head position and target to floor position too




3. Vision controller HUD

PFS Vision HUD controller2.png


This HUD can:
- Scan all [PFS] Vision users within a region, list the one you are listed as keyholder w/o range limit, others only inside a 20.0m range.
- Adds the [PFS] Vision user where you are listed as keyholder to your control HUD.
- Acess the listed [PFS] Vision users main menu.
- From the HUD you can scroll and get the actual status of the user's [PFS] Vision if present in the same region.
- Get a general status of the actual selected user.
- Access directly to the functions menus.
- Drag & Drop your own mask texture and world texture to apply them on the user side.
- Remove listed [PFS] Vision users from the HUD.

3.1 Scan for users

Click the scan button PFS vision hud controller scan button.png and after scanning the entire region, if some [PFS] Vision users has been found a menu will be displayed;

PFS vision hud controller scan menu.png


This menu lists all users present in the region where you are keyholder and also all locked and all unlocked devices in a range of 20m.
Depending on the device status and who hold the keyholder, you may just access it if you are close enough or add it to the HUD or even add it to the HUD and access the device main menu.

3.2 Remove a listed user

If you have listed users on your HUD and you want to remove some, click the connect button PFS vision hud controller connect button.png and a menu to select which one you want to remove will be displayed:

PFS vision hud controller connect menu.png


NOTE: unlocked device will be automatically removed from the HUD!

3.3 Drag & Drop textures

if the user is already in the mask view mode or already having the world textures being overwritten by one from the [PFS] Vision system, you can simply drag and drop any type of texture directly on the HUD and the dropped texture will be applied on the user side.

PFS vision hud controller dragdrop.png


NOTE: Be carreful where you drop the mask texture and be sure you aim the colored area (the deep black part on the example) and not the transparent area, or you may re-texture something else you didn't wanted!

4. Options

4.1 Access plugins

PFS Vision plugins.png


To install plugins inside the [PFS] Vision, you have to rez the object on the floor, right + click edit, go to content tab and than just drag and drop the desired script inside the content tab. Give it a time to let your viewer refresh it. Since [PFS] Vision is able to manage several access plugins, be sure you don't throw several times the same script in the content tab. If it's the case just remove the doubles. Take it back and wear it again, your [PFS] Vision is ready!

4.2 Status

PFS Vision status.png


Wearing a vision control system can be hard to people to figure out the user is severly restricted and can even in some case let people feeling ignored. To avoid any of this you can wear an additional object that will inform the people around the user about the retrictions running. The text is as short as possible to not make it too intrusive. The little "👁" over the eay ie either green for unlocked, either red for locked state. If locked a general restriction word will be added meaning one restriction is at least active there.