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 inmods/de.glymera_GlymeraFakePlayers/(the official per-plugin data directory) instead ofplugins/GlymeraFakePlayers/. Existing installations are migrated automatically on first start: your config.json is adopted unchanged and the old folder is renamed toGlymeraFakePlayers_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_MODELhasscale = -1.0f, causing "Scale must be greater than 0" errors when chunks containing NPC entities were loaded. Fix: Reflection override setsDEFAULT_PLAYER_MODEL.scale = 1.0fat 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 transientspawnedflags reset on server restart. Fix: AddedforEachChunkscan that removes all staleGlymeraFakePlayerNPCs 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 patchesDEFAULT_PLAYER_MODEL.scalevia reflection before any NPC spawning occursonPlayerJoin()iterates all chunks withNPCEntitycomponents, identifies stale NPCs by role name"GlymeraFakePlayer", and removes them viastore.removeEntity(ref, RemoveReason.REMOVE)before callingspawnAllFakePlayers()shutdown()iterates all fake players and removes their entities from all worldsonPlayerDisconnect()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

