Space Engineers

Space Engineers

632 ratings
LAMP | Launch A Missile Program (for WHAM)
2
7
4
2
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
401.714 KB
25 May, 2020 @ 9:17am
3 May, 2024 @ 10:07pm
33 Change Notes ( view )

Subscribe to download
LAMP | Launch A Missile Program (for WHAM)

In 1 collection by Whiplash141
Whip's Scripts
22 items
Description
LAMP | Launch A Missile Program
"I love LAMP." - Satisfied user


  Description
LAMP is a fire control program for my homing missile script, WHAM. It allows you to fire guided Player Made Weapons (PMWs) at targets. You may be asking: "Why is it called LAMP?". Well much like a lamp, this script illuminates a target for its missiles! (*Groan*)

This script also communicates with WHAM missiles using the Inter-Grid Communications API (IGC) instead of exploits. Because of this, missiles can be sent commands mid-flight to change their behavior.

If missiles have stealth disabled, they will also show up on screens using my Turret Based Radar script. Additionally, any target that you are actively painting with camera raycast will also show up on friendly radar!

LAMP is capable of 3 guidance designation modes:
  • Camera Homing - Uses camera raycast for target tracking (colloquially referred to as LIDAR)
  • Turret Homing - Uses targeting data from AI turrets and custom turret controllers
  • Beam Riding - Missile follows your look direction much like a TOW missile

Note: This script supports camera raycast designation to a max range of 5km. Turret designation range is only limited by the max range of the grouped turret(s) themselves.

Homing Functionality
When in either of the homing designation modes, you must have a target lock before firing. If the missiles you are firing are setup with cameras, the missiles will attempt to lock on to the target themselves (Active Homing). This means that you can fire and forget them as they will track on their own.

If the missiles do not have any cameras on them, they will only fly towards a target that you are currently painting (Semi-Active Homing). See the WHAM script for more details about setting up missiles with cameras (it is real simple, I promise!).

Example ships:


  Instructions
See the full guide for instructions.




  Author's Notes
This has been in development for quite some time now, so I hope it is nice and polished. If you notice any issues/bugs, please let me know.

Also, I've minified this code to make it fit in the programmable block. I have not obfuscated any of the code; only the white-space has been blasted. You can use an IDE like Visual Studio to auto-format and beautify the code into something that is less dense.

Also huge thanks to my testers! (Out of characters, list on guide)

Enjoy!

(Also, this should also go without saying, but do not reupload without explicit permission from me, not even to mod.io.)
Popular Discussions View All (2)
362
24 May @ 9:56pm
PINNED: Help/Questions (LAMP)
Whiplash141
2
23 Jul @ 10:57am
Missile range
Hasbick
688 Comments
(WTH)Virion 24 Jul @ 3:09am 
Good to know.
Whiplash141  [author] 23 Jul @ 4:36pm 
Any change to what is being sent over the IGC network has ramifications for backwards compatibility. It will likely be published with the next major version of WHAM/LAMP which breaks backwards compatibility anyways.
(WTH)Virion 23 Jul @ 4:07pm 
Like...we already have name tags for both missiles and lamp
(WTH)Virion 23 Jul @ 4:06pm 
Thanks for the info. If the LAMP system could filter for missiles with the appropriate tag it would solve the " issue" .Cheers!
Whiplash141  [author] 23 Jul @ 3:32pm 
I can look into an optional filter you can pass to the autofire command, but it is low priotity for now
Whiplash141  [author] 23 Jul @ 3:31pm 
the remote fire system will attempt to fire any missile that is setup for remote fire. Since both networks are remote fire enabled, they are both candidates for being selected by the remote fire process.

There is not currently a way to set remote fire to only consider missiles of a specific name tag.
(WTH)Virion 23 Jul @ 11:19am 
Lamp Version:95.13.1
Wham Version:170.22.2
(WTH)Virion 23 Jul @ 11:00am 
Small Missile LAMP(custom config):
Fire control group name = SmallFireControl
Missile group name tag = SmallMissile
Optional reference block name tag = Reference

Small Missile WHAM(custom config):
Missile name tag = SmallMissile
Missile number = 1
Fire control group name = SmallFireControl
Detach thruster name tag = Detach

As you can see the missile number is duplicated. Still, as we talk about two different LAMP systems with distinc names I would assume they would work separetely, launching only missiles with expected names. It doesn't work this way, and LAMP with large missiles config launches also small missiles making the entire system a bit fucked up( My large ballistic missiles can now decide to autolaunch at a rover, that's a bit overkill ^^'').
(WTH)Virion 23 Jul @ 10:59am 
I need your help. Mainly, I need to know if yes or no what I want to do is even possible.
I want to create 2 different LAMP and WHAM networks.

The idea is simple.
1: One network with LARGE missiles , remote fire on, will only be launched manually by a crewed ship.
2: One network with SMALL missiles, remote fire on , auto fire on also, and as such a network of multiple vehicles and bunkers can shoot small missiels automatically with restrictions.

This worked well, or so I though, as it seems both networks work as one unit. I will provide the config below.

Large Missiles WHAM(default config):
Missile name tag = Missile
Missile number = 1
Fire control group name = Fire Control
Detach Thruster name tag = Detach

Large Missiles LAMP( default config):
Fire control group name = Fire Control
Missile group name tag = Missile
Optional reference block name tag = Reference
Whiplash141  [author] 6 Jul @ 11:02am 
increase your guidance delay. That determines when the missile starts aiming towards the target