Space Engineers

Space Engineers

Camera long range scanner
37 Comments
Rostislav 12 Nov, 2024 @ 2:35pm 
Скрипт работает? Is the script working?
Tetra 13 Feb, 2020 @ 4:07pm 
Plez fix i really enjoyed this script
[B.A.C.M] jason_goodrich2001 11 Nov, 2019 @ 9:12am 
Ray casting has changed in Space Engineers since the last update and this script is broken now. Can you please fix it, I love this script.
Firewing_Gaming 26 Jul, 2019 @ 9:09am 
no objects are showing up for me
foxhoundusmc 6 May, 2019 @ 5:46pm 
Does this support camera turrets? I'd like for a nose mounted camera turret to feed target info to an LCD screen as it acquires contacts
GitarreGarret 2 Apr, 2019 @ 3:49am 
That's actually quite interesting. I've been looking for something like that before. Also I'd say it doesn't require a timerblock. I'll test if I can set it up on a hotbar. Aim>Manual scan>Results
Enigmus 22 Aug, 2018 @ 8:49pm 
Can we get a timerless version?
MekaDovah 17 Apr, 2018 @ 12:30pm 
Nothing appears on the LCD screen when I use this. What am I doing wrong?
Aschran 3 Mar, 2018 @ 2:20pm 
Thanks a lot my friend !
DerLaCroix  [author] 3 Mar, 2018 @ 11:47am 
I found time to update this with a better init procedure to tell you if there is a problem.
Also, I added some request:
It is now color coded for relationship, and can automatically trigger a timer block on detection to allow other scripts to act on the event.
MrFox 23 Sep, 2017 @ 6:59pm 
i cant seem to make this work. i added the names to the blocks as told. but it doesnt seme to work ay ideas?
MrFox 22 Sep, 2017 @ 11:53pm 
can u have this use more then one camera plz like 4?
Gaularn 12 Sep, 2017 @ 2:09pm 
I've been looking for something like this! Been collaborating on a project of a subtle sensor grid that reports to a listening station. Any chance of adding a transmit to remote LCD feature? As it is I'll be using two scripts to achieve this function, but I understand if that's complicated and generally undesirable =P

Cheers!
dandanmian.slurp 8 Jul, 2017 @ 9:33pm 
@Erebus Alpha
The Shukuchi Rayden Striker is able to continually track a target after an initial raycast, due to the use of tons of cameras all over it.
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=80312496
If it's possible, I'd like to see a version of this that continually tracks a target and uses the TextHud API to display a marker.
Dyson V15 Detect Absolute 16 May, 2017 @ 6:01pm 
@DifferentLevelDan you could use the texthud API to display this, then there would be no need to use the ingame gps system for that
Maitre Nain 30 Apr, 2017 @ 12:21pm 
Hi ! I would like to know if this can work if i place my camera on a different ship from the LCD? I was trying to make a drone with camera that explore everythin but couldn't really find something working for my idea... Is it me or???
DifferentLevelDan 22 Jan, 2017 @ 11:52am 
@KC Pilot, No, there is no interface for sending GPS coordinates to the player. You have to do so manually.
Erebus Alpha 18 Jan, 2017 @ 5:21pm 
The math would be a little tedious for trying to scan for a target of X surface area at Y distance with 100% reliability, but spewing raycasts in random directions would achieve almost the same effect.

