diff --git a/start-deployCF b/start-deployCF index 3508bc00..345f4132 100644 --- a/start-deployCF +++ b/start-deployCF @@ -85,13 +85,14 @@ if ! isTrue ${USE_MODPACK_START_SCRIPT:-true}; then fi log "Installing forge server" - (cd $(dirname "${forgeInstallerJar}"); java -jar $(basename "${forgeInstallerJar}") --installServer) + dirOfInstaller=$(dirname "${forgeInstallerJar}") + (cd "${dirOfInstaller}"; java -jar $(basename "${forgeInstallerJar}") --installServer) fi echo "${FTB_SERVER_MOD}" > $installMarker fi - export SERVER=$(find ${FTB_BASE_DIR} -type f \( -path "*/libraries/*" -o -path "*/mods/*" \) -prune -o -name "forge*.jar" -not -name "forge*installer.jar" -print) + export SERVER=$(find ${FTB_BASE_DIR} -type f \( -path "/libraries/*" -o -path "/mods/*" \) -prune -o -name "forge*.jar" -not -name "forge*installer.jar" -maxdepth 2 -print) if [[ -z "${SERVER}" || ! -f "${SERVER}" ]]; then log "ERROR unable to locate installed forge server jar" isDebugging && find ${FTB_BASE_DIR} -name "forge*.jar" @@ -184,7 +185,7 @@ if [[ $(find ${FTB_BASE_DIR} $entryScriptExpr | wc -l) = 0 ]]; then # Allow up to 2 levels since some modpacks have a top-level directory named # for the modpack - forgeJar=$(find ${FTB_BASE_DIR} -maxdepth 2 -name 'forge*.jar' -a -not -name 'forge*installer') + forgeJar=$(find ${FTB_BASE_DIR} -type f \( -path "/libraries/*" -o -path "/mods/*" \) -prune -o -name "forge*.jar" -not -name "forge*installer.jar" -maxdepth 2 -print) if [[ "$forgeJar" ]]; then export FTB_BASE_DIR=$(dirname "${forgeJar}") log "No entry script found, so building one for ${forgeJar}"