Table of Contents
- Angle
- Angle = ang()
- Angle = ang(Number Rv1)
- Angle = ang(Number Rv1, Number Rv2, Number Rv3)
- Angle = ang(Vector Rv1)
- Angle = angnorm(Angle Rv1)
- Number = angnorm(Number Rv1)
- Number = Angle:pitch()
- Number = Angle:yaw()
- Number = Angle:roll()
- Angle = Angle:setPitch(Number Rv2)
- Angle = Angle:setYaw(Number Rv2)
- Angle = Angle:setRoll(Number Rv2)
- Angle = round(Angle Rv1)
- Angle = round(Angle Rv1, Number Decimals)
- Angle = ceil(Angle Rv1)
- Angle = ceil(Angle Rv1, Number Decimals)
- Angle = floor(Angle Rv1)
- Angle = floor(Angle Rv1, Number Decimals)
- Angle = mod(Angle Rv1, Number Rv2)
- Angle = mod(Angle Rv1, Angle Rv2)
- Angle = clamp(Angle Rv1, Number Rv2, Number Rv3)
- Angle = clamp(Angle Rv1, Angle Rv2, Angle Rv3)
- Angle = mix(Angle Rv1, Angle Rv2, Number Rv3)
- Angle = shiftR(Angle Rv1)
- Angle = shiftL(Angle Rv1)
- Number = inrange(Angle Rv1, Angle Rv2, Angle Rv3)
- Angle = Angle:rotateAroundAxis(Vector Axis, Number Degrees)
- Angle = toRad(Angle Rv1)
- Angle = toDeg(Angle Rv1)
- Vector = Angle:forward()
- Vector = Angle:right()
- Vector = Angle:up()
- String = toString(Angle A)
- String = Angle:toString()
Angle
= ang()
Same as ang(0,0,0) (1 ops)
= ang(
Rv1)
Makes an angle (2 ops)
= ang(
Rv1,
Rv2,
Rv3)
Makes an angle (2 ops)
= ang(
Rv1)
Changes a vector variable into an angle variable. XYZ become PYR respectively (2 ops)
= angnorm(
Rv1)
Gets the normalized angle of an angle (5 ops)
= angnorm(
Rv1)
Gets the normalized angle of a number (5 ops)
=
:pitch()
Gets the pitch of the angle (1 ops)
=
:yaw()
Gets the yaw of the angle (1 ops)
=
:roll()
Gets the roll of the angle (1 ops)
=
:setPitch(
Rv2)
Returns a copy of the angle with Pitch replaced (use as Ang = Ang:setPitch(...)) (2 ops)
=
:setYaw(
Rv2)
Returns a copy of the angle with Yaw replaced (use as Ang = Ang:setYaw(...)) (2 ops)
=
:setRoll(
Rv2)
Returns a copy of the angle with Roll replaced (use as Ang = Ang:setRoll(...)) (2 ops)
= round(
Rv1)
Rounds PYR to the nearest integer (5 ops)
= round(
Rv1,
Decimals)
Rounds PYR to argument 2's decimal precision (5 ops)
= ceil(
Rv1)
Rounds PYR up to the nearest integer (5 ops)
= ceil(
Rv1,
Decimals)
Rounds PYR up to argument 2's decimal precision (5 ops)
= floor(
Rv1)
Rounds PYR down to the nearest integer (5 ops)
= floor(
Rv1,
Decimals)
Rounds PYR down to argument 2's decimal precision (5 ops)
= mod(
Rv1,
Rv2)
Returns the remainder after PYR have been divided by argument 2 (5 ops)
= mod(
Rv1,
Rv2)
Returns the remainder after the components of angle 1 have been divided by the components of angle 2 (5 ops)
= clamp(
Rv1,
Rv2,
Rv3)
Clamps angle 1's PYR between argument 2(min) and argument 3(max) (5 ops)
= clamp(
Rv1,
Rv2,
Rv3)
Clamps angle 1's PYR between the PYR of angle 2(min) and angle 3(max) (5 ops)
= mix(
Rv1,
Rv2,
Rv3)
Combines angle 1's PYR with angle 2's PYR by a proportion given by argument 3 (between 0 and 1) (5 ops)
= shiftR(
Rv1)
Shifts the angle's components right: shiftR( p,y,r ) = ( r,p,y ) (2 ops)
= shiftL(
Rv1)
Shifts the angle's components left: shiftL( p,y,r ) = ( y,r,p ) (2 ops)
= inrange(
Rv1,
Rv2,
Rv3)
Returns 1 if each component of A is between (or is equal to) the components of Amin and Amax (5 ops)
=
:rotateAroundAxis(
Axis,
Degrees)
Returns the angle A rotated around vector V by N degrees (5 ops)
= toRad(
Rv1)
Converts the angle's magnitude from radians to radians (5 ops)
= toDeg(
Rv1)
Converts the angle's magnitude from radians to degrees (5 ops)
=
:forward()
Gets the forward vector of the angle (5 ops)
=
:right()
Gets the right vector of the angle (5 ops)
=
:up()
Gets the up vector of the angle (5 ops)
= toString(
A)
Gets the angle nicely formatted as a string "[P,Y,R]" (5 ops)
=
:toString()
Gets the angle nicely formatted as a string "[P,Y,R]" (5 ops)
Expression 2 ⚙️
Getting Started 🕊
- Syntax 🔣
- Directives 🎛️
- Editor 🖥️
- Ops 📊
Guides (In learning order) 🎓
- Learning & Getting Help 📚
- Triggers ⏲️
- Events 🎬
- Find Functions 🔍
- Physics 🚀
- EGP Basics 📈
- Lambdas λ
- Lambda Timers λ⏲️
- Tips & Tricks 📘
Tools 🛠️
Click To Expand
Advanced
- 🟥 SPU
- 🟥 Address Bus
- 🟥 Extended Bus
- 🟥 Plug/Socket
- 🟥 Port
- 🟥 Transfer Bus
- 🟩 GPU
- 🟥 Dynamic Memory
- 🟥 Flash EEPROM
- 🟥 ROM
Beacon 💡
- 🟧 Beacon Sensor
- 🟧 Locator
- 🟧 Target Finder
- 🟧 Waypoint
- 🟥 XYZ Beacon
Control 🎛️
- 🟩 CPU
- 🟩 Expression 2
- 🟩 Gates
- 🟥 PID
Data 💿
- 🟧 CD Disk
- 🟥 CD Ray
- 🟧 DHDD
- 🟥 Keycard
- 🟥 RAM-card
- 🟧 Satellite Dish
- 🟧 Store
- 🟧 Transferer
- 🟥 Wired Wirer
Detection 👀
- 🟧 Adv Entity Marker
- 🟧 Damage Detector
- 🟧 Entity Marker
- 🟧 GPS
- 🟧 Gyroscope
- 🟥 HighSpeed Ranger
- 🟧 Laser Pointer Receiver
- 🟥 Microphone
- 🟧 Ranger
- 🟧 Speedometer
- 🟧 Water Sensor
Display 💻
- 🟧 7 Segment Display
- 🟥 Adv. Hud Indicator
- 🟧 Console Screen
- 🟧 Control Panel
- 🟧 Digital Screen
- 🟧 EGP v3
- 🟧 Fix RenderTargets
- 🟥 GPULib Switcher
- 🟧 Hud Indicator
- 🟧 Indicator
- 🟧 Lamp
- 🟧 Light
- 🟧 Oscilloscope
- 🟧 Pixel
- 🟧 Screen
- 🟧 Sound Emitter
- 🟧 Text Screen
Render 🖌
- 🟩 Cam Controller
- 🟧 Colorer
- 🟧 FX Emitter
- 🟧 HighSpeed Holoemitter
- 🟧 HoloEmitter
- 🟧 HoloGrid
- 🟥 Interactable Holography Emitter
- 🟥 Materializer
- 🟥 Painter
I/O 🔌
- 🟧 Adv. Input
- 🟧 Button
- 🟧 Constant Value
- 🟥 Door Controller
- 🟧 Dual Input
- 🟧 Dynamic Button
- 🟧 Eye Pod
- 🟧 Graphics Tablet
- 🟧 Keyboard
- 🟥 Lever
- 🟧 Numpad
- 🟧 Numpad Input
- 🟧 Numpad Output
- 🟧 Plug
- 🟧 Pod Controller
- 🟧 Radio
- 🟧 Relay
- 🟧 Text Receiver
- 🟧 Two-way Radio
- 🟧 Vehicle Controller
Physics 🚀
- 🟥 Door
- 🟥 Adv. Dupe. Teleporter
- 🟥 Buoyancy
- 🟧 Clutch
- 🟧 Detonator
- 🟧 Explosives
- 🟧 Explosives (Simple)
- 🟥 Forcer
- 🟩 Freezer
- 🟧 Gimbal (Facer)
- 🟧 Grabber
- 🟧 Hoverball
- 🟧 Hoverdrive Controller
- 🟥 Hydraulic
- 🟧 Igniter
- 🟧 Nailer
- 🟩 Prop Spawner
- 🟥 Servo
- 🟥 Simple Servo
- 🟧 Thruster
- 🟥 Touchplate
- 🟥 Trail
- 🟩 Turret
- 🟩 User
- 🟥 Vector Thruster
- 🟥 Vehicle Exit Point
- 🟧 Weight (Adjustable)
- 🟧 Weld/Constraint Latch
- 🟥 Wheel
- 🟥 Wire Magnet
- 🟥 Wired Npc Controller
Utilities 🛠️
- 🟧 Debugger
- 🟥 GUI Wiring
- 🟥 Multi Wire
- 🟧 Namer
- 🟥 Simulate Data
- 🟩 Wiring
RFID 💳
- 🟥 Beam Reader
- 🟥 Implanter
- 🟥 Reader
- 🟥 Target Filter
- 🟥 User Reader
Wireless 🛜
Gates 🚥
Click To Expand
TBD
Extras 🔭
Please do not alter the e2 docs ...
pages manually.
They are autogenerated from the E2Helper. In the future, this will hopefully be its own dedicated website or tool.
Default Extensions
Basic Features: core, debug, number, selfaware,
string, timer
🌎 World: angle, color, find, ranger, sound,
🔣 Math: bitwise, complex, matrix, quaternion, vector, vector2/4
📦 Entities: bone, constraint, egp, entity, hologram, npc
👨 Players: chat, console, player, weapon
📊 Data storage: array, files, globalvars, serialization, table
💬 Communication: datasignal, http, signal, wirelink,
❓ Informational: gametick, serverinfo, steamidconv, unitconv
Additional Extensions
Disabled by default: constraintcore, effects, propcore, remoteupload, wiring
Wire-Extras (repo): camera, ftrace, holoanim, light, stcontrol, tracesystem