| name | minecraft-modpack-server |
| description | Set up a modded Minecraft server (NeoForge or Forge) |
| category | gaming |
| version | 1.0.0 |
| origin | aiden |
| license | Apache-2.0 |
| tags | minecraft, neoforge, forge, modpack, server, java, gaming, mods, multiplayer |
Modded Minecraft Server Setup
Set up and manage a NeoForge or Forge modded Minecraft server on Windows. Covers server installation, modpack configuration, memory tuning, and startup automation.
When to Use
- User wants to run a modded Minecraft server locally or on a VPS
- User wants to install a CurseForge or Modrinth modpack on a server
- User wants to configure server memory and JVM flags
- User wants to automate server startup with a batch script
- User wants to manage mods — add, remove, or update individual mods
How to Use
1. Prerequisites
# Verify Java 21+ is installed (required for 1.20.x+)
java -version
# Install from: https://adoptium.net/temurin/releases/?version=21
# Create server directory
New-Item -ItemType Directory -Path "C:\mc-server" -Force
Set-Location "C:\mc-server"
2. Install NeoForge server
# Download NeoForge installer from https://neoforged.net/
# Get the installer for your Minecraft version
$neoforgeVersion = "21.1.99" # replace with desired version
$installerUrl = "https://maven.neoforged.net/releases/net/neoforged/neoforge/$neoforgeVersion/neoforge-$neoforgeVersion-installer.jar"
Invoke-WebRequest -Uri $installerUrl -OutFile "neoforge-installer.jar"
# Run installer (creates server files)
java -jar neoforge-installer.jar --installServer
3. Accept the EULA
# Required before server will start
Set-Content -Path "eula.txt" -Value "eula=true"
4. Create an optimized startup script
# start.bat — save in C:\mc-server\
$startBat = @'
@echo off
java -Xmx6G -Xms2G ^
-XX:+UseG1GC ^
-XX:+ParallelRefProcEnabled ^
-XX:MaxGCPauseMillis=200 ^
-XX:G1HeapRegionSize=16M ^
-XX:G1ReservePercent=25 ^
-jar libraries/net/neoforged/neoforge/21.1.99/neoforge-21.1.99-server.jar ^
nogui
pause
'@
Set-Content -Path "C:\mc-server\start.bat" -Value $startBat
Adjust -Xmx (max RAM) and -Xms (initial RAM) based on available system memory.
5. Add mods to the server
# Mods go in the mods/ directory
New-Item -ItemType Directory -Force -Path "C:\mc-server\mods"
# Download a mod from Modrinth (example: Fabric API replacement for NeoForge)
$modUrl = "https://cdn.modrinth.com/data/AANobbMI/versions/xxxxx/mod-name.jar"
Invoke-WebRequest -Uri $modUrl -OutFile "C:\mc-server\mods\mod-name.jar"
# List installed mods
Get-ChildItem "C:\mc-server\mods" -Filter "*.jar" | Select-Object Name, Length
6. Install a CurseForge modpack
# 1. Download the server pack ZIP from CurseForge (not the client pack)
# 2. Extract to server directory
Expand-Archive -Path "modpack-server.zip" -DestinationPath "C:\mc-server" -Force
# 3. Run the modpack's install script (varies by pack)
Set-Location "C:\mc-server"
.\startserver.sh # or start.bat depending on the pack
7. Configure server.properties
# Key settings in server.properties
$config = @"
max-players=10
difficulty=normal
spawn-protection=0
view-distance=10
online-mode=true
motd=My Modded Server
"@
Add-Content -Path "C:\mc-server\server.properties" -Value $config
8. Start the server
Set-Location "C:\mc-server"
.\start.bat
Examples
"Set up a NeoForge 1.21.1 server with 8GB RAM"
→ Use steps 1–4. Adjust -Xmx8G in the startup script.
"Add the Create mod to my existing server"
→ Use step 5 — download the Create jar for NeoForge from Modrinth and place in mods/.
"Install the All The Mods 9 server pack"
→ Use step 6 — download the ATM9 server pack ZIP from CurseForge and extract with step 6.
Cautions
- Always use the NeoForge/Forge version that matches your target Minecraft version exactly
- Client mods (rendering, shaders, HUD) must NOT be placed on the server — server-side only mods apply
- Increase
-Xmx proportional to mod count — large packs (200+ mods) need at least 8-12GB
online-mode=true requires all players to have a paid Minecraft account (prevents cracked clients)
- Back up the
world/ directory regularly — server crashes can corrupt world data