Merge branch 'main' of ssh://synth.download:10429/sd/synth.download

This commit is contained in:
zenfyr 2026-01-11 15:39:15 +07:00
commit 295b79344d
Signed by: melontini
SSH key fingerprint: SHA256:TtcIcnTnoAB5mqHofsaOxIgiMzfVBxej1AXT7DQdrTE
19 changed files with 45 additions and 578 deletions

View file

@ -0,0 +1,43 @@
[Unit]
Description=Minecraft Server
[Container]
Image=docker.io/itzg/minecraft-server:java25
ContainerName=minecraft
Environment=EULA=TRUE
Environment=TYPE=FABRIC
Environment=VERSION=1.21.10
Environment=DIFFICULTY=hard
Environment=LEVEL=synthcraft
Environment=SPAWN_PROTECTION=0
Environment=SERVER_NAME=Synthcraft
Environment=MOTD='who up crafting they synths'
Environment=ICON='https://synth.download/assets/synth.download/synth.png'
Environment=MAX_PLAYERS=50
Environment=MEMORY=6G
Environment=VIEW_DISTANCE=16
Environment=SIMULATION_DISTANCE=12
Environment=JVM_XX_OPTS='-XX:+UseZGC -XX:+UseCompactObjectHeaders'
Environment=DATAPACKS='https://pub.synth.download/minecraft/datapacks/player_scale_bee.zip https://pub.synth.download/minecraft/datapacks/charlotte-crafting.zip'
Environment=VANILLATWEAKS_SHARECODE='7QJLoW, n6Px7x'
EnvironmentFile=/etc/containers/systemd/minecraft/mods.env
EnvironmentFile=/etc/containers/systemd/minecraft/players.env
EnvironmentFile=/etc/containers/systemd/minecraft/.secrets.env
# -- bluemap
PublishPort=127.0.0.1:10370:8100
# -- simple voice chat
PublishPort=24454:24454/udp
# -- minecraft
PublishPort=25565:25565
# -- minecraft: bedrock edition
PublishPort=19132:19132/udp
Volume=/var/containers/minecraft/data:/data:Z
# -- allows podman attach to work
PodmanArgs=--attach stdin --tty
[Service]
Restart=always
RestartSec=10s
[Install]
WantedBy=default.target

View file

@ -0,0 +1,2 @@
# mods and datapacks from modrinth, by their project slug name (and version, when necessary)
MODRINTH_PROJECTS=fabric-api, fabric-language-kotlin, silk, almanac, blossomlib, collective, cloth-config, polymer, puzzles-lib, forge-config-api-port, architectury-api, jamlib, cristel-lib, player-animation-library, ferrite-core, servercore, scalablelux, lithium, c2me-fabric, chunky, lmd, no-chat-reports, luckperms, styled-chat, styled-nicknames, customnametags, welcome-message, styledplayerlist, fsit, emotecraft:beta, inventory-sorting, fallingtree, rightclickharvest, universal-graves, craftable-slime:N6IqM7FA, more-chains, copper-chunk-loader, pick-up-notifier, appleskin, jei:beta, blossomtpa, blossomback, blossomhomes, dungeons-and-taverns, towns-and-towers, explorify, geophilic, polyfactory, polydecorations, image2map, simple-voice-chat, simple-voice-chat-radio, enhanced-groups:beta, audioplayer:alpha, bluemap, bmarker, distanthorizons:beta, vivecraft, geyser:beta, floodgate, postgresql-driver:JE6q0qLt

View file

