_sti mc3

下面介绍SCAIEdit里面的命令,实际上SCAIEdit帮助里面有只是我翻译过来了而已...

Header commands

头脚本,就是说一般写在脚本最前面的脚本...类似定义什么什么东西...

farms_notiming

当人口到达最大可用空间时,只建造所必须的房子(人口18/18满了,才去造房子).

farms_timing

Build necessary farms with a correct timing, so nothing is paused by a maximum supply limit hit.

在合适的时间建造必须的房子,因此不会因为超过最大人口限制而暂停.(看到人口16/18,电脑就知道去造房子了,一般有这句就不用写造房子脚本了)

start_areatown

Starts the AI Script for area town management.

作为区域基地运行AI脚本.(在前面写上这个,估计是指这个脚本专门用于防守的脚本)

start_campaign

Starts the AI Script for Campaign.

作为战役运行AI脚本(是指这个脚本专门用于战役的脚本,这个命令会限制一些命令的使用,下面介绍)

start_town

Starts the AI Script for town management.

一般发展运行的脚本(就是说这个脚本用于一般对战或者其他的脚本,会限制一些命令的使用)

Build/Attack/Defense order commands

建造/攻击/防御命令

PS:下面的命令几乎都有参数,但是参数的类型不同.byte:代表0-255的整数,用于数量;word:代表0-65535的整数;block:代表函数块,就是你要执行的脚本块;unit:代表任何单位;military:代表攻击单位,建筑物和农民不算;building:代表建筑物;technology:代表兵种的科技;upgrade:代表兵种的升级.

attack_add (byte) (military)

添加%1(byte)个%2(military)单位到当前的攻击小队中.(类似我们把兵种编队一样,只是这个是把将要进攻的兵编在一起)

attack_clear

清除攻击数据.(清除上一次编队的数据,不清除下一次进攻还是和上次的兵种一样)

attack_do

当前的攻击小队开始攻击敌人.(让刚才编的攻击小队开始攻击敌人.)

attack_prepare

准备攻击.(最然说是准备攻击,但是我只有这一句的时候,还是去进攻去了)

build (byte) (building) (byte)

建造%1(byte)个%2(building),优先权为%3(byte).(这里要说的就是优先权,数字越高优先级越高,越高就越先建造,但是不要差太远,不然会不造或者跳过的,如果几个建筑写在一起建造,比如build 2 gateway 80 build 2 pylon 80,电脑会gateway和pylon一起造,如果把gateway的优先级改为81或者85,电脑则先把2个gateway造完才会去造pylon,还有就是这里的数量问题,这里的数量是指所有的数量,就是要建造的总数,build 8 gateway 80,就是说要建造8个gateway,不管你之前有几个gateway电脑给你造够8个就了事)

defensebuild_aa (byte) (military)

当空中单位受到攻击时,建造%1(byte)个%2(military)空中攻击单位来防御敌人.(使用什么兵防御什么东西,如果把这个命令用得好可以类似电脑用微操哦,一下类似)

defensebuild_ag (byte) (military)

当地面单位受到攻击时,建造%1(byte)个%2(military)空中攻击单位来防御敌人.

defensebuild_ga (byte) (military)

当空中单位受到攻击时,建造%1(byte)个%2(military)地面攻击单位来防御敌人.

defensebuild_gg (byte) (military)

当地面单位受到攻击时,建造%1(byte)个%2(military)地面攻击单位来防御敌人.

defenseclear_aa

当空中单位受到攻击时,取消空中攻击单位的防御.

defenseclear_ag

当空中单位受到攻击时,取消地面攻击单位的防御.

defenseclear_ga

当地面单位受到攻击时,取消空中攻击单位的防御.

defenseclear_gg

当地面单位受到攻击时,取消地面攻击单位的防御.

defenseuse_aa (byte) (military)

当空中单位受到攻击时,使用%1(byte)个%2(military)空中攻击单位来防御敌人.

defenseuse_ag (byte) (military)

当地面单位受到攻击时,使用%1(byte)个%2(military)空中攻击单位来防御敌人.

defenseuse_ga (byte) (military)

当空中单位受到攻击时,使用%1(byte)个%2(military)地面攻击单位来防御敌人.

defenseuse_gg (byte) (military)

当地面单位受到攻击时,使用%1(byte)个%2(military)地面攻击单位来防御敌人.

guard_resources (military)

派出%1(military)类型的单位去看守可能多的矿点(每处矿点1个).(这个命令没有试过,不知道现象是什么)

tech (tech) (byte)

