免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享
设为首页 | 收藏本站| 『零幻社区』已经陪你度过了
  • 帖子
快速
返回顶部
返回首页
返回列表 發帖
查看: 7998|回复: 0
上一主题 下一主题 打印

部分人物制作教程   [复制链接]

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

;一个人物的组成:cmd(控制指令文件),cns(核心代码),air(动作编辑),sff(人物图片)
;          ,snd(人物声音),act(色表,人物的颜色)
;cns的结构:(1)人物必备属性
;---------------------------------------------------------------------------
[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;蹲态摩擦系数。文字文字
;---------------------------------------------------------------------------
;设定好了上边的属性后我们来正式作人物吧!
;首先人物必须有跑跳等必需的基本动作
;先通过编辑air来编辑人物的基本动作
;0 站立  
;5 opt 转身 必须是有限循环时间
;10 站到蹲 有限循环时间
;11 蹲  
;12 蹲到站 有限循环时间
;20 向前走  
;21 向后走  
;40 跳跃启动(在地面) 仅在人物离地时
;41 直向跳跃(向上) 当人物往上跳
;42 向前跳跃(向上) 当人物往前上跳
;43 向后跳跃(向上) 当人物往后上跳
;44 opt 直向跳跃(向下) Y-velocity > -2时
;45 opt 向前跳跃(向下) 同上
;46 opt 向后跳跃(向下) 同上
;47 跳跃着陆 人物着陆时
;100 向前跑/急冲  
;105 急退  
;120 防御-站-启动 有限循环时间
;121 防御-蹲-启动 有限循环时间
;122  防御-空-启动 有限循环时间
;130 防御-站-摆势  
;131 防御-蹲-摆势  
;132 防御-空-摆势  
;140 防御-站-结束 有限循环时间
;141 防御-蹲-结束 有限循环时间
;142 防御-空-结束 有限循环时间
;150 防御-站-状态 无限循环时间
;151 防御-蹲-状态 无限循环时间
;152 防御-空-状态 无限循环时间
;170 opt 失败 (请看Note 1)
;175 opt 时间到 (请看Note 1)
;180 opt 胜利 无限循环时间(181-189 for multiple) (请看Note 1)
;190 opt Intro 无限循环时间(请看Note 1)
;195 opt Taunt 有限循环时间(请看Note 1)
;编辑好了以后我们来做人物的第一个动作,以迪亚兰丽的重拳为列:
;站立 重拳
[Statedef 210] ;一个动作的开始的标记,210是代表动作号,表示这个动作时标记是210,是自己定义的数字
type   = S ;表示这个动作的状态是站立(s),空中(a),蹲态(c)
movetype= A ;表示这个动作的状态是攻击(A),被攻击(H),不攻击也不被攻击(I)
physics = S ;表示这个动作的所受的摩擦力类型时是站立(s),空中(a),蹲态(c)
juggle  = 10 ;连击点数
poweradd= 65 ;自己的能量增加的点数
ctrl = 0 ;受控制状态,0(作这个动作时不被控制),1(作这个动作时被控制)
velset = 0,0 ;这个动作的初始速度,如果动作是空中的基本动作这一项就要去掉
anim = 210 ;对应air里的动作号
sprpriority = 2 ;所在的图层,这个属性可以不用写

[state 3002]
type = velset
trigger1 = var(17) = 1
trigger1 = time = 0
x = 10

[State 117]
type = VelSet
trigger1 = AnimElem = 2
trigger2 = AnimElem = 3
x = 4

[State 117]
type = VelSet
trigger1 = AnimElem = 4
x = 0

[State 211, 1] ;声音的设定部分
type = PlaySnd ;type的类型
trigger1 = Time = 2 ;条件是动作的时间的第二帧
value = s0, 2 ;声音的标记

[State 211, 1]
type = PlaySnd
trigger1 = Time = 1
value = s300, 1
;攻击效果的设定,详见幻影的翻译(顶帖)
[State 210, 2]
type = HitDef
trigger1 = animelem = 3
persistent = 0
attr = S, NA
hitflag = MAF
animtype  = hard
air.animtype  = back
damage   = 95
getpower = 80,30
givepower = 10
guardflag = MA
pausetime = 12,12
sparkno = S161
guard.pausetime = 12,17
guard.sparkno = S7003
sparkxy = -20,-80
hitsound  = S200,1
guardsound = S210,0
ground.type = hard
ground.slidetime = 17
ground.hittime  = 19
ground.velocity = -8
guard.velocity = -7
ground.cornerpush = 1
air.velocity = -3,-5
air.cornerpush = 1
air.fall = 0
fall.recover = 0
yaccel = .5

;动作的结束部分,一个动作又开始就必需有结束,空中动作可以省略这段代码
[State 211, 5]
type = ChangeState ;固有类型
trigger1 = AnimTime = 0 ;动作动画播放结束
value = 0 ;动作替换到的动作号,0是站立的动作的动作号
ctrl = 1 ;表示动作结束后人物处于可控制状态


;站立 重拳
[Statedef 410] ;一个动作的开始的标记,410是代表动作号,表示这个动作时标记是410,是自己定义的数字
type   = C ;表示这个动作的状态是蹲(s),空中(a),蹲态(c)
movetype= A ;表示这个动作的状态是攻击(A),被攻击(H),不攻击也不被攻击(I)
physics = C ;表示这个动作的所受的摩擦力类型时是蹲(s),空中(a),蹲态(c)
juggle  = 10 ;连击点数
poweradd= 65 ;自己的能量增加的点数
ctrl = 0 ;受控制状态,0(作这个动作时不被控制),1(作这个动作时被控制)
velset = 0,0 ;这个动作的初始速度
anim = 410 ;对应air里的动作号
sprpriority = 2 ;所在的图层,这个属性可以不用写

[State 411, 1] ;声音的设定部分
type = PlaySnd ;type的类型
trigger1 = Time = 2 ;条件是动作的时间的第二帧
value = s0, 2 ;声音的标记

[State 411, 1]
type = PlaySnd
trigger1 = Time = 1
value = s300, 1
;攻击效果的设定,详见幻影的翻译(顶帖)
[State 410, 2]
type = HitDef
trigger1 = animelem = 3
persistent = 0
attr = S, NA
hitflag = MAF
animtype  = hard
air.animtype  = back
damage   = 95
getpower = 80,30
givepower = 10
guardflag = MA
pausetime = 12,12
sparkno = S161
guard.pausetime = 12,17
guard.sparkno = S7003
sparkxy = -20,-80
hitsound  = S200,1
guardsound = S210,0
ground.type = hard
ground.slidetime = 17
ground.hittime  = 19
ground.velocity = -8
guard.velocity = -7
ground.cornerpush = 1
air.velocity = -3,-5
air.cornerpush = 1
air.fall = 0
fall.recover = 0
yaccel = .5

;动作的结束部分,一个动作又开始就必需有结束,空中动作可以省略这段代码
[State 411, 5]
type = ChangeState ;固有类型
trigger1 = AnimTime = 0 ;动作动画播放结束
value = 11 ;动作替换到的动作号,11是蹲态的动作的动作号
ctrl = 1  ;表示动作结束后人物处于可控制状态

;下边给大家介绍一下人物的飞行道具的得制作,其实也很简单方法与普通的动作制作差不多,
;只是把type里的hitdef换作Projectile(发弹),以上边的列子来示范一下

;
[Statedef 410] ;一个动作的开始的标记,410是代表动作号,表示这个动作时标记是410,是自己定义的数字
type   = C ;表示这个动作的状态是蹲(s),空中(a),蹲态(c)
movetype= A ;表示这个动作的状态是攻击(A),被攻击(H),不攻击也不被攻击(I)
physics = C ;表示这个动作的所受的摩擦力类型时是蹲(s),空中(a),蹲态(c)
juggle  = 10 ;连击点数
poweradd= 65 ;自己的能量增加的点数
ctrl = 0 ;受控制状态,0(作这个动作时不被控制),1(作这个动作时被控制)
velset = 0,0 ;这个动作的初始速度
anim = 410 ;对应air里的动作号
sprpriority = 2 ;所在的图层,这个属性可以不用写

[State 411, 1] ;声音的设定部分
type = PlaySnd ;type的类型
trigger1 = Time = 2 ;条件是动作的时间的第二帧
value = s0, 2 ;声音的标记

[State 411, 1]
type = PlaySnd
trigger1 = Time = 1
value = s300, 1
;攻击效果的设定,详见幻影的翻译(顶帖)
[State 1000,Proj1]
type = Projectile
attr = S, SP
trigger1 = AnimElem = 4;道具出现的画面是第四张
projanim = 1480 ;道具出现时的状态是读取得air里的第1480号的动画
projID = 1480;道具标记
projhitanim = 1485 ;道具击中时替换到的动画号
projremanim = 1485;道具消失时替换到的动画号
projcancelanim = 1485;道具cancel时替换到的动画号
projhits = 3 ;道具的攻击次数
projremove = 1 ;道具是否会消失
projpriority = 1;道具的攻击优先权(1~7)
projshadow = -1;道具的影子设定
sparkno = s1041
guard.sparkno = s1039
sparkxy = 20,0
offset = 75,-55
velocity = 3.2, 0
damage   = 30, 10
animtype = hard
ground.type = High
guardflag = MA
hitflag = MAFP
pausetime = 5,5
hitsound  = S220,0
guardsound = s150,0
ground.slidetime = 10
ground.hittime  = 10
ground.velocity = -6.2,-4
air.velocity = -4.8,-4.1
air.juggle = 9
air.fall = 1
fall = 1
envshake.time = 8
envshake.ampl = 2

;动作的结束部分,一个动作又开始就必需有结束,空中动作可以省略这段代码
[State 411, 5]
type = ChangeState ;固有类型
trigger1 = AnimTime = 0 ;动作动画播放结束
value = 11 ;动作替换到的动作号,11是蹲态的动作的动作号
ctrl = 1  ;表示动作结束后人物处于可控制状态

;下边介绍一下cns里的statedef -1下的东东
;在运行时这个底下的代码会一直被解析,也就是这些代码会一直执行
;一般情况受击时出声的代码都写谡饫?[statedef -2]

[State -2, HitAttack]
type = PlaySnd
triggerall = Time = 0
triggerall = life > 0
trigger1 = stateno = 5000
trigger2 = stateno = 5001
trigger3 = stateno = 5002
trigger4 = stateno = 5010
trigger5 = stateno = 5011
trigger6 = stateno = 5012
trigger7 = stateno = 5020
trigger8 = stateno = 5021
trigger9 = stateno = 5022
value = 5000, 0

;现在我开始为大家介绍cmd下的东西
;这些东西其实很简单,道理是先定义出招的指令然后触发指令,触发指令是在[statedef -1]下执行的
;所以cmd里必须有[statedef -1]
[Command]
name = "a";定义一个指令,名字是"a"
command = c;暗地键位是c
time = 1;完成指令的时间是1
;下边是[statedef -1]下的触发指令
[State -1, Stand Light Punch]
type = ChangeState
value = 200;完成指令后脚色进行的动作
triggerall = var(59) != 1
triggerall = (command = "c")
triggerall = command != "holddown"
trigger1 = statetype = S
trigger1 = ctrl

评分

3

評分人數

  • 罪恶之王X

  • qzuser

  • 海影神

收藏收藏 转播转播 分享分享 分享淘帖 顶0 踩0 发送到手机穿越
分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友

Ta们最近看过这个帖子收起

尼埃尔
访问时间:2022-04-25 04:52
鲁鲁修
访问时间:2021-10-07 23:11
我是大师
访问时间:2021-05-22 08:22
雷神卡卡西
访问时间:2019-01-29 18:26
访问时间:2017-11-19 11:59
13921118868
访问时间:2017-09-06 18:39
会灰的飞哥
访问时间:2017-07-29 14:19
2250292137
访问时间:2017-06-12 13:16
杰克罗
访问时间:2017-03-24 21:07

上一主题: 人物聚气的代码

下一主题: 头像替换教程

点评
B Color Link Smilies

您还可以输入:个字符
X

 X

推荐主题更多精彩

最近在学习教程
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

TOP

来个视频ok!!
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

灼烂歼鬼

TOP

写了一大堆,都没看懂。。。来视频比较好
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

TOP

制作一个人要好长时间和精力的
点评
B Color Link Smilies

您还可以输入:个字符
X

 X

TOP

点评
B Color Link Smilies

您还可以输入:个字符
X

 X

呵呵

TOP

返回列表 發帖
 

 

B Color Image Link Quote Code Smilies
高级模式 | 发新话题

 
您需要登录后才可以回帖 登录|立即注册 

关闭
快速
返回顶部
返回首页