FCC 脚本语言
支持类、继承、函数、宏、条件和循环,让游戏逻辑以熟悉的类 C 语法表达。
2D GAME ENGINE & RUNTIME
FancyBox2D 是面向 2D 游戏与交互式应用的运行时框架:以 Go 实现核心,以 Ebiten 负责图形呈现,并提供类 C 语法的 FCC 脚本开发体验。
CAPABILITIES
从对象、脚本到绘制命令,FancyBox2D 将运行时的核心环节组合在一起。
支持类、继承、函数、宏、条件和循环,让游戏逻辑以熟悉的类 C 语法表达。
以 Root 对象树组织窗口、文本、图像、地图与人物,并通过参数和方法组合交互行为。
对象系统生成设备无关的 DrawCmd 绘制命令,由 Ebiten 后端执行 GPU 呈现。
使用 launcher.exe 直接运行 FCC 脚本,适合快速预览、演示与 Windows 开发流程。
objsys.dll 以 c-shared 产物提供宿主集成入口,与独立启动器共享同一引擎核心。
VS Code / Qoder 插件提供 FCC 语法高亮与补全、F5 一键运行、运行时追踪面板,以及 ALE 动画资源预览与编辑(偏移十字线、播放速度、帧内脚本、帧序调整)。
浏览 FCC 语法、内置函数、对象属性、系统方法与事件参考。
进入手册WORKFLOW
FCC 源文件经过扫描、宏处理和语法解析后由解释器执行;对象树生成绘制命令,Ebiten 在屏幕上完成渲染。
DOCUMENTATION
现有手册收录 900 余条语法、对象、方法、函数与事件参考,覆盖脚本开发的常用入口。
RELEASE NOTES
按日期罗列各次更新的内容,新的在上、历史的在下。
\r\n 此前既不换行、又把控制字符画成方框(字体没有对应字形)。本轮按原版逐字符走串的规则移植:遇到回车换行先把当前段画出去、纵坐标下移一行、横坐标回到左缘;量尺寸时宽度取各行最宽、高度为各行之和;空行只占一行高度不画任何字;末尾多写的分隔符不会凭空多出一行。选择字体前先剥掉控制符,方框随之消失。文本对象的自动尺寸与水平/垂直对齐都从同一处量取,因此多行排版自动正确。#define,不污染脚本即可用条件编译做分支调试;宏在加载启动脚本之前应用,系统脚本不受影响,取消勾选不会残留,重启后仍生效。③运行脚本不再自动跳到输出面板抢焦点,跟踪记录照常写入调试面板。④新增「显示运行输出」命令与标题栏按钮,按需把运行日志提到输出面板,同时把「开始运行 / 已退出 / 启动失败」三条生命周期行镜像进跟踪面板,隐藏输出面板也不丢信息。改动只涉及本扩展自己的输出通道,其他扩展的日志互不干扰。dx/dy + fight 的攻击判定点用红色小叉标出,位置相对帧偏移原点(即十字线交点);③w/h 占地用黄色阴影线菱形铺出,格子从帧原点起算、相邻格共边贴合;④两个复选框默认勾选,改帧脚本即时重绘;⑤帧脚本里的汉字乱码自动按 GBK 转成 UTF-8——fw2 时代的资源把字符串存成 GBK 字节并带尾部填充空字符,转码必须在运行时一侧完成,因为导出成 JSON 时非法字节已被替换掉,编辑器侧无从挽回;⑥附带处理空字符尾巴、前导分号容错、帧条徽标与叠加层扩界。占地轴向经用户两次实机指正后定稿:w 轴斜向右上、h 轴斜向右下,格心按等轴网格计算,与地图格同构。class usermap:bktile 后执行 new usermap,实例化的是内建方格地图而非脚本类,类体(loadtle / indexdata 等参数与方法)从不生效。根因是 new 的类解析先查内建注册表、命中即返回,而引擎为早期测试脚本自加的 "usermap" 内建注册(原版引擎并无此注册名)抢跑了同名脚本类。