8ee8be9cc0
- mc_aigod.py: main watcher script (log tail, RCON, two-call LLM) - Two-call LLM split: qwen3-coder:30b for commands, gemma3:12b for messages - Divine intervention timer (Poisson process, configurable avg/day) - Prayer memory (persistent, last 10 exchanges) - Rolling server log context (last 20 min events) - Live player context (inventory with rarity, health, food, pos, XP) - /pray and bible chat detection (no slash — vanilla 1.21 compatible) - Login notice, bible help system - debug_commands toggle (in-game command display via tellraw) - Auto-fix for transposed give command syntax - JSON repair fallback for truncated LLM responses - Sentence-aware message chunking for long responses - mc-aigod.service systemd unit - mc_aigod_shrink.json example config - README.md full implementation guide - Minecraft_Ai_God.md full design document
3.4 KiB
3.4 KiB
Minecraft Quick Command Reference
RCON — Send a command from CT 644
Server 1 (mc1, port 25575)
ssh pve112 "pct exec 644 -- python3 -c \"
import socket, struct, time
def rcon(cmd):
s = socket.socket(); s.settimeout(5); s.connect(('127.0.0.1', 25575))
def pkt(i,t,p): p=p.encode()+b'\x00\x00'; return struct.pack('<iii',len(p)+8,i,t)+p
s.sendall(pkt(1,3,'REDACTED_RCON')); time.sleep(0.2); s.recv(4096)
s.sendall(pkt(2,2,cmd)); time.sleep(0.2); r=s.recv(4096); s.close(); return r[12:-2].decode()
print(rcon('YOUR COMMAND HERE'))
\""
Server 2 (shrink-world, port 25576)
Same as above but use port 25576 and password REDACTED_RCON.
Player Commands
| Action | Command |
|---|---|
| Teleport player | tp <player> <x> <y> <z> |
| Give item | give <player> <item> <count> |
| Set gamemode | gamemode creative/survival/spectator <player> |
| Get player position | data get entity <player> Pos |
| List online players | list |
| Get world border size | worldborder get |
| Set world border | worldborder set <size> |
| Shrink world border | worldborder add -<amount> <seconds> |
God Kit (1.21 syntax)
give <player> netherite_helmet[enchantments={protection:4,unbreaking:3,mending:1,respiration:3,aqua_affinity:1}]
give <player> netherite_chestplate[enchantments={protection:4,unbreaking:3,mending:1}]
give <player> netherite_leggings[enchantments={protection:4,unbreaking:3,mending:1}]
give <player> netherite_boots[enchantments={protection:4,unbreaking:3,mending:1,feather_falling:4,depth_strider:3}]
give <player> netherite_sword[enchantments={sharpness:5,unbreaking:3,mending:1,looting:3,fire_aspect:2,sweeping_edge:3}]
give <player> bow[enchantments={power:5,unbreaking:3,infinity:1,flame:1,punch:2}]
give <player> netherite_pickaxe[enchantments={efficiency:5,unbreaking:3,mending:1,fortune:3}]
give <player> netherite_axe[enchantments={efficiency:5,unbreaking:3,mending:1,sharpness:5}]
give <player> arrow 64
give <player> golden_apple 64
give <player> totem_of_undying 4
give <player> ender_pearl 16
give <player> cooked_beef 64
Shrinkborder Datapack (in-game, op required)
| Command | Effect |
|---|---|
/function shrinkborder:enable |
Start death-shrinking |
/function shrinkborder:disable |
Stop death-shrinking |
/function shrinkborder:reset |
Reset border to 1000x1000, disable shrinking |
Services on CT 644
# Access CT
ssh pve112 "pct exec 644 -- bash"
# God mode watcher (mc1 - slingshooter08 auto creative)
systemctl start/stop/status mc-godmode.service
# Shrink world kit watcher (shrink-world - auto kit on first join + stats)
systemctl start/stop/status mc-shrink-kit.service
# MCSManager itself
systemctl start/stop/status mcsm-web.service
systemctl start/stop/status mcsm-daemon.service
Datapacks — Deploy to shrink-world server
# From this machine (CT 629), copy a datapack folder to the server
DEST=/opt/mcsmanager/daemon/data/InstanceData/shrinkborder1234567890abcdef12345/world/datapacks/
# Then reload in-game or via RCON:
# datapack enable "file/<packname>"
# reload
Kit Record — Reset a player's first-join kit
ssh pve112 "pct exec 644 -- cat /opt/mcsmanager/daemon/data/InstanceData/shrinkborder1234567890abcdef12345/kit_given.json"
# To reset a specific player (edit the JSON):
ssh pve112 "pct exec 644 -- nano /opt/mcsmanager/daemon/data/InstanceData/shrinkborder1234567890abcdef12345/kit_given.json"