研究%1(technology),优先权为%2(byte).(开始研究的科技,参数解释类似上面的建筑建造)

train (byte) (military)

训练%1(byte)个%2(military)单位.(兵种的建造,注意这里没有优先权的参数,工人不属于military,工人必须用build)

upgrade (byte) (upgrade) (byte)

研究%1(byte)级%2(upgrade),优先权为%3(byte).(升级)

wait (word)

等待正常游戏时间的十分之%1(word)秒.(等待时间)

wait_finishattack

等待直到攻击小队完成攻击后.

wait_build (byte) (building)

等待直到电脑有%1(byte)个%2(building)建筑.(这个..应该不常用)

wait_buildstart (byte) (unit)

等待直到%1(byte)个%2(unit) 已经开始建造.(这个超常用,就是说等你那个东西建造好后在进行后面的脚本)

wait_train (byte) (building)

等待直到电脑有%1(byte)个%2(military)单位(这个...可以作为进攻用)

ASC_中文使用手册 星际

今天下到了ScAIEdit.exe和MPQ2K.exe.找星际电脑AI测试了一下.小有收获.开始研究ASC.

无聊,将help文档的语法部分翻译了以下.共勉.

-------------------------------------------------------------

ASC_中文使用手册

文档作者:Gold Dragon.

翻译:C3C.Archimonde.

翻译日期:2007年3月22日

人工智能脚本编码语言AI Script Code(ASC)

由于人工智能脚本(AI Script)文件以二进制存储,能够有一个便于使用者编辑的涵盖所有人工智能脚本支持功能就变得很重要.基于此目的开发的人工智能脚本编码语言AI Script Code(ASC)支持以文本形式编辑.ScAIEdit series的作者(Gold Dragon)开发的ASC是仅为ScAIEdit series服务的,并不被暴雪公司Blizzard Staff作为标准.本文将教你怎么使用这个语言.

ASC3 的语法

ASC3 的语法应用了如下的简单模式:

指令 <参数1> <参数2> <参数3> ...

例如:

wait 1500

根据ASC3 指令的定义,将等待1500个正常速度的游戏的0.1秒.这个形式适合脚本的任何指令.

ASC3 的其他特征字

显然你能够在脚本里输入些别的.下面将罗列它们:

注释

任何一个好的脚本语言都支持注释功能,可以帮助你不用仔细阅读指令,就能更快地理解脚本,下面是注释的特征字:

;这里是注释

必须以";"(不含引号部分)开头,在这个分号之后的所有字符都不会被编译.你可以输入任何字符来为你服务.

ScAIEdit III的一个新特色就是支持带有宏的脚本.宏可以看作是将好多指令封装起来的一个简单语句.例如你可以写一个宏,包含建一些建一些建筑,攻击敌人的指令,只需要调用宏就可以将其内容全部执行.下面是宏的特征字:

!宏名

必须以"!"(不含引号部分)开头,在这个感叹号之后的字符是宏的名字.感叹号和名字之间,名字内部都不能有空格.否则ScAIEdit III会将它们理解为两个宏.宏名不区分大小写.ScAIEdit III自带了很多宏,可以点击这里查看宏列表.

标签

为什么很多脚本指令在它们的参数里使用标签呢?标签可以看作是脚本的一个标记,它可以放在脚本的任何位置.有了标签之后,脚本就可以通过"goto"指令跳转的这个标签,并继续读取其后面的指令,下面是标签的特征字:

:标签名

必须以":"(不含引号部分)开头,在这个冒号之后的字符是标签的名字.和宏一样在冒号后面不允许出现空格.

一旦你建立了一个标签,你就可以在任何一个指令后面把他作为参数.例如,"goto"指令要求唯一一个参数就是标签名,"goto"指令的作用就是让脚本跳转的所指向的标签处,并从标签处继续往下读取脚本.下面是一个例子:

goto somewhere

; 下面这个指令永远不会被调用

build 1 barracks 80

:somewhere

; 下面这个指令会被调用

build 1 supply_depot 80

这里我们看到,通过跳转到"somewhere"标签处,所有在"goto"和标签之间的指令都被跳过而直接从"somewhere"后面开始读取了.

ASC3 的一些规则

这里有一些你必须遵守的设定:

永远不要将超过一个的指令放在同一行.ScAIEdit III脚本编译器总是认为一行要么只有一个指令,要么是空行.

; 这样写不会通过编译

train 2 marine train 2 firebat

; 这样就可以通过编译

train 2 marine

train 2 firebat

注释和标签的定义也必须写在单独的一行里.

; 这样写不会通过编译

train 2 marine ; 训练两个机枪兵

