Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Overview

This repository contains several in-game scripts for the Space Engineers video game, as well as several mixins that are common to several scripts.

Scripts

ImprovedRotorThrusterScript

This script offers standard vector-thrust functionality: when building a ship, simply mount thrusters on rotors and the script will automatically control the rotors and the thrusters based on ship controller input. This script offers several advantages over many other vector thrust scripts available on the steam workshop:

  1. The script remembers what mode it was in when saving and loading. Other available vector thrust scripts revert to standby mode (turning off all thrusters) when the game is saved and reloaded, which is obviously disastrous when mid flight.
  2. The script attempts to maximize thrust, rather than trying to achieve a hardcoded constant acceleration. This means if you build a ship with lots of excess thrust, you'll be able to utilize all the thrust with this script. Other vector thrust scripts I've encountered have tried to achieve a certain constant acceleration (in one case, based on the planetary gravity the ship was operating in!) meaning you don't always utilize all available thrust.
  3. This script does not detect thrusters through connectors, meaning it is safe to use even if your ship is docked to a station with other vector thrust-enabled ships attached.

Usage

Simply place a programmable block on your ship with this script. To set the flight mode of the script, run it with one of the following arguments:

%park: By default, the script will be in "park" mode. In this mode, the thrusters turn off and the rotors are locked.
%hover: In "hover" mode, the ship will operate with full inertial dampeners.
%cruise: In "cruise" mode, the ship will attempt to maintain a constant forward speed.
%drift: In "drift" mode, the ship will attempt to maintain constant motion in whatever direction it was moving in when the flight control input was ceased.

MissileDetonatorScript

This simple script automatically detonates all warheads on a spacecraft when it detects a sudden deceleration. While designing a large ICBM missile to play in my world with the assertive drones mod, I found that it was difficult to reliably detonate warheads using sensors. One issue with sensors is that they detect voxels from really far out, making them unreliable for taking out stations that are embedded in voxels. Also, setting the correct sensor range was tricky. This script solves this problem by detonating the warheads when a sudden deceleration is detected: I've found this to be much more reliable than using sensors.

Usage

Simply place a programmable block on your ICBM with this script loaded. The script will automatically detonate all warheads on the spacecraft when a sharp deceleration is detected.

You can arm and disarm the script by running it with the %arm and %disarm commands, respectively. By default, the script starts in the "armed" state. This can be changed by setting the "StartArmed" constant.

You can adjust the threshhold at which the missile detonates by setting the "TriggerThreshhold" constant.

Warning! Do NOT turn the programmable block off and on; this can lead to it erroneosly detecting a false high deceleration, which could lead to an explosion! Use the %arm and %disarm commands to enable or disable the script, respectively.

Mixins

RxSpaceEngineers

This mixin is a (vastly stripped-down) version of .NET's rx observables. This is required because the IObservable<T> and IObserver<T> interfaces are not on the Space Engineers whitelist, and therefore cannot be used by in-game scripts.

Algorithms

This mixin contains a simplified implementation of the Simplex algorithm for solving linear equations. The implementation has been optimized to avoid creating excess garbage, which is important for in-game script performance.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages