我在android中实现益智游戏应用程序。在这个应用程序中,一个级别完成,然后得到移动的得分数和剩余的级别完成时间。我的级别完成显示在对话框中它显示移动下一级,然后在这些对话框中显示每个级别值的移动次数和剩余时间 todisplay(移动次数+剩余时间)......
((的TextView)findViewById(R.id.MovesTextView))的setText( “动作 - ” +移动)。 ((的TextView)findViewById(R.id.ScoreTextView1))的setText( “时间 - ” +(时间/(1000 * 60))+ “:” +((时间%(1000 * 60))/ 1000));
如何实现这个问题请转发一些解决方案呢
答案 0 :(得分:2)
如果我理解正确,你想让得分是剩余时间和总动作的函数吗?所以问题是找到算法f(time, moves)
。
评分通常不是一门精确的科学。你可以用数学方法解决这个问题,但最好的解决方案是公平的解决方案;给予玩家完成等级的分数,然后给出与其他玩家相比有多好的奖励。
为了收集这些数据,许多不同技能水平的游戏测试者必须每次都玩很多次游戏。记录average time per move
,total number of moves
和time remaining
等信息,然后绘制此数据的图表。一旦了解了这些数据的形状,您将获得公平f(time, moves)
一个天真的解决方案就是这样:
level_score = level * 100;
max_bonus = 100000;
bonus_score = max_bonus / (time_taken + moves_taken + level*10);
score = level_score + bonus_score;