gaming-and-emulation
Host modded Minecraft servers and play classic games via headless emulation with RAM state reading.
- License 许可
- MIT
- 最近更新
- 2026-11-06
- Stars
- ★ 5
- Forks
- 4
01 前言 Front Matter
- name
- gaming-and-emulation
- author
- Hermes Agent
- license
- MIT
- version
- 1.0.0
- metadata
- { "hermes": { "tags": [ "minecraft", "emulation", "gaming", "pokemon", "modpack" ], "related_skills": [] } }
- platforms
- [ "linux", "macos", "windows" ]
- description
- Host modded Minecraft servers and play classic games via headless emulation with RAM state reading.
03 SKILL.md 正文
Gaming and Emulation
Minecraft Modpack Servers
Host modded Minecraft servers using CurseForge or Modrinth modpacks.
Setup (Docker Recommended)
docker run -d \
-v /data/minecraft:/data \
-e TYPE=CURSEFORGE \
-e CF_SERVER_MOD=/data/modpack.zip \
-p 25565:25565 \
--name mc-server \
itzg/minecraft-server
Modrinth
docker run -d \
-v /data/minecraft:/data \
-e TYPE=MODRINTH \
-e MODRINTH_PROJECT=modpack-slug \
-p 25565:25565 \
itzg/minecraft-server
Management
docker exec mc-server mc-server console # Attach to console
docker exec mc-server mc-server backup # Trigger backup
docker exec mc-server mc-server stop # Graceful stop
Server Properties
Edit /data/server.properties for:
difficulty=hardmax-players=20white-list=true
Backups
Mount a backup volume and use mc-server backup or configure cron inside the container.
Pokemon Player (Headless Emulation)
Play Pokemon (and other Game Boy / GBA games) via a headless emulator with RAM state reading.
Setup
# Install emulator + Python bindings
pip install pyboy
Basic Script
from pyboy import PyBoy
pyboy = PyBoy("pokemon-red.gb")
pyboy.set_emulation_speed(0) # Unlimited speed for training
while pyboy.tick():
# Read RAM state
player_x = pyboy.memory[0xD362]
player_y = pyboy.memory[0xD361]
# Decide action based on state
if player_x < target_x:
pyboy.button_press("right")
else:
pyboy.button_release("right")
RAM Map
Common Pokemon Red/Blue addresses:
0xD163— Party count0xD16B— First Pokemon species0xD18C— First Pokemon HP0xD35D— Current map ID
Use Cases
- Automated grinding / training
- Speedrun routing via state analysis
- AI agent training (reinforcement learning)
Pitfalls
- Save states are emulator-specific; don't mix across versions
- RAM addresses differ between Pokemon versions (Red vs Blue vs Yellow)
- PyBoy requires a display for some features; use
headless=Trueon servers
04 同仓库更多 Skills
blocked-page-recovery
Use when a fetch fails: 403/429, paywall, WAF, bot wall.
writing-plans
Use when creating or updating executable software plans. Keep plans as local files unless the user explicitly asks to register them in Doct.
test-driven-development
TDD: enforce RED-GREEN-REFACTOR, tests before code.
systematic-debugging
4-phase root cause debugging: understand bugs before fixing.
spike
Throwaway experiments to validate an idea before build.
simplify-code
Parallel 3-agent cleanup of recent code changes.