Space Engineers

Space Engineers

Not enough ratings
O.I.S. Lidar Mapping
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
44.350 KB
30 Dec, 2016 @ 7:56pm
19 Sep, 2019 @ 8:33am
25 Change Notes ( view )

Subscribe to download
O.I.S. Lidar Mapping

In 2 collections by Elfi Wolfe
Orbital Industrial Services, (O.I.S.) Lidar Division
13 items
O.I.S. Programing Division
14 items
Description
Lidar Mapping software.

Name LCD with [LidarStatus] and [LidarFound] somewhere in name.
load script
Have some cameras.

then just have a button set (or tool bar) to run PB with argument lase to turn on/off mapping.

Sends GPS info on:
OISGPS channel with data in the following format
MyTupla<string, string, int, Vector3d>
"GPS", name, MyRelationsBetweenPlayerAndBlock, Position

READ THIS: Programmable blocks and in-game scripts are now in "Experimental mode" in game that you need to turn on in game options.
NOTE: if the script is hurting the server, then you can do the following.
remove the // from
1: //statusLCD.WriteToLCD($"\n{currentTicRun}\n{Runtime.LastRunTimeMs}");
This will then show on the screan the run times of each run.
2: change int limitLaseRun down from 10 to 1 or 2.
This sets the number of lasers to fire each 1/6 of a second.

Arguments / custom Data reading
lase = start/stop mapping
laseon = starts mapping if not mapping
laseoff = stops mapping
turnon = turn on camera laser charging
turnoff = turn off camera laser charging
rebuild = tell script to check and rebuild it self
cleangps = clean the found items
newrange #### = change the range in script to what is entered in argument
newangle ## = (0-45) change the scan angle away from camera.. 45 = max camera range
newlevel # = (0-7) change scan level.. higher numbers take much longer but better resolution.
repeaton / repeatoff = repeat scan after done
stopOnEnemyon / stopOnEnemyoff = stop scan if enemy detected
fireOnEnemyon / fireOnEnemyoff = trigger firing timer block
fireOnNeutralon / fireOnNeutraloff = if fireOnenemy is on, neutral will also be fired on
fireOnceon / fireOnceoff = timing block will fire only once

lcdstatus string = sets name of status lcd
lcdfound string = sets name of found lcd
enemylcd string = sets name of enemy lcd
firingTiming string = sets name of firing timer block

Example
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=830587447

Has FiringSubsystem that will trigger a timer if an enemy is detected (can use time to turn on sound/lights or other system)

Last Inspected 1.199.020
Last Updated 1.192.101
Popular Discussions View All (1)
5
23 Sep, 2018 @ 6:29am
Bug Reports
Elfi Wolfe
144 Comments
Nekron910 2 Jul, 2023 @ 8:42am 
I tried to use this thing.https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=916386919 There a link to this script, so, i think it had to work, but script dont use any subgrid cameras. Then i came here =))
Elfi Wolfe  [author] 2 Jul, 2023 @ 6:39am 
I had to look at the code to get this answer.
It only uses the same grid as the PB block.
Designed that way so that people could have sub grids with a PB on that sub grid to aim the mapping system at an area or object.
Nekron910 2 Jul, 2023 @ 12:58am 
Can this script work with a subgrid cameras?
Elfi Wolfe  [author] 15 Nov, 2022 @ 3:54pm 
Yes. if a lidar beam hits a grid it will add it to the list of detected objects.
mhwyoshi 15 Nov, 2022 @ 1:58pm 
Can this script give the coordinates of enemy bases? If given enough time and set to orbit a planet?
Elfi Wolfe  [author] 27 Mar, 2022 @ 4:46pm 
It can be set by user with newrange command.
just a longer range takes a long longer to map.
PossibleHacker 27 Mar, 2022 @ 3:54pm 
What is the range on this?
Elfi Wolfe  [author] 26 Mar, 2021 @ 7:16am 
Not from the raycast. That is physics engine.
VIPERMKV 26 Mar, 2021 @ 6:01am 
Hello! There is a method to exclude voxel? Like Asteroids , or small grid?
123 21 Jul, 2020 @ 2:37pm 
Okay that was it, needed to recompile, also noticed my scan time is now 0 minutes but takes longer then 9 minutes?