Skip to content

Yancey2023/CHelper-Core

Repository files navigation

CHelper

I want to make a command helper for Minecraft Bedrock Edition , so here is CHelper, which means Command Helper.

Clone Project

git clone --recursive https://github.com/Yancey2023/CHelper-Core
# if you clone it without --recursive, you should run the following:
cd CHelper-Core
git submodule update --init --recursive --progress

Multi-platform

project description
CHelper-Core CHelper-Core is the core of CHelper, written in c++
CHelper-Android CHelper-Android is the Android version of the app, depends on CHelper-Core
CHelper-Web CHelper-Web is the web version of the app, depends on CHelper-Core
CHelper-Qt maintain in CHelper-Core for development and debugging purpose

Usage

Help in editing command

When you are inputting command, the app will show you command structure, meaning of the command param you are editing, errors of the command, and suggestions to help you complete command. It also supports syntax highlight.

Help in converting old version command to new version command

Dur to the Minecraft updates, some command has been changed.

It supports convert block data value to block state, and so on.

old command example:

execute @a ~ ~-1 ~ detect ~ ~-1 ~ stone 2 setblock ~ ~ ~ command_block 2

new command example:

execute as @a at @s positioned ~ ~-1 ~ if block ~ ~-1 ~ stone["stone_type"="granite_smooth"] run setblock ~ ~ ~ command_block["facing_direction"=2,"conditional_bit"=false]

Try it

Note: This app is mainly aimed at Chinese users, so the language is Chinese. You can help me support more languages.

CHelper-Web: https://yancey2023.github.io/chelper_web

CHelper-Web lacks some function. To experience more complete functions, please use CHelper-Android.

CPack Document

Cpack(Command Pack) is the resource pack of CHelper(Command Helper).

English

Chinese

Plan

The desired function has been completed, and the new function to be developed is yet to be determined.

  • CPack - a resource pack containing IDs and commands
  • Lexer - transforms command strings into a token list
  • Parser - builds an Abstract Syntax Tree (AST) and find structural errors
  • ID Error - finds ID errors based on the AST
  • Description - get the description of the currently written command param based on the AST
  • Suggestion - get completion suggestions based on the AST
  • Structure - get command structure string based on the AST
  • Target Selector Support - support target selector command param
  • Json Support - support json command param
  • Block State Support - support block states command param
  • Old 2 New - convert old command to new command
  • Syntax Highlight - get the highlight color for displayed commands

Third-party

CHelper-Core

project description license
fmt formatting library MIT license
json a JSON parser and generator for C++ MIT license
utfcpp UTF-8 with C++ in a Portable Way BSL-1.0 license
Hedley enable compiler-specific features while retaining compatibility with all compilers CC0 1.0

CHelper-Qt

project description license
Qt desktop application framework LGPL license

CHelper-Android

project description license
NDK android native development kit Apache License

CHelper-Web

project description license
Emscripten complete compiler toolchain to WebAssembly the MIT license and the University of Illinois/NCSA Open Source License

CHelper-Test

project description license
GoogleTest Google's C++ test framework BSD 3-Clause "New" or "Revised" License

Special Thanks

project description license
caidlist provide IDs and descriptions for Minecraft Bedrock Edition GPL-3.0 license
chinese minecraft wiki provide information in Minecraft CC BY-NC-SA 3.0
  • JetBrains License for Open Source Development

    JetBrains Logo (Main) logo

About

A command IDE for Minecraft Bedrock Edition.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published