作者chenglap (无想流流星拳)
看板GameDesign
标题Re: [请益] 民国无双 v22
时间Tue Feb 16 12:50:30 2010
※ 引述《zxcmoney (lol)》之铭言:
: 嗯 我先从结论说起
: 我现在有兴趣制作此游戏的
: 战略AI编辑器 与 战术AI编辑器
: 不过我不打算将目前的AI修改到完善
: 除了会避免AI作一般人类可以直接观察到的脑残行为外
: 其他皆遵照原始的AI设定放入对应的判断位子 等有心人士去设定
: 基本上编辑器会将AI行动的判断集中并分成各阶段
: 应该是能很快就找到AI判断的位子
: 总之 在收到原始码後就会开始写
: 如果不满意当时的成果与影响或着
: 相信这游戏直到被世人遗忘也不会有人用这编辑器产生有用的AI
: 无视这个编辑器即可
或者这样说吧.
第一是你需要 source code 时找我我会寄给你. 无论作任何
用途都是可以的.
重点是, 如果你实现了的话, 其实我不可能反对你的做法,
我之前的文章, 主要是将所有最大的困难都说出来, 让你在
做之前先意识到这些困难都是存在的. 而如果你理解了这些
困难, 那你就可以开始做了.
我举出困难并不是说这件事做不到, 或者我不想做这件事,
或者我觉得这件事没价值, 而是我在给你正确的开发资讯,
那是你在设计前一定要先知道的各种资讯.
第二点是, 这样, 如果你有兴趣建立人工智能的话, 比起其
他已说过的话, 我有想过一个比较理想的做法. 根据我看过
你的文章, 我想到一个系统间沟通的方式.
那就是建立「内挂」. 如果你有玩过 online game, 会大概
明白这是甚麽. 内挂本身就是一种人工智能, 而且是一种十
分重要的人工智能.
虽然说那麽多, 做游戏最重要的是觉悟而已, 你觉悟足够,
甚麽都是有可能完成的, 也值得完成的.
这是我看完你的想法之後, 订下的工作时间表,
1. 在游戏里建立「外部资讯取得基制」
也就是先建立一个 function, 那用途是专门取得游戏里
的资料, 这个 function 大概是 in str, out str, 像
是这样.
GetData('Country=国民政府;SP_Plus;TP_plus;');
回应
42;45;
而你要写这个基制, 必先要看完我 source code 里各种
资料架构.
你必须先有了这些资料, 然後才能够测试你的系统.
2. 第二是「命令传达基制」
比方说, 徵兵的命令在玩者操控时是按徵兵, 而电脑的内
挂操作时, 是向游戏输入 command line 「conscription
重庆;民兵;随机将领」
自然该命令的成功和失败都要 feedback
3. 以上两个基制需要建立相关的 lexical analysis engine
, 即是语法分析器. 这点应该在人工智能上相当重要.
简单来说, 就是比方说, 输入「(A+B)*C」给电脑, 电脑
懂得将这条式计出来.
if else 里面的重点在於「if (condition) else」, 就
是条件判定, 条件判定等於算式判定. 算式判定就需要有
这东西, 因此这一部份是一定要先完成的.
4. 基本上有了这两个输出和输入的基制, 外面的东西你才可
以依照你的计划去实行.
然後人工智能的逻辑方面, 以及怎样高度化方面, 有一些专书
, 如果你有兴趣可以去看的.
这些是我能给你的参考资讯, 当然不仅如此, 但站在「分析」
的角度去看, 工作必然是将一件复杂的工作先拆细, 然後再拆
细的部份一个个地去完成. 现在是「分析」的阶段, 也就是说
我们要先找出, 有甚麽工作是需要完成的.
如果我们在处理的是「建造一个系统」的问题, 我相信我们应
该用到工程的做事方式, 也就是「Issue -> Objective ->
User Requirement -> Analysis -> Design -> Implementation
-> Testing」, 应该是先有了分析然後再设计.
我暂时能给你的资讯是这些, 我建议由 1 开始想你的设计. 先
分析「人工智能需要些甚麽资讯」.
--
基於饮水思源的理念, 还是该打的广告,
hkday.net --- 硕果仅存还愿意和其他地区转信的香港 BBS
--
※ 编辑: chenglap 来自: 218.252.90.21 (02/16 12:56)