Summary
Create DM-only commands for spawning, managing, and controlling entities in the world. Includes single entity spawning, group spawning, teleportation, removal, and listing.
Phase: 1 - Foundation
Systems: Entity System, DM Tools, Commands
Prerequisites
Goals
/dmentity spawn <id> [name] [location] - Spawn single entity
/dmentity spawngroup <group_id> - Spawn entity group from YAML
/dmentity list - List all spawned entities with locations
/dmentity remove <entity> - Despawn entity
/dmentity teleport <entity> <location> - Move entity
- Tab completion for all entity IDs, group IDs, entity names
- Persistence system (save spawned entities across server restarts)
Cleanup Tasks
- Delete
CustomNPCs/NpcCommands.java - Replace with new /dmentity commands
- Update plugin.yml - Remove old
/spawnnpc command, add /dmentity commands
Command Examples
# Spawn with auto-generated name from pool
/dmentity spawn kobold
> Spawned "Skrix" at your location
# Spawn with custom name
/dmentity spawn town_guard "Marcus the Brave"
> Spawned "Marcus the Brave" at your location
# Spawn at coordinates
/dmentity spawn owlbear ~10 ~0 ~5
> Spawned "Owlbear" at (X, Y, Z)
# Spawn entire group
/dmentity spawngroup kobold_warband
> Spawned 5 entities from group "kobold_warband"
# List all entities
/dmentity list
> 1. Skrix (kobold) at (100, 64, -200)
> 2. Marcus the Brave (town_guard) at (50, 65, 30)
> 3. Owlbear at (110, 64, -195)
# Remove entity
/dmentity remove Skrix
> Removed "Skrix" from the world
# Teleport entity
/dmentity teleport "Marcus the Brave" ~0 ~0 ~10
> Teleported "Marcus the Brave" 10 blocks forward
Tab Completion
/dmentity spawn <TAB> → Shows all entity IDs
/dmentity spawngroup <TAB> → Shows all group IDs
/dmentity remove <TAB> → Shows all spawned entity names
/dmentity teleport <TAB> → Shows all spawned entity names
Persistence
- Save spawned entities to
plugins/jkvttplugin/SpawnedEntities/
- Auto-load on server start
- Track: entity ID, custom name, location, current HP, shop adjustments
Technical Details
Next Steps
After completing this issue, tackle:
Related Issues
Summary
Create DM-only commands for spawning, managing, and controlling entities in the world. Includes single entity spawning, group spawning, teleportation, removal, and listing.
Phase: 1 - Foundation
Systems: Entity System, DM Tools, Commands
Prerequisites
Goals
/dmentity spawn <id> [name] [location]- Spawn single entity/dmentity spawngroup <group_id>- Spawn entity group from YAML/dmentity list- List all spawned entities with locations/dmentity remove <entity>- Despawn entity/dmentity teleport <entity> <location>- Move entityCleanup Tasks
CustomNPCs/NpcCommands.java- Replace with new/dmentitycommands/spawnnpccommand, add/dmentitycommandsCommand Examples
Tab Completion
/dmentity spawn <TAB>→ Shows all entity IDs/dmentity spawngroup <TAB>→ Shows all group IDs/dmentity remove <TAB>→ Shows all spawned entity names/dmentity teleport <TAB>→ Shows all spawned entity namesPersistence
plugins/jkvttplugin/SpawnedEntities/Technical Details
jkvtt.dm(DM-only commands)Next Steps
After completing this issue, tackle:
Related Issues