infinote

infinote

Server-side configurable Noteblock expansion mod

by
770 Downloads
fabricgame-mechanicsutility
Rent Server with this Mod

About this Mod

Infinote

Server-side configurable Noteblock expansion mod. Noteblock should be configurable!


📖 Overview

Infinote is a server-side Note Block expansion mod for Fabric.

It allows you to add custom noteblock sounds with mostly unlimited pitch shifting and fully customizable volume control.

Unlike traditional client-side mods such as Notebetter, Infinote handles sound logic on the server side, making it especially suitable for collaboration.

Because the server manages sound, it operates stably in multiplayer.

Client Requirement

  • If the client does not install the mod:

    • The mod still works.
    • Custom sounds function as long as a valid resource pack is provided.
    • However, pitch shifting may be limited by vanilla clamp behavior.
  • If the client does install the mod:

    • Pitch clamp is expanded.
    • Extended pitch ranges function properly.
    • Full functionality is enabled.

For sounds that do not exist in vanilla Minecraft, additional resources must be provided via a resourcepack — otherwise the sound will be muted.

By using a server-side resource pack, all clients can hear the same custom sounds without needing to install resourcepacks manually.


⭐ Features

  • Fully configurable noteblock sounds
  • Block-under-based sound expansion
  • Config-driven
  • Primarily server-side logic
  • Multiplayer support
  • Multi-version ready

📸 Demonstration


🛠️ Usage

Click to expand command usage

Commands

/infinote add <block> <sound> <category> <pitchShift> <volume>

Adds or updates a sound mapping for the specified block.

  • <block>: Target block ID (e.g. minecraft:stone)
  • <sound>: Any valid sound ID (not limited to built-in sounds)
  • <category>: Sound category (e.g. master, music, record, block, etc.)
  • <pitchShift>: Pitch shift in semitones (accepts float)
  • <volume>: Volume multiplier (float)
/infinote remove <block>

Removes the sound mapping for the specified block.

/infinote reload

Reloads the configuration.

/infinote import notebetterfabric <json>

Imports configuration from a NotebetterFabric-style JSON file
and converts it into Infinote format.

  • <json>: Path to the NotebetterFabric configuration file

This command allows easy migration from NotebetterFabric to Infinote.


🎵 About pitchShift

pitchShift represents pitch change in semitones.

  • 12 = +12 semitones = +1 octave
  • -12 = -12 semitones = -1 octave
  • 0 = no pitch change

Unlike vanilla Note Blocks, pitchShift:

  • Accepts floating-point values
  • Is not limited to 12-tone equal temperament
  • Allows microtonal adjustments (e.g. 0.5, -2.3, etc.)

📏 Pitch Clamp Behavior

Minecraft internally clamps pitch values.

Without the client mod installed

Vanilla pitch clamping applies.
If the calculated pitch exceeds vanilla limits, it will be clamped by the client.

With the client mod installed

Pitch clamp range is expanded to:[0.03125, 32.0], witch means you can change pitch within: -5va ~ +5va

note that for full extended pitch range, client installation is needed.


🔊 About <sound>

The <sound> argument is not restricted to vanilla sound events.

You may use:

  • Custom namespaces
  • Custom paths
  • Any id defined inside a resourcepack

It does NOT need to start with minecraft:.

Example valid IDs:

minecraft:block.note_block.harp
custom:piano
my_music:grand.piano

you cannot use nested namespace, like infinote.custom:piano, or smoe:namespace:your_path.

The <sound> can contain:

  • Lowercase letters (a-z)
  • Numbers (0-9)
  • Underscore (_)
  • Only one colon (:)
  • Dot (.)

Format:

<namespace>:<path>

Only one colon is allowed.

🎵 Resourcepack (Vanilla Structure)

follow the standard Minecraft resourcepack structure:

Click to expand resourcepack structure
resourcepack/
└─ assets/
    └─ <namespace>/
        ├─ sounds.json
        └─ sounds/
            ├─ example_sound.ogg
            └─ smth_ur_folder/
               └─ nested/
                  └─ your_sound.ogg
            

Example sounds.json:

{
  "your_sound": {
    "category": "record",
    "replace": false,
    "sounds": [
      "example_sound"
    ]
  },
  "sound_id_in_the_command": {
    "category": "record",
    "replace": false,
    "sounds": [
      "smth_ur_folder/nested/your_sound"
    ]
  }
}

After defining the sound in sounds.json, use its full ID in the command:

/infinote add minecraft:stone <namespace>:custom.sound block 0 3

In the above example, you should send command:

/infinote add minecraft:stone <mamespace>:your_sound records 0 3
/infinote add minecraft:white_concrete <mamespace>:sound_id_in_the_command records 0 3

🔄 Migration from NotebetterFabric

Infinote provides a built-in migration command for users coming from NotebetterFabric.

You can import an existing NotebetterFabric configuration file directly:

/infinote import notebetterfabric <json>
  • <json>: Path to your existing NotebetterFabric configuration file

The command reads the JSON file and converts it into Infinote format automatically.

Why migrate?

Compared to NotebetterFabric, Infinote:

  • Runs primarily on the server side
  • Supports extended pitch ranges (with client mod installed)
  • Allows floating-point semitone pitch shifting
  • multiplayer compatible

After importing, use:

/infinote reload

to apply the converted configuration.

Always keep a backup of your original JSON file before importing.

Migration is designed to make switching seamless while preserving your existing sound mappings.


📜 License

This project is licensed under the MIT License.

You are free to:

  • Use
  • Modify
  • Distribute
  • Include in modpacks

Attribution is required.

Available Versions

infinote v1.5.1 for mc26.1.2release
MC 26.1, 26.1.1, 26.1.2fabric
May 1, 2026
infinote v1.5.1 for mc1.21.11release
MC 1.21.10, 1.21.11fabric
May 1, 2026
infinote v1.5.1 for mc1.21.9release
MC 1.21.6, 1.21.7, 1.21.8, 1.21.9fabric
May 1, 2026
infinote v1.5.1 for mc1.21.5release
MC 1.21.5fabric
May 1, 2026
infinote v1.5.1 for mc1.21.4release
MC 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4fabric
May 1, 2026

How to Install infinote on Your Server

1

Order Server

Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).

2

Set fabric Loader

In the panel under "Egg", select the fabric loader and matching Minecraft version (26.1.2).

3

Install Mod

Open the mod browser in the dashboard and search for "infinote". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.

Compatibility

Mod Loaders

fabric

Minecraft Versions

26.1.2, 26.1.1, 26.1 (+35 more)

Server-side

Required

Recommended RAM

4 GB(min. 3 GB)

Frequently Asked Questions

infinote server crashes on startup – what to do?

Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (26.1.2). You can switch loaders with one click in the panel.

Is infinote compatible with fabric?

infinote officially supports fabric for Minecraft 26.1.2, 26.1.1, 26.1. The Mado dashboard automatically detects incompatible loader combinations.

Server lagging with infinote – how to optimize performance?

Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if infinote consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.

Rent Modded Server

Install infinote with just one click on your server.

Recommended RAM
4 GBab €8/mo
Min. 3 GB | +1 GB pro 8 Spieler
Create Server Now
1-Click Mod Install
NVMe SSD Storage
DDoS Protection included

Details

License
MIT License
Server-side
Required

Supported Versions

26.1.226.1.126.11.21.111.21.101.21.91.21.81.21.71.21.61.21.5+28 more