1. 唯一真相源 scripts/数据/地图/地面样式配置.lualocal FloorStyleConfig = {}-- ★ 所有地面样式集中定义在这里FloorStyleConfig.STYLES = { ["木地板"] = { texture = "image/地面/木地板_无缝.png", tileSize = 40 }, ["草地"] = { texture = "imag
一、问题链用户截图反馈了三个递进的问题:问题 1:点击地面类型(如食堂地砖),弹窗不关闭,挡住画布无法操作 ↓ 修复 v0.10.94问题 2:地面贴图太大,一块地砖比小人还宽,比例失调 ↓ 修复 v0.10.96(改配置值)问题 3:改了配置值后刷新仍然太大——旧存档的 tileSize=256 优先级高于新 config ↓ 修复 v0.10.97(反转渲染优先级)二、关键代码
问题诊断过程用户报告:编辑器建好房间 → 保存 → 刷新页面 → 进编辑器 → 数据全没了。关键线索:用户发现"校园日"模式刷新后能看到房间,但一进编辑器就没了。这直接指向了编辑器页面自身的初始化逻辑,而非持久化链路。根因地图编辑模式.lua 的 EnsureBlankEditorLayout() 设计意图是"首次打开编辑器提供空白画布",用模块级布尔 editorLayoutClear
UI 重建频率 = 事件分发的可靠性上限。 只要有一帧 SetRoot 销毁了正在处理 pointer 事件的控件,跨重建边界的 Down/Up 对就会被吞。高频仿真 tick 必须在 UI 边界按页面过滤。关键代码(scripts/main.lua HandleUpdate)四步走:先原地处理人员 → 聚合所有仿真 changed → 地图页强制压制 → 只放行显式/登录态变化。-- ma
一、问题本质不是平移公式写错,而是 UrhoX UI 库指针事件派发的两个不对称陷阱叠加:陷阱 现象 根因文件OnPointerMove 不向父冒泡 右键按下 isPanning_=true,但 move 事件永远到不了 mapView urhox-libs/UI/Core/Widget.lua(OnPointerDown/Up 有 parent 冒泡,OnPointerMove 没有)H
四个原则(数据驱动、组件化、组合优于继承、对象池)确实是系统从"能跑"到"能维护"的分水岭。先看看你的游戏现状,再说怎么落地。你的游戏现状分析你的《自由的校园》不是传统战斗游戏,但已经有大量"对抗性交互":已有机制 对应战斗系统概念主角投掷物品(粉笔、扫把) 投射物 / 技能行为违规 → 目击 → 怀疑累积 Debuff 叠加冲突事件 → 保安响应 Boss 技能 / AI 响应链
这是一个很好的思路。RND 的核心——用"预测误差"度量新奇度,驱动探索——可以直接映射到校园小人的认知系统上,而且不需要真的跑神经网络。下面是方案讨论。RND 思想到校园小人的映射RND 原始结构 vs 校园简化版RND 组件 原始含义 校园小人对应目标网络(固定随机) 为每个状态生成固定特征 环境的客观快照:房间类型、物件数、人员密度、卫生度、当前时段预测网络(可训练) 学习预测目标
悬停动画(缩放+旋转)技巧:分离X/Y轴缩放时间,配合随机旋转方向,使用EASE_OUT + TRANS_BACK曲线。 关键代码:func hover() -> void: if disabled: return pivot_offset = size / 2.0 var scale_ratio = clampf(width_full_rot / size.x, 0.5, 1.0) var
现在我对四份设计文档和当前项目状态有了完整的理解。下面基于设计文档的规划和已实现的代码基础,给出整体实现计划大纲。自由的校园 — 实现计划大纲当前基线(v0.10.51)已落地 状态地图编辑器(房间/墙门/地板/素材/人员/外围道路) 成熟,待拆分共享移动内核 + BFS 导航 + 空间服务 已验证通用任务服务 + 校园活动 + 双适配器 已验证学生 AI + 个人计划 + 认知/记
结合你给的“先做可验收闭环、再逐步扩展”的思路,目前优先级需要重新调整。不能继续围绕学生AI不断增加特殊判断。当前主要矛盾已经变成:> 玩家动态建造了教室、厕所、操场,但老师、学生、保洁还不能根据房间能力和校园活动自动领取正确任务。因此,推荐实施顺序不是简单的:```text房间能力服务 -> 活动服务 -> 任务服务 -> 人员调度```而是把它们拆成几个**可以直接看到、可