mirror of
https://github.com/dscalzi/HeliosLauncher.git
synced 2024-12-22 03:32:12 -08:00
Use --fml.modLists instead of --fml.mods to avoid potential cli length limit issues.
This commit is contained in:
parent
e6897dad2c
commit
cc86f2a257
@ -23,6 +23,7 @@ class ProcessBuilder {
|
||||
this.forgeData = forgeData
|
||||
this.authUser = authUser
|
||||
this.launcherVersion = launcherVersion
|
||||
this.forgeModListFile = path.join(this.gameDir, 'forgeMods.list') // 1.13+
|
||||
this.fmlDir = path.join(this.gameDir, 'forgeModList.json')
|
||||
this.llDir = path.join(this.gameDir, 'liteloaderModList.json')
|
||||
this.libPath = path.join(this.commonDir, 'libraries')
|
||||
@ -44,9 +45,9 @@ class ProcessBuilder {
|
||||
|
||||
// Mod list below 1.13
|
||||
if(!Util.mcVersionAtLeast('1.13', this.server.getMinecraftVersion())){
|
||||
this.constructModList('forge', modObj.fMods, true)
|
||||
this.constructJSONModList('forge', modObj.fMods, true)
|
||||
if(this.usingLiteLoader){
|
||||
this.constructModList('liteloader', modObj.lMods, true)
|
||||
this.constructJSONModList('liteloader', modObj.lMods, true)
|
||||
}
|
||||
}
|
||||
|
||||
@ -54,7 +55,8 @@ class ProcessBuilder {
|
||||
let args = this.constructJVMArguments(uberModArr, tempNativePath)
|
||||
|
||||
if(Util.mcVersionAtLeast('1.13', this.server.getMinecraftVersion())){
|
||||
args = args.concat(this.constructModArguments(modObj.fMods))
|
||||
//args = args.concat(this.constructModArguments(modObj.fMods))
|
||||
args = args.concat(this.constructModList(modObj.fMods))
|
||||
}
|
||||
|
||||
logger.log('Launch Arguments:', args)
|
||||
@ -224,7 +226,7 @@ class ProcessBuilder {
|
||||
* @param {Array.<Object>} mods An array of mods to add to the mod list.
|
||||
* @param {boolean} save Optional. Whether or not we should save the mod list file.
|
||||
*/
|
||||
constructModList(type, mods, save = false){
|
||||
constructJSONModList(type, mods, save = false){
|
||||
const modList = {
|
||||
repositoryRoot: ((type === 'forge' && this._requiresAbsolute()) ? 'absolute:' : '') + path.join(this.commonDir, 'modstore')
|
||||
}
|
||||
@ -249,22 +251,46 @@ class ProcessBuilder {
|
||||
return modList
|
||||
}
|
||||
|
||||
// /**
|
||||
// * Construct the mod argument list for forge 1.13
|
||||
// *
|
||||
// * @param {Array.<Object>} mods An array of mods to add to the mod list.
|
||||
// */
|
||||
// constructModArguments(mods){
|
||||
// const argStr = mods.map(mod => {
|
||||
// return mod.getExtensionlessID()
|
||||
// }).join(',')
|
||||
|
||||
// if(argStr){
|
||||
// return [
|
||||
// '--fml.mavenRoots',
|
||||
// path.join('..', '..', 'common', 'modstore'),
|
||||
// '--fml.mods',
|
||||
// argStr
|
||||
// ]
|
||||
// } else {
|
||||
// return []
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
/**
|
||||
* Construct the mod argument list for forge 1.13
|
||||
*
|
||||
* @param {Array.<Object>} mods An array of mods to add to the mod list.
|
||||
*/
|
||||
constructModArguments(mods){
|
||||
const argStr = mods.map(mod => {
|
||||
constructModList(mods) {
|
||||
const writeBuffer = mods.map(mod => {
|
||||
return mod.getExtensionlessID()
|
||||
}).join(',')
|
||||
}).join('\n')
|
||||
|
||||
if(argStr){
|
||||
if(writeBuffer) {
|
||||
fs.writeFileSync(this.forgeModListFile, writeBuffer, 'UTF-8')
|
||||
return [
|
||||
'--fml.mavenRoots',
|
||||
path.join('..', '..', 'common', 'modstore'),
|
||||
'--fml.mods',
|
||||
argStr
|
||||
'--fml.modLists',
|
||||
this.forgeModListFile
|
||||
]
|
||||
} else {
|
||||
return []
|
||||
|
6
package-lock.json
generated
6
package-lock.json
generated
@ -1000,9 +1000,9 @@
|
||||
}
|
||||
},
|
||||
"electron": {
|
||||
"version": "9.2.1",
|
||||
"resolved": "https://registry.npmjs.org/electron/-/electron-9.2.1.tgz",
|
||||
"integrity": "sha512-ZsetaQjXB8+9/EFW1FnfK4ukpkwXCxMEaiKiUZhZ0ZLFlLnFCpe0Bg4vdDf7e4boWGcnlgN1jAJpBw7w0eXuqA==",
|
||||
"version": "9.3.0",
|
||||
"resolved": "https://registry.npmjs.org/electron/-/electron-9.3.0.tgz",
|
||||
"integrity": "sha512-7zPLEZ+kOjVJqfawMQ0vVuZZRqvZIeiID3tbjjbVybbxXIlFMpZ2jogoh7PV3rLrtm+dKRfu7Qc4E7ob1d0FqQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@electron/get": "^1.0.1",
|
||||
|
@ -41,7 +41,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"cross-env": "^7.0.2",
|
||||
"electron": "^9.2.1",
|
||||
"electron": "^9.3.0",
|
||||
"electron-builder": "^22.8.0",
|
||||
"eslint": "^7.8.1"
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user