Compatibility
Minecraft: Java Edition
Platforms
Supported environments
90% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Links
Creators
Details
Jacks Server Side Tweaks
A collection of gameplay features that are not required on a client.
All features can be configured via the /jsst
command.
Features
All features can be enabled or disabled using /jsst <feature> (enable/disable)
.
Item Editor
By far the largest feature, this provides an easy-to-use, extensive interface for modifying items.
Currently supports the following:
- Names, including multi-component texts and custom gradient support
- Lores, with the same features
- Enchantment, with tooltip fix for levels > 10
- Potions (Drinkable, Splash, Lingering, Tipped Arrows, Suspicious Stew)
- Attribute Modifiers
- Container Locks
- Banner/Shields, with support for PlanetMinecraft's Banner Editor.
- Durability Editor, including unbreakable modifiers
- Book Author Editor
- Book Unsigner
- Head Owner Changer
- Leather Armour Colour Editor
- Firework & Firework Star Editors
- Armour Trim Editor
and more as ideas come in.
To begin, run the command /jsst itemEditor hand
to change the item in your hand, or .. itemEditor item <item>
to use a template.
This feature will only show editors possibly usable with the given item.
Labels
Enchantments, Potion Effects and Attribute Modifiers have been given custom labels to help see them at a glance; however I can not
provide defaults to every modded enchantment out there. If you want to add your own (either in your mod or a datapack), you can create
a corresponding JSON file under data/jsst/item_editor_labels/<category>.json
.
In this JSON file, there is a single JSON object with another JSON object under the key values
. In this values object, there
should be a list of ID: LabelDefinition pairs; you can find the ID by enabling enabledDevTools
and browsing said
menu.
LabelDefinition is defined as either a minecraft item ID such as minecraft:diamond_pickaxe
, or a full ItemStack JSON
which you can get from an existing stack by the enabledDevTools
-only Stack JSON Printer.
You can replace the entire vanilla set by adding replace: true
alongside the values
tag at the top level.
For a better explained example, see JSST's base files.
Config
Option | Description | Default | Valid Options |
---|---|---|---|
enabledDevTools | Enable dev-specific editors. | true |
true , false |
Portable Crafting
Lets you use crafting tables by right-clicking with them.
Valid items to check are contained in the jsst:items/crafting_tables tag, which can be extended using data packs or the Command Defined Datapack feature below.
Config
Option | Description | Default | Valid Options |
---|---|---|---|
sneakOnly | Whether players need to sneak to use crafting tables as items. | false |
true , false |
World Container Names
Adds floating labels above containers from either the container name or item count.
Uses the new Display Entities from 23w06a.
To give a name to a container, rename it in an anvil. You can use the format [item:<ITEM_STACK>]
to display an item instead,
using the same syntax as the /give
command. Examples:
[item:minecraft:golden_apple]
[item:potion{Potion:"night_vision"}]
If you give a container the name [max-count]
, the item displayed will update to the highest-count item in the
container
every time it is opened.
Admin
To clean up if you ever remove JSST, you can run the following command to remove lingering display entities:
/kill @e[tag=jsst_world_container_name]
Config
Option | Description | Default | Valid Options |
---|---|---|---|
facingMode | How labels should face the player. | CENTER |
CENTER , VERTICAL |
labelRangeMultiplier | Multiplier for the distance labels are shown. | 1 |
[0.25, 4] |
Display Items
Lets you make items for display that don't despawn by renaming them to [display]
in an anvil.
Useful for shops or showcases. Plays a chime sound if a display item is successfully made.
Warning: This does not prevent the item from being destroyed in other ways, such as cactus, lava, /kill
, cleanup
plugins, or being moved with hoppers or water.
Admin
To 'take ownership' of nearby items, run the following command:
/execute as @e[type=item,tag=jsst_display_item,distance=..5] run data modify entity @s Owner set from entity @p UUID
Config
Option | Description | Default | Valid Options |
---|---|---|---|
ownerPickupOnly | Should only the player who dropped the item be able to pick it back up. | true |
true , false |
operatorOnly | Should only server operators be allowed to create display items? Does not apply in single player. Recommended to enable ownerPickupOnly if this is true. | false |
true , false |
Command Defined Datapack
Lets you create and manage a datapack folder via in-game commands.
Currently, only supports tags. Designed to help configure mods game features using tags such as minecraft:enderman_holdable
,
or jsst:crafting_tables
, or just creating tags for your server easier.
/jsst cdd save
- Manually saves a copy of the current datapack in-memory. Should not be required in most cases as other
commands that modify the pack call this directly.
Tags
See also: Tag JSON Format
Base command: /jsst cdd tag <registry>
<registry>
defines which registry the tags should be looked up through. For example, you'll want minecraft:item
to
modify item tags or minecraft:block
for block tags.
.. listTags [filter]
- Lists all tags that are registered for this registry... list <tag>
- Lists all elements in a given tag. This is after tags have been 'flattened' i.e. tags referenced by other tags are not shown... add <tag> value <element> [isOptional]
- Adds an element to a<tag>
in the datapack... add <tag> tag <newTag> [isOptional]
- Adds a reference to<newTag>
in<tag>
in the datapack... remove <tag> <element>
- Removes an element from<tag>
in the datapack. This does not let you remove items from tags defined elsewhere; usesetReplace
below to overwrite them... setReplace <tag> <shouldReplace>
- Marks<tag>
to overwrite other tags with the same name.
Example (Adding nether stars to the crafting table list for Portable Crafting above)
/jsst cdd tag minecraft:item add jsst:crafting_tables value minecraft:nether_star
/datapack enable "file/jsstCDD"
on first generation/reload
Banner Writing
Easily write sentences with a stack of blank banners and a command.
To start, simply use the command /jsst bannerWriter start <text>
. This will add a tag to the banners you are
holding, which lets the mod know what to replace.
Uses the letters and numbers from https://www.gamergeeks.net/apps/minecraft/banners/.
Supported letters:
abcdefghijklmnopqrstuvwxyz0123456789 .,+-*/'"=!:
Sapling Replanter
Sapling items try to plant themselves instead of de-spawning. Tries to space them out, and includes support for dark oak saplings.
Config
Option | Description | Default | Valid Options |
---|---|---|---|
spacingEnabled | Should saplings try to space themself out? | true |
true , false |
minimumDistance | Minimum blocks between saplings. Requires spacingEnabled . Dark Oak has it's own handling. |
1 |
[1, 3] |
searchRange | Horizontal distance that saplings search for a valid position. Vertically, always checks layer above and below. | 3 |
[1, 4] |
maxPerStack | Maximum number of saplings to plant per dropped stack; the rest are discarded. | 5 |
[1, 64] |
Beacon Range Multiplier
Beacons can have a multiplier to their range added.
For reference, various ranges for beacons are:
Level | Vanilla Range in Blocks | 1.5x (mod default) | 4x | 8x |
---|---|---|---|---|
1 | 20 | 30 | 80 | 160 |
2 | 30 | 45 | 120 | 240 |
3 | 40 | 60 | 160 | 320 |
4 | 50 | 75 | 200 | 400 |
Config
Option | Description | Default | Valid Options |
---|---|---|---|
rangeMultiplier | What multiplier should be given to the beacon's range? | 1.5 |
[0.5, 8] |