Wiki

Imported revision

VMod

You are reading an older revision. This is not the current page.

Added pre-2.4 warning and may be out of date notice

Sugarchips · Imported from the former Valkyrien Skies wiki · ·

04c5d2ea-ffe1-41e2-8aa7-dedddff69aeb · MediaWiki wikitext source

Revision 2835 of the former Valkyrien Skies wiki, licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0). Its original wikitext is shown as source only and can't be restored.

MediaWiki wikitext source

{{Pre 2.4 Notice}}{{Outdated Info Notice}}{{Infobox addon|title=VMod|modid=the_vmod|logo=Toolgun_logo.png|author=SpaceEye, getItemFromBlock|mcversions=1.18.2, 1.20.1|loader=Forge, Fabric|downloadlink={{VMod Download}}}}

'''VMod''' is an [[addon]] that adds a powerful tool for creating and modifying Valkyrien Skies ships - Toolgun. It's highly inspired by GMod and shares some similarities with GMod's toolgun.

To safely delete VMod, load all ships (visit every ship once), and run the command "/vmod op clear-vmod-attachments" (exists since 0.1.3)

== Constraints ==

* Connection
* Rope
* Hydraulics
* Physics Rope
* Slider
* Sync Rotation

== Entities ==

* Thruster
* Sensor

== Tools ==

* Gravity Changer
* Disable Collisions
* Schematic
* Scale
* Strip
* Ship Remover
* Mass Changer

== Toolgun ==
LMB - left mouse button. RMB - right mouse button. MMB - middle mouse button.

How to use:

* Press TAB to open menu
* Press R to reset mode
* Look at HUD hint to see what actions are available (and if it says nothing then try LMB)
* If you started a mode, continue it until it finishes (or press R to reset)
* If you're in the middle of a mode, it will prevent you from opening toolgun menu.
* Press Z to remove last created constraint (only works until you leave server/world)

== Physgun ==

How to use:

* Hold LMB to grab a ship.

* Press RMB while ship is grabbed to freeze it in place

* Press mouse wheel while ship is grabbed to freeze all connected ships in place

* Hold E while ship is grabbed to start rotating the ship. To rotate ship move mouse.

* If you press R when you look at the ship but not have it grabbed, it will unfreeze that ship.

* If you press R when the ship is grabbed, it will unfreeze all connected ships.

* Scroll scroll wheel while ship is grabbed to change it's distance from you.

== Client Settings ==
* '''Client Limits''' - You can set several limits to control how things are rendered. Like limiting amount of segments a rope can have, or forcing all constraints to be in fullbright.

