Commit graph

1702 commits

Author SHA1 Message Date
NicoleDyson
1bc57399c8 Fix NullReferenceException in StartConsoleSession when running with BasicIO
In headless/BasicIO mode, ConsoleIO.Backend remains null because
ClassicConsoleBackend is never initialized. StartConsoleSession()
must guard against a null backend to avoid crashing right after
a successful server join.

Without this fix, BasicIO mode (used for unattended / batch
automation with CREATE_NO_WINDOW) crashes with:

  NullReferenceException: Object reference not set to an instance of an object.
  at MinecraftClient.McClient.StartConsoleSession()

The fix adds an early return when ConsoleIO.Backend is null,
which is safe because BasicIO mode does not need interactive
console input handling at all.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-18 21:27:52 +08:00
Anon
6331478e30
Merge pull request #17 from milutinke/fix/shulker-crash 2026-05-07 19:59:30 +02:00
Anon
d55fd75520 Fixed shulker crashing on 26.1 (Structured Components) 2026-05-07 19:57:23 +02:00
copilot-swe-agent[bot]
93d9939378
fix: guard sky-limit block updates
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/c65d23bd-cf8c-4c62-8195-db980026eb94

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-06 20:31:28 +00:00
copilot-swe-agent[bot]
21a52b3bcc
fix: streamline forge translation preload
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/3b2dd335-d070-4067-b864-5584bb94571b

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 20:15:56 +00:00
copilot-swe-agent[bot]
7ce4f82871
feat: discover forge translation mod sources
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/3b2dd335-d070-4067-b864-5584bb94571b

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 20:11:43 +00:00
copilot-swe-agent[bot]
67066a145d
refactor: parse forge mods toml for translations
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/3d9090fb-cdf3-48e7-a7ce-575b54161f0e

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 19:08:22 +00:00
copilot-swe-agent[bot]
d256517e21
feat: load forge mod translations from local jars
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/3d9090fb-cdf3-48e7-a7ce-575b54161f0e

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 19:02:44 +00:00
copilot-swe-agent[bot]
b543825200
chore: finalize resource pack cache toggle
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/70cfa855-cff8-495e-ac06-9a65bb5cc913

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 12:47:41 +00:00
copilot-swe-agent[bot]
b87b5abbe2
feat: add cached resource pack translation setting
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/70cfa855-cff8-495e-ac06-9a65bb5cc913

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 12:32:13 +00:00
copilot-swe-agent[bot]
9f974da00d
chore: finalize resource pack translation support
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/d7467a13-d1ff-4cd6-a332-1ac389c445da

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 12:21:28 +00:00
copilot-swe-agent[bot]
34f45543c3
feat: load chat translations from server resource packs
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/d7467a13-d1ff-4cd6-a332-1ac389c445da

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 12:05:55 +00:00
copilot-swe-agent[bot]
1a1caec30a
Polish console chat visibility implementation
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/159bd460-7950-4afe-9e69-4892220665e1

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 11:36:01 +00:00
copilot-swe-agent[bot]
7bf342baab
Implement console chat visibility controls
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/159bd460-7950-4afe-9e69-4892220665e1

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-05-04 11:17:45 +00:00
Anon
98a1551f6a feat: modernize ReplayCapture
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-04 11:49:44 +02:00
Anon
acabe95801
feat: Added Written Book Support 2026-05-03 20:22:45 +02:00
Anon
12ab759f3b Fix TUI book controls
Polish TUI book navigation and signed-book handling, update localized shortcut text, and document the final PageUp/PageDown interaction.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-03 20:12:52 +02:00
Anon
41b33b6599
feat: Enable Farmer bot support for legacy 1.8 to 1.12.2
feat: Enable Farmer bot support for legacy 1.8 to 1.12.2
2026-05-03 16:43:47 +02:00
Anon
c282f2783c Fix legacy Farmer placement support 2026-05-03 15:46:16 +02:00
Anon
72001554a8 Complete 1.13-1.14 item palettes 2026-05-02 19:22:08 +02:00
Anon
c94be261fd Added Book Support 2026-05-02 17:52:17 +02:00
Anon
05741da9f1 Rename 26.1 structured component folder 2026-04-30 16:22:43 +02:00
Anon
5ad0d55705 Fix 26.1 structured component decoding 2026-04-30 16:18:59 +02:00
copilot-swe-agent[bot]
5279609561
Polish legacy Farmer validation logic
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/395596c2-cc40-4295-8100-a8408243f45b

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-04-17 08:00:41 +00:00
copilot-swe-agent[bot]
9549743c6d
Implement legacy Farmer support updates
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/395596c2-cc40-4295-8100-a8408243f45b

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-04-17 07:55:25 +00:00
Anon
2bccb7f8e9
feat: Handle configuration-state code-of-conduct packets on 1.21.9+ servers 2026-04-15 22:57:27 +02:00
copilot-swe-agent[bot]
e564da3e09
chore: document code-of-conduct payload read
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/672da423-8a3f-412e-833d-a50c9a605b9d

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-04-15 20:51:35 +00:00
copilot-swe-agent[bot]
4dbce45676
fix: accept configuration code of conduct
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/672da423-8a3f-412e-833d-a50c9a605b9d

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-04-15 20:47:18 +00:00
copilot-swe-agent[bot]
c7053ec015
Add %date% variable returning file-safe yyyy-MM-dd format
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/d60853e9-6f56-45f7-8346-a423657c5673

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-04-15 20:21:25 +00:00
copilot-swe-agent[bot]
443f4874df
Suppress duplicate active effect notifications
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/8649d41a-e2aa-4fdd-aee8-96f4b35c9be0

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
2026-04-15 13:46:57 +00:00
BruceChen
248a7a2f6f
Merge pull request #3077 from BruceChenQAQ/bruce/shared-server-mcc-sessions
tools: isolate MCC sessions while sharing local servers
2026-04-12 23:51:25 +08:00
BruceChen
6b986dcddd chore: update ModelContextProtocol package version to 1.2.0 and adjust Consolonia and Sentry package versions 2026-04-12 18:46:57 +08:00
acamq
f3e8f65fe5 fix: correct /bed translation typo 2026-04-12 16:44:51 +08:00
adsicmes
fbacc550e2 fix: correct scoreboard packet parsing for UpdateScore and ScoreboardObjective
UpdateScore Display Name was read with ReadNextString instead of ReadNextChat. In 1.20.4+ Text Components are NBT-encoded, causing ReadNextString to misinterpret the tag type byte as a string length prefix, corrupting the read offset and exhausting the packet queue.

