Skip to content

New Shuttle: NTS 'Kickstart' Ingeniator#4749

Merged
Rinary1 merged 29 commits into
ss14Starlight:starlight-devfrom
Dennisz125:Ingeniator-Shuttles
Jun 19, 2026
Merged

New Shuttle: NTS 'Kickstart' Ingeniator#4749
Rinary1 merged 29 commits into
ss14Starlight:starlight-devfrom
Dennisz125:Ingeniator-Shuttles

Conversation

@Dennisz125

@Dennisz125 Dennisz125 commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Short description

Adding a new engineering shuttle, NTS 'Kickstart' Ingeniator. The Ingeniator is now a purchasable option in the shipyard console for 100,000 spesos.

Why we need to add this

This shuttle is designed as a recovery option for stations that have lost their entire Engineering department and are not yet ready to evacuate (or the captain thinks early EVAC is a cowardly move). Unlike the existing ERT Engineering Shuttle, it does not require crew or ERT personnel to assemble a new power generation system from scratch. Once docked, the shuttle's onboard atmospherics and power generation systems can immediately support the station, effectively serving as a mobile replacement for the station's engineering department and helping restore normal operations.

Media (Video/Screenshots)

image

Checks

  • I do not require assistance to complete the PR.
  • Before posting/requesting review of a PR, I have verified that the changes work.
  • I have added screenshots/videos of the changes, or this PR does not change in-game mechanics.
  • I affirm that my changes are licensed under the MIT License and grant permission for use in this repository under its conditions.

Support I might need

Please, may I have an assistant to ensure the shuttle meets the requirements for Shuttle Request calls? It's my first time uploading a shuttle to the Starlight Project.

Bonus Points if the shuttle meets the minimum requirements for a valid Engineering Department under the Station's Guidelines.

Changelog

🆑 Hot_Mic

  • add: Added Shuttle "NTS 'Kickstart' Ingeniator", a purchasable engineering shuttle in the shipyard console for 100,000 spesos.

@Dennisz125 Dennisz125 requested a review from a team June 12, 2026 04:09
@github-actions github-actions Bot added size/XL S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. Changes: Map Changes: C# and removed S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Jun 12, 2026
@coderabbitai

coderabbitai Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

