顯示具有 C and C DIY 標籤的文章。 顯示所有文章
顯示具有 C and C DIY 標籤的文章。 顯示所有文章

2009年4月24日 星期五

Cold War Crisis(C&C zH mod CWC)養成計劃六——長袖善舞

0 意見

上一篇鄙人圖中飛機們機翼后面拖著的漂亮長帶,想必讓你印象深刻。事實上,這些唯有在飛行表演中才能一見的效果。如果能換自己的貼圖,自然就更加的美好了。另外,為了效果絢麗,千萬把運動的ini【Locomotor.ini】里面的飛機運動的對應ini中的LateralVelocityRollFactor改成一個>0.5的數字。這樣,飛機側翻會非常的頻繁,煞是絢麗。

ParticleSystem.ini 和各單位自己的ini,當然,主要是Aircraft單位。對于tank我算是毫無興趣。

以為上次的Me262為例。

open ParticleSystem.ini

find (ctrl+F):JetContrail

ParticleSystem JetContrail ;名字
  Priority = CRITICAL ;這是權限,這樣是最高的權限
  IsOneShot = No ;這的意思是是不是發射的,一般都不是。
  Shader = ALPHA ;透明度的類型,差別在于顯卡的運算方式,我也不很清楚
  Type = STREAK ;還有一類是“PARTICLE”
  ParticleName = EXContrail.tga ;這是原型的文件,對于本次修改,就不用改變了,除非你有什么變態的想法。
  AngleZ = 0.00 0.00 ;初始角度
  AngularRateZ = 0.00 0.00 ;z軸的角速度
  AngularDamping = 0.00 0.00 ;
  VelocityDamping = 0.93 0.94
  Gravity = 0.00 ;這是重力的定義,會讓粒子和單位的“mass”一個效果
  Lifetime = 30.00 30.00 ;粒子活著的時間,請讓它和后面那個變透明的時間一致
  SystemLifetime = 0 ;永遠發粒子
  Size = 0.10 0.20
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30 ;變大變小的速度
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 10 ;這是重點,這里的數字前后兩個隨機選,不能超過一,意思為透明度
  Alpha3 = 1.00 1.00 20 ;然后十m秒為半透,二十m秒全顯示
  Alpha4 = 0.00 0.00 30 ;三十m秒后全透明
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:254 G:254 B:254 0 ;顏色,對于尾氣來說,只有這行有用
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:255 G:255 B:255 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00 ;創造粒子的延時
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00 ;產生粒子之前的延時
  DriftVelocity = X:-0.20 Y:0.00 Z:-0.20 ;粒子出現后的速度,定義復圖案就靠它了
  VelocityType = ORTHO ;移動類型,這樣是向外
  VelOrthoX = -2.00 -2.00 ;
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE ;只有設置為此有下面兩項
  VolLineStart = X:0.00 Y:0.00 Z:0.00 ;產生時的位置,對于飛機,調X
  VolLineEnd = X:0.00 Y:0.00 Z:0.00
  IsHollow = No ;no的情況下,一直有粒子被創造
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924 ;以下是風的效果,不管
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

這是它原來的樣子,我稍微講解一番這個粒子系統,標注在里面

這些都還只不過和目標沾點邊,事實上,它的作用表現在飛機翅膀的粒子定義上,可以看到,一個最基本的飛機翅膀粒子效果:

DefaultConditionState【正常飛行狀態】

有定義

ParticleSysBone = WingTip01 CWCgenJetContrail
ParticleSysBone = WingTip02 CWCgenJetContrail

這個一般也不會去注意,其實它的意思是,翅膀一【正看左邊】和翅膀二【正看右邊】的粒子效果,默認是發自邊緣

而據我的實踐發現,這個東西是可以重復定義的。

說到這里,你可以先試驗試驗效果,一個后面加上red 一個加上green。這兩個是內置的,用在某次國產動畫上。

像這樣

ParticleSysBone = WingTip01 JetContrailRed
ParticleSysBone = WingTip02 JetContrailBlue

保存(save)然后進入游戲看看效果吧,如底下那樣

F15basic

當然,對于那個粒子系統,你可以參看我的注解修改下或者新建個新的顏色或者什么的。至于長度,其一是調整livetime。然后是那個消失時間,比如

Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 1.00 1.00 5
  Alpha3 = 0.00 0.00 300

你會發現它非常的長……超過了整個屏幕

當然,你也會發現,如果不斷讓它消失然后又出現,甚至可以用來做出一面星條旗。當然,那太瘋狂了。對于可以用來象征德國的德國顏色,可以這么定義:

ParticleSysBone     = Wingtip01 JetContrailRed
     ParticleSysBone     = Wingtip01 JetContrailYellowout
     ParticleSysBone     = Wingtip01 JetContrailblackout
     ParticleSysBone     = Wingtip02 JetContrailRed
     ParticleSysBone     = Wingtip02 JetContrailYellowin
     ParticleSysBone     = Wingtip02 JetContrailblackin

 

對于其中每一個,你要通過定義

DriftVelocity =

VolLineStart = X  VolLineEnd = X:

都是定義X這一項。

譬如IN的部分就是這樣。

DriftVelocity = X:-0.30 Y:0.00 Z:-0.20
VolLineStart = X:-8.00 Y:0.00 Z:0.00
 VolLineEnd = X:-8.00 Y:0.00 Z:0.00

然則,out就是

DriftVelocity = X:0.30 Y:0.00 Z:-0.20
VolLineStart = X:24.00 Y:0.00 Z:0.00
VolLineEnd = X:24.00 Y:0.00 Z:0.00

至于顏色,那是由紅綠藍三色搭配的,應該都會。

還有size大小問題,1.0就很大了,當然也可以超過1。默認只有0.5左右

真的可以定義出一面美國國旗出來,但是我沒那個情調,所以算了。

圖片展示

圖一:星條旗永不落sshot035圖二:投誠的SU27,我方生產的…… 圖三: 群魔亂舞,那團綠火的效果也是我定義的

sshot056 給一些設計好的代碼

ParticleSystem JetContrailout
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 530.00 530.00
  SystemLifetime = 0
  Size = 0.10 0.20
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 10
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:254 G:254 B:254 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:255 G:255 B:255 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.20 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:16.00 Y:0.00 Z:0.00
  VolLineEnd = X:16.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailGold
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 1.00 1.00 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:255 G:215 B:0 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:255 G:255 B:255 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.00 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:8.00 Y:0.00 Z:0.00
  VolLineEnd = X:8.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailBlue
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.20 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:0 G:0 B:255 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.00 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:8.00 Y:0.00 Z:0.00
  VolLineEnd = X:8.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailBluein
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.20 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 10
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:0 G:0 B:255 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:-0.30 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:-8.00 Y:0.00 Z:0.00
  VolLineEnd = X:-8.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailBlueout
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.20 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 10
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:0 G:0 B:255 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.30 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:24.00 Y:0.00 Z:0.00
  VolLineEnd = X:24.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailYellowout
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:255 G:214 B:0 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.30 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:20.00 Y:0.00 Z:0.00
  VolLineEnd = X:24.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailYellowin
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:255 G:214 B:0 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:-0.30 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:-4.00 Y:0.00 Z:0.00
  VolLineEnd = X:-8.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailblackin
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:1 G:1 B:1 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:-0.20 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:4.00 Y:0.00 Z:0.00
  VolLineEnd = X:0.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailblackout
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:1 G:1 B:1 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.20 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:12.00 Y:0.00 Z:0.00
  VolLineEnd = X:16.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailRed
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:255 G:0 B:0 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.00 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:8.00 Y:0.00 Z:0.00
  VolLineEnd = X:8.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailRedin
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 30.00 30.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 1.00 1.00 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:255 G:0 B:0 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:-0.30 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:-8.00 Y:0.00 Z:0.00
  VolLineEnd = X:-8.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailRedout
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.60 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 1.00 1.00 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:255 G:0 B:0 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.30 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:24.00 Y:0.00 Z:0.00
  VolLineEnd = X:24.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

ParticleSystem JetContrailGreen
  Priority = CRITICAL
  IsOneShot = No
  Shader = ALPHA
  Type = STREAK
  ParticleName = EXContrail.tga
  AngleZ = 0.00 0.00
  AngularRateZ = 0.00 0.00
  AngularDamping = 0.00 0.00
  VelocityDamping = 0.93 0.94
  Gravity = 0.00
  Lifetime = 300.00 300.00
  SystemLifetime = 0
  Size = 0.20 0.40
  StartSizeRate = 0.00 0.00
  SizeRate = 0.03 0.30
  SizeRateDamping = 0.96 0.99
  Alpha1 = 0.00 0.00 0
  Alpha2 = 0.50 0.50 5
  Alpha3 = 0.00 0.00 30
  Alpha4 = 0.00 0.00 0
  Alpha5 = 0.00 0.00 0
  Alpha6 = 0.00 0.00 0
  Alpha7 = 0.00 0.00 0
  Alpha8 = 0.00 0.00 0
  Color1 = R:0 G:255 B:0 0
  Color2 = R:0 G:0 B:0 0
  Color3 = R:0 G:0 B:0 0
  Color4 = R:32 G:32 B:32 0
  Color5 = R:0 G:0 B:0 0
  Color6 = R:0 G:0 B:0 0
  Color7 = R:0 G:0 B:0 0
  Color8 = R:0 G:0 B:0 0
  ColorScale = 0.00 0.00
  BurstDelay = 2.00 2.00
  BurstCount = 1.00 1.00
  InitialDelay = 0.00 0.00
  DriftVelocity = X:0.00 Y:0.00 Z:-0.20
  VelocityType = ORTHO
  VelOrthoX = -2.00 -2.00
  VelOrthoY = 0.00 0.00
  VelOrthoZ = 0.00 0.00
  VolumeType = LINE
  VolLineStart = X:8.00 Y:0.00 Z:0.00
  VolLineEnd = X:8.00 Y:0.00 Z:0.00
  IsHollow = No
  IsGroundAligned = No
  IsEmitAboveGroundOnly = No
  IsParticleUpTowardsEmitter = No
  WindMotion = Unused
  WindAngleChangeMin = 0.149924
  WindAngleChangeMax = 0.449946
  WindPingPongStartAngleMin = 0.000000
  WindPingPongStartAngleMax = 0.785398
  WindPingPongEndAngleMin = 5.497787
  WindPingPongEndAngleMax = 6.283185
End

把上面那個弄進粒子系統ParticleSystem.ini

然后一些國家象征代碼

雙色美利堅USA

ParticleSysBone     = Wingtip01 JetContrailRed
ParticleSysBone     = Wingtip01 JetContrail
ParticleSysBone     = Wingtip02 JetContrailRed
ParticleSysBone     = Wingtip02 JetContrail

三色星條旗USA

      ParticleSysBone     = Wingtip01 JetContrailRed
      ParticleSysBone     = Wingtip01 JetContrail
      ParticleSysBone     = Wingtip01 JetContrailBluein
      ParticleSysBone     = Wingtip02 JetContrailout
      ParticleSysBone     = Wingtip02 JetContrailBlueout
      ParticleSysBone     = Wingtip02 JetContrailRed

德意志Deutschland

      ParticleSysBone     = Wingtip01 JetContrailRed
      ParticleSysBone     = Wingtip01 JetContrailYellowout
      ParticleSysBone     = Wingtip01 JetContrailblackout
      ParticleSysBone     = Wingtip02 JetContrailRed
      ParticleSysBone     = Wingtip02 JetContrailYellowin
      ParticleSysBone     = Wingtip02 JetContrailblackin

USSR蘇聯邪惡帝國,或者用來指代支那國也可以

      ParticleSysBone     = Wingtip01 JetContrailRedin
      ParticleSysBone     = Wingtip01 JetContrailGold
      ParticleSysBone     = Wingtip02 JetContrailRedout
      ParticleSysBone     = Wingtip02 JetContrailGold

臺灣共和國(Taiwan)

ParticleSysBone     = Wingtip01 JetContrailBlue
ParticleSysBone     = Wingtip01 JetContrail
ParticleSysBone     = Wingtip02 JetContrailGreen
ParticleSysBone     = Wingtip02 JetContrail
Lesen Alle

2009年4月22日 星期三

Cold War Crisis(C&C zH mod CWC)養成計劃五——倒轉時空

0 意見

燕子不言老

二戰末期,德制Schwalbe【雨燕】Me262飛機將世界帶入偉大的噴射機時代。me262完全结构

本人有一本電子資料

完整的記錄了開展于2003年的Me262計劃。那是一群美國和德國軍迷在2003年重新讓Me262飛上藍天的計劃。

他們查閱了幾乎全世界對Me262的資料。外形一絲不茍的按照預設型來設計

并且,在2003年就造出了首機,為私人所收藏。還有一只參加了德國的航空展。作為所有噴射機的鼻祖。二十一世紀的蒼空,Me262仍在飛翔。Me262計劃 對于同在2003年發布的zero hour游戲來說,這些經典的身影不容錯過。似乎閃電戰2的mod里面就有me262的身影出現。那么,我個人的一個小Me 262 Project就此展開。

鄙人學習C&C系列游戲的修改才十數天。要弄清怎么進行一個單位的移植卻也夠了,我沒有必要詳細的把所有的細節都寫出來,那也根本不可能做到,唯有自己去探索,才能有的樂趣我沒法分享。這里只提供一個簡單的方法。并適當加以說明。

下載文件

使用請看下面。

  • 第一步,CWCusCameos_Portraits01.ini中插入
MappedImage GermanMe262Portrait
  Texture = germanme262.tga
  TextureWidth = 497
  TextureHeight = 299
  Coords = Left:0 Top:0 Right:348 Bottom:299
  Status = NONE
End
然后再到CWCusCameos_Command01.ini
插入
MappedImage GermanMe262Cameo
  Texture = germanme262.tga
  TextureWidth = 497
  TextureHeight = 299
Coords = Left:377 Top:0 Right:497 Bottom:103
  Status = NONE
End
這兩個是圖標
所需文件germanme262.tga,下載里面有,把它放到\Art\Textures這個路徑,如果沒有,直接覆蓋我里面的那個ART文檔到游戲基礎文檔。
不過這個圖標的風格和原始游戲不是很融合,也是沒辦法的事情,如果有興致,自己修改吧。
  • 第二步。

Art\W3D文檔插入文件FYME262,這是w3d的模型。然后把圖標和貼圖【dds文件,也可以自行修改】放到W3D下的Textures文件夾。

  • 第三步

武器,加入這兩項

Weapon MK108Weapon  ;me262 weapon 
PrimaryDamage         = 40 
PrimaryDamageRadius   = 5.0       ; 0 primary radius means "hits only intended victim" 
AttackRange           = 350.0 
MinimumAttackRange          = 10.0 
AcceptableAimDelta          = 30 
DamageType = JET_MISSILES
  DeathType = EXPLODED
WeaponSpeed           = 333.0          ; dist/sec (huge value == effectively instant) 
FireSound = CWCusMk_19_40mm_Grenade_Launcher 
FireFX = WeaponFX_SpectreGattlingMuzzleFlash 
ProjectileDetonationFX = WeaponFX_CWCgenSmallAntiAirgunDetonation
RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS 
DelayBetweenShots     = 80; 35 ;125               ; time between shots, msec 
ClipSize = 180 ;25 ;50               ; how many shots in a Clip (0 == infinite) 
ClipReloadTime = 1000 ;5000             ; how long to reload a Clip, msec 
AutoReloadsClip = Yes 
AntiAirborneVehicle   = Yes 
AntiAirborneInfantry  = Yes   
AntiGround = No   
AntiBallisticMissile = Yes
End
Weapon MK108WeaponG  ;me262 weapon 
PrimaryDamage         = 260 
PrimaryDamageRadius   = 45.0       ; 0 primary radius means "hits only intended victim" 
AttackRange           = 550.0 
MinimumAttackRange          = 260.0 
AcceptableAimDelta          = 30 
DamageType = EXPLOSION 
DeathType = EXPLODED 
WeaponSpeed           = 666.0          ; dist/sec (huge value == effectively instant) 
FireSound = CWCusMk_19_40mm_Grenade_Launcher 
FireFX = WeaponFX_SpectreGattlingMuzzleFlash 
ProjectileDetonationFX = WeaponFX_CWCgenHeavyArtilleryShellDetonation 
ProjectileObject = CWCgenExplosiveShell
RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS 
DelayBetweenShots     = 400; 35 ;125               ; time between shots, msec 
ClipSize = 50 ;25 ;50               ; how many shots in a Clip (0 == infinite) 
ClipReloadTime = 1000 ;5000             ; how long to reload a Clip, msec 
AutoReloadsClip = RETURN_TO_BASE 
AntiAirborneVehicle   = No 
AntiAirborneInfantry  = No 
AcceptableAimDelta          = 5 
AntiGround                  = Yes    
AntiBallisticMissile = No   
HistoricBonusTime = 24000 
HistoricBonusCount = 5 
HistoricBonusRadius = 20 
HistoricBonusWeapon = FirestormGreenCreationWeapon
End

對了,最后一個火海武器類型建議改成FirestormCreationWeapon,我那個是自定義的,像極了鬼火,而且范圍小得多,比原有的合適,這個修改很復雜,就不建議了。

  • 第四部【最簡單做法】

找一個你不想造的飛機,譬如F4G。或者有了F117【點此】之后的F111。甚至替代F16都可以。在第一行 Object ×××之后,用底下這段替代。這個最簡單,僅限CWC的mod這么做。

