mirror of
https://github.com/tanyaofei/minecraft-fakeplayer.git
synced 2025-09-14 11:16:46 +08:00
update README.md
This commit is contained in:
parent
0636200c36
commit
07f447bdd3
27
README.md
27
README.md
@ -14,14 +14,16 @@
|
|||||||
|
|
||||||
## 特性
|
## 特性
|
||||||
|
|
||||||
1. 这个假人有点"真", 与真实玩家一致, 可以保持区块的刷新和怪物生成, 距离取决于服务器设置的模拟距离
|
1. 你可以召唤假人来帮你保持区块加载、怪物刷新
|
||||||
2. 假人的原生数据档案、成就数据不会存档,但第三方的档案还会存在
|
2. 大部份命令都可以对这些假人生效,因为他们对于服务器来说就是"真实的"玩家, 如 `kick`, `ban`, `res padd`。
|
||||||
|
3. 你可以使用假人的背包来存放物品。
|
||||||
|
4. 你可以控制假人执行一些动作比如: 跳跃、攻击、进食、睡觉等等。不仅如此,你还可以将这些行为设置为周期性的。
|
||||||
|
5. 发挥你的想象~
|
||||||
|
|
||||||
## 前置
|
|
||||||
|
|
||||||
### 必须前置:
|
# 前置插件:
|
||||||
|
|
||||||
- CommandAPI
|
- [CommandAPI](https://commandapi.jorel.dev)
|
||||||
|
|
||||||
## 命令
|
## 命令
|
||||||
|
|
||||||
@ -55,7 +57,7 @@
|
|||||||
| /fp jump | 跳跃 | fakeplayer.command.jump | |
|
| /fp jump | 跳跃 | fakeplayer.command.jump | |
|
||||||
| /fp turn | 转身 | fakeplayer.command.turn | |
|
| /fp turn | 转身 | fakeplayer.command.turn | |
|
||||||
| /fp look | 看向指定位置 | fakeplayer.command.look | |
|
| /fp look | 看向指定位置 | fakeplayer.command.look | |
|
||||||
| /fp move | 移动 | fakeplayer.command.mvoe | |
|
| /fp move | 移动 | fakeplayer.command.move | |
|
||||||
| /fp ride | 骑乘 | fakeplayer.command.ride | |
|
| /fp ride | 骑乘 | fakeplayer.command.ride | |
|
||||||
| /fp sneak | 潜行 | fakeplayer.command.sneak | |
|
| /fp sneak | 潜行 | fakeplayer.command.sneak | |
|
||||||
| /fp swap | 交换主副手物品 | fakeplayer.command.swap | |
|
| /fp swap | 交换主副手物品 | fakeplayer.command.swap | |
|
||||||
@ -158,11 +160,6 @@ _此外,假人是一个模拟玩家,因此可以被任何指令所识别比
|
|||||||
|
|
||||||
# 常见问题(很重要务必要看)
|
# 常见问题(很重要务必要看)
|
||||||
|
|
||||||
### 由于 BC 跨服同时存在相同 UUID 的假人导致的背包复制 bug
|
|
||||||
|
|
||||||
在 `0.1.8` 以前的版本,假人的 UUID 是通过名称生成的,这意味着跨服存在相同名称的假人将会具有相同的
|
|
||||||
UUID,这可能导致跨服同步背包导致物品复制,请尽快升级为 `0.1.8` 之后的版本。
|
|
||||||
|
|
||||||
## 假人不吸引仇恨
|
## 假人不吸引仇恨
|
||||||
|
|
||||||
默认情况下假人是开启无敌模式的, 需要玩家自行通过 `/fp config set invulnerable false` 关闭无敌模式才会吸引仇恨。
|
默认情况下假人是开启无敌模式的, 需要玩家自行通过 `/fp config set invulnerable false` 关闭无敌模式才会吸引仇恨。
|
||||||
@ -225,14 +222,6 @@ allow-commands:
|
|||||||
如果你的服务器 `spigot.yml` 里的 `bungeecord` 设置值为 `true`, 那么此插件将会进行兼容,
|
如果你的服务器 `spigot.yml` 里的 `bungeecord` 设置值为 `true`, 那么此插件将会进行兼容,
|
||||||
只要玩家在任意一个服务器里游玩,即使切换服务器他创建的假人都不会触发`跟随下线
|
只要玩家在任意一个服务器里游玩,即使切换服务器他创建的假人都不会触发`跟随下线
|
||||||
|
|
||||||
## 会支持 Folia 吗?
|
|
||||||
|
|
||||||
有计划,但可能比较久。之前尝试过但发现要兼容的内容有点多,持续关注一下~
|
|
||||||
|
|
||||||
## 维护计划
|
|
||||||
|
|
||||||
由于插件特性,无法实现多版本兼容,每一个版本都需要单独维护。但因作者精力有限(_不是肾虚_
|
|
||||||
),目前暂定仅跟随维护最新的两个核心版本。目前是 `1.20.1` 和 `1.20.2`。
|
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
203
README_en.md
203
README_en.md
@ -1,59 +1,170 @@
|
|||||||
# FakePlayer
|
# FakePlayer - Fake Player Plugin
|
||||||
|
|
||||||
This plugin is inspired by `Carpet`. With this plugin, you can spawn fake players to keep chunk loading and mod
|
[Chinese](README.md)
|
||||||
spawning.
|
|
||||||
|
|
||||||
## Version Supported
|
This plugin can help you to spawn fake players, with them, you can keep chunk loading and monster spawning. They just looks real players to Server.
|
||||||
|
|
||||||
Only for `Paper` and it's downstream such as `Purpur`.
|
## Supported Versions
|
||||||
|
|
||||||
+ Version 0.2.x is supported for Minecraft 1.20 ~ 1.20.4
|
Only supports `Paper` and derivatives like (`Purpur`).
|
||||||
+ Version 0.3.x is supported for Minecraft 1.21
|
|
||||||
|
|
||||||
|
Version 0.2.9 supports Minecraft versions 1.20.1 - 1.20.4. Please check the Release for historical versions.
|
||||||
|
|
||||||
## Depend:
|
Version 0.3.x supports Minecraft version 1.21.1 and later.
|
||||||
|
|
||||||
- CommandAPI
|
## Features
|
||||||
|
|
||||||
|
1. You can spawn fake players which look like real players to server.
|
||||||
|
2. Most commands work for them, such as `ban`, `res padd`, `kick`.
|
||||||
|
3. You can open their backpack and put your stuff into it.
|
||||||
|
4. You can have them perform actions like moving, jumping, attacking, and eating. What's better? You can make it periodical!
|
||||||
|
5. Let your imagination run wild, have them do more things.
|
||||||
|
|
||||||
|
## Requirement plugins:
|
||||||
|
|
||||||
|
- [CommandAPI](https://commandapi.jorel.dev)
|
||||||
|
|
||||||
## Commands
|
## Commands
|
||||||
|
|
||||||
| 命令 | 作用 | 权限 |
|
| Command | Function | Permission | Note |
|
||||||
|---------------|---------------------------------------------------|------------------------------|
|
|-----------------|------------------------------------------|-------------------------------|---------------------------------------|
|
||||||
| /fp spawn | spawn a fake player | fakeplayer.command.spawn |
|
| /fp spawn | Spawn fake player | fakeplayer.command.spawn | |
|
||||||
| /fp kill | remove a fake player | fakeplayer.command.kill |
|
| /fp kill | Kill fake player | fakeplayer.command.kill | |
|
||||||
| /fp killall | remove all fake players | OP |
|
| /fp killall | Kill all fake players on the server | OP | |
|
||||||
| /fp select | select a fake player | fakeplayer.command.select |
|
| /fp select | Select fake player | fakeplayer.command.select | Appears only when player fake count >= 2 |
|
||||||
| /fp selection | show your selection | fakeplayer.command.selection |
|
| /fp selection | View selected fake player | fakeplayer.command.selection | Appears only when player fake count >= 2 |
|
||||||
| /fp list | show your fake players | fakeplayer.command.list |
|
| /fp list | View summoned fake players | fakeplayer.command.list | |
|
||||||
| /fp distance | show the distance between you and the fake player | fakeplayer.command.distance |
|
| /fp distance | View distance to fake player | fakeplayer.command.distance | |
|
||||||
| /fp drop | drop one of items in hand | fakeplayer.command.drop |
|
| /fp drop | Drop held item | fakeplayer.command.drop | |
|
||||||
| /fp dropstack | drop all of items in hand | fakeplayer.command.dropstack |
|
| /fp dropstack | Drop entire stack held item | fakeplayer.command.dropstack | |
|
||||||
| /fp dropinv | drop all items in inventory | fakeplayer.command.dropinv |
|
| /fp dropinv | Drop all items in inventory | fakeplayer.command.dropinv | |
|
||||||
| /fp skin | copy skin from another player | fakeplayer.command.skin |
|
| /fp skin | Copy player skin | fakeplayer.command.skin | Non-online players have a 60-second cooldown |
|
||||||
| /fp invsee | open the inventory of a fake player | fakeplayer.command.invsee |
|
| /fp invsee | View fake player inventory | fakeplayer.command.invsee | Right-clicking on player has same effect |
|
||||||
| /fp sleep | sleep | fakeplayer.command.sleep |
|
| /fp sleep | Sleep in bed | fakeplayer.command.sleep | |
|
||||||
| /fp wakeup | wakeup | fakeplayer.command.wakeup |
|
| /fp wakeup | Wake up from bed | fakeplayer.command.wakeup | |
|
||||||
| /fp status | show the status of a fake player | fakeplayer.command.status |
|
| /fp status | View player status | fakeplayer.command.status | |
|
||||||
| /fp respawn | respawn a dead fake player | fakeplayer.command.respawn |
|
| /fp respawn | Respawn dead fake player | fakeplayer.command.respawn | Appears only when server config does not kick on fake player death |
|
||||||
| /fp tp | teleport to a fake player | fakeplayer.command.tp |
|
| /fp tp | Teleport to fake player | fakeplayer.command.tp | |
|
||||||
| /fp tphere | teleport a fake player to you | fakeplayer.command.tphere |
|
| /fp tphere | Teleport fake player to self | fakeplayer.command.tphere | |
|
||||||
| /fp tps | teleport and swap you and a fake player | fakeplayer.command.tps |
|
| /fp tps | Swap positions with fake player | fakeplayer.command.tps | |
|
||||||
| /fp set | set config for a fake player | fakeplayer.command.set |
|
| /fp set | Change fake player configuration | fakeplayer.command.set | |
|
||||||
| /fp config | set default config | fakeplayer.command.config |
|
| /fp config | Change default fake player configuration | fakeplayer.command.config | |
|
||||||
| /fp expme | transfer experience | fakeplayer.command.expme |
|
| /fp expme | Absorb fake player experience | fakeplayer.command.expme | |
|
||||||
| /fp attack | attack | fakeplayer.command.attack |
|
| /fp attack | Attack | fakeplayer.command.attack | |
|
||||||
| /fp mine | dig | fakeplayer.command.mine |
|
| /fp mine | Mine | fakeplayer.command.mine | |
|
||||||
| /fp use | use/interact/place | fakeplayer.command.use |
|
| /fp use | Use/Interact/Place | fakeplayer.command.use | |
|
||||||
| /fp jump | jump | fakeplayer.command.jump |
|
| /fp jump | Jump | fakeplayer.command.jump | |
|
||||||
| /fp turn | turn | fakeplayer.command.turn |
|
| /fp turn | Turn around | fakeplayer.command.turn | |
|
||||||
| /fp look | look | fakeplayer.command.look |
|
| /fp look | Look at specified location | fakeplayer.command.look | |
|
||||||
| /fp move | move | fakeplayer.command.mvoe |
|
| /fp move | Move | fakeplayer.command.mvoe | |
|
||||||
| /fp ride | ride | fakeplayer.command.ride |
|
| /fp ride | Ride | fakeplayer.command.ride | |
|
||||||
| /fp sneak | sneak | fakeplayer.command.sneak |
|
| /fp sneak | Sneak | fakeplayer.command.sneak | |
|
||||||
| /fp swap | swap items between hands | fakeplayer.command.swap |
|
| /fp swap | Swap main and off-hand items | fakeplayer.command.swap | |
|
||||||
| /fp hold | change hold slot | fakeplayer.command.hold |
|
| /fp hold | Hold corresponding hotbar item | fakeplayer.command.hold | |
|
||||||
| /fp cmd | execute command as the fake player | fakeplayer.command.cmd |
|
| /fp cmd | Execute command | fakeplayer.command.cmd | Allows execution of commands defined in config file without permission |
|
||||||
| /fp reload | reload config | OP |
|
| /fp reload | Reload config file | OP | |
|
||||||
|
|
||||||
|
_In addition, fake players are recognized by any command, such as `kick`, `tp`, `ban`, etc._
|
||||||
|
|
||||||
|
## Permissions
|
||||||
|
|
||||||
|
In fact, each command has its permission. But you still can use the following permission packs.
|
||||||
|
|
||||||
|
### Basic Command Group Permissions
|
||||||
|
|
||||||
|
`fakeplayer.spawn` includes the following permissions:
|
||||||
|
|
||||||
|
- fakeplayer.command.spawn - Create fake player
|
||||||
|
- fakeplayer.command.kill - Kill fake player
|
||||||
|
- fakeplayer.command.list - List fake players
|
||||||
|
- fakeplayer.command.distance - View distance
|
||||||
|
- fakeplayer.command.select - Select fake player
|
||||||
|
- fakeplayer.command.selection - View selected fake player
|
||||||
|
- fakeplayer.command.drop - Drop an item
|
||||||
|
- fakeplayer.command.dropstack - Drop entire stack of items
|
||||||
|
- fakeplayer.command.dropinv - Drop all inventory items
|
||||||
|
- fakeplayer.command.skin - Copy skin
|
||||||
|
- fakeplayer.command.invsee - View inventory
|
||||||
|
- fakeplayer.command.status - View status
|
||||||
|
- fakeplayer.command.respawn - Respawn fake player
|
||||||
|
- fakeplayer.command.config - Set default settings
|
||||||
|
- fakeplayer.command.set - Set fake player settings
|
||||||
|
|
||||||
|
### Teleportation Group Permissions
|
||||||
|
|
||||||
|
`fakeplayer.tp` includes the following permissions:
|
||||||
|
|
||||||
|
- fakeplayer.command.tp
|
||||||
|
- fakeplayer.command.tphere
|
||||||
|
- fakeplayer.command.tps
|
||||||
|
|
||||||
|
### Action Control Permissions
|
||||||
|
|
||||||
|
`fakeplayer.action` includes the following permissions:
|
||||||
|
|
||||||
|
- fakeplayer.command.attack - Attack
|
||||||
|
- fakeplayer.command.mine - Mine
|
||||||
|
- fakeplayer.command.use - Use
|
||||||
|
- fakeplayer.command.jump - Jump
|
||||||
|
- fakeplayer.command.sneak - Sneak
|
||||||
|
- fakeplayer.command.look - Look
|
||||||
|
- fakeplayer.command.turn - Turn
|
||||||
|
- fakeplayer.command.move - Move
|
||||||
|
- fakeplayer.command.ride - Ride
|
||||||
|
- fakeplayer.command.swap - Swap main and off-hand items
|
||||||
|
- fakeplayer.command.sleep - Sleep
|
||||||
|
- fakeplayer.command.wakeup - Wake up
|
||||||
|
- fakeplayer.command.hold - Switch hotbar
|
||||||
|
- fakeplayer.config.replenish - Auto-replenish
|
||||||
|
- fakeplayer.config.replenish.chest - Can replenish from nearby chests when auto-replenishing
|
||||||
|
|
||||||
|
If your server does not restrict various player commands, you can use this directly.
|
||||||
|
`fakeplayer.basic` includes all secure permissions, except for `/fp cmd` commands.
|
||||||
|
|
||||||
|
## Interaction
|
||||||
|
|
||||||
|
+ Right-clicking on a fake player allows you to view their inventory.
|
||||||
|
|
||||||
|
## Player Personalized Configuration
|
||||||
|
|
||||||
|
This is the personalized configuration of each player's created fake player. After modifying the configuration, the next time a fake player is created, it will take effect.
|
||||||
|
|
||||||
|
Command examples:
|
||||||
|
|
||||||
|
+ `/fp config list` - View all personalized configurations
|
||||||
|
+ `/fp config set collidable false` - Set personalized configuration
|
||||||
|
|
||||||
|
| Configuration Item | Note |
|
||||||
|
|--------------------|---------------------------------------------|
|
||||||
|
| collidable | Whether collision box is enabled |
|
||||||
|
| invulnerable | Whether invincible mode is enabled |
|
||||||
|
| look_at_entity | Automatically look at nearby attackable entities (including players), can be combined with `attack` to automatically fight monsters |
|
||||||
|
| pickup_items | Whether to pick up items |
|
||||||
|
| skin | Whether to use your skin |
|
||||||
|
| replenish | Whether to auto-replenish |
|
||||||
|
|
||||||
|
## Developer Recommendations
|
||||||
|
|
||||||
|
1. By default, fake players are generated based on the summoner's name, and UUIDs are generated based on the fake player's name. It is not recommended to set `name-template` in the server configuration because it will make fake players public, and players may have risks using commands like `res`.
|
||||||
|
|
||||||
|
2. It is not recommended to directly give players the `fakeplayer.command.cmd` permission, as this allows players to execute any command that fake players have permission to. It is recommended to allow players to execute limited commands through a whitelist command in the configuration file.
|
||||||
|
|
||||||
|
# FAQs (Important - Must Read)
|
||||||
|
|
||||||
|
### Bug with duplicate UUID due to the existence of the same UUID of fake players across servers
|
||||||
|
|
||||||
|
In versions before `0.1.8`, the UUID of fake players was generated based on their name. This means that if there are fake players with the same name across servers, they will have the same UUID, which may lead to the synchronization of their backpacks across servers and item duplication. Please upgrade to version `0.1.8` or later as soon as possible.
|
||||||
|
|
||||||
|
## Fake players do not attract aggression
|
||||||
|
|
||||||
|
By default, fake players are in invincible mode. Players need to manually turn off invincible mode with `/fp config set invulnerable false` to attract aggression. After turning it off, they will receive hunger and health effects. You may need to use `res` or beacon to ensure the fake player's `hunger` and `health`.
|
||||||
|
|
||||||
|
## Fake players automatically log out after a while
|
||||||
|
|
||||||
|
This may be because plugins like `AutheMe` detect that fake players have not logged in for a long time. You can include the login command in the configuration file's `self-commands` to prevent the plugin from kicking out players for being idle:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
# Note: Be careful with password complexity, or AuthMe may deny usage.
|
||||||
|
self-commands:
|
||||||
|
- '/register abc123! abc123!'
|
||||||
|
- '/login abc123!'
|
||||||
|
Loading…
Reference in New Issue
Block a user