Board logo

标题: 三国策略游戏之算法篇 [打印本页]

作者: 陈珺    时间: 2004-11-26 18:28

序言
长期以来,游戏的算法问题一直困扰着广大程序员和玩家,即使是一些经典之作也不例外。在本文中主要讨论三国策略游戏简单的算法问题,至于复杂的算法问题还希望大家在以后的实践中摸索。
算法是函数解析式的集合。
由于电脑对一些数学符号的输入不支持或不方便,为了更方便的写本文,特整理了本文所用到的数学符号:
A^B A的B次方
A^(1/ A的B次方根
log A B 以A为底,B的对数
A/B 分数
关于三国策略游戏的一些常用变量:
wl 武力
zl 智力
zz 政治
ml 魅力
ts 统率
ww 威望
yl 义理
tl 体力
作者: 青木风亮    时间: 2004-11-26 18:38



QUOTE:
S^B(A) A的B次方根

这个可以写成A^(1/B)
作者: 陈珺    时间: 2004-11-27 16:52

第一节 变量命名和公式表示
一.变量命名
如果所有变量都用中文表示,那么一定很麻烦.由于研究算法的需要,需要用一套符号来代替它.
<一>名词命名
名词的命名通常为该变量的汉语拼音首字母组合.
注意:仅是在通常情况下,有些特殊情况有所不同
以下归纳了要用到的符号:
j-武将
wj-我方武将
dj-敌方武将
ny-农业值
sy-商业值
<二>动词命名
通常用该变量的英文单词的缩写来命名.对于不懂的英文单词可以暂时用中文代替.
以下归纳了要用到的符号:
att 攻击
def 防御
add +
sub -
mul *
div /
<三>下标
当遇到一个动作有多种实现方式的时侯就需要用到下标.比如要表示我方对敌方的攻击值,攻击值有很多方面,有火攻的攻击值,水攻的攻击值,等等
下标用[]表示,比如:wjgj[hg],wjgj[sg],下标通常用汉语拼音首字母表示
二.公式表示
1.符号
cin 输入
cout 输出
2.表示法:cin(),cout()
例:cout(wfgj[j])=cin(wjwl)/cin(djwl)*cin(wjbl)就代表:
我方武将攻击=我方武将武力/敌方武将武力*我方武将兵力
思考以下式子的意义)
1.   cout(wjgj)=cin(wjwl)/cin(djwl)*cin(wjbl)
2.   cout(djsubtl)=cin(wjwl)/cin(djwl)*cin(djtl)
3.   cout(wjtl)=cin(wjtl)-cin(wjsubtl)
作者: 幽浪    时间: 2004-11-27 17:18

我建议你直接用中文得了。
例:
攻击效果=有效攻击-有效防御

至于程序实现,由程序员搞定。
象上文弄得,伪代码不象伪代码。

难过。
作者: 陈珺    时间: 2004-11-27 17:27



QUOTE:
原帖由幽浪于2004-11-27, 17:18:03发表
我建议你直接用中文得了。
例:
攻击效果=有效攻击-有效防御

至于程序实现,由程序员搞定。
象上文弄得,伪代码不象伪代码。

难过。

搞这些符号,只是为了方便打字,如果用中文打字,我还不得累死.
作者: 幽浪    时间: 2004-11-27 17:46

到开发的时候,接过雷锋枪的同志会累死。
作者: 金圭子    时间: 2005-1-4 14:25

这个后来呢??
作者: kingofworl    时间: 2005-1-4 14:34

先顶一下,期待接下来的
作者: 血→霸图    时间: 2005-1-7 15:23

。。。   真是。。。复杂。。




欢迎光临 轩辕春秋文化论坛 (http://www.xycq.org.cn/forum/) Powered by Discuz! 5.0.0