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

Datapack Debugger

A fabric mod for Minecraft 1.21, which allows you to set breakpoints in datapacks

Загрузки
2K
Подписчики
9
Обновлён
24 июля 2024 г.
Лицензия
GPL-3.0-only

Опубликован 20 июля 2024 г.

Datapack Breakpoint

Introduce

This is a fabric mod for Minecraft 1.21, which allows you to set breakpoints in the game and "freeze" the game when the breakpoint is reached.

Usage

  • Set a breakpoint

In datapack, you can insert #breakpoint into .mcfunction file to set a breakpoint. For example:

#test:test

say 1
say 2
#breakpoint
say 3
say 4

In this case, after the game executes say 2, the game will be "frozen" because it meets the breakpoint.

When the game is "frozen", you can still move around, do whatever you want, just like execute the command tick freeze. So you can check the game state, or do some debugging.

  • Step

When the game is "frozen", you can use the command /breakpoint step to execute the next command. In above example, after the game meets the breakpoint, you can use /breakpoint step to execute say 3, and then use /breakpoint step to execute say 4. When all commands are executed, the game will be unfrozen and continue running.

  • Continue

When the game is "frozen", you can use the command /breakpoint move to unfreeze the game and continue running.

  • Get Macro Arguments

By using /breakpoint get <key>, you can get the value of the macro argument if the game is executing a macro function. For example:

#test:test_macro

say start
#breakpoint
$say $(msg)
say end

After executing function test:test_macro {"msg":"test"}, we passed the value test to the macro argument msg and then the game will pause before $say $(msg). At this time, you can use /breakpoint get msg to get the value test.

Ченджлог

1.1.1Релиз1.21 · 24 июля 2024 г.

Version 1.1.1

New Features

  • For Debug breakpoint clear to clear all caches in mod.
  • While using breakpoint get <key>, leaving the key empty will get all args in this macro function
  • Add more message while executing mod's command

Fix

  • Macro function cannot work.
  • After running any command while the game is in debug mode, the command context will be changed so breakpoint run cannot work.
  • Loop function cannot work well.
  • When the breakpoint is triggered, the message "Breakpoint has triggered" is sent to current command source instead of all players.
1.1.0Релиз1.21 · 22 июля 2024 г.

Version 1.1.0

New Features

Get Function Stack

Use the /breakpoint stack command to get the current function call stack in the game. Example:

#test:test1
say 1
function test:test2
say 2

#test:test2
say A
#breakpoint
say B

At the breakpoint, executing /breakpoint stack will output:

test:test2
test:test

Run Command in Current Context

Use /breakpoint run <command> to run any command in the current context, similar to execute ... run ....

1.0.1Релиз1.21 · 21 июля 2024 г.

Version 1.0.1

Fix

  • Translate the massages.
  • Remove unused dependency
  • Change the inner mod id from datapack-breakpoint to datapack-debugger

Комментарии

Загружаем…