; *** ART Parameters ***
  SelectPortrait         = GermanMe262Portrait
  ButtonImage            = GermanMe262Cameo
  Draw                   = W3DModelDraw ModuleTag_01
    DefaultConditionState
      Model               = FYME262
      HideSubObject       = BurnerFX01 BurnerFX02
      WeaponMuzzleFlash   = PRIMARY MuzzleFX
      WeaponFireFXBone    = PRIMARY Muzzle
      WeaponLaunchBone    = SECONDARY WeaponA
    End

    ConditionState        = JETEXHAUST
      ; exhaust

      ParticleSysBone     = Wingtip01 JetContrailRed
      ParticleSysBone     = Wingtip01 JetContrailYellowout
      ParticleSysBone     = Wingtip01 JetContrailblackout
      ParticleSysBone     = Wingtip02 JetContrailRed
      ParticleSysBone     = Wingtip02 JetContrailYellowin
      ParticleSysBone     = Wingtip02 JetContrailblackin

    End

    ConditionState        = JETEXHAUST JETAFTERBURNER
      ; exhaust

      ParticleSysBone     = Wingtip01 JetContrailRed
      ParticleSysBone     = Wingtip01 JetContrailYellowout
      ParticleSysBone     = Wingtip01 JetContrailblackout
      ParticleSysBone     = Wingtip02 JetContrailRed
      ParticleSysBone     = Wingtip02 JetContrailYellowin
      ParticleSysBone     = Wingtip02 JetContrailblackin

      ; afterburner
      ShowSubObject       = BurnerFX01 BurnerFX02
      ParticleSysBone     = Engine01 JetLenzflare
      ParticleSysBone     = Engine02 JetLenzflare
    End

    ConditionState        = REALLYDAMAGED
      Model               = FYME262
      ; damage
      ParticleSysBone     = Smoke01 JetSmoke
      ParticleSysBone     = Engine02 JetEngineDamagedSmoke
    End
    ConditionState        = REALLYDAMAGED JETEXHAUST
      Model               = FYME262
      ; damage
      ParticleSysBone     = Smoke01 JetSmoke
      ParticleSysBone     = Engine02 JetEngineDamagedSmoke
      ; exhaust
      ParticleSysBone     = Wingtip01 JetContrailBlue
      ParticleSysBone     = Wingtip02 JetContrailRed
    End

    ConditionState        = REALLYDAMAGED JETEXHAUST JETAFTERBURNER
      Model               = FYME262
      ; damage
      ParticleSysBone     = Smoke01 JetSmoke
      ParticleSysBone     = Engine01 JetEngineDamagedSmoke
      ; afterburner
      ShowSubObject       = BurnerFX01 BurnerFX02
      ParticleSysBone     = Engine01 JetLenzflare
      ParticleSysBone     = Engine02 JetLenzflare
      ; exhaust
      ParticleSysBone     = Wingtip01 JetContrailRed
      ParticleSysBone     = Wingtip01 JetContrailYellowout
      ParticleSysBone     = Wingtip01 JetContrailblackout
      ParticleSysBone     = Wingtip02 JetContrailRed
      ParticleSysBone     = Wingtip02 JetContrailYellowin
      ParticleSysBone     = Wingtip02 JetContrailblackin
    End

    ConditionState        = RUBBLE
      Model               = FYME262
      HideSubObject       = None
      ShowSubObject       = None
    End

    ConditionState        = RUBBLE JETEXHAUST JETAFTERBURNER
      Model               = FYME262
      ;HideSubObject is needed cause there're inherited from default condition state     
      HideSubObject       = None
      ShowSubObject       = None
      ParticleSysBone     = Engine01 JetExhaust
      ParticleSysBone     = Engine02 JetExhaust
      ; exhaust
      ParticleSysBone     = Wingtip01 JetContrailRed
      ParticleSysBone     = Wingtip01 JetContrailYellowout
      ParticleSysBone     = Wingtip01 JetContrailblackout
      ParticleSysBone     = Wingtip02 JetContrailRed
      ParticleSysBone     = Wingtip02 JetContrailYellowin
      ParticleSysBone     = Wingtip02 JetContrailblackin
    End

    OkToChangeModelColor = Yes

  End

  ; ***DESIGN parameters ***
  DisplayName             = object:germanaircraftme262
  EditorSorting           = VEHICLE
  Side                    = USA
  TransportSlotCount      = 0 ;how many "slots" we take in a transport (0 == not transportable)
  VisionRange             = 600.0
  ShroudClearingRange     = 1000
  Prerequisites
    Object                = CWCusAirField
  End

  WeaponSet
    Conditions            = None
    Weapon                = PRIMARY MK108Weapon
    Weapon                = SECONDARY MK108WeaponG
    Weapon = SECONDARY MK108WeaponG
  End
  ArmorSet
    Conditions            = None
    Armor                 = CWCusA10Armor
    DamageFX              = None
  End

  BuildCost               = 6400
  BuildTime               = 2  
  ExperienceValue         = 50 50 100 150  ;Experience point value at each level
  ExperienceRequired      = 0 1000 6000 40000   ;Experience points needed to gain each level
  IsTrainable             = Yes             ;Can gain experience
  CrusherLevel           = 1  ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
  CrushableLevel         = 2  ;What am I?:        0 = for infantry, 1 = for trees, 2 = general vehicles
  CommandSet              = CWCusF16CommandSet

  ; *** AUDIO Parameters ***
   VoiceSelect = CWCusF15VoiceSelect
  VoiceMove = CWCusF15VoiceMove
  VoiceAttackAir = CWCusF15VoiceAttack
  VoiceGuard = CWCusF15VoiceGuard
  SoundAmbient = CWCusFSeriesEngineLoop
  UnitSpecificSounds
    VoiceCreate = CWCusF15VoiceCreate
    VoiceGarrison = CWCusF15VoiceMove
    VoiceLowFuel = CWCusF15VoiceLowFuel
    VoiceEject = CWCusF15VoiceEject
    Afterburner = CWCgenJetAfterburner
  End

  ; *** ENGINEERING Parameters ***
  RadarPriority          = UNIT
  KindOf                 = PRELOAD CAN_CAST_REFLECTIONS CAN_ATTACK SELECTABLE VEHICLE SCORE AIRCRAFT
  Body                   = ActiveBody ModuleTag_02
    MaxHealth            = 2000.0
    InitialHealth        = 2000.0
  End

