Links
Tags
Creators
Details
Licensed GPL-3.0-or-later
Published 5 months ago
Updated 4 months ago
All versions
1.1.1
Release
Better /summon 1.1.14 months ago 136
Uploaded by
Compatibility
Minecraft: Java Edition
1.21.x
Platform
Fabric
Supported environments
Server-side
Singleplayer
Changes
Better /summon 1.1.1
Hardening pass on the batched-spawn path. No new commands, no syntax changes — everything you already type still works, it just behaves better under stress.
Fixed
- Queue overflow. The batched-spawn queue could grow without bound if a command block or RCON client fired long
/summon … <count>calls rapidly. The queue is now capped at 20 pending batched tasks and returns a clear command error when full instead of silently consuming memory. - Stale task carry-over between single-player sessions. Pending tasks from a previous integrated-server session could point at a world that no longer exists. The queue is now reset on
SERVER_STARTING(not only on stop), and every batch re-verifies the source server is still running before processing the next tick. - Redundant empty-NBT clones. When no
<nbt>argument was given, the mod was still deep-copying an empty NBT compound for every entity — 100 throwaway allocations per tick at full batch speed. It now reuses a shared empty compound on the common path.
Changed
- Documented the
ACTIVE_TASKSthread-safety contract (server-thread only) so future refactors preserve the invariant. - Rewrote
README.mdwith a full command reference, a description of how batching works, and the guardrails applied to every argument. - Corrected a docs bug: the earlier README claimed
randomusedSecureRandom. It does not — it usesThreadLocalRandom(uniform, non-cryptographic). Same behaviour, accurate description.
Unchanged
- All six command overloads (
/summon <entity> <count>,… random <min> <max>, the<pos>and<nbt>variants) behave exactly as before for valid input. - Permission level,
1..10_000bounds, andmin > maxerror behaviour are identical. - Server-side only; clients do not need the mod.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:8N3p5cTy:8xbkwrEa"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:8N3p5cTy:8xbkwrEa"
}
