Jump to content

12 Screenshots

  • 31
  • 4
  • 780.84 kB
  • Update details
    v1.0.0
    Released
    Download size 780.84 kB
    Total versions 1
    Freshness Updated today

Works with

Optional integrations and compatible files.

[ ✓ ] Works on any host. [ ✓ ]

The plugin needs the free CrashExtensions library. Can't upload DLLs on your host? No problem: the zip includes a small installer plugin. Drop it in your plugins folder, run crashext.install, restart once, and you're done.

Scrap Stormray puts a giant manta ray made of scrap metal in your sky, 46 meters from wing tip to wing tip. It circles high above one of its territories and listens: gunshots and rocket launches draw it to the shooter, an explosion draws it to where it went off, and it spots players standing in the open below it. A roof, a rock or a cliff over your head hides you.

Before a dive it lines up, drops a row of road flares and screeches, then it dives and sweeps the flared line with its wings a few meters off the ground. Between dives it makes bombing runs: a rain of scrap pieces that burst where they land, or a toxic canister that leaves a poison cloud. Below half health its stinger zaps the nearest player it can see with a lightning bolt from the tail, and below a quarter it goes into a fury: faster, lower and meaner.

Shoot it down and it spins to the nearest clear dry land, explodes and leaves a wreck of harvestable scrap and burning locked crates. The top damage dealers get paid. It all runs on its own on a schedule, and nothing goes on the client: the stormray is built from parts every Rust client already has.

Scrap Stormray

Works on Oxide and Carbon Needs CrashExtensions (included)
Automatic event in the sky Top damage rewards

Jump to: Features · Screenshots · Trailer · How an event goes · Commands · Permissions · Works with · Install · Configuration · Test server · FAQ

🌟 Features

For players

  • A sky boss fight. A scrap manta ray, 46 m across, circles above the territory with its tail chain swinging behind it.
  • It hunts you. Gunshots and rocket launches inside its territory draw it to the shooter, an explosion draws it to where it went off, and it spots players in the open below it. A roof, a rock or a cliff over your head hides you.
  • You see it coming. Before each dive it drops a row of road flares on its line and screeches. Get off the line or get under cover.
  • It fights back. A wing sweep a few meters off the ground that hits players and vehicles, scrap rain that bursts where it lands, a poison cloud from a toxic canister, and lightning from its stinger below half health.
  • Fury. Below a quarter health it flies faster and lower, attacks far more often, drops double scrap rain, sweeps wider and its eyes flicker.
  • Weak points. The body takes reduced damage. Its two wing cores, its eyes and its stinger take a lot more. Burst a wing core and that wing tip breaks off, falls as debris you can harvest, and it flies slower. Shoot the stinger off and the lightning stops.
  • Every weapon works. Bullets, rockets and explosions all hit it, and bullet lead and drop are taken into account, so leading your shots pays off.
  • Fight it in its territory. Hits count from inside the territory and up to 100 m past its edge; from farther out they do nothing. Shooting from under a roof or at a monument counts for 25%.
  • Shared boss bar. Name, ALOFT, DIVING or FLYING LOW, its two cores and its health, above the hotbar for everyone near the fight.
  • Loot worth the fight. It crashes on clear dry land and leaves a wreck: big scrap pieces you can harvest and locked crates held shut by small fires until they burn out (the fires burn players standing in them, never buildings).

For server owners

  • Set and forget. Three sky territories over open land are found on your map by itself (the same spots for the whole wipe), and events start on a timer with a minimum player count.
  • Your own territories. Add spots by coordinates with their own name and radius.
  • Scales with the crowd. Health grows with the players around when it spawns, up to a cap you set.
  • Rewards. Economics money and ServerRewards points for the top damage dealers, up to 10 places. A place is paid only when that player did at least 3% of its max health in damage (MinRewardShare).
  • Stays where it belongs. Its attacks hit players in the open and vehicles, never buildings. Its dives, scrap rain and poison spare players and vehicles at monuments; its lightning, and the ram on a helicopter that flies into it, do not. It crashes and drops its crates only on clear dry land away from monuments, safe zones and bases.
  • One boss at a time. It takes turns with Scrap Worm and Scrap Leviathan by itself: if one of them is out, it waits and tries again a few minutes later.
  • Custom screech. An alien screech is included: turn it on and only players near the stormray hear it, coming from the ray. Use your own .ogg if you like.
  • NCP toasts. With the free NCP plugin loaded, event messages show as toasts. Without NCP they go to chat.
  • Announcements. Start, low health, kill and leave in chat, to everyone or only nearby, and an optional Discord webhook.
  • Works with your loot plugins. The crates are the native heli or Bradley crates, so BetterLoot fills them, and you can pick an AlphaLoot profile.
  • Every number in the config. Health, damage taken, every attack, flight, crates, rewards, timers and territories, each with a safe range.
  • Four languages. English, Spanish, Brazilian Portuguese and Russian built in.

For developers

  • Hooks. OnScrapStormrayStart, OnScrapStormrayDive, OnScrapStormrayKilled, and OnScrapStormrayHit, which you can veto to spare a victim. IsColossusActive() tells you whether it is out. See the FAQ.