Also fix incomplete Number Format consumption in both UpdateScore and ScoreboardObjective: the styled (Compound Tag) and fixed (Text Component) payloads after the VarInt enum were not being read, leaving stale bytes in the packet queue.
2026-04-09 17:15:55 +08:00
Anon
d96396f74d
Merge pull request #3072 from milutinke/bugfix/srv-resolution 2026-04-08 18:15:22 +02:00
Anon
e0b21dd1d2 fixed the MCC incorrectly restarts the console input reader after transfer in classic mode. 2026-04-08 18:11:26 +02:00
BruceChen
ff00d01fd7 refactor: simplify color handling in ClassicConsoleBackend
- Removed hex color handling logic from ClassicConsoleBackend, streamlining the WriteLineFormatted method.
- Updated ColorHelper to ensure consistent formatting for color codes.
- Ensured console-specific settings are reapplied after backend initialization in Program.cs.
2026-04-08 02:05:26 +08:00
Anon
5a5165e89f Fixed a non-existant configuration packet from crashing the client. 2026-04-07 17:00:01 +02:00
Anon
0e15806722
bugfix: Fixed SRV resolution during transfer 2026-04-07 15:43:12 +02:00
Anon
37271c5988 Fixed SRV resolution during transfer 2026-04-07 15:41:12 +02:00
BruceChen
ad065225ba feat: enhance game language support in settings
- Added documentation for mapping system CultureInfo names to Minecraft game language codes.
- Included support for Tagalog (tl and tl-PH) language codes in the game settings.
2026-04-07 02:03:02 +08:00
BruceChen
0445d95c23 feat: add support for additional game languages in settings
- Added support for Filipino (fil and fil-PH) and Norwegian (no) language codes in the game settings.
- Corrected formatting for existing language codes to ensure consistency and prevent potential issues with language recognition.
2026-04-07 01:58:29 +08:00
BruceChen
f432637710 fix: update GitHub link in MccBannerPanelBuilder
- Changed the GitHub link in the MccBannerPanelBuilder to use the full URL format for better accessibility.
2026-04-06 20:36:12 +08:00
BruceChen
e81700bf0e Fix warnings 2026-04-06 20:36:12 +08:00
BruceChen
44e7f205c8 fix: disable transitive Avalonia compilation in project file
- Added a property to the MinecraftClient.csproj to disable the default Avalonia compilation, preventing file-lock races during parallel builds, as the project does not utilize XAML resources.
2026-04-06 20:36:12 +08:00
BruceChen
5c323772b3 fix: update Crowdin project URL in documentation and settings
- Corrected the Crowdin project URL in README.md, Settings.cs, and contributing.md to the official link.
2026-04-06 19:57:45 +08:00
BruceChen
0f32771075 fix: prevent concurrent restart flood on rapid /reco (#3046)
- Add reentrant guard to Program.Restart: track the active restart
  thread and silently drop concurrent calls from other threads while
  allowing the restart thread itself to chain a new restart (needed
  for AutoRelog retry flow).
- Fix double AutoRelog.OnDisconnectStatic invocation in HandleFailure:
  the method was called once in the error-message branch and again in
  the interactive-mode branch for the same failure event, doubling the
  retry counter increment and potentially spawning duplicate restarts.

Made-with: Cursor
2026-04-06 19:51:17 +08:00
BruceChen
7fd70ccf38 fix: Support hex RGB colors (#RRGGBB) in chat messages (fixes #2054)
Minecraft 1.16+ servers can send custom hex colors in JSON text
components ("color": "#RRGGBB"). MCC's ChatParser.Color2tag() only
recognized the 16 named colors, silently dropping hex values and
leaving gradient/custom-colored chat as uncolored plain text.

- ChatParser: recognize hex color values and emit internal §#rrggbb
  encoding; extend ColorCodeRegex to match the new format
- ClassicConsoleBackend: resolve §#rrggbb to ANSI escape codes via
  ColorHelper before passing to ConsoleInteractive (adapts to the
  configured ConsoleColorMode: 24-bit, 8-bit, 4-bit, or disable)
- McColorParser (TUI): parse §#rrggbb into exact SolidColorBrush
  for full RGB fidelity in Avalonia
- ChatBot.GetVerbatim(): skip the full 8-char §#rrggbb sequence
  instead of only 2 chars, preventing hex digits from leaking into
  stripped text

Made-with: Cursor
2026-04-06 01:19:19 +08:00
BruceChen
7f3b2c26da chore: Update Sentry package reference to version 6.3.0 2026-04-06 00:35:15 +08:00
BruceChen
49b7b98ba8 chore: Update package references for Consolonia and Magick.NET to latest versions 2026-04-06 00:35:15 +08:00