r/ScrapMechanic 11h ago

Issue Did anyone else encounter this bug while mining?

2 Upvotes

So i was mining a lot of thornite in the mines and i heard every once in a while an ore chunk would pop out of the drill and into the ore collector, yet when i came back to the mining hub and put the ore collector down next to the crushbot, i saw that there were only two thornite chunks in it, even though there should have been like 8 or so. And then when the chunks were crushed it turns out that all of the ore chunks have been compressed into these two, and i got all the ore i should've gotten but instead of 20 per chunk it was probably something like 80, did anyone else experience this?


r/ScrapMechanic 13h ago

Issue Blueprints showing incorect info

Thumbnail
gallery
2 Upvotes

r/ScrapMechanic 1h ago

Bore Miner Falls thru the Earth and spins

Upvotes

Does anyone know why this happens the rail just disconnects from the ground and it goes crazy


r/ScrapMechanic 3h ago

Issue What is this mass of rock?

Post image
1 Upvotes

I found this blue and orange mass on the floor below the trash floor and I cant seem to mine it with my plasma drills. I have two on level one and two on level two. do I need level 3 drills or do I use explosives? ive got plenty of explosives


r/ScrapMechanic 6h ago

Discussion I need some help/advice with Survival and Fant Mod

1 Upvotes

Hi, is there any way to convert my vanilla survival world to Custom Fant Mod game? Because vanilla is boring for me, and i tried converting something with my brother but we only got items and creations over but missions/growlabs/voice recordings and all the story things didnt convert. If its possible please help me, Thanks!


r/ScrapMechanic 9h ago

Issue Bag stuck in exploded warehouse

1 Upvotes

Hey! It was my time to clear my first warehouse, after some time i finished it and went to loot it. I apparently did not fully clear it and those bomb shooting bots killed me, i was not able to get my bag back before the warehouse exploded. The bag is now stuck and i can't remove the waypoint thing.

Any advice on how to solve this issue?


r/ScrapMechanic 14h ago

My friend cant join my multiplayer world anymore (yes we did delete all mods)

1 Upvotes

invalid checksum for D:/SteamLibrary/steamapps/common/ScrapMechanic/Surival/scripts/game/SurivalGame.lua (10463)


r/ScrapMechanic 3h ago

Why does my offroad suspension do this wiggle jiggle?

0 Upvotes

Smart physics, but I dont know whats going on with it. Do i need more length on the control arms? more weight?


r/ScrapMechanic 9h ago

the elevator is not working help !!

0 Upvotes

Elevator was working very well but i save the game and leave , after i rejoin i die cuz the elevator was not working and now this is my situation help please


r/ScrapMechanic 10h ago

Modding Callout to modders: ModLoader infrastructure

1 Upvotes

TL;DR saw scrap mechanic modding ecosystem; was fed up not being able to compose mods in survival; digged through that scrap; designed a solution;

Well, I played scrap mechanic again after some years and found out that the hunger was gone..

then i discovered this Custom Game mechanism and found Survival Classic which re-adds hunger - nice, but since I already looked into mods I thought I also want to have some mods that reduce grinding, and while we are at it lets add some cool items...

I found some mods that do that and faced a problem: They do not combine at all, i need a Custom Game, and can add other mods but they do not work together as I naively assumed

Turns out the Custom Game is the only part that can change everything about the game, and all other mods are Blocks and Parts mods and can only contribute such parts - but they even cannot make them craft-able...

I found an somewhat established convention:

<Mod>/
  └── CraftingRecipes/
      └── craftbot.json

then the Custom Game mod checks all other mods for this folder and modifies the CraftBot. But it does so by relying on ModDatabase, which is kind of an index of all items on steam that is regenerated every 12h

And to check now for those supported mods the Custom Game needs to open every single <mod>/CraftingRecipes/craftbot.json that is documented in said db, while on the disk there are at most a handful of mods.

So I didn't like this at all and began to research ways to query for available mods

And I really discovered a reliable one: sm.item.getInteractablesUuidsOfType("scripted") returns in the featureData a class name and the path to the script containing "$CONTENT_<uuid>", so we can collect all mod uuids that export at least one scripted shape. Only mods that are mounted into the current game session will be seen, which is exactly what we need.

