Перейти к содержимому
Mineforgian

SIRIUS Ui

Json UI Engine for Minecraft Java Edition

Загрузки
167K
Подписчики
210
Обновлён
9 августа 2026 г.
Лицензия
HaoTianA-License-1.0

Опубликован 30 апреля 2025 г.

Logo

Minecraft UI Enhancement Mod

Json Ui Engine for Minecraft Java Edition

Alpha

Modrinth CurseForge GitHub License


What is this?

SIRIUS Ui is a UI enhancement mod powered by a JSON-driven Widget component system. Define game interfaces by writing JSON files — no Java code required.

SIRIUS Ui is open source under the HaoTianA License v1.0.

Installation

  1. Place the Mod JAR file into your .minecraft/mods/ directory
  2. Launch the game

Author

AlanHT520


Ченджлог

0.4.87-Dev.65Альфа1.21.1 · 9 августа 2026 г.
  • Added "splash"
  • Removed the displayed entities in the title screen
  • Optimized some details
  • Added element audio
  • Optimized the sliding effect of the slider Fixed the issue of lagging when sliding the audio slider.
0.4.87-Dev.65Альфа1.20.1 · 9 августа 2026 г.
  • Added "splash"
  • Removed the displayed entities in the title screen
  • Optimized some details
  • Added element audio
  • Optimized the sliding effect of the slider Fixed the issue of lagging when sliding the audio slider.
0.4.86-Dev.64Альфа1.21.1 · 14 июля 2026 г.

Changelog

v0.4.86-Dev.64 (Alpha)

注意 : 这是一个开发版,可能会有很多bug

New Features

  • Changed the options screen
  • Added PPT transition logic
  • Added player entity display in the title screen

Bug Fixes

  • Fixed incompatibility with owo-lib
  • Fixed missing Mods list button

Architecture Refactor

  • Widget component system: Refactored from a monolithic Element class to an interface-based Widget component architecture. Added widget/ package with 17 standalone Widget classes:
    • Basic: TextWidget, ImageWidget, ButtonWidget, BoxWidget
    • Container: ContainerWidget, ContentWidget, ButtonContentWidget
    • List: ListWidget, DynamicListWidget, PackListWidget
    • Interactive: SliderWidget, StringEditBoxWidget
    • Display: EntityDisplayWidget
    • Cycle: CycleButtonWidget, ArrowSwitchWidget, DropdownWidget, SelectorWidget
  • Render context: Added context/ package (RenderContext, ScreenVariableRegistry, WidgetDimensionRegistry) for unified render state and variable management
  • Property separation: data/props/ package decouples style, text, layout, and animation properties from the old Element into independent records (StyleProps, TextProps, LayoutProps, SliderProps, CycleButtonProps, etc.)
  • Factory pattern: Added WidgetFactory for unified JSON → Widget construction

New Features

  • Entity display: Added EntityDisplayWidget with FakePlayer/FakeLevel, enabling player entity model rendering within UIs
  • Dynamic lists: Added DynamicListWidget, supporting dynamic list loading from data sources (server list, world saves, Realms, resource packs)
  • Data sources: Added data/source/ package with ServerListDataSource, WorldSaveDataSource, RealmsDataSource, PackDataSource
  • Animation system: Added AnimationStep record, supporting per-frame text animation configuration
  • Cycle/selection controls: Added four interactive control types: arrow_switch, cycle, dropdown, selector

Mixin Changes

  • Removed GuiGraphicsMixin (old alpha blending override)
  • Added LivingEntityRendererMixin to fix name display issues when rendering FakePlayer entities

Removed Legacy Code

  • Removed Element.java — old monolithic element class
  • Removed ElementRenderer.java — old centralized renderer
  • Removed InteractionHandler.java — old centralized interaction handler
  • Removed ScreenBuilder.java — old screen builder
  • Removed ButtonStyle.java / ButtonStyleData.java — old button style classes
  • Removed SizeDeserializer.java — old size deserializer

Assets

  • Screen configs: Added 6 new screens (screen, options_screen, play_selection_screen, resource_packs_screen, mouse_settings_screen, font_options_screen)
  • Widget JSONs: Expanded from simple button configs to a comprehensive Widget configuration system, covering all settings categories: accessibility, chat, controls, general, skin, sounds, video
  • Textures: Significantly expanded button textures including titlemenu series, select series, world series, options icons, slider components, etc.; legacy textures moved to options/old/
  • Language files: 22 language files trimmed and aligned to zh_cn.json as the baseline
0.3.8Альфа1.21.1 · 4 мая 2026 г.
  • only for 1.21.1, because there is no such issue in 26.1
  • fixed a issue that GuiGraphics was incompatible with the Alpha channel.
0.3.8Альфа1.21.1 · 4 мая 2026 г.
  • only for 1.21.1, because there is no such issue in 26.1
  • fixed a issue that GuiGraphics was incompatible with the Alpha channel.
0.3.7Альфа26.1.2 · 3 мая 2026 г.

SIRIUS Ui Changelog: v0.3.2 → v0.3.7

