jay
feb0b0927a
feat(informer): :sparkles: add villager profession details
Provide names in place of numbers for villager profession.
Implementation uses an enum
1 year ago
jay
8276e68489
feat(informer): :sparkles: add block info based on relative position for players
1 year ago
jay
2b7163bef3
feat(informer): :sparkles: add block info based on other players
Now should work for position of players other than the callee.
Alternative implementation could use `entity` function.
This allows to also work for named entities as a bonus.
1 year ago
jay
a0b4641f37
feat(informer): :sparkles: add entity detail by type and kind for some entities
So far:
- mobs
- villager
- object
- drops
1 year ago
jay
186d6ac3d2
feat(informer): :children_crossing: add more detail to entity info
1 year ago
jay
984c9490c3
fix(informer): :goal_net: make `player` undefined if nul
This allows to fallback to defaults in functions
1 year ago
jay
3379f75ab9
feat(informer): :children_crossing: make entity search case insensitive
1 year ago
jay
69b1ab0b0b
feat(informer): :sparkles: add reverse mcdata lookup by block or item id
1 year ago
jay
3c9d62441f
feat(informer): :sparkles: add block info based on player's relative position
Relative position includes simple words like "feet", "standing", "head", etc
1 year ago
jay
665102e19c
fix(informer): :ambulance: remove extra `let cfg` declaration left over from refactor
1 year ago
jay
db459f52e6
fix(informer): :pencil2: fix typo in `isVec3` check function
1 year ago
jay
360eeff02f
feat(informer): :sparkles: add item info based on player
Change the parameter order of `item` function to accomodate this
1 year ago
jay
25faac2f4c
feat(informer): :sparkles: add command `me` for block info based on player position
1 year ago
jay
ccf0c598e8
feat(informer): :sparkles: add block info based on player position or manually provided coords
This paves the way to get block info based on positions relative from the player
1 year ago
jay
050e2b3bd9
feat(informer): :children_crossing: add sub-command for module level quiet
1 year ago
jay
e879d1f4ad
refactor(informer): :recycle: reorder config loading
1 year ago
jay
df193da779
feat(command): :construction: add stub for `bot._client` events
Not sure how these are different:
- `bot._client.on("chat")`
- `bot.on("message(str)")`
1 year ago
jay
269d258763
feat(command): :sparkles: use a simpler text based system for receiving server commands
1 year ago
jay
cbb105fe49
fix(command): :children_crossing: make bot address regex (prefix) more lenient
Should also accept server commands now on address
1 year ago
jay
356f83e39b
fix(command): :alien: fix `whisper` event api change with an extra parameter
Whisper also now includes who it was whispered to
1 year ago
jay
5b3804893b
feat(command): :sparkles: fix to show web (including extra [MODE]) messages
There's no way to remove `bot.addChatPattern`, so only does once on load
1 year ago
jay
9f6fea2423
feat(command): :loud_sound: add system (non-chat) messages to console log
This includes anything that doesn't return a `.text`.
Such as an `extra`, `translate` or other `json` formatted message.
Ex:
- afk
- errors
- player leave and joins
1 year ago
jay
3686bab167
fix: :bug: fix plugin reload for multi-file/dir based plugins
Now, it also (un-)loads the whole plugin (sub and master).
This appears to be the most stable option.
Loading behaviour is unchanged from before (load only top level plugin).
However as a precaution, loading tries to unload bad plugins on error.
This helps to not end up in a bad state during reload.
1 year ago
jay
e0c477a46f
feat: :hammer: make `fs.watch` recursive, so it `reloadplugin` works also on directories
1 year ago
jay
6046123074
build: :arrow_up: update deps
1 year ago
jay
ae1f7cf269
feat: :wrench: extract the hardcoded admin and mod list out into environment variables
1 year ago
jay
afd2e002df
feat(mover): :sparkles: add new pathfinder Movements
- safeMove without parkour
- aggresiveMove that digs
1 year ago
jay
3c5ec6b360
fix(mover): :pencil2: fix `!go up` moving left instead
1 year ago
jay
b71728e503
feat(mover): :sparkles: add Mule to ridable mobs
1 year ago
jay
d001280383
fix: :goal_net: fix a plugin loading error
While reloading, plugin cache may not be deleted.
This happens when a loaded plugin encounters an error during reload.
This causes a deadlock in the unloading code.
So make sure cache is always deleted:
- ignore when an `unload()` function doesn't exist
- delete cache even if there are no `exports`
1 year ago
jay
f50e388c39
feat: :loud_sound: fix path in plugin reload log so that it actually works
1 year ago
jay
135ce6567b
fix(mover): :bug: attempt to fix move while riding vehicle
Try to give a larger range and more freedom to see if other values work.
Specifically, attempt turning.
No test on vehicles or mobs appear to behave consistently so far.
Tried: pigs, minecarts, horse.
1 year ago
jay
e5803eee59
fix(mover): :pencil2: fix missed variable during rename
1 year ago
jay
1b21fcb096
refactor(mover): :recycle: use a better name for default move
1 year ago
jay
4b3e58ceb3
fix(mover): :bug: attempt to fix move while riding vehicle
This never worked previously.
Using one of `-1 0 1` instead of a larger number appears to work.
1 year ago
jay
8e854a0a2f
refactor(mover): :loud_sound: improve debug logging code
1 year ago
jay
c42a3a2304
feat(mover): :sparkles: add an action to move / run away from an entity or goal
based on `pathfinder` goal `GoalInvert`; behaves slightly strange
1 year ago
jay
b453b7d6bd
feat(mover): :wheelchair: add shortcuts and aliases for the jump command
1 year ago
jay
6b79f1fc60
refactor(plugins): :recycle: change plugin load order
1 year ago
jay
6e1ef5aada
refactor(statemachine): :mute: remove debug
code
1 year ago
jay
e2ae7e5ad2
fix(statemachine): :pencil2: fix SM action function sending Lower instead of Upper case commands
1 year ago
jay
42138a421b
fix(statemachine): :goal_net: fix for lookatPlayer when no or invalid player
Fixes the case when player isn't nearby or entity is invalid due to teleport
1 year ago
jay
aded1e4193
style: :art: fix crlf -> lf for real this time, using .gitattributes
Add a .gitattributes file to permanentyl fix crlf issues.
For explanantion:
https://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/#the-new-system
1 year ago
jay
60394e38eb
refactor: :recycle: replace `add` with `vec3.offset`
This avoids having to import and creat a `new vec3.v()`
1 year ago
jay
22490f7ec1
fix(command): :bug: fix bot address regex returning undefined
Waits till spawn to make sure `bot.username` is definitely initialized
1 year ago
jay
72c4622091
feat(informer): :sparkles: various improvements and fixes
Feat:
- Letter aliases for subcommands.
- Most recent command when no input.
- Start player relative info stub.
Fix:
- Player username not shown.
1 year ago
jay
0757776d8b
feat(command): :art: make botaddress prefix and regex more flexible and configurable
1 year ago
jay
a0ffaf1654
build(typescript): :rotating_light: add @types dep to satisfy typescript errors
Typescript linter had an error that `require` was undefined.
This happened after updating Nodejs from 14.15 to 14.16.
Not sure if this should be a global dep or local
1 year ago
jay
1597acca72
fix(eater): :goal_net: catch async error on full food
Attempt to fix async error returned by `bot.consume`.
Fixed by wrapping in a `try{}` block and using `.catch`.
Still don't know why or how this works 🤷.
1 year ago
jay
1e82045221
build: :arrow_up: update deps
1 year ago