@ -1,95 +0,0 @@
# all options documented at https://docker-minecraft-server.readthedocs.io/
# i agree that tacos are tasty
EULA="TRUE"
# we're currently running a fabric yet vanilla-compatible 1.21.10 server
TYPE="FABRIC"
VERSION="1.21.10"
# world settings
DIFFICULTY="hard"
LEVEL="synthcraft"
SPAWN_PROTECTION="0"
# server settings
SERVER_NAME="Synthcraft"
MOTD="who up crafting they synths"
ICON="https://synth.download/assets/synth.download/synth.png"
MAX_PLAYERS="50"
MEMORY="6G"
VIEW_DISTANCE="16"
SIMULATION_DISTANCE="10"
JVM_XX_OPTS="-XX:+UseZGC -XX:+UseCompactObjectHeaders"
# == customizations ==========================
# vanilla tweaks datapacks
# https://vanillatweaks.net/share/#7QJLoW
# https://vanillatweaks.net/share/#n6Px7x
VANILLATWEAKS_SHARECODE="7QJLoW, n6Px7x"
# datapacks
DATAPACKS='https://pub.synth.download/minecraft/datapacks/player_scale_bee.zip
https://pub.synth.download/minecraft/datapacks/charlotte-crafting.zip'
# mods and datapacks from modrinth, by their project slug name (and version, when necessary)
MODRINTH_PROJECTS='fabric-api
fabric-language-kotlin
silk
almanac
blossomlib
collective
cloth-config
polymer
puzzles-lib
forge-config-api-port
architectury-api
jamlib
cristel-lib
player-animation-library
ferrite-core
servercore
scalablelux
lithium
c2me-fabric
chunky
lmd
no-chat-reports
luckperms
styled-chat
styled-nicknames
customnametags
welcome-message
styledplayerlist
fsit
emotecraft:beta
inventory-sorting
fallingtree
rightclickharvest
universal-graves
craftable-slime:N6IqM7FA
more-chains
pick-up-notifier
appleskin
jei:beta
blossomtpa
blossomback
blossomhomes
dungeons-and-taverns
towns-and-towers
explorify
geophilic
polyfactory
polydecorations
image2map
simple-voice-chat
simple-voice-chat-radio
enhanced-groups:beta
audioplayer:alpha
bluemap
bmarker
distanthorizons:beta
vivecraft
geyser:beta
floodgate'

View file

@ -1,19 +0,0 @@
services:
minecraft:
image: itzg/minecraft-server:java25
restart: always
container_name: "minecraft"
env_file:
- .env
- .env.players
- .env.secrets
volumes:
- ./data:/data
ports:
- "127.0.0.1:10370:8100" # bluemap
- "24454:24454/udp" # voice chat
- "25565:25565" # minecraft
- "19132:19132/udp" # minecraft bedrock bridge
# The following allow `docker attach minecraft` to work
stdin_open: true
tty: true

View file

@ -1,5 +0,0 @@
{
"language": "en",
"maxUserSets": 20,
"maxUserMarker": 500
}

View file

@ -1,17 +0,0 @@
{
"back": {
"enabled": true,
"teleportation": null,
"standStill": 3,
"cooldown": 10
},
"lastDeath": {
"enabled": true,
"teleportation": null,
"standStill": 3,
"cooldown": 10
},
"separateCooldowns": true,
"persistBack": true,
"persistLastDeath": true
}

View file

@ -1,10 +0,0 @@
{
"teleportation": null,
"standStill": 3,
"cooldown": 10,
"defaultHome": "main",
"startHomes": 500,
"dimensionBlacklist": [],
"useBlacklistAsWhitelist": false,
"fallbackToPlayerSpawnPoint": true
}

View file

@ -1,77 +0,0 @@
{
"logging": {
"consoleLogLevel": "INFO",
"fileLogLevel": "TRACE",
"fileLogPath": "logs/BlossomMods.log",
"fileLogAppend": true,
"disableCustomLogger": false
},
"baseTeleportation": {
"bossBar": {
"enabled": true,
"color": "blue",
"textColor": "white"
},
"titleMessage": {
"enabled": true,
"titleCounting": {
"counterColor": "gold",
"color": "light_purple",
"modifiers": "b"
},
"subtitleCounting": {
"counterColor": "gold",
"color": "red",
"modifiers": "i"
},
"titleDone": {
"color": "green",
"modifiers": "b"
},
"subtitleDone": {
"color": "green",
"modifiers": "i"
}
},
"actionBarMessageEnabled": false,
"fovEffectBefore": {
"enabled": false,
"values": [
1.0,
0.0,
1.0,
0.0
],
"start": 1.0,
"end": 0.5,
"stepCount": 10
},
"fovEffectAfter": {
"enabled": false,
"values": [
0.0,
1.0,
0.0,
1.25
],
"start": 0.5,
"end": 1.0,
"stepCount": 10
},
"particleAnimation": "OFF",
"allowBack": true,
"cancelOnMove": false
},
"colors": {
"base": "light_purple",
"warn": "yellow",
"error": "red",
"success": "green",
"variable": "gold",
"player": "aqua",
"command": "gold",
"commandDescription": "white"
},
"dimNameOverrides": null,
"enableMC124177Fix": true
}

