EUD

EUD是一種BUG,普通的Deaths觸發是基於Deaths數據表的起始地址。

基本知識

* SC在記憶體中儲存數據(想像成由一堆位元組組成的線)

* 在SC運行時,它在Windows有固定的記憶體(虛擬記憶體)

* 記憶體有兩種:代碼段 和 數據段.數據段可讀可寫; data 段(?)可讀可寫. (代碼段不可寫?)

* 所以SC在數據段中儲存Deaths數據.

* 在儲存Deaths數據的記憶體塊中的第一個雙字(4位元組)存儲的是Player1的Marine死亡數。而這個偏移地址在各個星際版本中是不同的。

來舉個例子: 00560009H (以H結尾表示這是個十六進制數)是存儲Player1的Marine死亡數。注意:這個死亡數是用4位元組存儲的,所以你只能用Deaths觸發寫入4位元組的數據 (從Deaths數據表開始的每4個位元組);還能能將這個雙字的一半作為位元組讀取。

那么下一個Deaths數據 (Player2的Marine死亡數) 的地址是0056000dH (00560009+4),再下一個 (Player3的Marine死亡數) 的地址是00560011H,依此類推,直到Player12。

那么EUD觸發是什麼原理呢?

普通的Deaths觸發是基於Deaths數據表的起始地址 (存儲Player1的Marine死亡數的邏輯地址),

它加上UnitID*48 (UnitID可以從 datedit中獲得)再加上PlayerID*4 (因為每個Deaths數據占4位元組) [!PlayerID是從0開始計算的,Player1 = 0] 之後可以得到該Player的特定Unit的Deaths數存儲地址。

觸發條件Deaths讀取此4個位元組的數據判斷是否滿足給定數值大小關係,而觸發動作Set Deaths在這個地址上寫入4位元組的數據。

普通的Deaths觸發只能訪問Deaths數據表的數據區 (UnitID和PlayerID都是有意義的值)。

注意不是Deaths表中的每個地址都能寫入數據,每8個雙字之後跟著的4個雙字是不能寫入的(你不能修改P9~P12的Deaths數據)。

好了,如果你設定一個很大的UnitID值,那么你得到的地址將超過Deaths數據表尾部(因為你設定的UnitID是2個位元組大小,最大值65535,結果遠遠超過了Units.dat區域)。

那么將會做什麼

總之就是越過了Deaths表尾部開始訪問其他數據區了,如Upgrades.dat,TechData.dat,Weapons.dat等數據,存取這些數據達到各種特殊效果就是EUD觸發乾的事了,具體功能請看Memory_Map(記憶體表)。

先找到SC DEATHS的起始位置

有了這個Deaths表的起始地址後你就能在偏移地址和EUD觸發參數(UnitID,PlayerID)間進行轉換。

但是不需要那么麻煩,如果要寫EUD觸發的話可以使用LegacyWeapon的Ubecalc[就是傳說中的UB],雖然有點小問題,但還是很好用的。沒必要了,還是使用EUDTrig吧,工具在下面。

你還可以找到一個用來空閒區塊[1.12b版里的006c4f00 到 006c5d00 的區域],可以用來在任務模式存取遊戲記錄。

注意:EUD Actions只能在1.12b版本之前的星際中使用,不過EUD Condition還可以在更高版本上使用。

EUD框架

SCRPG.NET的研究人員做出來的框架, 修改觸發內容, 使它們可以用來修改記憶體.

這樣就可以改P9~P12和Deaths表前後的記憶體了

A.L.I.C.E系統

用EUD載入框架而出現的A.L.I.C.E(AEUD)能做出一切。套用比較廣泛的是A.L.I.C.E,因為相比EUD之下A.L.I.C.E功能強大,也容易上手。此外SMC已經發布了帶EUD觸發的版本。有事EUD也泛指A.L.I.C.E

一些A.L.I.C.E成分明顯的圖:

魔獸 Dota 星際版 2016

New 5v9

ET2009(YTY的)

移動攻擊

榮譽三線

攻守兼備·星際

Amazing Turret EUD

2010BT 2011BT 2012BT

H-defense A5

學會EUD需要懂得的計算機知識

在學EUD之前請確保製圖和MOD都過關,在星際修改的基本概念未過關的情況下請先補課。其次要知道記憶體是什麼:星際幾乎所有的數據都被讀取到記憶體里,比如單位武器、武器攻擊力、模型、動畫、AI,甚至還有按鈕、需求等。記憶體地址,就是存這些數據的地方。其次要懂得16進制數據的處理(如16進制數在記憶體表中的排列順序)。

輔助用EUD地圖製作軟體:EUD Trig ,UB2.0,UB3.0,StarForge

輔助用A.L.I.C.E地圖製作軟體: SMC2.85,SMCExV1.3

相關詞條

相關搜尋

熱門詞條

聯絡我們