RX0010

领域: 引擎

错误消息

types.feml 声明的类型数量超过了本引擎能够物化的上限(上限 %s,在类型 %s 处达到)

消息中的 %s 表示引擎抛出错误时填入的具体内容。

小故事

引擎启动时,发现 types.feml 里声明的类型太多了,装不下。这是为什么呢?类型法则是一张静态的表,它的行数有一个声明好的上限。引擎的几何形状,是一个明确的事实,而不是一个碰运气的分配。每个类型造出来的判官,都要住进同一块固定的场地里,场地有多大,早就写好了。这一次,你声明的类型数量,超过了这块场地能容纳的数量,消息里告诉了你上限是多少,以及是在哪个类型那里满的。引擎为什么不干脆把后面的类型丢掉呢?因为丢掉的类型,就是一个没有判官的类型,那比直接拒绝更危险。所以它选择拒绝诞生。修法是:提高 src/engine/lawmaker/lawmaker.h 里的 LAWMAKER_TYPE_MAX,把场地扩大,再重新构建。记住:场地大小是写明的,装不下,就明明白白地说装不下。

文本来自 Rush 引擎的错误目录。