View file

@ -1,6 +0,0 @@
{
"teleportation": null,
"timeout": 60,
"standStill": 3,
"cooldown": 10
}

View file

@ -1,48 +0,0 @@
## ##
## BlueMap ##
## Core-Config ##
## ##
# By changing the setting (accept-download) below to TRUE you are indicating that you have accepted mojang's EULA (https://account.mojang.com/documents/minecraft_eula),
# you confirm that you own a license to Minecraft (Java Edition)
# and you agree that BlueMap will download and use a minecraft-client file (depending on the minecraft-version) from mojangs servers (https://piston-meta.mojang.com/) for you.
# This file contains resources that belong to mojang and you must not redistribute it or do anything else that is not compliant with mojang's EULA.
# BlueMap uses resources in this file to generate the 3D-Models used for the map and texture them. (BlueMap will not work without those resources.)
# 2025-10-31T01:58:38
accept-download: true
# The folder where bluemap saves data-files it needs during runtime or to save e.g. the render-progress to resume it later.
# Default is "bluemap"
data: "bluemap"
# This changes the amount of threads that BlueMap will use to render the maps.
# A higher value can improve render-speed but could impact performance on the host machine.
# This should be always below or equal to the number of available processor-cores.
# Zero or a negative value means the amount of available processor-cores subtracted by the value.
# (So a value of -2 with 6 cores results in 4 render-processes)
# Default is 1
render-thread-count: 4
# Controls whether BlueMap should try to find and load mod-resources and datapacks from the server/world-directories.
# Default is true
scan-for-mod-resources: true
# If this is true, BlueMap might send really basic metrics reports containing only the implementation-type and the version that is being used to https://metrics.bluecolored.de/bluemap/
# This allows me to track the basic usage of BlueMap and helps me stay motivated to further develop this tool! Please leave it on :)
# An example report looks like this: {"implementation":"bukkit","version":"5.13","mcVersion":"?"}
# Default is true
metrics: true
# Config-section for debug-logging
log: {
# The file where the debug-log will be written to.
# Comment out to disable debug-logging completely.
# Java String formatting syntax can be used to add time, see: https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html
# Default is no logging
file: "bluemap/logs/debug.log"
#file: "bluemap/logs/debug_%1$tF_%1$tT.log"
# Whether the logger should append to an existing file, or overwrite it
# Default is false
append: false
}

View file

@ -1,45 +0,0 @@
## ##
## BlueMap ##
## Webserver-Config ##
## ##
# With this setting you can disable the integrated web-server.
# This is useful if you want to only render the map-data for later use, or if you setup your own webserver.
# Default is enabled
enabled: true
# The webroot that the server will host to the web.
# Usually this should be set to the same directory like in the webapp.conf!
# Default is "bluemap/web"
webroot: "bluemap/web"
# The port that the webserver listens to.
# Default is 8100
port: 8100
# Config-section for webserver-activity logging
log: {
# The file where all the webserver-activity will be logged to.
# Comment out to disable the logging completely.
# Java String formatting syntax can be used to add time, see: https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html
# Default is no logging
file: "bluemap/logs/webserver.log"
#file: "bluemap/logs/webserver_%1$tF_%1$tT.log"
# Whether the logger should append to an existing file, or overwrite it
# Default is false
append: false
# The format of the webserver-acivity logs.
# The syntax is the java String formatting, see: https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html
# Possible Arguments:
# 1 - the source address (ignoring any xff headers)
# 2 - the source address (using the (leftmost) xff header if provided)
# 3 - the http-method of the request
# 4 - the full request-address
# 5 - the protocol version of the request
# 6 - the status-code of the response
# 7 - the status-message of the response
# Default is "%1$s \"%3$s %4$s %5$s\" %6$s %7$s"
format: "%1$s \"%3$s %4$s %5$s\" %6$s %7$s"
}