📸 Screenshots

Every screen below is Scrap Stormray running in Rust.

Circling overhead
Circling over its territory, with the shared boss bar and its two wing cores
Lining up a dive The wing sweep
Lined up head on: the road flares glow on its dive line The dive: its wings sweep the ground a few meters up
Scrap rain Poison cloud
A bombing run: scrap pieces drop and burst where they land A toxic run leaves a poison cloud on the ground
Stinger lightning A wing tip falls off
Below half health its stinger zaps the nearest player A wing core bursts and the wing tip breaks off
Fury Shot down
Below a quarter it goes into a fury, faster and lower Shot down: it spins toward the nearest clear dry land
The wreck A burning crate
The wreck: harvestable scrap and locked crates Each crate stays shut while its small fire burns

🎥 Trailer

The Scrap Stormray trailer (click to play, 45 seconds)
Watch the Scrap Stormray trailer

🌩️ How an event goes

  • It starts. An event picks one of the sky territories and everybody gets a message with the grid.
  • It circles. It flies a wide circle 70 m above the ground and listens. Noise inside the territory, or a player in the open below it, picks its target.
  • It dives. It lines up, drops road flares on its line and screeches, then dives and sweeps the line with its wings. After the sweep it flies low and slow for a few seconds: that is your best window.
  • It bombs. Between dives it makes bombing runs: scrap rain that bursts on landing, or a poison cloud.
  • It gets angry. Below half health its stinger zaps the nearest player it can see. Below a quarter it goes into a fury.
  • You hit it. The body takes 35% of a hit by default, a wing core double, an eye or the stinger one and a half. Each burst core drops a wing tip and slows it. Damage from more than 100 m outside the territory doesn't count, while its own attacks can still reach a bit past that line (the wing sweep about 26 m, scrap rain and lightning further).
  • It crashes. It spins down to the nearest clear dry land, explodes and leaves harvestable wreck debris and 4 burning locked crates. The top damage dealers get paid.
  • Or it leaves. If nobody is near it for 8 minutes, or the 30 minute event runs out, it climbs into the clouds. It doesn't leave in the middle of a fight: while it is being hit the time limit waits, up to twice as long. The next event is scheduled by itself, 2 hours later by default.

🎮 Commands

Chat, for owners or a player with scrapstormray.admin:

  • /stormray start - start an event now in a random territory.
  • /stormray spawn - spawn one above you (no time limit).
  • /stormray kill - kill it now (no damage rewards are paid).
  • /stormray despawn - remove it right away.
  • /stormray status - its health, cores alive, what it is doing and its territory.
  • /stormray territories - list the territories with their grid and radius.

Admin

From the server console, RCON or a player with scrapstormray.admin:

  • stormray.start - start an event now.
  • stormray.spawn <player> - spawn one above that player.
  • stormray.kill - kill it now.
  • stormray.despawn - remove it.
  • stormray.status - its health and where it is.
  • stormray.territories - list the territories.
  • stormray.dive <player> - make it dive on that player now (testing).

🛡️ Permissions

  • scrapstormray.admin - the commands above. Owners can always use them. Players need no permission to fight it.
oxide.grant user YOUR_STEAM_ID scrapstormray.admin

🤝 Works with

  • NCP: free, optional: event messages as toasts instead of chat lines
  • Economics / ServerRewards: optional top damage rewards
  • AlphaLoot: fill the crates from a profile you name
  • BetterLoot: fills the crates by itself (they are the native heli or Bradley crates)
  • TruePVE: works as is; ForceDamageThroughTruePVE (on by default) lets its attacks hurt players, turn it off and your rules decide
  • Scrap Worm / Scrap Leviathan: they take turns, only one boss at a time
  • Carbon: same code path as Oxide

📦 Install

  1. Install the extension, once per server. Stop the server, copy Oxide.Ext.CrashExtensions.dll into RustDedicated_Data/Managed (Carbon: carbon/extensions) and start it again. The console prints Loaded extension CrashExtensions with its version. An older copy of the DLL is simply overwritten: it is one shared file for all our plugins.
  2. Install the plugin. Copy ScrapStormray.cs into oxide/plugins (Carbon: carbon/plugins). It compiles on its own and creates its config.
  3. That's it. The first event starts 30 minutes after the server is up, then every 2 hours. To see it now, type /stormray start.
  4. Optional screech. Copy oxide/data/ScrapStormray/sounds/alien_screech.ogg from the zip to the same path on your server, set "RoarSound": "alien_screech" and run oxide.reload ScrapStormray.

Plugin does not compile? The extension is missing or too old: check the folder and restart again. On a hosting panel, upload the DLL with the file manager or SFTP, and keep a copy in case the panel resets that folder on an update.

Host doesn't allow DLL uploads? Put CrashExtInstaller.cs from the zip in your plugins folder and run crashext.install once in the server console: it downloads the extension from GitHub, checks it and puts it in place. Restart once and Scrap Stormray loads.

⚙️ Configuration