; 这样就可以通过编译

; 训练两个机枪兵

train 2 marine

你必须区分开"build"和"train"这两个指令.指令"build"用于生产建筑,农民和虫族的宿主(Overlord);指令"train"用于训练军事单位.如果你将它们混淆,ScAIEdit III会中断编译进程并给你指出错误.

"build","upgrade"和"tech"三个指令需要一个表征优先级的参数.在ScAIEdit早期版本中,你不得不在其后输入"set_gencmd"或"finalize_research",但是如果缺少优先级参数就会报错.现在定义了"build"指令的默认优先级为80,"upgrade"和"tech"的默认优先级为30.优先级支持从0到255的整数.下面是新版本的指令格式:

build 1 barracks 80

upgrade 1 t_infantry_armor 30

tech stim_packs 30

当你训练"train"或生产"build"单位时,可能指令内容在理解上会有点混乱,记住指令后面的数字不是你要训练或生产的,而是要建筑到和生产达到的数量.例如:

train 2 marine

train 5 marine

总共训练的机枪兵数量不会是7个,而是5个.但是如果在这两条指令之间还有别的指令,电脑将先训练到2个机枪兵,执行别的指令之后在将机枪兵的总数训练到5个.

如果你在电脑不具备条件的情况下决定生产或训练一个单位,电脑将为了你定的目标指令而生产一切必要的东西.但是要注意知道你的目标指令被实现之前不会执行其他的指令.例如:

train 2 battlecruiser

电脑将为了训练battlecruiser(人族大和战舰)而生产一切必要的东西.比如它将生产兵营,重工场,机场,控制塔,科学研究所以及物理实验室,在此之后再开始训练battlecruiser.

标识一个人工智能脚本

在你使用一个人工智能脚本之前,你必须先定义它.你必须为ScAIEdit III提供一个你的脚本的名字和脚本的编号ID.

脚本名是在StarEdit中我们用来选择脚本时用到的.ID则是StarCraft用来区分不同脚本的.所以脚本名可以自己随意定义,而ID则只能有且仅有4个字母或数字组成.ScAIEdit III在ID和已经存在的ID重复或者ID不是4个字母或数字的时候会提醒你.按照下列方法定义这两个值:

script_name My First Script!

script_id Scr1

这些语句将当前脚本名定义为"My First Script!",ID定义为"Scr1".如果你忘了插入这两个语句,ScAIEdit III将中断编译你的脚本.你当然也可以更改这两个值.:)

开始写一个人工智能脚本

在你开始动手写人工智能脚本之前,你必须子知道怎么做才能让StarCraft识别并使用你的脚本.在你新建一个脚本之前,你不能直接就开始写指令.你可以用暴雪脚本的开头作为你的脚本的开始,或者干脆自己弄个最简单的.

简单的脚本头

对于一个怕头疼的人来说,下面是一个最行之有效的方法,它既简洁,可靠,又有效率:

start_town

常规脚本头

这是暴雪公司用在它们的常规脚本里的脚本头.它将停用farm timing和其他的未知属性.这是为了让电脑能够按照生产顺序建筑物,之后在不紧急的时候你可以再启用farm timing.这个脚本头包含以下指令:

start_town

transports_off

farms_notiming

或者你可以选择一个ScAIEdit III自带的宏来代替这些指令:

!custom_header

战役脚本头

这类脚本头显然只能用于战役中,因为电脑仅仅是部分的执行"start_campaign"所限定的生产顺序.尽管他的影响还没被了解得很明确,但是有时候电脑确实会决定做一些你没有让它做的事情:

如果它开始就有一个核能井,它会生产一个

如果它开始就有一个飞机场,它会生产两个运输机

或者它会建个气矿

或者其他的类似的行为

战役脚本头的意义在于,一些特定的指令是只能用于战役脚本的,例如"create_unit"或"give_money".这个脚本头包含以下指令:

start_campaign

wait 1

start_town

defaultbuild_off

default_min 0

wait 1

或者你可以选择一个ScAIEdit III自带的宏来代替这些指令:

!campaign_header

一旦决定了用哪个脚本头,就要将它插入到你的脚本中.但是这还没有完.我强烈建议你在脚本的开始定义你将用到的某兵种的最大数量.虽然这不是必须的,但是如果你遇到了遭遇战这样的问题,请试试下面的定义指令.所有的常规脚本和大部分暴雪公司的战役脚本都使用这个定义指令.

在你"真正"开始写脚本之前,输入:

define_max 4 scv

