游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3077|回复: 8

[讨论] 公式问题求教。。。

[复制链接]

27

主题

364

帖子

374

积分

中级会员

Rank: 3Rank: 3

积分
374
发表于 2006-6-27 15:53:00 | 显示全部楼层 |阅读模式
六.积分方法

6.1 赢、输、和的分数计算方法

NewS = OldS + K * (Res - Exp)
*NewS 为对局后积分, OldS 为对局前积分,
*K 为放大系数,见下表所示
*Res 为对局结果 ( 胜为 1 负为 0 和为 0.5),
*Exp 为期望结果值,也就是玩家获胜的几率

Exp=1/(10^(Dr/400)+1)

其中 Dr=( 对手积分 - 你的积分 ) + Yfirst ;
若为先手, Yfirst=-100 ;反之 Yfirst=+100;

K 值如下表所示:
积分            K 值         积分                 K 值
<1000             120                2000 -2199         20
1000-1399   60                2200 -2399        15
1400-1799   30                >2400                10
1800-1999   25
请注意,按照上面的积分计算方法,会出现下面的情况:
1 如果分数较低者赢了分数较高者,获取的分数会比较多
2 如果出现和局,先手的人会被扣分

这个公式是怎么样形成的,为什么用这样的算法,

0

主题

124

帖子

125

积分

注册会员

Rank: 2

积分
125
发表于 2006-6-27 18:28:00 | 显示全部楼层

Re:公式问题求教。。。

Dr=( 对手积分 - 你的积分 ) + Yfirst ;
Exp=1/(10^(Dr/400)+1)
NewS = OldS + K * (Res - Exp)
第一部分 Dr=( 对手积分 - 你的积分 ) + Yfirst
1、yfirst作用是评估先手价值,在此公式中,先手优势越大yfirst应越小,如果
先手无优势则应取0,如先手劣势大则yfirst〉0

第二部分Exp=1/(10^(Dr/400)+1)
1、10^(1/400),用于修正积分差对期望值的修正,此值越小(必须大于1),则积分差对期望值影相对较小。其中,表现为10^(dr/400)的形式是为了更直观和方便,10可以视作固定常量(估计取10是为了方便计算),更改400的取值就可以了。(此值越小(必须大于0),则积分差对期望值影相对较小)
Exp=1/(10^(Dr/400)+1)
2、这个1可当作固定常量,用来保证双方期望胜率均为50%时平局各自得分为0,如果你减小此值会出现双方同时减分,增加此值则出现同时加分。
exp=1/(10^(dr/400)+1)
3、这个1也当作固定常量,不要改动。

第三部分NewS = OldS + K * (Res - Exp)
1、这部分就K一个,楼住也给了K的取值表…这里K第一起修正数值的作用,让获得得分数更好看些;第二控制总分数。如果你希望出现高分就增加K值,但是别忘记对应增加400的值。

总的来说,公式里 Yfirst\400\K 三个常数的取值控制了整个公式效果。使用这个公式,按自己想要的效果修改这三个值就好了,别的基本可以不动。

公式制定是从要实现的效果出发,这个公式要实现的效果主要是
1、对双方实力进行评估,积分相对高的和先手默认为有优势,对其要求也相应提高
2、在实力不平衡的情况下,尽量做出努力,只要做到相对好就给予奖励(得分或少输分)
最终要达到的效果就是另高手对新手的时候双方都要尽量做到最好,避免因实力差距过大而使得双方无法尽兴。

至于公式如何形成,基本就是按那三个公式排列顺序。
1、先对双方实力进行评估  有了公式一
2、修正评估,转化为胜率  有了公式二
3、根据胜率决定分数        有了公式三

注:以上纯属个人意见,如被误导概不负责 [em7]

61

主题

1781

帖子

1867

积分

金牌会员

Rank: 6Rank: 6

积分
1867
发表于 2006-6-27 21:13:00 | 显示全部楼层

Re:公式问题求教。。。

公式制定是从要实现的效果出发,这个公式要实现的效果主要是
1、对双方实力进行评估,积分相对高的和先手默认为有优势,对其要求也相应提高
2、在实力不平衡的情况下,尽量做出努力,只要做到相对好就给予奖励(得分或少输分)
最终要达到的效果就是另高手对新手的时候双方都要尽量做到最好,避免因实力差距过大而使得双方无法尽兴。

至于公式如何形成,基本就是按那三个公式排列顺序。
1、先对双方实力进行评估  有了公式一
2、修正评估,转化为胜率  有了公式二
3、根据胜率决定分数        有了公式三
=======================================================

顶一下……

27

主题

364

帖子

374

积分

中级会员

Rank: 3Rank: 3

积分
374
 楼主| 发表于 2006-6-27 22:36:00 | 显示全部楼层

Re:公式问题求教。。。

多谢,我再研究研究

5

主题

71

帖子

71

积分

注册会员

Rank: 2

积分
71
发表于 2006-6-28 10:14:00 | 显示全部楼层

Re:公式问题求教。。。

敢问楼主在是哪看到这些资料的?

27

主题

364

帖子

374

积分

中级会员

Rank: 3Rank: 3

积分
374
 楼主| 发表于 2006-6-28 11:43:00 | 显示全部楼层

Re:公式问题求教。。。

QQ游戏。。。。。。。。。。。。。想弄明白,方便以后套用

154

主题

4567

帖子

4579

积分

论坛元老

Rank: 8Rank: 8

积分
4579
QQ
发表于 2006-6-28 12:05:00 | 显示全部楼层

Re:公式问题求教。。。

个人认为,理解个思路然后和找出某个函数放在坐标系套曲线就可以。。。公式不是自己写的,细研究真的很伤神,有些东西还是存在个人感觉的。

27

主题

364

帖子

374

积分

中级会员

Rank: 3Rank: 3

积分
374
 楼主| 发表于 2006-6-28 12:20:00 | 显示全部楼层

Re:公式问题求教。。。

先要了解形成过程。。。。。先伤神下,以后就受用无尽了,哇咔咔

154

主题

4567

帖子

4579

积分

论坛元老

Rank: 8Rank: 8

积分
4579
QQ
发表于 2006-6-28 16:14:00 | 显示全部楼层

Re:公式问题求教。。。

我不敢用高于乘除的运算,最多用平方。。。是不是数学能力有点差呢。感觉加减乘除就能做出很丰富的内容了,用乘积,天啊,我算不过来了,@@
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-7-7 06:45

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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