找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2296|回复: 16

[转贴]关于CM的源代码研究(回答ZHAOHAN的问题)

  [复制链接]
发表于 2005-5-25 01:28:50 | 显示全部楼层 |阅读模式
 有点无聊,有点意思。喜欢CM的朋友随便瞧瞧……
  ------------------------------------------------
  天才与妖人的由来
  作者:stupid_yi
  
  球员属性与能力值之间的关系
  潜了那么久的水,突然想上来冒个泡。在我的印象里,现在的CMER太懒了,整天只知道泡在论坛里灌水,几天下来也看不见一篇有建设性的帖子。不过让我略感欣慰的是,前几天看了madtoad的《关于球员能力、潜力的计算问题。》一文,发现至少还是有那么一些勤于思考的CMER的。仅以此文献给这些还在绞尽脑汁为推动CM游戏水平进步的可爱CMER。
  
  不知道大家还记不记得CM3的时候有一款Graeme Kelly开发的CM3 Series SaveGame Editor存盘编辑器,其实用过它就大概知道球员的属性和能力值大概是个什么关系 了,下面就以我最喜欢的Giggs为例给大家讲解一下。
  
  
  此主题相关图片如下:
  
  
  先做一下名词解释,如图所示:
  RA:球员各项属性的实际能力;范围:1-255
  FA:球员各项属性的最终体现值,也就是我们所看见的球员属性,范围:1-20
  CA:球员的当前能力,范围:1-200
  PA:球员的潜力,范围1-200
  
  球员的属性分类两类:一类是Acceleration、Aggression等FA和RA相等的属性,这类属性不受CA影响,主要集中在球员的身体属性、部分精神属性和隐藏属性;另一类是Anticipation、Crossing等FA和RA不相等的属性,这类属性要受到CA的影响,主要集中在球员的技术属性和部分精神属性。
  
  我们可以用表示FA=f(RA,CA)表示这三者之间的函数关系。经过测试发现,f是一个在(1,127)(128,255)两个区间分别递增的函数,但当CA一定的时候,FA和RA是非线性的关系,当RA一定的时候,FA和CA也是非线性的关系。我不是数学系出身,想要仅以几个采样值来求出这个二元函数几乎是不可能的,于是剩下唯一的办法就是去源程序里找了。我也不是学编程的,更没有faster那种把Diablo反编译的精神与体力,幸好CMScout的作者Nygreen给我们提供了他的源文件,让我们找到这个二元函数。大家有兴趣的可以到http://prdownloads.sourceforge.n ... t-v3.10-source.zip?去下载这个源文件。
  
  程序中有如下一段:
  
  procedure TCM4PlayingData.ConvertRelativeAbilities(Ability: SmallInt);
  begin
   if Goalkeeper < POSITION_THRESHOLD then
   begin
   FCrossing:=HighConvert(Ability, Crossing);
   FDribbling:=HighConvert(Ability, Dribbling);
   FFinishing:=HighConvert(Ability, Finishing);
   FHeading:=HighConvert(Ability, Heading);
   FLongShots:=HighConvert(Ability, LongShots);
   FMarking:=HighConvert(Ability, Marking);
   FOffTheBall:=HighConvert(Ability, OffTheBall);
   FPassing:=HighConvert(Ability, Passing);
   FPenalties:=HighConvert(Ability, Penalties);
   FTackling:=HighConvert(Ability, Tackling);
   FCreativity:=HighConvert(Ability, Creativity);
  
   FHandling:=LowConvert(Ability, Handling);
   FAerialAbility:=LowConvert(Ability, AerialAbility);
   FCommandOfArea:=LowConvert(Ability, CommandOfArea);
   FCommunication:=LowConvert(Ability, Communication);
   FKicking:=LowConvert(Ability, Kicking);
   FThrowing:=LowConvert(Ability, Throwing);
   end
   else
   begin
   FCrossing:=LowConvert(Ability, Crossing);
   FDribbling:=LowConvert(Ability, Dribbling);
   FFinishing:=LowConvert(Ability, Finishing);
   FHeading:=LowConvert(Ability, Heading);
   FLongShots:=LowConvert(Ability, LongShots);
   FMarking:=LowConvert(Ability, Marking);
   FOffTheBall:=LowConvert(Ability, OffTheBall);
   FPassing:=LowConvert(Ability, Passing);
   FPenalties:=LowConvert(Ability, Penalties);
   FTackling:=LowConvert(Ability, Tackling);
   FCreativity:=LowConvert(Ability, Creativity);
  
   FHandling:=HighConvert(Ability, Handling);
   FAerialAbility:=HighConvert(Ability, AerialAbility);
   FCommandOfArea:=HighConvert(Ability, CommandOfArea);
   FCommunication:=HighConvert(Ability, Communication);
   FKicking:=HighConvert(Ability, Kicking);
   FThrowing:=HighConvert(Ability, Throwing);
   end;
  
   FAnticipation:=HighConvert(Ability, Anticipation);
   FDecisions:=HighConvert(Ability, Decisions);
   FOneOnOnes:=HighConvert(Ability, OneOnOnes);
   FPositioning:=HighConvert(Ability, Positioning);
   FReflexes:=HighConvert(Ability, Reflexes);
   FThrowIns:=HighConvert(Ability, ThrowIns);
   FFirstTouch:=HighConvert(Ability, FirstTouch);
   FTechnique:=HighConvert(Ability, Technique);
  end;

