Number Pop Foundations
Floating combat numbers, replicated right: style registry, pooled widgets, per-player filters.
What you'll learn
- Explain the server → replication component → client subsystem flow
- Author a tag-driven style registry and a pooled pop widget
- Broadcast number pops from server code safely
- Filter what each player sees with local player settings
- Position pops with sockets and scale them by camera distance
- Exercise everything with the built-in dev tools
Curriculum
- 1Display-Only, By DesignThe server broadcasts an event; each client filters, styles, and pools its own widgets.2 min
- 2Enable the PluginTick CrimsonNumberPop (and CrimsonCommon), restart. C++ projects add one module line.2 min
- 3Create the Style RegistryTag queries pick the visuals: crits get big and red, heals drift up green — data, not code.4 min
- 4Create the Pop Widget & Point SettingsTwo exactly-named BindWidgets, a text style set, and the project settings that load both assets.4 min
- 5Replicate & BroadcastThe replication component goes on the Game State; the server builds an event and broadcasts it.5 min
- 6Per-Player FiltersEach player chooses what they see: own damage, ally damage, heals, crits-only — locally, never replicated.4 min
- 7Position & ScaleSockets and offsets place the pop; a distance curve keeps it readable at any range.4 min
- 8Test with the Dev ToolsSpawn pops on demand, flip filters live, and inspect the pool — without writing a damage system first.3 min