An error occurred during the review process. Please try again later.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Content.IntegrationTests/Tests/_Starlight/Power/GridPowerTests.cs`:
- Around line 96-98: The GridPaths array has missing commas between consecutive
entries (the new("/Maps/_Starlight/Shuttles/emergency_lox.yml"),
new("/Maps/_Starlight/Shuttles/emergency_Ingeniator.yml"),
new("/Maps/_Starlight/Shuttles/Ingeniator.yml") lines), which breaks
compilation; add commas to separate each entry in the GridPaths initializer so
each new(...) is a distinct element (e.g. insert a comma after each new(...)
except the last) and ensure the GridPaths collection compiles correctly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Run ID: cd97b32c-4077-442a-a1ac-fd23357f0830

📥 Commits

Reviewing files that changed from the base of the PR and between a0265df and 2cd2f8e.

📒 Files selected for processing (3)
  • Content.IntegrationTests/Tests/_Starlight/Power/GridPowerTests.cs
  • Resources/Maps/Shuttles/Ingeniator.yml
  • Resources/Maps/Shuttles/emergency_Ingeniator.yml

Comment thread Content.IntegrationTests/Tests/_Starlight/Power/GridPowerTests.cs Outdated
coderabbitai[bot]
coderabbitai Bot previously approved these changes Jun 12, 2026
@R3v3l4t1on

Copy link
Copy Markdown
Contributor

You could shrink this shuttle considerably by going for the small reactor and turbine. Despite their smaller footprint they're still MORE than capable of powering a full station. I also find it quite interesting that there's no room for a tesla/singulo based engine.

@Dennisz125

Copy link
Copy Markdown
Contributor Author

Noted, I will swap them out and see what I can do with them.

@CawsForConcern CawsForConcern left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

review

invalid YML

your SMES start with settings that leave them unable to provide power to the rest of the shuttle, despite having plenty of power stored.

Image

reviewing the map YML, your shuttle's SMES looks like this

- proto: SMESAdvanced
  entities:
  - uid: 462
    components:
    - type: Transform
      pos: -8.5,33.5
      parent: 1
    - type: Battery
      lastCharge: 15998939
    - type: PowerNetworkBattery
      loadingNetworkDemand: 31830.031
      currentSupply: 31830.031
      supplyRampPosition: 31830.031
    - type: DeviceNetwork
      address: SMS-4D47-989D
      transmitFrequency: 1621
      receiveFrequency: 1621
    - type: ContainerContainer
      containers:
        machine_board: !type:Container
          showEnts: False
          occludes: True
          ents:
          - 463
        machine_parts: !type:Container
          showEnts: False
          occludes: True
          ents:
          - 475
          - 465
          - 467
          - 469
          - 471
          - 473
    - type: BatterySelfRecharger
      nextAutoRecharge: null
      autoRechargeRate: 16000000

for a normal shuttle, it looks like this:

- proto: SMESAdvanced
  entities:
  - uid: 260
    components:
    - type: Transform
      pos: 8.5,-4.5
      parent: 1

this is the kind of stuff that happens when you save a live map / grid. it serializes a lot of junk that shouldn't be saved to the shuttle.

i would recommend that you remake this map entirely - it's got a lot of bad YML data in it to the point you would need to delete mostly every entity on the map and replace it.

your SL Vending Machine has a bunch of contraband in it somehow

i don't even know how this happened but the YML says that the 'engi dispenser' SLVendingMachienEngi has every single changeling, Syndicate uplink, and wizard ability in the game.

seriously it's like thousands of lines of YML entries, here's just a brief snippet

- proto: SLVendingMachineEngi
  entities:
  - uid: 2347
    components:
    - type: Transform
      pos: -1.5,33.5
      parent: 1
    - type: Store
      startingMap: invalid
      fullListingsCatalog:
      - id: EvolutionMenuAmalgamOverdose
        destockTime: 0
        name: evolutionmenu-utility-hyper-stims-name
        discountCategory: null
        description: evolutionmenu-utility-hyper-stims-desc
        categories:
        - ChangelingAbilityUtility
        originalCost:
          EvolutionPoint: 5
        conditions:
        - !type:ListingLimitedStockCondition
          stock: 1
        icon:
          sprite: _Starlight/Actions/changeling.rsi
          state: amalgam_overdose
        priority: 0
        productEntity: null
        productAction: ActionAmalgamOverdose
        productLanguage: null
        productUpgradeId: null
        productActionEntity: null
        productEvent: null
        raiseProductEventOnUser: False
        purchaseAmount: 0
        restockTime: 0
        discountDownTo: {}
        disableRefund: False
        unavailable: False
        applyToMob: False
        costModifiersBySourceId: {}
      - id: UplinkZombieBundle
        destockTime: 0
        name: uplink-zombie-bundle-name
        discountCategory: null
        description: uplink-zombie-bundle-desc
        categories:
        - UplinkChemicals
        originalCost:
          Telecrystal: 40
        conditions:
        - !type:StoreWhitelistCondition
          blacklist: null
          whitelist:
            requireAll: False
            tags:
            - NukeOpsUplink
            sizes: null
            components: null
        - !type:BuyerWhitelistCondition
          blacklist:
            requireAll: False
            tags: null
            sizes: null
            components:
            - SurplusBundle
          whitelist: null
        icon:
          sprite: /Textures/Structures/Wallmounts/signs.rsi
          state: bio
        priority: 0
        productEntity: ClothingBackpackDuffelZombieBundle
        productAction: null
        productLanguage: null
        productUpgradeId: null
        productActionEntity: null
        productEvent: null
        raiseProductEventOnUser: False
        purchaseAmount: 0
        restockTime: 0
        discountDownTo: {}
        disableRefund: False
        unavailable: False
        applyToMob: False
        costModifiersBySourceId: {}

it goes on like that for a long time

bridge could be more bridge-y

this is pretty plain. it could use some tables, cell rechargers, and most importantly - chairs. where are people going to sit when this thing FTLs?

Image

don't map Command jobs to a shuttle

you've mapped the CE's locker, dresser, and suit storage to this shuttle. this introduces duplicate items into the round (stuff like the CE's custom suit, advanced magboots, etc) when it really shouldn't

Image

decor

throw in some decals in here, a carpet, some chairs. where do people sit? where do people recharge their translators? where do people get some water for a drink? take a look at station maps for inspiration on how to fill out this room some more.

Image

label your fax machines

you didn't name this fax machine, it'll show up as 'Unknown' on the fax list which isn't helpful for anyone. use a screwdriver on a fax machine to name it.

also, limit the amount of fax machines you have on a shuttle to 1.

Image Image

put the AME parts the correct way around

your AME has all of its bits the wrong way around.

Image

it should look like this

Image

nuclear reactor is unanchored

it should be anchored

Image

gas turbine is unanchored

it should be anchored

Image

waste is broken

a bunch of your waste pipes aren't connected

Image

loose light tube in burn chamber

Image

use large thrusters if your shuttle is large

use the big thruster rather than lots of tiny ones. they're stronger. this shuttle is very large and should use large thrusters.

Image Image

airlock locking logic on south side is weak

if you open both of the red airlocks and close only one of them, the south door will unbolt. this will space one of the two rooms

Image

station maps

StationMap works on shuttles and you shuttle is large. you might as well throw a few of these around on the shuttle since you already have station beacons on it

grills under windows

generally grilles are put under all windows unless there's a very specific aesthetic choice being made

Image

@CawsForConcern CawsForConcern added S: Awaiting Changes Status: Changes are required before another review can happen DONOTMERGE and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Jun 12, 2026
@CawsForConcern

Copy link
Copy Markdown
Contributor

i would recommend making a "version 2" from scratch and taking the feedback into account. the YML stuff already involves deleting most entities and replacing them

one thing I was impressed by was the airlock docking logic gates - I thought the airlocks would 'jam up' when docking to stations and i was pleasantly surprised they worked perfectly. really cool and very compact - it is genuinely a design I will look at implementing on more shuttles in the future.

Update the Shuttles based on CawsForConcern's Feedback
@Dennisz125

Copy link
Copy Markdown
Contributor Author

The GitHub page has been updated with a new image.

@github-actions github-actions Bot removed the S: Merge Conflict Status: Needs to resolve merge conflicts before it can be accepted label Jun 17, 2026
coderabbitai[bot]
coderabbitai Bot previously approved these changes Jun 17, 2026
Add a nickname 'Kickstart' to the Grid's name.
Replace several small thrusters with large thrusters
Add a new Gyroscope

@CawsForConcern CawsForConcern left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think this is in a good enough state

approved!

@CawsForConcern CawsForConcern added S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Jun 18, 2026

@redmushie redmushie left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aw man, EditorCheck fail real.

@starlightgithub starlightgithub Bot added S: Awaiting Changes Status: Changes are required before another review can happen and removed S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. labels Jun 18, 2026
@Dennisz125

Copy link
Copy Markdown
Contributor Author

I fixed the issues that the EditorCheck complains. Hopefully, the rest of the tests are fine.

@Dennisz125 Dennisz125 requested a review from redmushie June 18, 2026 18:03
@github-actions github-actions Bot added S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. and removed S: Awaiting Changes Status: Changes are required before another review can happen labels Jun 18, 2026
@CawsForConcern CawsForConcern added S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Jun 18, 2026
@Rinary1 Rinary1 added this pull request to the merge queue Jun 19, 2026
Merged via the queue into ss14Starlight:starlight-dev with commit b031216 Jun 19, 2026
24 checks passed
starlightgithub Bot added a commit that referenced this pull request Jun 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Changes: C# Changes: Map Changes: Prototypes S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. size/XL T: New Content

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants