Skip to main content
GT New Horizons (GTNH) is a Minecraft 1.7.10 modpack maintained and supported by dedicated community members. With over 10 years in development, GTNH offers a carefully balanced and immersive experience to challenge players as they climb through the 15 tiers of technology. The ultimate goal of GTNH is to build the Stargate, an interdimensional teleporter and the symbol for absolute prestige, aptitude, and determination. As GTNH is a complex modpack with specific requirements, it has its own TYPE to simplify deployment and updates.

Environment Variables

VariableDefaultDescription
TYPE-Set to GTNH
GTNH_PACK_VERSIONlatestModpack version: latest, latest-dev, or specific version
GTNH_DELETE_BACKUPSfalseDelete config backup folders on startup
SKIP_GTNH_UPDATE_CHECKfalsePrevent update checks from running

Pack Version Selection

As GTNH is a Minecraft 1.7.10 modpack, your Minecraft version is automatically set to 1.7.10. The modpack version can be selected by setting GTNH_PACK_VERSION:

latest

Automatically selects the latest full release version and deploys the server with it. This will also automatically update the server on startup.
GTNH_PACK_VERSION: latest

latest-dev

Selects the latest version marked as beta or RC. Won’t select a full release version even if newer.
GTNH_PACK_VERSION: latest-dev
Set to a specific version like 2.8.1 to manage updates manually:
GTNH_PACK_VERSION: "2.8.1"
Using a specific version is recommended for production servers to prevent unexpected updates.

Preventing Updates

To actively prevent an update from happening:
SKIP_GTNH_UPDATE_CHECK: "true"
Only set this after the initial setup. Setting it before will prevent the server install from running.

Resource Requirements

  • CPU: 2-4 cores
  • RAM:
    • 6GB + 0.5GB per extra player (early game)
    • 6GB + 1GB per extra player (~UV tier+)
  • Storage: 20GB+ (HDD feasible, SSD preferred)
For more details, consult the modpack wiki.

Java Version

GTNH supports Java 8 and Java 17+ (Java 17+ is always recommended for maximum performance).
  • Java 25 (optimal): For GTNH 2.8.0 and later
    image: itzg/minecraft-server:java25
    
  • Java 17: For good performance
    image: itzg/minecraft-server:java17
    
  • Java 8: Legacy support
    image: itzg/minecraft-server:java8
    
For optimal performance, choose Java 25 with GTNH 2.8.0 and later.

Examples

services:
  mc:
    image: itzg/minecraft-server:java25
    tty: true
    stdin_open: true
    ports:
      - "25565:25565"
    environment:
      EULA: "TRUE"
      TYPE: GTNH
      GTNH_PACK_VERSION: "2.8.1"
      MEMORY: 6G
    volumes:
      - mc-data:/data

volumes:
  mc-data:

Config Backups

During version upgrades, the server replaces all config files to ensure new features are set up as intended. Old config files are stored in backup folders in the data directory for reference when manually reapplying your settings. To delete all backup folders at startup:
environment:
  GTNH_DELETE_BACKUPS: "true"

Server Properties Defaults

To deliver the intended GTNH experience, the following options are automatically set in server.properties:
PropertyValueDescription
LEVEL_TYPErwgRealistic World Generation
DIFFICULTYhardHard difficulty
ALLOW_FLIGHTtrueAllow flying (required for some mods)
ENABLE_COMMAND_BLOCKtrueEnable command blocks
MOTDGreg Tech New Horizon <version>Server MOTD
It’s recommended to leave these as-is, but you can override them if you know what you’re doing.

Java Arguments

The server automatically uses optimized Java arguments based on the Java version:

Java 17+

-Dfml.readTimeout=180 @java9args.txt -jar lwjgl3ify-forgePatches.jar

Java 8

-XX:+UseStringDeduplication -XX:+UseCompressedOops -XX:+UseCodeCacheFlushing -Dfml.readTimeout=180 -jar forge-1.7.10-10.13.4.1614-1.7.10-universal.jar

Additional Mods

GTNH supports additional optional mods. See the Additional Mods wiki page for recommended mods. Add mods using the MODS environment variable:
environment:
  MODS: |
    https://github.com/Kynake/BetterFoliage/releases/download/1.2.1/BetterFoliage-LegacyEdition-1.2.1.jar

Upgrading

Automatic Upgrades

If using latest or latest-dev, simply restart the container:
docker compose restart mc

Manual Version Upgrades

1

Update version

Edit your compose.yaml and update GTNH_PACK_VERSION
2

Recreate container

docker compose up -d
3

Review config changes

Check the config backup folders for any custom settings to reapply

Troubleshooting

Server won’t start

  • Verify you’re using a supported Java version (8 or 17+)
  • Check that you have allocated sufficient memory (minimum 6GB)
  • Ensure SKIP_GTNH_UPDATE_CHECK is not set during initial setup

Performance Issues

  • Upgrade to Java 25 for GTNH 2.8.0+
  • Increase MEMORY allocation
  • Use SSD storage instead of HDD
  • Allocate more CPU cores

Config changes not persisting

  • Remember that config files are replaced during upgrades
  • Use the backup folders to identify and reapply your custom settings
  • Consider setting GTNH_DELETE_BACKUPS to false until you’ve restored your settings
For comprehensive setup guidance, consult the official GTNH wiki.

Build docs developers (and LLMs) love