diff --git a/config/ModernUI/bootstrap.properties b/config/ModernUI/bootstrap.properties new file mode 100644 index 000000000..5fa640e0d --- /dev/null +++ b/config/ModernUI/bootstrap.properties @@ -0,0 +1,3 @@ +#Modern UI bootstrap file +#Fri Dec 19 22:14:20 EST 2025 +modernui_mc_disableSmoothScrolling=true diff --git a/config/ModernUI/client.toml b/config/ModernUI/client.toml new file mode 100644 index 000000000..f35fcfd8d --- /dev/null +++ b/config/ModernUI/client.toml @@ -0,0 +1,188 @@ + +#Screen Config +[screen] + #The duration of GUI background color and blur radius animation in milliseconds. (0 = OFF) + #Range: 0 ~ 800 + animationDuration = 200 + #The GUI background color in #RRGGBB or #AARRGGBB format. Default value: #99000000 + #Can be one to four values representing top left, top right, bottom right and bottom left color. + #Multiple values produce a gradient effect, whereas one value produce a solid color. + #When values is less than 4, the rest of the corner color will be replaced by the last value. + backgroundColor = ["#99000000"] + #Add Gaussian blur effect to GUI background when opened. + #Disable this if you run into a problem or are on low-end PCs + blurEffect = true + #This option means that blur effect only applies to GUI screens with a background. + #Similar to Minecraft 1.20.6. Enable this for better optimization & compatibility. + blurWithBackground = true + #The kernel radius for gaussian convolution blur effect, 0 = disable. + #samples per pixel = ((radius * 2) + 1) * 2, sigma = radius / 2. + #Range: 0 ~ 18 + blurRadius = 7 + #A list of GUI screen superclasses that won't activate blur effect when opened. + blurBlacklist = ["net.minecraft.client.gui.screens.ChatScreen"] + #(Beta) Pause the game when inventory (also includes creative mode) opened. + inventoryPause = false + #Framerate limit on window inactive (out of focus or minimized), 0 = no change. + #Range: 0 ~ 255 + framerateInactive = 10 + #Framerate limit on window minimized, 0 = same as framerate inactive. + #This value will be no greater than framerate inactive. + #Range: 0 ~ 255 + framerateMinimized = 0 + #Master volume multiplier on window inactive (out of focus or minimized), 1 = no change. + #Range: 0.0 ~ 1.0 + masterVolumeInactive = 0.5 + #Master volume multiplier on window minimized, 1 = same as master volume inactive. + #This value will be no greater than master volume inactive. + #Range: 0.0 ~ 1.0 + masterVolumeMinimized = 0.25 + +#Tooltip Config +[tooltip] + #Whether to enable Modern UI enhanced tooltip, or back to vanilla default. + enable = true + #Whether to use rounded tooltip shapes, or to use vanilla style. + roundedShape = false + #True to center the tooltip title if rendering an item's tooltip. + #Following lines are not affected by this option. + centerTitle = true + #True to add a title break below the tooltip title line. + #TitleBreak and CenterTitle will work/appear at the same time. + titleBreak = true + #True to exactly position tooltip to pixel grid, smoother movement. + exactPositioning = true + #The tooltip background color in #RRGGBB or #AARRGGBB format. Default: #E6000000 + #Can be one to four values representing top left, top right, bottom right and bottom left color. + #Multiple values produce a gradient effect, whereas one value produces a solid color. + #If less than 4 are provided, repeat the last value. + colorFill = ["#E6000000"] + #The tooltip border color in #RRGGBB or #AARRGGBB format. Default: #F0AADCF0, #F0DAD0F4, #F0FFC3F7 and #F0DAD0F4 + #Can be one to four values representing top left, top right, bottom right and bottom left color. + #Multiple values produce a gradient effect, whereas one value produces a solid color. + #If less than 4 are provided, repeat the last value. + colorStroke = ["#FFC2D0D6", "#FFE7DAE5", "#FFCCDAC8", "#FFC8B9AC"] + #The cycle time of tooltip border color in milliseconds. (0 = OFF) + #Range: 0 ~ 5000 + borderCycleTime = 1000 + #The width of tooltip border, if rounded, in GUI Scale Independent Pixels. + #Range: 0.5 ~ 2.5 + borderWidth = 1.3333333333333333 + #The corner radius of tooltip border, if rounded, in GUI Scale Independent Pixels. + #Range: 0.0 ~ 8.0 + cornerRadius = 4.0 + #The shadow radius of tooltip, if rounded, in GUI Scale Independent Pixels. + #No impact on performance. + #Range: 0.0 ~ 32.0 + shadowRadius = 10.0 + #The shadow opacity of tooltip, if rounded. No impact on performance. + #Range: 0.0 ~ 1.0 + shadowOpacity = 0.25 + #When true, tooltip border colors adapt to item's name and rarity. + adaptiveColors = true + #Amount to scroll the tooltip in response to a arrow key pressed event. + #Range: 0 ~ 320 + arrowScrollFactor = 60 + +#General Config +[general] + #Play a sound effect when the game is loaded. + ding = true + #Specify a sound event to custom the ding sound effect. + #The default is "minecraft:entity.experience_orb.pickup" + dingSound = "" + #Specify a volume multiplier to the ding sound effect. + #Range: 0.0 ~ 10.0 + dingVolume = 0.25 + #Press 'C' key (by default) to zoom 4x, the same as OptiFine's. + #This is auto disabled when OptiFine is installed. + zoom = false + #Control the window mode, normal mode does nothing. + #Allowed Values: NORMAL, FULLSCREEN, FULLSCREEN_BORDERLESS, MAXIMIZED, MAXIMIZED_BORDERLESS, WINDOWED, WINDOWED_BORDERLESS + windowMode = "NORMAL" + #Whether to replace vanilla GUI scale button to slider with tips. + useNewGuiScale = true + #Remove telemetry event of client behaviors. + removeTelemetry = false + #Allow Slack or Discord shortcodes to replace Unicode Emoji Sequences in chat. + emojiShortcodes = true + +#View Config +[view] + #Force layout direction to RTL, otherwise, the current Locale setting. + forceRtl = false + #The global font scale used with sp units. + #Range: 0.5 ~ 2.0 + fontScale = 1.1 + #Default scrollbar size in dips. + #Range: 0 ~ 1024 + scrollbarSize = 4 + #Distance a touch can wander before we think the user is scrolling in dips. + #Range: 0 ~ 1024 + touchSlop = 4 + #Distance a hover can wander while it is still considered "stationary" in dips. + #Range: 0 ~ 1024 + hoverSlop = 4 + #Minimum size of the touch target for a scrollbar in dips. + #Range: 0 ~ 1024 + minScrollbarTouchTarget = 16 + #Minimum velocity to initiate a fling in dips per second. + #Range: 0 ~ 32767 + minimumFlingVelocity = 50 + #Maximum velocity to initiate a fling in dips per second. + #Range: 0 ~ 32767 + maximumFlingVelocity = 8000 + #The coefficient of friction applied to flings/scrolls. + #Range: 0.001 ~ 7.389 + scrollFriction = 0.014999999664723873 + #Max distance in dips to overscroll for edge effects. + #Range: 0 ~ 1024 + overscrollDistance = 0 + #Max distance in dips to overfling for edge effects. + #Range: 0 ~ 1024 + overflingDistance = 12 + #Amount to scroll in response to a vertical scroll event, in dips per axis value. + #Range: 0.0 ~ 1024.0 + verticalScrollFactor = 64.0 + #Amount to scroll in response to a horizontal scroll event, in dips per axis value. + #Range: 0.0 ~ 1024.0 + horizontalScrollFactor = 64.0 + #The duration in milliseconds before a hover event causes a tooltip to be shown. + #Range: 0 ~ 1200 + hoverTooltipShowTimeout = 500 + #The duration in milliseconds before mouse inactivity causes a tooltip to be hidden. + #Range: 3000 ~ 120000 + hoverTooltipHideTimeout = 30000 + +#Font Config +[font] + #The first font family to use. See fallbackFontFamilyList + firstFontFamily = ".\\config\\ModernUI\\unifont-17.0.03.otf" + #A set of fallback font families to determine the typeface to use. + #The order is first > fallbacks. TrueType & OpenType are supported. + #Each element can be one of the following two cases: + #1) Name of registered font family, for instance: Segoe UI + #2) Path of font files on your PC, for instance: /usr/shared/fonts/x.otf + #Registered font families include: + #1) OS builtin fonts. + #2) Font files in fontRegistrationList. + #3) Font files in '/resourcepacks' directory. + #4) Font files under 'modernui:font' in resource packs. + #Note that for TTC/OTC font, you should register it and select one of font families. + #Otherwise, only the first font family from the TrueType/OpenType Collection will be used. + #This is only read once when the game is loaded, you can reload via in-game GUI. + fallbackFontFamilyList = ["Source Han Sans CN Medium", "Noto Sans", "Segoe UI Variable", "Segoe UI", "San Francisco", "Open Sans", "SimHei", "STHeiti", "Segoe UI Symbol", "mui-i18n-compat"] + #A set of additional font files (or directories) to register. + #For TrueType/OpenType Collections, all contained font families will be registered. + #Registered fonts can be referenced in Modern UI and Minecraft (Modern Text Engine). + #For example, "E:/Fonts" means all font files in that directory will be registered. + #System requires random access to these files, you should not remove them while running. + #This is only read once when the game is loaded, i.e. registration. + fontRegistrationList = [] + #Whether to use Google Noto Color Emoji, otherwise grayscale emoji (faster). + #See Unicode 15.0 specification for details on how this affects text layout. + useColorEmoji = true + #When enabled, text layout uses fractional metrics with no font hinting and applies sub-pixel positioning. + #When disabled, text layout uses integer metrics with full font hinting. + linearMetrics = true + diff --git a/config/ModernUI/text.toml b/config/ModernUI/text.toml new file mode 100644 index 000000000..b0cf659de --- /dev/null +++ b/config/ModernUI/text.toml @@ -0,0 +1,102 @@ + +#Text Engine Config +[text] + #Allow text renderer to drop shadow, setting to false can improve performance. + allowShadow = true + #Fix resolution level at 2. When the GUI scale increases, the resolution level remains. + #Then GUI scale should be even numbers (2, 4, 6...), based on Minecraft GUI system. + #If your fonts are not bitmap fonts, then you should keep this setting false. + fixedResolution = false + #Control base font size, in GUI scaled pixels. The default and vanilla value is 8. + #For bitmap fonts, 8 represents a glyph size of 8x or 16x if fixed resolution. + #This option only applies to TrueType fonts. + #Range: 6.5 ~ 9.5 + baseFontSize = 7.4 + #Control vertical baseline for vanilla text layout, in GUI scaled pixels. + #The vanilla default value is 7. + #Range: 4.0 ~ 10.0 + baselineShift = 7.0 + #Control the text shadow offset for vanilla text rendering, in GUI scaled pixels. + #Range: 0.20000000298023224 ~ 2.0 + shadowOffset = 0.5 + #Control the text outline offset for vanilla text rendering, in GUI scaled pixels. + #Range: 0.20000000298023224 ~ 2.0 + outlineOffset = 0.5 + #Control the horizontal offset for bitmap fonts, in GUI scaled pixels. + #Range: 0.0 ~ 1.0 + bitmapOffset = 0.5 + #Set the recycle time of layout cache in seconds, using least recently used algorithm. + #Range: 2 ~ 15 + cacheLifespan = 6 + #The bidirectional text heuristic algorithm. The default is FirstStrong (Locale). + #This will affect which BiDi algorithm to use during text layout. + #Allowed Values: FIRST_STRONG, ANY_RTL, LTR, RTL, LOCALE, FIRST_STRONG_LTR, FIRST_STRONG_RTL + textDirection = "FIRST_STRONG" + #Whether to use Modern UI text rendering pipeline in 3D world. + #Disabling this means that SDF text and rendering optimization are no longer effective. + #But text rendering can be compatible with OptiFine Shaders and Iris Shaders. + #This does not affect text rendering in GUI. + #This option only applies to TrueType fonts. + useTextShadersInWorld = true + #For "minecraft:default" font, should we keep some glyph providers of them? + #Ignore All: Only use Modern UI typeface list. + #Keep ASCII: Include minecraft:font/ascii.png, minecraft:font/accented.png, minecraft:font/nonlatin_european.png + #Keep Other: Include providers other than ASCII and Unicode font. + #Keep All: Include all except Unicode font. + #Only Include: Only include providers that specified by defaultFontRuleSet. + #Only Exclude: Only exclude providers that specified by defaultFontRuleSet. + #Allowed Values: IGNORE_ALL, KEEP_ASCII, KEEP_OTHER, KEEP_ALL, ONLY_INCLUDE, ONLY_EXCLUDE + defaultFontBehavior = "KEEP_ALL" + #Used when defaultFontBehavior is either ONLY_INCLUDE or ONLY_EXCLUDE. + #This specifies a set of regular expressions to match the glyph provider name. + #For bitmap providers, this is the texture path without 'textures/'. + #For TTF providers, this is the TTF file path without 'font/'. + #For space providers, this is "font_name / minecraft:space", + #where font_name is font definition path without 'font/'. + defaultFontRuleSet = ["^minecraft:font\\/(nonlatin_european|accented|ascii|element_ideographs|cjk_punctuations|ellipsis|2em_dash)\\.png$", "^minecraft:include\\/space \\/ minecraft:space$", "^minecraft:font\\/(mcsans|emoji)_05_00\\d.png$", "minecraft:uniform"] + #Whether to use text component object as hash key to lookup in layout cache. + #If you find that Modern UI text rendering is not compatible with some mods, + #you can disable this option for compatibility, but this will decrease performance a bit. + #Modern UI will use another cache strategy if this is disabled. + useComponentCache = true + #Allow text layout to be computed from background threads (not cached). + #Otherwise, block the current thread and wait for main thread. + allowAsyncLayout = true + #See CSS line-break property, https://developer.mozilla.org/en-US/docs/Web/CSS/line-break + #Allowed Values: AUTO, LOOSE, NORMAL, STRICT + lineBreakStyle = "AUTO" + #Allowed Values: AUTO, PHRASE + lineBreakWordStyle = "AUTO" + #When enabled, Modern UI will compute texel density in device-space to determine whether to use SDF text or bilinear sampling. + #This feature requires GLSL 400 or has no effect. + #This generally decreases performance but provides better rendering quality. + #This option only applies to TrueType fonts. May not be compatible with OptiFine. + smartSDFShaders = true + #When rendering in 2D, this option allows Modern UI to exactly compute font size in device-space from the current coordinate transform matrix. + #This provides perfect text rendering for scaling-down texts in vanilla, but may increase GPU memory usage. + #When disabled, Modern UI will use SDF text rendering if appropriate. + #This option only applies to TrueType fonts. + computeDeviceFontSize = true + #When enabled, Modern UI will use SDF text rendering if appropriate. + #Otherwise, it uses nearest-neighbor or bilinear sampling based on texel density. + #This option only applies to TrueType fonts. + allowSDFTextIn2D = true + #When enabled, the outline of the experience level text will be tweaked. + tweakExperienceText = true + #Control the anti-aliasing of raw glyph rasterization. + antiAliasing = false + #When enabled, text layout uses fractional metrics with no font hinting. + #When disabled, text layout uses integer metrics with full font hinting. + #Disable if on low-res monitor; enable for linear text. + linearMetrics = false + #Control the minimum pixel density for SDF text and text in 3D world rendering. + #This value will be no less than current GUI scale. + #Recommend setting a higher value on high-res monitor and powerful PC hardware. + #Range: 4 ~ 10 + minPixelDensityForSDF = 10 + #Enable linear sampling for A8 font atlases with mipmaps, mag filter will be always + #NEAREST. We prefer computeDeviceFontSize and allowSDFTextIn2D, then setting this to + #false can improve performance. If either of the above two is false or Shaders are active, + #then setting this to true can improve readability. + linearSamplingA8Atlas = false + diff --git a/config/ModernUI/unifont-17.0.03.otf b/config/ModernUI/unifont-17.0.03.otf new file mode 100644 index 000000000..914005397 Binary files /dev/null and b/config/ModernUI/unifont-17.0.03.otf differ diff --git a/config/immediatelyfast.json b/config/immediatelyfast.json index 5180ad4e1..e62573203 100644 --- a/config/immediatelyfast.json +++ b/config/immediatelyfast.json @@ -1,9 +1,9 @@ { "REGULAR_INFO": "----- Regular config values below -----", - "font_atlas_resizing": true, + "font_atlas_resizing": false, "map_atlas_generation": true, "hud_batching": false, - "fast_text_lookup": true, + "fast_text_lookup": false, "fast_buffer_upload": true, "COSMETIC_INFO": "----- Cosmetic only config values below (Does not optimize anything) -----", "dont_add_info_into_debug_hud": false, @@ -18,4 +18,4 @@ "debug_only_and_not_recommended_disable_hardware_conflict_handling": false, "debug_only_print_additional_error_information": false, "debug_only_use_last_usage_for_batch_ordering": false -} \ No newline at end of file +} diff --git a/kubejs/assets/tfc/patchouli_books/field_guide/en_us/entries/tfg_tips/mars_tree_index.json b/kubejs/assets/tfc/patchouli_books/field_guide/en_us/entries/tfg_tips/mars_tree_index.json index 6310f1897..8b8a0a592 100644 --- a/kubejs/assets/tfc/patchouli_books/field_guide/en_us/entries/tfg_tips/mars_tree_index.json +++ b/kubejs/assets/tfc/patchouli_books/field_guide/en_us/entries/tfg_tips/mars_tree_index.json @@ -1,6 +1,6 @@ { "name": "Mars Mushroom Index", - "category": "tfc:arborfirmacraft", + "category": "tfc:tfg_tips", "icon": "tfg:saplings/aeronos", "read_by_default": true, "pages": [ diff --git a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/arborfirmacraft/earth_tree_index.json b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/arborfirmacraft/earth_tree_index.json new file mode 100644 index 000000000..139c9343a --- /dev/null +++ b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/arborfirmacraft/earth_tree_index.json @@ -0,0 +1,204 @@ +{ + "name": "地球树木图鉴", + "category": "tfc:arborfirmacraft", + "icon": "afc:wood/sapling/flame_of_the_forest", + "read_by_default": true, + "pages": [ + { + "type": "patchouli:text", + "text": "这是世界上所有树木的列表及其适宜生长的气候条件。$(br2)正在寻找特定木材来装饰你的基地?这份列表应该能帮你找到它。列表按木材类型的字母顺序排列。$(br2)同时可查看$(l:tfc:tfg_tips/mars_tree_index)火星蘑菇图鉴$()。" + }, + { + "type": "patchouli:spotlight", + "title": "金合欢,阿拉伯胶树", + "item": "tag:tfc:acacia_logs", + "text": "$(bold)伞状金合欢$()$(br)$(thing)降雨量$(): 90 — 275毫米$(br)$(thing)温度$(): 13.4 — 40°C$(br2)$(bold)夏威夷金合欢$()$(br)$(thing)降雨量$(): 350 — 500毫米$(br)$(thing)温度$(): 15.3 — 24.4°C$(br2)$(bold)阿拉伯胶树$()$(br)$(thing)降雨量$(): 90 — 275毫米$(br)$(thing)温度$(): 11.6 — 40°C" + }, + { + "type": "patchouli:spotlight", + "title": "黑梣", + "item": "tag:tfc:ash_logs", + "text": "$(bold)黑梣$()$(br)$(thing)降雨量$(): 60 — 240毫米$(br)$(thing)温度$(): -13.9 — 0.7°C" + }, + { + "type": "patchouli:spotlight", + "title": "山杨,杨树", + "item": "tag:tfc:aspen_logs", + "text": "$(bold)山杨$()$(br)$(thing)降雨量$(): 350 — 500毫米$(br)$(thing)温度$(): -15.7 — -1.1°C$(br2)$(bold)杨树$()$(br)$(thing)降雨量$(): 170 — 310毫米$(br)$(thing)温度$(): -15.7 — -6.6°C" + }, + { + "type": "patchouli:spotlight", + "title": "猴面包树", + "item": "tag:afc:baobab_logs", + "text": "$(bold)猴面包树$()$(br)$(thing)降雨量$(): 30 — 190毫米$(br)$(thing)温度$(): 15.3 — 26.2°C" + }, + { + "type": "patchouli:spotlight", + "title": "白桦树", + "item": "tag:tfc:birch_logs", + "text": "$(bold)桦树$()$(br)$(thing)降雨量$(): 125 — 310毫米$(br)$(thing)温度$(): -13.9 — 2.5°C" + }, + { + "type": "patchouli:spotlight", + "title": "黑檀树", + "item": "tag:tfc:blackwood_logs", + "text": "$(bold)黑黄檀$()$(br)$(thing)降雨量$(): 85 — 285毫米$(br)$(thing)温度$(): 13.4 — 22.5°C$(br2)$(bold)穆尔加黑檀$()$(br)$(thing)降雨量$(): 35 — 150毫米$(br)$(thing)温度$(): 9.8 — 20.7°C" + }, + { + "type": "patchouli:spotlight", + "title": "白雪松树", + "item": "tag:tfc:white_cedar_logs", + "text": "$(bold)白雪松$()$(br)$(thing)降雨量$(): 100 — 220毫米$(br)$(thing)温度$(): -13.9 — 4.3°C$(br2)$(bold)大西洋雪松$()$(br)$(thing)降雨量$(): 165 — 500毫米$(br)$(thing)温度$(): 8.0 — 13.4°C" + }, + { + "type": "patchouli:spotlight", + "title": "栗树", + "item": "tag:tfc:chestnut_logs", + "text": "$(bold)栗树$()$(br)$(thing)降雨量$(): 150 — 300毫米$(br)$(thing)温度$(): -6.6 — 11.6°C" + }, + { + "type": "patchouli:spotlight", + "title": "柏树,红雪松", + "item": "tag:afc:cypress_logs", + "text": "$(bold)细柏$()$(br)$(thing)降雨量$(): 100 — 260毫米$(br)$(thing)温度$(): 2.5 — 15.3°C$(br2)$(bold)秃柏$()$(br)$(thing)降雨量$(): 360 — 500毫米$(br)$(thing)温度$(): -1.1 — 15.3°C$(br2)$(bold)垂柏$()$(br)$(thing)降雨量$(): 290 — 415毫米$(br)$(thing)温度$(): -8.4 — 4.3°C" + }, + { + "type": "patchouli:text", + "text": "$(bold)红雪松$()$(br)$(thing)降雨量$(): 410 — 500毫米$(br)$(thing)温度$(): -4.8 — 9.8°C" + }, + { + "type": "patchouli:spotlight", + "title": "(彩虹)桉树", + "item": "tag:afc:eucalyptus_logs", + "text": "$(bold)蓝桉$()$(br)$(thing)降雨量$(): 170 — 325毫米$(br)$(thing)温度$(): 8.0 — 18.9°C$(br2)$(bold)山楸树$()$(br)$(thing)降雨量$(): 390 — 500毫米$(br)$(thing)温度$(): 9.8 — 18.9°C$(br2)$(bold)彩虹桉$()$(br)$(thing)降雨量$(): 300 — 450毫米$(br)$(thing)温度$(): 15.3 — 24.4°C" + }, + { + "type": "patchouli:spotlight", + "title": "无花果树,橡胶无花果树", + "item": "tag:afc:fig_logs", + "text": "$(bold)无花果树$()$(br)$(thing)降雨量$(): 340 — 500毫米$(br)$(thing)温度$(): 18.9 — 26.2°C$(br2)$(bold)橡胶无花果树$()$(br)$(thing)降雨量$(): 290 — 400毫米$(br)$(thing)温度$(): 9.8 — 20.7°C" + }, + { + "type": "patchouli:spotlight", + "title": "冷杉", + "item": "tag:tfc:douglas_fir_logs", + "text": "$(bold)道格拉斯冷杉$()$(br)$(thing)降雨量$(): 305 — 500毫米$(br)$(thing)温度$(): -10.3 — 6.1°C$(br2)$(bold)山冷杉$()$(br)$(thing)降雨量$(): 220 — 345毫米$(br)$(thing)温度$(): -1.1 — 11.6°C$(br2)$(bold)香脂冷杉$()$(br)$(thing)降雨量$(): 210 — 500毫米$(br)$(thing)温度$(): -13.9 — -1.1°C" + }, + { + "type": "patchouli:spotlight", + "title": "三叶胶树", + "item": "tag:afc:hevea_logs", + "text": "$(bold)三叶胶树$()$(br)$(thing)降雨量$(): 390 — 500毫米$(br)$(thing)温度$(): 17.1 — 26.2°C" + }, + { + "type": "patchouli:spotlight", + "title": "山核桃树", + "item": "tag:tfc:hickory_logs", + "text": "$(bold)苦味山核桃$()$(br)$(thing)降雨量$(): 210 — 400毫米$(br)$(thing)温度$(): -6.6 — 11.6°C$(br2)$(bold)矮山核桃$()$(br)$(thing)降雨量$(): 400 — 475毫米$(br)$(thing)温度$(): 11.6 — 17.1°C" + }, + { + "type": "patchouli:spotlight", + "title": "重蚁树", + "item": "tag:afc:ipe_logs", + "text": "$(bold)黄重蚁木$()$(br)$(thing)降雨量$(): 340 — 500毫米$(br)$(thing)温度$(): 11.6 — 20.7°C" + }, + { + "type": "patchouli:spotlight", + "title": "铁木", + "item": "tag:afc:ironwood_logs", + "text": "$(bold)王铁木$()$(br)$(thing)降雨量$(): 320 — 430毫米$(br)$(thing)温度$(): 20.7 — 40.0°C$(br2)$(bold)莱邦博铁木$()$(br)$(thing)降雨量$(): 150 — 230毫米$(br)$(thing)温度$(): 20.7 — 40.0°C$(br2)$(bold)马尾铁木$()$(br)$(thing)降雨量$(): 340 — 500毫米$(br)$(thing)温度$(): 9.8 — 20.7°C" + }, + { + "type": "patchouli:spotlight", + "title": "木棉树", + "item": "tag:tfc:kapok_logs", + "text": "$(bold)木棉树$()$(br)$(thing)降雨量$(): 360 — 500毫米$(br)$(thing)温度$(): 13.4 — 24.4°C$(br2)$(bold)红丝木棉$()$(br)$(thing)降雨量$(): 250 — 350毫米$(br)$(thing)温度$(): 20.7 — 40.0°C" + }, + { + "type": "patchouli:spotlight", + "title": "桃花心树", + "item": "tag:afc:mahogany_logs", + "text": "$(bold)桃花心树$()$(br)$(thing)降雨量$(): 300 — 430毫米$(br)$(thing)温度$(): 15.3 — 26.2°C$(br2)$(bold)小叶桃花心树$()$(br)$(thing)降雨量$(): 320 — 500毫米$(br)$(thing)温度$(): 11.6 — 18.9°C$(br2)$(bold)沙比利桃花心树$()$(br)$(thing)降雨量$(): 330 — 500毫米$(br)$(thing)温度$(): 13.4 — 26.2°C" + }, + { + "type": "patchouli:spotlight", + "title": "红树林", + "item": "tag:tfc:mangrove_logs", + "text": "$(bold)红树林$()$(br)$(thing)降雨量$(): 220毫米以上$(br)$(thing)温度$(): 18.0°C以上$(br)注:仅在盐沼生物群系生成" + }, + { + "type": "patchouli:spotlight", + "title": "枫树", + "item": "tag:tfc:maple_logs", + "text": "$(bold)糖枫$()$(br)$(thing)降雨量$(): 260 — 360毫米$(br)$(thing)温度$(): -8.4 — 8.0°C$(br2)$(bold)大叶枫$()$(br)$(thing)降雨量$(): 405 — 500毫米$(br)$(thing)温度$(): -4.8 — 11.6°C$(br2)$(bold)凋叶枫$()$(br)$(thing)降雨量$(): 240 — 320毫米$(br)$(thing)温度$(): 0.7 — 4.3°C" + }, + { + "type": "patchouli:spotlight", + "title": "橡树,深色橡树", + "item": "tag:tfc:oak_logs", + "text": "$(bold)橡树$()$(br)$(thing)降雨量$(): 210 — 320毫米$(br)$(thing)温度$(): -8.4 — 6.1°C$(br2)$(bold)槲树$()$(br)$(thing)降雨量$(): 390 — 500毫米$(br)$(thing)温度$(): 0.7 — 13.4°C$(br2)$(bold)深色橡树$()$(br)$(thing)降雨量$(): 150 — 330毫米$(br)$(thing)温度$(): 11.6 — 20.7°C" + }, + { + "type": "patchouli:spotlight", + "title": "棕榈树", + "item": "tag:tfc:palm_logs", + "text": "$(bold)棕榈树$()$(br)$(thing)降雨量$(): 0 — 250毫米$(br)$(thing)温度$(): 17.1 — 40.0°C$(br2)$(bold)象牙棕榈$()$(br)$(thing)降雨量$(): 400 — 500毫米$(br)$(thing)温度$(): 20.7 — 26.2°C" + }, + { + "type": "patchouli:spotlight", + "title": "松树", + "item": "tag:tfc:pine_logs", + "text": "$(bold)北方松$()$(br)$(thing)降雨量$(): 60 — 270毫米$(br)$(thing)温度$(): -19.4 — -3.0°C$(br2)$(bold)石松$()$(br)$(thing)降雨量$(): 140 — 290毫米$(br)$(thing)温度$(): 2.5 — 18.9°C$(br2)$(bold)红松$()$(br)$(thing)降雨量$(): 185 — 320毫米$(br)$(thing)温度$(): -8.4 — 4.3°C" + }, + { + "type": "patchouli:text", + "text": "$(bold)北美落叶松$()$(br)$(thing)降雨量$(): 150 — 500毫米$(br)$(thing)温度$(): -17.5 — -1.1°C" + }, + { + "type": "patchouli:spotlight", + "title": "蔷薇树", + "item": "tag:tfc:rosewood_logs", + "text": "$(bold)印度蔷薇树$()$(br)$(thing)降雨量$(): 245 — 360毫米$(br)$(thing)温度$(): 15.3 — 24.4°C$(br2)$(bold)紫檀木$()$(br)$(thing)降雨量$(): 340 — 440毫米$(br)$(thing)温度$(): 15.3 — 22.5°C" + }, + { + "type": "patchouli:spotlight", + "title": "红杉", + "item": "tag:tfc:sequoia_logs", + "text": "$(bold)红杉$()$(br)$(thing)降雨量$(): 320 — 500毫米$(br)$(thing)温度$(): 0.7 — 8.0°C$(br2)$(bold)海岸红木$()$(br)$(thing)降雨量$(): 320 — 500毫米$(br)$(thing)温度$(): 4.3 — 9.8°C" + }, + { + "type": "patchouli:spotlight", + "title": "云杉", + "item": "tag:tfc:spruce_logs", + "text": "$(bold)蓝云杉$()$(br)$(thing)降雨量$(): 330 — 500毫米$(br)$(thing)温度$(): -19.4 — 2.5°C$(br2)$(bold)西海岸云杉$()$(br)$(thing)降雨量$(): 320 — 390毫米$(br)$(thing)温度$(): -12.1 — 6.1°C$(br2)$(bold)西堤卡云杉$()$(br)$(thing)降雨量$(): 370 — 500毫米$(br)$(thing)温度$(): 2.5 — 8.0°C" + }, + { + "type": "patchouli:text", + "text": "$(bold)黑云杉$()$(br)$(thing)降雨量$(): 220 — 360毫米$(br)$(thing)温度$(): -17.5 — -1.1°C" + }, + { + "type": "patchouli:spotlight", + "title": "悬铃木", + "item": "tag:tfc:sycamore_logs", + "text": "$(bold)悬铃木$()$(br)$(thing)降雨量$(): 330 — 480毫米$(br)$(thing)温度$(): -6.6 — 11.6°C" + }, + { + "type": "patchouli:spotlight", + "title": "柚树", + "item": "tag:afc:teak_logs", + "text": "$(bold)柚树$()$(br)$(thing)降雨量$(): 215 — 330毫米$(br)$(thing)温度$(): 13.4 — 26.2°C$(br2)$(bold)伊罗科木$()$(br)$(thing)降雨量$(): 210 — 320毫米$(br)$(thing)温度$(): 17.1 — 40.0°C$(br2)$(bold)凤凰花木$()$(br)$(thing)降雨量$(): 340 — 500毫米$(br)$(thing)温度$(): 13.4 — 24.4°C" + }, + { + "type": "patchouli:spotlight", + "title": "大甘巴豆树", + "item": "tag:afc:tualang_logs", + "text": "$(bold)大甘巴豆木$()$(br)$(thing)降雨量$(): 360 — 500毫米$(br)$(thing)温度$(): 20.7 — 40.0°C" + }, + { + "type": "patchouli:spotlight", + "title": "柳树", + "item": "tag:tfc:willow_logs", + "text": "$(bold)曲柳$()$(br)$(thing)降雨量$(): 330 — 500毫米$(br)$(thing)温度$(): -6.6 — 9.8°C$(br2)$(bold)垂柳$()$(br)$(thing)降雨量$(): 355 — 500毫米$(br)$(thing)温度$(): 9.8 — 17.1°C" + } + ] +} \ No newline at end of file diff --git a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/beneath/piglins.json b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/beneath/piglins.json index 1e117dc9a..a29717042 100644 --- a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/beneath/piglins.json +++ b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/beneath/piglins.json @@ -22,7 +22,7 @@ }, { "type": "patchouli:text", - "text": "$(li)4-6 硫磺粉$(li)1-2 皮革$(li)6-12 线$(li)6-12 下界石英$(li)12-18 桃花心木材$(li)6-8 桃花心木原木$(li)4-6 熟鹿肉$(li)4-6 鬼椒$(li)4-6 火药$(li)4-8 木炭$(li)6-12 箭矢$(li)6-12 助焊剂$(li)8-12 辉石岩砖$(li)8-12 混合岩砖$(li)8-16 木棍" + "text": "$(li)4-6 硫磺粉$(li)1-2 皮革$(li)6-12 线$(li)6-12 下界石英$(li)12-18 红木木材$(li)6-8 红木原木$(li)4-6 熟鹿肉$(li)4-6 鬼椒$(li)4-6 火药$(li)4-8 木炭$(li)6-12 箭矢$(li)6-12 助焊剂$(li)8-12 辉石岩砖$(li)8-12 混合岩砖$(li)8-16 木棍" }, { "type": "patchouli:text", diff --git a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/firmaciv/beneath.json b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/firmaciv/beneath.json index bcaf258e9..bb46ff332 100644 --- a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/firmaciv/beneath.json +++ b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/firmaciv/beneath.json @@ -1,5 +1,5 @@ { - "name": "幽冥之地", + "name": "火星船舶", "category": "tfc:firmaciv", "icon": "beneath:wood/sapling/crimson", "flag": "mod:beneath", diff --git a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/tfg_tips/mars_tree_index.json b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/tfg_tips/mars_tree_index.json new file mode 100644 index 000000000..62d819f07 --- /dev/null +++ b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/tfg_tips/mars_tree_index.json @@ -0,0 +1,48 @@ +{ + "name": "火星蘑菇图鉴", + "category": "tfc:tfg_tips", + "icon": "tfg:saplings/aeronos", + "read_by_default": true, + "pages": [ + { + "type": "patchouli:text", + "text": "这是火星上所有巨型蘑菇的列表及其适宜生长的气候条件。$(br2)正在寻找特定类型的菌柄来装饰你的基地?这份列表应该能帮助你找到它。列表按菌柄类型的字母顺序排列。$(br2)同时可查看$(l:tfc:arborfirmacraft/earth_tree_index)地球树木图鉴$()。" + }, + { + "type": "patchouli:spotlight", + "title": "空果菇", + "item": "ad_astra:aeronos_stem", + "text": "$(bold)空果菇$()$(br)$(thing)温度$(): -100°C及以上$(br)更多出现在东部地区。" + }, + { + "type": "patchouli:spotlight", + "title": "首新世菌", + "item": "species:alphacene_mushroom_block", + "text": "$(bold)首新世菌$()$(br)$(thing)温度$(): -85°C及以上$(br)在东部和西部地区均有出现。" + }, + { + "type": "patchouli:spotlight", + "title": "绯红菌", + "item": "beneath:wood/log/crimson", + "text": "$(bold)绯红菌$()$(br)$(thing)温度$(): -109 — -13°C$(br)更多出现在东部地区。" + }, + { + "type": "patchouli:spotlight", + "title": "霜原菇", + "item": "ad_astra:glacian_log", + "text": "$(bold)霜原菇$()$(br)$(thing)温度$(): -107°C及以下$(br)在东部和西部地区均有出现。" + }, + { + "type": "patchouli:spotlight", + "title": "孑节菇", + "item": "ad_astra:strophar_stem", + "text": "$(bold)孑节菇$()$(br)$(thing)温度$(): -100°C及以上$(br)更多出现在西部地区。" + }, + { + "type": "patchouli:spotlight", + "title": "诡异菌", + "item": "beneath:wood/log/warped", + "text": "$(bold)诡异菌$()$(br)$(thing)温度$(): -109 — -13°C$(br)更多出现在西部地区。" + } + ] +} \ No newline at end of file diff --git a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/tfg_tips/space_crops.json b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/tfg_tips/space_crops.json index 6f0d63e1b..4c30eda3e 100644 --- a/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/tfg_tips/space_crops.json +++ b/kubejs/assets/tfc/patchouli_books/field_guide/zh_cn/entries/tfg_tips/space_crops.json @@ -6,7 +6,7 @@ { "type": "patchouli:text", "title": "外星作物", - "text": "事实证明,地球并不是唯一有生命的天体。在你的旅途中,你可能会遇到其他可以食用的生物。在地球上,它们都有你所熟悉的相同机制(有一些例外),可以根据你的需要在普通农田、$(thing)Firmalife$() $(l:firmalife/greenhouse)温室$()或$(thing)格雷科技$()电力温室中种植。" + "text": "事实证明,地球并不是唯一有生命的天体。在你的旅途中,你可能会遇到其他可以食用的植被。在地球上,它们都有你所熟悉的相同机制(有一些例外),可以根据你的需要在普通农田、$(thing)Firmalife$() $(l:firmalife/greenhouse)温室$()或$(thing)格雷科技$()电力温室中种植。" }, { "type": "patchouli:text", diff --git a/kubejs/server_scripts/domum_ornamentum/tags.js b/kubejs/server_scripts/domum_ornamentum/tags.js index 04b05cd50..bd1723a9c 100644 --- a/kubejs/server_scripts/domum_ornamentum/tags.js +++ b/kubejs/server_scripts/domum_ornamentum/tags.js @@ -29,6 +29,7 @@ function registerDomumOrnamentumBlockTags(event) { "#tfc:colored_polished_alabaster", "#tfc:mud_bricks", "#forge:sandstone", + "#railways:locometal", //rnr shingles "rnr:wood/shingles/teak", "rnr:wood/shingles/cypress", diff --git a/kubejs/server_scripts/gregtech/tags.js b/kubejs/server_scripts/gregtech/tags.js index 338f388a7..ac057b6e0 100644 --- a/kubejs/server_scripts/gregtech/tags.js +++ b/kubejs/server_scripts/gregtech/tags.js @@ -44,6 +44,9 @@ function registerGTCEUItemTags(event) { // @ts-expect-error According to KJS docs adding tags to tags is supported. event.add("gtceu:molds", "#gtceu:casting_molds", "#gtceu:extruder_molds", "gtceu:empty_mold"); + //greens + event.add('tfc:compost_greens', 'gtceu:bio_chaff'); + event.add('tfc:compost_greens', 'gtceu:plant_ball'); } /** @param {TagEvent.Block} event */ diff --git a/kubejs/server_scripts/tfc/tags.js b/kubejs/server_scripts/tfc/tags.js index fcd635f26..218163d42 100644 --- a/kubejs/server_scripts/tfc/tags.js +++ b/kubejs/server_scripts/tfc/tags.js @@ -407,6 +407,11 @@ function registerTFCItemTags(event) { event.add('tfc:knives', 'tfc:stone/knife/metamorphic') event.add('tfc:knives', 'tfc:stone/knife/igneous_intrusive') event.add('tfc:knives', 'tfc:stone/knife/igneous_extrusive') + + //greens and browns + event.remove('tfc:compost_browns_low', '#tfc:fallen_leaves') + event.add('tfc:compost_greens_low', '#tfc:fallen_leaves') + event.add('tfc:compost_greens_low', '#minecraft:leaves') } /** @param {TagEvent.Block} event */ diff --git a/pakku-lock.json b/pakku-lock.json index 60abd76d6..836f354bd 100644 --- a/pakku-lock.json +++ b/pakku-lock.json @@ -1888,69 +1888,6 @@ } ] }, - { - "pakku_id": "Yr24iolwXV9aFEWV", - "type": "MOD", - "side": "CLIENT", - "slug": { - "curseforge": "blur-forge", - "modrinth": "blur-forge" - }, - "name": { - "curseforge": "Blur (Forge)", - "modrinth": "Blur Forge (Unofficial)" - }, - "id": { - "curseforge": "823106", - "modrinth": "o4Wx4DUB" - }, - "files": [ - { - "type": "curseforge", - "file_name": "blur-forge-3.1.1.jar", - "mc_versions": [ - "1.20.1" - ], - "loaders": [ - "neoforge", - "forge" - ], - "release_type": "release", - "url": "https://edge.forgecdn.net/files/4906/217/blur-forge-3.1.1.jar", - "id": "4906217", - "parent_id": "823106", - "hashes": { - "sha1": "562f34155f3849463449aeb1ab54cc7064e4bc86", - "md5": "1eb8a13698f8d4204094b5ea189c31d3" - }, - "required_dependencies": [], - "size": 177259, - "date_published": "2023-11-27T16:15:39.520Z" - }, - { - "type": "modrinth", - "file_name": "blur-forge-3.1.1.jar", - "mc_versions": [ - "1.20.1" - ], - "loaders": [ - "forge", - "neoforge" - ], - "release_type": "release", - "url": "https://cdn.modrinth.com/data/o4Wx4DUB/versions/NOiJG3oF/blur-forge-3.1.1.jar", - "id": "NOiJG3oF", - "parent_id": "o4Wx4DUB", - "hashes": { - "sha512": "9d35f532c40ca55eb054188e6293b6f57eecdb748da9bdbf68a0c2567101c09d62ac66f652602f0567247fe0fc6f5fc4d95fdc6c034ee22544d4ff2d3ae723c3", - "sha1": "562f34155f3849463449aeb1ab54cc7064e4bc86" - }, - "required_dependencies": [], - "size": 177259, - "date_published": "2023-11-27T16:15:44.263909Z" - } - ] - }, { "pakku_id": "bDQUB8zljVVWf9mE", "type": "MOD", @@ -5636,69 +5573,6 @@ } ] }, - { - "pakku_id": "xHhmCkdwwzSP9oLD", - "type": "MOD", - "side": "CLIENT", - "slug": { - "curseforge": "fps-reducer", - "modrinth": "fps-reducer" - }, - "name": { - "curseforge": "FPS Reducer", - "modrinth": "FPS Reducer" - }, - "id": { - "curseforge": "280294", - "modrinth": "iZ10HXDj" - }, - "files": [ - { - "type": "curseforge", - "file_name": "FpsReducer2-forge-1.20.1-2.5.1.jar", - "mc_versions": [ - "1.20.1", - "1.20" - ], - "loaders": [ - "forge" - ], - "release_type": "release", - "url": "https://edge.forgecdn.net/files/6791/399/FpsReducer2-forge-1.20.1-2.5.1.jar", - "id": "6791399", - "parent_id": "280294", - "hashes": { - "sha1": "4920a2e1d17090007179a568181624847fba0993", - "md5": "d17bad88d746c21dcd37f16257a1e84d" - }, - "required_dependencies": [], - "size": 125660, - "date_published": "2025-07-20T14:53:34.933Z" - }, - { - "type": "modrinth", - "file_name": "FpsReducer2-forge-1.20.1-2.5.1.jar", - "mc_versions": [ - "1.20", - "1.20.1" - ], - "loaders": [ - "forge" - ], - "release_type": "release", - "url": "https://cdn.modrinth.com/data/iZ10HXDj/versions/UfMtCXs7/FpsReducer2-forge-1.20.1-2.5.1.jar", - "id": "UfMtCXs7", - "parent_id": "iZ10HXDj", - "hashes": { - "sha512": "b6123d73602e8909f71d71ff5fe78e3cd8dc1628645c82e4d0ca5bdc93c9a2cb3135a9bada7ffa6f5dbcb34142bf05f9546f44896df7be6f5f3f1fb804d735cd", - "sha1": "4920a2e1d17090007179a568181624847fba0993" - }, - "required_dependencies": [], - "size": 125660, - "date_published": "2025-07-22T00:03:21.002137Z" - } - ] - }, { "pakku_id": "DNPr6iL9YKiQI0Wu", "pakku_links": [ @@ -9374,6 +9248,71 @@ } ] }, + { + "pakku_id": "DBqtXgbdT2kqVKUh", + "type": "MOD", + "side": "CLIENT", + "slug": { + "curseforge": "modern-ui", + "modrinth": "modern-ui" + }, + "name": { + "curseforge": "Modern UI", + "modrinth": "Modern UI" + }, + "id": { + "curseforge": "352491", + "modrinth": "3sjzyvGR" + }, + "files": [ + { + "type": "curseforge", + "file_name": "ModernUI-Forge-1.20.1-3.12.0.1-universal.jar", + "mc_versions": [ + "1.20.1", + "1.20" + ], + "loaders": [ + "neoforge", + "forge" + ], + "release_type": "release", + "url": "https://edge.forgecdn.net/files/6956/345/ModernUI-Forge-1.20.1-3.12.0.1-universal.jar", + "id": "6956345", + "parent_id": "352491", + "hashes": { + "sha1": "fcebe51e3c2ca34793f9b132fa05b5494ffc76a4", + "md5": "5b863668f0de88993289ba098c77dcff" + }, + "required_dependencies": [], + "size": 25104473, + "date_published": "2025-09-02T16:33:54.937Z" + }, + { + "type": "modrinth", + "file_name": "ModernUI-Forge-1.20.1-3.12.0.1-universal.jar", + "mc_versions": [ + "1.20", + "1.20.1" + ], + "loaders": [ + "forge", + "neoforge" + ], + "release_type": "release", + "url": "https://cdn.modrinth.com/data/3sjzyvGR/versions/6ksT8CWg/ModernUI-Forge-1.20.1-3.12.0.1-universal.jar", + "id": "6ksT8CWg", + "parent_id": "3sjzyvGR", + "hashes": { + "sha512": "cf9a1bfa25f956a9277639da833a86d59a6a55bc690b6c03d4292bb240cb775c32ecf7ae253db7779757e2c74c5adf2c272c4ecdb35b907027de3ec7534bbd27", + "sha1": "fcebe51e3c2ca34793f9b132fa05b5494ffc76a4" + }, + "required_dependencies": [], + "size": 25104473, + "date_published": "2025-09-02T16:36:27.248973Z" + } + ] + }, { "pakku_id": "vLkSeib1zFzTMcPF", "type": "MOD",