mirror of
https://github.com/clusterio/clusterio.git
synced 2026-11-12 07:04:52 +09:00
resolves #60 sharedMods doesn't affect instance mods
Might have broken backwards compat???
This commit is contained in:
1 parent
682856c0a5
commit
6ecdde8cbc
4 files changed
+4964
-8
No files matched your search
@@ -75,7 +75,7 @@ Server host (Slave) = client.js + factorio server
|
||||
|
||||
Game Client = The people connecting to the server
|
||||
|
||||
All Server Hosts (Slaves) AND Game Clients need to be running the clusterio mod located at [github](https://github.com/Danielv123/factorioClusterioMod) Install it by dropping it into the mods folder.
|
||||
All Server Hosts (Slaves) AND Game Clients need to be running the clusterio mod located at [github](https://github.com/Danielv123/factorioClusterioMod) Install it by dropping it into either the sharedMods folder or instances/[instanceName]/instanceMods folder.
|
||||
|
||||
There are no requirements for other mods, they can be ran in any configuration allowed by the base game.
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ const hashFiles = require('hash-files');
|
||||
const _ = require('underscore');
|
||||
const deepmerge = require("deepmerge");
|
||||
const getMac = require('getmac').getMac;
|
||||
|
||||
const rmdirSync = require('rmdir-sync');
|
||||
// internal libraries
|
||||
const objectOps = require("./lib/objectOps.js");
|
||||
const fileOps = require("./lib/fileOps.js");
|
||||
@@ -135,12 +135,11 @@ if (!command || command == "help" || command == "--help") {
|
||||
console.log('node client.js manage '+(instance || '[instance, "shared"]') +' '+ (tool || '["mods", "config"]') + ' ...');
|
||||
}
|
||||
}
|
||||
const modManagerUsage1 = 'node client.js manage ';
|
||||
const modManagerUsage2 = ' mods ["list", "update"]';
|
||||
const tool = process.argv[4] || "";
|
||||
const action = process.argv[5] || "";
|
||||
if(instance){
|
||||
if(tool == "mods"){
|
||||
// allow managing mods
|
||||
if(action == "list"){
|
||||
modManager.listMods(instance);
|
||||
} else if(action == "search"){
|
||||
@@ -151,6 +150,7 @@ if (!command || command == "help" || command == "--help") {
|
||||
usage(instance, tool);
|
||||
}
|
||||
} else if(tool == "config"){
|
||||
// allow managing the config
|
||||
if(action == "list" || action == "show" || action == "display"){
|
||||
configManager.displayConfig(instance);
|
||||
} else if(action == "edit"){
|
||||
@@ -214,6 +214,7 @@ if (!command || command == "help" || command == "--help") {
|
||||
fs.writeFileSync(instancedirectory + "/script-output/orders.txt", "");
|
||||
fs.writeFileSync(instancedirectory + "/script-output/txbuffer.txt", "");
|
||||
fs.mkdirSync(instancedirectory + "/mods/");
|
||||
fs.mkdirSync(instancedirectory + "/instanceMods/");
|
||||
// fs.symlinkSync('../../../sharedMods', instancedirectory + "/mods", 'junction') // This is broken because it can only take a file as first argument, not a folder
|
||||
fs.writeFileSync(instancedirectory + "/config.ini", "[path]\r\n\
|
||||
read-data=__PATH__executable__/../../data\r\n\
|
||||
@@ -226,7 +227,7 @@ write-data=__PATH__executable__/../../../instances/" + instance + "\r\n\
|
||||
"clientPort": process.env.RCONPORT | Math.floor(Math.random() * 65535),
|
||||
"clientPassword": Math.random().toString(36).replace(/[^a-z]+/g, '').substr(0, 8),
|
||||
}
|
||||
console.log("Clusterio | Moving shared mods...");
|
||||
console.log("Clusterio | Created instance with settings:")
|
||||
console.log(instconf);
|
||||
|
||||
// create instance config
|
||||
@@ -300,8 +301,18 @@ write-data=__PATH__executable__/../../../instances/" + instance + "\r\n\
|
||||
}
|
||||
|
||||
// move mods from ./sharedMods to the instances mod directory
|
||||
console.log("Clusterio | Moving shared mods...");
|
||||
try {
|
||||
fs.mkdirSync(instancedirectory + "/instanceMods/");
|
||||
} catch(e){}
|
||||
try{rmdirSync(instancedirectory + "/mods");}catch(e){}
|
||||
try {
|
||||
// mods directory that will be emptied (deleted) when closing the server to facilitate seperation of instanceMods and sharedMods
|
||||
fs.mkdirSync(instancedirectory + "/mods/");
|
||||
} catch(e){}
|
||||
console.log("Clusterio | Moving shared mods from sharedMods/ to instance/mods...");
|
||||
fs.copySync('sharedMods', instancedirectory + "/mods");
|
||||
console.log("Clusterio | Moving instance specific mods from instance/instanceMods to instance/mods...");
|
||||
fs.copySync(instancedirectory + "/instanceMods", instancedirectory + "/mods");
|
||||
|
||||
process.on('SIGINT', function () {
|
||||
console.log("Caught interrupt signal");
|
||||
|
||||
Generated
+4946
-2
File diff suppressed because it is too large.
Load diff
@@ -48,6 +48,7 @@
|
||||
"portfinder": "^1.0.9",
|
||||
"request": "^2.83.0",
|
||||
"right-pad": "^1.0.1",
|
||||
"rmdir-sync": "^1.0.1",
|
||||
"semver": "^5.4.1",
|
||||
"simple-rcon": "^0.3.1",
|
||||
"sync-request": "^4.0.1",
|
||||
|
||||
Reference in new issue
Block a user