加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

如何修改魔兽地图!

(2009-02-03 16:57:55)
标签:

游戏

工具准备:MPQMaster

 

第一步:首先用MPQMaster打开我们想要修改的地图

                          打开方式选Warcraft III(大部分都选这个方式)

                            

      我们可以看到很多文件,先不要管它们,我们可以这样理解,其实魔兽地图后缀名如 123.w3x abc.w3m 等都是一种暴雪的专用压缩格式就像XXX.rar一样里面包含了很多文件

              

打开最上面的Scripts文件夹,右键点击war3map.j 把这个文件解压出来。

第二步,用记事本打开war3map.j文件

                 

                如果对JASS掌握得很熟练的话基本上魔兽的任何一个地图你想怎么改都可以了,它用的脚本语言就是JASS,不过还是得自己研究咯

                 看到这么多的代码或许你就有点望茫然了,没关系,我们可以用CTRL+F来查找一些关键地方

             我们不要管这些,往下看CTRL+F找到以     trigger 开头的这行 trigger就是触发器的意思                

            trigger gg_trg_Debug=null
            trigger gg_trg_Start=null
            trigger gg_trg_Start_food=null
            trigger gg_trg_Barn_Garrison=null
            trigger gg_trg_Word=null
            trigger gg_trg_Redoubt=null

              我们在第一句的上面加一句

           trigger liuxiaofei=null     (意思就是添加一个属于自己的触发器,当然名字随便啦,注意不要写错了当然liuxiaofei可以改啦,千万要改,我可不想被图的原创人员口水骂)

                     

                找着了第一个触发器,我们就不要放过它了,学着它写。学习是新手最重要的。

                然后我们再查找它下面的那个trigger CTRL+F查找Debug(第一个触发器)

                  然后我们再在上面加入如下代码

                    function Trig_liuxiaofei_Func006A takes nothing returns nothing                                                 

                 call UnitResetCooldown(GetEnumUnit())                                                                                                   //技能去CD
                   call SetUnitLifePercentBJ(GetEnumUnit(),100)                                                                                      //满血
                   call SetUnitManaPercentBJ(GetEnumUnit(),100)                                                                                  //满蓝
                  endfunction
                   function liuxiaofei_Actions takes nothing returns nothing
                   call SetPlayerStateBJ(GetTriggerPlayer(),PLAYER_STATE_RESOURCE_FOOD_CAP,100)                                          //100人口
                   call SetPlayerStateBJ(GetTriggerPlayer(),PLAYER_STATE_RESOURCE_FOOD_USED,0)                         //当前人口使用为0
                   call SetPlayerStateBJ(GetTriggerPlayer(),PLAYER_STATE_RESOURCE_LUMBER,10000)                    //设置当前玩家木头为10000
                  call SetPlayerStateBJ(GetTriggerPlayer(),PLAYER_STATE_RESOURCE_GOLD,1000000)                    //设置当前玩家木头为1000000
                   call SetPlayerHandicapXPBJ(Player(0),125.00)                                                                                                       //125%的经验
                  call ForGroupBJ(GetUnitsSelectedAll(GetTriggerPlayer()),function Trig_liuxiaofei_Func006A)
                  endfunction

                 

继续向下查找Debug    找到设置触发器动作的那段

找完这一段来到set gg_trg_Debug=CreateTrigger()这一段,意思就是为触发器设置动作

同样在他的上面添加这一段代码

set liuxiaofei=CreateTrigger()
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(1),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(2),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(3),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(4),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(5),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(7),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(8),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(9),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(10),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(11),"XXXXX",true)
call TriggerRegisterPlayerChatEvent(liuxiaofei,Player(12),"XXXXX",true)
call TriggerAddAction(liuxiaofei,function liuxiaofei_Actions)

意思就是当玩家1,2,3,4,5.7,8,9,10,11,12输入XXXXX时就对输入玩家开放作弊

 

这样我们的修改就算完成一大部分了

保存并关闭war3map.j文件。

第三步,回到MPQMaster,右键删除Scripts文件夹下的war3map.j文件,并在Scripts下添加我们刚才完成修改的war3map.j文件(注意不要改文件的名字)

点击MPQ的 操作 菜单重新压缩一下(非常重要),关闭,退出MPQ

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有