[ Last edited by hades1111 on 2005-5-25 at 01:33 AM ]
 楼主| 发表于 2005-5-25 01:29:31 | 显示全部楼层
作者:阿色  回复日期:2004-3-11 19:23:00  

  我来解释一下,FCrossing等就是我所说的FA,Ability就是我所说的CA,而Crossing等就是我所说的RA。这里有两个函数:HighConvert和LowConvert。当球员不是守门员的时候,他的非守门属性和共有属性由HighConvert决定,而他的守门属性由LowConvert决定;而当一个球员是守门员的时候,他的守门属性和共有属性由HighConvert函数决定,而他的非守门属性由LowConvert决定。其中HighConvert起主导作用。
  
  HighConvert和LowConvert分别是如下定义的:
  其中:Ability=CA,value=RA,Result=FA
  
  function TCM4PlayingData.HighConvert(Ability: SmallInt;
   value: ShortInt): ShortInt;
  var
   Temp: Double;
  begin
   Temp:=(((value * 2) + Ability) * 0.05) + 10;
   Temp:=((((Temp * Temp) * 0.1) + Temp) * (1/3)) + 0.5;
  
   if Temp < 1 then
   Result:=1
   else if Temp > 20 then
   Result:=20
   else
   Result:=Trunc(Temp);
  end;
  
  function TCM4PlayingData.LowConvert(Ability: SmallInt;
   value: ShortInt): ShortInt;
  var
   Temp: Double;
  begin
   Temp:=(((Ability * 0.1) + (value * 2)) * 0.05) + 10;
   Temp:=((((Temp * Temp) * 0.1) + Temp) * (1/3)) + 0.5;
  
   if Temp < 1 then
   Result:=1
   else if Temp > 20 then
   Result:=20
   else
   Result:=Trunc(Temp);
  end;
  
  由此我们可以看出,f是一个二元二次函数。要注意的是Ability的类型是SmallInt,它的范围是(-127,127),这也就解释了f为什么分别在两个区间递增,因为我们看到的(128,255)其实代表的是(-127,-1)。
  
  综上所述,非守门员的Crossing,Dribbling,Finishing,Heading,LongShots,Marking,OffTheBall,Passing,Penalties,Tackling,Creativity和守门员的Handling,AerialAbility,CommandOfArea,Communication,Kicking,Throwing以及两者共有的Anticipation,Decisions,OneOnOnes,Positioning,Reflexes,ThrowIns,FirstTouch,Technique是由函数HighConvert决定的。
  
  通过上面的公式我们也可以部分解释妖人存在的原因了。我们可以看到绝大多数球员的RA都在(-127,-1)区间内,就连堂堂Giggs也只有Dribbling一项属性在(1,127)区间内。而妖人的属性如果在(1,127)内的话,那么即便他的CA很低,他的FA依然可以很高。例如当RA=127时,即便CA=1,依然可以得到FA=20。
  
  以上就是我对FA、RA、CA三者之间关系的解释,感谢各位耐心看完。不过看看就完了,不要深究,CM是一款足球经理游戏,不要过分看重这些数据了,不然到最后我们面前的就只是一堆数字而已,还有什么意思。和现实相结合,才是玩CM的最大乐趣。


