Compare commits

...
37 Commits
Author SHA1 Message Date
hypercross b4deedad7f chore: update 2025-12-31 23:58:44 +08:00
hypercross 405ad4506d feat: mp stuff 2025-12-14 00:59:50 +08:00
hypercross a4487f18c3 feat: e4mc 2025-12-14 00:14:15 +08:00
hypercross 0b872f395a refactor: fusion 2025-12-12 20:04:55 +08:00
hypercross f1b4edec4b refactor: update mods & try to do sync 2025-12-11 10:50:15 +08:00
hypercross 2871b53b3b feat: raspberry flavoured sleep 2025-12-10 10:19:57 +08:00
hypercross 9040914856 feat: status effect 2025-12-10 10:08:10 +08:00
hypercross ea52a3bb18 feat: better days 2025-12-10 10:08:03 +08:00
hypercross c5e4d3dfac fix: js 2025-12-09 15:18:57 +08:00
hypercross b1a5440913 fix: BnC coaster recipe 2025-12-09 12:34:45 +08:00
hypercross 8c976996d0 fix: hmi, trade costs 2025-12-09 11:41:29 +08:00
hypercross 34c35ef3b2 fix: hmi 2025-12-09 11:24:37 +08:00
hypercross 07a533bbda fix: js 2025-12-09 11:20:09 +08:00
hypercross 84db9adda6 feat: emi config & flax->canvas 2025-12-09 08:55:23 +08:00
hypercross ea800c7b5d feat: via romana environmental path 2025-12-08 23:00:54 +08:00
hypercross 348eae97b4 feat: mod update 2025-12-08 23:00:47 +08:00
hypercross fadf2b223a feat: emi, healingcamp 2025-12-08 22:58:06 +08:00
hypercross 4c8fd5fc14 fix: map recipe doesn't work 2025-12-05 11:02:00 +08:00
hypercross 0a5699a443 feat: 3d bucket for all fluids 2025-12-04 12:21:36 +08:00
hypercross f872bfb55a feat: seasons, better days, crops data 2025-12-04 09:19:47 +08:00
hypercross 9ec1d44094 feat: add seasons 2025-12-04 08:53:52 +08:00
hypercross d1ddcfa36b feat: boat item view and handcrafted 2025-12-03 23:10:53 +08:00
hypercross bb0a3b0b8e fix: enchanted items 2025-12-03 23:07:25 +08:00
hypercross 210e149df2 fix: enchantment books 2025-12-03 23:03:07 +08:00
hypercross d2edd71e83 refactor: add creeper overhaul 2025-12-03 01:33:47 +08:00
hypercross f6a3e3fa19 refactor: remove aquaculture trades 2025-12-03 01:20:07 +08:00
hypercross be9ca61bf4 refactor: rch, remove aquaculture, add critters 2025-12-03 01:10:25 +08:00
hypercross f1b9796d69 fix: typo & renderin 2025-12-03 00:53:07 +08:00
hyper 84c6f10728 fix: milk compat 2025-12-02 18:31:36 +08:00
hyper ac9ab3bf9b fix: options 2025-12-02 15:34:16 +08:00
hyper 764898804c feat: probejs huh 2025-12-02 15:18:02 +08:00
hyper 1906838c84 feat: unnerf the creeper 2025-12-02 15:10:15 +08:00
hyper a28c825d65 feat: icons, alacrity, hold-my-items, creeper visuals 2025-12-02 15:07:31 +08:00
hyper 06c6a271ab fix: diets 2025-12-02 13:38:01 +08:00
hyper 79631b6eb6 fix: trades 2025-12-02 13:22:03 +08:00
hyper aa0d1fe5a5 refactor: carpenter 2025-12-02 12:51:03 +08:00
hyper fad3864d55 refactor: portal lighting 2025-12-02 12:29:15 +08:00
52 changed files with 7147 additions and 636 deletions
+2 -1
View File
@@ -1,8 +1,9 @@
*.log
*.log.gz
config/
!configureddefaults/config/
!**/*/config/
options.txt
!**/*/options.txt
mods/
usernamecache.json
usercache.json
@@ -0,0 +1,19 @@
[gui]
#Sets the screen alignment of the bed clock.
#Allowed Values: TOP_LEFT, TOP_CENTER, TOP_RIGHT, CENTER_LEFT, CENTER_CENTER, CENTER_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT
clockAlignment = "TOP_RIGHT"
#Sets the scale of the bed clock.
#Range: > 1
clockScale = 32
#Sets the distance between the clock and the edge of the screen.
#Unused if clockAlignment is CENTER_CENTER.
#Range: > 0
clockMargin = 16
#This setting prevents clock wobble when getting in bed by updating the clock's position every tick.
#As a side-effect, the clock won't wobble when first viewed as it does in vanilla. This setting is
#unused if displayBedClock is false.
preventClockWobble = true
#This setting blacklists the sky rendering for specific dimensions. Like in the Aether if using /time set command, the sky jitters. Adding to the blacklist will prevent this behavior.
blacklistDimensions = ["aether:the_aether"]
@@ -0,0 +1,192 @@
[time]
#The speed at which time passes during the day.
#Day is defined as any time between dayStart (see below) and nightStart (see below) the next day.
#This is the RATIO of time passing relative to vanilla.
#Vanilla speed: 1.0
#Range: 0.0 ~ 24000.0
daySpeed = 0.7
#The speed at which time passes during the night.
#Night is defined as any time between dayStart (see below) and nightStart (see below).
#This is the RATIO of time passing relative to vanilla.
#Vanilla speed: 1.0
#Range: 0.0 ~ 24000.0
nightSpeed = 0.7
#An alternative way to set day speed. This setting is mutually exclusive with daySpeed.
#If both are set, speedMethod (see below) determines which setting is used.
#This setting defines the length of the day in real-world minutes.
#Vanilla length: 10.0 minutes
#Range: 0.1 ~ 10000.0
daySpeedMinutes = 10.0
#An alternative way to set night speed. This setting is mutually exclusive with nightSpeed.
#If both are set, speedMethod (see below) determines which setting is used.
#This setting defines the length of the night in real-world minutes.
#Vanilla length: 10.0 minutes
#Range: 0.1 ~ 10000.0
nightSpeedMinutes = 10.0
#Determines which method is used to set day and night speed.
#RATIO: Uses daySpeed and nightSpeed settings.
#MINUTES: Uses daySpeedMinutes and nightSpeedMinutes settings.
#REALTIME: Sets day and night to 12 real-world hours each.
#Allowed Values: RATIO, MINUTES, REALTIME
speedMethod = "RATIO"
#The time to start day. This is configurable within the time the sun appears and day starts.
#Default: 23500
#Range: 22300.0 ~ 24000.0
dayStart = 23500.0
#The time to start night. This is configurable within the time sunset starts and night starts.
#Default: 12500
#Range: 12000.0 ~ 13000.0
nightStart = 12500.0
#Enabling this will allow the setting of an infinite amount of time speeds defined as pairs in the form:
#(currentTick, desiredSpeed)
#where between each value bezier spline interpolation is performed for smooth transitioning
#The two default pairs at 0 and 24000 are necessary as they act as bounds. However
#The time speed value for each of them can be freely modified
enableInterpolatedTime = false
#The value that determines the smoothing factor in the interpolation algorithm.
#A high value will make the interpolation softer and curvier
#A low value will make the interpolation closer to a piecewise function
#Range: 0.0 ~ 10.0
interpolatedTimeSmoothingFactor = 0.25
#These are the pairs that define what speed time should run at, at the specified day/night tick
#The two default pairs need to exist, but their time speed values can be modified
interpolatedTimeList = ["0,1.0", "24000,1.0"]
[time.effects]
#When applied, this effect syncs the passage of weather with the current speed of time.
#I.e., as time moves faster, rain stops faster. Clear weather is not affected.
#When set to SLEEPING, this effect only applies when at least one player is sleeping in a dimension.
#Note: This setting is not applicable if game rule doWeatherCycle is false.
#Allowed Values: NEVER, ALWAYS, SLEEPING
weatherEffect = "SLEEPING"
#When applied, this effect syncs the random tick speed with the current speed of time, forcing
#crop, tree, and grass growth to occur at baseRandomTickSpeed multiplied by the current time-speed.
#When set to SLEEPING, randomTickSpeed is set to baseRandomTickSpeed unless at least one player is sleeping in a dimension.
#More information on the effects of random tick speed can be found here: https://minecraft.wiki/w/Tick#Random_tick
#WARNING: This setting overwrites the randomTickSpeed game rule. To modify the base random tick speed,
#use the baseRandomTickSpeed setting instead of changing the game rule directly.
#This effect has a minimum randomTickSpeed of 1 if time speed is less than 1.0.
#Allowed Values: NEVER, ALWAYS, SLEEPING
randomTickEffect = "SLEEPING"
#The base random tick speed used by the randomTickEffect time effect.
#Range: > 0
baseRandomTickSpeed = 3
#When applied, this effect progresses potion effects to match the rate of the current time-speed.
#This effect does not apply if time speed is 1.0 or less.
#THIS MAY HAVE A NEGATIVE IMPACT ON PERFORMANCE IN SERVERS WITH MANY PLAYERS.
#When set to ALWAYS, this effect applies to all players in the dimension, day or night.
#When set to SLEEPING, this effect only applies to players who are sleeping.
#Allowed Values: NEVER, ALWAYS, SLEEPING
potionEffect = "SLEEPING"
#When applied, this effect progresses player hunger effects to match the rate of the current time-speed.
#This results in faster healing when food level is full, and faster harm when food level is too low.
#This effect does not apply if time speed is 1.0 or less.
#When set to ALWAYS, this effect applies to all players in the dimension, day or night. Not recommended on higher difficulty settings
#When set to SLEEPING, this effect only applies to players who are sleeping.
#Allowed Values: NEVER, ALWAYS, SLEEPING
hungerEffect = "SLEEPING"
#When applied, this effect progresses block entities like furnaces, hoppers, and spawners to match the rate of the current time-speed.
#WARNING: This time-effect has a significant impact on performance.
#This effect does not apply if time speed is 1.0 or less.
#When set to SLEEPING, this effect only applies when at least one player is sleeping in a dimension.
#Allowed Values: NEVER, ALWAYS, SLEEPING
blockEntityEffect = "SLEEPING"
[sleep]
#Enables or disables the sleep feature of this mod. Enabling this setting will modify the vanilla sleep functionality
#and may conflict with other sleep mods. If disabled, all settings in the sleep section will not apply.
enableSleepFeature = true
### THIS SETTING DEFINES THE SLEEP TIME-SPEED IN SINGLE-PLAYER GAMES ###
#The maximum speed at which time passes when all players are sleeping.
#A value of 110 is nearly equal to the time it takes to sleep in vanilla.
#Range: 0.0 ~ 24000.0
sleepSpeedMax = 55.0
#The minimum speed at which time passes when only 1 player is sleeping in a full server.
#Range: 0.0 ~ 24000.0
sleepSpeedMin = 1.0
#The speed at which time passes when all players are sleeping.
#Set to -1 to disable this feature (sleepSpeedMax will be used when all players are sleeping).
#Range: -1.0 ~ 24000.0
sleepSpeedAll = -1.0
#This parameter defines the curvature of the interpolation function that translates the sleeping player percentage into time-speed.
#The function used is a Normalized Tunable Sigmoid Function.
#A value of 0.5 represents a linear relationship.
#Smaller values bend the curve toward the X axis, while greater values bend it toward the Y axis.
#This graph may be used as a reference for tuning the curve: https://www.desmos.com/calculator/w8gntxzfow
#Credit to Dino Dini for the function: https://dinodini.wordpress.com/2010/04/05/normalized-tunable-sigmoid-functions/
#Credit to SmoothSleep for the idea: https://www.spigotmc.org/resources/smoothsleep.32043/
#Range: 0.0 ~ 1.0
sleepSpeedCurve = 0.3
#Set to 'true' for the weather to clear when players wake up in the morning as it does in vanilla.
#Set to 'false' to force weather to pass naturally. Adds realism when accelerateWeather is enabled.
#Note: This setting is ignored if game rule doWeatherCycle is false.
clearWeatherOnWake = true
#When true, players are allowed to sleep at all times of day in dimensions controlled by Better Days.
#Note: Other mods may override this ability.
allowDaySleep = false
#When true, a clock is displayed in the sleep interface.
displayBedClock = true
#The ratio of players in a dimension that must be sleeping to skip to morning.
#A value of 1 means all players must be sleeping, 0.5 means half the players must be sleeping, etc.
#A value of 0 effectively disables this feature.
#Range: 0.0 ~ 1.0
ratioPlayersForSleep = 0.0
#This section defines settings for notification messages.
#All messages support Minecraft formatting codes (https://minecraft.wiki/w/Formatting_codes).
#All messages have variables that can be inserted using the following format: ${variableName}
#The type option controls where the message appears:
# SYSTEM: Appears as a message in the chat. (e.g., "Respawn point set")
# GAME_INFO: Game information that appears above the hotbar (e.g., "You may not rest now, the bed is too far away").
#The target option controls to whom the message is sent:
# ALL: Sends the message to all players on the server.
# DIMENSION: Sends the message to all players in the current dimension.
# SLEEPING: Sends the message to all players in the current dimension who are sleeping.
[sleep.messages]
#This message is sent after a sleep cycle has completed.
[sleep.messages.morning]
#Available variables:
#sleepingPlayers -> the number of players in the current dimension who were sleeping.
#totalPlayers -> the number of players in the current dimension (spectators are not counted).
#sleepingPercentage -> the percentage of players in the current dimension who were sleeping (does not include % symbol).
message = "§e§oGood Morning!"
#Sets where this message appears.
#Allowed Values: SYSTEM, GAME_INFO
type = "GAME_INFO"
#Sets to whom this message is sent.
#A target of 'SLEEPING' will send the message to all players who just woke up.
#Allowed Values: ALL, DIMENSION, SLEEPING
target = "DIMENSION"
#This message is sent when a player enters their bed.
[sleep.messages.enterBed]
#Available variables:
#player -> the player who started sleeping.
#sleepingPlayers -> the number of players in the current dimension who are sleeping.
#totalPlayers -> the number of players in the current dimension (spectators are not counted).
#sleepingPercentage -> the percentage of players in the current dimension who are sleeping (does not include % symbol).
message = "${player} is now sleeping. [${sleepingPlayers}/${totalPlayers}]"
#Sets where this message appears.
#Allowed Values: SYSTEM, GAME_INFO
type = "GAME_INFO"
#Sets to whom this message is sent.
#Allowed Values: ALL, DIMENSION, SLEEPING
target = "DIMENSION"
#This message is sent when a player leaves their bed (without being woken up naturally by morning).
[sleep.messages.leaveBed]
#Available variables:
#player -> the player who left their bed.
#sleepingPlayers -> the number of players in the current dimension who are sleeping.
#totalPlayers -> the number of players in the current dimension (spectators are not counted).
#sleepingPercentage -> the percentage of players in the current dimension who are sleeping (does not include % symbol).
message = "${player} has left their bed. [${sleepingPlayers}/${totalPlayers}]"
#Sets where this message appears.
#Allowed Values: SYSTEM, GAME_INFO
type = "GAME_INFO"
#Sets to whom this message is sent.
#Allowed Values: ALL, DIMENSION, SLEEPING
target = "DIMENSION"
@@ -0,0 +1,32 @@
[mobs]
[mobs.creeper]
"Creeper explosions drop all blocks" = true
#Creeper explosions have a weaker power
"Creeper explosion nerf" = false
#How much weaker Creeper explosions are
#Range: 0.0 ~ 1.7976931348623157E308
"Creeper explosion nerf factor" = 0.5
[mobs.deeper]
"Deeper explosions drop all blocks" = true
#Range: -64 ~ 320
"Deeper max spawn height" = 60
[mobs.peeper]
#Range: -64 ~ 320
"Peeper max spawn height" = -4
[tweaks]
#Chainmail armor increases the user's attack damage
"Chainmail armor increases damage" = true
#Golden armor increases the user's movement speed
"Golden armor increases speed" = true
[tweaks.rails]
#Rails can be placed in the direction you're looking at by clicking on another rail, similar to scaffolding
"Better rail placement" = true
#The range in blocks that better rail placement can reach
#Range: > 0
"Placement range" = 7
+490
View File
@@ -0,0 +1,490 @@
/** EMI Config */
#general {
/**
* Whether EMI is enabled and visible.
*/
enabled: true;
/**
* Whether cheating in items is enabled.
*/
cheat-mode: false;
/**
* How much EMI should use tooltips and popups to show controls and information.
*/
help-level: normal;
/**
* Where EMI should pull stacks from to populate the index.
*/
index-source: creative;
/**
* Which sidebar should be searched using the search bar.
*/
search-sidebar: right;
/**
* Whether normal search queries should include the tooltip.
*/
search-tooltip-by-default: true;
/**
* Whether normal search queries should include the mod name.
*/
search-mod-name-by-default: false;
/**
* Whether normal search queries should include the stack's tags.
*/
search-tags-by-default: false;
}
#ui {
/**
* Which action should be performed when clicking the recipe book.
*/
recipe-book-action: toggle-visibility;
/**
* Where to display status effects in the inventory.
*/
effect-location: top;
/**
* Whether to display a gray overlay when hovering over a stack.
*/
show-hover-overlay: true;
/**
* Whether to add mod name to tooltips
*/
append-mod-id: true;
/**
* Whether to add mod name to item tooltips, in case another mod provides behavior
*/
append-item-mod-id: true;
/**
* Prevents recipes being quick crafted from shifting around under the cursor.
*/
miscraft-prevention: true;
/**
* The unit to display fluids as.
*/
fluid-unit: millibuckets;
/**
* Whether to use the batched render system. Batching is faster, but may have
* incompatibilities with shaders or other mods.
*/
use-batched-renderer: true;
/**
* Whether to have the search bar in the center of the screen, instead of to the
* side.
*/
center-search-bar: true;
/**
* Which sidebar type to switch to when searching.
*/
search-sidebar-focus: index;
/**
* Which sidebar type to focus when the search is empty.
*/
empty-search-sidebar-focus: none;
/**
* Whether the EMI config button should be visible.
*/
emi-config-button-visibility: shown;
/**
* Whether the recipe tree button should be visible.
*/
recipe-tree-button-visibility: auto;
/**
* The maximum height the recipe screen will grow to be if space is available in
* pixels.
*/
maximum-recipe-screen-height: 256;
/**
* The minimum width of the recipe screen in pixels. Controls how many tabs there
* can be, and where the page switching buttons go. The default is 176, the width
* of most screens.
*/
minimum-recipe-screen-width: 176;
/**
* The amount of vertical margin to give in the recipe screen.
*/
vertical-margin: 20;
/**
* Where to show workstations in the recipe screen
*/
workstation-location: bottom;
/**
* Display cost per batch when hovering a recipe output
*/
show-cost-per-batch: true;
/**
* Whether recipes should have a button to set as default.
*/
recipe-default-button: true;
/**
* Whether recipes should have a button to show the recipe tree.
*/
recipe-tree-button: true;
/**
* Whether recipes should have a button to fill the ingredients in a handler.
*/
recipe-fill-button: true;
/**
* Whether recipes should have a button to take a screenshot of the recipe.
*/
recipe-screenshot-button: false;
/**
* The GUI scale at which recipe screenshots are saved. Use 0 to use the current
* GUI scale.
*/
recipe-screenshot-scale: 0;
/**
* The pages in the left sidebar
*/
left-sidebar-pages: craftables;
/**
* The subpanels in the left sidebar
*/
left-sidebar-subpanels: none;
/**
* How many columns and rows of ingredients to limit the left sidebar to
*/
left-sidebar-size: 12, 100;
/**
* How much space to maintain between the left sidebar and obstructions, in pixels
*/
left-sidebar-margins: 2, 2, 2, 2;
/**
* Where to position the left sidebar
*/
left-sidebar-align: left, top;
/**
* Whether to render the header buttons and page count for the left sidebar
*/
left-sidebar-header: visible;
/**
* Which theme to use for the left sidebar
*/
left-sidebar-theme: vanilla;
/**
* The pages in the right sidebar
*/
right-sidebar-pages: index;
/**
* The subpanels in the right sidebar
*/
right-sidebar-subpanels: none;
/**
* How many columns and rows of ingredients to limit the right sidebar to
*/
right-sidebar-size: 12, 100;
/**
* How much space to maintain between the right sidebar and obstructions, in pixels
*/
right-sidebar-margins: 2, 2, 2, 2;
/**
* Where to position the right sidebar
*/
right-sidebar-align: right, top;
/**
* Whether to render the header buttons and page count for the right sidebar
*/
right-sidebar-header: visible;
/**
* Which theme to use for the right sidebar
*/
right-sidebar-theme: vanilla;
/**
* The pages in the top sidebar
*/
top-sidebar-pages: none;
/**
* The subpanels in the top sidebar
*/
top-sidebar-subpanels: none;
/**
* How many columns and rows of ingredients to limit the top sidebar to
*/
top-sidebar-size: 9, 9;
/**
* How much space to maintain between the top sidebar and obstructions, in pixels
*/
top-sidebar-margins: 2, 2, 2, 2;
/**
* Where to position the top sidebar
*/
top-sidebar-align: center, center;
/**
* Whether to render the header buttons and page count for the top sidebar
*/
top-sidebar-header: visible;
/**
* Which theme to use for the top sidebar
*/
top-sidebar-theme: transparent;
/**
* The pages in the bottom sidebar
*/
bottom-sidebar-pages: none;
/**
* The subpanels in the bottom sidebar
*/
bottom-sidebar-subpanels: none;
/**
* How many columns and rows of ingredients to limit the bottom sidebar to
*/
bottom-sidebar-size: 9, 9;
/**
* How much space to maintain between the bottom sidebar and obstructions, in
* pixels
*/
bottom-sidebar-margins: 2, 2, 2, 2;
/**
* Where to position the bottom sidebar
*/
bottom-sidebar-align: center, center;
/**
* Whether to render the header buttons and page count for the bottom sidebar
*/
bottom-sidebar-header: visible;
/**
* Which theme to use for the bottom sidebar
*/
bottom-sidebar-theme: transparent;
}
#binds {
/**
* Toggle the visibility of EMI.
*/
toggle-visibility: "ctrl key.keyboard.o";
/**
* Focuses the search bar.
*/
focus-search: "ctrl key.keyboard.f";
/**
* Clears the search bar.
*/
clear-search: "key.keyboard.unknown";
/**
* Display the recipes for creating a stack.
*/
view-recipes: "key.keyboard.r";
view-recipes: "key.mouse.left";
/**
* Display the recipes that can be created using a stack.
*/
view-uses: "key.keyboard.u";
view-uses: "key.mouse.right";
/**
* Favorite the item to display on the side of the screen opposite of recipies for
* quick access.
*/
favorite: "key.keyboard.a";
/**
* Set the default recipe for a given stack in the output of a recipe to that
* recipe.
*/
default-stack: "ctrl key.mouse.left";
/**
* Display the recipe tree for a given stack.
*/
view-stack-tree: "key.keyboard.unknown";
/**
* Display the recipe tree.
*/
view-tree: "key.keyboard.unknown";
/**
* Return to the previous page in EMI.
*/
back: "key.keyboard.backspace";
/**
* Return to the next page in EMI after going back.
*/
forward: "key.keyboard.unknown";
/**
* When on a stack with an associated recipe:
* Move ingredients for a single result.
*/
craft-one: "key.mouse.left";
/**
* When on a stack with an associated recipe:
* Move ingredients for as many results as possible.
*/
craft-all: "shift key.mouse.left";
/**
* When on a stack with an associated recipe:
* Move ingredients for a single result and put in inventory if possible.
*/
craft-one-to-inventory: "key.keyboard.unknown";
/**
* When on a stack with an associated recipe:
* Move ingredients for as many results as possible and put in inventory if
* possible.
*/
craft-all-to-inventory: "key.keyboard.unknown";
/**
* When on a stack with an associated recipe:
* Move ingredients for a single result and put in cursor if possible.
*/
craft-one-to-cursor: "ctrl key.mouse.left";
/**
* Display the recipe that will be used to craft on a stack with no recipe context.
*/
show-craft: "key.keyboard.left.shift";
/**
* Cheat in one of an item into the inventory.
*/
cheat-one-to-inventory: "ctrl key.mouse.right";
/**
* Cheat in a stack of an item into the inventory.
*/
cheat-stack-to-inventory: "ctrl key.mouse.left";
/**
* Cheat in one of an item into the cursor.
*/
cheat-one-to-cursor: "ctrl key.mouse.middle";
/**
* Cheat in a stack of an item into the cursor.
*/
cheat-stack-to-cursor: "key.keyboard.unknown";
/**
* Delete the stack in the cursor when hovering the index
*/
delete-cursor-stack: "key.mouse.left";
/**
* Copies the hovered recipe's ID to the clipboard
*/
copy-recipe-id: "key.keyboard.unknown";
/**
* In edit mode, hide the hovered stack
*/
hide-stack: "ctrl key.mouse.left";
/**
* In edit mode, hide stacks with the hovered stack's id
*/
hide-stack-by-id: "ctrl shift key.mouse.left";
}
#dev {
/**
* Whether development functions should be enabled. Not recommended for general
* play.
*/
dev-mode: false;
/**
* Whether editing the index is enabled
*/
edit-mode: false;
/**
* Whether to log untranslated tags as warnings.
*/
log-untranslated-tags: false;
/**
* Whether to log ingredients that don't have a representative tag as warnings.
*/
log-non-tag-ingredients: false;
/**
* Whether hovering the output of a recipe should show the recipe's EMI ID.
*/
show-recipe-ids: false;
/**
* Whether to display additional widgets added to recipes from other mods.
* These are typically developer facing and compatibility related, and not useful
* for players.
*/
show-recipe-decorators: false;
/**
* Whether stacks in the index should display a highlight if they have a recipe
* default.
*/
highlight-defaulted: false;
/**
* Whether to display exclusion areas
*/
highlight-exclusion-areas: false;
}
@@ -4,10 +4,10 @@
"checkForCampfireDelayInTicks": 40,
// The radius around the campfire in blocks where players receive the regeneration effect.
// min: 1, max: 64
"healingRadius": 8,
"healingRadius": 6,
// The duration of the regeneration effect which the campfire applies.
// min: 1, max: 600
"effectDurationSeconds": 30,
"effectDurationSeconds": 5,
// The level of regeneration which the campfire applies, by default 1.
// min: 1, max: 50
"regenerationLevel": 1,
@@ -0,0 +1,41 @@
[animations]
#Choose your preferred animation speed (0.5-1.5)
#Range: 0.5 ~ 1.5
animationSpeed = 1.0
#Switch speed (0-10)
#Range: 0.0 ~ 10.0
switchSpeed = 0.018
#Enable or disable swimming animation
enableSwimmingAnimation = true
#Swing animation speed (6-12)
#Range: 6 ~ 12
swingSpeed = 9
#Enable or disable climb and crawl animation
enableClimbAndCrawlAnimation = true
#Enable or disable punching animation
enablePunchingAnimation = true
[positions]
#Viewmodel X Offset
#Range: -10.0 ~ 10.0
viewmodelXOffset = 0.0
#Viewmodel Y Offset
#Range: -10.0 ~ 10.0
viewmodelYOffset = 0.0
#Viewmodel Z Offset
#Range: -10.0 ~ 10.0
viewmodelZOffset = 0.0
[misc]
#Enable MB3D compatibility mode
mb3DCompat = false
[modRenderExclusions]
#Mod IDs that should be excluded from custom rendering (entire mod).
excludedModIds = ["pointblank", "jeg", "cataclysm"]
#Specific item IDs to exclude from custom rendering (e.g. 'modid:itemname').
excludedItemIds = []
#Skips the blockItem renderer which is useful especially for create items cause their already 3d
renderBlockAsItem = ["create:cogwheel", "create:large_cogwheel", "create:shaft", "create:gearbox", "create:vertical_gearbox", "create:clutch", "create:gearshift", "create:encased_chain_drive", "create:adjustable_chain_gearshift", "create:belt_connector", "create:chain_conveyor", "create:creative_motor", "create:water_wheel", "create:large_water_wheel", "create:nozzle", "create:turntable", "create:hand_crank", "create:millstone", "create:crushing_wheel", "create:mechanical_press", "create:mechanical_mixer", "create:empty_blaze_burner", "create:blaze_burner", "create:depot", "create:weighted_ejector", "create:speedometer", "create:stressometer", "create:wooden_bracket", "create:metal_bracket", "create:schematicannon", "create:fluid_pipe", "create:mechanical_pump", "create:smart_fluid_pipe", "create:fluid_valve", "create:copper_valve_handle", "create:hose_pulley", "create:portable_fluid_interface", "create:steam_engine", "create:gantry_carriage", "create:gantry_shaft", "create:windmill_bearing", "create:mechanical_bearing", "create:clockwork_bearing", "create:rope_pulley", "create:elevator_pulley", "create:cart_assembler", "create:sticker", "create:contraption_controls", "create:mechanical_drill", "create:mechanical_saw", "create:deployer", "create:portable_storage_interface", "create:mechanical_harvester", "create:mechanical_plough", "create:mechanical_roller", "create:mechanical_crafter", "create:sequenced_gearshift", "create:flywheel", "create:rotation_speed_controller", "create:mechanical_arm", "create:controls", "create:andesite_funnel", "create:brass_funnel", "create:andesite_tunnel", "create:brass_tunnel", "create:package_frogport", "create:factory_gauge", "create:display_board", "create:peculiar_bell", "create:haunted_bell", "create:brown_toolbox", "create:clipboard", "supplementaries:flax_seeds", "brewinandchewin:coaster"]
@@ -23,7 +23,7 @@
#Marker id associated with the red pin button on the atlas screen. Set to empty string to disable
pin_marked_id = "map_atlases:pin"
#Shows light color on maps. Needs Moonlight lib
light_map = false
light_map = true
#Show nearby mobs on minimap. Needs matching client config also set
mob_radar = false
#Adds a shear button to the atlas screen which allows you to cut maps
@@ -26,12 +26,12 @@
magnetite_range = 64
[nether_portals_and_portal_fluid]
flint_and_steel_portal_lighting = true
flint_and_steel_portal_lighting = false
portal_destruction_crying_obsidian = true
portal_creation_sound = true
portal_destruction_sound = true
portal_fluid_drinking = true
instant_teleportation = true
instant_teleportation = false
piglins_give_crying_obsidian = true
dimensional_tears_from_crying_obsidian = false
dimensional_tears_from_respawn_anchor = true
+1 -1
View File
@@ -4,7 +4,7 @@
"node_distance_minimum": 4,
"node_distance_maximum": 8,
"node_utility_distance": 3,
"path_block_ids": ["minecraft:dirt_path", "minecraft:water"],
"path_block_ids": ["minecraft:dirt_path", "minecraft:water", "environmental:dirt_path"],
"path_block_tags": [],
"path_block_strings": [],
"block_string_blacklist": [
+11
View File
@@ -0,0 +1,11 @@
resourcePacks:["vanilla","mod_resources","Moonlight Mods Dynamic Assets","builtin/add_pack_finders_test","file/FreshAnimations_v1.10.2.zip","file/-1.21.2 Fresh Moves v3.1 (With Animated Eyes).zip","file/AL\u0027s Creepers Revamped 1.3.zip","file/FreshCompats_v1.6.zip","file/Dramatic Skys Demo 1.5.3.36.1.zip","file/Icons v.1.12.1.zip"]
incompatibleResourcePacks:["file/AL\u0027s Creepers Revamped 1.3.zip"]
key_iris.keybind.reload:key.keyboard.unknown
key_iris.keybind.toggleShaders:key.keyboard.unknown
key_iris.keybind.shaderPackSelection:key.keyboard.unknown
key_treechop.key.toggle_chopping:key.keyboard.unknown
key_treechop.key.toggle_felling:key.keyboard.unknown
key_treechop.key.cycle_sneak_behavior:key.keyboard.unknown
key_treechop.key.open_settings_overlay:key.keyboard.unknown
key_key.cycleLeft:key.keyboard.unknown
key_key.cycleRight:key.keyboard.unknown
+1 -8
View File
@@ -21,7 +21,7 @@
- [x] common villager trades
- [x] villager explorer map trades
- [ ] villager diet update
- [x] villager diet update
- a village biome specific main crop that everybody eats
- more random snacks / drinks / beer on the second slot
- add more of farmer's complex food (4+ ingredients, cooked, etc)
@@ -29,10 +29,3 @@
- [x] add configs for tidal towns
- they're just another plains village
- [ ] map atlases no longer need paper
- just remove all maintainence cost
- [ ] spyglass can be used from inventory & activates jade
- [ ] bottle of dimension tears required for nether portal
@@ -0,0 +1,113 @@
{
"credit": "Made with Blockbench",
"texture_size": [64, 64],
"textures": {
"2": "create:item/chocolate_bucket"
},
"elements": [
{
"from": [3, 2, 3],
"to": [13, 11, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]},
"faces": {
"north": {"uv": [0, 0, 2.5, 2.25], "texture": "#2"},
"east": {"uv": [4.5, 6.75, 4.75, 9], "texture": "#2"},
"south": {"uv": [0, 2.25, 2.5, 4.5], "texture": "#2"},
"west": {"uv": [4.75, 6.75, 5, 9], "texture": "#2"},
"up": {"uv": [4.5, 7, 2, 6.75], "texture": "#2"},
"down": {"uv": [9.25, 2, 6.75, 2.25], "texture": "#2"}
}
},
{
"from": [3, 2, 4],
"to": [4, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 13]},
"faces": {
"north": {"uv": [5, 6.75, 5.25, 9], "texture": "#2"},
"east": {"uv": [2.5, 0, 4.75, 2.25], "texture": "#2"},
"south": {"uv": [5.25, 6.75, 5.5, 9], "texture": "#2"},
"west": {"uv": [2.5, 2.25, 4.75, 4.5], "texture": "#2"},
"up": {"uv": [5.75, 9, 5.5, 6.75], "texture": "#2"},
"down": {"uv": [6, 6.75, 5.75, 9], "texture": "#2"}
}
},
{
"from": [4, 2, 12],
"to": [13, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [13, 1, 13]},
"faces": {
"north": {"uv": [0, 4.5, 2.25, 6.75], "texture": "#2"},
"east": {"uv": [6, 6.75, 6.25, 9], "texture": "#2"},
"south": {"uv": [2.25, 4.5, 4.5, 6.75], "texture": "#2"},
"west": {"uv": [6.25, 6.75, 6.5, 9], "texture": "#2"},
"up": {"uv": [9, 2.5, 6.75, 2.25], "texture": "#2"},
"down": {"uv": [9, 2.5, 6.75, 2.75], "texture": "#2"}
}
},
{
"from": [12, 2, 4],
"to": [13, 11, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 13]},
"faces": {
"north": {"uv": [2, 7, 2.25, 9.25], "texture": "#2"},
"east": {"uv": [4.5, 4.5, 6.5, 6.75], "texture": "#2"},
"south": {"uv": [2.25, 7, 2.5, 9.25], "texture": "#2"},
"west": {"uv": [4.75, 0, 6.75, 2.25], "texture": "#2"},
"up": {"uv": [2.75, 9, 2.5, 7], "texture": "#2"},
"down": {"uv": [3, 7, 2.75, 9], "texture": "#2"}
}
},
{
"from": [4, 0, 4],
"to": [12, 2, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 4]},
"faces": {
"north": {"uv": [6.75, 0, 8.75, 0.5], "texture": "#2"},
"east": {"uv": [6.75, 0.5, 8.75, 1], "texture": "#2"},
"south": {"uv": [6.75, 1, 8.75, 1.5], "texture": "#2"},
"west": {"uv": [6.75, 1.5, 8.75, 2], "texture": "#2"},
"up": {"uv": [8.5, 8.25, 6.5, 6.25], "texture": "#2"},
"down": {"uv": [2, 6.75, 0, 8.75], "texture": "#2"}
}
},
{
"from": [4, 10, 4],
"to": [12, 10, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4]},
"faces": {
"north": {"uv": [0, 0, 2, 0], "texture": "#2"},
"east": {"uv": [0, 0, 2, 0], "texture": "#2"},
"south": {"uv": [0, 0, 2, 0], "texture": "#2"},
"west": {"uv": [0, 0, 2, 0], "texture": "#2"},
"up": {"uv": [6.75, 4.25, 4.75, 2.25], "texture": "#2"},
"down": {"uv": [8.5, 4.25, 6.5, 6.25], "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"thirdperson_lefthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"firstperson_righthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"firstperson_lefthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"gui": {
"rotation": [30, 225, 0],
"scale": [0.75, 0.75, 0.75]
}
}
}
@@ -0,0 +1,113 @@
{
"credit": "Made with Blockbench",
"texture_size": [64, 64],
"textures": {
"2": "create:item/honey_bucket"
},
"elements": [
{
"from": [3, 2, 3],
"to": [13, 11, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]},
"faces": {
"north": {"uv": [0, 0, 2.5, 2.25], "texture": "#2"},
"east": {"uv": [4.5, 6.75, 4.75, 9], "texture": "#2"},
"south": {"uv": [0, 2.25, 2.5, 4.5], "texture": "#2"},
"west": {"uv": [4.75, 6.75, 5, 9], "texture": "#2"},
"up": {"uv": [4.5, 7, 2, 6.75], "texture": "#2"},
"down": {"uv": [9.25, 2, 6.75, 2.25], "texture": "#2"}
}
},
{
"from": [3, 2, 4],
"to": [4, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 13]},
"faces": {
"north": {"uv": [5, 6.75, 5.25, 9], "texture": "#2"},
"east": {"uv": [2.5, 0, 4.75, 2.25], "texture": "#2"},
"south": {"uv": [5.25, 6.75, 5.5, 9], "texture": "#2"},
"west": {"uv": [2.5, 2.25, 4.75, 4.5], "texture": "#2"},
"up": {"uv": [5.75, 9, 5.5, 6.75], "texture": "#2"},
"down": {"uv": [6, 6.75, 5.75, 9], "texture": "#2"}
}
},
{
"from": [4, 2, 12],
"to": [13, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [13, 1, 13]},
"faces": {
"north": {"uv": [0, 4.5, 2.25, 6.75], "texture": "#2"},
"east": {"uv": [6, 6.75, 6.25, 9], "texture": "#2"},
"south": {"uv": [2.25, 4.5, 4.5, 6.75], "texture": "#2"},
"west": {"uv": [6.25, 6.75, 6.5, 9], "texture": "#2"},
"up": {"uv": [9, 2.5, 6.75, 2.25], "texture": "#2"},
"down": {"uv": [9, 2.5, 6.75, 2.75], "texture": "#2"}
}
},
{
"from": [12, 2, 4],
"to": [13, 11, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 13]},
"faces": {
"north": {"uv": [2, 7, 2.25, 9.25], "texture": "#2"},
"east": {"uv": [4.5, 4.5, 6.5, 6.75], "texture": "#2"},
"south": {"uv": [2.25, 7, 2.5, 9.25], "texture": "#2"},
"west": {"uv": [4.75, 0, 6.75, 2.25], "texture": "#2"},
"up": {"uv": [2.75, 9, 2.5, 7], "texture": "#2"},
"down": {"uv": [3, 7, 2.75, 9], "texture": "#2"}
}
},
{
"from": [4, 0, 4],
"to": [12, 2, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 4]},
"faces": {
"north": {"uv": [6.75, 0, 8.75, 0.5], "texture": "#2"},
"east": {"uv": [6.75, 0.5, 8.75, 1], "texture": "#2"},
"south": {"uv": [6.75, 1, 8.75, 1.5], "texture": "#2"},
"west": {"uv": [6.75, 1.5, 8.75, 2], "texture": "#2"},
"up": {"uv": [8.5, 8.25, 6.5, 6.25], "texture": "#2"},
"down": {"uv": [2, 6.75, 0, 8.75], "texture": "#2"}
}
},
{
"from": [4, 10, 4],
"to": [12, 10, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4]},
"faces": {
"north": {"uv": [0, 0, 2, 0], "texture": "#2"},
"east": {"uv": [0, 0, 2, 0], "texture": "#2"},
"south": {"uv": [0, 0, 2, 0], "texture": "#2"},
"west": {"uv": [0, 0, 2, 0], "texture": "#2"},
"up": {"uv": [6.75, 4.25, 4.75, 2.25], "texture": "#2"},
"down": {"uv": [8.5, 4.25, 6.5, 6.25], "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"thirdperson_lefthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"firstperson_righthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"firstperson_lefthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"gui": {
"rotation": [30, 225, 0],
"scale": [0.75, 0.75, 0.75]
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 779 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 764 B

@@ -0,0 +1,113 @@
{
"credit": "Made with Blockbench",
"texture_size": [64, 64],
"textures": {
"2": "oreganized:item/molten_lead_bucket"
},
"elements": [
{
"from": [3, 2, 3],
"to": [13, 11, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]},
"faces": {
"north": {"uv": [0, 0, 2.5, 2.25], "texture": "#2"},
"east": {"uv": [4.5, 6.75, 4.75, 9], "texture": "#2"},
"south": {"uv": [0, 2.25, 2.5, 4.5], "texture": "#2"},
"west": {"uv": [4.75, 6.75, 5, 9], "texture": "#2"},
"up": {"uv": [4.5, 7, 2, 6.75], "texture": "#2"},
"down": {"uv": [9.25, 2, 6.75, 2.25], "texture": "#2"}
}
},
{
"from": [3, 2, 4],
"to": [4, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 13]},
"faces": {
"north": {"uv": [5, 6.75, 5.25, 9], "texture": "#2"},
"east": {"uv": [2.5, 0, 4.75, 2.25], "texture": "#2"},
"south": {"uv": [5.25, 6.75, 5.5, 9], "texture": "#2"},
"west": {"uv": [2.5, 2.25, 4.75, 4.5], "texture": "#2"},
"up": {"uv": [5.75, 9, 5.5, 6.75], "texture": "#2"},
"down": {"uv": [6, 6.75, 5.75, 9], "texture": "#2"}
}
},
{
"from": [4, 2, 12],
"to": [13, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [13, 1, 13]},
"faces": {
"north": {"uv": [0, 4.5, 2.25, 6.75], "texture": "#2"},
"east": {"uv": [6, 6.75, 6.25, 9], "texture": "#2"},
"south": {"uv": [2.25, 4.5, 4.5, 6.75], "texture": "#2"},
"west": {"uv": [6.25, 6.75, 6.5, 9], "texture": "#2"},
"up": {"uv": [9, 2.5, 6.75, 2.25], "texture": "#2"},
"down": {"uv": [9, 2.5, 6.75, 2.75], "texture": "#2"}
}
},
{
"from": [12, 2, 4],
"to": [13, 11, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 13]},
"faces": {
"north": {"uv": [2, 7, 2.25, 9.25], "texture": "#2"},
"east": {"uv": [4.5, 4.5, 6.5, 6.75], "texture": "#2"},
"south": {"uv": [2.25, 7, 2.5, 9.25], "texture": "#2"},
"west": {"uv": [4.75, 0, 6.75, 2.25], "texture": "#2"},
"up": {"uv": [2.75, 9, 2.5, 7], "texture": "#2"},
"down": {"uv": [3, 7, 2.75, 9], "texture": "#2"}
}
},
{
"from": [4, 0, 4],
"to": [12, 2, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 4]},
"faces": {
"north": {"uv": [6.75, 0, 8.75, 0.5], "texture": "#2"},
"east": {"uv": [6.75, 0.5, 8.75, 1], "texture": "#2"},
"south": {"uv": [6.75, 1, 8.75, 1.5], "texture": "#2"},
"west": {"uv": [6.75, 1.5, 8.75, 2], "texture": "#2"},
"up": {"uv": [8.5, 8.25, 6.5, 6.25], "texture": "#2"},
"down": {"uv": [2, 6.75, 0, 8.75], "texture": "#2"}
}
},
{
"from": [4, 10, 4],
"to": [12, 10, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4]},
"faces": {
"north": {"uv": [0, 0, 2, 0], "texture": "#2"},
"east": {"uv": [0, 0, 2, 0], "texture": "#2"},
"south": {"uv": [0, 0, 2, 0], "texture": "#2"},
"west": {"uv": [0, 0, 2, 0], "texture": "#2"},
"up": {"uv": [6.75, 4.25, 4.75, 2.25], "texture": "#2"},
"down": {"uv": [8.5, 4.25, 6.5, 6.25], "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"thirdperson_lefthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"firstperson_righthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"firstperson_lefthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"gui": {
"rotation": [30, 225, 0],
"scale": [0.75, 0.75, 0.75]
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 841 B

@@ -0,0 +1,113 @@
{
"credit": "Made with Blockbench",
"texture_size": [64, 64],
"textures": {
"2": "sliceanddice:item/fertilizer_bucket"
},
"elements": [
{
"from": [3, 2, 3],
"to": [13, 11, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]},
"faces": {
"north": {"uv": [0, 0, 2.5, 2.25], "texture": "#2"},
"east": {"uv": [4.5, 6.75, 4.75, 9], "texture": "#2"},
"south": {"uv": [0, 2.25, 2.5, 4.5], "texture": "#2"},
"west": {"uv": [4.75, 6.75, 5, 9], "texture": "#2"},
"up": {"uv": [4.5, 7, 2, 6.75], "texture": "#2"},
"down": {"uv": [9.25, 2, 6.75, 2.25], "texture": "#2"}
}
},
{
"from": [3, 2, 4],
"to": [4, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 13]},
"faces": {
"north": {"uv": [5, 6.75, 5.25, 9], "texture": "#2"},
"east": {"uv": [2.5, 0, 4.75, 2.25], "texture": "#2"},
"south": {"uv": [5.25, 6.75, 5.5, 9], "texture": "#2"},
"west": {"uv": [2.5, 2.25, 4.75, 4.5], "texture": "#2"},
"up": {"uv": [5.75, 9, 5.5, 6.75], "texture": "#2"},
"down": {"uv": [6, 6.75, 5.75, 9], "texture": "#2"}
}
},
{
"from": [4, 2, 12],
"to": [13, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [13, 1, 13]},
"faces": {
"north": {"uv": [0, 4.5, 2.25, 6.75], "texture": "#2"},
"east": {"uv": [6, 6.75, 6.25, 9], "texture": "#2"},
"south": {"uv": [2.25, 4.5, 4.5, 6.75], "texture": "#2"},
"west": {"uv": [6.25, 6.75, 6.5, 9], "texture": "#2"},
"up": {"uv": [9, 2.5, 6.75, 2.25], "texture": "#2"},
"down": {"uv": [9, 2.5, 6.75, 2.75], "texture": "#2"}
}
},
{
"from": [12, 2, 4],
"to": [13, 11, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 13]},
"faces": {
"north": {"uv": [2, 7, 2.25, 9.25], "texture": "#2"},
"east": {"uv": [4.5, 4.5, 6.5, 6.75], "texture": "#2"},
"south": {"uv": [2.25, 7, 2.5, 9.25], "texture": "#2"},
"west": {"uv": [4.75, 0, 6.75, 2.25], "texture": "#2"},
"up": {"uv": [2.75, 9, 2.5, 7], "texture": "#2"},
"down": {"uv": [3, 7, 2.75, 9], "texture": "#2"}
}
},
{
"from": [4, 0, 4],
"to": [12, 2, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 4]},
"faces": {
"north": {"uv": [6.75, 0, 8.75, 0.5], "texture": "#2"},
"east": {"uv": [6.75, 0.5, 8.75, 1], "texture": "#2"},
"south": {"uv": [6.75, 1, 8.75, 1.5], "texture": "#2"},
"west": {"uv": [6.75, 1.5, 8.75, 2], "texture": "#2"},
"up": {"uv": [8.5, 8.25, 6.5, 6.25], "texture": "#2"},
"down": {"uv": [2, 6.75, 0, 8.75], "texture": "#2"}
}
},
{
"from": [4, 10, 4],
"to": [12, 10, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4]},
"faces": {
"north": {"uv": [0, 0, 2, 0], "texture": "#2"},
"east": {"uv": [0, 0, 2, 0], "texture": "#2"},
"south": {"uv": [0, 0, 2, 0], "texture": "#2"},
"west": {"uv": [0, 0, 2, 0], "texture": "#2"},
"up": {"uv": [6.75, 4.25, 4.75, 2.25], "texture": "#2"},
"down": {"uv": [8.5, 4.25, 6.5, 6.25], "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"thirdperson_lefthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"firstperson_righthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"firstperson_lefthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"gui": {
"rotation": [30, 225, 0],
"scale": [0.75, 0.75, 0.75]
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 725 B

@@ -0,0 +1,113 @@
{
"credit": "Made with Blockbench",
"texture_size": [64, 64],
"textures": {
"2": "spelunkery:item/portal_fluid_bucket"
},
"elements": [
{
"from": [3, 2, 3],
"to": [13, 11, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]},
"faces": {
"north": {"uv": [0, 0, 2.5, 2.25], "texture": "#2"},
"east": {"uv": [4.5, 6.75, 4.75, 9], "texture": "#2"},
"south": {"uv": [0, 2.25, 2.5, 4.5], "texture": "#2"},
"west": {"uv": [4.75, 6.75, 5, 9], "texture": "#2"},
"up": {"uv": [4.5, 7, 2, 6.75], "texture": "#2"},
"down": {"uv": [9.25, 2, 6.75, 2.25], "texture": "#2"}
}
},
{
"from": [3, 2, 4],
"to": [4, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 13]},
"faces": {
"north": {"uv": [5, 6.75, 5.25, 9], "texture": "#2"},
"east": {"uv": [2.5, 0, 4.75, 2.25], "texture": "#2"},
"south": {"uv": [5.25, 6.75, 5.5, 9], "texture": "#2"},
"west": {"uv": [2.5, 2.25, 4.75, 4.5], "texture": "#2"},
"up": {"uv": [5.75, 9, 5.5, 6.75], "texture": "#2"},
"down": {"uv": [6, 6.75, 5.75, 9], "texture": "#2"}
}
},
{
"from": [4, 2, 12],
"to": [13, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [13, 1, 13]},
"faces": {
"north": {"uv": [0, 4.5, 2.25, 6.75], "texture": "#2"},
"east": {"uv": [6, 6.75, 6.25, 9], "texture": "#2"},
"south": {"uv": [2.25, 4.5, 4.5, 6.75], "texture": "#2"},
"west": {"uv": [6.25, 6.75, 6.5, 9], "texture": "#2"},
"up": {"uv": [9, 2.5, 6.75, 2.25], "texture": "#2"},
"down": {"uv": [9, 2.5, 6.75, 2.75], "texture": "#2"}
}
},
{
"from": [12, 2, 4],
"to": [13, 11, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 13]},
"faces": {
"north": {"uv": [2, 7, 2.25, 9.25], "texture": "#2"},
"east": {"uv": [4.5, 4.5, 6.5, 6.75], "texture": "#2"},
"south": {"uv": [2.25, 7, 2.5, 9.25], "texture": "#2"},
"west": {"uv": [4.75, 0, 6.75, 2.25], "texture": "#2"},
"up": {"uv": [2.75, 9, 2.5, 7], "texture": "#2"},
"down": {"uv": [3, 7, 2.75, 9], "texture": "#2"}
}
},
{
"from": [4, 0, 4],
"to": [12, 2, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 4]},
"faces": {
"north": {"uv": [6.75, 0, 8.75, 0.5], "texture": "#2"},
"east": {"uv": [6.75, 0.5, 8.75, 1], "texture": "#2"},
"south": {"uv": [6.75, 1, 8.75, 1.5], "texture": "#2"},
"west": {"uv": [6.75, 1.5, 8.75, 2], "texture": "#2"},
"up": {"uv": [8.5, 8.25, 6.5, 6.25], "texture": "#2"},
"down": {"uv": [2, 6.75, 0, 8.75], "texture": "#2"}
}
},
{
"from": [4, 10, 4],
"to": [12, 10, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4]},
"faces": {
"north": {"uv": [0, 0, 2, 0], "texture": "#2"},
"east": {"uv": [0, 0, 2, 0], "texture": "#2"},
"south": {"uv": [0, 0, 2, 0], "texture": "#2"},
"west": {"uv": [0, 0, 2, 0], "texture": "#2"},
"up": {"uv": [6.75, 4.25, 4.75, 2.25], "texture": "#2"},
"down": {"uv": [8.5, 4.25, 6.5, 6.25], "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"thirdperson_lefthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"firstperson_righthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"firstperson_lefthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"gui": {
"rotation": [30, 225, 0],
"scale": [0.75, 0.75, 0.75]
}
}
}
@@ -0,0 +1,113 @@
{
"credit": "Made with Blockbench",
"texture_size": [64, 64],
"textures": {
"2": "spelunkery:item/spring_water_bucket"
},
"elements": [
{
"from": [3, 2, 3],
"to": [13, 11, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]},
"faces": {
"north": {"uv": [0, 0, 2.5, 2.25], "texture": "#2"},
"east": {"uv": [4.5, 6.75, 4.75, 9], "texture": "#2"},
"south": {"uv": [0, 2.25, 2.5, 4.5], "texture": "#2"},
"west": {"uv": [4.75, 6.75, 5, 9], "texture": "#2"},
"up": {"uv": [4.5, 7, 2, 6.75], "texture": "#2"},
"down": {"uv": [9.25, 2, 6.75, 2.25], "texture": "#2"}
}
},
{
"from": [3, 2, 4],
"to": [4, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 13]},
"faces": {
"north": {"uv": [5, 6.75, 5.25, 9], "texture": "#2"},
"east": {"uv": [2.5, 0, 4.75, 2.25], "texture": "#2"},
"south": {"uv": [5.25, 6.75, 5.5, 9], "texture": "#2"},
"west": {"uv": [2.5, 2.25, 4.75, 4.5], "texture": "#2"},
"up": {"uv": [5.75, 9, 5.5, 6.75], "texture": "#2"},
"down": {"uv": [6, 6.75, 5.75, 9], "texture": "#2"}
}
},
{
"from": [4, 2, 12],
"to": [13, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [13, 1, 13]},
"faces": {
"north": {"uv": [0, 4.5, 2.25, 6.75], "texture": "#2"},
"east": {"uv": [6, 6.75, 6.25, 9], "texture": "#2"},
"south": {"uv": [2.25, 4.5, 4.5, 6.75], "texture": "#2"},
"west": {"uv": [6.25, 6.75, 6.5, 9], "texture": "#2"},
"up": {"uv": [9, 2.5, 6.75, 2.25], "texture": "#2"},
"down": {"uv": [9, 2.5, 6.75, 2.75], "texture": "#2"}
}
},
{
"from": [12, 2, 4],
"to": [13, 11, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 13]},
"faces": {
"north": {"uv": [2, 7, 2.25, 9.25], "texture": "#2"},
"east": {"uv": [4.5, 4.5, 6.5, 6.75], "texture": "#2"},
"south": {"uv": [2.25, 7, 2.5, 9.25], "texture": "#2"},
"west": {"uv": [4.75, 0, 6.75, 2.25], "texture": "#2"},
"up": {"uv": [2.75, 9, 2.5, 7], "texture": "#2"},
"down": {"uv": [3, 7, 2.75, 9], "texture": "#2"}
}
},
{
"from": [4, 0, 4],
"to": [12, 2, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 4]},
"faces": {
"north": {"uv": [6.75, 0, 8.75, 0.5], "texture": "#2"},
"east": {"uv": [6.75, 0.5, 8.75, 1], "texture": "#2"},
"south": {"uv": [6.75, 1, 8.75, 1.5], "texture": "#2"},
"west": {"uv": [6.75, 1.5, 8.75, 2], "texture": "#2"},
"up": {"uv": [8.5, 8.25, 6.5, 6.25], "texture": "#2"},
"down": {"uv": [2, 6.75, 0, 8.75], "texture": "#2"}
}
},
{
"from": [4, 10, 4],
"to": [12, 10, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4]},
"faces": {
"north": {"uv": [0, 0, 2, 0], "texture": "#2"},
"east": {"uv": [0, 0, 2, 0], "texture": "#2"},
"south": {"uv": [0, 0, 2, 0], "texture": "#2"},
"west": {"uv": [0, 0, 2, 0], "texture": "#2"},
"up": {"uv": [6.75, 4.25, 4.75, 2.25], "texture": "#2"},
"down": {"uv": [8.5, 4.25, 6.5, 6.25], "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"thirdperson_lefthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"firstperson_righthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"firstperson_lefthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"gui": {
"rotation": [30, 225, 0],
"scale": [0.75, 0.75, 0.75]
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 719 B

@@ -0,0 +1,113 @@
{
"credit": "Made with Blockbench",
"texture_size": [64, 64],
"textures": {
"2": "supplementaries:item/lumisene_bucket"
},
"elements": [
{
"from": [3, 2, 3],
"to": [13, 11, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]},
"faces": {
"north": {"uv": [0, 0, 2.5, 2.25], "texture": "#2"},
"east": {"uv": [4.5, 6.75, 4.75, 9], "texture": "#2"},
"south": {"uv": [0, 2.25, 2.5, 4.5], "texture": "#2"},
"west": {"uv": [4.75, 6.75, 5, 9], "texture": "#2"},
"up": {"uv": [4.5, 7, 2, 6.75], "texture": "#2"},
"down": {"uv": [9.25, 2, 6.75, 2.25], "texture": "#2"}
}
},
{
"from": [3, 2, 4],
"to": [4, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 13]},
"faces": {
"north": {"uv": [5, 6.75, 5.25, 9], "texture": "#2"},
"east": {"uv": [2.5, 0, 4.75, 2.25], "texture": "#2"},
"south": {"uv": [5.25, 6.75, 5.5, 9], "texture": "#2"},
"west": {"uv": [2.5, 2.25, 4.75, 4.5], "texture": "#2"},
"up": {"uv": [5.75, 9, 5.5, 6.75], "texture": "#2"},
"down": {"uv": [6, 6.75, 5.75, 9], "texture": "#2"}
}
},
{
"from": [4, 2, 12],
"to": [13, 11, 13],
"rotation": {"angle": 0, "axis": "y", "origin": [13, 1, 13]},
"faces": {
"north": {"uv": [0, 4.5, 2.25, 6.75], "texture": "#2"},
"east": {"uv": [6, 6.75, 6.25, 9], "texture": "#2"},
"south": {"uv": [2.25, 4.5, 4.5, 6.75], "texture": "#2"},
"west": {"uv": [6.25, 6.75, 6.5, 9], "texture": "#2"},
"up": {"uv": [9, 2.5, 6.75, 2.25], "texture": "#2"},
"down": {"uv": [9, 2.5, 6.75, 2.75], "texture": "#2"}
}
},
{
"from": [12, 2, 4],
"to": [13, 11, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 13]},
"faces": {
"north": {"uv": [2, 7, 2.25, 9.25], "texture": "#2"},
"east": {"uv": [4.5, 4.5, 6.5, 6.75], "texture": "#2"},
"south": {"uv": [2.25, 7, 2.5, 9.25], "texture": "#2"},
"west": {"uv": [4.75, 0, 6.75, 2.25], "texture": "#2"},
"up": {"uv": [2.75, 9, 2.5, 7], "texture": "#2"},
"down": {"uv": [3, 7, 2.75, 9], "texture": "#2"}
}
},
{
"from": [4, 0, 4],
"to": [12, 2, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 4]},
"faces": {
"north": {"uv": [6.75, 0, 8.75, 0.5], "texture": "#2"},
"east": {"uv": [6.75, 0.5, 8.75, 1], "texture": "#2"},
"south": {"uv": [6.75, 1, 8.75, 1.5], "texture": "#2"},
"west": {"uv": [6.75, 1.5, 8.75, 2], "texture": "#2"},
"up": {"uv": [8.5, 8.25, 6.5, 6.25], "texture": "#2"},
"down": {"uv": [2, 6.75, 0, 8.75], "texture": "#2"}
}
},
{
"from": [4, 10, 4],
"to": [12, 10, 12],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4]},
"faces": {
"north": {"uv": [0, 0, 2, 0], "texture": "#2"},
"east": {"uv": [0, 0, 2, 0], "texture": "#2"},
"south": {"uv": [0, 0, 2, 0], "texture": "#2"},
"west": {"uv": [0, 0, 2, 0], "texture": "#2"},
"up": {"uv": [6.75, 4.25, 4.75, 2.25], "texture": "#2"},
"down": {"uv": [8.5, 4.25, 6.5, 6.25], "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"thirdperson_lefthand": {
"rotation": [68, 0, 0],
"translation": [-0.05, 0.5, -1.25],
"scale": [0.47, 0.5, 0.47]
},
"firstperson_righthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"firstperson_lefthand": {
"rotation": [-75, 72, 54],
"translation": [1.25, 2.75, 0.5],
"scale": [0.66, 0.75, 0.66]
},
"gui": {
"rotation": [30, 225, 0],
"scale": [0.75, 0.75, 0.75]
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 824 B

+16
View File
@@ -0,0 +1,16 @@
#KubeJS Client Properties
#Tue Dec 02 11:40:36 CST 2025
backgroundColor=2E3440
barBorderColor=ECEFF4
exportAtlases=false
menuBackgroundBrightness=64
disableRecipeBook=false
title=
barColor=ECEFF4
overrideColors=false
fmlLogColor=ECEFF4
showTagNames=false
fmlMemoryColor=ECEFF4
menuBackgroundScale=32.0
blurScaledPackIcon=true
menuInnerBackgroundBrightness=32
+13
View File
@@ -0,0 +1,13 @@
#KubeJS Common Properties
#Tue Dec 02 11:40:40 CST 2025
matchJsonRecipes=true
allowAsyncStreams=true
announceReload=true
startupErrorGUI=true
serverOnly=false
hideServerScriptErrors=false
saveDevPropertiesInConfig=false
packmode=
ignoreCustomUniqueRecipeIds=false
creativeModeTabIcon=minecraft\:purple_dye
startupErrorReportUrl=
+5
View File
@@ -0,0 +1,5 @@
{
"probejs.modHash": -4984450145584534364,
"probejs.registryHash": -2039914840885289964,
"probejs.enabled": false
}
@@ -0,0 +1,9 @@
{
"replace": false,
"values": [
{
"id": "#atmospheric:is_rainforest",
"required": false
}
]
}
@@ -0,0 +1,9 @@
{
"replace": false,
"values": [
{
"id": "atmospheric:kousa_jungle",
"required": false
}
]
}
@@ -0,0 +1,9 @@
{
"replace": false,
"values": [
{
"id": "#atmospheric:is_rainforest",
"required": false
}
]
}
@@ -0,0 +1,9 @@
{
"replace": false,
"values": [
{
"id": "atmospheric:kousa_jungle",
"required": false
}
]
}
@@ -0,0 +1,89 @@
{
"replace": false,
"values": [
{
"id": "autumnity:yellow_maple_sapling",
"required": false
},
{
"id": "autumnity:orange_maple_sapling",
"required": false
},
{
"id": "autumnity:red_maple_sapling",
"required": false
},
{
"id": "autumnity:foul_berry_pips",
"required": false
},
{
"id": "atmospheric:kousa_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:dry_laurel_sapling",
"required": false
},
{
"id": "atmospheric:aspen_sapling",
"required": false
},
{
"id": "atmospheric:currant_seedling",
"required": false
},
{
"id": "atmospheric:green_aspen_sapling",
"required": false
},
{
"id": "vanillabackport:pale_oak_sapling",
"required": false
},
{
"id": "minecraft:pale_oak_sapling",
"required": false
},
{
"id": "ecologics:walnut_sapling",
"required": false
},
{
"id": "ecologics:coconut_seedling",
"required": false
},
{
"id": "neapolitan:adzuki_soil",
"required": false
},
{
"id": "neapolitan:strawberry_bush",
"required": false
},
{
"id": "neapolitan:mint",
"required": false
},
{
"id": "environmental:pine_sapling",
"required": false
},
{
"id": "environmental:willow_sapling",
"required": false
},
{
"id": "environmental:cattail",
"required": false
},
{
"id": "environmental:blue_wisteria_sapling",
"required": false
}
]
}
@@ -0,0 +1,89 @@
{
"replace": false,
"values": [
{
"id": "autumnity:red_maple_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:aspen_sapling",
"required": false
},
{
"id": "atmospheric:green_aspen_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:dry_laurel_sapling",
"required": false
},
{
"id": "atmospheric:kousa_sapling",
"required": false
},
{
"id": "atmospheric:currant_seedling",
"required": false
},
{
"id": "ecologics:coconut_seedling",
"required": false
},
{
"id": "neapolitan:mint",
"required": false
},
{
"id": "neapolitan:adzuki_soil",
"required": false
},
{
"id": "environmental:pine_sapling",
"required": false
},
{
"id": "environmental:willow_sapling",
"required": false
},
{
"id": "environmental:moody_plum_sapling",
"required": false
},
{
"id": "environmental:plum_sapling",
"required": false
},
{
"id": "environmental:cheerful_plum_sapling",
"required": false
},
{
"id": "environmental:white_wisteria_sapling",
"required": false
},
{
"id": "environmental:blue_wisteria_sapling",
"required": false
},
{
"id": "environmental:purple_wisteria_sapling",
"required": false
},
{
"id": "environmental:pink_wisteria_sapling",
"required": false
},
{
"id": "environmental:cattail",
"required": false
}
]
}
@@ -0,0 +1,93 @@
{
"replace": false,
"values": [
{
"id": "atmospheric:yucca_sapling",
"required": false
},
{
"id": "atmospheric:rosewood_sapling",
"required": false
},
{
"id": "atmospheric:morado_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:dry_laurel_sapling",
"required": false
},
{
"id": "atmospheric:green_aspen_sapling",
"required": false
},
{
"id": "atmospheric:barrel_cactus",
"required": false
},
{
"id": "atmospheric:aloe_vera",
"required": false
},
{
"id": "atmospheric:passion_vine",
"required": false
},
{
"id": "atmospheric:yucca_branch",
"required": false
},
{
"id": "atmospheric:dragon_roots",
"required": false
},
{
"id": "autumnity:yellow_maple_sapling",
"required": false
},
{
"id": "ecologics:walnut_sapling",
"required": false
},
{
"id": "ecologics:coconut_seedling",
"required": false
},
{
"id": "ecologics:prickly_pear",
"required": false
},
{
"id": "neapolitan:banana_frond",
"required": false
},
{
"id": "neapolitan:vanilla_vine",
"required": false
},
{
"id": "neapolitan:strawberry_bush",
"required": false
},
{
"id": "neapolitan:adzuki_soil",
"required": false
},
{
"id": "yungscavebiomes:prickly_peach_cactus",
"required": false
},
{
"id": "yungscavebiomes:prickly_vines",
"required": false
},
{
"id": "environmental:purple_wisteria_sapling",
"required": false
}
]
}
@@ -0,0 +1,49 @@
{
"replace": false,
"values": [
{
"id": "autumnity:red_maple_sapling",
"required": false
},
{
"id": "autumnity:foul_berry_bush",
"required": false
},
{
"id": "atmospheric:kousa_sapling",
"required": false
},
{
"id": "atmospheric:currant_seedling",
"required": false
},
{
"id": "atmospheric:snowy_bamboo_sapling",
"required": false
},
{
"id": "atmospheric:snowy_bamboo",
"required": false
},
{
"id": "vanillabackport:pale_oak_sapling",
"required": false
},
{
"id": "minecraft:pale_oak_sapling",
"required": false
},
{
"id": "neapolitan:mint",
"required": false
},
{
"id": "environmental:pine_sapling",
"required": false
},
{
"id": "environmental:white_wisteria_sapling",
"required": false
}
]
}
@@ -0,0 +1,13 @@
{
"replace": false,
"values": [
{
"id": "autumnity:maple_sapling",
"required": false
},
{
"id": "upgrade_aquatic:river_sapling",
"required": false
}
]
}
@@ -0,0 +1,89 @@
{
"replace": false,
"values": [
{
"id": "autumnity:yellow_maple_sapling",
"required": false
},
{
"id": "autumnity:orange_maple_sapling",
"required": false
},
{
"id": "autumnity:red_maple_sapling",
"required": false
},
{
"id": "autumnity:foul_berry_pips",
"required": false
},
{
"id": "atmospheric:kousa_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:dry_laurel_sapling",
"required": false
},
{
"id": "atmospheric:aspen_sapling",
"required": false
},
{
"id": "atmospheric:currant_seedling",
"required": false
},
{
"id": "atmospheric:green_aspen_sapling",
"required": false
},
{
"id": "vanillabackport:pale_oak_sapling",
"required": false
},
{
"id": "minecraft:pale_oak_sapling",
"required": false
},
{
"id": "ecologics:walnut_sapling",
"required": false
},
{
"id": "ecologics:coconut_seedling",
"required": false
},
{
"id": "neapolitan:adzuki_beans",
"required": false
},
{
"id": "neapolitan:strawberry_pips",
"required": false
},
{
"id": "neapolitan:mint_sprout",
"required": false
},
{
"id": "environmental:pine_sapling",
"required": false
},
{
"id": "environmental:willow_sapling",
"required": false
},
{
"id": "environmental:cattail",
"required": false
},
{
"id": "environmental:blue_wisteria_sapling",
"required": false
}
]
}
@@ -0,0 +1,93 @@
{
"replace": false,
"values": [
{
"id": "autumnity:red_maple_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:aspen_sapling",
"required": false
},
{
"id": "atmospheric:green_aspen_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:dry_laurel_sapling",
"required": false
},
{
"id": "atmospheric:kousa_sapling",
"required": false
},
{
"id": "atmospheric:currant_seedling",
"required": false
},
{
"id": "ecologics:coconut_seedling",
"required": false
},
{
"id": "berry_good:sweet_berry_pips",
"required": false
},
{
"id": "neapolitan:mint_sprout",
"required": false
},
{
"id": "neapolitan:adzuki_beans",
"required": false
},
{
"id": "environmental:pine_sapling",
"required": false
},
{
"id": "environmental:willow_sapling",
"required": false
},
{
"id": "environmental:moody_plum_sapling",
"required": false
},
{
"id": "environmental:plum_sapling",
"required": false
},
{
"id": "environmental:cheerful_plum_sapling",
"required": false
},
{
"id": "environmental:white_wisteria_sapling",
"required": false
},
{
"id": "environmental:blue_wisteria_sapling",
"required": false
},
{
"id": "environmental:purple_wisteria_sapling",
"required": false
},
{
"id": "environmental:pink_wisteria_sapling",
"required": false
},
{
"id": "environmental:cattail",
"required": false
}
]
}
@@ -0,0 +1,97 @@
{
"replace": false,
"values": [
{
"id": "atmospheric:yucca_sapling",
"required": false
},
{
"id": "atmospheric:rosewood_sapling",
"required": false
},
{
"id": "atmospheric:morado_sapling",
"required": false
},
{
"id": "atmospheric:laurel_sapling",
"required": false
},
{
"id": "atmospheric:dry_laurel_sapling",
"required": false
},
{
"id": "atmospheric:green_aspen_sapling",
"required": false
},
{
"id": "atmospheric:barrel_cactus",
"required": false
},
{
"id": "atmospheric:aloe_kernels",
"required": false
},
{
"id": "atmospheric:passion_vine",
"required": false
},
{
"id": "atmospheric:yucca_branch",
"required": false
},
{
"id": "atmospheric:dragon_roots",
"required": false
},
{
"id": "autumnity:yellow_maple_sapling",
"required": false
},
{
"id": "ecologics:walnut_sapling",
"required": false
},
{
"id": "ecologics:coconut_seedling",
"required": false
},
{
"id": "ecologics:prickly_pear",
"required": false
},
{
"id": "neapolitan:banana_frond",
"required": false
},
{
"id": "neapolitan:vanilla_pods",
"required": false
},
{
"id": "neapolitan:strawberry_pips",
"required": false
},
{
"id": "neapolitan:adzuki_beans",
"required": false
},
{
"id": "yungscavebiomes:prickly_peach_cactus",
"required": false
},
{
"id": "yungscavebiomes:prickly_peach",
"required": false
},
{
"id": "yungscavebiomes:prickly_vines",
"required": false
},
{
"id": "environmental:purple_wisteria_sapling",
"required": false
}
]
}
@@ -0,0 +1,45 @@
{
"replace": false,
"values": [
{
"id": "autumnity:red_maple_sapling",
"required": false
},
{
"id": "autumnity:foul_berry_pips",
"required": false
},
{
"id": "atmospheric:kousa_sapling",
"required": false
},
{
"id": "atmospheric:currant_seedling",
"required": false
},
{
"id": "vanillabackport:pale_oak_sapling",
"required": false
},
{
"id": "minecraft:pale_oak_sapling",
"required": false
},
{
"id": "berry_good:sweet_berry_pips",
"required": false
},
{
"id": "neapolitan:mint_sprout",
"required": false
},
{
"id": "environmental:pine_sapling",
"required": false
},
{
"id": "environmental:white_wisteria_sapling",
"required": false
}
]
}
@@ -0,0 +1,17 @@
{
"replace": false,
"values": [
{
"id": "autumnity:maple_sapling",
"required": false
},
{
"id": "upgrade_aquatic:river_sapling",
"required": false
},
{
"id": "berry_good:glow_berry_pips",
"required": false
}
]
}
@@ -0,0 +1,13 @@
{
"replace": false,
"values": [
{
"id": "#clifftree:all_caves",
"required": false
},
{
"id": "#yungscavebiomes:cave_biomes",
"required": false
}
]
}
@@ -0,0 +1,9 @@
{
"replace": false,
"values": [
{
"id": "environmental:marsh",
"required": false
}
]
}
@@ -0,0 +1,69 @@
{
"replace": false,
"values": [
{
"id": "riverredux:sandy_river",
"required": false
},
{
"id": "riverredux:tropical_river",
"required": false
},
{
"id": "#atmospheric:is_dunes",
"required": false
},
{
"id": "#atmospheric:is_rainforest",
"required": false
},
{
"id": "atmospheric:scrubland",
"required": false
},
{
"id": "atmospheric:spiny_thicket",
"required": false
},
{
"id": "#clifftree:is_desert",
"required": false
},
{
"id": "#clifftree:dry_badlands",
"required": false
},
{
"id": "clifftree:granite_shore",
"required": false
},
{
"id": "clifftree:tropical_river",
"required": false
},
{
"id": "clifftree:warm_river",
"required": false
},
{
"id": "clifftree:warm_caves",
"required": false
},
{
"id": "clifftree:inferno",
"required": false
},
{
"id": "clifftree:desert_cliff",
"required": false
},
{
"id": "clifftree:temperate_beach",
"required": false
},
{
"id": "yungscavebiomes:lost_caves",
"required": false
}
]
}
@@ -0,0 +1,123 @@
{
"replace": false,
"values":[
{
"id": "snowrealmagic:snowy_plant",
"required": false
},
{
"id": "snowrealmagic:snowy_double_plant_lower",
"required": false
},
{
"id": "snowrealmagic:snowy_double_plant_upper",
"required": false
},
{
"id": "environmental:bluebell",
"required": false
},
{
"id": "environmental:tasselflower",
"required": false
},
{
"id": "environmental:dianthus",
"required": false
},
{
"id": "environmental:violet",
"required": false
},
{
"id": "environmental:cartwheel",
"required": false
},
{
"id": "environmental:red_lotus_flower",
"required": false
},
{
"id": "environmental:white_lotus_flower",
"required": false
},
{
"id": "environmental:yellow_hibiscus",
"required": false
},
{
"id": "environmental:orange_hibiscus",
"required": false
},
{
"id": "environmental:red_hibiscus",
"required": false
},
{
"id": "environmental:pink_hibiscus",
"required": false
},
{
"id": "environmental:magenta_hibiscus",
"required": false
},
{
"id": "environmental:purple_hibiscus",
"required": false
},
{
"id": "environmental:pink_delphinium",
"required": false
},
{
"id": "environmental:purple_delphinium",
"required": false
},
{
"id": "environmental:blue_delphinium",
"required": false
},
{
"id": "environmental:white_delphinium",
"required": false
},
{
"id": "environmental:bird_of_paradise",
"required": false
},
{
"id": "environmental:cup_lichen",
"required": false
},
{
"id": "buzzier_bees:white_clover",
"required": false
},
{
"id": "buzzier_bees:pink_clover",
"required": false
},
{
"id": "buzzier_bees:buttercup",
"required": false
},
{
"id": "minecraft:wildflowers",
"required": false
},
{
"id": "minecraft:pink_petals",
"required": false
},
{
"id": "autumnity:autumn_crocus",
"required": false
},
{
"id": "atmospheric:gilia",
"required": false
}
]
}
@@ -0,0 +1,9 @@
{
"replace": false,
"values": [
{
"id": "ecologics:thin_ice",
"required": false
}
]
}
+22 -12
View File
@@ -1,16 +1,26 @@
ServerEvents.recipes(event => {
// repetitive stuff
event.remove({output:'supplementaries:rope'});
event.shaped(
'8x farmersdelight:rope',
[
' A ',
' A ',
' A '
],
{
A: 'supplementaries:flax'
}
);
event.remove({output:'spelunkery:depth_gauge'});
event.replaceOutput({output:'neapolitan:milk_bottle'},
'neapolitan:milk_bottle',
'farmersdelight:milk_bottle');
// flax makes straws at 2 -> 3 rate
event.shaped('3x farmersdelight:straw', [' S ', ' S '], {S: 'supplementaries:flax'});
event.shaped('6x farmersdelight:canvas', ['SS', 'SS'], {S: 'supplementaries:flax'});
// stuff made of flax is now made of canvas
const outputs = [
'supplementaries:sack',
'supplementaries:awning',
];
for(const output of outputs)
event.replaceInput({ output: output },
'supplementaries:flax',
'farmersdelight:canvas');
// doormat and BnC coaster compat
event.remove({output: 'supplementaries:doormat'});
event.shaped('3x supplementaries:doormat', ['SSS', 'SSS'], {S: 'farmersdelight:canvas'});
});
+118 -38
View File
@@ -1,4 +1,5 @@
const { $RandomSource } = require("packages/net/minecraft/util/$RandomSource");
const { $Villager } = require("packages/net/minecraft/world/entity/npc/$Villager");
// level 5 just eat feast for 5 emeralds
const feast_list = [
@@ -8,6 +9,11 @@ const feast_list = [
'farmersdelight:stuffed_pumpkin_block',
'farmersdelight:roast_chicken_block',
'farmersdelight:pasta_with_meatballs',
'abnormals_delight:perch_with_mushrooms',
'abnormals_delight:pike_with_beetroot',
'abnormals_delight:vension_with_bamboo_shoots',
'abnormals_delight:passion_fruit_glazed_duck',
];
// level 4 helps you with block collection
@@ -66,10 +72,9 @@ const consumables = {
// bonemeal, seed, hoe, organic_compost
farmer: ['6x bone_meal', '2x farmersdelight:organic_compost', '24x farmersdelight:straw', '18x supplementaries:flax'],
// fish bones, leech, worm, fishing rod, treasure boxes
fisherman: ['2x aquaculture:fish_bones', '3x aquaculture:leech', '5x aquaculture:worm', '8x aquaculture:box',
'5x aquaculture:lockbox', '2x aquaculture:treasure_chest'],
fisherman: ['fishing_rod'],
// various potion arrows, bows, crossbows
fletcher: ['bow', 'bow', 'bow', 'crossbow', 'crowssbow'],
fletcher: ['8x arrow', '4x caverns_and_chasms:large_arrow', '16x caverns_and_chasms:blunt_arrow', '8x savage_and_ravages:mischief_arrow'],
// leather armor, bedrolls
leatherworker: ['leather_helmet', 'leather_chestplate', 'leather_leggings', 'leather_boots'],
// various dyes
@@ -82,41 +87,36 @@ const consumables = {
// wool, eggs, milk, honey, slime ball
shepherd: ['3x white_wool', '8x environmental:duck_egg', '8x autumnity:turkey_egg', '4x environmental:yak_hair'],
// shovel, pick
toolsmith: ['iron_shovel', 'iron_pickaxe', 'golden_shovel', 'golden_pickaxe'],
toolsmith: ['iron_shovel', 'iron_pickaxe', 'iron_hoe', 'golden_shovel', 'golden_pickaxe', 'golden_hoe'],
// sword, axe
weaponsmith: ['iron_sword', 'iron_axe', 'golden_sword', 'golden_axe'],
weaponsmith: ['iron_sword', 'iron_axe', 'golden_sword', 'golden_axe', 'bow', 'crossbow'],
// rice, spaghetti, dough, crust
delightchef: ['8x farmersdelight:rice', '10x farmersdelight:raw_pasta', '10x farmersdelight:crust', '16x sugar'],
// cut raw meat
delightcook: ['16x bowl', '16x glass_bottle', '1x bucket', '8x farmersdelight:minced_beef', '8x farmersdelight:bacon'],
// planks
carpenter: ['32x oak_planks', '32x spruce_planks', '32x birch_planks', '32x jungle_planks', '32x pine_planks', '32x bamboo_planks',
'32x cherry_planks'],
carpenter: [],
};
const enchant_consumables = {
armorer: 1,
fletcher: 1,
leatherworker: 2,
toolsmith: 3,
weaponsmith: 2
weaponsmith: 2,
fisherman: 2,
};
// level 1 villagers buy food for 1 emerald
const food_list = [
'8x minecraft:apple',
'8x minecraft:beetroot',
'8x minecraft:baked_potato',
'8x minecraft:bread',
'8x minecraft:carrot',
'8x minecraft:melon_slice',
'8x minecraft:sweet_berries',
'8x farmersdelight:pumpkin_slice',
'8x farmersdelight:cabbage_leaf',
'8x farmersdelight:tomato',
'8x farmersdelight:cooked_rice',
'8x farmersdelight:fried_egg',
'8x farmersdelight:onion',
'8x neapolitan:strawberries',
'8x neapolitan:banana',
@@ -129,8 +129,29 @@ const food_list = [
'8x atmospheric:dragon_fruit',
'8x atmospheric:candied_orange_slices',
'8x atmospheric:roasted_yucca_fruit',
'brewinandchewin:beer',
'brewinandchewin:vodka',
'brewinandchewin:mead',
'brewinandchewin:rice_wine',
'brewinandchewin:pale_jane',
'brewinandchewin:egg_grog',
'brewinandchewin:bloody_mary',
'brewinandchewin:salty_folly',
'brewinandchewin:saccharine_rum',
];
const main_diet = {
'desert': '8x farmersdelight:milk_bottle',
'plains': '8x bread',
'savanna': '8x carrot',
'snowy': '8x pumpkin_slice',
'taiga': '8x baked_potato',
'jungle': '8x farmersdelight:cooked_rice',
'swamp': '8x mushroom_stew',
'atmospheric:scrubland': '8x atmospheric:dragon_fruit',
default: '8x bread'
}
/**
* @param {string[]} list
@@ -151,10 +172,10 @@ function roll(list, random){
*/
function genEnchanted(ids, enchant_pool, enchant_rolls, random, damage ){
const id = roll(ids, random);
const item = Item.of(id);
let item = Item.of(id);
if(damage) {
const dmg = Math.floor(item.maxDamage * (0.2 + 0.1 * random.nextFloat()));
const dmg = Math.floor(item.maxDamage * (0.6 + 0.3 * random.nextFloat()));
item.setDamageValue(dmg);
}
@@ -167,7 +188,7 @@ function genEnchanted(ids, enchant_pool, enchant_rolls, random, damage ){
}
for(const [enchant, level] of Object.entries(enchantments)){
item.enchant(enchant, level);
item = item.enchant(enchant, level);
}
return item;
@@ -176,10 +197,10 @@ function genEnchanted(ids, enchant_pool, enchant_rolls, random, damage ){
const gems = [
'diamond',
'2x gold_ingot',
'3x caverns_and_chasms:spinel',
'4x spelunkery:cinnabar',
'5x lapis_lazuli',
'6x amethyst_shard',
'3x spelunkery:cinnabar',
'4x lapis_lazuli',
'5x amethyst_shard',
'6x caverns_and_chasms:spinel',
];
/**
@@ -221,6 +242,28 @@ const village_structures = {
'mmv:village_swamp': 1,
"atmospheric:village_scrubland" : 1
};
const village_logs = {
'desert': 'minecraft:cactus',
'plains': 'minecraft:oak_log',
'savanna': 'minecraft:acacia_log',
'snowy': 'minecraft:spruce_log',
'taiga': 'minecraft:birch_log',
'jungle': 'minecraft:jungle_log',
'swamp': 'minecraft:dark_oak_log',
'atmospheric:scrubland': 'atmospheric:yucca_log'
};
// various saplings
const carpenter_trades = [
'minecraft:oak_sapling',
'minecraft:spruce_sapling',
'minecraft:birch_sapling',
'minecraft:acacia_sapling',
'minecraft:jungle_sapling',
'minecraft:dark_oak_sapling',
'minecraft:mangrove_sapling',
'minecraft:cherry_sapling',
'minecraft:azalea_sapling',
];
/**
* @param {Record<string, number>} map
*/
@@ -236,6 +279,7 @@ MoreJSEvents.villagerTrades((event) => {
event.removeVanillaTrades();
event.removeModdedTrades();
// cartographers: explorer maps
const villages = make_weighted_list(village_structures)
const villageTrade = VillagerUtils.createStructureMapTrade(['2x emerald', 'map'], villages);
villageTrade.maxUses(1);
@@ -251,6 +295,29 @@ MoreJSEvents.villagerTrades((event) => {
progressionTrade.maxUses(1);
event.addTrade('cartographer', 2, progressionTrade);
// carpenters: logs, saplings, planks, tree barks
event.addCustomTrade('sawmill:carpenter', 2, (offer, entity, random) => {
/** @type {$Villager} */
const villager = entity;
const villagerData = villager.getVillagerData();
const biome = villagerData.getType().toString();
const log = village_logs[biome] || 'minecraft:oak_log';
if(!village_logs[biome]) console.warn("No log for " + biome);
offer.setFirstInput('2x emerald');
offer.setOutput('16x ' + log);
offer.setMaxUses(1);
offer.setVillagerExperience(1);
offer.setPriceMultiplier(0.05);
});
event.addCustomTrade('sawmill:carpenter', 2, (offer, entity, random) => {
offer.setFirstInput('2x emerald');
offer.setOutput(roll(carpenter_trades, random));
offer.setMaxUses(1);
offer.setVillagerExperience(1);
offer.setPriceMultiplier(0.05);
});
const professions = VillagerUtils.getProfessions();
professions.forEach(prof => {
const profName = prof.name();
@@ -268,6 +335,36 @@ MoreJSEvents.villagerTrades((event) => {
offer.setVillagerExperience(1);
offer.setPriceMultiplier(0.2);
});
// 1 level 1 trade
event.addCustomTrade(prof, 1, (offer, entity, random) => {
offer.setFirstInput(roll(food_list, random));
offer.setOutput('1x emerald');
offer.setMaxUses(1);
offer.setVillagerExperience(5);
offer.setPriceMultiplier(0.05);
});
// 1 diet trade
event.addCustomTrade(prof, 1, (offer, entity, random) => {
const villagerData = entity.getVillagerData();
const biome = villagerData.getType().toString();
const diet = main_diet[biome] || main_diet.default;
if(!main_diet[biome]) console.log("No diet for " + biome);
offer.setFirstInput(diet);
offer.setOutput('1x emerald');
offer.setMaxUses(1);
offer.setVillagerExperience(5);
offer.setPriceMultiplier(0.05);
});
// a trade for each gem
let trade = null;
for(const gem of gems){
trade = VillagerUtils.createEnchantedItemTrade(
['8x emerald', gem],
'enchanted_book',
);
trade.enchantments(enchantments);
event.addTrade(prof, 3, trade);
}
// 2 for the rest
for(let i = 0; i < 2; i ++) {
// level 4
@@ -278,15 +375,6 @@ MoreJSEvents.villagerTrades((event) => {
offer.setVillagerExperience(1);
offer.setPriceMultiplier(0.05);
});
// level 3
event.addCustomTrade(prof, 3, (offer, entity, random) => {
offer.setFirstInput('8x emerald');
offer.setSecondInput(roll(gems, random));
offer.setOutput(genEnchanted(['enchanted_book'], enchantments, rolls+1, random, false));
offer.setMaxUses(1);
offer.setVillagerExperience(1);
offer.setPriceMultiplier(0.2);
});
// level 2
if(staples.length > 0)
event.addCustomTrade(prof, 2, (offer, entity, random) => {
@@ -297,14 +385,6 @@ MoreJSEvents.villagerTrades((event) => {
offer.setVillagerExperience(1);
offer.setPriceMultiplier(0.05);
});
// level 1
event.addCustomTrade(prof, 1, (offer, entity, random) => {
offer.setFirstInput(roll(food_list, random));
offer.setOutput('1x emerald');
offer.setMaxUses(1);
offer.setVillagerExperience(5);
offer.setPriceMultiplier(0.05);
});
}
});
});
+10 -9
View File
@@ -31,13 +31,14 @@ ServerEvents.recipes(event => {
);
// map atlas shapeless
event.remove({output: 'map_atlases:atlas'});
event.shapeless(
'map_atlases:atlas',
[
'minecraft:map',
'minecraft:book',
'minecraft:compass'
]
);
// it doesn't work (sad face)
// event.remove({output: 'map_atlases:atlas'});
// event.shapeless(
// 'map_atlases:atlas',
// [
// 'minecraft:map',
// 'minecraft:book',
// 'minecraft:compass'
// ]
// );
});
+4438 -555
View File
File diff suppressed because it is too large Load Diff