Mojira Archive
MCM-1897

`system.runTimeout()` hangs the client when called with a non-integer tick delay

  • Partner Rank: 3
  • Partner Team Reporting: Noxcrew
  • Verification Build: 1.21.44, 1.21.50
  • Summary: Calling `system.runTimeout()` with a tick delay that is not an integer causes the entire client to hang.
  • Impact: This bug causes hangs during content development, which slows down development as we need to completely restart the game whenever this happens. It is also very difficult to debug due to the lack of diagnostics, amplified by the fact that timing values are often set in config by non-developers.
  • Repro Steps:
    1. Create a behaviour pack with a single script file, containing the following content:
      import { system } from '@minecraft/server'
      // Note the non-integer cooldown
      system.runTimeout(1.5, () => { console.log("hi") }) 
      
    2. Create and open a world with the behaviour pack active
    3. Observe the hang
  • Repro Rate: 100% 
  • Observed Results: The client hangs
  • Expected Results: The script either rounds the value to the nearest integer, or throws an exception
  • Screenshots / Videos Attached: No
  • Regression Builds: Unknown
  • Notes: N/A

Cannot Reproduce

[Noxcrew] Lucy Poulton

2024-12-09, 04:38 PM

2024-12-10, 09:33 PM

2024-12-10, 09:33 PM

0

1

1.21

-