我正在创造一个玩家可以制作合金的游戏。为了使其不易预测和更有趣,我认为合金的耐久性和硬度不应该通过简单的公式来计算,因为在合金具有最佳统计数据的情况下极易发现极值。
所以问题是,是否有一个函数的公式,只有通过调查所有点才能找到极值?输入值将以百分比表示:0.0%-100.0%。我认为它应该是这样的:half sound wave
答案 0 :(得分:4)
一个非常简单的方法是使用几个sin函数,只需改变每个新玩家的常数和符号。这是一个例子(sin(1.1*x) + sin(x) + sin(0.9 *x))^2
alt text http://i43.tinypic.com/k1ph80.gif
如果你在10pi和20pi之间使用它,你可以使用局部最小值来平均增加函数。
答案 1 :(得分:1)
使用三角函数调制一个简单的线性或指数函数,其频率和幅度取决于输入,可以得到你想要的结果。
答案 2 :(得分:1)
我认为你不需要一个公式 - 在你的域周围抛出一堆随机值,然后在它们之间进行插值(线性插值会做)。然后你甚至可以在每次游戏运行时或者偶尔改变“公式”,或者随着时间的推移等改变它,等等。
答案 3 :(得分:1)
如果你想要一些很难预测的东西,那么我建议每次让一个随机数生成器使用相同的种子。您可以将它用作您提出的任何功能(触发功能或不执行功能)的信封,以使其更加锯齿状。
答案 4 :(得分:0)
使用的一个有趣的公式是Black-Scholes期权定价模型的gamma。它如下:
您可以轻松替换变量,这是函数外观的图表: