halo比特幣
1. 我用迅雷下載了光暈2的BT種子文件結果是這慫東西- -該怎麼弄
像是鏡像文件···去遊民星空或去網路貼吧:光暈精品區挖
2. 怎麼把手機游戲改bt
手機游戲中主要按文件不同可分為兩類,一是class文件,代表作品是:英雄傳說等,二是資源文件,代表作品是彩虹城堡等。目前,一是可以用halo2.0來修改的,二還無法用halo2.0修改,請自行使用十六進制工具(UE、HEX等)修改,本文不作討論。另外,存檔類的修改也不列入本文內容,因為也是涉及到十六進制工具的。
BT修改可能會破壞游戲原本的樂趣,所以我並不提倡,只是技術上的交流。還是那句話,想要體驗游戲的樂趣,請自行下載原版。
工具:halo2.0,DJ Java Decompiler
Java游戲:英雄傳說s60原版(S60V3,240*320)(本文以此為例。為什麼是原版?為什麼只是S60版?這是為了讓更多的迷友,可以自己動手修改英雄傳說的漢化版本,因為想玩才會有動力。若直接使用我修改的,這樣是無法學會BT修改的。)
1、數據的准備
什麼是數據的准備?為何要數據准備?簡而言之,就是我們到底需要改哪些數據,在游戲中原來的初值究竟是多少?那我們先用sjboy來模擬,看看我們到底想改哪些屬性數據。
咿呀!手機頑童竟然無法模擬?!到選擇人物時,直閃屏,按任何鍵都無法進入游戲。其實,只需不斷按F3鍵來減緩游戲的速度即可!進入游戲後,到人物菜單界面,
好,主要是以下數據,金錢300
圖一:等級數1,經驗值0,升級需要經驗值80,生命值72/72,法力值60/60
圖二:力量8,生命5,敏捷3,意志4,進攻16,防守5
圖三:可加點數0
2、數據的查找和修改
那我們一個個來找到這些數據並修改成自己想要的BT值。復習bb的修改教程,打開halo2.0,選擇class editor,編輯,全文查找,輸入300(為什麼是300?因為這個值較為特殊,重復率較少啊。如果選擇1,0,8或其它的話,可能會查出一大堆來,沒有編程基礎的迷友就會很迷茫,到底是去選擇哪個才是正確的。那又為什麼不選擇72呢?這個也挺特殊啊!我要告訴你一個不幸的消息,在本游戲查找中,會出現很多,而且可以告訴大家,搜索出來的都不是。Why?經驗?不是。是後面編譯文件的分析。)只查找到一個目標,按照bb的教程已修改其中的參數,金錢300,力量8,生命5,敏捷3,意志4。5個值。
那麼按照bb的方法,為何找不到其它相關的數值呢?!我非要修改怎麼辦?其實屬性值的賦值有兩種方式,一種是顯式,如i=300或a=5,bb的教程中只能修改到這些數據。另一種是隱式,如a=(b+c)*100等。此教程主要介紹隱式數值的修改。
一般來說,如果是賦值屬性值的話,會在同一個class文件中,所以,既然我們找到了金錢300的class所在,我們也應該找到了其它的屬性值。那金錢300具體是在哪個class文件呢?答案就在搜索結果中,類名——ao。
現在用DJ反編譯ao.class,查找300,發現,a_g_fld.a = 300;即金錢的變數名為a_g_fld.a,值為300.說明我們所找的class文件是正確的。那分別查找8,5,3,4,也找到了!
case 6: // '\006'
b_short_fld = 8;
e_short_fld = 5;
f_short_fld = 3;
g_short_fld = 4;
a_e_array1d_fld[0] = (e)ad.a((byte)0, (byte)0, true, false);
a_e_array1d_fld[0].b = true;
a_e_array1d_fld[0].h = 1;
break;
呵呵,力量的變數名為b_short_fld,以下類同,不作解釋。
那查找72看看,的確沒有。這也證實了此為隱式賦值。那我們該怎麼辦?這么多的變數,字元看得頭都大了,還是分不清哪個是哪個。我起初也想了很久,一個個去分析,太慢。那我們先搜索b_short_fld看看,發現倪端。
h_short_fld += ((b_short_fld + m) * 4) / 5;
i_short_fld += (b_short_fld + m) / 5;
dataoutputstream.writeShort(b_short_fld);
前兩個不就是什麼所謂的隱式嘛?!那h和i又代表什麼呢?暫且先不考慮。最後一句是io流操作,意思是把寫入b_short_fld變數值。這個倒是給了點啟示。
因為發現
dataoutputstream = new DataOutputStream(bytearrayoutputstream)).writeByte(f_byte_fld);
dataoutputstream.writeByte(g_byte_fld);
dataoutputstream.writeInt(a_int_fld);
dataoutputstream.writeInt(b_int_fld);
dataoutputstream.writeInt(c_int_fld);
dataoutputstream.writeInt(d_int_fld);
dataoutputstream.writeInt(e_int_fld);
dataoutputstream.writeInt(f_int_fld);
dataoutputstream.writeByte(z);
dataoutputstream.writeShort(a_short_fld);
dataoutputstream.writeShort(b_short_fld);
dataoutputstream.writeShort(e_short_fld);
dataoutputstream.writeShort(f_short_fld);
dataoutputstream.writeShort(g_short_fld);
只要把找到這些數據的源頭,也就是屬性值的源頭了。最後的4個變數即是bb教程中的4個屬性參數,這里就不作討論了。
1.那麼我們先從f_byte_fld變數開始。首先搜索,看看這個變數到底是代表什麼含義的。這個變數搜索共有3處。前兩處是寫入和讀取;另一處是賦初值public byte f_byte_fld = 0;所以暫且不管。
2. g_byte_fld變數,還是搜索,g_byte_fld = 1;另外還有幾處判斷,略去,有興趣的迷友可自行研究。
另外,if(g_byte_fld < 99)
{g_byte_fld++;
……
}
猜測是等級,如果變數小於99,遞加……。經測試,的確是表示等級的變數。那麼我們把變數變為11試試,即把g_byte_fld = 1改為g_byte_fld = 1;那這個是顯性函數,修改方法同bb教程,修改後如圖:
3.變數a_int_fld = d_int_fld; b_int_fld = e_int_fld;那麼我們先看變數d_int_fld
d_int_fld = (e_short_fld + n + g_byte_fld) * 12;
e_int_fld = (g_short_fld + p + g_byte_fld) * 12;
讓我們看到了一些希望。因為72和60都是12的倍數,難道這就是我們所要找的數據。
據我們所知e_short_fld=5,g_short_fld = 4(前面已講到),那麼g_byte_fld就是前面2所講的等級,即生命值和魔法值與生命和意志有關,而且與等級有關。那n與p又是代表什麼呢?
public final void n()
{
e ae1[] = (e[])a_e_array1d_fld;
m = 0;
n = 0;
o = 0;
p = 0;
for(int i1 = 0; i1 < 5; i1++)
if(ae1[i1] != null)
{
m += ae1[i1].j[0];
n += ae1[i1].j[1];
o += ae1[i1].j[2];
p += ae1[i1].j[3];
}
在n()中賦值和遞加。初值為n=0,p=0;代入,d_int_fld=72;e_int_fld=60,^_^,終於找到真身了。那麼最簡單修改就是修改12這個系數,因為這也既不改變原來的計算公式,也容易操作,當然你也可以修改成其它。說改就改,把12改成60,理論上應該是360和300.
Halo2.0操作步驟:打開jar,選擇ao.class.右鍵editor class,出現下圖:
反編譯得,d_int_fld = (e_short_fld + n + g_byte_fld) * 12;在public final void n()中,那麼halo2.0方法找到n,發現訪問控制public,final已勾選,類型void,和反編譯的完全相同,那麼選擇n方法下的code,如圖
把159 bipush 12和180 bupush 12中的12均改成60後,保存方法,編譯打包運行得:
與猜測得相一致。Binggo,當然,還可以直接修改這個隱式函數,這里不做討論。(修改無極限,只要你能想到,修改的方法很多。我只是提供大家思路而已)
那麼先前找到的a_int_fld是什麼呢?繼續查找,
public final void b(int i1)
{
a_int_fld += i1;
if(a_int_fld > d_int_fld)
a_int_fld = d_int_fld;
if(a_int_fld < 0)
a_int_fld = 0;
bs.a_as_static_fld.c();
if(a_int_fld == 0)
{
a((byte)6);
super.k = 0;
u = 24;
return;
} else
{
return;
}
}
所以可以知曉,a_int_fld代表生命值的當前值。同理可得b_int_fld代表魔法值的當前值。
4.變數c_int_fld,c_int_fld = 0;初值為0,難道是經驗值?繼續查找,
public final void f(int i1)
{
i1 *= 4;
for(c_int_fld += i1; c_int_fld >= f_int_fld;)
{
c_int_fld -= f_int_fld;
r();
}
if(c_int_fld < 0)
c_int_fld = 0;
bs.a_as_static_fld.e();
a_p_fld.a(i1);
}
既然出現f_int_fld,那麼順便查找一下,發現
f_int_fld = (g_byte_fld * g_byte_fld * g_byte_fld - g_byte_fld * g_byte_fld) + 80 * g_byte_fld;
看到80了,一陣激動,因為g_byte_fld的初值為1(前面已經搜索過)那麼f_int_fld的初值就為80,哈哈,終於找到升級需要經驗值了。為了驗證我們的猜想,把80改成99試試,如圖,的確如此:
呵呵,把f_int_fld改成1就可以實現,打一個怪可以升N級,或者自己編個函數,實現打一個怪升一級。
回到剛才的c_int_fld,那麼當c_int_fld += i1; c_int_fld >= f_int_fld;時,c_int_fld += i1; c_int_fld -= f_int_fld;猜想c_int_fld變數代表經驗值。因為,若c_int_fld=82>80時,那麼就升級,經驗值變為82-80=2.好,那我們來簡單修改c_int_fld的初值。c_int_fld = 0,把0改成66試試。變數賦值語句在public final void c(byte byte0)方法中,修改後得下圖:
至此,圖一所涉及的所有參數等級數、經驗值、升級需要經驗值、生命值、法力值。已都找到並修改。
5.變數a_short_fld,a_short_fld =0,
if(g_byte_fld < 99)
{
g_byte_fld++;
n();
super.a.addElement(new aw((byte)3));
super.a.addElement(new aw((byte)4));
a_short_fld += 3;
}
分析得,a_short_fld變數是表示可加後可加點數的。為什麼?首先初值是0,另外,在等級<99時,每升一級變數就在自身的基礎上+3,推測應該是表示升級後可加點數。修改後如圖:
至此,已經把io操作流中的寫入數據一一分析。但好像還是遺漏了圖2中的攻擊和防禦數值。那它們到底隱藏在何處呢?的確,我也找了很久沒找到,後來發現,攻擊與力量值有一定聯系,隨著力量數值的修改,攻擊值也會變動
那麼我們就來搜索b_short_fld這個變數。發現
h_short_fld += ae1[0] == null ? 0 : ((short) (ae1[0].a + (ae1[0].e * 5) / 2));
h_short_fld += ((b_short_fld + m) * 4) / 5;
i_short_fld += ae1[1] == null ? 0 : ((short) (ae1[1].a + ae1[1].e));
i_short_fld += ae1[2] == null ? 0 : ((short) (ae1[2].a + ae1[2].e * 2));
i_short_fld += ae1[3] == null ? 0 : ae1[3].a;
i_short_fld += ae1[4] == null ? 0 : ae1[4].a;
i_short_fld += (b_short_fld + m) / 5;
i_short_fld += g_byte_fld / 3;
h_short_fld和i_short_fld很特別,與力量有關的隱式函數,值得我們關注。
經修改發現,的確如我們所料(具體變數間如何變化,就不在展開,牽涉比較多的變數數據基礎,怕很多迷友看得一頭霧水。有興趣的迷友可以自己參看一些基礎知識。)
把h_short_fld += ((b_short_fld + m) * 4) / 5中的4改成40,i_short_fld += g_byte_fld / 3中的除法idiv改成乘法imul(具體圖文不列舉了,如果能熟練操作halo2.0的應該沒有問題,即把偏移量為433:idiv,編輯(高級),修改成imul即可。)
得,攻擊變為74,防禦變為8
3、小結:本教程主要講解如何去尋找目標數據,halo2.0上的操作講解並不詳細,請諒解!
數據准備中的所有數據已一一找到。
BT修改並不是一件很容易的事,需要一定的耐心和推斷能力。
3. 光環2BT下載了後怎麼用
……截圖看看(就是你下載的文件夾裡面的圖)
不過,我猜應該是iso文件吧
需要下載daemon
tools虛擬光碟機,可以網路搜,第一個就是
然後安裝,之後打開虛擬光碟機,點擊添加,找到iso文件,然後點載入~~運行autorun即可
4. 想不到!配角搶去主角光環的影視劇有哪些
2018年暑期熱播的《延禧攻略》,主角魏纓絡雖然表現可圈可點,但還是被兩任皇後搶去了主角光環.秦嵐的富察容音。
先皇後;佘詩曼的嫻妃,繼皇後.聽說香港那邊認為佘詩曼飾演的嫻妃才是主角.其實想想,嫻妃是經歷了一般主角才經歷的事,然後完成逆襲。
5. 為什麼光暈3的BT種子下載完以後怎麼解壓不了
....你確定需要解壓?這是xbox上玩的,不需要什麼ios鏡像。准確說你可以直接到本地的xbox店去考游戲,不過根據樓下的回答c盤什麼,我估計你是不知道這光暈3odst要在xbox上玩
6. 求一份BT的暗黑2人物存檔要光環秒殺一切怪的那種
有youxiang嗎 發給你 直接給你個護身符 你自己放到大號背包里就行了
7. 誰有halo2的下載地址啊不要電驢的,要迅雷的,別是BT的。
尊敬的迅雷用戶,您好:
建議您可以購買正版影片進行觀看,如果迅雷看看上有您想看的電影,您也可以到迅雷看看(www.kankan.com)進行觀看的,不過迅雷看看裡面有部分影片由於版權方的要求,需要進行收費或者開通影視VIP才可以觀看的。
也可以到電影天堂:http://www.dy2018.com/ ,
人人影視:http://www.yyets.com/ 搜索。
對於最新的電影,電影院沒下架,互聯網是不會有這部影片的,不排除一些不清晰的偷拍版,建議您耐心等待互聯網正版影片的出現。
感謝您對迅雷的支持,希望能夠幫到您。
更多疑問,歡迎您向迅雷網路平台提問。
8. 配角搶去主角光環的影視劇有哪些
有好的電視劇不僅要有好的劇本,好的演員,好的導演,還少不了令人難以忘記的配角,很多人看完電視劇之後只記得主角的名字。卻忘記了劇中那些舉足輕重的配角。
紅花還需綠葉配,配角雖然沒有主角的光環,不能在劇情中翻雲覆雨,但是並不能掩蓋配角的一部劇中的重要性。只要擁有好的演技,那麼配角也可以搶走主角身上的光環,甚至有可能一部電視劇播出了之後,配角給人留下的印象甚至會遠遠超過主角。
9. 求光暈以下載地址,不要BT的
http://983405.k115.system.yx8zc.com/search.asp?action=soft&keyword=光暈
這個下載速度挺快的,游戲也能玩!
10. 下載的光暈2(BT)的最終解壓縮出來的Halo_2-Razor1911不會安裝。
全英文一開始可能是授權文件,一般有單選框在下面,有可能是YES或者NO,有可能是 i accept ……或者i don;t accept ……系列英文,點擊是,就是選 yes或者 i accept 開頭的,再點擊 next,表示下一步,後面還要有個地方是讓你選安裝位置,一般是下拉菜單可以選擇你要安裝程序的硬碟位置,默認都是C盤,不是下拉菜單需要手動填寫的就直接把地址欄的C改成任意盤符字母即可,比如把C改成D,就表示安裝在D盤,很簡單,當然不改也可以。如果遇到進入之後不是直接開始安裝的,點擊有 install 字母的這個按鈕即可進入安裝,至於其他的,有next的就單擊 next,到最後安裝完畢之後,單擊finish 按鈕即可。