= 创作分享 =
服务端讨论
Fabric端carpet假人控制问题
Ray_Amazing

Fabric端carpet假人控制问题

Ray_Amazing 于 2024-2-8 16:38 ( 9月前 ) 发表在 [Fabric] 分类。 [复制链接] [只看楼主] [打印]
1501 1
在服务器后台将player 设为默认 true
但在重启服务器后,会变成false。

Minecraft 1.20.2,FabricLoader 0.14.24
Carpet 1.4.121+v231011
发表于 2024-2-8 16:38:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

回复 | 举报

该帖共收到 1 条回复!
Fungus
本帖最后由 JKfungus 于 2024-2-26 13:53 编辑

请给出您输入的具体命令,我猜您输入的命令可能是
  1. /carpet commandPlayer true
复制代码
这是临时改变了 Carpet 的设置,一般来说它也提供了永久更改的命令
  1. /carpet setDefault commandPlayer true
复制代码
…………
然而,如果有些内容无法永久更改:比如调整刷怪上限为100(默认70),则需要命令
  1. /spawn mobcaps set 100
复制代码
在服务器每次重启后该设置都会被重置为默认值,如果想自动变回100,您可以通过数据包来完成。注意,这需要你的游戏版本为1.14及以上。
关于如何编写数据包见数据包 - Minecraft Wiki教程:制作数据包 - Minecraft Wiki,如果您不想查阅,可以遵循下方操作快速制作数据包:

如果你用 Linux 系统:
如果你的地图目录的名字是 world,则把工作目录切换到 ./server/world/datapacks 内,创建文件 s.sh,将以下脚本代码复制进去(可以借助 vim 或类似文本编辑器)
  1. #!/bin/bash
  2. # By Fungus for the answer to https://bbs.mcmod.cn/thread-17528-1-1.html
  3. # Date 2024-2-26
  4. # For Linux in ./world/datapacks

  5. # Check the condition of existing datapacks
  6. if [ -f "./carpet_spawn_mobcaps_reload" ]; then
  7.     echo "Fail to create datapacks: The pack name is occupied"
  8.     exit 1
  9. else
  10.     read -p "Please type in your command, press Enter to contiue:\n" s
  11. fi

  12. # Build datapack
  13. mkdir carpet_spawn_mobcaps_reload
  14. cd carpet_spawn_mobcaps_reload
  15. echo "{\"pack\": {\"pack_format\": 4, \"description\": \"Contain only one command\"}}" > pack.mcmeta

  16. # Write function
  17. mkdir -p "./data/minecraft/functions"
  18. cd "./data/minecraft/functions"
  19. echo $s > spawn_mobcaps_reset.mcfunction

  20. # Write function tag
  21. cd ..
  22. mkdir -p "./tags/functions"
  23. cd "./tags/functions"
  24. echo "{\"replace\": false, \"values\": [\"minecraft:spawn_mobcaps_reset\"]}" > load.json

  25. # Succeed
  26. echo "Datapack was built successfully!"
复制代码
输入命令 sh s.sh ,然后输入一条你需要每次开服都会自动运行一次的命令(不要斜杠),按下 Enter 键。之后可以输入 rm s.sh 删除脚本。最后在游戏后台输入 reload 命令,如果出现有关版本的警告,忽略并继续执行即可。

如果你用 Windows 系统:
如果你的地图目录的名字是 world,则把工作目录切换到 .\server\world\datapacks 内,记事本创建文件 s.txt,将以下脚本代码复制进去
  1. @Echo off
  2. REM By Fungus for the answer to https://bbs.mcmod.cn/thread-17528-1-1.html
  3. REM Date 2024-2-26
  4. REM For Windows in .\world\datapacks

  5. REM Check the condition of existing datapacks
  6. if exist "carpet_spawn_mobcaps_reload" (
  7.     echo Fail to create datapacks: The pack name is occupied
  8.     exit /b 1
  9. ) else (
  10.     set /p "s=Please type in your command, press Enter to continue: "
  11. )

  12. REM Build datapack
  13. mkdir carpet_spawn_mobcaps_reload
  14. cd carpet_spawn_mobcaps_reload
  15. echo {"pack": {"pack_format": 4, "description": "Contain only one command"}} > pack.mcmeta

  16. REM Write function
  17. mkdir "data\minecraft\functions"
  18. cd "data\minecraft\functions"
  19. echo %s% > spawn_mobcaps_reset.mcfunction

  20. REM Write function tag
  21. cd ..
  22. mkdir "tags\functions"
  23. cd "tags\functions"
  24. echo {"replace": false, "values": ["minecraft:spawn_mobcaps_reset"]} > load.json

  25. REM Succeed
  26. echo Datapack was built successfully!
复制代码
把文件重命名为 s.bat ,双击该文件,然后输入一条你需要每次开服都会自动运行一次的命令(不要斜杠),按下 Enter 键。之后可以删除该脚本。最后在游戏后台输入 reload 命令,如果出现有关版本的警告,忽略并继续执行即可。
发表于 2024-2-26 00:14:42 | 只看该作者

回复 | 举报

百科目前不允许匿名发帖哦~ 请先 [ 登陆 ][ 注册 ] 吧~

本版积分规则

发新帖
  • 回复
  • 点评
  • 评分

[ MC百科(mcmod.cn) 除另有声明,所有开放公共编辑的内容均使用 BY-NC-SA 3.0 协议 ]

Minecraft百科CC协议
快速回复 返回顶部 返回列表