• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            開發是一門技術,編程是一種藝術

            游戲老手,編程新手
            隨筆 - 11, 文章 - 0, 評論 - 58, 引用 - 0
            數據加載中……

            虛幻3引擎 - 如何用VS來制作一個簡單的Game Mod

            摘要:使用VS建立UnrealScript工程,用此工程來修改和編譯script文件(即是生成一個game mod)。不需使用unreal frontend軟件就可以編譯.u文件。

            開發環境:XP 64bit;VS 2008;UDK beta2;

            其他需求:1. 安裝了nFringe。可參考 這里

            2. 如果要用自制的UDK地圖。可參考 這里

            實現:

            首先用VS新建一個UnrealScript工程,名字可隨意(這里叫MyFirstGame,如有更改,在稍后配置時自行做相應修改),但是路徑必須是如下圖(否則有可能出現編譯后文件丟失的問題,具體后述)。同時去掉"Create directory for solution"的勾。

            然后開始配置MyFirstGame的屬性,具體如下:

            General的配置:

            Target Game: 選UE3 Mod。

            UCC Path: C:\UDK\UDK-2009-11-2\Binaries\UDK.exe

            Reference Source Path: C:\UDK\UDK-2009-11-2\Development\Src

            Build Events不用配置,默認就行。

            Build的配置:

            勾上全部的勾,路徑設置:C:\UDK\UDK-2009-11-2\UTGame\Script(如果不放這里,游戲啟動后就無法讀取我們修改的mod,這個是默認路徑,暫時還不知道如何改)。

            Debug的配置(懶得寫了,見圖吧):

            說明幾點:

            Load map at startup選項,輸入的是地圖名字,而地圖位置默認是自動讀取C:\UDK\UDK-2009-11-2\UTGame\Content\Maps下的文件。這個TestMap是之前一片bolg建立crowd system時創建的地圖,也可以使用任何在前述文件夾下游戲自帶的地圖。

            禁用聲音和禁用開頭動畫選項可以不勾(我是嫌聲音太吵)。

            Start with specified game type選項,這里就是指定游戲要載入我們修改的這個mod(這個mod稍后建立)。

            完成以上的屬性配置后,保存工程,關閉再重新載入。這樣做的目的是讓工程載入我們設定的Reference。這時Reference Source前面應該就有+號,可以展開。此時,在MyFirstGame的根目錄下新建一個文件夾,命名為Classes(必須是這個名),在此文件夾里面新建一個UnrealScript文件,命名為GameInfo.uc。大概就是下面這個樣子(你的Reference Source下應該沒有CluOne,因為這是另一個mod):

            現在我們添加UTEngine.ini到Classes文件夾下(如上圖所示)。右鍵選Add-> Existing Item,位置在C:\UDK\UDK-2009-11-2\UTGame\Config\UTEngine.ini。注意要以link的方式添加。打開UTEngine.ini,找到ModEditPackages(用查找),把它前面的;去掉,把=后面改成MyFirstGame。就是這個樣子:

            這樣做就是表示我們要使用的game mod是MyFirstGame。當編譯時,就會把MyFirstGame下Classes文件夾下的uc文件一起編譯。

            好了,最后一步就是修改GameInfo.uc文件。把原來的程序全部刪掉,改成以下:

            class GameInfo extends UTDeathmatch;

            //這里就是一個開始Deathmatch的函數,即當我們啟動游戲以后就會自動開始一個Deathmatch

            function StartMatch()

            {

                super(UTGame).StartMatch();

                TestFunction();

            }

            //使用`log()函數把一句話輸入到控制臺

            function TestFunction()

            {

                `log("This is my first mod game!");

            }

            現在,我們已經完成了全部的編碼和配置工作。選Build->Build MyFirstGame

            稍等片刻,便顯示編譯成功。此時會生成一個MyFirstGame.u文件:

            我在這里遇到一個很奇怪的問題,就是無論如何配置Build的輸出路徑,在運行Build后顯示的輸出路徑都是以上(即是工程保存的路徑),而實際上你在那個文件夾下是找不到MyFirstGame.u這個文件的。真實輸出的路徑則為:

            C:\UDK\UDK-2009-11-2\UTGame\Script(即便我在build選項里面設置別的路徑也如此)。

            注:這個問題,或者說類似的情況,在UDK論壇上也有很多人遇到,但是具體的原因和解決方法暫時還沒有發現。如果你也不幸出現了這種情況,則去C:\UDK\UDK-2009-11-2\UTGame\Script查看是否有MyFirstGame.u生成,如果有,就表示編譯成功。目前不少人都能成功得到MyFirstGame.u的辦法是在建立工程時位置一定要是我建立工程用的路徑。如果無法解決,可能只能使用unreal frontend來編譯了。

            好了, 現在可以測試我們的mod了。點擊start debugging按鈕(F5)游戲就會啟動,在控制窗口中,就會出現我們輸入的log:

            而游戲窗口如下,可以看到我們設置的crowd在自動生成。

            posted on 2009-12-02 13:42 54sun 閱讀(4035) 評論(0)  編輯 收藏 引用 所屬分類: UDK

            国产91久久精品一区二区| 国产aⅴ激情无码久久| 久久久黄片| 久久精品国产久精国产果冻传媒| 亚洲狠狠婷婷综合久久蜜芽| 国产精品久久久久9999| 亚洲国产婷婷香蕉久久久久久| 伊人久久精品无码二区麻豆| 国产精品美女久久久免费| 97久久婷婷五月综合色d啪蜜芽| 日本精品久久久久中文字幕| 国内高清久久久久久| 久久天天日天天操综合伊人av | 久久精品国产亚洲欧美| 国产精品亚洲综合久久 | 九九99精品久久久久久| 欧美日韩精品久久久免费观看| 青草影院天堂男人久久| 色欲综合久久躁天天躁蜜桃| 亚洲成av人片不卡无码久久| 日韩精品久久久久久| 国产精品欧美久久久天天影视| 色综合久久中文字幕无码| 亚洲а∨天堂久久精品| 久久国产成人| 国产精品熟女福利久久AV| 亚洲欧美日韩精品久久| 色综合久久精品中文字幕首页 | 麻豆AV一区二区三区久久| 色播久久人人爽人人爽人人片AV| 久久精品国产亚洲AV不卡| 精品乱码久久久久久夜夜嗨| 狠狠狠色丁香婷婷综合久久五月 | 精品久久综合1区2区3区激情| 亚洲国产二区三区久久| 国产精品综合久久第一页| 亚洲午夜久久影院| 国产成人精品久久一区二区三区av| 久久99精品久久只有精品| AV无码久久久久不卡蜜桃| 91久久香蕉国产熟女线看|