@@ -69,9 +69,20 @@ async function downloadFabricJar(minecraftVersion: string, directory: string) {
6969 ) ;
7070 const installerVersion = installerVersions [ 0 ] . version ;
7171
72- spinner . text = "Downloading Fabric" ;
72+ spinner . text = "Downloading Fabric server " ;
7373 const jarUrl = `https://meta.fabricmc.net/v2/versions/loader/${ minecraftVersion } /${ loaderVersion } /${ installerVersion } /server/jar` ;
74- await downloadFile ( jarUrl , directory , "fabric.jar" ) ;
74+ await downloadFile ( jarUrl , directory , "server.jar" ) ;
75+ spinner . succeed ( ) ;
76+ return true ;
77+ }
78+
79+ async function downloadVanillaJar ( version : MojangFullVersion ) {
80+ const spinner = ora ( "Downloading vanilla server" ) . start ( ) ;
81+ if ( ! version . downloads . server ) {
82+ spinner . fail ( "There is no server jar for this version" ) ;
83+ return false ;
84+ }
85+ await downloadFile ( version . downloads . server . url , directory , "server.jar" ) ;
7586 spinner . succeed ( ) ;
7687 return true ;
7788}
@@ -250,6 +261,9 @@ if (fabricDownloaded) {
250261 : [ ] ) ,
251262 ] ;
252263 await downloadMods ( modIds , directory ) ;
264+ } else {
265+ const downloadedVanillaJar = await downloadVanillaJar ( fullVersionInformation ) ;
266+ if ( ! downloadedVanillaJar ) process . exit ( ) ;
253267}
254268
255269const fileSpinner = ora ( "Writing extra files" ) . start ( ) ;
@@ -266,7 +280,7 @@ const startScriptPath = path.resolve(
266280) ;
267281await writeFile (
268282 startScriptPath ,
269- `${ javaPath } -Xmx2G -jar fabric .jar nogui${ windows ? "\nPAUSE" : "" } `
283+ `${ javaPath } -Xmx2G -jar server .jar nogui${ windows ? "\nPAUSE" : "" } `
270284) ;
271285if ( ! windows ) {
272286 await chmod ( startScriptPath , "755" ) ;
0 commit comments