satisfactory-json
Advanced tools
Comparing version 0.0.59 to 0.0.60
@@ -52,3 +52,3 @@ #!/usr/bin/env node | ||
} | ||
commander_1.default | ||
commander_1.default.program | ||
.description('Converts from the more readable format (.json) ' + | ||
@@ -64,9 +64,9 @@ 'back to a Satisfactory save game (.sav)') | ||
.parse(process.argv); | ||
var options = commander_1.default.opts(); | ||
var options = commander_1.default.program.opts(); | ||
if (sourceValue === undefined) { | ||
commander_1.default.outputHelp(); | ||
commander_1.default.program.outputHelp(); | ||
quitWithError('No source file specified.'); | ||
} | ||
else if (targetValue === undefined) { | ||
commander_1.default.outputHelp(); | ||
commander_1.default.program.outputHelp(); | ||
quitWithError('No target file specified.'); | ||
@@ -73,0 +73,0 @@ } |
@@ -37,3 +37,3 @@ #!/usr/bin/env node | ||
} | ||
commander_1.default | ||
commander_1.default.program | ||
.description('Converts Satisfactory save games (.sav) into a more readable format (.json)') | ||
@@ -48,9 +48,9 @@ .arguments('<source> <target>') | ||
.parse(process.argv); | ||
var options = commander_1.default.opts(); | ||
var options = commander_1.default.program.opts(); | ||
if (sourceValue === undefined) { | ||
commander_1.default.outputHelp(); | ||
commander_1.default.program.outputHelp(); | ||
quitWithError('No source file specified.'); | ||
} | ||
else if (targetValue === undefined) { | ||
commander_1.default.outputHelp(); | ||
commander_1.default.program.outputHelp(); | ||
quitWithError('No target file specified.'); | ||
@@ -57,0 +57,0 @@ } |
@@ -36,10 +36,10 @@ "use strict"; | ||
var chunk = buffer.slice(0, this.maxChunkSize); | ||
var deflatedChunk = pako_1.deflate(chunk); | ||
var deflatedChunk = (0, pako_1.deflate)(chunk); | ||
var chunkHeader = Buffer.alloc(48); | ||
Archive_1.writeBigInt64LE(chunkHeader, this.packageFileTag, 0); | ||
Archive_1.writeBigInt64LE(chunkHeader, jsbi_1.default.BigInt(this.maxChunkSize), 8); | ||
Archive_1.writeBigInt64LE(chunkHeader, jsbi_1.default.BigInt(deflatedChunk.length), 16); | ||
Archive_1.writeBigInt64LE(chunkHeader, jsbi_1.default.BigInt(chunk.length), 24); | ||
Archive_1.writeBigInt64LE(chunkHeader, jsbi_1.default.BigInt(deflatedChunk.length), 32); | ||
Archive_1.writeBigInt64LE(chunkHeader, jsbi_1.default.BigInt(chunk.length), 40); | ||
(0, Archive_1.writeBigInt64LE)(chunkHeader, this.packageFileTag, 0); | ||
(0, Archive_1.writeBigInt64LE)(chunkHeader, jsbi_1.default.BigInt(this.maxChunkSize), 8); | ||
(0, Archive_1.writeBigInt64LE)(chunkHeader, jsbi_1.default.BigInt(deflatedChunk.length), 16); | ||
(0, Archive_1.writeBigInt64LE)(chunkHeader, jsbi_1.default.BigInt(chunk.length), 24); | ||
(0, Archive_1.writeBigInt64LE)(chunkHeader, jsbi_1.default.BigInt(deflatedChunk.length), 32); | ||
(0, Archive_1.writeBigInt64LE)(chunkHeader, jsbi_1.default.BigInt(chunk.length), 40); | ||
this.push(chunkHeader); | ||
@@ -46,0 +46,0 @@ this.push(deflatedChunk); |
"use strict"; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
@@ -7,2 +10,3 @@ exports.DecompressionTransform = void 0; | ||
var TransformationEngine_1 = require("./TransformationEngine"); | ||
var jsbi_1 = __importDefault(require("jsbi")); | ||
var DecompressionTransform = /** @class */ (function () { | ||
@@ -43,3 +47,3 @@ function DecompressionTransform() { | ||
} | ||
var inflated = pako_1.inflate(compressedChunk); | ||
var inflated = (0, pako_1.inflate)(compressedChunk); | ||
this.uncompressedBuffer = Buffer.from(inflated); | ||
@@ -89,3 +93,3 @@ this.firstRead = false; | ||
} | ||
return chunk.read(Number(compressedSize)); | ||
return chunk.read(jsbi_1.default.toNumber(compressedSize)); | ||
}; | ||
@@ -92,0 +96,0 @@ return DecompressionTransform; |
@@ -60,3 +60,3 @@ "use strict"; | ||
builder.elem('_index'); | ||
TextProperty_1.transformFText(builder); | ||
(0, TextProperty_1.transformFText)(builder); | ||
builder.endElem(); | ||
@@ -148,3 +148,3 @@ }) | ||
builder.elem('_index'); | ||
FINetworkTrace_1.transformFINNetworkTrace(builder); | ||
(0, FINetworkTrace_1.transformFINNetworkTrace)(builder); | ||
builder.endElem(); | ||
@@ -151,0 +151,0 @@ }, |
@@ -97,2 +97,5 @@ "use strict"; | ||
}, | ||
BoolProperty: function (builder) { | ||
builder.byte('value'); | ||
}, | ||
$default: function (builder) { | ||
@@ -99,0 +102,0 @@ builder.exec(function (ctx) { |
@@ -33,10 +33,12 @@ "use strict"; | ||
ctx.tmp._zero3 !== 0) { | ||
throw new Error('Struct GUID not 0, but ' + | ||
ctx.tmp._zero0 + | ||
' ' + | ||
ctx.tmp._zero1 + | ||
' ' + | ||
ctx.tmp._zero2 + | ||
' ' + | ||
ctx.tmp._zero3); | ||
// throw new Error( | ||
// 'Struct GUID not 0, but ' + | ||
// ctx.tmp._zero0 + | ||
// ' ' + | ||
// ctx.tmp._zero1 + | ||
// ' ' + | ||
// ctx.tmp._zero2 + | ||
// ' ' + | ||
// ctx.tmp._zero3 | ||
// ); | ||
} | ||
@@ -46,40 +48,57 @@ }) | ||
.switch('type', { | ||
Vector: function (builder) { return Vector_1.transformVector(builder); }, | ||
Rotator: function (builder) { return Vector_1.transformVector(builder); }, | ||
Box: function (builder) { return Box_1.transformBox(builder); }, | ||
Color: function (builder) { return Color_1.transformColor(builder); }, | ||
LinearColor: function (builder) { return LinearColor_1.transformLinearColor(builder); }, | ||
Quat: function (builder) { return Quat_1.transformQuat(builder); }, | ||
InventoryItem: function (builder) { return InventoryItem_1.transformInventoryItem(builder); }, | ||
Vector: function (builder) { return (0, Vector_1.transformVector)(builder); }, | ||
Rotator: function (builder) { return (0, Vector_1.transformVector)(builder); }, | ||
Box: function (builder) { return (0, Box_1.transformBox)(builder); }, | ||
Color: function (builder) { return (0, Color_1.transformColor)(builder); }, | ||
LinearColor: function (builder) { return (0, LinearColor_1.transformLinearColor)(builder); }, | ||
Quat: function (builder) { return (0, Quat_1.transformQuat)(builder); }, | ||
InventoryItem: function (builder) { return (0, InventoryItem_1.transformInventoryItem)(builder); }, | ||
RailroadTrackPosition: function (builder) { | ||
return RailroadTrackPosition_1.transformRailroadTrackPosition(builder); | ||
return (0, RailroadTrackPosition_1.transformRailroadTrackPosition)(builder); | ||
}, | ||
TimerHandle: function (builder) { return TimerHandle_1.transformTimerHandle(builder); }, | ||
Transform: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
RemovedInstanceArray: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
InventoryStack: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
ProjectileData: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
Guid: function (builder) { return Guid_1.transformGuid(builder); }, | ||
TrainSimulationData: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
FluidBox: function (builder) { return FluidBox_1.transformFluidBox(builder); }, | ||
ResearchData: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
SlateBrush: function (builder) { return SlateBrush_1.transformSlateBrush(builder); }, | ||
Hotbar: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
EnabledCheats: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
Vector2D: function (builder) { return Vector2D_1.transformVector2D(builder); }, | ||
DroneTripInformation: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
DroneDockingStateInfo: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
LightSourceControlData: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
FINNetworkTrace: function (builder) { return FINetworkTrace_1.transformFINNetworkTrace(builder); }, | ||
FFSlugBreedTask: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
FICFloatAttribute: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
FFCompostingTask: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
FFSeedExtrationTask: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
FFSlimeProcessingTask: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
SInventory: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
FFPlotTask: function (builder) { return ArbitraryStruct_1.transformArbitraryStruct(builder); }, | ||
TimerHandle: function (builder) { return (0, TimerHandle_1.transformTimerHandle)(builder); }, | ||
Transform: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RemovedInstanceArray: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
InventoryStack: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
ProjectileData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
Guid: function (builder) { return (0, Guid_1.transformGuid)(builder); }, | ||
TrainSimulationData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FluidBox: function (builder) { return (0, FluidBox_1.transformFluidBox)(builder); }, | ||
ResearchData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
SlateBrush: function (builder) { return (0, SlateBrush_1.transformSlateBrush)(builder); }, | ||
Hotbar: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
EnabledCheats: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
Vector2D: function (builder) { return (0, Vector2D_1.transformVector2D)(builder); }, | ||
DroneTripInformation: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
DroneDockingStateInfo: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
LightSourceControlData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FactoryCustomizationData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FactoryCustomizationColorSlot: function (builder) { | ||
return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); | ||
}, | ||
// Mods | ||
FFSlugBreedTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FICFloatAttribute: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FFCompostingTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FFSeedExtrationTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FFSlimeProcessingTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
SInventory: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
FFPlotTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
DateTime: function (builder) { return (0, DateTime_1.transformDateTime)(builder); }, | ||
FINNetworkTrace: function (builder) { return (0, FINetworkTrace_1.transformFINNetworkTrace)(builder); }, | ||
FINLuaProcessorStateStorage: function (builder) { | ||
return FINLuaProcessorStateStorage_1.transformFINLuaProcessorStateStorage(builder); | ||
return (0, FINLuaProcessorStateStorage_1.transformFINLuaProcessorStateStorage)(builder); | ||
}, | ||
DateTime: function (builder) { return DateTime_1.transformDateTime(builder); }, | ||
RPHeaterTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPProductionTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPHeaterItemData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPBoilerItemData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPTurbineItemData: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPMRReactorChamberState: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPMRSupportRingState: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
Loot: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPPatreon: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPIcarusState: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
RPMRReactorProductionTask: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
ItemAmount: function (builder) { return (0, ArbitraryStruct_1.transformArbitraryStruct)(builder); }, | ||
$default: function (builder) { | ||
@@ -86,0 +105,0 @@ return builder.error(function (ctx) { return "Unknown struct property: " + ctx.obj.type; }); |
{ | ||
"name": "satisfactory-json", | ||
"version": "0.0.59", | ||
"version": "0.0.60", | ||
"description": "Convert Satisfactory save files to JSON and back", | ||
"author": "ficsit-felix", | ||
"dependencies": { | ||
"jsbi": "^3.1.6", | ||
"jsbi": "^4.0.0", | ||
"pako": "^2.0.4" | ||
}, | ||
"devDependencies": { | ||
"@types/node": "^16.6.1", | ||
"@types/commander": "^2.12.2", | ||
"@types/node": "^16.11.6", | ||
"@types/pako": "^1.0.2", | ||
"@typescript-eslint/eslint-plugin": "^4.29.1", | ||
"@typescript-eslint/parser": "^4.29.1", | ||
"commander": "^7.0.0", | ||
"eslint": "^7.32.0", | ||
"@typescript-eslint/eslint-plugin": "^5.2.0", | ||
"@typescript-eslint/parser": "^5.2.0", | ||
"commander": "^8.3.0", | ||
"eslint": "^8.1.0", | ||
"eslint-config-prettier": "^8.3.0", | ||
"eslint-plugin-prettier": "^3.3.0", | ||
"prettier": "^2.3.2", | ||
"ts-node": "^10.2.0", | ||
"typescript": "^4.3.5", | ||
"v8-profiler-next": "^1.4.2" | ||
"eslint-plugin-prettier": "^4.0.0", | ||
"prettier": "^2.4.1", | ||
"ts-node": "^10.4.0", | ||
"typescript": "^4.4.4", | ||
"v8-profiler-next": "^1.4.3" | ||
}, | ||
@@ -24,0 +25,0 @@ "files": [ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
310686
4649
13
+ Addedjsbi@4.3.0(transitive)
- Removedjsbi@3.2.5(transitive)
Updatedjsbi@^4.0.0