View file

@ -1,11 +0,0 @@
{
"nametags": [
{
"id": "defaultname:nick",
"display": "%styled-nicknames:display_name%",
"update_interval": 100,
"visible_radius": -1.0,
"hidden_radius": -1.0
}
]
}

View file

@ -1,42 +0,0 @@
{
"_c1": "Enables Polymer's ResourcePack Auto Hosting",
"enabled": true,
"_c2": "Marks resource pack as required",
"required": false,
"_c7": "Mods may override the above setting and make the resource pack required, set this to false to disable that.",
"mod_override": true,
"_c3": "Type of resource pack provider. Default: 'polymer:automatic'",
"type": "polymer:automatic",
"_c4": "Configuration of type, see provider's source for more details",
"settings": {
"forced_address": ""
},
"_c5": "Message sent to clients before pack is loaded",
"message": "This server uses resource pack to enhance gameplay with custom textures and models. It might be unplayable without them.",
"_c6": "Disconnect message in case of failure",
"disconnect_message": "Couldn't apply server resourcepack!",
"_c8": "Allows to define more external resource packs. It's an object with 'id' for uuid, 'url' for the pack url and 'hash' for the SHA1 hash.",
"external_resource_packs": [],
"_c9": "Moves resource pack generation earlier when running on server. Might break some mods.",
"setup_early": false,
"_c10": "Enables dialog infobox when resource pack isn't ready.",
"resource_pack_status_dialog": true,
"_c11": "Enables dialog infobox when resource pack isn't ready.",
"dialog_title": "The server's resource pack is still generating!",
"_c12": "Default body text before status is ready (or when it's disabled).",
"dialog_default_body": "Waiting...",
"_c17": "Text below name with some extra information about resource pack generation",
"dialog_body_header": "This server requires a resource pack, which hasn't finished generating yet...\nIt might take a while for it to finish!",
"_c13": "Enables displaying internal resource pack generation status.",
"dialog_show_status": true,
"_c18": "Enables displaying 'dots' indicating that work is being done!",
"dialog_show_dots": true,
"_c14": "Clears all client-side resourcepacks before sending Autohost handled ones.",
"clear_all_client_resource_packs": false,
"_c15": "Adds hash to name of resource pack file served with web server",
"include_hash_in_name": true,
"_c16": "Value of Cache-Control max age header",
"cache_control_max_age": 31536000,
"_c19": "Delays server from showing as online on player list until resource pack is generated.",
"delay_player_list_motd_until_generated": false
}

View file

