ConfigurableEnd

Quick rating

ConfigurableEnd

No reviews yet

Configure End Ship frame rewards, End City frequency, and city/ship chest loot with a server-side config file!

Custom Dimensions
Mod Loaders
Fabric
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

About

Project Details

Type
Mod
Latest Version
configurableend-1.0.3-beta.jar
Authors

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID

Resources

External Links

Source Issues Wiki Discord

About

Description

# ConfigurableEnd 1.0.2 Beta

ConfigurableEnd is a server-authoritative Fabric mod for controlling End Ship frame rewards, End City frequency, and End City or End Ship chest loot. It works on dedicated servers and in single-player through the integrated server. Multiplayer clients do not need the mod installed.

## End Ship rewards

Newly generated End Ships use a configurable weighted reward pool at the exact frame that normally contains an Elytra. The default distribution is:

- Elytra: 50%
- Nether Star: 30%
- Enchanted Golden Apple: 10%
- Heavy Core: 5%
- Netherite Ingot: 5%

Entries can be added, removed, disabled, or reweighted. Weights are relative and normalize automatically. Rewards support stack counts, custom names, lore, enchantments, custom data, and supported Minecraft 1.21.11 item components.

Reward selection is deterministic per ship. Reloading chunks, revisiting the area, or restarting the world does not reroll a generated frame. Removing the reward does not make it reappear, and unrelated or player-placed frames are not changed.

## End City generation

End City placement exactly follows the loaded Minecraft 1.21.11 settings by default. Optional settings control spacing, separation, salt, spread type, frequency, and frequency-reduction method.

Placement changes apply only to structure starts in ungenerated chunks. Existing End terrain is not regenerated. Invalid settings fall back safely to vanilla values.

## Chest loot and other mods

End City room chests and End Ship chests have separate settings, even though vanilla Minecraft assigns both the same End City treasure table.

The three modes have explicit precedence:

- `VANILLA` uses the exact final live End City loot table after datapacks and supported Fabric loot mods have replaced or modified it. ConfigurableEnd does not copy, replace, or filter this table, so external loot additions remain functional.
- `MODIFY` starts from that final combined table when `preserveDatapackEntries` is `true`. Other-mod and datapack pools, entries, functions, and conditions are preserved first; ConfigurableEnd then applies its configured overrides, additions, rolls, and custom pools.
- `REPLACE` intentionally overrides the combined table. Only pools and entries configured in ConfigurableEnd remain available for that city or ship context.

If `MODIFY` uses `preserveDatapackEntries: false`, its base is the Minecraft 1.21.11 End City resource instead, intentionally excluding external table additions before ConfigurableEnd changes are applied.

Successful Minecraft datapack reloads automatically refresh the final combined table and rebuild ConfigurableEnd's cached city and ship variants. Already generated chest inventories are never refilled or rerolled.

## Configuration help inside every file

The mod creates:

- `config/configurableend/general.json`
- `config/configurableend/ship_rewards.json`
- `config/configurableend/end_city_generation.json`
- `config/configurableend/end_city_loot.json`
- `config/configurableend/end_ship_loot.json`

Every file contains an ignored `_documentation` section with its purpose, editing workflow, every available field, valid types and ranges, possible modes, and practical examples.

Both loot files include these specific examples:

- `vanillaKeepDatapacksAndOtherMods`
- `modifyCombinedTableAndKeepOtherMods`
- `replaceEverythingWithOneModdedItem`

Each example includes an `_expectedResult` explaining whether external pools remain or are overridden. Existing valid files automatically receive documentation version 2 without losing their configured values.

For vanilla items, use the short path without `minecraft:`:

```json
"item": "nether_star"
```

For mod-added items, use the full namespaced ID:

```json
"item": "modid:item_name"
```

Older full vanilla IDs such as `minecraft:nether_star` remain compatible.

## Commands

- `/configurableend status`
- `/configurableend rewards`
- `/configurableend validate`
- `/configurableend reload`
- `/configurableend process nearby`
- `/configurableend debug sampleRewards <count>` when debug commands are enabled
- `/ce` as the command alias

Use Minecraft's `/reload` after changing datapacks. Use `/configurableend reload` after changing ConfigurableEnd's JSON files.

## Installation

### Single-player

1. Install Minecraft Java Edition 1.21.11 with Fabric Loader 0.19.3 or newer.
2. Install a compatible Minecraft 1.21.11 Fabric API.
3. Put `configurableend-1.0.2-beta.jar` in the instance's `mods` folder.
4. Launch the game and open or create a world.
5. Edit the generated files and use the validation/reload commands.

### Dedicated server

1. Install Minecraft Java Edition 1.21.11 with Fabric Loader 0.19.3 or newer.
2. Install a compatible Minecraft 1.21.11 Fabric API on the server.
3. Put `configurableend-1.0.2-beta.jar` in the server's `mods` folder.
4. Start the server with Java 21.
5. Multiplayer clients can connect without ConfigurableEnd installed.

## Requirements

- Minecraft Java Edition 1.21.11
- Fabric Loader 0.19.3 or newer
- Fabric API compatible with Minecraft 1.21.11
- Java 21

## Important behavior

- Structure changes affect only ungenerated structure starts.
- Chest rules are assigned during structure generation; existing inventories are not rewritten.
- Automatic retroactive frame scanning is never performed.
- Nearby frame processing requires an explicit operator setting and command.
- Empty-chest probability applies independently to every configured pool when multiple pools exist.
- Loot mods using unsupported invasive mixins on the same chest-unpack path can still conflict.


Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

<1,000
Downloads
Last Updated
Created
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works