Skip to content

Add multiple absent console UI screens, features and other misc fixes and tweaks.#665

Open
fileshredder wants to merge 40 commits into
nbcraft-org:masterfrom
fileshredder:master
Open

Add multiple absent console UI screens, features and other misc fixes and tweaks.#665
fileshredder wants to merge 40 commits into
nbcraft-org:masterfrom
fileshredder:master

Conversation

@fileshredder

@fileshredder fileshredder commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

This PR aims to add multiple screens that were missing their X360 counterparts in the project, and instead were using the normal Java/PE screens.

Console UI additions:

  • Now Exiting the world will show the Console Edition Saving World Screen instead of the normal one.
  • Starting the game up in Console UI mode will now display the autosave warning screen, which will close in 10 seconds if not given a response
  • Now selecting a player in the Online Worlds part of the Select World List will open a replica of the Console Join Game screen instead of directly connecting to the player.
  • Selecting a world in the world list now opens the Save Select Menu where you can see the gamemode the world was created in, it's seed and adjust the game's difficulty or load the world.
  • Now the player's nametag is outlined when playing multiplayer like in console edition (hardcoded to green currently.)
  • Items (not blocks) now no longer have normal lighting/shading when held, matching their look that was in TU0/1/2.

Console UI changes:

  • Hotbar position has been adjusted to match TU2 as closely as possible
  • Chat Messages have been accurately adjusted to match TU2's messages, no longer having text shadows and their layout position matching TU2's
  • The F3 Debug Screen no longer renders abnormally small in Console UI mode and will now render at the correct normal size instead.
  • The translucent background in screens like the pause screen will now in Console UI mode, have less opacity like TU2
    - Font Spacing changes in Console UI mode to match how it was in TU2
  • Button text positioning and shadow distance has been adjusted to match TU2
  • Select World Screen now uses the correct panel type instead of SMALL_PANEL
  • Added PANEL_SQUARE_RECCESS
  • Crafting Screen layout slightly adjusted to be almost pixel accurate to TU2
  • Positioning of blocks in hotbar and inventory have been slightly adjusted
  • Pause screen layout has been fixed to match TU2.

Misc Fixes:

  • Fixed Fire Tesselation code so that it now renders correctly on some sides and is no longer invisible instead.
  • Flint and Steel no longer stacks to 16 and now has durability.
  • External File Level Storage now also has the ability to read the seed of a world.
image image image image image image image image

Background opacity in console ui mode for menus now matches TU2

Disabled Buttons now match TU2

Font Spacing now matches TU2
Pause screen button layout is correct now

World Select Screen uses correct panel type now

Debug text now renders correctly in console ui mode instead of being very small
Added Autosave Warning Screen that appears on game boot.

Added Load Save Screen that now appears when you select a world in the world list
Cleaned up Autosave screen code a bit

Crafting Screen layout is now more accurate to tu2

Blocks in hotbar and inventory should also now be more accurately positioned to TU2
Fixed fire tesselation to work in all sides

Flint and steel is no longer stackable and has durability
Now when saving and exiting a world, The saving screen from Xbox 360 Edition is displayed instead of the vanilla one.
@BrentDaMage BrentDaMage self-assigned this Jul 3, 2026
@BrentDaMage BrentDaMage added enhancement New feature or request feature : gui labels Jul 3, 2026

@BrentDaMage BrentDaMage left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Of the full-res screenshots on the wiki, it does not look like the text shadows on buttons were ever like this. They all appear to be down and right by 1px on each axis.

Comment thread game/assets/lang/en_us.json Outdated
Comment thread source/client/gui/components/Button.cpp Outdated
Comment thread source/client/gui/screens/AutosaveWarningScreen_Console.cpp Outdated
Comment thread source/client/gui/screens/AutosaveWarningScreen_Console.cpp Outdated
Comment thread source/client/gui/screens/AutosaveWarningScreen_Console.cpp Outdated
Comment thread source/client/renderer/entity/MobRenderer.cpp Outdated
Comment thread source/client/renderer/entity/MobRenderer.cpp Outdated
Comment thread source/client/renderer/GameRenderer.cpp Outdated
Comment thread source/client/renderer/ItemInHandRenderer.cpp Outdated
Comment thread source/client/renderer/ScreenRenderer.cpp Outdated
Comment thread source/client/renderer/Font.cpp Outdated
@BrentDaMage

