游戏算法逻辑

时间:2015-04-01 21:10:40

标签: algorithm logic

这是一款赛狗游戏,有视频和玩家选择获胜者。 根据他们的赌注,算法选择适当的视频,以保持每个销售点的返回百分比,达到指定的数量。

这样的事情:

% Returning Specific Return Configuration, range: 50%~90%:
POS1: 65%
POS2: 78%
POS3: 50%
...
...
POSN: XX%

每个POS都有不同的收入,应根据其配置返回:

Ex: [pos]    [cashes] [should return]   [returns]  [step]
    -------------------------------------------------------
     POS1       100         65             60        44
     POS2       100         78             50        45
     POS3       500        250            150        45

基于某些组合发生的回报较低,因此剩余部分被视为债务。 这是因为每个商店都在销售如下数字:

POS1:   [Cashes]    ["Winners" Number]  [Possible Return]
          50           12                 150
          50           13                  60

所以该算法试图在有限的可能性中找到最接近的组合,返回该值+累计月债,基于以下每个步骤:

 sum([should return]) of step 45 
   + lowest not returned part of the month ([should return]-[returns]) 
                              of the stores present at that step (45) 

在相对较长的一段时间(约30天,即该过程的持续时间段)结束时,具体的返回是:

POS1: 64.4%
POS2: 72.9%
POS3: 49.2%
...

它现在工作了8个月,并没有明显的问题,但如果我已经足够清楚它是正确的逻辑吗?

每个步骤持续5分钟

*编辑*

碰巧使用一些额外奖金超过返回百分比的负差值,所以"客户债务",取决于价值导致每个步骤的回报阻止,直到该POS返回其百分比。

所以我改变了"最低未返回的月份部分([应该返回] - [返回])"随机选择那一步中的球员。这有帮助但不够,因为当负面的玩家pos在许多连续的步骤中独自时......实际上它并没有给出任何回报。这不是一件好事,所以我在这个负债中增加了一些实际使用的限制,随机因素的范围是

sum([should return]) of step 45 
+ ((case when the debt is negative under some relative "considerable" limit) 
    random[range(-0.01, 0.2)] * not returned part of the month ([should return]-[returns]) 
else the ([should return]-[returns]))

实际上范围(-0.01,0.2)意味着pos可以在某些相对限制下返回,事实上,即使单独玩,商店也会重新开始返回。

0 个答案:

没有答案