等級:7 - 駕輕就熟 經驗值:0 / 66 魔法值:127 / 2556 生命值:6%
升級
  60.33%
TA的每日心情 | 擦汗 2017-11-11 04:04 |
|---|
簽到天數: 23 天 [LV.4]偶爾看看III
|
馬上註冊,結交更多好友,享用更多功能,讓你輕鬆玩轉社群。
您需要 登入 才可以下載或檢視,沒有帳號?立即註冊
×
本文章最後由 gyle 於 2016-4-13 10:57 PM 編輯 o. B$ q2 Y! j9 g7 j6 Z2 v
( M" c0 Q! r8 y3 c9 {2 Y
小弟看過fallrain大大的探險暴資源的文章後 在網上找了一些遊戲的code來看! z0 l: @! R- P) Z/ U
但才疏學淺又無學php 睇到一舊雲 想拋磚引玉 請各位高手指導下 當然站長開估最好 5 J& }3 d4 g! }; t
我不知道站長真正用的是哪個version的code(寫是1.4 但數據出入太大) 中間改了多少 所以參考了5個version$ q, Z. `/ W; ] O: N
1 https://github.com/shoghicp/xnov ... nCaseExpedition.php
% w! W5 A5 t2 u1.3 http://2moons.googlecode.com/svn ... nCaseExpedition.php
6 Q; ~+ T) |4 z, E' @1.4 http://2moons.googlecode.com/svn ... nCaseExpedition.php
7 x" \& @& _4 H" r; Y1.6 https://searchcode.com/codesearch/view/31727593/; \ h, X X# a1 y9 u
1.7 https://searchcode.com/codesearch/view/3773791/$ J/ h* E5 C+ a" M. l# L& k
我個人認為有幾點可以確信:
0 z, z4 ~" ], j2 L# H1.開資源,海賊,黑洞,黑暗物質的機率跟船隻數量,種類無關純粹人品
- w3 ~, w0 M! d+ K& Z2.開資源 資源的數量除了跟船隊容量有關外 還有船隊分數
! J- N6 x7 M2 J# f3.開黑暗物質 黑暗物質的數量純粹與人品有關3 J0 B% V- |5 @/ N* Q
第一點:
. j, I. Y" x- G% R# {. g探險機制是用rand() funtion 來決定
. P I% d6 ]" t在1.3version 用$GetEvent = mt_rand(1, 6);來決定, 即開資源,海賊,黑洞....等等用1至6表示 然後system隨機開出: S0 U2 Q9 _5 p+ z) ]( A5 q V
1.4version 一樣
5 g: s; l6 c+ y; C5 K5 [3 c H" p+ X但解釋不到'''沒有任何特別事件''這個項機率為甚麼這麼高2 P- i/ i" s2 ~% J }8 J( y
1.6version 用$$GetEvent = mt_rand(1, 9);來決定 即開資源,海賊,黑洞....等等用1.至9來表示 但''沒有任何特別事件''這項是以7,8,9表示 即1/3機率2 }' B" Q3 p8 e# l! l& M
1.7version 太難...看不懂 不過應該是''沒有任何特別事件''這項機率降低
$ n, B) l5 {. n7 v, E第二點:/ q& B9 r7 t' r; t4 [0 {+ t
資源的數量
% S; h$ P+ N) J9 Q" a3 U1.3version跟1.4version
2 U1 }: T4 R a2 M! N1 m, g& W1.6version 1.7version都用同一條code/ T7 ~" k) r' ~, y- ` |1 C. P: @6 g
case 1: $WitchFound = mt_rand(1,3);<----這部分開始! \ J* S% X( P! f
$FindSize = mt_rand(0, 100);
( w( A4 i/ I9 Y6 j" g if(10 < $FindSize) { F$ x; o1 A: L
$WitchSize = 1; 0 T+ H, D7 ?: g3 v
$Factor = (mt_rand(10, 50) / $WitchFound) * $GLOBALS['CONFIG'][$this->_fleet['fleet_universe']]['resource_multiplier'] $Message = $LNG['sys_expe_found_ress_1_'.mt_rand(1,4)]; } ) b+ w' u8 m; M% N* _: Y1 F" d
elseif(0 < $FindSize && 10 >= $FindSize) {
& C- i# G8 T j# U7 b $WitchSize = 2;
+ k$ {( Y2 \& k, K# @ $Factor = (mt_rand(52, 100) / $WitchFound) * $GLOBALS['CONFIG'][$this->_fleet['fleet_universe']]['resource_multiplier'];
5 T9 T1 u, ]- a2 g2 q- t $Message = $LNG['sys_expe_found_ress_2_'.mt_rand(1,3)];
# z$ d. \% {( ~- ?+ S! `+ G* b }
# b# q( S8 V/ _' H( D2 H9 _$ D elseif(0 == $FindSize) {. U# C7 e& _5 y" s
$WitchSize = 3;
/ O- m9 @4 n, T4 k& A; G& \* p $Factor = (mt_rand(102, 200) / $WitchFound) * $GLOBALS['CONFIG'][$this->_fleet['fleet_universe']]['resource_multiplier'];
4 [+ I) E" S r& Q+ ?+ {! Y $Message = $LNG['sys_expe_found_ress_3_'.mt_rand(1,2)];<----到這裡全是機率控制 大致是資源的數量分為三種90% 是金屬, 9%是晶, 1%是氫高 " b6 Y6 x: l, [9 U8 C5 }/ }6 }
} ; A, t! V) ?0 h. ]3 D' Q9 _4 X5 o5 B0 C# m
$StatFactor = $db->uniquequery("SELECT MAX(total_points) as total FROM `".STATPOINTS."` WHERE `stat_type` = 1 AND `universe` = '".$this->_fleet['fleet_universe']."';");
) W3 T1 P* Q% t6 Y $MaxPoints = ($StatFactor['total'] < 5000000) ? 9000 : 12000;<----這裡是船分計算,船分高過5百萬 可得乘資源的數量12000 低過乘9000
3 K" ^: R$ l( }; I' u% K% i t5 W! r $Size = min($Factor * MAX(MIN($FleetPoints / 1000, $MaxPoints), 200), $FleetCapacity);<----這裡是最終計算(比較複雜) 首先是計算船分/1000低 還是剛才提及的9000或12000底 選較底那個 但最底都有200 ,然後乘$Factor,就是可得乘資源 如果超過船隊容量就只得船隊容量switch($WitchFound) {
5 W+ h5 {8 r0 \% y; e1 K* f, P& a% [! p case 1: $this->UpdateFleet('fleet_resource_metal', $this->_fleet['fleet_resource_metal'] + $Size); . r- s; g, R1 j' ~# u1 d0 `0 C$ J
break;* ~, u. r, a7 q9 i( H# i: c, S7 w7 g$ M
case 2: $this->UpdateFleet('fleet_resource_crystal', $this->_fleet['fleet_resource_crystal'] + $Size);2 D6 o8 f0 [3 {: q- i
break;7 o1 h% f: w' r& C5 B
case 3: $this->UpdateFleet('fleet_resource_deuterium', $this->_fleet['fleet_resource_deuterium'] + $Size);
* [. q' y2 \* y! a6 _8 G# { break;
8 O- D n& t7 k+ s1 w- \ } break;
: d5 f2 N( t8 t( Y3 \第三點1 ~4 S/ T8 h, ~7 M
黑暗物質的數量% v8 r" T2 c6 R$ _8 M' D$ j' V
case 2:* h# W$ u9 k7 P; M) A$ s8 @6 b: a
$FindSize = mt_rand(0, 100);/ R' Y6 o; S3 ]+ I3 M# F8 u d% _9 T
if(10 < $FindSize) { ( q; R" r# i/ G) q! M: Y
$Size = mt_rand(100, 300); 9 q4 B: z9 z' m7 P7 X0 l1 Y* Z
$Message = $LNG['sys_expe_found_dm_1_'.mt_rand(1,5)]; 9 `2 c R$ V+ |$ U& j: c t, u
}
, f9 l! V" ^0 W; T0 z* Q, J1 { elseif(0 < $FindSize && 10 >= $FindSize) {
2 Y; ~4 ]/ i% Y# U+ f6 J& H4 ^$ N( ~" t $Size = mt_rand(301, 600);
! W$ W- e5 M7 b( K. s T $Message = $LNG['sys_expe_found_dm_2_'.mt_rand(1,4)]; % q4 s$ _, P+ J. w: |. u8 U1 V4 G
}
* n+ N( k- [9 P* K9 n elseif(0 == $FindSize) {
5 G* B( U0 m* q $Size = mt_rand(601, 3000);( Q$ [0 n) t- h2 `1 U7 i
$Message = $LNG['sys_expe_found_dm_3_'.mt_rand(1,2)];
$ t7 s/ V' V1 r/ y c; W } 6 A5 b% D. o3 t) {: G# t
$this->UpdateFleet('fleet_resource_darkmatter', $this->_fleet['fleet_resource_darkmatter'] + $Size);6 r) H; j# y; a
system決定, 90% 100~300單位 9% 301~600單位 1%601~3000單位& f `/ h! D# A4 N1 X
最後船種分數:
5 p+ Z* x! t# n1versionNo. 分數 船名8 H* b4 U# r R2 N! e$ w+ k# A& D7 ^( m
202 => 1.0, // 'Petit transporteur' \4 p: F0 k; @" v, G1 [
203 => 1.5, // 'Grand transporteur'
' `! X" w K* P204 => 0.5, // 'Chasseur léger'2 C$ `. J3 J$ u M7 K
205 => 1.5, // 'Chasseur lourd'( F; M: _/ s/ G# b: n3 d
206 => 2.0, // 'Croiseur'| 207 => 2.5, // 'Vaisseau de bataille' |
: q2 w& @' h( N! h2 ~
| 208 => 0.5, // 'Vaisseau de colonisation' | - B) k, `1 K* k" U5 G
| 209 => 1.0, // 'Recycleur' |
% r2 T) o6 |) j: B. m5 V* V | 210 => 0.01, // 'Sonde espionnage' |
& ?6 @) P, b) q; B | 211 => 3.0, // 'Bombardier' | " s9 |2 | \0 Q* {; ?' r S' P
| 212 => 0.0, // 'Satellite solaire' | 9 [8 k( I; t' n3 p6 l1 N: F7 y
| 213 => 3.5, // 'Destructeur' |
" ^) M9 \, l4 g& P | 214 => 5.0, // 'Etoile de la mort' |
* m5 Z, v j, i/ a# ?; ]9 i5 H | 215 => 3.2, // 'Traqueur' | : g8 o' K4 f1 ^' a4 l
1.4-1.7version
2 a6 c: y4 F/ t$Expowert[202] = 12;
7 L$ d- i& I) g5 j% R$Expowert[203] = 47;9 `" R$ x- y. X4 i, z( S
$Expowert[204] = 12;' Z5 B8 P" c# y$ |
$Expowert[205] = 110;8 p) i# a: K. B
$Expowert[206] = 47;5 k2 _0 |2 }- Y e% h: N
$Expowert[207] = 160;5 g8 n0 M* j3 l, p3 ?
新與舊太大出入難以作準 希望有人破解http://ocalc.ogame-user.de/?sec=_fleet&lang=en 計算器如果計算器準確 個人認為毀滅者 應該是最好刷資源 其次是BB- f/ E, @! W6 J- [$ p
1 n7 I! y( ?- _) E: B; f U
! |! Y0 G& `# W) P3 ~, p H- Y
$ R5 Y! K4 k7 G8 y5 n* f$ q) a
" l9 U( q+ m! `* T; ^! e, h! c
! u( m: m3 o- \+ t: _8 N/ |. o5 U9 E6 I1 k+ `8 ^ T; f) [
& L; h* R" c4 Z0 V6 Y
; j% \, A9 v' q, t0 ^" t' P8 G% x9 R/ {
# m7 h' u, o$ y+ U Z
& [( ^: w8 k# l; ?1 d |
|