Behavior = TransitionDamageFX ModuleTag_Death01
    DamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:CWCgenTankDeathSmokeDamaged
    DamagedFXList1 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDamageTransition
    ;
    ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:CWCgenTankDeathSmokeReallyDamaged
    ReallyDamagedFXList1 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDamageTransition
    ;
    RubbleParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:CWCgenTankDeathSmokeRubble
    RubbleFXList1 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDamageTransition
  End

  Behavior                          = JetSlowDeathBehavior ModuleTag_05
    FXOnGroundDeath                 = FX_CWCgenJetOnGroundDeath
    OCLOnGroundDeath                = OCL_RaptorDeathFinalBlowUp
    DestructionDelay                = 99999999; destruction will happen when we
    RollRate                        = 0.2
    RollRateDelta                   = 100% ;each frame, rollrate = rollrate * rollrateDelta
    PitchRate                       = 0.0
    FallHowFast                     = 110.0%  ;Bigger is faster (can be over 100%,it's a fraction of gravity)
    FXInitialDeath                  = FX_CWCgenJetDeathInitial
    OCLInitialDeath                 = OCL_RaptorDeathInitial
    DelaySecondaryFromInitialDeath  = 500  ; in milliseconds
    FXSecondary                     = FX_CWCgenJetDeathSecondary
    OCLSecondary                    = OCL_RaptorDeathSecondary
    FXHitGround                     = FX_CWCgenJetDeathHitGround
    OCLHitGround                    = OCL_RaptorDeathHitGround
    DelayFinalBlowUpFromHitGround   = 200 ; in milliseconds

  End
;  Behavior                    = EjectPilotDie ModuleTag_06
;    ExemptStatus         = HIJACKED
;    GroundCreationList = OCL_EjectPilotOnGround
;    AirCreationList = OCL_EjectPilotViaParachute
;    VeterancyLevels =  ALL -REGULAR ;only vet+ gives pilot
;  End
  Behavior               = PhysicsBehavior ModuleTag_07
    Mass                 = 500.0
  End

  Behavior = JetAIUpdate ModuleTag_09
     KeepsParkingSpaceWhenAirborne = Yes
    MinHeight = 5
    NeedsRunway = Yes
    OutOfAmmoDamagePerSecond = 10%     ; amount of damage to take per SEC (not per frame) when out of ammo
                                        ; note that it's expressed as a percent of max health, not an absolute
    ReturnToBaseIdleTime = 10000 ; if idle for this long, return to base, even if not out of ammo
    TakeoffPause = 1000
    TakeoffDistForMaxLift = 0%   ; larger numbers give more lift sooner when taking off
    AutoAcquireEnemiesWhenIdle = Yes
    LockonTime = 100
    LockonCursor = CWCgenLockOnCursor
    LockonInitialDist = 50
    LockonFreq = 1
    LockonAngleSpin = 1440
    LockonBlinky = No
    ParkingOffset = 5
  End
  Locomotor = SET_NORMAL CWCusF15Locomotor
  Locomotor = SET_TAXIING BasicJetTaxiLocomotor

  Behavior = FlammableUpdate ModuleTag_21
    AflameDuration = 5000         ; If I catch fire, I'll burn for this long...
    AflameDamageAmount = 3       ; taking this much damage...
    AflameDamageDelay = 500       ; this often.
  End
Behavior = StealthUpdate ModuleTag_113 
  StealthDelay = 100  ;隐形延迟 
  StealthForbiddenConditions = None  ;不能隐形的情况 
  FriendlyOpacityMin = 30.0% 
  FriendlyOpacityMax = 90.0% 
  InnateStealth = Yes  ;天生隐形 
  OrderIdleEnemiesToAttackMeUponReveal = Yes 
End 
Behavior = PointDefenseLaserUpdate ModuleTag_102  ;镭射防御 
  WeaponTemplate = Mi35MPointDefenseLaser 
  PrimaryTargetTypes = BALLISTIC_MISSILE SMALL_MISSILE  ;首选目标 
  ScanRate = 1  ;扫描速率 
  ScanRange = 400.0  ;扫描范围 
  PredictTargetVelocityFactor = 3.0  ;预知目标速率因素 
End 

  Geometry                 = Box
  GeometryIsSmall          = Yes
  GeometryMajorRadius      = 14.0
  GeometryMinorRadius      = 7.0
  GeometryHeight           = 5.0
  Shadow                   = SHADOW_VOLUME
  Scale = 0.8
  ShadowSizeX = 45  ; minimum elevation angle above horizon. Used to limit shadow length.

End

紅色部分的代碼后面解釋。這是本人的得意之處。

  • 并列第四步【非CWCmod]

有這么幾個必須注意的點:

weapon【我那兩個你不能用了】;VoiceSelect;ArmorSet;Locomotor ;CommandSet都要去各自的文件ini中創設。而生產按鈕請參看修改第一輯,自去設定。

其余的我加上了隱形【時空穿越的怎么會看得到?】鐳射防御和一個純屬惡搞的運動修正。當然你也可以另加插件。對了,由于沒有加上導彈發射的定義,不能亂裝導彈武器。【實際上,機炮厲害多了】

好,先欣賞Me262狂屠Mig29的精彩畫面。然后再進行第二步教學

補遺

關于飛機的雙翼上拉出來的尾煙氣,整理了一下材料,發現比較復雜,決定單寫一篇。可以先把我那些in和out的標記去掉,試試看Wink

關于整個的大小問題

我在模型的最后有一個定義。最后一行,Scale = 0.8【會比上面那個小一半,符合真實比例】,這個很重要,這個值決定了大小,每1/20就大一圈,效果非常明顯。而其他血長度什么的不打算和別的部一樣的話就別改。

Me262的涂裝有很多經典的,我會近期放出王牌的沃諾特尼涂裝,到時覆蓋就是。

Sleepy最近忙,寫得不清不楚,也是沒辦法。將就把。

下期預告

sshot034

Lesen Alle

2009年4月19日 星期日

Cold War Crisis(C&C zH mod CWC)養成計劃四——巨細無遺

0 意見

先把上一篇補漏下,上一篇中,本人提供的的方式中,应该提一点,除了DestructionDelay = 外还有SinkDelay =,在此提醒下,爱机有极限,修改需谨慎。极端状况如下时,一应粒子效果都没有了。且会巨卡无比。你可以想象下全部冒黑煙甚至全部起火要多少的顯存去對付。

sshot060不过有一个悲哀的发现。卡的情况下,运动的ini设定很可能不起效果,所以,会有这种事:

SR71 be destroy by SAM6/  7M:3Msshot008 (2) 我前文说过,要放出SR71的生产,其实大可以参考F117自己去弄。而对我本人来说,发现了更好玩的东西,先弄再说其他。

Cold War Crisis這個模組的AI其實是并不太狠的,當然,在rank高的時候,確實也防不勝防。譬如那個變態至極的導彈飽和攻擊的技能,一次就能做掉我的機場或者油坊,導致十幾秒內完全被動挨打。還有TU160或者B1B釋放的巡曳飛彈,兩枚就能炸掉雷達,讓你變成事實上的瞎子。而且,防空武器對付它們是非常有心無力的。

面對此些事情,導彈武器實在沒有辦法,只好……裝機炮。選定機種自然要符合事實,比如F15/16用的是六管單裝的M 61,在weapon.ini中一查,竟然已經有了這種武器,那么自然,先拿來做實驗……

Weapon CWCusM61A1_20mm_Cannon
  PrimaryDamage = 24
  PrimaryDamageRadius = 6
  SecondaryDamage = 1
  SecondaryDamageRadius = 12
  AttackRange = 350
  AcceptableAimDelta = 30
  MinimumAttackRange = 15
  DamageType = INFANTRY_MISSILE
  DeathType = NORMAL
  FireSound = CWCusM61A1_20mm_Cannon
  FireSoundLoopTime = 96
  FireFX = WeaponFX_CWCgenGattlingCannon
  ProjectileObject = CWCgenExplosiveShellAir
  ProjectileDetonationFX = WeaponFX_CWCgenSmallAntiAirMissileDetonation
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  ScatterRadius = 10
  WeaponSpeed = 600
  ClipSize = 25
  ClipReloadTime = 2000
  DelayBetweenShots = 20
  AntiAirborneInfantry = No
  AntiAirborneVehicle = Yes
  AntiBallisticMissile = Yes
  AntiGround = No
