分类：游戏-单机游戏-星际争霸
问题：星际的修改高手来看看单位的价格,血和攻防等怎么修改 
单位的价格,血和攻防等怎么修改
回答：原来在yaoyuan上发过，这次修改了下，重新在这里帖出来　　主要是用来改写星际的ai　　赫赫，实在忍受不了原来那个弱智电脑了　　如果能大家切磋，最好不过　　我只是提供写的方法，本人也曾经写过一个，不过由于缺乏想象力，基本没有什么杀伤力，有兴趣的朋友可以到这里去下载一外国人写的星际ai,(适用于1.11a版）　　这个电脑很强，尤其在PvT上，简直可以说是Terran杀手，一般人应该无法用terran 对抗这样的两家Protoss　　我开始讲了　　需要用到的软件有：　　星际争霸（废话）　　sceditIII　　下载地址：点击附件　　MPQ2K　　下载地址：点击附件　　修改之前，请注意备份patch_ q文件　　这个是我们要下刀的地方.嘿嘿　　我说得这种修改,无论是108,109,110都可以　　以后想要炫耀你写的AI,只要把patch_ q更新给大家就可以　　注意，mpq2k的压缩包里含有storm.dll和staredit.exe，所以千万不要解压到自己的星际目录了，随便放个其他目录就可以。　　为了将来说起来方便，我们默认mpq2k的解压地址是　　d:\mpq2k　　现在，把patch_ q， q拷过来　　放心， q我们只是利用，不改（一定要解出来，否则scedit可能会出错）　　运行以下语句　　mpq2k.exe e  q scripts\ n　　mpq2k.exe e patch_ q scripts\ n　　这些语句都在控制台下执行　　winmpq也可以完成类似功能，但是没找到下载地址。　　把你的 n和bwscript拷到sceditIII的default目录下　　以上就是准备工作。　　然后我们就进入编辑阶段。 　　SCEDIT的使用　　运行sceditIII主程序，进入软件。　　这个软件的界面，写得超级简单，简单到我都不知道该怎么使用　　磕磕碰碰，总算给研究了出来　　步骤如下：　　1 选择FILE---HDD NAVIGATOR　　2 选到刚才弄出来的那个（从default目录下选) n　　3 出现了一个电脑ai列表　　这里是暴雪写得全部ai,很多是不会在地图编辑器里出现的，因为他们其实意义不大，有的甚至只是简单的造个农民就算了的　　由于我们改动的是patch_ q，这实际是个补丁文件，所以有些ai还没有给出，他们都在 q，不过那些对我们没有什么实际意义　　现在，我们打开Expansion Protoss Campaign Insane开始我们的研究把 　　关于Expansion Protoss Campaign Insane　　研究这个AI　　是因为它的代码比较少　　而且他的AI很单纯，属于一根筋走到底的类型。　　我一段段代码分析给大家看。　　第一段　　; ASC3 File generated by ScAIEdit III　　;　　; Script name : Expansion Protoss Campaign Insane　　这个上面，都是注释，没有什么实际用途　　script_name Expansion Protoss Campaign Insane　　script_id PSUx　　这个script_name和id,最好不要改，否则可能会出问题　　start_campaign　　wait 1　　start_town 开始建设　　defaultbuild_off 　　把默认的建设关掉，如果不写这句，电脑会自作主张造东西，那就麻烦了　　default_min 0　　wait 1　　等0.1秒钟，不知道是啥用，不用管它　　transports_off　　不知道啥意思……　　define_max 30 probe　　define_max 4 arbiter　　define_max 12 high_templar　　这里表示，同一时间内，一个基地最多拥有30个农民，4个仲裁，12个电兵　　这里要说明一下，电脑开分基地，就是要再执行一次starttown，所以如果电脑有两个基地，就可以最多拥有60个农民，8个仲裁，24个电兵，以此类推　　multirun block1　　这句话，是指多线程调用block1这段代码　　block1就像编程语言中函数名或者过程名，我还没贴出来，里面其实就一句话　　give_money，我研究了一下，意思是给电脑2000钱和2000气　　赫赫，谁说电脑不作弊来着　　多线程的意思是，在执行block1这段语句的时候，　　不影响主程序继续往下跑　　build 1 nexus 150　　造一个主基地，如果有了，就直接执行下一句　　build 7 probe 80造7个农民 　　上面的150和80，我没有研究出来是什么　　但是总的来说，建筑一般是用80，　　升级用30　　另外，如果这样写两句　　build 7 probe 80　　build 7 probe 80　　其实还是只有7个农民，因为7代表的是“造到”　　wait_build 7 probe等待7个农民造完　　这句话其实很重要，假设你有250元钱，一下子点了5个农民，　　算起来，电脑已经算是执行完build 5 probe80这句话了，他会直接往下执行　　为了完全按我们的意愿走，还是加上这句。　　multirun block2　　这和block1意思差不多，这个block2函数里（我没贴出来），写得是造到24个农民　　今后无论电脑如何发展，这个都会并行运行，一直到24个为止　　build 1 gateway 80第一个兵营　　defensebuild_gg 1 zealot　　defenseuse_gg 1 zealot　　这两句的意思是，如果电脑被攻击，造1个狂热来防守　　train 3 zealot造到3个狂热　　build 2 gateway 80　　train 6 zealot　　build 3 gateway 80　　train 12 zealot　　这上面的语句，其实就是电脑的第一波兵　　一共是3个兵营，12个叉叉　　下面这段，就是电脑组织的进攻　　attack_add 12 zealot　　加12个叉叉到进攻队伍里　　attack_prepare　　这两句以后，其实电脑往你家走了　　wait 500　　等50秒　　attack_do　　攻击　　attack_clear　　清除攻击数据　　这是为了下次再组织进攻的时候，attack_add用的　　这么一段语句，就包括了电脑从开始发展到最好进攻的全过程　　还有些高级技巧，下次再说啦　　手都酸掉了　　有兴趣的，可以先改改暴雪的代码　　我下面先说一下，改了以后，怎么用 　　编辑窗口上有个小勾得标志，点一下　　窗口下方会显示你这段代码是否合乎语法　　不对的地方编辑器会给你指出来，直到0 error message为止　　然后点小勾右边的那个按钮　　你的编辑就存到 n里面了，关掉当前编辑窗口（注意，是当前编辑窗口，别把整个scedit关掉，那样你就全白做了）,回到上级窗口（就是那个很多AI列表的那个)点一下3个齿轮为图标的那个冬冬,它会提示script compliation done!，如果没有提示，那就麻烦了，这我估计是软件的一个bug,你得把原来的那些咚咚全部恢复一下，重新改。　　算是完成了,现在，把 n从default目录下拷出来，放到刚才那个　　d:\mpq2k的目录里　　执行:　　mpq2k a patch_ q  n scripts\ n　　运行这句话的时候，确认你得把星际关掉，也别开星际地图编辑器　　最后，把弄好的patch_ q弄到星际目录下就算结束了　　看起来很方便，其实经常因为某些奇怪的原因（如代码写错，版本问题等等，导致无法使用，那我们只好安心用外国人的产品）　　最近有朋友给我提供过一个叫mpqworkshop的工具，我用过之后感觉非常不错，完全可以替代掉mpq2k，而且没有烦人的版本问题，只是我找不到下载地址了，哪个好心的网友提供一下，我把它一起贴上来　　最近的研究成果　　我上面写的都是修改Expansion Protoss Campaign Insane为名称的ai　　这样需要特地编写一个地图，然后设置电脑的ai为这种（如何设置请自行查找介绍地图编辑器的文章），打得时候还要选use map setting 　　而如果修改的是Protoss Expansion Custom Level那个ai,则你根本不必修改地图，每一幅地图甚至只要选melee 或者top vs bottom，电脑都按照你写的代码来执行。　　有的朋友问到建筑位置的问题，重申一下，无法决定电脑修建筑的位置，如果你想彻底的防守，就多造吧：）　　Script是顺序执行的机制　　所以，当你写出　　train 12 zealot　　train 4 dragoon这样的代码　　除非电脑已经造好12个狂热，否则龙骑一个都不会造，（兵营里正在建造的狂热也被计算在内）。所以，如果你的电脑发展很慢，你就要考虑是不是你写了错误的代码（有朋友在没有升级一攻的情况下，直接写升级2攻的代码，结果当然电脑在发呆，不知道如何是好）　　用好defenduse_ag(好像是这么写的）或同类型的语句，否则电脑的建筑挨打的时候会发呆　　开分基地用的是expand命令，如果你在expand后面加入建造其他建筑的代码，然后才修基地。就会出现基地位置不对的情形（因为其他建筑占据了基地的位置）　　攻防的升级要切实注意，前面说过的，代码是顺序执行，不过，攻防一旦开始升级，代码就可以继续往下走。如果你把升级1攻，2攻，3攻的代码写到一起，则电脑就会在开始升级一攻的时候代码继续前行，碰到升级2攻的代码，然后开始等待，因为现在不能升级2攻，如此类推。　　scedit的帮助一定奥仔细看看。那里面介绍的很全面　　空投是一种特殊的事件，不是你造出运输机，就可以空投，是一个特殊代码，我现在记不清楚了，看看暴雪的原代码就会有发现。　　最重要的一个语句是give_Money　　运行后电脑有2000钱，2000气　　我基本就是这么改写电脑，然后和电脑比暴兵　　电脑暴兵相当凶残的，而且比人暴兵来的恶心的多。总觉得他们的兵耐打　　星际自带任务关的ai也是可以编辑的，只是老出错，这个我不太清楚为什么，所以大家没事还是不要写任务关的代码　　推荐将ai编写和rpg地图结合起来，这样练习战略战术很有好处　　有朋友让我写速出Lurker什么的代码，不是我不想写，实在没有时间和精力　　大家仔细研究，我可以帮助你们回答问题，应该不是很难的　　SCEditIII有的时候会出现无法编译的情况，一般是代码里有错误，如果都检查过没有问题。这时候关掉它，重新用原来的 n和 n覆盖你修改的，然后再打开一次，就可以了转载 也许大家都看过（对你可能有帮助）