🎉 New Features

1. New Background Type: PPT Slideshow (type: "ppt")

  • Replaces the removed experimental GIF background with a robust multi-image slideshow.
  • Images can be organised into groups, each with an independent playCount (-1 for infinite loop).
  • Customise group playback order with playGroups; use playAfter to make a specific group loop forever (e.g. intro sequence followed by a looping main background).
  • Each slide can have its own time (milliseconds); a global defaultTime is used when a slide omits it.

2. Screen Registration (register.json)

  • File path: assets/minecraft/alanht/register.json
  • Maps custom screen IDs to JSON layout files, enabling the mod to recognise and open completely new screens.

3. Internationalisation

  • The wiki now supports Simplified Chinese, Traditional Chinese, and English, with dark/light theme switching.

🔧 Changes & Improvements

1. JSON Key Changes ⚠️ (Resource Pack Update Required)

Old (v0.3.2) New (v0.3.7) Notes
type: "logo" type: "image" Element type for static images renamed to image.
type: "cycle" (experimental) (removed) Cycle button element temporarily removed.
type: "list" (experimental) (removed) Scrollable list element temporarily removed.
type: "catalog" (experimental) (removed) Catalog navigation element temporarily removed.
type: "slider" (experimental) type: "slider" (still experimental) Slider element retained but remains experimental.