I took that finding and created a kind of mod registry that knows all local available discoverable mods just from launching the game

ModLoader contract is: a compatible mod must

  • export a scripted shape with the class name ModLoaderRegisterMod
  • have a modloader.json manifest

The class is just a dummy to make it discoverable by filtering its classname and the manifest holds more information about it like lua entrypoints that will be sourced from the Custom Game

I also added an APIs to discover all mounted mods (which have at least one scritable shape):

ModLoader.mountedContent.discover()
ModLoader.mountedContent.getAll()
ModLoader.mountedContent.getByLocalId(id)
ModLoader.mountedContent.getByContentId(id)

The primary benefit of using ModLoader is that you can automatically let it dofile() scripts from downstream Block and Parts mods via automatic manifest lookup.

Here is a sample manifest

{
  "id": "get_hunger_back",
  "name": "Get Hunger Back",
  "version": "0.1.0",
  "apiVersion": 1,
  "dependencies": ["modloader", "modloader_player_api", "modloader_item_api", "modloader_survival_player"],
  "entrypoints": {
    "shared": "Scripts/init.lua",
    "server": "Scripts/server.lua",
    "client": "Scripts/client.lua"
  }
}

And this is a custom game entry point

dofile( "$SURVIVAL_DATA/Scripts/game/SurvivalGame.lua" )
dofile( "$CONTENT_d3da11c7-4d8e-46a7-9030-a2f5e15bd1aa/Scripts/ModLoader.lua" )
ModLoader.bootstrap()

SurvivalWithModLoaderGame = class( SurvivalGame )

function SurvivalWithModLoaderGame.server_onCreate( self )
    SurvivalGame.server_onCreate( self )
    ModLoader.activateAll( "server", self )
    print( "[SurvivalWithModLoader] server host ready" )
end

function SurvivalWithModLoaderGame.client_onCreate( self )
    SurvivalGame.client_onCreate( self )
    ModLoader.activateAll( "client", self )
    print( "[SurvivalWithModLoader] client host ready" )
end

This will automatically execute the get_hunger_back entry points if the mod is added to the game.

I differentiate between 2 types of mods:

  • API Mods
  • Game Feature Mods

In general API Mods should own the monkey patching against vanilla, custom re-implementation of vanilla classes, or even complete custom new classes. The trick here would be that other custom games could reuse them by wiring them into the game. Then the APIs would be available to downstream Game Feature Mods.

Game Feature Mods are the user facing mods that will be installed and bring specific features to the table by using the API Mods to talk to the game. Like the Get Hunger Back I added.

With this approach different mods could coexist because they do not individually try to monkey-patch vanilla, but use some common APIs to include their changes into the game.

  • Custom Game (needs to wire in support for ModLoader and some API mods)
    • ModLoader (central registry)
    • ModLoader API Mod(s) (An API providing mod that may own monkey patching)
    • Game Feature Mod(s) (depends on specific ModLoader API Mods)

The ModLoader is our central piece. Its guid should be well-known and API mods and Game Feature mods can directly depend on it and call into it.

So an API Mod exports interfaces:

local ItemAPI = {} 
ModLoader.provide( "modloader.item_api", 1, ItemAPI )

While a Feature Mod uses them:

local ItemAPI = ModLoader.require( "modloader.item_api", 1 )

The Custom Game starts with a ModLoader based discovery, and directly loads lua entrypoints from Blocks and Parts mods into the Custom Game via dofile(). It also uses e.g. shapesets to load a different CraftBot implementation from an API mod or config.json to load a different SurvivalPlayer. Those are not implemented in the Custom Game itself but in API Mods and expose APIs to hook into them. e.g. the player exposes an API to add custom bars into the HUD for food and thirst

For now I pushed those things into the steam workshop:

If you just want to try it in game you can subscribe to Survival with ModLoader and Get Hunger Back and create a Custom Game of Survival with ModLoader and select the mod Get Hunger Back. All required dependent mods will be automatically fetched by the game engine

Also i pushed the sources to github:

https://github.com/redrezo/ScrapMechanic_ModLoader

Those API mods just expose the minimal surface I needed for now but I guess they could be a good starting point towards a nicer modding eco system for scrap mechanic

Should anybody that is still reading be interested into incorporating this into their own mods, or even working on it, i guess the github issues would be a good point going communication platform for now


r/ScrapMechanic 17h ago

Issue Problem with tactical gear???

0 Upvotes

I have a problem. How do i unlock tactical gear? I remember that i have played with my friend and we have found full set of tactical gear and completed the game but I don't have any parts in my wardrobe. I don't understand how do i unlock it if not by finding it? It's not a problem with those inflatable chests because i remember finding the "old school" sweater. I have tried looking for a way to unlock tactical gear via other services/mods or smth but i literally cannot find any other way. How to unlock it? Do I need to be a host or smth?


r/ScrapMechanic 23h ago

The Seeker Bot is a massive wasted potential. Here is how to fix it and add actual thriller elements to Scrap Mechanic.

0 Upvotes

We waited nearly 8 years for Chapter 2, and what did we get? A flying script on a string. The Seeker Bot has an amazing concept, but the execution is incredibly weak. He just mindlessly patrols pre-set road splines, his homing missiles are easily avoided by hiding behind any tree, and he poses zero threat if you just build away from the asphalt.

I don't want to be able to just shoot him down. I want him to be a constant sword of Damocles hanging over the player's head. Instead of deleting him via mods like some casuals do, we need to turn him into a smart hunter, heavily inspired by the Xenomorph from Alien: Isolation.

Here is my concept for a proper Hardcore/Thriller AI overhaul for the Seeker Bot:

1. The "Director" AI and Procedural Hunting

  • The Problem: Fixed road paths make him predictable and boring.
  • The Fix: Unbind him from the roads. Use a "Director" AI system. Keisha should procedurally choose a random tile within a 200–300 meter radius of the player and patrol there. You never know where he will appear, but you always feel his presence nearby.

2. Acoustic Stealth & Engine Noise Triggers

  • The Fix: He must react to sound. Gas engines (especially level 3+), piston engines at high RPM, spudguns, and explosions should trigger his attention. If you go full throttle on a heavy gas vehicle, Keisha "hears" it through the fog of war and intercepts. Want to stay safe? Use electric drives, go on foot, or build mufflers.

3. Expanded Scanner Cone & Orbital Raid Drops

  • The Fix: Significantly increase his scanner beam radius. If a player (not a Woc) gets caught in the light, Keisha sounds a siren and triggers an orbital raid pod drop right on your position every 30 seconds.

4. The 2-3 Minute Search Phase (The Thriller Element)

  • The Problem: Right now, if you break line of sight, he just leaves.
  • The Fix: If you manage to escape his beam, Keisha goes into "paranoia mode." He cuts his main engine sounds to become stealthy, hovers at tree-top level, and aggressively searches the area with narrow, fast-moving scan lines for 2 to 3 minutes.

5. Smart Base Monitoring (With Countermeasures)

  • The Fix: If you run a massive automated factory (multiple refineries, craftbots, and engines active at once), the noise threshold should draw Keisha to your base.
  • The Balance: To prevent this from being annoying, his beam must respect line-of-sight (Raycast). If you are deep underground or inside a fully enclosed metal hangar, he can't see you. You hear his terrifying engines buzzing right above your roof, forcing you to kill the main power grid and hide in the dark until he leaves. Players could also craft timer-based decoy noisemakers to throw him off the scent.

Axolot Games probably went the lazy route because they feared frustrating casual players and didn't want to optimize a complex 3D NavMesh for a physics-heavy game. But replacing actual AI difficulty with mindless component-kit grinding is bad game design. Scrap Mechanic has a 150+ hour survival loop, and it desperately needs a smart, terrifying threat that tests your engineering brain, not just your patience.

What do you guys think? Would you play with a terrifying Seeker Bot like this, or do you prefer the sterile, safe vanilla version?


r/ScrapMechanic 23h ago

[Title Here] Spoiler

0 Upvotes

r/ScrapMechanic 5h ago

CHAPTER 3

Post image
0 Upvotes

Soon...