The real challenge would be setting up some kind of system for cycling between detected targets, and maintaining a lock on those targets with subsequent raycasts.
Engi 15 Jan, 2017 @ 9:35pm 
I see about 3 or 4 scripts on here that use the raycast function to create a range finder. They all use text panels/LCDs and that is cool but I really just want to run the programmable block while looking an object and have it give me a GPS marker on my HUD. I don't want to have to view the panel and then go into GPS tab to get a GPS marker or copy and past it or run another argument and have it autopilot to it. I just want a range to my target. Is that possible?
Blockdude 5 Jan, 2017 @ 2:16pm 
I know, but isnt the scan limited to 2km per tick or run, what im saying is space them 2km (or whatever distance) apart so if it were a moving platform, it would be a more full scan. Such as one raycast would be 2km behind the first, so the first might hit a moving ship, but when the 2nd one is there, it hits the asteroid behind it. Basically making the scans more frequent at longer ranges.
DerLaCroix  [author] 5 Jan, 2017 @ 2:10pm 
actually, if you put one camera to scan at 9km, it would still detect everything at 3 or 5 km. The camera sends out a scan ray (1-dimensional line). When this intersects with a game entity (ship, player, asteroid, etc.) it returns the object reference. If it would hit a small ship at 3km, it would not notice the asteroid behind it. Only the first object it hits
Blockdude 4 Jan, 2017 @ 1:31pm 
Is there a way to make multiple cameras scan the same line but all be a different points (Like a sequencer) so while one is at 5km, another is at 3km, and a third may be at 9km
DerLaCroix  [author] 3 Jan, 2017 @ 11:42am 
In theory, you can gt the gps of the base center (object GPS) and the hit position(object hit gps)... Either the object gps is good enough, or you need to aim at the laser antenna (with full zoom) and take the hit position coordinates.
Rusted Droid 1 Jan, 2017 @ 4:15pm 
Sorry to sound dumb but can this be used for calculating laser antena gps cords? It will be nice if you can point ship camera towards laser antena on distant base and calculate gps cords of that antena for your laser antena on board.
Blockdude 30 Dec, 2016 @ 11:35am 
Okay, thanks again!
DerLaCroix  [author] 30 Dec, 2016 @ 9:52am 
Multiple cameras using offsets will not work the way you want to, it will only send rays, and not scan the spaces between. It's a stop gap, but will not scan a volume.

There is a way to make a single camera scan everything, it would just take long. I will post a script doing that, soo, ok?
Blockdude 28 Dec, 2016 @ 10:45am 
If I were to make 9 cameras in a 3x3 grid, would I need 9 different programs with different offsets or is there some way I could combine it?
DerLaCroix  [author] 28 Dec, 2016 @ 9:35am 
No, the rayscan is a ray - a one dimensional line. Sadly.
You can pulse it, speed depends on the range you want to scan ( about 2000m per second charge time). For a radar, you either need to turn it on rotor blocks or let the camera scna the visible space (it can scan in pitch and Yaw offset, but still, just one ray at a time)
Blockdude 27 Dec, 2016 @ 9:15pm 
@DerLaCroix I like this scrip and it is very useful, but I am woundering if the beam from the camera thin, or does it have a radius? If so what is the radius? Also, would it be able to 'pulse' like a radar might for an EWS (Early Wanring System)
CONS 22 Dec, 2016 @ 10:04am 
great!
DerLaCroix  [author] 22 Dec, 2016 @ 10:02am 
Bugfix LCD bug.
Added variables in Code - you can now edit your desired name for the SCAN_CAMERA and SCAN_INFO into the variables.
CONS 21 Dec, 2016 @ 1:27pm 
Please, could you update the script since LCD Private Text isn't existing anymore? The script gives an error because of that. Please, I think that you will spend 10 seconds to do that or so :)
Khaylain 20 Dec, 2016 @ 4:22am 
Awesome. As Enigmus wrote, it might be good to write last detected object into custom text field (or whatever it's called, I can't quite remember). Anyhow, I'll need to have a look at this and see if I can understand anything of it. Good job on making the script.
CONS 19 Dec, 2016 @ 11:46pm 
Probably you don't know that with this SCRIPT you destroyed the advantage of ships that were capable to shoot self-built missiles beyond the 800m range limits!

That's an AMAZING script
Enigmus 19 Dec, 2016 @ 2:42pm 
I would request that the last detected object be save in the Private text field for historical reference.
Enigmus 19 Dec, 2016 @ 2:38pm 
Located the issue, Program wont work with blocks assigned to 'Nobody'. Claimed ownership of the blocks and this resolved the issue.
Enigmus 19 Dec, 2016 @ 2:32pm 
Recieving error:
object reference not set to an instance of an object

I have verified that I have the Camera and teh LCD screen set to teh required names. Though I would request to update to allow variables to carry those names rather then being hard coded.