Compare commits

...
12 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
7 changed files with 3630 additions and 626 deletions
@@ -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"
@@ -35,7 +35,7 @@
#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 = ["supplementaries:flax_seeds"]
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"]
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
+11 -9
View File
@@ -1,14 +1,18 @@
ServerEvents.recipes(event => {
// only one rope
// repetitive stuff
event.remove({output:'supplementaries:rope'});
event.remove({output:'spelunkery:depth_gauge'});
event.replaceOutput({output:'neapolitan:milk_bottle'},
'neapolitan:milk_bottle',
'farmersdelight:milk_bottle');
// flax now makes canvas
event.shaped('4x farmersdelight:canvas', ['SS', 'SS'], {S: 'supplementaries:flax'});
// 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:doormat',
'supplementaries:awning',
];
for(const output of outputs)
@@ -16,9 +20,7 @@
'supplementaries:flax',
'farmersdelight:canvas');
event.remove({output:'spelunkery:depth_gauge'});
event.replaceOutput({output:'neapolitan:milk_bottle'},
'neapolitan:milk_bottle',
'farmersdelight:milk_bottle');
// doormat and BnC coaster compat
event.remove({output: 'supplementaries:doormat'});
event.shaped('3x supplementaries:doormat', ['SSS', 'SSS'], {S: 'farmersdelight:canvas'});
});
+4 -4
View File
@@ -197,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',
];
/**
+3401 -610
View File
File diff suppressed because it is too large Load Diff