翔鹰帝国网|帝国时代论坛|帝国时代系列|神话时代
 找回密码
 注册翔鹰会员(昵称)
搜索
楼主: wongyuhua

[MOD 作品] 帝国2征服者1.5窃取特色单位MOD

  [复制链接]

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-3-26 16:30:45 | 显示全部楼层
本帖最后由 风的颜色 于 2025-3-26 22:37 编辑
wongyuhua 发表于 2025-3-26 02:46
任何AI都是玩多了就能摸清脾气,不管是随机地图还是战役地图,另外∞+500=∞,随机地图每天都不同,多500 ...

请教老师,“盟友的城镇中心等于0”代码该怎么写?是 (player-building-type-count town-center any-ally == 0) 么?如果去请教大模型AI的话,根本不靠谱,比如 (delete-building castle),它建议我应改成 (delete-building castles),然而进游戏后反倒会报错。所以,我对现在的大模型AI非常地怀疑。
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-3-26 23:44:24 | 显示全部楼层
风的颜色 发表于 2025-3-26 16:30
请教老师,“盟友的城镇中心等于0”代码该怎么写?是 (player-building-type-count town-center any-ally  ...

town-center与any-ally对调位置,前面应该是players,你少了个s
现在的大模型只不过是替你百度、必应、谷歌一下,然后选一个匹配度、点击率、转载率等参数最高的相关网页提取内容作为答案,用的是概率算法而不是逻辑推理,大概率是知乎、B站、知道、贴吧、百家号的相关回答。可是大众化、随大流的东西不一定是正确的,因为真理往往掌握在少数人手里,稍微专业或封闭一点的东西在网上并没有现成答案,帝国的AI就是个典型的小众化的东西,有现成的教程,大模型接触不到,只好故作高深的用它懂的英语语法给你分析一下,可是代码遵守的是各种程序语言自己的语法,不是英语的语法
帝国2征服者1.5窃取特色单位MOD
http://www.hawkaoe.net/bbs/thread-139689-1-1.html
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-3-27 23:14:00 | 显示全部楼层
wongyuhua 发表于 2025-3-26 23:44
town-center与any-ally对调位置,前面应该是players,你少了个s
现在的大模型只不过是替你百度、必应、谷 ...

非常感谢!

我把我的设定参数传上来,老师看看有无逻辑上的硬伤或遗漏:

1.敌士兵>17,敌村民>3;己士兵<7,己村民=0,己TC=0,己市场=0,己船坞=0;没有盟友。=>投降。(注:或许还剩余兵营、靶场、马厩、攻城武器厂、城堡。但无资源维持生产。)

2.敌士兵>17,敌村民>3;己士兵<7,己粮食<50(不能生产村民),己村民=0,己TC>0,己市场=0,己船坞=0;没有盟友。=>投降。(注:或许还剩余兵营、靶场、马厩、攻城武器厂、城堡。但无资源维持生产。)

3.敌士兵>17,敌村民>3;己士兵<7,己村民=0,己TC=0,己兵营=0,己靶场=0,己马厩=0,己攻城武器厂=0,己城堡=0,没有盟友。=>投降。(注:或许还剩余市场船坞获取资源,但生产车间尽毁,纵使有资源也无法生产。)

4.敌士兵>17,敌村民>3;己士兵<7,己村民=0,己TC=0,己市场=0,己船坞=0;盟村民=0,盟TC=0,盟市场=0,盟船坞=0。=>投降。(注:或许我盟还剩余兵营、靶场、马厩、攻城武器厂、城堡。但无资源维持生产。)

5.敌士兵>35,敌村民>3;己士兵<7,己村民=0,己TC=0,己兵营=0,己靶场=0,己马厩=0,己攻城武器厂=0,己城堡=0;盟士兵<7,盟村民=0,盟TC=0,盟兵营=0,盟靶场=0,盟马厩=0,盟攻城武器厂=0,盟城堡=0。=>投降。(注:或许我盟还剩余市场船坞获取资源,但生产车间尽毁,纵使有资源也无法生产。)

6.敌士兵>17,敌村民>3;己士兵<7,己村民=0,己TC=0,己兵营=0,己靶场=0,己马厩=0,己攻城武器厂=0,己城堡=0,己市场=0,己船坞=0;盟士兵<300。=>投降。(注:自己兵源枯竭了,且什么都不能再生产,战争与自己已全无干系。)




另外,询问一下老师,DE版的战役,有啥软件能够拆解、分解呢?
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-3-28 01:39:21 | 显示全部楼层
你这有些条件过于复杂了,我认为人口、资源才是最重要的,从来不将兵营、靶场、马厩、攻城武器厂和船坞作为投降条件,如果村民都造不起了,有那些军营又能怎样?18个长枪兵也不一定干得过6个条顿武士、投石车、会放风筝的蒙古突骑、长弓兵或火枪手,18个掷矛手遇到6个哥特近卫军或重骑士也是个笑话。所以这种简单的数量对比不太靠谱,我倾向于碾压级的倍数差距或者干脆少于3个士兵才投降。而且一条规则是有行数限制的,旧版貌似最多12行,DE版应该多一些但我没测试过。

战役的问题,请咨询战役专区的朋友,我都快20年没研究战役了,所以不了解
帝国2征服者1.5窃取特色单位MOD
http://www.hawkaoe.net/bbs/thread-139689-1-1.html
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-3-29 13:09:34 | 显示全部楼层
请教老师,我认为应该这样写才是对的,同时大模型也说格式没错,但是进入到游戏中却报错,这是为什么?——


(defrule
        (game-time > 1200)
             (players-military-population any-enemy > 17)
             (players-civilian-population any-enemy > 3)
             (military-population < 7)
             (unit-type-count villager == 0)
             (building-type-count dock == 0)
             (or
                     (building-type-count town-center == 0)
                     (and
                             (building-type-count town-center > 0)
                             (food-amount < 50)
                             (not (player-in-game any-ally))
                      )
              )
        =>
                (delete-building castle)
                (delete-building watch-tower-line)
                (resign))
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-3-29 15:10:21 | 显示全部楼层
本帖最后由 wongyuhua 于 2025-3-29 15:12 编辑
风的颜色 发表于 2025-3-29 13:09
请教老师,我认为应该这样写才是对的,同时大模型也说格式没错,但是进入到游戏中却报错,这是为什么?—— ...

and只能搞两个并列条件,三个条件就得分级,其中两个用and并列为一个,再跟另一个条件用and并列,注意多一组括号
帝国2征服者1.5窃取特色单位MOD
http://www.hawkaoe.net/bbs/thread-139689-1-1.html
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-3-29 18:23:36 | 显示全部楼层
wongyuhua 发表于 2025-3-29 15:10
and只能搞两个并列条件,三个条件就得分级,其中两个用and并列为一个,再跟另一个条件用and并列,注意多一 ...

这么写对么?但进入游戏后依旧报错。可能我没理解您的意思。干脆,您复制粘贴,修改修改我写的代码。我特长还是对比和举一反三,我领会别人意思方面确实是个短板。

(defrule
        (game-time > 1200)
             (players-military-population any-enemy > 17)
             (players-civilian-population any-enemy > 3)
             (military-population < 7)
             (unit-type-count villager == 0)
             (building-type-count dock == 0)
             (or
                     (building-type-count town-center == 0)
                     (and
                             (building-type-count town-center > 0)
                             (food-amount < 50)
                             (and
                                  (not (player-in-game any-ally))
                              )
                      )
              )
        =>
                (delete-building castle)
                (delete-building watch-tower-line)
                (resign))

回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-3-30 01:07:39 | 显示全部楼层
风的颜色 发表于 2025-3-29 18:23
这么写对么?但进入游戏后依旧报错。可能我没理解您的意思。干脆,您复制粘贴,修改修改我写的代码。我特 ...

很多AI里都有(or(or()))这样的嵌套条件,and也是一样的,三个条件需要两个and或or,四个条件需要三个and或or,写直观一点就是:
(and(***********)
       (and(*********)
              (*********)
       )
)
帝国2征服者1.5窃取特色单位MOD
http://www.hawkaoe.net/bbs/thread-139689-1-1.html
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-3-30 15:40:25 | 显示全部楼层
再请教老师一个问题:

我打开AGE查看到贸易船的内部名称是:COGXX。这明显不是贸易船的英文拼写,而且格式好像也不对,它是大写的。于是我请教大模型,得到最有可能是“trade ship”。然而,当我把:

(unit-type-count trade-ship == 0)

写入per文件的时候,却报错。为什么?贸易船的英文拼写是啥?
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-3-31 01:31:49 | 显示全部楼层
风的颜色 发表于 2025-3-30 15:40
再请教老师一个问题:

我打开AGE查看到贸易船的内部名称是:COGXX。这明显不是贸易船的英文拼写,而且格式 ...

我记得决定版在AGE中是显示完整名称的。而且论坛的教程里都有,再不济,看下别的AI也知道是trade-cog吧
帝国2征服者1.5窃取特色单位MOD
http://www.hawkaoe.net/bbs/thread-139689-1-1.html
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-3-31 19:31:10 | 显示全部楼层
本帖最后由 风的颜色 于 2025-3-31 19:32 编辑
wongyuhua 发表于 2025-3-31 01:31
我记得决定版在AGE中是显示完整名称的。而且论坛的教程里都有,再不济,看下别的AI也知道是trade-cog吧 ...

这个真没撒谎,无论AGE还是Definitive大典,标示的都是“COGXX”。至于上“论坛的教程”去看,以前没上过,后来也不想上。首先是论坛网速比蜗牛都慢,一个个去翻看,简直是在磨练人的耐性。另外,更主要的还是因为AI教程太枯燥深奥,自己不想学。我对AI要求不高,不想花太多精力下去。就像现在改了个“不轻易投降设定”,我已经非常满足。遇到不会的请教大模型,连大模型都解决不了的,上论坛向老师请教,我觉得已经够了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册翔鹰会员(昵称)

x
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-3-31 22:57:03 | 显示全部楼层
风的颜色 发表于 2025-3-31 19:31
这个真没撒谎,无论AGE还是Definitive大典,标示的都是“COGXX”。至于上“论坛的教程”去看,以前没上过 ...

我做任何游戏MOD一般会用英文版游戏,如果你AGE调用英文语言文件,左侧名称栏就是英文全称。AI教程中只有UP补丁新增的高级命令或策略比较难,原版那些命令对于英语好的文科生可以说是几乎零门槛。我就是不懂编程的文科生,但在MOD这种小众问题上,精通多种编程语言的大模型反而不如我
帝国2征服者1.5窃取特色单位MOD
http://www.hawkaoe.net/bbs/thread-139689-1-1.html
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-4-1 23:02:33 | 显示全部楼层
本帖最后由 风的颜色 于 2025-4-4 15:05 编辑
wongyuhua 发表于 2025-3-31 22:57
我做任何游戏MOD一般会用英文版游戏,如果你AGE调用英文语言文件,左侧名称栏就是英文全称。AI教程中只有 ...

该帖好像有冒犯到了,收回删除,sorry!
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-4-2 02:44:36 | 显示全部楼层
请问老师,收集到的圣物少于3,代码该怎么写?

(up-compare-goal gl-gathered-relics < 3) 是错的

(gl-gathered-relics < 3) 也是错的

(relic-class < 3)么?好像不是。

(up-compare-goal relic-count < 3) 好像也不是。
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-4-2 03:34:35 本帖来自手机 | 显示全部楼层
本帖最后由 wongyuhua 于 2025-4-2 14:15 编辑

我说的是AGE启动界面调用游戏的英文语言文件language,决定版我记得是个txt文本,1.5版是dll。圣物我没在AI里用过,你写(up-resource-amount amount-relics < 3)试试,白天基本打不开论坛,只有后半夜论坛速度还可以
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-4-2 03:34:41 本帖来自手机 | 显示全部楼层
本帖最后由 wongyuhua 于 2025-4-2 14:27 编辑

语言文件路径中选择en文件夹,别选zh

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册翔鹰会员(昵称)

x
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-4-7 20:41:10 | 显示全部楼层
wongyuhua 发表于 2025-3-24 00:17
是对的。所有城堡被推倒之前绝不投降,一方面帮盟友吸引火力,还可以继续造兵、造投石机和自爆兵偷偷搞破 ...

我在一个叫《Brother Clement》的AI里看到这两个defrule。这就解释了有些AI投降后为啥会不攻击人。但仍没法解释有些战役AI投降后,单位不攻击,但箭塔城堡会攻击。

(defrule
    (game-time >= 1800)
    (building-type-count monastery == 0)
=>
    (set-stance every-enemy ally)
    (set-stance every-neutral ally)
    (resign)
)

(defrule
    (goal diplo-auto-resign 1)
    (game-time >= 1800)
    (civilian-population <= 10)
=>
    (set-stance every-enemy ally)
    (set-stance every-neutral ally)
    (resign)
)
回复

使用道具 举报

6

主题

0

精华

970

积分

伯爵

耕战
9
鹰币
184
天龙币
0
回帖
495
附庸关系0
发表于 2025-4-7 20:46:07 | 显示全部楼层
wongyuhua 发表于 2025-4-2 03:34
我说的是AGE启动界面调用游戏的英文语言文件language,决定版我记得是个txt文本,1.5版是dll。圣物我没在AI ...

非常感谢!“自制不轻易投降设定”终于完成,以后就是复制粘贴的事情了。
回复

使用道具 举报

30

主题

0

精华

3456

积分

公爵

耕战
347
鹰币
4043
天龙币
0
回帖
1168
附庸关系0
 楼主| 发表于 2025-4-7 22:21:14 | 显示全部楼层
风的颜色 发表于 2025-4-7 20:41
我在一个叫《Brother Clement》的AI里看到这两个defrule。这就解释了有些AI投降后为啥会不攻击人。但仍没 ...

原因应该就是你找到的类似规则。帝国2的外交切换偶尔会有些bug,我日常打局消灭共同敌人之后,有时会改变外交跟之前的盟友决战,我之前在它家帮忙建的防御城堡有时也不会主动攻击,命令城堡攻击一次后才正常
帝国2征服者1.5窃取特色单位MOD
http://www.hawkaoe.net/bbs/thread-139689-1-1.html
回复

使用道具 举报

本版积分规则

排行榜|小黑屋|翔鹰帝国

GMT+8, 2025-5-1 07:13 , Processed in 0.160057 second(s), 203 queries , File On.

Powered by Hawk Studio  QS Security Corp.® Licensed

Copyright © 2001-2023, Hawkaoe.net All Rights Reserved

快速回复 返回顶部 返回列表