🎁 Pickups Samples — Scenes & Integrations¶
The Pickups Samples folder contains teachable demo scenes, simple adapters, and netcode examples for exploring the Pickups system.
They are intended for learning, debugging, and rapid prototyping — not for shipping builds.
📂 Folder Layout¶
Samples/
Scenes/ // Playable pickup demonstrations (00–99)
NetcodeSamples/ // NGO, Mirror, Fusion authority examples
Scripts/ // Lightweight demo bags + UI helpers
ScriptableObjects/ // Example pickup definitions used in demos
Materials/Textures // Visual support assets for sample pickups
🎬 Sample Scenes¶
These scenes illustrate core Pickup features.
Names may vary slightly depending on your package version.
| Scene | Demonstrates |
|---|---|
| 00_Quickstart_Pickups | Minimal pickup → consume flow. |
| 01_World_Pickups_+_Interactables | Interactables, prompts, respawn timers. |
| 02_Decorators_+_Cooldowns | Decorator chains, cooldowns, and feedback. |
| 99_Pickups_Kitchen_Sink | All pickup features combined in one scene. |
💡 Use the PickupsPanel (teachable panel) to spawn pickups and inspect behaviours in real time.
🌐 Netcode Samples¶
Located in:
Samples/Pickups/NetcodeSamples/
❗ Scope Reminder > RevFramework does not implement networking, replication, prediction, rollback, or reconciliation. > These samples demonstrate authority gating patterns only — all networking behaviour is your responsibility.
Each netcode variant includes:
- Authority Binder — implements
IPickupAuthorityfor the stack - Server Proxy — processes consume requests server-side
| Stack | Binder | Server Proxy |
|---|---|---|
| NGO | PickupAuthorityBinder_NGO |
NgoPickupServerProxy |
| Mirror | PickupAuthorityBinder_Mirror |
MirrorPickupServerProxy |
| Fusion | PickupAuthorityBinder_Fusion |
FusionPickupServerProxy |
⚠️ These are illustrative patterns, not production multiplayer.
Adapt them to your project’s authority model, prediction, and rollback rules.
🛠️ Demo Scripts¶
Found in Samples/Pickups/Scripts/, these include:
- Simple “bag” implementations for projects without Inventory
- Lightweight UI hooks to demonstrate pickup notifications
- Helper scripts for showing decorator/cooldown state in demos
These are sample-only — copy/adapt as needed.
🚀 Quick Start¶
- Open any demo scene under Samples/Pickups/Scenes
- Press Play
- Use the PickupsPanel to spawn, test, and chain pickup effects
- Observe world feedback (VFX/SFX) and console logs to verify behaviour
⚠️ Scripting Define Symbols¶
Enable the netcode stack you want to test:
| Netcode | Define Symbol |
|---|---|
| NGO | REV_USE_NGO |
| Mirror | REV_USE_MIRROR |
| Fusion | REV_USE_FUSION |
If the define isn’t present, that stack’s sample scripts won’t compile — by design.
🧠 Notes & Gotchas¶
- Sample scripts are Editor-only and intentionally minimal
- Decorators demonstrate patterns, not production-level implementations
- Authority is always respected — even in demo scenes
- Keep builds clean by removing unneeded netcode defines
🔗 Related Documentation¶
- Core: Runtime pickups pipeline
- Decorators: Extensible effect chains
- Interfaces: Contracts for custom pickup implementations
- Systems: Pickup spawners, cooldowns, feedback
- Teaching Panels: Live inspector UI for pickup behaviour