作者:阿色  回复日期:2004-3-11 19:24:00  

  2月18日更新
  
  上面的内容大家反映有点复杂,我再抛开程序部分,通俗的为大家解释一下:
  
  还是以上图为例,四类值分别是:
  RA:球员各项属性的实际能力,这个值也是游戏中实际存在的,无论是初始数据库还是存盘文件,球员的各项属性都是以这个值的形式保存的;显示范围:(1,255),但由于RA的数据类型是SmallInt,所以实际的范围是:(-127,127)
  FA:球员各项属性的最终体现值,也就是我们在游戏中所看见的球员属性,范围:(1,20)
  CA:球员的当前能力,范围:(1,200)
  PA:球员的潜力,范围(1,200)
  
  CA和PA的关系,我想大家都知道,就是CA总是在(1,PA)这个范围内浮动,这里我就不多说了。
  
  下面主要介绍一下RA、PA、CA三者之间的关系:
  
  球员的属性分为两类:
  
  一类是FA与RA相等,这类属性不受CA影响,主要属性有(CM0304中):
  
  精神属性 非守门员属性 守门员属性 共同属性
  Adaptability LeftFoot Eccentricity Acceleration
  Ambition RightFoot RushingOut SetPieces
  Loyalty Flair TendencyToPunch Strength
  Pressure Corners Stamina
  Professionalism Teamwork Pace
  Sportsmanship WorkRate Jumping
  Temperament LongThrows Influence
  Controversy Dirtiness
   Balance
   Bravery
   Consistency
   Aggression
   Agility
   ImportantMatches
   Injury Proneness
   Versatility
   Natural Fitness
   Determination
  
  这类属性不作重点讨论。
  
  另一类是FA和RA不相等,这类属性要受到CA的影响,主要的属性有(CM0304中):
  
  非守门员属性 守门员属性 共同属性
  Crossing Handling Anticipation
  Dribbling AerialAbility Decisions
  Finishing CommandOfArea OneOnOnes
  Heading Communication Positioning
  LongShots Kicking Reflexes
  Marking Throwing ThrowIns
  OffTheBall FirstTouch
  Passing Technique
  PenaltyTaking
  Tackling
  Creativity
  
  这类属性可以用函数FA=HighConvert(RA,CA)表示
  
  其中HighConvert可以表示为:
  
  Temp1=(((RA * 2) + CA) * 0.05) + 10
  FA=((((Temp1 * Temp1) * 0.1) + Temp1) * (1/3)) + 0.5
  
  如果FA<1,则FA=1
  如果FA>20,则FA=20
  如果1<FA<20,则FA为上面结果的整数部分
  
  因此,我们将RA和CA带入上述函数,就能得到相应的FA。
  
  这个函数在CA一定的时候,在(-127,127)范围内随RA递增,在RA一定的时候,在(1,200)范围内随CA递增。也就是CA越高,FA越高;RA越高,FA越高。
  
  知道这些对我们有什么用:
  
  一、可以部分解释妖人存在的原因。
  
  当CA=1的时候,由RA=97和RA=127都可以得到FA=20,而由RA=97时得到的FA=20会随着RA的衰减到96而迅速衰减到FA=19,可以说它处在一个不稳定状态,而由RA=127得到的FA=20,要一直RA衰减到96时才能得到FA=19,可以说它相对的处在一个稳定的状态。这就是为什么我们修改出来的属性全为20的球员会很快状态下降,而游戏里的妖人的一些状态可以稳定的保持在20。因为我们现在的修改器,都只能修改FA而不能修改RA。
  
  二、RA和CA那个重要
  
  由(RA * 2) + CA可以看出,在单项属性上RA的影响力要比CA大。(由(Temp1 * Temp1)可知,其影响力不只2倍)但是,由于CA一共影响了19项属性(非守门员),而且都是很重要的技术属性,因此个人认为,在RA和CA都有很大上升空间的情况下,CA显得更为重要。
  
  三、选拔年轻球员的原则
  
  由于第一类属性FA不受CA影响,因此这类属性只能靠训练提高,增加的比较缓慢。因此我喜欢挑选这些属性都比较高,潜力也比较高的年轻球员,即便他们的技术都非常烂。但随着CA的提高,他们的技术一般都会飞速提高。
  
  以上都是我的一些个人观点,还望大家海涵。另外还有什么好的提议,也请大家不吝赐教
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-25 01:29:56 | 显示全部楼层
作者:阿色  回复日期:2004-3-11 19:27:00  

  【继续大解密】对球员指数的揭秘及修改
  本文主要参考了stupid_yi的文章“【完全解密】球员属性与能力值之间的关系”以及nygreen写的cm scout的源代码,严重感谢二位:)
  
  我看到很多人说看不懂stupid_yi这篇文章,所以我想首先解释一下他的文章,这样后面说起来也比较方便.
  一个球员的属性值主要分为三种:
  第一种是1~20的“明值”,这种值在内存中就直接表示为1~14(16进制),这个和我们在游戏中看到的值是一致的,比如speed;
  第二种是-127~+127的隐藏值,这种值在内存中表示为1~FF(16进制),这个值和我们在游戏中看到的指是不一样的,其关系是一个函数,在cm scout的源代码中这个函数表示为“Highconvert”,比如非守门员的finishing.不管这个隐藏数值为多少,经过“highconvert“的计算,在游戏中表现出来的数值都在5~20之间;
  第三种同上,只是函数关系不同,在cm scout的源代码中的函数关系表示为“lowconvert“,比如守门员的finishing.
  
  好,下面开始修改.用到的工具是fpe和mcm for 0304.
  
  1)进入游戏,选定想要修改的球员,假设该球员叫ABC
  2)打开mcm,找到这名球员,在“场上位置“栏目中修改他的goalkeeper属性为一个值x,然后返回cm
  3)打开fpe,切换回cm
  4)然后用热键(默认为小键盘的“*“键)进入ftp
  5)在“分析“这个标签页中,点击“新的“,输入这个分析项目的名称,假设我们叫它“position“,确认
  6)选择“Data Type“为“8 bits“,然后再“分析目标“栏目中填写“17“,点击“开始“进行查找
  7)分析结束之后点击“游戏“,回到游戏中
  8)从cm再切换到mcm,修改goalkeeper能力为y,不能等于x
  9)重复步骤4~8,直到在下方的地址列表中剩下唯一的确定地址
  10)选定这个地址,按“F10“进入内存编辑界面,刚才找到的地址就是图中的紫色位置,其值就是刚才我们在mcm中修改的值转成16进制.这个地址就是这次修改的起始地址
  
  此主题相关图片如下:
  
  
  从这个地址开始往后的前12个字节(红色框内)为场上位置的指数,依次分别是:
  goalkeeper
  sweeper
  defender
  defensive midfielder
  midfielder
  attacking midfielder
  attacker
  wing back
  free role
  right side
  left side
  central
  这些值为“明值“,最大改成7F,10进制就是127.再大就是负值了,会出问题.
  
  再往下11个字节(黄色框内)对非守门员来说是“highconvert“的隐藏能力值,对守门员来说是“lowconvert“,依次分别是:
  Crossing
  Dribbling
  Finishing
  Heading
  LongShots
  Marking
  OffTheBall
  Passing
  Penalties
  Tackling
  Creativity
  再往下6个字节(蓝色框内)对非守门员来说是“lowconvert“的隐藏能力值,对非守门员来说是“highconvert“,依次分别是:
  Handling
  AerialAbility
  CommandOfArea
  Communication
  Kicking
  Throwing
  再往下8个字节(绿色框内)对所有球员来说都是“highconvert“的数值,依次分别是:
  Anticipation
  Decisions
  OneOnOnes
  Positioning
  Reflexes
  ThrowIns
  FirstTouch
  Technique
  这些隐藏数值最低为“80“也就是10进制的-127,最高为“7F“也就是10进制的127.
  
  再往下28个字节则是非隐藏的属性了(“明值“),依次是:
  LeftFoot
  RightFoot
  Flair
  Corners
  Teamwork
  WorkRate
  LongThrows
  Eccentricity
  RushingOut
  TendencyToPunch
  Acceleration
  SetPieces
  Strength
  Stamina
  Pace
  Jumping
  Influence
  Dirtiness
  Balance
  Bravery
  Consistency
  Aggression
  Agility
  ImportantMatches
  InjuryProneness
  Versatility
  NaturalFitness
  Determination
  修改规则也是最大为7F
  
  另外还有一些值比如Adaptability都还没有修改.这些值的地址离上述值的地址有一段距离,并不在一起,因此需要重新查找,方法同上,不再一一赘述.值的排列依次是:
  Adaptability
  Ambition
  Loyality
  Pressure
  Professionalism
  Sportsmanship
  Temperament
  Controversy
  
  最后是球员的Current Ability 和 Potential Ability,这两个值又在第三个地方了,查找方法同上。注意的地方是,这两个值为16bit,因此查找时请把8bit换成16bit,可提高查找速度。
  这两个值最大可改为“FF 7F“,也就是10进制的“32767“.
  
  修改就告一段落了.有个地方我没改:教练的指数.其实这个也是可以改的.大家自己琢磨琢磨吧,我就不多说了.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-25 01:30:12 | 显示全部楼层