Everything lives in oxide/config/ScrapStormray.json (Carbon: carbon/configs/ScrapStormray.json). Every value has a safe range: a value out of range keeps the plugin unloaded, leaves your file untouched and tells you in the console what to fix. The keys you will most likely touch are explained in the README.

Config sections (click to expand)

Spoiler
  • Health - base health (5000), extra health per player around (35%) and its cap, damage share on the body and on a clipped wing, core and weak spot multipliers, core and stinger health, the share that counts from under a roof or at a monument (25%)
  • Flight - cruise height (70 m) and speed, dive speed, sweep height, the low recover pass, the slowdown per burst core
  • Hunting and the dive - detection and noise radius, first dive, break between attacks, flare time, sweep width and damage, vehicle damage, the TruePVE switch
  • Scrap rain - pieces per run (6), damage, radius, cooldown, maximum height
  • Stinger lightning - health threshold (50%), damage, range, charge time, cooldown
  • Poison - on or off, cloud radius and length, vanilla poison per second and its cap, damage per second, cooldown
  • Fury - health threshold (25%), speed, cooldown, height, rain and sweep scales
  • Crash and loot - spin time, impact radius and damage, crate count (4), heli or Bradley crates, a hackable crate, an AlphaLoot profile
  • Health bar - on or off, its radius and size
  • Rewards - Economics and ServerRewards amounts per place, the damage a place needs (3% of its max health), the Discord webhook
  • Sound - the custom screech file and who hears it
  • Event - automatic start, first start (30 min), interval (2 h), minimum players, lifetime, idle time and radius, low health alert
  • Territories - how many are placed by itself and their radius, your own list, map markers, global or nearby announcements, NCP on or off

🧪 Test server

Available on our test server. An event starts 30 minutes after the server starts and then every 2 hours while someone is online: watch chat for the grid and make some noise.

client.connect 91.229.114.54:28015

📚 FAQ

Q: Do players need a client mod?
A: No. The stormray is built from parts every Rust client already has, so it works on any map with no downloads. The custom screech is sent by the server too.

Q: Will it wreck my players' bases?
A: No. Its attacks hit players in the open and vehicles, never buildings, and its wreck and crates never land in a base, a monument or a safe zone.

Q: Can it hurt players in safe zones or inside their base?
A: No. Players in a safe zone, sleeping or spectating, and admins in noclip, are never targets, and a roof, rock or cliff over your head hides you from it.

Q: My bullets do nothing. Why?
A: Hits count from inside its territory and up to 100 m past its edge; from farther out they do nothing and you get no hit marker. From under a roof or at a monument they count for 25% (CoverDamageScale). Hits from a safe zone never count.

Q: Who gets the rewards?
A: The top damage dealers, one per place you list. A place is paid only when that player did at least 3% of its max health in damage (MinRewardShare). Places are sorted by damage, so every place after one that falls short gets nothing too, and nobody moves up. The top damage dealer is still named in the kill message.

Q: Do I need Economics or ServerRewards?
A: No. They are optional rewards. Without them the stormray still leaves its crates.

Q: I also run Scrap Worm or Scrap Leviathan. Will they fight over the server?
A: No. Only one runs at a time: each asks the others before it starts and waits a few minutes when one is out.

Q: It dies too fast or too slow. What do I change?
A: Health, HealthPerExtraPlayer, MaxHealthMultiplier, BodyDamage and CoreDamage. Any attack can be weakened or turned off by setting its damage to 0.

Q: Does it work on Carbon?
A: Yes. The extension goes into carbon/extensions instead of RustDedicated_Data/Managed, and the plugin into carbon/plugins.

Q: How do I translate it?
A: English, Spanish, Brazilian Portuguese and Russian are built in. Edit oxide/lang/en/ScrapStormray.json, or copy it into another language folder and translate its values: each player reads their own game language.

Q: Does it contact any outside service?
A: It downloads its few health bar pictures once from the Venux CDN, rust-cui.crashplugins.space, which your server then keeps. Nothing about your server or your players is sent. The Discord webhook is the only other request, and only if you fill it in.

Q: Can other plugins react to the stormray?
A: Yes. Scrap Stormray calls void OnScrapStormrayStart(Vector3 position, string territory) when an event starts, void OnScrapStormrayDive(Vector3 position, BasePlayer target) on each dive and void OnScrapStormrayKilled(Vector3 position, ulong topDamager) when it dies (topDamager is 0 when the kill pays nothing: an admin kill or too much test damage; otherwise it is the top damage dealer, also when MinRewardShare left them without a reward). Return anything but null from object OnScrapStormrayHit(BaseCombatEntity victim) to spare a victim from that hit. bool IsColossusActive() is true while it is out.

Join our Discord

Questions, ideas or bug reports? Use the Support tab of this file or join our Discord.


crash
crash's Collection
Explore more files from this creator.

User Feedback

About Us

Codefling is the largest marketplace for plugins, maps, tools, and more, making it easy for customers to discover new content and for creators to monetize their work.

Downloads
3.3m
Total downloads
Customers
12.4k
Customers served
Files Sold
175.8k
Total sales
Payments
3.8m
Processed total
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.