人物的CNS文件完成两个用途:
i. 定义一些人物的参数,如行走速度,描画比例因素,等等。
ii. 包含了人物的各状态(States,以下谈到均以英文表述), 描述了所有人物能
做的动作。States就像造房的砖块一样将复杂的动作简单建立起来。
和其它人物文件一样,CNS文件是文本文件,可以用文本编辑器编辑。
在CNS文件中,分号(;)被视为注释标记。分号后的文字内容将被程序忽略。
CNS基本上是大小写不敏感的,如"MyName"同"myname"和"mYnAMe"被视作相同。
唯一的例外是触发条件(trigger)"command",不过现在不必担心。
一些术语
----------------
组,指以[groupname]样子开头的一块文本行,到下一个组的开头作为结尾。例,
组"Blah"有三行组成,
如下:
[Blah]
line1
line2
[Group 2]
more lines
在一个组中,参数的顺序无关紧要,因此
[SomeGroup]
value1 = 1234
value2 = "A string"
等同于:
[SomeGroup]
value2 = "A string"
value1 = 1234
====================================================================
II. 人物变量
====================================================================
现在还没有完整的文件。可以看chars/kfm/kfm.cns有关变量的注释。
一些重要的提示:
- [Size]中, 可以用"xscale"和"yscale"改变人物的长度和宽度。这对人物每
个单图片都有麻烦的缩放效果。
- 在[Velocity]里设定人物的速度。
- 在[Movement]的"yaccel"里设定下落加速度。
方可就把这一段详细写出来吧:
[Data]
life=1000
生命值,一般都是1000,觉得你的人物有特别原因的,就随意增减吧。
attack=100
攻击力,以后设定的伤害数值都会乘上该值作为实际效果,当然是百分比。
defence=100
防御力,越大就是防御力强,对方对己方的伤害效果也会减少。
fall.defence_up=50
被打倒时防御力临时上升的百分比。
liedown.time=60
击倒在地后,躺在地上的时间。(其实也是个重要的指数哦)
airjuggle=15
空中juggle值(请看后面详解)
sparkno=2
默认的击中火花号(觉得好像没用)。
guard.sparkno=40
默认的防中火花号。
KO.echo=0
被KO时有没有回声(就是啊…啊…啊…………)。
volume=0
音量调整(负数就是变轻)。
IntPersistIndex=60
FloatPersistIndex=40
整形/浮点型变量的生存期指标(翻不好,看下去吧)。默认值为60和40,如果
IntPersistIndex=60则有从0到59排列的60个整形变量,而高于60号的变量将
不受VarRangeSet控制;不会在rounds或matches中被复位。(有用啊!)如果
想让你的变量在matches中不被复位,那么就自己覆盖common1.cns的state
5900吧。
[Size]
xscale=1
横向缩放值。
yscale=1
纵向缩放值。
ground.back=15
人物宽度--站立后点。
ground.front=16
人物宽度--站立前点。
上两个值会确定人物的宽度,在Debug模式下可以看到一条黄线。当人物有存
在判定(Clsn2),且没有实现PlayerPush控制语句时,双方黄线交叠时会互相
弹开。
air.back=12
人物宽度--空中后点。
air.front=12
人物宽度--空中前点。
height=60
人物身高(与对方跳跃过顶有关)。
attack.dist=160
攻击效果距离(与对方摆防御动作有关)。
proj.attack.dist=90
发射弹(Projectiles,常为飞行道具)攻击效果距离。
proj.doscale=0
Projectiles是否也受人物缩放比例影响。
head.pos=-5,-90
近似的头部位置(好好设啊,等着我的Choi,heihei)
mid.pos=-5,-60
近似的中身部位置
shadowoffset=0
影子的垂直偏离象素。
draw.offset=0,0
人物的偏离象素(x,y)。
[Velocity]
walk.fwd=2.4
步行前进速度。
walk.back=-2.2
步行后退速度。
run.fwd=4.6,0
跑步前进速度。
run.back=-4.5,-3.8
跑步后退速度。
上两个值的y如不是0,则为小跳前进/后退速度。
jump.neu=0,-8.4
正上跳起速度。
jump.fwd=2.5
向前跳起速度。
jump.back=-2.5
向后跳起速度。
上两个值的y大多不设,即等同于jump.neu的y值。
runjump.fwd = 4,-8.1
向前跑跳起速度。
runjump.back=-2.55,-8.1
向后跑跳起速度。
airjump.neu=0,-8.1
正上空中连跳速度。
airjump.fwd=2.5
向前空中连跳速度。
airjump.back=-2.55
向后空中连跳速度。
[Movement]
airjump.num=1
空中能连跳数。
airjump.height=35
空中能启动连跳的最低高度。
yaccel=.44
下落加速度。
stand.friction=.85
站立摩擦系数。
crouch.friction=.82
蹲态摩擦系数。
i. 定义一些人物的参数,如行走速度,描画比例因素,等等。
ii. 包含了人物的各状态(States,以下谈到均以英文表述), 描述了所有人物能
做的动作。States就像造房的砖块一样将复杂的动作简单建立起来。
和其它人物文件一样,CNS文件是文本文件,可以用文本编辑器编辑。
在CNS文件中,分号(;)被视为注释标记。分号后的文字内容将被程序忽略。
CNS基本上是大小写不敏感的,如"MyName"同"myname"和"mYnAMe"被视作相同。
唯一的例外是触发条件(trigger)"command",不过现在不必担心。
一些术语
----------------
组,指以[groupname]样子开头的一块文本行,到下一个组的开头作为结尾。例,
组"Blah"有三行组成,
如下:
[Blah]
line1
line2
[Group 2]
more lines
在一个组中,参数的顺序无关紧要,因此
[SomeGroup]
value1 = 1234
value2 = "A string"
等同于:
[SomeGroup]
value2 = "A string"
value1 = 1234
====================================================================
II. 人物变量
====================================================================
现在还没有完整的文件。可以看chars/kfm/kfm.cns有关变量的注释。
一些重要的提示:
- [Size]中, 可以用"xscale"和"yscale"改变人物的长度和宽度。这对人物每
个单图片都有麻烦的缩放效果。
- 在[Velocity]里设定人物的速度。
- 在[Movement]的"yaccel"里设定下落加速度。
方可就把这一段详细写出来吧:
[Data]
life=1000
生命值,一般都是1000,觉得你的人物有特别原因的,就随意增减吧。
attack=100
攻击力,以后设定的伤害数值都会乘上该值作为实际效果,当然是百分比。
defence=100
防御力,越大就是防御力强,对方对己方的伤害效果也会减少。
fall.defence_up=50
被打倒时防御力临时上升的百分比。
liedown.time=60
击倒在地后,躺在地上的时间。(其实也是个重要的指数哦)
airjuggle=15
空中juggle值(请看后面详解)
sparkno=2
默认的击中火花号(觉得好像没用)。
guard.sparkno=40
默认的防中火花号。
KO.echo=0
被KO时有没有回声(就是啊…啊…啊…………)。
volume=0
音量调整(负数就是变轻)。
IntPersistIndex=60
FloatPersistIndex=40
整形/浮点型变量的生存期指标(翻不好,看下去吧)。默认值为60和40,如果
IntPersistIndex=60则有从0到59排列的60个整形变量,而高于60号的变量将
不受VarRangeSet控制;不会在rounds或matches中被复位。(有用啊!)如果
想让你的变量在matches中不被复位,那么就自己覆盖common1.cns的state
5900吧。
[Size]
xscale=1
横向缩放值。
yscale=1
纵向缩放值。
ground.back=15
人物宽度--站立后点。
ground.front=16
人物宽度--站立前点。
上两个值会确定人物的宽度,在Debug模式下可以看到一条黄线。当人物有存
在判定(Clsn2),且没有实现PlayerPush控制语句时,双方黄线交叠时会互相
弹开。
air.back=12
人物宽度--空中后点。
air.front=12
人物宽度--空中前点。
height=60
人物身高(与对方跳跃过顶有关)。
attack.dist=160
攻击效果距离(与对方摆防御动作有关)。
proj.attack.dist=90
发射弹(Projectiles,常为飞行道具)攻击效果距离。
proj.doscale=0
Projectiles是否也受人物缩放比例影响。
head.pos=-5,-90
近似的头部位置(好好设啊,等着我的Choi,heihei)
mid.pos=-5,-60
近似的中身部位置
shadowoffset=0
影子的垂直偏离象素。
draw.offset=0,0
人物的偏离象素(x,y)。
[Velocity]
walk.fwd=2.4
步行前进速度。
walk.back=-2.2
步行后退速度。
run.fwd=4.6,0
跑步前进速度。
run.back=-4.5,-3.8
跑步后退速度。
上两个值的y如不是0,则为小跳前进/后退速度。
jump.neu=0,-8.4
正上跳起速度。
jump.fwd=2.5
向前跳起速度。
jump.back=-2.5
向后跳起速度。
上两个值的y大多不设,即等同于jump.neu的y值。
runjump.fwd = 4,-8.1
向前跑跳起速度。
runjump.back=-2.55,-8.1
向后跑跳起速度。
airjump.neu=0,-8.1
正上空中连跳速度。
airjump.fwd=2.5
向前空中连跳速度。
airjump.back=-2.55
向后空中连跳速度。
[Movement]
airjump.num=1
空中能连跳数。
airjump.height=35
空中能启动连跳的最低高度。
yaccel=.44
下落加速度。
stand.friction=.85
站立摩擦系数。
crouch.friction=.82
蹲态摩擦系数。