Skip to content

Entity Spawning Commands (DM-Only) #73

Description

@FirebrickRed

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions