Space Engineers

Space Engineers

734 ratings
Whip's Weapon Salvo Script
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
358.933 KB
Dec 4, 2017 @ 8:29pm
Jul 3, 2023 @ 12:51am
18 Change Notes ( view )

Subscribe to download
Whip's Weapon Salvo Script

In 1 collection by Whiplash141
Whip's Scripts
22 items
Description
Whip's Weapon Salvo Script


  Description
This script sequences the firing of groups of fixed weapons so that you can achieve a continuous rate of fire. Rather than fire all of your weapons at once, this code will delay the firing so that they fire rapidly one after another. This script works with vanilla weapons AND modded ones! This script also allows you to fire your weapons with the regular mouse input; the code will handle the sequencing for you!

This script is a upgrade to my old Weapon Sequencer. My old code only worked for one group of weapons, but this new code will work for as many weapon groups as you want!

The behavior of each Salvo Group can be customized through program arguments or custom data configuration!


  Features
  • Staggers the firing of weapons to create a continuous stream of destruction!
  • Weapons can be fired from the hotbar just like normal
  • Weapons can be fired in bursts of specified length!
  • Rate of fire can be customized
  • Simultaneous sequencing of multiple independent weapon groups
  • No timers needed for operation!
  • Weapons are sequenced alphabetically. This means that you can control the firing pattern by naming launchers alphabetically.
  • Works with vanilla and modded weapons (with customization)


  Instructions
  1. Place this script in a programmable block.
  2. Make block groups of your weapons with the name "Salvo Group <unique tag>" where <unique tag> is a unique word or phrase (Ex: Salvo Group 1)
    • Leading and trailing spaces do not matter
    • Letter case does not matter
    • NOTE: Salvo groups names can not have square bracket characters "[" or "]"!
  3. You can make as many salvo groups as you want! A single code can control them all!
  4. Fire your weapons normally, and the code will sequence them automatically!


  Arguments
Type in these arguments without quotes. Arguments are case insensitive. These arguments can be input manually to the program argument field, this program's Custom Data, through timers, or through sensors.

In the Custom Data, command lines can be seperated with semi-colons, or they can be seperated by new lines.

Basic Argument Syntax
"<Group name>" <command 1>

Advanced Argument Syntax
You can also execute several commands for the same group.
"<Group name>" <command 1> <command 2> ...

Available Commands
Command
Function
--rps <number>
Changes the rate of fire in rounds per second.

[Maximum RPS] = [Standard RPS] * [Number of sequenced weapons]

NOTE: The script will round this number, this is not a bug!
--rpm <number>
Changes the rate of fire in rounds per minute.

[Maximum RPM] = 60 * [Standard RPM] * [Number of sequenced weapons]

NOTE: The script will round this number, this is not a bug!
--ticks <integer>
Changes the rate of fire in ticks between shots (60 ticks = 1 sec)

NOTE: This should be a whole number
--burst <integer>
Fires a burst with the specified number of shots

NOTE: This should be a whole number
--default
The script will determine the maximum continuous rate of fire of the weapons (using the default fixed rocket rate of fire).
--fire_on
Toggles fire on only
--fire_off
Toggles fire off only
--fire_toggle
Toggles fire on/off

Examples

"Salvo Group 1" --fire_on
Toggles the weapon firing on and uses default rate of fire for "Salvo Group 1"

"Salvo Group 2" --default
Resets the default rate of fire for "Salvo Group 2"

"Salvo Group 3" --rpm 10 --fire_toggle
Sets the rate of fire to 10 rounds per minute and toggles weapon firing for "Salvo Group iLikeTurtles"


  Custom Data
You can also manually configure the default behavior of each Salvo Group individually within the Custom Data of the programmable block that is running this script.


  Author's Notes
If you are shooting and only one gun is working, try clicking middle mouse. If you accidentally clicked MMB before, the game will only let you fire one weapon of that type; clicking it again will turn that mode off. Why this "feature" even exists in the game is beyond me.

No this will not work with Weapon Core. Weapon Core guns need special, mod specific code to work properly and I will not add support for it.

No this wont work with AI turret blocks, and there is no way to make it. This will only work for fixed weapons.

I've been working on this for quite a while. This new script should bring with it a lot more versatility and better performance.

Hope y'all enjoy!

(Do not reupload without permission, not even to mod.io)

This works with the new railguns!
Popular Discussions View All (1)
44
Nov 21, 2022 @ 1:04pm
PINNED: Bug Reports
Whiplash141
401 Comments
pobblebonk Feb 19 @ 7:37pm 
Found a more clever way to cleanly toggle salvo script on/off and automatically turning the salvoed weapons back on with one button using an event controller, but still would be nice if it was native to the script to turn weapons on when desired with a command.
pobblebonk Feb 16 @ 8:11pm 
Hey, is there a command to toggle the salvo code? Right now if I want to turn off the salvo code, I have to set up a timer block to turn off the program and turn on all the weapons in my salvo because turning off the script doesn't turn all the salvo'ed weapons back on. Would be cool if it was a part of the script instead of having to timer block it.
Whiplash141  [author] Dec 9, 2023 @ 9:26pm 
@Liquidghost: You could have 2 different salvo groups each with 2 cannons in it that operate in parallel

@Daedooloos: Right now you can only command a single group at a time with one argument
Liquighost Dec 9, 2023 @ 8:46pm 
damb alright, thanks for answering
Daedooloos Dec 9, 2023 @ 5:56pm 
if i want to have multiple sets of groups, how should i seperate the arguments?
does adding the " to the next group count as a new set?
Whiplash141  [author] Dec 9, 2023 @ 4:09pm 
Not currently, no
Liquighost Dec 9, 2023 @ 1:37pm 
Hey, is it possible to create a burst that fires 2 or more weapons per shot? for example you have 8 Assault cannons could you create a 4 round burst that fires 2 cannons per shot of the burst?
Whiplash141  [author] Nov 16, 2023 @ 8:11pm 
Weapon core is incompatible with the script API, so no it is not likely to work.
Zerg Nov 16, 2023 @ 7:23pm 
Hello Whip, does this salvo script support railguns in weaponcore? ive been able to get it to work with all fixed weapons but the railgun in weaponcore. thanks
Whiplash141  [author] Aug 12, 2023 @ 4:24pm 
ship vs station is irrelevant for the script