• <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

            久久亚洲AV无码西西人体| 中文字幕乱码久久午夜| 国产情侣久久久久aⅴ免费| 热re99久久6国产精品免费| 久久夜色精品国产噜噜麻豆| 久久久久免费看成人影片| AA级片免费看视频久久| 久久久久久精品久久久久| 久久99国产精品一区二区| 久久人妻少妇嫩草AV无码蜜桃 | 国产精品久久久久久久久| 久久久久无码国产精品不卡| 久久久噜噜噜久久中文字幕色伊伊 | 一本一本久久a久久精品综合麻豆| 人妻中文久久久久| 久久综合综合久久狠狠狠97色88 | 久久美女网站免费| 中文字幕久久波多野结衣av| 99久久精品免费看国产免费| 99精品国产在热久久无毒不卡 | 大香伊人久久精品一区二区 | 色综合久久无码中文字幕| 久久av免费天堂小草播放| 无码精品久久久天天影视| 国产精品亚洲综合久久| 91精品久久久久久无码| 97久久天天综合色天天综合色hd| 久久精品国产男包| 久久久久无码精品| 狠狠色综合网站久久久久久久| www久久久天天com| 国产99精品久久| 久久线看观看精品香蕉国产| 国产婷婷成人久久Av免费高清| 色综合久久久久综合体桃花网| 亚洲AV无码1区2区久久| 亚洲精品国产字幕久久不卡| 伊人久久无码中文字幕| 久久亚洲美女精品国产精品| 久久人人爽爽爽人久久久| 久久av无码专区亚洲av桃花岛|