== Server Limits ==
You need to be OP to change those limits (You can change this in config but i don't recommend).

* '''Server Limits''' - Allows setting limits to allowed parameters and stuff
* '''Dimensional Gravity''' - Allows setting custom gravity for ships in a dimension
* '''Roles Settings''' - Allows creation of roles for players, and setting what modes that role is able to use (OP Players always have access to everything)
* '''Player Role Manager''' - Allows changing roles of players

== VMod Constraint Parameters ==

VMod Constraints have many different parameters which usually have same functions between different constraints.

* '''Width''' - Determines visual width of a constraint (though it's more like a radius)
* '''Fullbright''' - Determines whenever constraint will always be bright, or use brightness values from the world\
* '''Max Force''' - Determines how much force a constraint can apply. <0 for max
* '''Stiffness''' - Determines how stiff a constraint is. <0 for max
* '''Fixed Distance''' - If <0, then calculates distance between points itself, if >=0, then uses given distance instead.
* '''Hitpos Modes''' - If constraint needs positions, this option will appear
*# '''Normal''' - Will use hit position as is.
*# '''Centered On Side''' - Will get the face of a block hit position is on, and use center of that face as position.
*# '''Centered In Block''' - Will get the block hit position is on, and use center of the block as position
*# '''Precise Placement''' - Will get the face of a block hit position is on, create n^n points (determined by Precise Placement Assist Sides) uniformly distributed across that face, and use closest point to hit position (will light up green)
* '''Placement Assist Scroll Step''' - Determines how big scroll step is of rotation in Placement Assist. In degrees
* '''Distance From Block''' - Determines how far away object will be after finishing Placement Assist.
 
== Connection ==

Creates a connection (Fixed/Hinge/Free) between 2 objects. You can change its color by changing R,G,B,A parameters

'''Primary Mode''' - creates a connection between 2 points.

* If the connection mode is "Fixed Orientation", will fix 2 objects at relative distance, and relative rotations
* If the connection mode is "Hinge Orientation", will fix 2 objects at relative distance, but allow rotation on an axis that 2 points create
* If connection mode is "Free Orientation", will fix 2 objects at relative distance, but allow free rotation between them (it will act as ball joint)

'''Secondary Mode''' - will grab the first object, and align the normal of the first point's face with the normal of the second point's face. I'm also calling it "Placement Assist".

'''Join Mode''' - (Only usable with "Hinge Orientation") same as "Secondary Mode", but without visual assist. 

== Hydraulics ==

Creates a hydraulics connection that can extend if it receives a signal. To activate it use either a "Simple Messager" in transmit mode and activate it with redstone, or use "Sensor" entity.

DO NOT DELETE SHIPS THAT HAVE HYDRAULICS CONSTRAINT EXTENDING/RETRACTING AS IT '''''<u>WILL</u>''''' CRASH VS.

Parameters are the same as Connection except for:
* '''Channel''' - Determines which channel the connection is listening to. Can be any utf string
* '''Extension Distance''' - In blocks
* '''Extension Speed''' - In blocks/second. Don't set it too fast though as it can only update every mc tick

== Rope ==

It's a rope bruh
* '''Segments''' - Determines amount of segments a rope has. Purely visual

== Physics Rope ==

Creates a rope in which each segment is a physics component.

* '''Segments''' - Determines amount of phys segments a rope has.
* '''Total Mass''' - Total mass of the rope. Due to how VS works, if the mass of a segment is too low the rope won't be very strong, so don't set it too low.
* '''Radius''' - Radius of each segment. Due to limitations of VS this parameter is more like a suggestion, the actual radius will depend on how long each segment has to be.
* '''Angle Limit''' - Determines amount of degrees each segment can rotate relative to another segment.
* '''Sides''' - Amount of sides each segment has. Purely visual.

== Slider ==
Slider is '''<u>UNSTABLE AND BUGGY</u>''' and i can't do anything about that. Use it at your own risk 

== Sync Rotation ==
Synchronizes rotation of two ships

== Thruster == 
Creates a thruster entity. Activation logic is identical to "Hydraulics" 
* '''Force''' - Force of a thruster. In newtons, so you'll need big numbers

== Sensor ==
Creates a sensor entity. It casts ray each mc tick, and transmits signal with strength of "dist to object / max distance"

* '''Ignore Self Ship''' - If checked, will ignore ship the sensor is on and raycast through any blocks it may find.

== Gravity Changer ==
Will change gravity of a ship

== Disable Collisions ==
Will disable collisions between 2 ships, or a ship and a world

== Mass Changer ==

Will change block mass of a ship to "New Mass" by going through each block and setting its mass to "default mass / default total ship mass * new total ship mass". If persistent is checked, will recalculate mass on block breaking/placing.

== Commands ==
* "/vmod teleport {ship name} {x} {y} {z} ({pitch} {yaw} {roll})" - teleports all connected ships
* "/vmod scale {ship name} {scale}" - scales all connected ships
* "/vmod vs-delete-massless-ships" - only useful if you disable automatic massless ship deletion in config
* "/vmod display-ships-in-order {page}" - will display all ships with other data in order of their distance from player
* "/vmod schem save-to-server {name}" - will save currently active schematic in schematic mode to server under a name
* "/vmod schem load-from-server {name}" - will try to load schematic from server to special server container
* "/vmod place {x} {y} {z} ({pitch} {yaw} {roll}) {name (optional)}" - will place schematic from special server container under "name", and if name is not specified will use filename instead
* "/vmod place-no-custom-name {x} {y} {z} ({pitch} {yaw} {roll})" - will place schematic from special server container, using autogenerated name
* "/vmod gravity set-for {ship or list of ships} {x vel} {y vel} {z vel}" - will set gravity for ship or list of ships to set velocity vector
* "/vmod gravity set-for-connected {ship or list of ships} {x vel} {y vel} {z vel}" - will set gravity for all connected ships to {ship}
* "/vmod gravity set-for-connected-and-touching {ship or list of ships} {x vel} {y vel} {z vel}" - will set gravity for all connected and touching ships to {ship}
* "/vmod gravity reset-for {ships}" - will reset gravity for {ships}
* "/vmod gravity reset-for-every-ship-in {dimension}"
 
== Dependencies ==
{| class="wikitable"
|+
!
!1.18.2
!1.19.2
!1.20.1
|-
|VMod Version
|1.0.0
|1.0.0
|1.0.0
|-
|Valkyrien Skies Version
|2.1.1-beta.5
|2.1.2-beta.5
|2.3.0-beta.5
|-
|Fabric API Version
|Latest
|Latest
|Latest
|-
|'''For Forge Only:'''
|
|
|
|-
|Forge Version
|40.2.7+
|43.4.0+
|47.3.0+
|-
|Kotlin for Forge Version
|3.12
|3.12
|4.11
|}

[[Category:Addon]]