看板 CGI-Game 關於我們 聯絡資訊
※ 引述《icenuclear (藍色丁丁)》之銘言: : 本文所有的演算法皆為推測而得的 : Let : t為時間差 單位為hr : P = Population : S = Total satisfaction : P + S = K : P & S 存儲格式皆為浮點數 : 網頁顯示的P為無條件捨去後的結果 : 網頁顯示的S為無條件進位後的結果 : Growth = dP/dt = (2*S + 3)/100 = (2*(K - P) + 3)/100 (1) 3/100是什麼?有這個隱藏常數嗎? : 人口成長率=人口對時間之變化率 : 網頁顯示的G為對小數點第3位四捨五入之結果 : 由(1)得 : P = c*exp(-t/50)+K+1.5 (2) : 伺服器只要紀錄c和K和時間原點即可知道P 伺服器不會是紀錄c與K來算P吧 我以為是紀錄current P、current S、current time 每隔一個interval,跑一個function,得到新的P S : *********舉例分格線******** : 假設一開始時間點為0 (t = 0, P = P0, K = K0) : (電腦儲存時間格式為目前對某一天的豪秒數差 哪一天我忘了) : c = c0 = P0 - K0 - 1.5 : 得知P = c0*exp(-t/50)+K0+1.5 : 之後過了1小時(時間點為3600000, t=1) : 此時P = P1 = c0*exp(-1/50)+K0+1.5 : 接著改變K=K1 (喝酒之類的) : 於是c = c1 = P1 - K0 - 1.5 : 時間原點記為3600000 : 接著又過了2小時(時間點為3*3600000, t=2) : 此時P = P2 = c1*exp(-2/50)+K1+1.5 : ************************************ : Gold對Population的關係為金幣對時間之導數為4*P : dG / dt = 4*P (假設無軍隊,材料跟金幣可等值互換) : 得 G = -200*c*exp(-t/50) + (4*K+6)*t + d 我學資工的,上面的推導看不懂 orz 微積分6年前就還給老師了XD 所以我都用暴力法寫程式來算 也許之後會用到這些推導,希望你能研發出一種更漂亮的計算式 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.168.201.177
gg123sf:0.0 資工系推~ 06/29 01:43
hans5300609:看不懂啦...直接做VB算了XD比較實在(歐飛) 06/29 02:02