搜索
查看: 10202|回复: 32

[原创]人物属性改良V2.1-新相性

[复制链接]
2005-6-9 12:26:55

主题

好友

3015

积分

刺史

人物属性改良V2.1-新相性


  本文试图在《人物属性改良(非完全版)》一文的基础上,对其中部份内容的实现提出少许思路和方式。因为我不是专业编程者,仅粗通C/C++和VB、ACCESS和SQL,故无法完全从在游戏程序编写者的视角看待问题,并且不排除存在编程角度上的认知错误,望方家见谅。

    V2.1讨论新相性。新相性=价值观+人际关系+亲近程度+性格。

  非完全版中,对于相性是这样阐述的:

  “认为相性不应当是一个单纯的数值,对其进行改良,将其混合化,相性=志向+关系+性格。志向追求:野心、自保、正统。交际关系:亲属、师门、朋友、同乡、部属。性格状况:急躁-稳重、热烈-冷漠、狂傲-谦卑、忠义-功利。每项有强弱,以1-3表示弱-强,3适用于少数人极强的性格,1和2适用于大部分人。没有0,即不存在某一种性格不偏不倚。”

  赞同并吸纳琅琊网友“国士无双”的相关回复。前文中设了三项志向、四组性格,不足以描述人物特质。修改如下:新相性=价值观+人际关系+亲近程度+性格。



  1,价值观:保守-变革、雄心-平和、大义-功利。“保守-变革”指对维护最高统治的认同,汉让禅前指汉正统,让禅后指人物所在势力。“雄心-平和”指对事业开创、发展的积极性。“大义-功利”指对道义的信仰与遵守程度,为功利者应当占多数。

  “价值观”的数据库属性至少包括如下项目:类型字段号(唯一的索引名)、人物字段号(human_no)、属性。定义属性的值为由0、1构成的三位长的排列组合。最高位0代表保守,最高位1代表变革。以下类推,一组例子:

  刘备为“保守”+“雄心”+“大义”,000;
  李严为“保守”+“雄心”+“功利”,001;
  董承为“保守”+“平和”+“大义”,010;
  杨仪为“保守”+“平和”+“功利”,011;
  曹操为“变革”+“雄心”+“大义”,100;
  袁绍为“变革”+“雄心”+“功利”,101;
  稽康为“变革”+“平和”+“大义”,110;
  张鲁为“变革”+“平和”+“功利”,111。

  刘备的价值观的表现形式:value-liubei-000。


  在此基础上,给出价值观判别模块valued_discretion的设计。游戏对某两个人物进行价值观认同的判别。

  输入接口:判别对象的人物字段号human_no,两个;

  输出接口:判别标志位A(表示两个人物的价值观一致程度);

  内含变量:局部变量M、N、P,判别标志位A;

  编程思路:调用value数据库,以给出的两个hunam_no的值为索引查询,得出两组01排列组合,分别赋给变量M、N。将M、N做“异或”运算,得到的结果赋给变量P。再从P当中找到“0”的个数,赋给判别标志位A。有3-0四个值,“3”表示最一致,“0”表示最相异。标志位A为该模块的输出结果。(如果以P中“1”的个数为判别位的赋值依据,则表示价值观的相异程度。)



    2,人际关系:亲属、僚属、师承、乡土,共四列。设建立一个二元矩阵的数据列表:array[a],为标志位集合。标志位值为0或1,0表“非”,1表“是”。具有唯一性,任何一列人际关系里只允许一个1出现。以“乡土”一列为例,当a[3][1]=1(同村),则置a[3][0]、a[3][2]、a[3][3]=0。

