Advanced - Omegafredo/worst-time-simulator GitHub Wiki
Line Jumps
Some attacks need to jump to other lines for them to work. There are commands to provide this functionality.
Labels
You can create a label instead of calling a function by putting the desired label name in column 2 and prefixing it with ":". The label will allow you to perform jumps to this line by using the label name instead of the absolute line number.
Note that the time delay in column 1 is still respected on labels.
JMPABS (Jump absolute)
Jump to a specific line on the attack
- AbsoluteLineNumber
JMPZ (Jump zero)
Jump to a line if the test value is 0
- AbsoluteLineNumber
- TestValue
JMPNZ (Jump not zero)
Jump to a line if the test value is not 0
- AbsoluteLineNumber
- TestValue
JMPE (Jump equal)
Jump to a line if the test values are equal
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPNE (Jump not equal)
Jump to a line if the test values are not equal.
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPL (Jump if less)
Jump to a line if the first test value is less than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPNL (Jump if not less)
Jump to a line if the first test value is not less than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPG (Jump if greater)
Jump to a line if the first test value is less than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPG (Jump if not greater)
Jump to a line if the first test value is less than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPREL (Jump relative)
Jump to a line number relative to the current one. Positive numbers jump forward, and negative numbers jump backwards
- RelativeLineNumber
JMPRELZ (Jump relative zero)
Jump to a relative line number if the test value was zero
- RelativeLineNumber
- TestValue
JMPRELNZ (Jump relative not zero)
Jump to a relative line number if the test value was not zero
- RelativeLineNumber
- TestValue
JMPRELE (Jump relative equal)
Jump to a relative line number if the test values are equal
- RelativeLineNumber
- TestValue
- TestValue2
JMPRELNE (Jump relative not equal)
Jump to a relative line if the test values are not equal
- RelativeLineNumber
- TestValue
- TestValue2
JMPRELL (Jump relative if less)
Jump to a relative line number if the first test value is less than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPRELNL (Jump relative if not less)
Jump to a relative line number if the first test value is not less than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPRELG (Jump relative if greater)
Jump to a relative line number if the first test value is greater than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
JMPRELNG (Jump relative if not greater)
Jump to a relative line number if the first test value is not greater than the second test value
- AbsoluteLineNumber
- TestValue1
- TestValue2
Math
If your attack need to do some math stuff with variables, there are a lot of functions that you can use in order to make it work
If you need to access the value of a variable, it can be called with the '$' prefix, e.g. $MyVar will return the value that MyVar has.
SET
Sets a variable to a value
- VariableName
- Value
ADD
Adds two numbers and stores the result in a variable
- VariableName
- Value1
- Value2
SUB
Substracts two numbers and stores the result in a variable
- VariableName
- Value1
- Value2
MUL
Multiplies two numbers and stores the result in a variable
- VariableName
- Value1
- Value2
DIV
Divides two numbers and stores the floating-point result in a variable.
- VariableNumber
- Value1
- Value2
MOD
Gets the modulo of two numbers and stores the result in a variable
- VariableNumber
- Value1
- Value2
FLOOR
Stores in a variable the largest integer less than or equal to a given number
- VariableName
- DecimalValue
DEG
Converts radians to degrees and stores the result in a variable
- VariableName
- RadianValue
RAD
Converts degrees to radians and stores the result in a variable
- VariableName
- DegreeValue
SIN
Calculates the sine function for an angle in degrees and stores the result in a variable
- VariableName
- DegreeValue
COS
Calculates the cosine function for an angle in degrees and stores the result in a variable
- VariableName
- DegreeValue
ANGLE
Calculates an angle from point 1 to point 2
- VariableName
- Point1X
- Point1Y
- Point2X
- Point2Y
RND
Generates a random from 0 to n-1 and stores it in a variable
- VariableName
- Number