END

先把代碼搞成我上面這幅樣子。傷害距離等不是要緊,重點是在為紅色標注的句子上。非此不真實。這是個偏差代碼,是武器的自然誤差,不然機炮百發百中,就算飛行員各個都是哈特曼再世,也完全沒有可能性。數字大小自己把握,可以這么理解:那個數字N代表著1/N的直接命中。

然后修改你想用法飛機(如果是蘇式飛機,另請改動或者創建武器。請注意的是Object也必須創建。)找到

DefaultConditionState

底下改成

   1:  WeaponFireFXBone = PRIMARY Muzzle
   2:        WeaponFireFXBone = SECONDARY WEAPON
   3:        WeaponLaunchBone = SECONDARY MISSILEB
   4:        WeaponLaunchBone = PRIMARY Muzzle
   5:        HideSubObject = ENGINE_AB
   6:        ShowSubObject = ENGINE_N

然后到武器項,加一項

   1:  Weapon = TERTIARY CWCusM61A1_20mm_Cannon   
   2:      PreferredAgainst = TERTIARY AIRCRAFT

也可以是SECONDARY,這不一定

如果第一武器是導彈的話,把最小射程改到機炮的射程之外,這樣一來,最強大的空優戰機就誕生了。并且在本游戲的設定中。由于在大飛機的裝甲值的定義中

Armor = INFANTRY_MISSILE        0%

所以,機炮對于空優機【su27,F15】和轟炸機【tu95.tu160.B1B.B52】包括偵察機【SR71黑鳥/mig25】都無效。會使用導彈,我建議把機炮放在武器的第一位,這樣可以提高導彈使用效率。這樣之后,F15和SU27之類,對米格機和F15還有對地支援機【蛙足和A10】都是赤裸裸的屠殺。不過可以通過設置機炮彈藥和射程威力等限制一下。

最大的功用還是用來消除彈道導彈的威脅,我準備以后讓蘇式的防空臺有自動釋放巡曳飛彈的能力,這就要求非常非常好的攔截水準。

這篇到此為止,因為有重要的東西正待鉆研,加上APS已經臨近了。放上兩張趣味圖片。

圖1:B1B的傾述

圖2:對邪教徒挫骨揚灰

簡單介紹下第二圖實現的方法。

我用的是F111的武器,weapon.ini的定義之后加上這段:

   1:  HistoricBonusTime = 燃燒時間
   2:  HistoricBonusCount = 引發火海所需彈藥數(要同時打幾發)
   3:  HistoricBonusRadius = 燃燒範圍
   4:  HistoricBonusWeapon = 火海武器類型:如
   5:  FirestormSmallCreationWeapon – 火海武器類型升級前
   6:  BlackNapalmFirestormSmallCreationWeapon – 火海武器類型升級後
   7:  衝擊波效果:
   8:  ShockWaveAmount = 20 ;衝擊波數量
   9:  ShockWaveRadius = 50 ;衝擊波範圍
  10:  ShockWaveTaperOff = 0.2 ;

文字部分自己去改變吧。

預告后面的東西,第三帝國附體:Me262穿越!

Lesen Alle

2009年4月17日 星期五

Cold War Crisis(C&C zH mod CWC)養成計劃三——盈野尸籍

0 意見

奧丁們和阿瑞斯們、馬爾斯(mars)們浴血廝殺過后的沙場,應該是尸首遍地,殘肢敗體漫地的一副境況。無論是勝是敗,游戲中必然有一方會落得盡歸黃泉的宿命,這是即時戰略游戲無法逃離的宿命模式。尤其是c&c系列,瘋狂的電腦AI必定是最會爆兵的AI。你的完美布局之下,電腦每一次絕命沖擊都無功而返,只留一地尸首。然則常為玩家不滿的在于,這些尸首在數秒之內就會消失,這對于營造一個真實的戰場非常的不利,然而其他的游戲且不論,鄙人可以非常有把握的告訴您,C&C將軍絕命時刻這個游戲是絕對可以做到我們設想中的盈野尸籍的盛況的。

思路非常的簡單,無非是在ini文件中找到死亡定義,然后調整尸體的消失時間,但也并不只是這么簡單。且容我慢慢述清。

sshot001

sshot003一般來說,做得比較認真的mod里面,object的死亡在作者眼里必是一件非常嚴肅的事情, 如果是一個好mod,這一塊在ini文件中必定是得到異常的重視的,可以發現,Cold War Crisis這個mod里面,死亡都用

;--- begin Death modules ---
……
; --- end Death modules ---

先研究tank【廣告,天安門坦克人紀錄片】,這樣的代碼標出來。我以USSR在AI中最會造的BMP2來舉例吧

; --- begin Death modules ---
  Behavior = TransitionDamageFX ModuleTag_Death01
    DamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:CWCgenTankDeathSmokeDamaged
    DamagedFXList1 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDamageTransition
    ;
    ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:CWCgenTankDeathSmokeReallyDamaged
    ReallyDamagedFXList1 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDamageTransition
    ;
    RubbleParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:CWCgenTankDeathSmokeRubble
    RubbleFXList1 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDamageTransition
    RubbleFXList2 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDeathRubble1
  End
  Behavior = SlowDeathBehavior ModuleTag_Death02
    DestructionDelay = 1800000000
    FX = MIDPOINT FX_CWCgenTankDeathRubble2
    OCL = MIDPOINT OCL_CWCgenTankDeathTrails
    SinkDelay = 150000000
    SinkRate = 4.0
    ;
    Weapon = MIDPOINT CWCgenVehicleExplodeWeapon
  End
; --- end Death modules ---

在結合游戲中所見可知,一個tank的死亡在冷戰危機CWC這個模組中,是按照:起火——爆炸——冒煙殘骸——下沉【消失】的模式來的。按照本人的設計,是取消最后一步,或者說,可以讓整個步驟停在起火的成分或者最后那個冒煙殘骸的環節上,也就是如圖示。

一堆被打爆的T72;T80

一般來說,在ini的object文件檔里面定義死亡必定和一些粒子代碼有關,歸根到底最終的時間一定是在FXList.ini中可以找到它在ParticleSystem.ini的最終定義。那里有一個時間的定義,這是以往的所有mod我的更改上顛撲不破的真理。