array[a]  b=0   b=1   b=2   b=3   b=4   b=5  b=6  b=7
a=0     祖父 叔伯 兄弟 子侄 孙儿 父亲 亲子 无
a=1     上级 同级 下级 共事 主公 幕僚 无
a=2     师父 同门 弟子 弃徒 无
a=3     同族 同村 同县 同州 无


  a[0]
  • ,亲属一门。在此出于论述方便,未考虑兄弟排行和女性的因素。(绝非歧视女性)

      人际关系亲属数据列表Relatives,一个家族构造一棵子树,任何一个结点和叶子至少要包括以下几项:索引、初始坐标、人物、父结点、值。

      初始坐标,子树中的根结点。家族中第一个出现在三国历史舞台上的人物。如诸葛氏家族,以诸葛诖为初始坐标。(诸葛诖是诸葛亮的父亲,东汉末年任泰山郡丞。)

      人物,对应子树中包括根结点在内的所有结点和叶子。家族中所有在历史舞台上出现过的人。其属性为人物字段号human_no。

      父结点,“人物”项的父亲结点。根结点此项置0。

      值,对应子树中任意结点及叶子至根结点的权。人物与初始坐标的相对距离。如果定义诸葛诖是诸葛氏家族的初始坐标,则诸葛玄的差是0,则诸葛亮、瑾、诞、均是1,诸葛恪、瞻是2,诸葛尚、京、恢、颐是3。

      人物亲属判别模块Relatives_discretion,主要用做对一个大家族里非直系关系人物的亲属关系的判别。输入接口:人物,即Relatives列表中的“人物”;输出接口:a[0]=1。

      判断当前对象与目标对象亲属关系的算法思路:1,是否在同一棵子树内;2,是否在一棵简单子树内;3,对比结点或叶子的权,依照权的值差确定深度;4,深度差+合适修正值对应array[ab]。

      判别流程:1,根据“人物”,从Relatives列表中查询出相关信息;2,对两者的“初始坐标”进行判别;3,“初始坐标”不一致,则表明无亲属关系,将array[a] 中对应列的“无”项赋值1;4,若“初始坐标”一致,再将两者的“人物”与“父结点”交叉判别,即,甲的“人物”与乙的“父结点”,甲的“父结点”与乙的“人物”,前一项为真,则a[0][1]=1,后一项为真,则a[0][1]=1;4,若交叉判别全都不为真,再对两者的“值”顺序求差,差值+2后赋给中间变量B,这里的2为运算修正值;5,此时B就是array[a]中的b,把对应的a[0]=1即可。

      例子:诸葛恪与诸葛尚为当前对象,对应初始坐标诸葛诖的“值”为分别2、3,两者的顺序值差为-1,+2后将a[0][2]=1,即判别“诸葛恪是诸葛尚的叔伯”。若反序,判别尚对恪的关系,则值差是3-2=1,+2后是把a[0][3]=1,得出“子侄”关系。

      以下“僚属、师承、乡土”诸项的数据列表及判别模块的设计思路,与“亲属”一项类似,具体属性只须做适当调整即可,在此不再多讲。(好累啊~~~~)


      a[1]
  • ,僚属。其中,“上级、同级、下级”为公家上下级关系,也适用于非直属的上下级。“幕僚、主公”为私人门客的上下级关系,“同级”也用于表示门客间的关系,“共事”指某人物的门客与主公同势力下的人物的关系。

      在行政的“官职体系”部份,对所有职位设置参数--“职位级别”,明确其相互关系。当玩家查阅游戏人物的“僚属关系”时,系统将对查阅对象与相关人物的“职位级别”参数进行对比与判别,a[1*]即为判别后所置的标志位。

      “官职体系”设计时,要考虑公家职位与私人部曲的相互关系,这实际上可以将两者看成两棵子树。在此,我将前者称为I型子树,以公家职位为根、结点和叶子,根结点指向皇帝;后者为II型子树,以属官职位为根、结点和叶子,根结点指向某武将。历史上,大量存在II型子树的根结点的人物指向与I型子树中的某个中间结点或叶子的人物指向一致。(哪位仁兄数据结构学得好,把游戏里要用到的官职位总结一下,画个树图出来瞧瞧。)


      a[2]
  • ,师承。多用于文士的学习,如刘备、公孙瓒求学于卢植。


      a[3]
  • ,乡土。同族指汉族以外民族。



      3,亲近程度,仇恨、厌恶、疏远、识闻、友好、亲密、结义。设一透明的“有向”参数“亲近度(B)”,其数值以1-999对应“仇恨-结义”各级。(透明,即对软件制作者可见,对使用者不可见。不同于俗称的隐藏参数。)当B=0时,表明两人不认识,或从来没听说过对方。

      如果出于简便考虑,可仅设置一个“亲近度”的参数,就像现在大多数三国游戏一样。但我有种想法,是来自“模拟人生”系列游戏的,即将“亲近度”进一步衍生成“有向亲近度”。

      玩家控制人物与某游戏人物之间存在两个单向参数,分别表示两人物各自对对方亲近程度的认知,玩家对NPC的亲近程度为B1,反之NPC对玩家为B2,两者不一定相等。这样可以包容这么一种情况:“我对你好,你却不对我好。”在玩家向NPC提出要求时,影响NPC的判断决定,参与计算的是B2。而NPC在向玩家提要求时看的则是B1。在日常交往当中,玩家的行为(即游戏当中的选择)会影响B1变化,B1又通过一些规则影响B2。这个规则主要与NPC的人物特质(价值观、性格、能力等)及游戏身份(地位、利益、资源等)有关。而NPC与NPC之间,可以考虑只用人物特质来确定亲近度的变化。

      但一旦引入“有向亲近度”,我担心:游戏会不会因此而过于侧重表现个体生活,而削弱战略感。光荣三国8里,只一个“敬爱”就让玩家自愿或被迫狂点鼠标,而引入双重亲近度是否会消耗玩家更多的精力?

      对此我想到的解决之道是,去除大部分专门加亲近度的指令,仅保留少量且要付出相当游戏资源的专门提升亲近指令(如家宴、送礼,花费大量金钱)。让亲近度产生变化的主要途径是,在玩家人物做事的过程当中自行变化。做事可以有多种方式,不同方式会依据NPC的人物特质、游戏身份产生影响,以此决定NPC对玩家人物的B值。这样,玩家不需要专门为亲近度消耗大量精力与时间,只要考虑选择何种方式行事合适就行了。

      现阶段对该方面考量还不充足,仅仅是个思路。



      4,性格:耿直-圆滑、开阔-狭隘、狂傲-谦卑、儒雅-尚武、诚信-疑心、简约-浮华、急躁-稳重、热烈-冷漠,共八组(可能这些还不足以包容所有三国人物的性格,哪位仁兄心理学学得好,用弗罗伊德的理论分析一下)。表现方式依旧是组内对应,且以1-3级做为弱强的描述。组与组之间存在优先级之差,主要由某些性格的强弱决定。

      耿直-圆滑。耿直,一切行事以达到最佳效果为目标,不考虑旁人感受,圆滑反之。

      开阔-狭隘。开阔,只要旁人做事不侵犯其价值观或亲友或其它重要利益,便不会大幅削弱亲近度。

      狂傲-谦卑。谦卑,恭谦与自卑,均表现为对名士、权威等位重者恭敬,故不做区分。狂傲反之。

      尚武-儒雅。尚武,喜好武艺、军事,儒雅好诗书画。

      诚信-疑心。诚信,相信大多数人的话,也不会为了利益而刻意欺骗别人。疑心反之。

      简约-浮华。简约,生活比较随意,不追求什么。浮华反之。  

      急躁-稳重。急躁,容易被突发事件激怒,有利于单挑,不利于带兵打仗,稳重反之。

      热烈-冷漠。热烈,精神常常保持一种兴奋状态,冷漠反之。注意急躁与热烈的区别,前者指受突发事件影响的程度,后者指平时就保持的状态。


      虽然策划里把性格设为八组,实际上在做数据库设计时这部分只需要如下一个简单结构:索引(人物字段名)、a1(耿直-圆滑)、a2(开阔-狭隘)、a3(狂傲-谦卑)、a4(儒雅-尚武)、a5(诚信-疑心)、a6(简约-浮华)、a7(急躁-稳重)、a8(热烈-冷漠)。每一个属性值为0-5,依次表示强-弱-强。如,a1=0表示耿直3,a1=2表示耿直1,a1=3表示圆滑1,a1=5表示圆滑3。


      判别任意两个人物的性格异同程度,最基础的方式就是求两者的性格差值。为了更明白地解释,我将性格差值分成两级,基础性格差值M、延伸性格差值N。设有甲、乙两人物。

      基础性格差值,M=%a1+%a2+...+%a8。分别对甲a1-乙a1、甲a2-乙a2、甲a3-乙a3......甲a8-乙a8,进行求差运算,差的绝对值存放在参数%a1至%a8。显而易见,M的值在0-40之间波动。差值越小,性格越相近。

      延伸性格差值N,用于表现同种性格阴阳两面的对立,如耿直3(a1=0)与圆滑3(a1=5)。对求差运算所得的%a1至%a8进行判别,有一项为5,即同种性格极度对立,则N=N+F,N的值在0-8F之间波动。其中,F为修正值,如果把F设为5,则使N的波动范围与M一样大,均为0-40,两者的权重为1:1。F=5不一定是个恰当的修正数。

      可能已经有人想到,完全可以在进行基础性格差值M的编写时,就顺带完成延伸性格差值N,但我考虑到在进行游戏平衡性设计时,F可能要多试几次才能得到一个比较合适的值,所以认为最好把性格判别模块分成两个子模块,分别得出M、N。而求N的模块,可保留对F的设置接口,方便参数调试。


      当然性格除了用在人物间判别性格差异方面,还有别的更广泛的地方,如性格对事务的处理。因为本人所学有限,仅提出一种最没有技巧的办法来体现八组性格,即,a1-8对游戏选项权值产生影响。设一NPC面临K个导致不同结果的选项,游戏设计者确定有P种性格对某一选项产生影响,按照价值观、结果、性格的判别顺序决定选择哪一项。(实际编程当中,可能要用到多层IFELSE嵌套,再加上模块调用,不知道能不能控制好时间和空间复杂度?)



      前文按照“相性=志向+关系+性格”的标准,设计了一套人物仕官程序流程。在此,以修订了的“新相性=价值观+人际关系+亲近程度+性格”为基础来解释描述。

      人物主动仕官:

      (1)游戏的势力评价模块给出输出接口:声誉、军力等;

      (2)根据人物的能力与人际关系(认识哪些势力的人)确定对不同势力判断的准确度;

      (3)把(1)、(2)两步得到的数据加权计算,得出该人物对势力的实际判断,输出结果至少包含声誉与实力两部分内容;

      (4)根据人物能力与价值观确定仕官标准,将第(3)步的结果与之对比,滤去不合格势力;

      (5)根据人物价值观,在达到标准的势力里确定优先顺序,前去拜访保荐者;

      (6)人物评价模块根据保荐者的能力与新相性给出实际评价,包含能力、价值观、人际关系、亲近程度、性格等;

      (7)人才录用标准模块根据该势力状况和保荐者的能力与新相性给出录用标准,包含能力、价值观、人际关系、亲近程度、性格等;

      (8)比较(6)(7)两步结果,能力、价值观、人际关系、亲近程度、性格等有任何一项达到标准既可获得录用,修改该人物身份,及相关其他信息;

      (9)未达到任何一项,则录用失败,该人物将四处游逛结识更多人物并重复上述出仕步骤,直至成功。


      如果是某势力主动录用人才,则:
      
      (1)人才录用标准模块给出录用标准;

      (2)根据录用官员的人际关系搜索在野人才;

      (3)游戏的人物评价模块给出对在野人才的评价;

      (4)根据录用人员的能力与人际关系确定对所有在野人才的实际判断,确定达标人才,前去拜访;

      (5)游戏的势力评价模块给出该势力的声誉、军力等;

      (6)根据人才的能力与人际关系(认识哪些势力的人)确定对该势力判断的准确度;

      (7)把(5)、(6)两步得到的数据加权计算,得出该人物对该势力的实际判断,输出结果至少包含声誉与实力两部分内容;

      (8)根据人才的能力与价值观确定仕官标准,并以此判断该势力是否达标;

      (9)录用某人才失败后,间隔一段时间再次录用此人,每失败一次间隔时间变长。

      仕官与录用部分,算是策划而非设计,但叙述过程中我强调了模块、接口。我想,司马悠和陈君所主张的“干实事”,应该包含了各模块的编写。这里每一步基本上都可以由一个模块实现,接下来所要做的就是用模块实现。





    作于2005.05.19,首发中华文化琅琊三国论坛,平凡人张衍。
  • 回复 举报
    2005-6-9 13:28:35

    主题

    好友

    3811

    积分

    刺史

    我的简单想法.

    1)人物默认关系就是普通.人物关系除非触发事件否则不可更改.(另外叛变流言也可暂时改变人物关系,但经过时间后恢复正常。)

    2)建设家族,群,义兄弟,个人关系定义来建设复杂关系.
    家族,一个群体概念,同一家族的人相互关系,比较亲密.(家族之间也可互相定义亲密与否)

    群,朋党也.一个群体的人有友好以上的关系.

    义兄弟,为演义而定义.本来归类朋党.关系在朋党上更进一层.

    个人关系定义(1对1的对应关系,因为友好关系大多可以用上述讲过关系设顶,所以一般个人关系定义用于有仇敌和不睦的情况.

    3)个人关系,将影响外交和劝说的情义方式劝说的威力.(设计成类似310论战的方式).
    附:影响论战的因素:
    1)论战技巧.
    2)皇帝令,和双方信望差距增加义理劝说的威力.
    3)个人关系增加情义劝说的威力.
    4)条件优厚与否增加利益劝说的威力.
    5)双方实力差距增加大势劝说的威力.~
    贿赂和皇帝关系好的大臣增加所有劝说的威力.
    相反的,性格方面的优点缺点也可以左右劝说的走向.~
    回复 举报
    2005-6-9 13:42:30

    主题

    好友

    3811

    积分

    刺史

    至于劝说反叛的.我觉得很多情况下还是应该提倡闭门谢客的模式.
    一般的说客都会遭到闭门谢客的待遇,只有特定关系的才能有说服的机会.
    因此说客的人际关系,是说反的重点.
    另外在外交方面人际关系就显得相对不重要了.个人选闭门谢客和斩杀使者能增加声望.
    外交中君主如果选择闭门谢客或杀使者,会有损声望.

    其实很简单的规定一段时间内只能对一个人进行一次劝说就可以保证系统完整了。
    另外忠诚度这个东西还是按照此人的忠义心和与君主的个人关系来设定.
    其次就是辅助的汉朝拥护与否(投靠刘备或持有皇帝的势力),以及天下大势的认同(投靠大势力).
    然后就是重用与否了.~
    回复 举报
    2005-6-9 14:15:41

    主题

    好友

    3015

    积分

    刺史

    咳咳,不要K我......说实话,我没看懂国士兄弟想说明一个什么样的意思 :cry:

    "辅助的汉朝拥护与否(投靠刘备或持有皇帝的势力),以及天下大势的认同(投靠大势力)." 对应的是文中价值观的。“保守-变革”

    "家族,一个群体概念,同一家族的人相互关系,比较亲密.(家族之间也可互相定义亲密与否)
    "这可不一定喏.家族关系与亲近关系是两方面.

    "个人关系定义(1对1的对应关系,"    所有人物都1:1的话,不知道数据库是否吃得消全拓补结构.我倾向在玩家查看相关资料时,调用相应模块即时生成数据.
    回复 举报
    2005-6-9 19:07:26

    主题

    好友

    3811

    积分

    刺史

    Post by 平凡人张衍
    咳咳,不要K我......说实话,我没看懂国士兄弟想说明一个什么样的意思 :cry:

    "辅助的汉朝拥护与否(投靠刘备或持有皇帝的势力),以及天下大势的认同(投靠大势力)." 对应的是文中价值观的。“保守-变革”

    "家族,一个群体概念,同一家族的人相互关系,比较亲密.(家族之间也可互相定义亲密与否)
    "这可不一定喏.家族关系与亲[引用省略......]


    因为是一个以节度使为最基本单位的游戏,个人之间的关系其实影响并不大.
    1)标准人际关系是0,省去大量运算.
    2)用1对1定义定义1对1的大多数关系,其实说起来这样的关系并不多.
    3)家族关系你没有理解透彻啊.我的家族是个比较小的团体.结构比较紧密.不超过10个人的关系.
    何况古代也是比较重视家族的.某些家族在某些年代直接分裂成两个亲密家族或仇敌家族.
    义兄弟也类似.
    4)同籍贯的,同城的也稍微有点影响.

    因为只有在劝说(劝降,策反,外交,离间,录用名士)的时候有效,数据的牺牲并不大.~因为内存不需要提取其他人的关系,提取相关数据进行关系运算就可以了.

    关于辩论.
    辩论的技巧加强己方论点的攻击力.
    而自己的有关素质可以减小对方此方面的攻击力.加强自己论点的攻击力.

    比如性格软弱的害怕威压式辩论,学识方面有缺陷的害怕别人引经典.
    行止方面不够道义的害怕别人从道义方面进行驳斥,性格不够镇定的害怕别人挑衅式的论点.

    所以一些舌辩才能并不佳的武人,在于某些舌辩之士的交手中也能暂时不败.
    回复 举报
    2005-6-9 19:30:31

    主题

    好友

    3811

    积分

    刺史

    有向亲近度没有太大的必要.

    今之父母爱子女胜于子女爱父母,但古人完全不存在这样的关系,父要子亡子不得不亡.

    其他由于官位落差,男女分别引起的亲近度的细微差别可由人物的个性来体现.

    作为节度使的游戏,首先游戏里只会有20多个节度使以及君主.主要讨论此20人的人际关系.
    另外,除非特殊定义的义兄弟,家族和仇敌.一般的不睦和友好.对游戏进程不会有太大的干涉.
    义兄弟,家族,会考虑在同一节度使手下工作(诸葛谨出仕以后,诸葛家族被区分为两个家族)
    仇敌,则会有相互攻杀的可能.只能暂时调节,最好的办法是不能让他们见面.
    回复 举报
    2005-6-10 14:13:35

    主题

    好友

    321

    积分

    县尉

    这个帖子很好,顶一个!
    帖子中提到的几个部分,我觉得都可以单独拿出来进行讨论,使之更加完善。
    回复 举报
    2005-6-11 11:01:08

    主题

    好友

    1623

    积分

    东山高士

    张衍兄的文章已经很深入了,我在这里提点个人意见

    亲戚关系不必做的太复杂,一个武将只需父亲、母亲和家族三个属性即可判断大多数亲戚关系(即父亲、母亲可以为空)。
    张衍兄的实现需要建树,而实际历史中的家谱往往是不完全的。
    比如知道A是B的族子,或者A是B的兄子,而A的父亲未知。为了填补空缺,需要引入很多不出场的武将,而这些武将虽然不出场,但是作为游戏而言,亲戚关系一般与其他属性是放在一起的,换言之,也必须要耗费同样的空间来存放那些“填空”武将。而且很多首代武将可以追溯的很远,比如远的可能有到西汉的。其实一族和直系亲属已经可以差不多描述主要的关系了。具体的一些特例可以通过其它一些手段实现,比如族兄弟夏侯兄弟的某些性格可以取同样的值。
    光荣的处理方法是引入与历史武将数目相同的“父亲武将”,不参与具体的游戏,只用于亲戚关系的判断(只有一个单纯的编号,具体为子女编号+定值)。比如蔡中、蔡和之父设成同一人(比如都是蔡中之父),就可以避免引入“填空”武将。当然,这样武将的亲戚关系就大大减少了。
    大致可以处理如下一些关系:
    本人、父、母、息子、娘
    祖父、祖母
    兄、弟、姊、妹
    孙息子、孙娘
    曾祖父、曾祖母
    伯父、伯母、叔父、叔母
    甥、侄、曾孙
    但对我前面所举的例子,A是B的族子,或者A是B的兄子,而A的父亲未知,那么就只能作为一族了

    张衍兄提到某势力主动录用人才时,要用到人际关系(认识哪些势力的人)
    但是这样的话,数据量就大大增加了,比如1000个武将,相互之间的关系值就要500K个存储单位。
    光荣的处理方法就是简单的忽略非主角武将之间的关系。而对某些特殊的人物关系,比如关羽和张辽,在SceShinm中存放了日期、亲密度的结构数组用来修正主角是其中一位时,初始的亲密
    而像张衍兄提到的不对等的关系也牵涉到存储量过大的问题,这样存档的大小不好控制
    回复 举报
    2005-6-11 13:31:01

    主题

    好友

    321

    积分

    县尉

    关于亲戚关系,个人觉得也许没有必要,因为这个其实在游戏中很难体现的,因为是亲戚的关系不定好,不是亲戚的关系就不定不如是亲戚的。其实有一个 【关系度(亲密度)】 来体现武将之间的关系即可。并且,对于游戏模式设计来说,也不定是需要所有武将之间的相互关系,一般君主和所有武将之间有一个关系就可以了,其他的则可以根据需要来进行取舍了。
    至于仕官的问题。根据实际情况来说,一般三国时期人才的流动是不太多见的,像光荣那样的在野武将随处跑是不可能的。所以,对于仕官来说,基本上就是一个君主对于所在势力地盘内的在野武将进行征辟,至于别人是否仕官,根据张衍设计的志向、性格等等作一个判断模型就可以了。
    回复 举报
    2005-6-12 09:52:31

    主题

    好友

    3015

    积分

    刺史

    Post by 司马攸
    关于亲戚关系,个人觉得也许没有必要,因为这个其实在游戏中很难体现的,因为是亲戚的关系不定好,不是亲戚的关系就不定不如是亲戚的。其实有一个 【关系度(亲密度)】 来体现武将之间的关系即可。并且,对于游戏模式设计来说,也不定是需要所有武将之间的相互关系,一般君主和所有武将之间有一个关系就可以了,其他的则可[引用省略......]


    关于人才流动性可能存在见仁见智的问题。
    我在看历史书/演义时,经常看见有人才从乡土迁至其他地方。如黄巾侵入青州后,诸葛玄就带着诸葛亮兄弟逃到淮南,被袁术征辟后又到豫章做太守,后来又和刘表搭上关系,把诸葛亮送到襄阳生活。这算做一种人才流动。

    这样的例子还有很多,比如关二哥,程昱,“荆州八俊”,都因为生活环境的剧烈变化或是其他原因而迁移他地,而在迁移过程中会结识许多人物,这就构成了关系网。

    最笨的办法就是采用全拓朴结构来表示,但就是怕资源占用太大。
    回复 举报
    2005-6-26 10:34:09

    主题

    好友

    3811

    积分

    刺史

    Post by 平凡人张衍
    [QUOTE=司马攸]关于亲戚关系,个人觉得也许没有必要,因为这个其实在游戏中很难体现的,因为是亲戚的关系不定好,不是亲戚的关系就不定不如是亲戚的。其实有一个 【关系度(亲密度)】 来体现武将之间的关系即可。并且,对于游戏模式设计来说,也不定是需要所有武将之间的相互关系,一般君主和所有武将之间有一个关系就可以[引用省略......]


    如果符合历史的话,可以考虑设计,战争导致家族分裂,世家的迁移.
    我是感觉同乡这样的关系应该向简单发展.
    取消同乡.至多设置同郡,同州,这样也比较好控制.
    价值观应该是复杂一点的比较好.

    价值观应该相对独立.但是一个人可以具有多种价值观,排在越靠前的越优先选择.
    但价值观也可以通过简单的性格累加实现.
    回复 举报
    2005-6-26 10:56:08

    主题

    好友

    3015

    积分

    刺史

    本文的价值观是3属性,但绝不排除变更的可能,看游戏设计的需要。

    个人以为价值观最好不宜与性格混同。

    至于“战争导致家族分裂,世家的迁移.”,我以为在地域属性中可以加入一个不对玩家开放的参数,稳定度,对某地域及其周边的战争进行计算,从战争投入的规模/时间,对民生的破坏等因素,按一定的算法进行计算,人民的迁移程度与两地域间的稳定度的差成正比。
    回复 举报
    2005-6-26 11:26:18

    主题

    好友

    3811

    积分

    刺史

    我个人以为个人能力可以与性格和价值观挂钩.这样并不矛盾吧.

    个人以为基本能力在6项目以下是比较好的.

    另外名士的录用可以参考太阁5卡片达成条件和各系列的事件条件.搞得复杂一点,普通人才,自动投靠就行了.

    另外设法尽量精细,同时不要增加计算量.

    对于光荣,我觉得还是义理这样的项目,我觉得还是不客观.
    应该分成:
    1、义气:重视互相之间的关系与否。
    2、家族:重视血脉关系。
    3、忠主:对上一层领导的忠诚与否。
    4、大义:投降的可能性。

    叛变或者招降的时候,这些属性就很重要了。
    叛变的时候如果义气,家族,忠主中有一个项目高,大义也很高,可能会导致名将下野。
    回复 举报
    2005-6-29 13:59:32

    主题

    好友

    15

    积分

    布衣

    楼主这篇贴子写的非常好,意思点到了,正好和我很多想法相近

    相性是个非常重要的部分,楼主的很多远期想法我有的也基本扩展到了(比如性格部分)

    相性系统扩展的余地很大,主要是相关AI的设计,这个部分可以扩充很多很多,复杂到简单模拟人与人之间的关系。具体的算法我也正在研究,数量是相当庞大的

    实际上楼主已经点出了要害,但具体的程序设计是要比楼主的想象还要复杂的多也更为庞大,不过楼主能够以非专业的人士达到这个水准已经是非常非常难得了
    回复 举报
    2005-6-29 14:13:48

    主题

    好友

    15

    积分

    布衣

    策略游戏开发还是一两个人搞程序比较好,美工多多益善,开发不需要人多,对于这种策略游戏我想一个人就足够了

    另外,也不是想象中的根据策划就能把模块完善。技术人员要深入了解策划的本质,然后就有思路可以完善策划。因为非编程人员考虑程序问题还是过于简单,真要根据这个编,编出的东西也太简单了。对于程序编写人员要求有足够的经验和能力(要求很高),这也是无数人想编三国游戏而目前尚无一个的原因
    回复 举报
    2005-7-2 08:59:14

    主题

    好友

    3015

    积分

    刺史

    这贴子写得比较底层,其实只是帮程序员完成模块的流程设计
    从策划角度上来讲,没有太出彩的地方
    从程序角度上来讲,更是初级的初级
    回复 举报
    2005-7-3 16:50:03

    主题

    好友

    15

    积分

    布衣

    楼主过谦了,设计的已经非常出彩了,如果要提意见的话,我谈谈个人看法

    1、价值观
    这个种类比较单一,虽然能写出一堆来但其实多数差异性比较小,如果真要算起来也就几种,数量太少容易导致人物同一化。这个设计可以用也可以不用,当然用了是不错的选择,但如果用了就要仔细考虑人物价值观的权值影响

    2、人际关系
    我的意见的简化这方面的设计,有父母、婚姻系统即可,太过复杂即难于表现而且这个方面的游戏性不强

    3、亲近程度
    这个其实不应该算在底层这个层面的,这个是运算的实时结果,是变化的。而且如果仅靠某些指令就可以提升,也不是很好的设计(有点像后门指令)。亲近程度应该是相性系统的效果层面的东西,不是底层的,这个是AI作用的结果

    4、性格
    说来说去,这个是我认为的重点。人与人之间的差异主要是性格差异,不同性格的人之间彼此评价不同(这个由AI实现)。这个部分应该再加强扩展
    回复 举报
    2006-4-4 15:56:51

    主题

    好友

    85

    积分

    布衣

    可不可以把一些用词改为
    忠、孝、仁、义、理、知、信
    等等,
    更加符合三国背景。
    回复 举报
    2006-6-27 00:35:37

    主题

    好友

    19

    积分

    布衣

    觉得听牛。。的。。
    这个:burn: 我怎么觉得有像8和10靠拢的趋向。。
    回复 举报
    2006-6-27 01:04:10

    主题

    好友

    129

    积分

    布衣

    你看看这帖子写于什么时候嘛,去年五月份,当时三国11还不知道在哪儿呢?:sweat:
    回复 举报

    本版积分规则

    Archiver|手机版|Langya.Org ( 浙ICP备05062527号-1 )

    GMT+8, 2017-7-27 16:54 , Processed in 0.092526 second(s), 18 queries .

    Powered by Discuz! X3.1 Licensed © 2001-2012 Comsenz Inc. Design by 360cd.cn

    返回顶部