@ -1,84 +0,0 @@
{
"CONFIG_VERSION_DONT_TOUCH_THIS": 3,
"_comment": "Before changing anything, see https://github.com/Patbox/StyledChat#configuration",
"text_formatting": {
"legacy_formatting": true,
"parse_links": true,
"parse_mentions": true,
"markdown": true,
"respect_colors_client_setting": true
},
"auto_completion": {
"tags": true,
"tag_aliases": true,
"emoticons": true
},
"default": {
"display_name": "${default}",
"message_formats": {
"chat": "${player} <gray>•<reset> ${message}",
"joined_the_game": "☀ <bold><gray>[<reset> <green><bold>+<reset> ${player} <bold><gray>]",
"joined_after_name_change": "☀ <bold><gray>[<reset> <yellow><lang:multiplayer.player.joined.renamed:'${player}':'${old_name}'></yellow> <bold><gray>]",
"joined_for_first_time": "☀ <bold><gray>[<reset> <green><bold>+<reset> ${player} <bold><gray>]",
"left_game": "☁ <bold><gray>[<reset> <red><bold>-<reset> ${player} <bold><gray>]",
"base_death": "☠ <bold><gray>[<reset> <red>${default_message}</red> <bold><gray>]",
"advancement_task": "🏅 <bold><gray>[<reset> <lang:chat.type.advancement.task:'${player}':'${advancement}'> <bold><gray>]",
"advancement_challenge": "🏅 <bold><gray>[<reset> <lang:chat.type.advancement.challenge:'${player}':'${advancement}'> <bold><gray>]",
"advancement_goal": "🏅 <bold><gray>[<reset> <lang:chat.type.advancement.goal:'${player}':'${advancement}'> <bold><gray>]",
"sent_team_chat": "<lang:'chat.type.team.sent':'<hover\\:\\'<lang\\:chat.type.team.hover>\\'><suggest_command\\:\\'/teammsg \\'>${team}':'${displayName}':'${message}'>",
"received_team_chat": "<lang:'chat.type.team.text':'<hover\\:\\'<lang\\:chat.type.team.hover>\\'><suggest_command\\:\\'/teammsg \\'>${team}':'${displayName}':'${message}'>",
"sent_private_message": "✉ <bold><gray>[<reset> You <yellow>→<reset> ${receiver} <bold><gray>]<reset> <gray>•<reset> ${message}",
"received_private_message": "✉ <bold><gray>[<reset> ${sender} <green>→<reset> You <bold><gray>]<reset> <gray>•<reset> ${message}",
"say_command": "${player} <gray>•<reset> ${message}",
"me_command": "<lang:'chat.type.emote':'${player}':'${message}'>",
"pet_death": "☠ <bold><gray>[<reset> <red>${default_message}</red> <bold><gray>]"
},
"link_style": "<underline><c:#7878ff>${link}",
"mention_style": "<c:#7878ff>%player:displayname%",
"spoiler_style": "<gray>${spoiler}",
"spoiler_symbol": "▌",
"formatting": {
"dark_red": true,
"green": true,
"underline": true,
"dark_green": true,
"black": true,
"yellow": true,
"bold": true,
"italic": true,
"dark_blue": true,
"dark_purple": true,
"gold": true,
"rainbow": true,
"red": true,
"aqua": true,
"gray": true,
"light_purple": true,
"blue": true,
"white": true,
"dark_aqua": true,
"dark_gray": true,
"spoiler": true,
"strikethrough": true,
"color": true,
"obfuscated": true
},
"emoticons": {
"$emojibase:builtin:joypixels": "${emoji}",
"shrug": "¯\\_(ツ)_/¯",
"table": "(╯°□°)╯︵ ┻━┻",
"sword": "🗡",
"bow": "🏹",
"trident": "🔱",
"rod": "🎣",
"potion": "🧪",
"shears": "✂",
"bucket": "🪣",
"bell": "🔔",
"item": "[%player:equipment_slot mainhand%]",
"pos": "%player:pos_x% %player:pos_y% %player:pos_z%"
},
"custom_message_types": {}
},
"styles": []
}

View file

@ -1,46 +0,0 @@
{
"CONFIG_VERSION_DONT_TOUCH_THIS": 2,
"_comment": "Before changing anything, see https://github.com/Patbox/StyledNicknames#configuration",
"allowByDefault": true,
"nicknameFormat": "${nickname}",
"nicknameFormatColor": "${nickname}",
"maxLength": 256,
"changeDisplayName": true,
"changePlayerListName": true,
"allowLegacyFormatting": true,
"nicknameChangedMessage": "Your nickname has been changed to ${nickname}",
"nicknameResetMessage": "Your nickname has been removed!",
"defaultEnabledFormatting": {
"dark_red": true,
"color": true,
"underline": true,
"yellow": true,
"hard_gradient": true,
"italic": true,
"dark_blue": true,
"dark_purple": true,
"gold": true,
"red": true,
"aqua": true,
"hover": true,
"gray": true,
"light_purple": true,
"white": true,
"dark_gray": true,
"strikethrough": true,
"obfuscated": true,
"change_page": false,
"green": true,
"dark_green": true,
"gradient": true,
"black": true,
"bold": true,
"rainbow": true,
"blue": true,
"dark_aqua": true,
"reset": true
},
"tooLongMessage": "This nickname is too long!",
"allowSpacesInNicknames": true,
"nicknameCantContainSpacesMessage": "Nickname can't contain spaces!"
}