舉例還是BMP2

DamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:CWCgenTankDeathSmokeDamaged
    DamagedFXList1 = Loc: x:0 y:0 z:0 FXList:FX_CWCgenTankDamageTransition

這是燃燒著的tank代碼,這里有個ParticleSystem的定義CWCgenTankDeathSmokeDamaged

好,把生存時間后面加n個0,保存。

Lifetime = 2000000000.00 2000000000.00
  SystemLifetime = 2000000000.00

然后是FX_CWCgenTankDamageTransition的定義,這在FXList.ini中看到,其ParticleSystem代碼是……CWCgenTankTransitionExplosion

也一樣把生存時間改成很大的數字,好了,保存。你會發現,這個代碼為所有的戰車所用,難道,這樣一來,一勞永逸了???

打開游戲,自己生產三量隨便什么出來,二打一,沒幾炮,這架可憐的試驗車見了馬克思,我們開始期待它的表現……呃、它著火了,呃、它爆炸了,呃、它沒了!怎么回事??唉,這個放之四海皆準的方法竟然無效?不過你會發現,剛剛還停著那倒霉車的地方,冒著一團鬼火。這……是CWCgenTankTransitionExplosion代碼的效果。由此可見,在物品的死亡定義里面,物品本身和“粒子效果”是分離的。

原來,此游戲中對于尸體的停留時間,一概用DestructionDelay =這個定義去覆蓋。那是關于死亡后的模型的定義。而把死亡模型停留在著火情況還是發煙的情況的方法如下:

  • 讓死尸停留在剛被擊穿的形態上:改動CWCgenTankDeathArms
  • 定義在剛被擊中的冒火狀態:改動CWCgenTankTransitionExplosion
  • 讓死尸停留在著火狀態:改動CWCgenTankDeathFireRubble
  • 讓殘骸不斷的自爆:改動CWCgenTankDeathFireRubbleEmbers CWCgenTankDeathLenzflare【這個千萬不要改太大】
  • 冒煙狀態:CWCgenTankDeathSmokeDamaged,CWCgenTankDeathSmokeReallyDamaged,CWCgenTankDeathSmokeRubble【這三個是往復起作用的,形成煙霧時大時小的效果】
  • 下沉狀態是這么幾個:【沒試驗】CWCgenTankMuzzleFlashSmoke;CWCgenTankMuzzleFlashFlame;CWCgenTankMuzzleFlare

sshot008當然,友情提醒一下:為了你電腦不要載荷過大(玩這個游戲,配置好沒有用,因為引擎不太好)還請不要亂開效果。

關于飛機:

飛機死亡后模型在這幾個ini文件里面定義。CWCruJetHulk.ini【蘇聯噴射機】; CWCruHelicopterHulk.ini【蘇聯直升機】CWCusHelicopterHulk.ini【美國直升機】CWCusJetHulk.ini【美國噴射機】

要改的只有這條DestructionDelay

如果要修改效果,還是上面那些。我上面一張圖片其實出現了粒子系統的全面當機,一點效果也沒有了。這是開得過量的結果。我覺得,弄到“冒青煙”也就可以了。

士兵:

這個mod的兵的數量并不大,如果想瘋狂點,搞個狂爆兵的mod最好。還有一招,就是在地方的兵營Barracks里面加上

Behavior = ProductionUpdate ModuleTag_11
QuantityModifier = CWCruInfAssault 8
QuantityModifier = CWCruInfAntiMaterial 5
QuantityModifier = CWCruInfAntiTank 5
QuantityModifier = CWCruInfOfficer 3
End

這個技能,包你爽。

但是容易死機

兵士的死亡在游戲中會變成一個特殊的“死亡型”兵,一定時間內可以由醫生救活它,而這些死亡兵都會放在\Infantry\Death里面,那么簡單了,如果你想讓兵在更長的時間內可以救活,那么修改下

Behavior = LifetimeUpdate ModuleTag_03
  MinLifetime = 120000
  MaxLifetime = 220000
End

就行,但是,“死亡型”兵再次死亡后,變成的是一灘血,這個在底下的一個

Behavior = SlowDeathBehavior ModuleTag_07
    DeathTypes = ALL -EXTRA_3
    SinkDelay = 5000000000
    SinkRate = 0.5 ; in Dist/Sec
    DestructionDelay = 100000000000
    OCL = INITIAL OCL_CWCgenInfBlood
  End

里面可以看到,如果想要兵“倒在血泊中”,那么怎么辦呢?也很簡單,一個兵有很多不同的死法,我也懶的一一敘述,只說說方法——非常簡單,打開兵“活的”的ini搜索DestructionDelay全部改大就行了。我的設置是有的死后有尸體有血泊。有的完全只有血泊。可改Object CWCgenInfBlood致所有的兵死后都有永久的一灘血。

效果,怎樣?“一將功成萬骨枯”所言不虛。

sshot002

第三輯完

Lesen Alle

2009年4月15日 星期三

Cold War Crisis(C&C zH mod CWC)養成計劃二——夜甍降临

0 意見

今天來搞定F117的起降問題

sshot014

上文中,我通過設置CommandSet CWCusAirFieldCommandSet 達成了在Cold War Crisis Mod的usa美軍陣營里面可以生產117的問題。作者此番并不放出F117的生產,估計是平衡性方面的考量。而對于我們玩家來說,如果必要的話,任何里面出現的東西其實都可以拿來生產,而且可以掛載任何的武器。這是今天的主要方向。

sshot013 (2)CommandSet.ini保存之后,就是如此的一副形態,怕是真恨不能在多一排標簽吧,哈哈(其實一樣可以做到)

針對F117,由于按鈕鍵已經設置好,只要添加如下的代碼即可讓機場出現F117的生產按鈕,并可以順利生產。

CommandSet CWCusAirFieldCommandSet
…… 
9 = Command_ConstructCWCusF117
…… 
END

但是這遠遠不夠,如果止這樣,生產出來之后只會繞著機場飛來飛去,并且不能選定它,更不會顯示血量和彈藥,自然也沒有實際用處,看來是一些技能沒有設定了。我也是通過與別的飛機的比對才發現,缺少的東西主要有這些:

  • 停放在機場中的形態代碼(導致不能進入機場)
  • 起飛的運動代碼
  • 顯示血量的代碼
  • 可以選定的設定

這些都在同一個ini文件中,也就是cwcF117的定義ini中有設置

通過逐條的排查,找到了這些地方放與眾不同。

