Mojira Archive
MCM-1885

Long commands executed through scripting causes client to crash without error logs, exceptions, asserts, or messaging

Partner Rank: Critical

Verification Builds: 1.21.41, Build 28695439

Regression Builds: Unknown

Summary: Long commands executed through scripting cause the game client to crash without error logs or messaging.

Affects currently Live Content: No (But is impacting upcoming content)

Impact: Game crashes when long commands are run in scripts, preventing debugging and slowing content development for creators.

Repro Steps:

  1. Run a long command using scripting, such as:
     
    execute positioned ${x} ${y} ${z} unless block ~ ~ ~1 coal_ore unless block ~ ~ ~1 iron_ore unless block ~ ~ ~1 gold_ore unless block ~ ~ ~1 redstone_ore unless block ~ ~ ~1 lapis_ore unless block ~ ~ ~1 diamond_ore unless block ~ ~ ~1 emerald_ore unless block ~ ~ ~1 ancient_debris unless block ~ ~ ~1 oak_slab unless block ~ ~ ~1 spruce_slab unless block ~ ~ ~1 birch_slab unless block ~ ~ ~1 jungle_slab unless block ~ ~ ~1 acacia_slab unless block ~ ~ ~1 dark_oak_slab unless block ~ ~ ~1 blackstone_slab unless block ~ ~ ~1 blackstone unless block ~ ~ ~1 bedrock unless block ~ ~ ~1 end_stone unless block ~ ~ ~1 obsidian unless block ~ ~ ~1 crying_obsidian unless block ~ ~ ~1 end_portal_frame unless block ~ ~ ~1 anvil unless block ~ ~ ~1 iron_block unless block ~ ~ ~1 gold_block unless block ~ ~ ~1 diamond_block unless block ~ ~ ~1 emerald_block unless block ~ ~ ~1 lapis_block unless block ~ ~ ~1 redstone_block unless block ~ ~ ~1 beacon unless block ~ ~ ~1 stone unless block ~ ~ ~1 cobblestone unless block ~ ~ ~1 stonebrick unless block ~ ~ ~1 tuff unless block ~ ~ ~1 deepslate unless block ~ ~ ~1 deepslate_copper_ore unless block ~ ~ ~1 deepslate_iron_ore unless block ~ ~ ~1 deepslate_gold_ore unless block ~ ~ ~1 deepslate_lapis_ore unless block ~ ~ ~1 deepslate_redstone_ore unless block ~ ~ ~1 deepslate_diamond_ore unless block ~ ~ ~1 deepslate_emerald_ore unless block ~ ~ ~1 ancient_debris unless block ~ ~ ~1 netherite_block run setblock ~ ~ ~1 air destroy
  2. Observe that the client crashes without any error logs in com.mojang or visible debug messages (such as a content log error, assertion, watchdog message, or log files).

Observed Results: The game client crashes when executing long commands without any error messaging or logs.

Expected Results: The client should throw an exception, log an error message, or ignore the command with clear feedback to the creator.

Screenshots/Videos attached: No

Notes:

  • This is a pack created by a sub-creator, BLOCKLAB Studios is acting as publisher to bring this pack to the marketplace. As such, we did not develop this pack, but are involved from a QA standpoint.
  • We have educated the sub-creator to use scripting APIs to make use getBlock and setBlock* APIs instead of this huge (and frankly ugly) command chain. From a QA and observability standpoint it isn't ideal having to burn so many hours when the game should really be catching these errors and surfacing meaningful and actionable error messages.

Cannot Reproduce

57Digital

2024-10-31, 02:55 PM

2024-11-19, 05:02 PM

2024-11-19, 05:02 PM

0

0

1.20, 1.21

-