Stellar Aura - Pixelmon Aura Effects

A server-side Pixelmon aura system with 55 customizable effects, persistent Pokémon support, automatic rare spawns, commands, permissions, and no required client mod.

Stellar Aura

Stellar Aura is a single server-side NeoForge 1.21.1 mod that replaces the legacy EntityParticles 3.1.1 + ParticlesAddon 1.1.4 stack. It targets Pixelmon 9.3.16, requires Java 21, and uses only vanilla particle packets, so players do not install a companion client mod.

The old combination supplied persistent effects, aura/remover items, commands, 27 fixed aura definitions, a 1-in-8192 Pixelmon aura roll, weighted Pixelmon spec mutations, spawn announcements, and capture announcements. Stellar Aura preserves those behaviors and identities while moving storage, commands, particles, permissions, item data, and Pixelmon events to current APIs.

Included catalog

The first launch creates 55 editable, working definitions under config/StellarAura/auras/premade/. They are never overwritten.

Legacy identities:

americanangelicattractblizzardchristmasdemonicdraconiceastereternalexplosionfireghoulgrasshypnoticpoopportalrhythmsandstormshadow_formsmokeyspellboundtoxictwilightvolcanicwateryin_yangzombie.

New identities:

auroracelestialcosmicgalaxynebulasolarlunarvoidenderoceanicstormthunderlordnaturesakurafairyroyalphoenixdragon_soulfrostfireblood_mooncyberrainbowbeesculkemeraldinfernalprismserenity.

Every preset is a normal config file. It is not privileged or hardcoded at render time, so an admin can clone it, replace every layer, or disable it.

What admins can configure

Aura definitions are .yml or .yaml files anywhere below config/StellarAura/auras/. The generated config/StellarAura/examples/kitchen-sink-aura.yml documents every field.

Each aura supports:

  • an ID, enabled state, formatted or gradient display name, description, categories, and optional permission;
  • arbitrary item material, name, lore, glint, custom model data, consumption, cooldown, owner checks, hand policy, and replace/add/toggle behavior;
  • generic living entities, all entities, Pixelmon-only targets, players, wild/owned Pokémon, exact entity allow/deny globs, scoreboard-tag requirements, invisibility behavior, and glowing;
  • multiple simultaneous auras per entity and an arbitrary number of named visual layers, bounded by global safety limits;
  • per-layer particle registry ID, geometry, count, interval, phase, anchor, XYZ offset/scale, radius, height, turns, rotation, tilt, thickness, yaw/pitch following, mirroring, entity-size scaling, and long-distance packets;
  • bob, pulse, jitter, velocity, spread, speed, RGB/transition colors, dust size, block/item payloads, sculk roll, shriek delay, viewer mode, and view distance;
  • moving/stationary, grounded/airborne, in-water/out-of-water, and alive conditions;
  • automatic Pixelmon assignment weight and chance; Pixelmon match/apply specs; dimension, biome, height, time, weather, moon phase, and light filters;
  • apply/remove/random-spawn/capture command lists, player messages, sounds, volume, pitch, and placeholders.

Supported shapes:

pointcloudrainringhalodiscspheresphere_shellspiralhelixdouble_helixdnavortextoruscrownheartwingsrunepentagramstarcubecylinderconefountaincomettrailwaveorbitatomgalaxylotusbutterflysnowflakephoenixlightningconstellationbeamburst, and infinity.

Vanilla simple particles work by registry ID. dustdust_color_transitionblockblock_markerfalling_dustitementity_effectsculk_charge, and shriek also consume their corresponding payload fields.

Persistence

Generic entities use a serialized NeoForge entity attachment. Pokémon also store the same state in Pokemon#getPersistentData, so auras survive capture, party/PC storage, server restarts, and later send-out. State is immutable and may contain multiple deduplicated aura IDs plus actor, timestamp, and source metadata.

Unknown IDs remain stored by default. This lets an admin temporarily remove or rename a definition without destructively erasing entity data.

Automatic Pixelmon auras

The default random roll remains 1 in 8192. The original addon’s weighted spec mutations are preserved in random-spawns.pixelmon-modifiers and are fully editable. Eligible aura selection is weighted and can be constrained per definition.

Pixelmon 9.3.16 gender specifications use femalemale, or none. Stellar Aura 1.0.1 also expands the legacy g:fg:m, and g:n forms automatically for existing configs. Every configured match/apply specification is exception-contained: Pixelmon parser failures are logged once and skipped instead of being allowed to crash the server tick thread.

Randomly assigned auras are written to both the world entity and its underlying Pokémon before capture. Capture and send-out events therefore use one consistent state rather than trying to match replacement entity UUIDs.

Performance controls

The renderer tracks only aura-bearing entities and periodically repairs its index. It does not scan every entity every render tick.

Global controls include render and rescan intervals, view distance, tracked entities per level, rendered entities per tick, particle packets per tick, layers per aura, and auras per entity. Distance and viewer filters run before packet creation. Adaptive throttling scales both packet and entity budgets down when the server’s smoothed tick time exceeds the configured threshold.

/aura stats exposes current tracking, preview, packet, render, and throttle counters.

Commands

Aliases are /aura/auras/stellaraura, and /entityparticles.

Command Purpose
/aura list [page] List enabled IDs.
/aura info <aura> Inspect catalog metadata.
/aura give <players> <aura> [amount] Give configured applicator items.
/aura give-remover <players> [amount] Give remover items.
/aura set <entities> <aura> [replace|add|toggle] Assign an aura with selectors.
/aura random <entities> Assign a compatible random aura.
/aura remove <entities> [aura|all] Remove one or all assignments.
/aura copy <source> <targets> Copy the complete stacked state.
/aura inspect <entity> Show current IDs.
/aura preview <aura> [seconds] Non-persistent preview on the command player.
/aura reload Atomically reload global, message, and aura files and rebuild tracking.
/aura validate Show schema/registry warnings.
/aura stats Show renderer counters and throttling.

Dynamic Brigadier suggestions are generated from the current catalog.

Permissions

Core nodes are:

  • stellar_aura.command.liststellar_aura.command.infostellar_aura.item.use — everyone by default;
  • stellar_aura.command.give.set.remove.random.copy.inspect.preview.reload.validate.stats — operators by default.

An aura’s permission is registered as a NeoForge permission node and can be managed by a compatible provider such as LuckPerms. New node strings require a restart so NeoForge can gather them; all other edits support live reload.

Placeholders

Commands and messages support %player%%player_uuid%%entity%%entity_uuid%%entity_type%%aura%%display%%world%%x%%y%%z%%biome%%pokemon%, and %pokemon_uuid% where available.

Commands run from the server’s suppressed-output console source. Definition messages are sent to the applying player. Built-in spawn and capture messages broadcast when enabled.

The Stellar Aura - Pixelmon Aura Effects Team

profile avatar
  • 1
    Followers
  • 8
    Projects
  • 14.8K
    Downloads

More from spintowinlolView all