Skip to content

Latest commit

 

History

318 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bango Scripts

THE PROBLEM

  • Have you ever placed a trigger volume and wondered "how can I spawn three enemies at some markers, then turn on those lights, and start playing some boss music after 2 seconds? What if I want to spawn different enemies based on the player's skill setting?"
  • Unreal's built-in Level Script feature is monolithic, and poorly architected.
  • Some teams will build some sort of "Actions" system which involves arrays full of "Action" entries. This is clanky, difficult to visualize and work with, and can require a lot of effort to build new entry types, even for basic things.
  • Some teams will build custom scripting systems (DSL's) for their games. This is a great solution, but requires lots of man-hours, and often still lacks basic features like autocomplete.

THE SOLUTION

  • What if you could write an instanced Blueprint Event directly onto an actor placed in a level and use Blueprint like a DSL?
  • What if you could reference other actors in the level with simple, easy-to-use nodes?
  • What if you had more blueprint nodes that helped with actual level scripting, and not just OOP coding?

Unreal's Blueprint language is not a level scripting system; it is an object-oriented programming language. Blueprints require you to define and spawn instances of classes, which is not helpful for wiring up quick events in levels. Bango Scripts bridges this gap, giving you a convenient level scripting system that uses Unreal's powerful and familiar Blueprint graphs.

SUMMARY INFO

Note

  • Intended to execute small, short-lived scripted events.
  • Supported on: UE5.6 - UE5.7
  • Current status: ⚠️Experimental⚠️

Warning

  • Runtime serialization: Bango uses Blueprint. Blueprint graph execution state is not serializable; you cannot save/restore a script back to its middle of operation (you might want to use a different system for that, like Flow Graph).
  • Untested in multiplayer: this plugin is currently being used for single-player projects; it may work fine, but is untested in multiplayer.

Caution

  • This plugin is experimental; be sure to visit the Issues page for any known problems.

 

DEMONSTRATION

This is a very programmer-art scene involving a walkway with several lights, a couple of simple sci-fi doors, and some loudspeakers for ambient announcer voices.

2026-02-16.22-17-09.mp4

The level above contains:

GENERAL ACTORS:

  • Two doors, each with a simple "open" event. The animation, light, and sound is all handled by a Sequencer Component in the door blueprint.
  • Several lights, each with a simple "turn on" event. Like the door, the animation and sound of the lights is handled in the light blueprint.
  • Two loudspeakers, which are just dummy actors for the scripts to use PlaySoundAtLocation.

TRIGGER ACTORS, WITH BANGO SCRIPTS:

  • One blank actor with a script, set to auto-run. This starts the music and announcer voices coming from two loudspeakers.
  • One pressure-plate trigger controlling the first door. This contains an overlap collider box and two Bango Script components (Activate/Deactivate). The Activate script runs on BeginOverlap, and vice versa.
  • Two simple sphere collider triggers, the first turning on the hallway lights and the second opening the last door. These contain an overlap sphere and a Bango Script component. The script component is ran on the trigger's BeginOverlap event. The trigger is coded to self-destruct, to prevent repeat activations.

Trigger systems/actors are NOT included in or related to Bango Scripts. This plugin is BYOB (Bring Your Own Bangotriggers).

Here's what the scripts for the demo scene look like, in order of appearance:

 

image

The startup script. This plays PA system audio and starts music for the scene.

 

image

The pressure plate's "Activate" script. This opens the door. It also has a separate "Deactivate" script to close the door.

 

image

The first sphere-volume trigger. This turns on the hallway lights after the avatar walks through the door.

 

image

The second sphere-volume trigger. This opens the second door as the avatar gets close to it.

 

GETTING STARTED

If this all sounded like fun to you, visit the wiki to try out Bango Scripts!

About

A scripting system for UE5 powered by blueprints.

Resources

Stars

21 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages