souldev7 wrote: ↑Sun Oct 30, 2022 12:16 am
It's the same as [Surviving Mars] by same company, except would appear mods are disabled.
The loader apparatus is there, and it uses same bootstrap. But obviously not shown in the UI, nor does it appear to load metadata files.
So instead, best way to tweak the insanity of this game to some degree, is to unpack the HPK, decompile the LUA, modify it, and pack it back up.
This 100% worked for me, was easy enough to do with GREP scans to find what I wanted.
For instance, you can increase max # of survivors when starting a game:
Code: Select all
-- ./Lua/Lua/__const.lua
DefineConst({
group = "Gameplay",
id = "MaxSurvivorsCount",
value = 6
})
-- ./Lua/Lua/PreGameSetup.lua
function GetMaxSurvivorsCount(scenario_id)
local scenario_def = scenario_id and ScenarioDefs[scenario_id]
return const.Gameplay.MaxSurvivorsCount
end
Or double the speed of movement of your survivors (1000 = 1, so 2000 = 2; same applies for all integers in the game, if you search for "movement_adjust" you'll see it's a multiplier reduced by 1k affecting a 100% scaled integer.. so it's like: 0.25 * 1 = 25% where .25 is dynamic based on condition of the unit):
Code: Select all
-- ./Lua/Lua/UnitComponents/UnitHealth.lua
invulnerable = false,
is_falling = false,
next_vomit_time = false,
is_vomiting = false,
movement_adjust = 2000
Or speed up bandage craft speed:
Code: Select all
-- ./Data/Recipe.lua
Activity = "Crafting",
ActivityDuration = 10000,
ActivityXPGrade = "Crafting_Low",
BuildCategory = "CraftResources",
Description = T(746560224749, "Make bandages from cloth pieces."),
DisplayName = T(751595636010, "Bandages (scrap cloth)"),
Or let people chill the F out a little:
Code: Select all
-- ./Lua/Lua/UnitComponents/UnitRelaxation.lua
category = "Relaxation",
id = "RelaxationLossPerDay",
name = T(241929465459, "Daily relaxation loss"),
editor = "number",
modifiable = true,
scale = 1000,
default = 30000
---------------------
So in order to do that, you need the HPK extractor..
[Link]
Then you need a decompiler. I used the Mod package here:
https://www.fearlessrevolution.com/surv ... ?tab=files
(which is just a powershell script to extract everything)
Combined with unluac:
[Link]
I found that the Victor Vran bytecode header situation applies here. Given that they switched to lua 5.3.
Powershell script handles that for you when executing hpk.exe.
However when repackaging I found that you HAVE to disable compression or the game just crashes, or fails to load the main menu runtime (step 4 below).
That could just be a switch for lz4 algorithm that needs tweaked a bit. Not sure, but uncompressed works just fine for me.
So the process is like so:
1. Follow the guide for the NexusMod powershell script (you need java, unluac, and hpk.exe sitting in the root folder of the game. set exec policy, and run it)
2. Now you have extracted everything (__Unpacked folder). __Unpacked/Packs/Lua and ./Data are of interest.
3. Modify whatever you want.
4. Pack it up using the command: (specify the folder to repackage, ex. "Lua", or "Data")
Code: Select all
hpk create --cripple-lua-files --dont-compress-files Lua Lua.hpk
and copy that to C:\Program Files (x86)\Steam\SteamApps\common\Stranded Alien Dawn\Packs (and overwrite, after you backup original obviously).
Test that game boots and no corrupt decompilation/repackaging, & off you go.
I still haven't been able to find certain things, like % chance of Expedition resulting in a new recruit (I'm on year 8 and still 5 people; rough as hell with 100+ unit enemy spawns. I like it tough, just not without hope for the future
).
I'm also very curious about fixing the pathing (character runs back and forth across a field to gather, when it could rather target the closest pickup), and spotted several files in there relating to it. So far looks like potentially a simple array sort will resolve.
Anyway - good luck to he who reads, and he who doesn't too.