引用 | 編輯
D叔
2007-07-12 06:17 |
樓主
▼ |
||
x0
轉貼來自原天外天舊公會網站:WOW用兩種不同的文件來製作用戶介面:LUA與XLM。LUA文件中包括了真正的代碼,用戶介面的邏輯。XML文件用以定義用戶介面的元素,如,按鈕、視窗、文本串等等,並定義了要載入哪些LUA文件。 Bilzzard的文件保存在 Interface\FrameXML 下,用戶定義的 元件 放在:Interface\AddOns\AddOnName目錄下。 除非你確實搞得定,輕易不要去更改GlueXML文件,有可能會破壞WOW的UI系統。 1.Slash Commands/命令 2.Macros/巨集 3.Scripts/腳本 4.User Interface Mods and AddOns用戶介面 MOD與AddOn插件 5 Cosmos, Gypsy, CT_Mod 等常用的插件 6 獨立與綠色的插件 /命令 WOW像其他網遊一樣,用大家熟悉的“/命令”的格式,如選定目標後,在對話方塊中輸入“/follow”,就會跟隨目標,"/help"是求助。WOW中文版支援中文與英文兩種命令的格式。與我們定制開發有關的命令列表我會發在跟貼中。 命令有好幾種,有些用於做指定的動作,如/follow, /assist, /cast,有些用於交流,如/yell, /chatlist,有些用於顯示資訊,如:/who,有些用於表達表情(/laugh, /bow)。 有一個特殊的命令:"/script",用於執行腳本程式,我們在下文中細解。 Macros 巨集 巨集用於建立一些簡單的定制動作或任務,宏利用現成的遊戲中的動作。一個巨集是一系列 /命令 組成,按順序執行。要建立一個巨集,可以用命令:/macro來建立一個巨集,可以給巨集指定一個名稱,一個圖示。建立好的巨集也可以通過快捷按鈕欄調用。 巨集: cast Fireball(Rank 1) /yell "放火烤它!" 這個巨集放一個火球,然後大叫一聲:) 巨集有一些局限,它只能用於執行非常簡單的任務。最主要的一個局限是你不能用巨集來施展多個魔法。這些限制了你不能用巨集做很多自動化的事。就像其他一些命令不能超過256個字元,很不爽的! 腳本Scripts 我們知道,許多軟體中都支援腳M$ Office、Internet Exploler等。腳本通常是一些小程式,用一些非常簡單的語言來寫(腳本語言)。腳本用來做一些自動化的事,也有用腳本語言來控制其他程式。 魔獸世界內置了一個強大的編程語言:LUA語言。WOW可以執行用LUA寫的小程式。但WOW不是一個程式開發環境,不是我們簡單地輸入程式然後執行它。WOW在不同的地方調用腳本: - /script 命令:用/script命令可以直接運行LUA語言,在/script後輸入LUA語句,每個語句之間用分號;分開。 - 巨集:腳本可以作巨集的一部分,在巨集中可以嵌入多個/script命令。 - 用戶介面定制與插件:WOW的用戶介面定制與插件都用了LUA腳本語言(還用XML) 腳本能做什呢?我會用專門的貼子給大家介紹LUA這個強大的腳本語言。LUA腳本強的一點是它能夠比“/命令”執行更多的遊戲動作。腳本語言可以WOW腳本語言提供的大量函數(API應用編程介面)。(API清單我在整理中) 讓我們看一看這個簡單的腳本: if (IsPartyLeader()) then CastSpellByName("Fireball(Rank 1)"); end 這個腳本在執行時,先判定你是否是隊長,是的話,則放一個火球術。這個腳本也可以用"/script"來執行: /script if (IsPartyLeader()) then CastSpellByName("Fireball(Rank 1)"); end 你可以直接在對話欄中輸入這個命令,當然,你也可以將它寫在一個巨集中。 總結一下:腳本是WOW中用LUA語言寫的一段小程式,能夠與遊戲交互執行遊戲動作。你可將腳本用於遊戲的不同部分,如巨集中、“/script”命令中,以及用戶介面定制與插件中。 用戶介面修改Mod與插件AddOn 在開發WOW時,暴雪有一個重要的決定,就是,其用戶介面完全可以定制、修改與擴展。用戶介面修改UI Mod與插件AddOn實際上是同一個東東,它們的不同之處只在於名字,通常來說,Mod指的是一些對已有用戶介面的功能作一些修改的小東西,而AddOn是擴展的一些功能。了簡化,在以後我們統稱兩者“插件”,或者它的英文名AddOn。 AddOn是用LUR腳本語言編寫的,並用了XML技術。插件不僅僅能在螢幕中加一些有趣的按鈕與視窗,還可以做許多功能強大的事情,我們在以後將詳細給大家講解如何開發插件。 從用戶的角度來看,你只要知道插件是一些文本文集件,以".xml" 或".lua"副檔名結尾。 這些文件應該放在WOW的Interface或者它的子目錄下。通常情況下,AddOn以ZIP壓縮文件方式發佈,而你只需以解壓縮方式安裝到WOW的目錄下。(當你在你的機器上沒有看到Interface目錄,不用擔心,WOW這個目錄在缺省情況下是沒有的,你想使用插件時,你建一個就成了。 注意:當你下載一個插件,而它是EXE文件時,千萬要小心。因EXE是可執行文件,它可以在你的機器上幹任何的事,一個EXE文件中可能含了病毒與木馬。WOW的插件應該寫成XML或LUA文件,所有人都可以檢查這些文件,並且沒法加入惡意的程式,因AddOn僅能做一些WoW中的操作,它無法執行其他程式,破壞你的電腦。 說到這裏,實際上有不少插件的作者以可執行文件EXE的形式發佈插件。這些程式可能簡單地自動解壓縮文件到WOW安裝目錄。有些發佈版能自動下載最新版本的插件,或者上載一些插件收集到的資料。 卸載:要卸載插件非常簡單,只需將Interface目錄整個刪掉就成! Cosmos, Gypsy, CT_Mod 等著名插件包 網上找一找WOW的插件,你會看到Cosmos、Gypsy、CT_Mod等等,這些都是一些著名的插件包,它們包了大量插件。這些插件的作者(工作組)是WOW社區中值得尊敬的玩家,他們的努力我們提供了許多非常有用的插件(雖然當中有一些插件不怎樣),並且整理與匯總這些插件打成包。 大家可以放心地使用這些包,這些插件是合法的,也是暴雪認可的。但是官方不會對這些插件有任何技術支援。你可以下載試一下,選擇你喜歡的插件。 注意:這些流行的插件有不少是互相衝突的,所以你可能不能將它們混在一起用。 獨立,綠色的插件, 你會在網上看到一些插件標榜自已是“獨立的”或者“綠色的”。通常情況下,插件會修改一些標準的核心用戶介面文件(官方發佈版的文件)以調整介面功能,當不同的插件做同樣的修改時就會導致衝突。一個綠色的插件不修改任何已有文件,它僅僅加入自已的文件。這就保證了這些插件能互相相容,共同使用。 此外,有許多插件依賴於其他插件的功能。舉例來說,Cosmos包中的大部分插件是不能單獨使用的,它必需與整個包一起用。一個“獨立的”插件意味著它是完整的,可以單獨使遙的,不需要其他插件的。 說到這兒,從插件開發者的角度看,你會發現許多插件做的事情很類似。通過修改已有插件的功能,或者利用現成的公共的“庫”可以很快地開發出新的插件。所以什有些插件庫都依賴於一些公共的元件,如SEA函數庫等。這些元件松成了一些核心插件,如果你下載的插件需要這些元件時,你可以去下載這些核心插件,並安裝到WOW的目錄下。 就象現在有許多遊戲都依賴於PC上的DirectX。通過利用DirectX的功能,可以比較方便地開發遊戲。因此,我們在運行遊戲時需要DirectX。同樣,在我們用一些插件時,也可能需要這些公共的核心插件。 可用於編寫巨集的命令集合: /assist - Assist your target or the named unit if specified /cast name - Cast the named spell, which may include the rank in parenthesis /afk - Toggle yourself as "away from keyboard" /dnd - Toggle yourself as "do not disturb" /duel - Request a duel with your target, or the named unit if specified /yield - Surrender to your opponent in a duel /emote message - Emote the message (e.g. /emote picks his nose -> picks his nose) /follow - Automatically move to follow your current target /guild message - Send the message to your guild chat /ignore name - Toggle ignoring the named unit /inspect - Inspect your target /invite - Invite your target or the named unit to your group /join name - Join (or create) the named chat channel /leave name - Leave the named chat channel /logout - Sit down and logout /ffa - Set "free for all" loot policy /master name - Set the named unit to be the master looter /roundrobin - Set "round robin" loot policy /party message - Send the message to your party chat /played - Show how much time your character has been online /pvp - Enable PvP for the next 5 minutes /raid message - Send the message to your raid chat /random num - Roll a random number between 1 and num /reply message - Send the message to the last player to whisper to you /say message - Send the message to people around you /target name - Target the named unit /time - Show the current game time /trade - Initiate a trade with your target /uninvite name - Remove the named unit from your group /whisper name message - Whisper the message to the named unit /who - List the players around your level in the current zone 可用於編寫巨集的表情與動作命令全集 /agree /amaze /angry /apologize /applaud /bark /bashful /beckon /be .. 訪客只能看到部份內容,免費 加入會員 x0
|
引用 | 編輯
D叔
2007-07-13 17:59 |
5樓
▲ ▼ |
下面是引用俊能於2007-07-13 00:40發表的 : 親愛的俊能 光只是參考上述的文章是無法參透「對小月破甲+飛吻」寫法的巨集奧義 本人心地宅厚,從未對小月有過有失禮貌的行為和做法 故恕我無法能教授您此類敗壞風俗之巨集寫作大法 但您若有志於此類巨集極有興趣,本人倒是可以介紹一個人給您認識 此人對上述巨集已研究至走火入魔以致無法上線長達一個月以上 目前此人高人已身心嚴重受創,在家療養當中 此人的 id 叫=Jane( 大叔 ) 善哉... 備註:大叔畢生所學和俊能所要求的功能太不同,大叔的巨集要義為「對小月自動推倒,然後破甲」... x0 |