View file

@ -1,24 +0,0 @@
{
"config_version": 2,
"__comment": "Before changing anything, see https://github.com/Patbox/StyledPlayerList#configuration",
"default_style": "synth",
"messages": {
"switch": "Your player list style has been changed to: <gold>${style}</gold>",
"unknown": "<red>This style doesn't exist!</red>",
"no_permission": "<red>You don't have required permissions!</red>"
},
"player": {
"modify_name": false,
"modify_right_text": false,
"modify_list_order": false,
"modify_visibility": false,
"passthrough": false,
"hidden": false,
"format": "%player:displayname%",
"right_text": "",
"update_on_chat_message": false,
"update_tick_time": -1,
"styles": []
},
"client_show_in_singleplayer": true
}

View file

@ -1,22 +0,0 @@
{
"style_name": "Default",
"update_tick_time": 20,
"list_header": [
"",
"<orange>🍮 <yellow><bold>synthcraft</bold></yellow> 🍮",
"",
"<color #555555><strikethrough> </strikethrough></color> <gray>⛏ <color #B5FAFF>%server:online%</color> players online <color #555555><strikethrough> </strikethrough></color>",
""
],
"list_footer": [
"",
"<color #555555><strikethrough> </strikethrough> <strikethrough> </strikethrough></color>",
"",
" we support <color #3EC1F0>Simple Voice Chat<reset>! ",
" web map @ <color #3EC1F0>minecraft.synth.download ",
"",
"<gray>TPS: %server:tps_colored% <dark_gray>•</dark_gray> <gray>ping: <color:#ffba26>%player:ping%</color>",
""
],
"hidden_in_commands": false
}

View file

@ -1,27 +0,0 @@
{
// If the mod should only run on dedicated servers. When enabled it's not sent when in a singleplayer world.
"onlyRunOnDedicatedServers": true,
// Whether an empty line should be send before to first message to separate the welcome from other chat messages that might be sent.
"sendEmptyLineBeforeFirstMessage": true,
// The first message a player will receive when joining the world. Can be left empty.
"messageOneText": "welcome back to §6§lsynthcraft§r :]]",
// 0: black, 1: dark_blue, 2: dark_green, 3: dark_aqua, 4: dark_red, 5: dark_purple, 6: gold, 7: gray, 8: dark_gray, 9: blue, 10: green, 11: aqua, 12: red, 13: light_purple, 14: yellow, 15: white
// min: 0, max: 15
"messageOneColourIndex": 15,
// If a link is entered here, the complete message will be clickable.
"messageOneOptionalURL": "",
// The second message a player will receive when joining the world. Can be left empty.
"messageTwoText": "we support Simple Voice Chat!",
// 0: black, 1: dark_blue, 2: dark_green, 3: dark_aqua, 4: dark_red, 5: dark_purple, 6: gold, 7: gray, 8: dark_gray, 9: blue, 10: green, 11: aqua, 12: red, 13: light_purple, 14: yellow, 15: white
// min: 0, max: 15
"messageTwoColourIndex": 11,
// If a link is entered here, the complete message will be clickable.
"messageTwoOptionalURL": "https://modrinth.com/plugin/simple-voice-chat",
// The third message a player will receive when joining the world. Can be left empty.
"messageThreeText": "view our web map here!",
// 0: black, 1: dark_blue, 2: dark_green, 3: dark_aqua, 4: dark_red, 5: dark_purple, 6: gold, 7: gray, 8: dark_gray, 9: blue, 10: green, 11: aqua, 12: red, 13: light_purple, 14: yellow, 15: white
// min: 0, max: 15
"messageThreeColourIndex": 13,
// If a link is entered here, the complete message will be clickable.
"messageThreeOptionalURL": "https://minecraft.synth.download"
}