Bomberman Event
An automated Bomberman-style arena minigame. Players drop timed bombs that blow up destructible crates (dropping powerups) and hurt other players. Hitting an opponent three times knocks them out; the last player standing wins.
Source: server/scripts/UOD/Events/UOD - Event Bomberman.scp
How to run it
Like the FFA, this event is normally self-running: the timer stone i_stone_bomber_timer fires every 28800 seconds (8 hours) and calls f_startautobomber on the management object 04001d92a.
| Command / Trigger | Effect |
|---|---|
.bomberjoin (FUNCTION bomberjoin) |
Player joins the current Bomberman event if open (tag.bomberon==1). Blocked while mounted or already in another event (e_goto, e_bomber, e_maze, e_britainpvp). |
.nextbomber (FUNCTION nextbomber) |
Reports minutes until the next event (reads timer of object 04001c535). |
f_startautobomber on 04001d92a (auto every 8h, or GM-invoked) |
Regenerates the arena, opens a 5-minute join window with countdown broadcasts, then starts. |
Note: The manual stone
i_stone_bomberhas no active triggers in the script; scheduling is handled byi_stone_bomber_timer.
How it plays
f_startautobomberrunsf_GENERATE_ARENA_BOMBER(scatters ~80 indestructiblei_rock_2blocks and fills the field with destructiblei_crate_lgcrates), then broadcasts a 5-minute join window (TIMERF=300,f_start_bomber; join closes at 280s).f_bomber_jointeleports the player to a random point inrand(5289,5323),rand(2002,2019),0, unequips all gear into a teal bank backpack, and equips only a Bomberman Robe (i_robe_bomber). All spells are disabled and hiding/stealth blocked.- On start, every player gets a bomb via
f_givebomb(itemi_potion_bomber) plus 25 seconds of invulnerability (tag.invulbomber) to place their first bombs. - Bombs (
i_potion_bomber→ spawnsi_bomb): dclick to drop a bomb at your feet. Bombs count down (tag.delay, default 7) then explode, spawningi_fx_explosion_2and destroying adjacent crates withintag.range(default 1). Destroyed crates leave lingering embers (i_ember) and, ~10% of the time, a random powerup. - Powerups (walk over them to collect):
i_powerup_delay(bombs explode faster, min delay 1),i_powerup_range(larger blast radius),i_powerup_amount(place more bombs at once). - Damage / elimination: a player caught in a blast (not invulnerable, not GM) has their robe color step through
044 → 035 → 026; the third hit kicks them out of the event. Being hit givesi_random_loot_1and a participation trophy (0e74). - Win condition: when
bomber_checkwinnerreturns2at the moment of a knockout, the remaining player wins viabomber_win. If only one player joins, the event cancels. - On logout/knockout/win,
ENDEVENT_BMANrestores the player's gear from layer 21 and returns them totag.bomberfrom.
Rewards (winner, via bomber_win)
- A bank check worth
players * 1000gold. - A colored winner trophy (
0e74, color0807). - Random loot by participant count:
i_random_loot_1(<5),i_random_loot_2(<10), elsei_random_loot_3.
Key definitions
| Type | Name | Purpose |
|---|---|---|
| EVENTS | e_bomber |
Per-player event: blocks combat/spells, handles logout, click label. |
| FUNCTION | bomberjoin, f_bomber_join |
Join entry point and setup routine. |
| FUNCTION | bomber_checkwinner, bomber_win, ENDEVENT_BMAN |
Winner counting, award, and restore. |
| FUNCTION | f_startautobomber, f_start_bomber, f_givebomb |
Scheduling, fight start, and bomb handout. |
| FUNCTION | f_GENERATE_ARENA_BOMBER, f_bomber_remove, f_bomber_respawn_crate, togglefencebomber |
Arena build/teardown and crate respawn. |
| ITEMDEF | i_robe_bomber |
The move-locked robe worn by players (color tracks hit count). |
| ITEMDEF | i_potion_bomber (Bomb!), i_bomb |
Bomb dispenser and the ticking bomb entity. |
| ITEMDEF | i_powerup_delay / _range / _amount |
Walk-over powerups. |
| ITEMDEF | i_stone_bomber_timer (i_gravestone_4) |
8h auto-scheduler. |
| Object UID | 04001d92a |
Bomberman management object (tag.bomberon, tag.players). |
| Object UID | 04001c535 |
Timer object read by nextbomber. |
| Region | approx. 5289-5323 x 2002-2019 |
Bomberman arena. |