Bot: Difference between revisions
m (formatting) |
m (Typos) |
||
Line 33: | Line 33: | ||
'''%blip''' <repetitions> ''[lastJumpTicks] [blipHeight]'' |
'''%blip''' <repetitions> ''[lastJumpTicks] [blipHeight]'' |
||
Returns the height of the player after chaining consecutive blips. |
Returns the height of the player after chaining consecutive blips. (Y=0 is the bottom surface by convention) |
||
Unless specified with [lastJumpTicks], returns the peak of the jump by default (6 ticks). |
Unless specified with [lastJumpTicks], returns the peak of the jump by default (6 ticks). |
||
Line 42: | Line 42: | ||
* 4 chained blips: %blip 4 |
* 4 chained blips: %blip 4 |
||
* 17 lilypad blips: % |
* 17 lilypad blips: %blip 17 0.015625 |
||
Line 54: | Line 54: | ||
* 12t jump: %height 12 |
* 12t jump: %height 12 |
||
* 2bc 9t jump: % |
* 2bc 9t jump: %height 9 2 |
||
Revision as of 00:06, 9 January 2021
MCPK-bot is a Discord Bot aiming to replace MathBot for movement calculations. Indeed, it was getting tiresome to redefine functions all the time, and the syntax is not very convenient to use (see all the advantages in the Simulate section). MathBot is still very useful as a general-purpose calculation tool.
Distance
%distance <X> [Z]
Returns the real distance of a X by Z jump (distances in blocks, Z is optional)
The formula is simply
Examples:
- 4b jump: %distance 4
- 3x3 jump: %distance 3 3
Duration
%duration <jumpHeight> [ceilingHeight]
Returns the duration of a jump with the given height (heights in blocks, ceilingHeight is optional)
Examples:
- -1.5b jump: %duration -1.5
- 3bc +1 jump: %duration 1 3
Blip
%blip <repetitions> [lastJumpTicks] [blipHeight]
Returns the height of the player after chaining consecutive blips. (Y=0 is the bottom surface by convention)
Unless specified with [lastJumpTicks], returns the peak of the jump by default (6 ticks).
[BlipHeight] is the height of the blip's top surface (e.g. 0.0625 for carpet, 0.1875 for trapdoor...).
Examples:
- 4 chained blips: %blip 4
- 17 lilypad blips: %blip 17 0.015625
Height
%height <jumpTicks> [ceilingHeight]
Returns the jump height of the player after n ticks (ceilingHeight is optional)
Examples:
- 12t jump: %height 12
- 2bc 9t jump: %height 9 2
Simulate
%simulate <actions> (or simply %<actions>)
Reads the given actions from left to right, and simulates the resulting movement.
Advantages over using Mathbot:
- The functions are built-in: no need to redefine them manually.
- X and Z movement are both considered.
- The bot uses float math instead of fractions, so the simulation is more accurate.
- It's way easier to read and write a sequence of actions from left to right.
- All actions take direction as an optional argument.
Actions:
Actions take two arguments:
- Ticks : the duration of the action, in ticks
- Direction (optional) : the direction (not facing) of the action, in degrees
Action | Description |
---|---|
stop, stop_air | No input |
sneak, sneak_air | Sneak |
sneak45, sneak45_air | Sneak with 45° strafe |
walk, walk_air | Walk |
walk45, walk45_air | Walk with 45° strafe |
sprint, sprint_air | Sprint |
sprint45, sprint45_air | Sprint with 45° strafe |
stopjump | Jump without moving |
walkjump | Jump without sprinting |
walkjump45 | Jump without sprinting, 45° strafe throughout the jump |
sprintjump | Sprintjump |
sprintjump45 | Sprintjump forward, start 45° strafe after the first tick |
Lsprintjump
Rsprintjump |
Strafe Left or Right on the first tick of a sprintjump.
Example: used for rex bwmm |
Lsprintjump45
Rsprintjump45 |
Strafe Left or Right throughout a sprintjump.
Example: used for 1bm 5-1 |
Add "max_" in front to get the maximum momentum with that action.
Tokens:
- Momentum, MM, and | sets the previous actions as momentum (resets the position minus the last tick)
- Blocks and b convert the output landing distance to blocks (± 0.6 to X and Z if nonzero)
- Meters, and m convert the output landing distance to meters (same values as default)
- Position, pos, and p convert the output to (used when you're not calculating jump distance)
Usage:
The parser reads the actions and tokens from left to right. Actions and tokens should be separated by spaces.
The Momentum token can be used anywhere between two actions.
The Blocks, Meters, and Position tokens are to be used at the end of the sequence (mutually exclusive).
Examples:
- hh timing: % sprint | sprintjump(12)
- rex bwmm: % walkjump(12,180) walk(1,180) Lsprintjump(12) | sprintjump(12)
- 1bm 5-1: % walkjump(12,170) walk(1,170) Lsprintjump45(1,-10) sprint45_air(11) | sprintjump45(14) b