promotional bannermobile promotional banner

GlymeraFakePlayers

Populate your server with fake players: randomized player skins, NPC wandering, chat simulation, tab list presence, and built-in query support for all major server list protocols. Realistic 24h day/night player count curve.

File Details

GlymeraFakePlayers-7.0.0.jar

  • R
  • Jun 11, 2026
  • 33.95 KB
  • 45
  • 0.5

File Name

GlymeraFakePlayers-7.0.0.jar

Supported Versions

  • 0.5

GlymeraFakePlayers - Changelog

v7.0.0 (2026-06-11)

Added

  • Physical NPCs (collision): Fake players now have a physical body. Walking into them gently pushes you apart - just like bumping into a real player. They remain fully invulnerable (no damage, no knockback, no hurt reaction). New config setting npcCollision:
    • "soft" (default) - gentle push apart, feels like a real player
    • "hard" - solid obstacle
    • "off" - old behavior, walk-through Collision is enforced client-side via the engine's native hitbox collision system - no server-side position correction involved.

Changed

  • Data directory moved to mods/: All data now lives in mods/de.glymera_GlymeraFakePlayers/ (the official per-plugin data directory) instead of plugins/GlymeraFakePlayers/. Existing installations are migrated automatically on first start: your config.json is adopted unchanged and the old folder is renamed to GlymeraFakePlayers_migrated.

Fixed

  • Config no longer resets itself: Previously, a syntax error in a hand-edited config.json (a missing comma, a stray bracket, a Windows editor BOM) was silently swallowed - and the plugin then overwrote the file with defaults, wiping all your edits. Editing bot names or counts could feel impossible. Now:
    • A broken config.json is never overwritten - your edits stay in the file.
    • A clear error with the exact line/position is written to the server log.
    • Fix the file and run /fp reload (or restart) - no data lost.
    • UTF-8 BOM from Windows editors is tolerated.

v2.0.0 (2026-04-11)

Bug Fixes

  • Chunk Load Crash (Scale Bug): Fixed a Hytale engine bug where Model.ModelReference.DEFAULT_PLAYER_MODEL has scale = -1.0f, causing "Scale must be greater than 0" errors when chunks containing NPC entities were loaded. Fix: Reflection override sets DEFAULT_PLAYER_MODEL.scale = 1.0f at plugin startup.
  • NPC Duplication: Fixed an issue where 100+ fake player NPCs would accumulate in the world after multiple player joins or world changes. Root cause: onPlayerJoin() spawned new NPCs without removing existing ones, and transient spawned flags reset on server restart. Fix: Added forEachChunk scan that removes all stale GlymeraFakePlayer NPCs before spawning a new batch.
  • Shutdown Cleanup: NPCs are now properly despawned during plugin shutdown to prevent them from being persisted into chunk data.

Technical Details

  • setup() now patches DEFAULT_PLAYER_MODEL.scale via reflection before any NPC spawning occurs
  • onPlayerJoin() iterates all chunks with NPCEntity components, identifies stale NPCs by role name "GlymeraFakePlayer", and removes them via store.removeEntity(ref, RemoveReason.REMOVE) before calling spawnAllFakePlayers()
  • shutdown() iterates all fake players and removes their entities from all worlds
  • onPlayerDisconnect() marks all NPCs as unspawned when the last real player leaves

v1.0.0 (2026-04-08)

  • Initial release
  • Fake player NPCs with configurable names and skins
  • Dynamic player count with day/night curve
  • Tab list integration
  • Query protocol support (Minecraft-compatible)
  • Chat simulation with configurable messages