作者:阿色  回复日期:2004-3-11 19:28:00  

  说点其他的
  
  关于隐藏指数:当然是越高越好了,从10进制的角度来说,指数的好坏程度从-127~+127,越来越好.从16进制的角度来说,最低是80,往高里涨就81,82,一直到FF,再高就是00,再高一直到7F就到头了.隐藏指数的对球员能力的影响程度的概念是什么呢?stupid_yi也说过了,牛人Giggs也只有Dribbling是正值!!!我新造的球员,能力全20的牛人,没有一项指数是正的,最高值不过FE而已!!!
  
  关于天才球员的定义:隐藏指数是不会有质的飞跃的,也就是说,一个球员的隐藏指数如果最初是负值,那最高练到FF,永远成不了正值!其实这也就是cm中定义天才球员的方法了.天才之所以是天才,是有几项普通人无论如何也练不上去的值的.
  
  关于球员能力增长:通过我的试验,发现隐藏指数涨9~11点,其在游戏中显示出来的对应值才涨1点.也就是说,从游戏中发现一个球员的finishing涨了1点,实际上是把他的可增长点数投了10点左右放到了隐藏的finishing中.而一个球员可增长点数是多少呢?就是Potential Ability减去Current Ability.
  
  关于妖人:stupid_yi文章中说了妖人的之所以妖的原因,我再用土豆说明一下.土豆的隐藏指数里面只有三项是正的,分别是Dribbling, off the ball, finishing.这下大家明白他为什么这么能进球了吧,呵呵
  
  搞不懂的地方:corner kick和set pieces总是变成19,不解... ...
  
  修改的效果:我改的是前锋,最终数值如上面的图,1场比赛进了22个球
  
  搞笑的地方:人的速度比球快:)经常看到他带球带着带着球跑到他的身后去了,还要回去追... ...
  
  牛B的地方:怎么射门怎么有,进球率80%以上
  
  最后,祝大家玩得愉快!也祝cm能越做越好!
  
  [COLOR=#0038ff]再分析分析球员有隐藏值得能力值,这个地方问得比较多。
  下面以非守门员的finishing为例子简单分析一下。这个数值属于highconvert类型的值。这里我们假设球员的finishing的隐藏值为x,球员的current ability为y,显示在游戏里面的值为z。
  从nygreen的源代码中可以看出,z是x、y的一个二元二次函数,源代码我就不贴了,在stupid_yi文章中有。我只把我简化的数学公式写出来:
  
  此主题相关图片如下:
  
  
  (第二个二次项多写了一个平方,应该去掉)
  这个公式说明,球员的finishing的x为负值,但是只要y高,则z照样可以成为20;相反,x为正值,而y低的话,则z有可能不是20。但是这不表明这个球员的finishing就真的低了!在比赛中,电脑的运算是看x值的!这点我做的试验很好的说明了问题,游戏中存在的妖人也说明了这个问题。还是拿土豆来说吧,在我的档里面,他的Dribbling的z值为14,但是x值为正值,所以他的盘带功夫确实比一般人要强。
  如果一个球员的隐藏能力为0,则其current abiliy要到194,这个指数才能显示为20。
  
  从源代码中可以看到,如果表现出来的值大于或者等于20,则一律表现为20。
  所以,想要知道一个人的隐藏值到底为正还是负,除了新写一个查找工具,最简单的方法就是用mcm把他的Current Ability改为194,再回到游戏看他的指数,如果指数还是20,那该项的隐藏指数就是正的了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-25 01:30:31 | 显示全部楼层
作者:阿色  回复日期:2004-3-11 19:29:00  

  再继续解密】天才与妖人的由来
  不好意思,前一段时间由于工作的原因,没有时间对CM再做进一步的研究,也没有对帖子里的问题做及时的解答。昨天看到了哦卖镐的的“【继续解密】用FPE对球员指数的揭秘及修改【已更新】”(有点别扭),感到我的文章还是有点作用的,万分感谢哦卖镐的(还是别扭)。再来要向苦瓜表示道歉,我只凭主观意识就否决了“最终体现球员好坏的是fa吗”的疑问。
  
  一、在游戏中似乎真的是RA在起作用。我用FPE修改了一下范尼的Fininshing,当CA=180是,RA=-1和RA=127都可以得到FA=20,但是两者的场上表现却有天壤之别,RA=-1时的范尼经常会射偏,或者狂闷守门员,但是RA=127时的范尼简直就是进球机器,几乎所有射门都能射在球门之内,偶尔会被守门员没收,有时即便守门员碰到皮球,也会连球带人一起被射进球门。(简直就是大空翼嘛)因此我们认为RA起主导作用是有事实依据的。
  
  二、0和-1似乎是划分一个球员是天才还是普通人的界限。我试着将20个人的Technique改为0,两外20个人的Technique改为-1,三个月下来,>=0的还是>=0,<0的还是<0。也就是说,如果球员某项属性是负数,那么它最高也就只能达到-1,而某项属性是非负数,那么它最低也会有0,而由-1达到0,似乎是做不到的,至少在我的实验里没有得到证实。因此我们就可以了解一些天才及妖人的由来。不过我想对天才和妖人的定义做一下修改,天才应该是某些属性RA>=0而FA=20的球员,因为至少我们可以看到他很强;而妖人应该是那些RA>=0而FA<20的球员,因为他们虽然很强,但是我们只凭肉眼是看不出来的。
  
  三、球员的哪些属性重要。我觉得对一个球队来说,有一个天才(或者妖人)射手是最重要的,我分别将球员的各项属性都改到127,只有Finishing有立杆见影的效果,可以立刻将球队的水平提高一个档次。此外LongShot也稍微有点作用,我将Scholes的LongShot改为127,“30公里外一脚远射”命中率极高。不过,由于游戏中不会有LongShot这么高的球员,所有并不推荐大家使用这类球员。其他的诸如Crossing、Dribbling等属性,因为并不是直接导致进球的属性,所有重要性应该不及Finishing。(这只是就某项属性的重要性而言,对于球队的表现当然是所有属性共同作用的结果。)
  
  四、CA究竟有什么用。如果游戏中是RA在起作用,那么球员的CA似乎就没有什么用了。应为CA的主要作用应该是结合RA求出FA,可以看看下面一组结果:
  
  RA=-10, CA=1 --> FA=6
  RA=-10, CA=180 --> FA=18
  
  如果FA没有作用,那么CA也应当没有作用了。
  
  五、我们急切期待一款可以查看RA的软件。现在的软件都只能查看FA,而真正起到作用的RA却不得而知。这样可能会对我们选择球员产生误导。
  
  BTW,从给我和哦卖镐的的回帖中可以看出,collrain似乎应该对CM的内部结构有相当的了解。既然如此,为什么不给我们大家一些好的建议。如果不方便说的话,至少可以提供给我们一些资料,让我们自己去研究一下,多谢。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-25 01:32:18 | 显示全部楼层

现在是我说话了~

基本看懂了整篇文章的意思,但是要我研究就算了~实在研究不了~~~
回复 支持 反对

使用道具 举报

发表于 2005-5-25 01:48:27 | 显示全部楼层
分析得不错!

我的感觉也是这样.-1.0,质的区别

我用的也是哦卖稿的那个球探工具,但是综合评分这一块却做得不理想

一个球员对于场上局势到底起多少的作用?这点我很迷惑

另外我理解所谓运气一说,实在是函数运算的几种结果,但是有关赔率的计算到底是基于声望还是球队球员其它什么的,又不清楚了

还有一个小问题,或者与上面的有关,就是青年队或者二队的比赛结果,通常就是一线队的比赛结果,而前者通常又是先发生,很有趣

[ Last edited by 挑战极限 on 2005-5-25 at 01:49 AM ]
回复 支持 反对

使用道具 举报

发表于 2005-5-25 01:49:09 | 显示全部楼层
.......
回复 支持 反对

使用道具 举报

发表于 2005-5-25 02:31:31 | 显示全部楼层

我们不是程序员,我们是玩家,玩的是游戏,不是读程序写结果

关于RA的问题,这里很久以前就深刻讨论过了(和你找到贴子发表的时间差不多吧),最后的结论是免谈,影响游戏乐趣

有兴趣可以去寻找老贴看,但不要顶上来,也最好不要提出相关问题.
回复 支持 反对

使用道具 举报

发表于 2005-5-25 04:40:42 | 显示全部楼层
嗨...

所谓的精华贴有什么用?毫无系统,N个人东一篇西一句的,找个问题要半天,就这功夫,自己玩都明白了

每个人刚开始玩都会有疑问,都会想讨论,和别人交流,难道论坛不是用来讨论的?
啊?难道你们几位斑竹大人当初也是学习"精华贴"过来的?如果是,就当我说的是废话

真的佩服你们...其实结果怎样是其次的,重要的是交流过程,嗨...不说了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|FMFans ( 京ICP备07501235号 )

GMT+8, 2025-1-17 21:37 , Processed in 0.037565 second(s), 19 queries , Gzip On, APCu On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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