CHelper 网页接口 / JavaScript 接口文档
如果有不明白的地方,可以直接参考CHelper 网页版的内核对接方式。 编译内核(可选)在CHelper 内核文档中已经包含了内核的编译步骤,你甚至可以根据需求定制化内核再进行编译。如果嫌麻烦或者实在不会编译,你也可以直接使用编译好的内核。 资源包生成(可选)通过运行代码可以读取 json 文件生成更加利于程序读写的二进制文件资源包。如果嫌麻烦或者不会生成,你也可以直接使用生成好的资源包。 与 JavaScipt 代码交互通过观察CHelper-Web这个项目,可以发现:在src/assets目录下,有 1 个wasm格式的文件是生成好的内核,6 个cpack格式的文件是生成好的资源包,你可以直接使用这些文件。在src/core目录下,libCHelperWeb.js用于加载wasm文件,并且提供了 js 的调用方式: 123456789101112131415161718192021222324252627282930313233343536373839404142434445export class CHelperCore { constructor(cpack)...
CHelper 安卓接口 / Java 接口文档
如果有不明白的地方,可以直接参考CHelper 安卓版的内核对接方式。 编译内核(可选)在CHelper 内核文档中已经包含了内核的编译步骤,你甚至可以根据需求定制化内核再进行编译。如果嫌麻烦或者实在不会编译,你也可以直接使用编译好的内核。 在build.gradle.kts中添加以下内容: 123sourceSets.all { jniLibs.srcDirs("libs")} 然后在libs的目录下对应的架构目录添加编译好的动态库文件。 资源包生成(可选)通过运行代码可以读取 json 文件生成更加利于程序读写的二进制文件资源包。如果嫌麻烦或者不会生成,你也可以直接使用生成好的资源包。 与 java 代码交互你可以直接使用 CHelper-Android 项目的内核交互相关代码:https://github.com/Yancey2023/CHelper-Android/tree/master/app/src/main/java/yancey/chelper/core 需要注意的是,如果你开启了代码混淆,那么你需要在代码混淆配置文...
CHelper 内核文档
CHelper 内核包含了语法解析、错误检测、补全提示、命令结构、参数解释、语法高亮、旧命令语法等功能,为不同平台提供同一套内核。我们的理念是通过一个内核打通所有平台,甚至支持网页版。 资源包首先讲一下工作流。我们使用 json 格式写资源包,其中详细的格式请参考CPack 文档。内核读取 json 文件后,可以把数据存储到二进制文件中给生产环境进行读取。二进制文件存储时不会记录字段名,存储更加紧凑,读写性能更好。对了方便资源包的读写,我们还设计了一个序列化框架,它同时支持 json 格式和二进制的读写,为以上工作流提供了统一的接口。 其次是关于资源包的撰写。目前我们维护了 6 个资源包分支,分别是正式版、测试版、中国版以及它们的开启实验性玩法后的分支。关于 ID 的获取,这里分享感谢 ProjectXero 开发的ID 生成工具,它真的帮助了我解决 ID 获取的难题,我在这个项目的基础上进行二次开发,使其支持导出 CHelper 的资源包格式。关于命令的语法声明,我们采用的是语法树的设计,将每个参数当作一个语法节点,通过树的结构串在了一起。 最后是一些有待改进的地方,目前实在还...
CHelper更新日志
v0.3.11 20250714 修复:分数范围补全提示异常 修复:say命令和tell命令解析没有正确匹配message参数 v0.3.10 20250713 增加:设置界面支持不显示命令错误原因 修复:json字符串补全提示错误且导致软件崩溃 修复:紧凑模式下如果注释不存在会显示null 修复:目标选择器使用quantity字段使用不等号时解析出错 修改:将所有ID同步到最新版 v0.3.9 20250708 修复:json字符串补全提示错误 v0.3.8 20250708 修复:部分情况下应用崩溃 v0.3.7 20250706 修复:目标选择器补全提示缺失 v0.3.6 20250704 修复:json文本解析错误 修复:部分情况下,文本变更时补全提示不会刷新 v0.3.5 20250704 新增:本地命令库支持的数据导入导出 修复:部分情况下应用崩溃 修改:execute命令的命令结构会把中间的参数用…代替以减小长度 修改:将所有ID同步到最新版 v0.3.4 20250607 修复:悬浮窗模式返回键失效 v0.3.3 20250606 ...
CommandFallingBlock
简介CommandFallingBlock 是一个 fabric 的模组,增加了fallingblock指令来实现方便地生成下落的方块。 支持的游戏版本:1.16.5, 1.18.2, 1.20.*, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4 模组怎么用指令 fallingblock moveFromPos <posStart> <motion> <hasGravity> <block> [age]fallingblock moveFromBlockPos <posStart> <motion> <hasGravity> <block> [age]类似于原版下落方块的效果,碰到障碍物会停止,并且控制初速度和是否受重力影响 fallingblock moveFromPosByTick <posStart> <motion> <hasGravity> <tickMove> <block> [age...
CHelper
CHelper 是一个开源的我的世界基岩版命令助手,致力于为我的世界指令玩家提供帮助。 网页版(暂时只有命令补全):https://www.yanceymc.cn/chelper 安卓版(功能更全):https://www.yanceymc.cn/api/chelper/CHelper-latest.apk 我们的功能 提供命令的补全提示,实时显示语法结构、参数解释、命令错误,并支持语法高亮。 帮助您把旧语法命令转为新语法命令。 公共命令库,您可以上传自己的命令,也可以查看别人上传的命令。 私有命令库,您可以在里面储存自己的命令。 我们的优势 强大的自研内核:我们拥有自研的内核,它支持所有命令语法。 开源免费:我们的代码完全公开,使软件可持续发展。 跨平台:我们支持所有的平台,包括安卓端、电脑桌面端、网页端。 维护积极:我们能快速适配最新的命令语法,并持续更新软件功能。 为什么想做这个项目受到 ProjectXero 的命令助手项目的启发,我想自己设计一个命令助手,我认为这真的是一件很酷的事情!!! 也许是受到开源精神的影响吧,我决定把整个项目开源,以此来吸引更多加入开发!!...
使用GitHub Action在服务器同步Hexo博客信息
本文章只是记录一下步骤,如果你想看更加详细的文章,可以参考以下内容: https://cloud.tencent.com/developer/article/1720500 https://github.com/marketplace/actions/ssh-deploy 新建 GitHub Action在.github/workflows目录下新建一个deploy.yml文件,内容如下: 1234567891011121314151617181920212223242526272829303132name: deployon: push: branches: - mainjobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Node uses: actions/setup-node@v4 with: cache: ...
使用iframe预览pdf文件
我希望可以在网页中使用 iframe 用预览 pdf 文件,于是我打算使用 pdf.js,在使用的过程中也遇到了一些坑,于是在这里记录下来。 下载去https://github.com/mozilla/pdf.js/releases下载最新的代码,解压。 修改源码在web目录下,找到viewer.html,打开,在<head>标签下,添加如下代码: 1<meta name="referrer" content="same-origin" /> 在web目录下,找到viewer.mjs,打开,找到HOSTED_VIEWER_ORIGINS变量,根据你的网址修改它的值。为了确保当前页面是你的服务器,建议只修改HOSTED_VIEWER_ORIGINS的值,而不是像网上的某些做法一样去除同源检查。 12345const HOSTED_VIEWER_ORIGINS = [ "null", "https://www.yanceymc.cn", "https://yanc...
CPack 说明文档
CPack 是什么Cpack(Command Pack)是 CHelper(Command Helper)的资源包。 CHelper 是我的世界基岩版的命令助手。 项目源码: https://github.com/Yancey2023/CHelper-Core manifest.json在资源包的根目录里应该存在一个叫做manifest.json的文件用来存储命令包的基本信息: 1234567891011121314{ "name": "资源包示例", "description": "CHelper扩展包的官方示例", "version": "1.20", "versionType": "release", "branch": "vanilla", "author": "Yancey", "updateDate...