IsTrainable = Yes ;Can gain experience RadarPriority = UNIT
  KindOf = AIRCRAFT CAN_ATTACK CAN_CAST_REFLECTIONS SELECTABLE PRELOAD SCORE VEHICLE
這里的yes決定了可以選定 第二個請按照我這樣設定,不然將不能選擇,因為原先沒有SELECTABLE這一項Behavior = DeliverPayloadAIUpdate ModuleTag_06
    DoorDelay = 0
  End
這條的直接意思就是不能停在機場里面,看來要刪掉   ;Behavior = JetAIUpdate ModuleTag_06
  ;  KeepsParkingSpaceWhenAirborne = Yes
  ;  MinHeight = 5
  ;  NeedsRunway = Yes
  ;  OutOfAmmoDamagePerSecond = 10%     ; amount of damage to take per SEC (not per frame) when out of ammo
                                        ; note that it's expressed as a percent of max health, not an absolute
  ;  ReturnToBaseIdleTime = 10000 ; if idle for this long, return to base, even if not out of ammo
  ;  TakeoffPause = 1000
  ;  TakeoffDistForMaxLift = 0%   ; larger numbers give more lift sooner when taking off
  ;  AutoAcquireEnemiesWhenIdle = Yes
  ;  LockonTime = 1000
  ;  LockonCursor = CWCgenLockOnCursor
  ;  LockonInitialDist = 50
  ;  LockonFreq = 1
  ;  LockonAngleSpin = 1440
  ;  LockonBlinky = No
  ;End
Behavior = SpecialPowerCompletionDie ModuleTag_10
    SpecialPowerTemplate = SUPERWEAPON_CWCusF117BombStrike
  End

ini文件中,凡是前面加上半角分號;就是注釋的意思,這后面的直到下一行都不起作用,作者預留了這段代碼,看起來他只是暫時不想解禁F117而已。要做的事情就是,把這段里面的全部;remove掉。下面一個是它具有什么樣的超武能力……要讓這個起作用還得把按鈕的ini修改一下。先不提

上面代碼的意義是F117在機場中停放的形態

  Locomotor = SET_NORMAL CWCusF117Locomotor
  Locomotor = SET_TAXIING CWCgenJetTaxiLocomotor
如果沒有可以看到,底下的這個運動屬性也被加上了分號,這是降落的運動定義,為了我們的目標,可以去掉這個分號。   Behavior = CountermeasuresBehavior ModuleTag_18
    TriggeredBy = Upgrade_CWCusPreSetUpgrades
    FlareTemplateName = CWCusCountermeasureFlare
    FlareBoneBaseName = Flare ; Name of the base flare bone (Flare01, Flare02, Flare03)
    VolleySize = 4 ; Number of flares launched per volley (requires bones)
    VolleyArcAngle = 90.0 ; Max angle of flare relative to forward direction (with VolleySize of 1, flare will always goes straight back).
    VolleyVelocityFactor = 2.5 ; Shoots out flares at a stronger velocity with a higher value.
    DelayBetweenVolleys = 500 ; Time between flare volleys
    NumberOfVolleys = 3 ; Number of times the volleys will fire before reloading
    ReloadTime = 1000 ; After all volleys launched, then reloading must occur. If 0, then reloading occurs at airstrip only.
    EvasionRate = 35%   ; With active flares, the specified percentage will be diverted.
    ReactionLaunchLatency = 0 ; Reaction between getting shot at and the firing of the first volley of countermeasures.
    MissileDecoyDelay = 50 ; A reported missile that has been determined to hit a decoy will wait this long before acquiring countermeasures.
  End

這一段是必須添加的代碼,沒有這一段,將無法有發射導彈類武器的效果。當然,如果你的設置中武器只帶炸彈,那么就不必加了。

ClientUpdate = AnimatedParticleSysBoneClientUpdate ModuleTag_Client01
  End

  Behavior = ObjectCreationUpgrade ModuleTag_RadarDrone
    UpgradeObject = OCL_CWCgenRadarDrone
    TriggeredBy = Upgrade_CWCgenRadarDrone
  End

  Behavior = GrantUpgradeCreate ModuleTag_RadarDroneCreate
    UpgradeToGrant = Upgrade_CWCgenRadarDrone
  End

  Behavior = EjectPilotDie ModuleTag_Pilot
    ExemptStatus = HIJACKED
    AirCreationList = OCL_EjectCWCusPilot
    VeterancyLevels =  ALL
  End

最后一段是顯示血量,顯示彈藥量的代碼,一般所有單位除了任務召喚單位之外都有這個。這非常的重要。可以讓自己添加的單位看上去更加的像是正常單位,而且在游戲中,沒有HP的顯示是非常可怕的。在冷戰危機中,飛機一般挨上兩枚missile就見鬼了。而這個飛機作為隱形機,勢必要強化下它的隱形性能。也就是把其

StealthUpdate ModuleTag 的能力調整為如下

Behavior = StealthUpdate ModuleTag_113 
  StealthDelay = 100  ;隐形延迟——被發現后多久恢復 
  StealthForbiddenConditions = None  ;不能隐形的情况 ,這樣是沒有……
  FriendlyOpacityMin = 30.0%  ;敵人發現了以后的視覺可見程度
  FriendlyOpacityMax = 90.0%  ;對自己的視覺可見程度
  InnateStealth = Yes  ;天生隐形 
  OrderIdleEnemiesToAttackMeUponReveal = Yes 
End

當然,這個代碼可以隨便加入任何單位和建筑里面,我賦予的數字113應該不會有任何重復,這樣,你可以讓你自己一方完全做到敵明我暗,不過那樣太破壞平衡。

好了,放上一組這個“新”單位的靚圖

鬼魅出擊

sshot015神鬼莫測

sshot017 大駕光臨sshot027 這個最可愛,有一架mig24雌鹿停在地上,被我轟掉,我幸運的把這個場景給抓拍了下來   (gif)轟炸地面的mig24過境之后,寸草不留,讓赤匪成建制去見馬克思sshot020 sshot091 這是SR71黑鳥過境的盛況,我將嘗試把黑鳥搞出來生產……請期待下篇吧

Lesen Alle

Heifenbrug 的分享項目

 

About Me

我的相片
阿提拉
在此通告兩點, 1.鄙人止與廣場同歲 2.鄙人的想法決定了鄙人的寫法,是故沒有所謂主客觀
檢視我的完整簡介

閩越國 © 2008 Business Ads Ready is Designed by Ipiet Supported by Tadpole's Notez