Skip to content

Setting up Nova

Before installing Nova, please make sure that you're running a supported server software.

Step 1: Installing Nova and addons

  • Like any other plugin, the Nova plugin jar file downloaded from Hangar, Modrinth, GitHub or our Discord just needs to be put in the plugins/ folder of your server.
  • Since 0.18, addons are loaded as plugins. Therefore, you can also just put them into the plugins/ folder.
    • Some addons might require other addons in order to work. If this is the case, an error in the console will notify you of the missing addons:
      Failed to initialize <Name of the Addon>: Missing addon(s): <Name(s) of the required addon(s) that are missing>
  • Start your server and wait until Nova is done loading. (Indicated by the message in the console [Nova] Done loading). This creates config files and directories which you will need to access in the following steps.
  • Stop your server.

The new resource pack containing the addon assets will be automatically generated, but it won't be sent to players yet. Please follow Step 2 to configure resource pack hosting.

Step 2: Configure resource pack hosting

Due to the way server resource packs work, it is required to upload them to a web server first before they can be sent to players.
This can be done either automatically or manually:

The auto uploader automatically uploads the resource pack after it changes. You can configure it in the main config file plugins/Nova/configs/config.yml under resource_pack > auto_upload.

Available Upload Services

If you're able to open a port on your server, this option will make the most sense for you. Nova will automatically start a lightweight web server from which the resource pack can be downloaded.

Example config:

plugins/Nova/configs/config.yml
resource_pack:
  auto_upload:
    enabled: true
    service: self_host
    port: 12345 # The port on which the web server will be running, needs to be open to the Internet.

host parameter

You can also set the host of your server using the host parameter. If it is not set, the public ip address of your server gets used. If you are on a local server, you will need to set host: 127.0.0.1

append_port parameter

When setting a host, Nova assumes that the configured port does not need to be appened after the host in the download URL. If this is not the case, set append_port: true.

For more advanced users, Nova can also perform a multipart request to a server of your choice and parse the response using a regex.

Example: upload php script

plugins/Nova/configs/config.yml
resource_pack:
  auto_upload:
    enabled: true
    service: custom_multi_part
    url: https://example.com/upload.php
    filePartName: pack
    extraParams:
      key: "" # This key also needs to be set in the php script mentioned above

If you are using Amazon S3, you can use the S3 service to upload the resource pack. You have to expose your S3 bucket to the Internet yourself.

Example config:

plugins/Nova/configs/config.yml
resource_pack:
  auto_upload:
    enabled: true
    service: amazon_s3
    endpoint: s3.amazonaws.com # The endpoint of your S3 service
    region: eu-central-1 # The region of your S3 endpoint
    bucket: examplebucket # The name of your S3 bucket
    key_id: "" # Your S3 key id
    key_secret: "" # Your S3 key secret
    force_path_style: false # Forces path style URLs (Defaults to false)

For manual resource pack hosting, upload the resource pack found under plugins/Nova/resource_pack/ResourcePack.zip to a file uploader of your choice. Then set the url to download the resource pack in the main config file plugins/Nova/configs/config.yml under resource_pack > url:

plugins/Nova/configs/config.yml
resource_pack:
  url: https://example.com/resource_pack.zip

URL needs to be a direct download link

Minecraft requires the server resource pack to be a direct download link, meaning it cannot have any redirects or visual elements (like buttons, text, etc.) on the page. Direct download links often include the file name and extension in the url, so for resource packs, they would end with .zip.

Prefer using an auto-upload service instead

You will need to manually re-upload the resource pack every time it is regenerated, which is when you update Nova, any of its addons or when you change config values that affect resource pack generation.
This is why you should prefer using an auto-upload service instead.

(optional) resource pack merging

This step is only required if your server is already using a custom resource pack.

In the past, there could be only one server resource pack. While this is no longer the case, resource pack merging is still important as Nova uses it to analyze the existing resource pack and adjusts its own data accordingly to prevent conflicts.
Therefore, it is NOT possible to manually merge resource packs, and it is also NOT possible to use merging services from other plugins.

You can define "base packs", which are resource packs that Nova should merge, in two ways:

  1. Make sure to turn off the resource pack prompt in the config of the plugin providing it.
  2. Link to the resource pack directory or zip file in the Nova config under resource_pack > generation > base_packs.

    plugins/Nova/configs/config.yml
    resource_pack:
      generation:
        base_packs:
          - plugins/ItemsAdder/output/generated.zip
    
  3. Make sure that the listed base pack has been properly generated. (For example, ItemsAdder requires running /iazip to generate its resource pack.)

  4. Reload the config using /nova reload configs or restart the server.
  5. Regenerate the resource pack using /nova resourcePack create.
  1. Make sure to turn off the resource pack prompt in the config of the plugin providing it.
  2. Copy the resource pack directory or zip file to plugins/Nova/resource_pack/base_packs/.
  3. Regenerate the resource pack using /nova resourcePack create.

You can add as many base packs as you want.