Note: Button styles (button_styles/*.json) have not changed between v0.3.2 and v0.3.7.

2. Expression Variable Renames ⚠️

Old Variable (v0.3.2) New Variable (v0.3.7+)
width screen.width
height screen.height
elementWidth this.width
elementHeight this.height
(none) parent.width, parent.height, containerWidth, containerHeight

3. Recommended Resource Pack Structure Changed

  • Old structure used paths like assets/minecraft/screens/.
  • New standard path is assets/sirius_ui/screens/. Texture paths must include the full namespace (e.g. sirius_ui:textures/...).

4. Action Enhancements

  • disconnect and exit_to_title now share a unified flow.
  • respawn logic is more robust.

5. Documentation Overhaul

  • The wiki has been restructured from a single page into modular, multi-page documentation with a sidebar.
  • A Troubleshooting chapter has been added.

❌ Removals & Deprecations

  • type: "gif" background has been removed. Migrate all GIF backgrounds to type: "ppt".
  • The old logo element type is deprecated; use image instead.
  • Experimental elements cycle, list, catalog have been temporarily removed. They are not available in v0.3.7.
  • Legacy paths like assets/minecraft/screens/ are no longer recommended.

📋 Upgrade Checklist (v0.3.2 → v0.3.7)

  1. Rename all "type": "logo" elements to "type": "image".
  2. Replace all "type": "gif" backgrounds with "type": "ppt" using the new slideshow syntax.
  3. Remove any usage of cycle, list, and catalog elements – they are not supported in this version.
  4. Update all coordinate expressions with the new variable names:
    • widthscreen.width
    • heightscreen.height
    • elementWidththis.width
    • elementHeightthis.height
  5. If using register.json, ensure paths point to the new namespaces (e.g. sirius_ui:screens/...).
  6. Slider configurations (type: "slider") can generally remain, but be aware the feature is still experimental and may change in the future.
  7. Verify compatibility with the updated ScreenRegistry.
0.3.7Альфа1.21.1 · 3 мая 2026 г.

SIRIUS Ui Changelog: v0.3.2 → v0.3.7

🎉 New Features

1. New Background Type: PPT Slideshow (type: "ppt")

  • Replaces the removed experimental GIF background with a robust multi-image slideshow.
  • Images can be organised into groups, each with an independent playCount (-1 for infinite loop).
  • Customise group playback order with playGroups; use playAfter to make a specific group loop forever (e.g. intro sequence followed by a looping main background).
  • Each slide can have its own time (milliseconds); a global defaultTime is used when a slide omits it.

2. Screen Registration (register.json)

  • File path: assets/minecraft/alanht/register.json
  • Maps custom screen IDs to JSON layout files, enabling the mod to recognise and open completely new screens.

3. Internationalisation

  • The wiki now supports Simplified Chinese, Traditional Chinese, and English, with dark/light theme switching.

🔧 Changes & Improvements

1. JSON Key Changes ⚠️ (Resource Pack Update Required)

Old (v0.3.2) New (v0.3.7) Notes
type: "logo" type: "image" Element type for static images renamed to image.
type: "cycle" (experimental) (removed) Cycle button element temporarily removed.
type: "list" (experimental) (removed) Scrollable list element temporarily removed.
type: "catalog" (experimental) (removed) Catalog navigation element temporarily removed.
type: "slider" (experimental) type: "slider" (still experimental) Slider element retained but remains experimental.

Note: Button styles (button_styles/*.json) have not changed between v0.3.2 and v0.3.7.

2. Expression Variable Renames ⚠️

Old Variable (v0.3.2) New Variable (v0.3.7+)
width screen.width
height screen.height
elementWidth this.width
elementHeight this.height
(none) parent.width, parent.height, containerWidth, containerHeight

3. Recommended Resource Pack Structure Changed

  • Old structure used paths like assets/minecraft/screens/.
  • New standard path is assets/sirius_ui/screens/. Texture paths must include the full namespace (e.g. sirius_ui:textures/...).

4. Action Enhancements

  • disconnect and exit_to_title now share a unified flow.
  • respawn logic is more robust.

5. Documentation Overhaul

  • The wiki has been restructured from a single page into modular, multi-page documentation with a sidebar.
  • A Troubleshooting chapter has been added.

❌ Removals & Deprecations

  • type: "gif" background has been removed. Migrate all GIF backgrounds to type: "ppt".
  • The old logo element type is deprecated; use image instead.
  • Experimental elements cycle, list, catalog have been temporarily removed. They are not available in v0.3.7.
  • Legacy paths like assets/minecraft/screens/ are no longer recommended.

📋 Upgrade Checklist (v0.3.2 → v0.3.7)

  1. Rename all "type": "logo" elements to "type": "image".
  2. Replace all "type": "gif" backgrounds with "type": "ppt" using the new slideshow syntax.
  3. Remove any usage of cycle, list, and catalog elements – they are not supported in this version.
  4. Update all coordinate expressions with the new variable names:
    • widthscreen.width
    • heightscreen.height
    • elementWidththis.width
    • elementHeightthis.height
  5. If using register.json, ensure paths point to the new namespaces (e.g. sirius_ui:screens/...).
  6. Slider configurations (type: "slider") can generally remain, but be aware the feature is still experimental and may change in the future.
  7. Verify compatibility with the updated ScreenRegistry.
0.3.7Альфа26.1.1, 26.1.2 · 2 мая 2026 г.

SIRIUS Ui Changelog: v0.3.2 → v0.3.7

🎉 New Features

1. New Background Type: PPT Slideshow (type: "ppt")

  • Replaces the removed experimental GIF background with a robust multi-image slideshow.
  • Images can be organised into groups, each with an independent playCount (-1 for infinite loop).
  • Customise group playback order with playGroups; use playAfter to make a specific group loop forever (e.g. intro sequence followed by a looping main background).
  • Each slide can have its own time (milliseconds); a global defaultTime is used when a slide omits it.

2. Screen Registration (register.json)

  • File path: assets/minecraft/alanht/register.json
  • Maps custom screen IDs to JSON layout files, enabling the mod to recognise and open completely new screens.

3. Internationalisation

  • The wiki now supports Simplified Chinese, Traditional Chinese, and English, with dark/light theme switching.

🔧 Changes & Improvements

1. JSON Key Changes ⚠️ (Resource Pack Update Required)

Old (v0.3.2) New (v0.3.7) Notes
type: "logo" type: "image" Element type for static images renamed to image.
type: "cycle" (experimental) (removed) Cycle button element temporarily removed.
type: "list" (experimental) (removed) Scrollable list element temporarily removed.
type: "catalog" (experimental) (removed) Catalog navigation element temporarily removed.
type: "slider" (experimental) type: "slider" (still experimental) Slider element retained but remains experimental.

Note: Button styles (button_styles/*.json) have not changed between v0.3.2 and v0.3.7.

2. Expression Variable Renames ⚠️

Old Variable (v0.3.2) New Variable (v0.3.7+)
width screen.width
height screen.height
elementWidth this.width
elementHeight this.height
(none) parent.width, parent.height, containerWidth, containerHeight

3. Recommended Resource Pack Structure Changed

  • Old structure used paths like assets/minecraft/screens/.
  • New standard path is assets/sirius_ui/screens/. Texture paths must include the full namespace (e.g. sirius_ui:textures/...).

4. Action Enhancements

  • disconnect and exit_to_title now share a unified flow.
  • respawn logic is more robust.

5. Documentation Overhaul

  • The wiki has been restructured from a single page into modular, multi-page documentation with a sidebar.
  • A Troubleshooting chapter has been added.

❌ Removals & Deprecations

  • type: "gif" background has been removed. Migrate all GIF backgrounds to type: "ppt".
  • The old logo element type is deprecated; use image instead.
  • Experimental elements cycle, list, catalog have been temporarily removed. They are not available in v0.3.7.
  • Legacy paths like assets/minecraft/screens/ are no longer recommended.

📋 Upgrade Checklist (v0.3.2 → v0.3.7)

  1. Rename all "type": "logo" elements to "type": "image".
  2. Replace all "type": "gif" backgrounds with "type": "ppt" using the new slideshow syntax.
  3. Remove any usage of cycle, list, and catalog elements – they are not supported in this version.
  4. Update all coordinate expressions with the new variable names:
    • widthscreen.width
    • heightscreen.height
    • elementWidththis.width
    • elementHeightthis.height
  5. If using register.json, ensure paths point to the new namespaces (e.g. sirius_ui:screens/...).
  6. Slider configurations (type: "slider") can generally remain, but be aware the feature is still experimental and may change in the future.
  7. Verify compatibility with the updated ScreenRegistry.

Комментарии

Загружаем…