Copy link
Copy Markdown
Member

Also, have you tested the nametag outline with shaders (either on OpenGL + Shaders, D3D9 or D3D1) to make sure it works correctly?

Reverted Expanded Font Spacing in Console UI mode as concern over other non console screens being affected.

Abstracted unload level logic from both variants of the saving world screen into minecraft.cpp

using text grey instead of raw values in debug screen rendering in console ui mode now

Renamed LoadsaveScreen to LoadWorldScreen

Fixed multiple formatting and header issues mentioned in the pr review
@fileshredder

Copy link
Copy Markdown
Contributor Author

Also, have you tested the nametag outline with shaders (either on OpenGL + Shaders, D3D9 or D3D1) to make sure it works correctly?

I have not, but I could probably give it a try in a bit

@fileshredder fileshredder requested a review from BrentDaMage July 4, 2026 19:57
@fileshredder

Copy link
Copy Markdown
Contributor Author

Also, have you tested the nametag outline with shaders (either on OpenGL + Shaders, D3D9 or D3D1) to make sure it works correctly?

I have not, but I could probably give it a try in a bit

tested it and it seems to work fine

Comment thread source/client/gui/screens/AutosaveWarningScreen_Console.cpp Outdated
Comment thread source/client/gui/screens/AutosaveWarningScreen_Console.hpp Outdated
Comment thread source/client/gui/screens/JoinGameScreen_Console.hpp Outdated
Comment thread source/client/gui/screens/LoadWorldScreen_Console.hpp
Comment thread source/client/gui/screens/ProgressScreen_Console.cpp
Comment thread source/client/gui/screens/ProgressScreen_Console.hpp Outdated
Comment thread source/client/gui/screens/SavingWorldScreen_Console.cpp Outdated
Comment thread source/client/gui/screens/SavingWorldScreen_Console.cpp
Comment thread source/client/gui/screens/SavingWorldScreen_Console.hpp Outdated
Comment thread source/client/renderer/entity/MobRenderer.cpp Outdated
BrentDaMage and others added 3 commits July 4, 2026 23:44
Minecraft::unloadLevel now does the progresspercent thing and now SavingWorldScreen_Console no longer has arbitary time delays in saving

Fixed wrong header accessibility orders

Autosave Warning Screen now uses the timer from Minecraft instead of using it's own m_timer, hopefully not causing issues with variable frames.

Added updateText in SavingWorldScreen_Console and ProgressScreen_console to differentiate text between bothand also update text instead of keeping it static in progressscreen
@fileshredder fileshredder requested a review from BrentDaMage July 5, 2026 15:47
…tioning of the unused debug screen in Build 0033
Comment thread source/client/gui/screens/AutosaveWarningScreen_Console.cpp Outdated
Comment thread source/client/gui/screens/AutosaveWarningScreen_Console.hpp Outdated
Comment thread source/client/gui/screens/JoinGameScreen_Console.hpp Outdated
Comment thread source/client/gui/screens/LoadWorldScreen_Console.hpp Outdated
Comment thread source/client/gui/screens/ProgressScreen_Console.cpp Outdated
Comment thread source/client/gui/screens/SavingWorldScreen_Console.cpp Outdated
@fileshredder fileshredder requested a review from BrentDaMage July 6, 2026 09:05
Comment thread source/client/gui/screens/JoinGameScreen_Console.hpp
Comment thread source/client/gui/screens/ProgressScreen_Console.hpp
Comment thread source/client/gui/screens/SavingWorldScreen_Console.hpp
Comment thread source/client/gui/screens/SavingWorldScreen_Console.cpp Outdated
Comment thread source/client/renderer/entity/ItemRenderer.cpp Outdated
Comment thread source/client/renderer/entity/ItemRenderer.cpp Outdated
@BrentDaMage

BrentDaMage commented Jul 7, 2026

Copy link
Copy Markdown
Member

I will do a 360 build for QA tomorrow, then draft a changelog in our new format and pull upstream. The changelog will have "New features", "Changes", and "Bugfixes" sections like the last.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request feature : gui

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants