Claude-skill-registry landsandboat-ffxi
Expert knowledge of Final Fantasy XI private server development using LandSandBoat codebase. Use when working with FFXI game mechanics, LandSandBoat source code, database schema, Lua scripting, GM tools, or server administration.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/landsandboat-ffxi" ~/.claude/skills/majiayu000-claude-skill-registry-landsandboat-ffxi && rm -rf "$T"
skills/data/landsandboat-ffxi/SKILL.mdLandSandBoat FFXI Development Skill
Expert knowledge base for Final Fantasy XI private server development using the LandSandBoat codebase.
When to Activate This Skill
Claude should activate this skill when the user's request involves:
- LandSandBoat Development: Server configuration, troubleshooting, or modifications
- FFXI Game Mechanics: Combat systems, status effects, abilities, magic, crafting
- Database Work: Schema design, queries, character data, game data tables
- Lua Scripting: Zone scripts, NPCs, quests, missions, mob behaviors
- GM Tools & APIs: Building admin tools, player management, server utilities
- Network Protocols: FFXI packet structures, IPC, HTTP API integration
- Server Architecture: Understanding multi-process design, ZeroMQ, C++20 implementation
Available Documentation
This skill provides comprehensive reference documentation in the
docs/ directory:
Core Documentation Files
-
architecture-overview.md (24 KB)
- Multi-process server design (login, map, world, search servers)
- Technology stack (C++20, Lua, MariaDB, ZeroMQ)
- Build system and configuration
- Module system for extensions
-
gameplay-systems.md (32 KB)
- Combat system (physical, magical, ranged)
- Entity system (characters, mobs, NPCs, pets, trusts)
- Status effects and buffs
- Quest and mission systems
- Zone management and navigation
- NPC interaction patterns
-
database.md (56 KB) - Primary reference for database work
- Complete schema documentation for 126+ tables
- Table relationships and foreign keys
- Character data structures
- Game data (items, mobs, abilities, spells)
- Economy systems (auction house, synth recipes)
- Binary blob field documentation
-
networking.md (28 KB)
- Network architecture and ports
- IPC via ZeroMQ (localhost:54003)
- Optional HTTP API (disabled by default)
- Packet structures (C2S and S2C)
- Security considerations
-
scripting.md (16 KB)
- Lua integration architecture
- Zone script structure (OnInitialize, OnZoneIn, onTrigger, etc.)
- Entity interaction patterns
- Common scripting patterns and examples
- Enumerations and constants
-
utilities.md (8 KB)
- Python development tools (dbtool.py, announce.py, etc.)
- Database management utilities
- CI/CD tools and testing utilities
Setup Instructions
First-Time Setup
When this skill is first activated, verify if the LandSandBoat reference codebase is available:
- Check for reference directory: Look for
directory in the skill folderreference/ - If missing: Offer to run the setup script to clone the complete LandSandBoat codebase
- Run setup: Execute
from the skill directory./scripts/setup-reference.sh
The reference directory provides:
- Complete C++20 source code (~26% of codebase)
- All 297 zone Lua scripts (~63% of codebase)
- 126+ SQL schema files
- Python development tools
- Configuration examples
Path References
All documentation and reference paths use the pattern:
landsandboat-skill/path/to/file
Examples:
- Database schema referencelandsandboat-skill/docs/database.md
- Zone C++ implementationlandsandboat-skill/reference/src/map/zone.cpp
- Zone Lua scriptslandsandboat-skill/reference/scripts/zones/
Working with This Skill
Strategy for Different Tasks
Building GM Tools or APIs
- Start with architecture: Read
to understand server processesdocs/architecture-overview.md - Database access: Reference
for schema (tables, relationships, constraints)docs/database.md - Network options: Check
for:docs/networking.md- Direct database access (most common)
- HTTP API integration (if enabled)
- ZeroMQ IPC (for advanced server integration)
- Examples: Review
for Python tool patternsreference/tools/*.py
Recommended stack: TypeScript + TanStack Query for modern API development
Lua Scripting
- Patterns: Read
for architecture and common patternsdocs/scripting.md - Reference code: Browse
for real examplesreference/scripts/zones/ - Enumerations: Check
for game constantsreference/scripts/enum/ - Globals: Review
for shared functionsreference/scripts/globals/
Understanding Game Mechanics
- Overview: Start with
for high-level conceptsdocs/gameplay-systems.md - C++ implementation: Reference
for core engine logicreference/src/map/ - Lua formulas: Check
for damage calculations, status effectsreference/scripts/globals/ - Database data: Query game data tables documented in
docs/database.md
Database Design & Queries
- Schema reference: Use
as primary reference (56 KB, comprehensive)docs/database.md - Table relationships: Understand foreign keys (e.g.,
→charid
)chars.charid - Binary blobs: Character missions, abilities, key items stored as binary (see schema docs)
- Constraints: Respect game limits (inventory slots, stacking, job restrictions)
- Transactions: Always use transactions for multi-table modifications
Network Protocol & Packets
- Architecture: Read
for multi-server communicationdocs/networking.md - Packet definitions: Reference
for C++ structuresreference/src/map/packets/ - IPC patterns: Check
for message typesreference/src/common/ipc.h - Security: Note that IPC is localhost-only, HTTP API disabled by default
Important Considerations
Data Integrity
- Character data has complex interdependencies across multiple tables
- Binary blob fields (missions, abilities) require careful parsing
- Always backup database before bulk operations
- Test on development environment first
Game Balance
- Server rates configured in
reference/settings/default/main.lua - Era-specific settings affect gameplay (level caps, job abilities, expansion content)
- Use module system for customizations without modifying core
Security
- Database credentials in
reference/settings/default/network.lua - IPC bound to localhost only (no external access)
- HTTP API disabled by default - requires explicit enabling
- DDoS protection settings available in network config
Performance
- Lua scripts are hot-reloadable (no server restart needed)
- Optimize database queries (use indexed columns)
- ZeroMQ provides high-performance IPC
- Multiple map servers can run for load distribution
Common Use Cases
Player Management
- Query
table for character datachars - Modify stats, inventory, position
- Track sessions in
accounts_sessions
Item Distribution
- Insert into
with proper item IDschar_inventory - Respect stacking limits and container slots
- Validate items exist in
tableitem_basic
Server Announcements
- Use
reference/tools/announce.py - Or integrate with World Server IPC
Economy Monitoring
- Query
for transactionsauction_house - Track price trends and market activity
- Check
for currency trackingchar_points
World State Management
- Conquest system tables
- Campaign and besieged status
- Zone weather and time-of-day
Additional Resources
- LandSandBoat Repository: https://github.com/LandSandBoat/server
- GitHub Wiki: 48+ pages on installation, configuration, development
- Module Development: Guides for Lua, C++, and SQL modules
- Community Discord: Active development community
Debugging and Troubleshooting
If Claude isn't using this skill effectively:
- Verify skill activation: Check that request mentions FFXI or LandSandBoat
- Documentation access: Ensure
directory is readabledocs/ - Reference code: Run setup script if
directory is missingreference/ - Specific queries: Provide context (e.g., "using LandSandBoat" or "FFXI private server")
Version Information
- LandSandBoat Version: Latest stable (reference cloned from main branch)
- Skill Version: 1.0.0
- Last Updated: 2025-11-05
- Documentation Coverage: ~164 KB across 6 primary documentation files