(要JavaScript)
今回はインフラ建設の元をとる話について考えます。
Ver1.4.1ではインフラを建設するとその1レベル毎に民需や軍需等の”建物”カテゴリの建設出力に+10%の補正がつきます。例えばインフラが8ならば出力は+80%されます。従ってインフラを増やすほど出力はおいしくなるのですが、インフラにもコストがあるのでそのバランスをどうしようかという話になります。
という訳で本稿の話題は、インフラを1上げたときどれだけの出力を建物カテゴリにつかえば元が取れるかということになります。インフラを増やさずに建設するのと増やして建設するのにかかる総時間を指針に計算します。
まず変数を用意します。インフラを1レベル上げるコストを I 、インフラ補正前出力を a 、現在のインフラによる”建物”への出力倍率を b 、建てる予定の”建物”総コストを x とします。
b についていえば b \in \{1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0\} です、実際のところ2.0は使われませんが。またインフラの増設にはインフラによる倍率補正がないことに注意します。
このとき、
インフラを増やさずに建てる場合の所要時間: \frac{x}{ba}
インフラを増やした後に建てる場合の所要時間: \frac{I}{a} + \frac{x}{(b+0.1)a}
後者が前者より小さくなれば元が取れていると判断できるので
\frac{I}{a} + \frac{x}{(b+0.1)a} < \frac{x}{ba}
これを x について整理すると
x > b(10b+1)I
となります。出力 a が消えて関係なくなっています。”出力”と少し大まかな言い方にしたのも結局式から消えるので民需を1使おうが15使おうがどう想定しても関係なかったという訳です。さて、文字 I を置きましたがインフラ1レベルはコスト3000なので I=3000 です。
例えば、インフラ6のときb=1.6になるので x > 1.6(16+1)*3000 = 81600 です。かなり大きい数字です。というのも、インフラを1レベル上げたときに出力が何倍になるか考えてみると、インフラ0->1の場合は1.1倍になりますがインフラ6->7だと大体1.06倍という数字になります。差分が元々の出力の10%になるので、インフラが高いとレベルを上げたときの上昇は相対的に小さくなる、つまり元を取るにはより大きいコストが必要というからくりです。
上記の内容を拡張して、インフラを数レベル上げる場合についても計算してみます。
先ほどと同じ変数と、インフラを上げるレベル数を n でおきます。
インフラを増やさずに建てる場合の所要時間: \frac{x}{ba}
インフラを増やした後に建てる場合の所要時間: n(\frac{I}{a}) + \frac{x}{(b+0.1n)a}
後者が前者より小さくなれば元が取れていると判断できるので
n(\frac{I}{a}) + \frac{x}{(b+0.1n)a} < \frac{x}{ba}
これを x について整理すると
x > b(10b+n)I
インフラ1レベルはコスト3000なので(ry例えば、インフラ4から n=4 レベル上げつつ元をとることを考えると x > 1.4(14+4)*3000 = 75600 になります。あ、インフラ6から1レベル上げるよりコストが小さくて済んでます。
さて本題としては以上なのですが、少し余計なことをやってみます。
それは、インフラにかかる出力倍率 i と”建物”建設にかかる「インフラ以外」の出力倍率 k を計算にいれることです。これまでは出力に関する倍率を”建物”に関するインフラの効果だけに絞っていましたが、ちょっと他のも考えてみたいなという感じです。ゲームシステム的に i と k であっさり表せるか確証をとってないので割と雑な話にはなります。
さてインフラを n レベル上げることとして
インフラを増やさずに建てる場合の所要時間: \frac{x}{bka}
インフラを増やした後に建てる場合の所要時間: n(\frac{I}{ia}) + \frac{x}{(b+0.1n)ka}
このとき c = \frac{k}{i} としつつこれまでと同様に
n(\frac{I}{a}) + \frac{x}{(b+0.1)ca} < \frac{x}{bca}
これを x について整理すると
x > cb(10b+n)I
つまり新たに係数 c がついただけです。c は分母にインフラにかかる出力倍率を、分子に”建物”にかかる出力倍率をおいた比率を表しています。共通部分は約分されて消えるので残るのは個々に特別にかかる倍率です。結局インフラに相対的に高い出力があれば元を取るに要するコストが安くなるよという話でした。ちょっと数値計算してみた話→(2)
余談:本稿ではbloggerでMathJaxをつかう手法を取り入れてます。
参考リンクはこちら(MathJax in Blogger (II) )。この都合で要JavaScript。
不等式を解くよりMathJax入れる方が余程時間かかってたり。
0 件のコメント:
コメントを投稿