const vars = { id: "mcjaen2024", icon: "https://git.ragestudio.net/srgooglo/mcjaen2024/raw/commit/f4067433e94ccb3a203b8a6223833dd121656452/icon.gif", name: "Jaen United Server", version: "1.0.0", author: "Jaen United", description: "Jaen United Minecraft modpack", } const internalVars = { public_ip: "mc.mcommunity.fun", public_ip_port: "25565", git_source: "https://git.ragestudio.net/srgooglo/jaen-united-2024", mc_version: { number: "1.20.1", type: "release", } } const defaultConfig = { username: "Oliva Salvaje", assigned_memory: 4096, } module.exports = { ...vars, import_libs: [ "mcl", "ipc", ], configs: { username: { label: "Username", type: "string", default: defaultConfig.username, icon: "MdPerson" }, assigned_memory: { label: "Assigned Memory", type: "number", default: defaultConfig.assigned_memory, icon: "MdMemory", ui_component: "slider", ui_component_props: { min: 2048, max: 8192, step: 1024, unit: "MB" }, }, }, install_steps: { git_clones: [ { path: ".", url: internalVars.git_source } ] }, update_steps: { git_pulls: [ { path: ".", url: internalVars.git_source } ] }, executable: true, execute: async ({ manifest }) => { console.log(manifest) const auth = await manifest.libraries.mcl.auth((manifest.storaged_configs?.username ?? defaultConfig.username)) return manifest.libraries.mcl.launch( { root: manifest.install_path, authorization: auth, version: { number: internalVars.mc_version.number, type: internalVars.mc_version.type }, memory: { max: manifest.storaged_configs?.assigned_memory ?? defaultConfig.assigned_memory, min: 2048 }, forge: `${manifest.install_path}/forge-installer.jar`, customLaunchArgs: [ `server ${internalVars.public_ip}`, `port ${internalVars.public_ip_port}` ] }, { install: () => { manifest.libraries.ipc.send(`new:message`, { message: "Downloading assets (This may take a while)", type: "loading" }) }, }) } }