当然你不会只使用四个SCV.我们只是确保在脚本完成后不会忘记更改这个数值.一定要记住修改这个值,或许它会给你一个"惊喜".举例说,你的脚本要生产最多30个SCV,24个机枪兵和16个喷火兵,你可以输入以下指令:

define_max 30 scv

define_max 24 marine

define_max 16 firebat

你只需要定义军用单位和SCV的最大数量,不需要定义其他建筑的最大数量.你可以在后面的脚本中随时重新定义这个值,但最好在你使用这个单位之前定义.别因为这个说明而烦恼,即使我也不能彻底理解这个功能,但是它确实帮我避免了一些问题,所以... 别担心,其他的都很简单:)可以查看ASC3的脚本示例.

完成人工智能脚本

在结束杰作之前,你还有一件事情需要完成.如果你这时候编译脚本,ScAIEdit III会中断编译进程并指出有一个错误.好吧,但愿ScAIEdit III没打断你,否则在这个奇怪的事情发生后,ScAIEdit III的人工智能解释器会继续读取这个文件,调用另外一个脚本并且可能发生更奇怪的事情,或许会引起计算机重启.你可以查看结束人工智能脚本的要点来避免这些异常.有两个途径来实现这个目的:

停止指令

指令"stop"无情却有效.它告诉人工智能解释器立刻停止读取脚本.正常动作还将继续,电脑会对抵抗进攻,会继续矿,但是它自己不会有新的动作.

重要提示:使用指令"stop"会对没有正确使用的指令有一点小影响.如果你以指令"stop"停止了脚本,在那个时刻开始电脑可能在某一条指令上表现得很奇怪.最常见的现象是它不停的生产同一个单位,直到人口上限或耗尽.这种现象可以通过下面的第二种方法避免.

指令"stop"也用在由指令"expand"或指令"multirun"并发的标签中.停止一个并发的标签时不用惧怕上述的异常.实际上,这种情况下指令"stop"是被强烈推荐的.

指令"goto"

指令"goto"在上面有介绍,可以直接跳转到脚本中定义的标签处.当脚本结束时它能做些什么呢?这个指令可以创立一个一直执行的循环.细心的处理循环中的语句,因为如果你不结束脚本它会引起更多的问题.下面是最简单的一个结束脚本的例子:

:loop

wait 1500

goto loop

这样,脚本总是会这么做:等待1500个正常速度的游戏的0.1秒.当然这种结束脚本的方法并不是一定要这样写,你还可以像这样将它完善:

:loop

attack_add 18 marine

attack_add 12 firebat

attack_prepare

attack_do

attack_clear

wait 1500

goto loop

这就会一直有18个机枪兵和12个喷火兵攻击敌人的基地直到它被毁灭.窍门是让一个含有指令的死循环一直执行,这是最有效的结束脚本的方法.

注意:上面写的循环在StarCraft是无效的.最好是添加指令"train"和指令"wait_train",这里仅是个例子:)查看脚本示例来看一个正确有效的脚本.

文档就写这么多,查看ASC3指令列表看看你都能干些什么!:)

首先,你必须进入单机的模式下才能使用秘笈,刚进入星际的时候按SE就是进入单机模式了,而按ME就是进入联机模式。

进入游戏后,按回车键输入“show me the money”,注意秘笈密码像我一样字母之间有空格才能输入正确。每次加10000矿石和10000瓦斯。

星际争霸游戏中的只有矿石和瓦斯。

其中矿石散落在地上,6至8块放在一起,一般一块的含量为1500单位,每块最多只能由1名集者集,不可两个或两个以上集者同时集。

矿石收集完后会消失。瓦斯可在类似火山口处建提炼场后开,一个气矿口的含量一般为5000单位。集队伍每人带回来的量是8,而且这个值无法提升。瓦斯井枯竭后还可继续开,产量减少为2。

扩展资料

在单人模式下,其他秘籍还有:

power overwhelming =无敌 星际争霸秘籍

operation CWAL=快速建筑生产

show me the money =10,000 单位的矿物和高能瓦斯

the gathering = psionic stuff 法力能量无限

game over man =立即游戏失败

noglues =敌人无法施行魔法

staying alive =任务无法完成

there is no cow level =完成目前所执行的任务

whats mine is mine =矿产无限

breathe deep =瓦斯无限

something for nothing =打开 所有可生产的选项

black sheep wall =地图全开

medieval man =单位无限生产

modify the phase variance =拥有生产所有建筑物的能力

war aint what it used to be =关闭战争迷雾

food for thought =拥有在补给限制下无限制造单位的能力

参考资料:

百度百科-星际争霸