Jump to content


some help with .ini files


14 replies to this topic

#1 moetah

    Newbie

  • Member
  • 13 posts

Posted 19 September 2008 - 18:38

Hey. I'm trying to edit some units in Zero Hour(giving them other attacks and decrease the building time and things like that). So i downloaded XCC and opened some .ini files, and i changed some stuff, but I really dont know what do next. Could someone please explain me how to make the changes happen? Thanks in advance

#2 Zeke

    The X General

  • Project Team
  • 3504 posts
  • Projects: Deep Impact (formerly EC)

Posted 20 September 2008 - 05:56

save then exit?

Also you could just extract the INIs into your ZH directory in the Data/INI folder then use notepad to edit them. It's much easier.

Though doing this interferes with with online play and any mod you have installed.

#3 moetah

    Newbie

  • Member
  • 13 posts

Posted 23 September 2008 - 20:38

Thanks for the answere.

I copied all my zero hour files c:program files/ ea games so i won't fuck up my original game. And after that i extracted the .ini file for airforce general and changed the attack of a comanche. So when i start general from this directory i get a technical difficulties error now. What went wrong?

#4 Zeke

    The X General

  • Project Team
  • 3504 posts
  • Projects: Deep Impact (formerly EC)

Posted 24 September 2008 - 00:45

If you get a "technical difficulties" error it means you've fucked up somewhere, to find out where open worldbuilder it'll tell you where the error is then post the ini in question here, only then can we help you

#5 jend_maggot

    Newbie

  • Member
  • 17 posts

Posted 25 September 2008 - 02:35

sorry i post here...

i have some problem with .INI files too when i try to add a new item..

this is my .INI code:
CommandButton.INI
CommandButton Spec_Command_ConstructGLAInfantryJarmenKell
 
Command       = UNIT_BUILD
 
Object        = Spec_GLAInfantryJarmenKell
 
TextLabel     = CONTROLBAR:ConstructGLAInfantryJarmenKell
 
ButtonImage   = SUJarmenKell1    ;NOTE: Asset spelling mistake
 
ButtonBorderType        = BUILD ; Identifier for the User as to what kind of button this is
 
DescriptLabel           = CONTROLBAR:ToolTipGLABuildJarmenKell


CommandSet.INI
CommandSet Spec_ChinaBarracksCommandSet
 
1 = Spec_Command_ConstructChinaInfantryRedguard
 
2 = Spec_Command_ConstructChinaInfantryTankHunter
 
3 = Spec_Command_ConstructChinaInfantryFlameThrower
 
4 = Spec_Command_ConstructChinaInfantryHacker
 
5 = Spec_Command_ConstructChinaInfantryBlackLotus
 
6 = Spec_command_ConstructAmericaInfantryPathfinder
 
7 = Spec_command_constructGLAInfantryJarmenKell
 
11 = Command_GLAUpgradeKVSKRifle
 
12 = Command_UpgradeChinaRedguardCaptureBuilding
 
13 = Command_UpgradeChinaMines
 
14 = Command_Sell
End


SpecialWeaponGeneral.INI
;----------------------------------------------------------------------------
Object Spec_GLAInfantryJarmenKell

 
Behavior = AutoHealBehavior ModuleTag_workaroundbecausestupidautohealdoesntwork
   
HealingAmount = 4
   
HealingDelay = 600 ; msec
   
HealingDelay = 1000
   
TriggeredBy = Upgrade_Veterancy_ELITE
 
End

 
; *** ART Parameters ***
 
SelectPortrait         = SUDemoJarmenKell_L
 
ButtonImage            = SUDemoJarmenKell
 
 
UpgradeCameo1 = Upgrade_GLAAPBullets
 
UpgradeCameo2 = Upgrade_GLAKellBetterRifle
 
;UpgradeCameo3 = NONE
 
;UpgradeCameo4 = NONE
 
;UpgradeCameo5 = NONE
 
 
Draw = W3DModelDraw ModuleTag_01
   
OkToChangeModelColor = Yes

   
; --- idle
   
DefaultConditionState
     
Model             = UIHERO_SKN
     
IdleAnimation     = UIHERO_SKL.UIHERO_STA 0 21
     
IdleAnimation     = UIHERO_SKL.UIHERO_IDA
     
IdleAnimation     = UIHERO_SKL.UIHERO_IDB
     
AnimationMode     = ONCE
     
WeaponFireFXBone  = PRIMARY Muzzle
     
WeaponMuzzleFlash = PRIMARY MuzzleFX
     
WeaponFireFXBone  = SECONDARY Muzzle
     
WeaponMuzzleFlash = SECONDARY MuzzleFX
     
TransitionKey     = TRANS_Stand
   
End

   
ConditionState      = REALLYDAMAGED
     
IdleAnimation     = UIHERO_SKL.UIHERO_ISTA 0 30
     
IdleAnimation     = UIHERO_SKL.UIHERO_IIDA
     
IdleAnimation     = UIHERO_SKL.UIHERO_IIDB
     
AnimationMode     = ONCE
     
TransitionKey     = TRANS_StandInjured
   
End

   
TransitionState     = TRANS_Stand TRANS_StandInjured
     
Animation         = UIHERO_SKL.UIHERO_ISTAHIT
     
AnimationMode     = ONCE
   
End

   
; --- attack

   
ConditionState      = FIRING_A
     
Animation         = UIHERO_SKL.UIHERO_ATA
     
AnimationMode     = ONCE
     
TransitionKey     = TRANS_FiringA
     
AnimationSpeedFactorRange = 1.5 1.5
   
End

   
ConditionState      = BETWEEN_FIRING_SHOTS_A
     
Animation         = UIHERO_SKL.UIHERO_ATA
     
AnimationMode     = MANUAL
     
Flags             = START_FRAME_LAST
     
WaitForStateToFinishIfPossible = TRANS_FiringA
   
End
   
AliasConditionState = RELOADING_A
 
   
ConditionState      = FIRING_A REALLYDAMAGED
     
Animation         = UIHERO_SKL.UIHERO_IATA2
     
AnimationMode     = ONCE
     
TransitionKey     = TRANS_FiringAInjured
     
AnimationSpeedFactorRange = 1.5 1.5
   
End

   
ConditionState      = BETWEEN_FIRING_SHOTS_A REALLYDAMAGED
     
Animation         = UIHERO_SKL.UIHERO_IATA2
     
AnimationMode     = MANUAL
     
Flags             = START_FRAME_LAST
     
WaitForStateToFinishIfPossible = TRANS_FiringAInjured
   
End
   
AliasConditionState = RELOADING_A REALLYDAMAGED

   
TransitionState     = TRANS_FiringA TRANS_FiringAInjured
     
Animation         = UIHERO_SKL.UIHERO_IATAHIT
     
AnimationMode     = ONCE
   
End

   
; --- attack with sniper vehicle kill weapon

   
ConditionState      = FIRING_B
     
Animation         = UIHERO_SKL.UIHERO_ATA
     
AnimationMode     = ONCE
     
TransitionKey     = TRANS_FiringB
     
AnimationSpeedFactorRange = 1.5 1.5
   
End
   
AliasConditionState = FIRING_C

   
ConditionState      = BETWEEN_FIRING_SHOTS_B
     
Animation         = UIHERO_SKL.UIHERO_ATA
     
AnimationMode     = MANUAL
     
Flags             = START_FRAME_LAST
     
WaitForStateToFinishIfPossible = TRANS_FiringB
   
End
   
AliasConditionState = RELOADING_B
   
AliasConditionState = BETWEEN_FIRING_SHOTS_C
   
AliasConditionState = RELOADING_C
 
   
ConditionState      = FIRING_B REALLYDAMAGED
     
Animation         = UIHERO_SKL.UIHERO_IATA2
     
AnimationMode     = ONCE
     
TransitionKey     = TRANS_FiringAInjuredB
     
AnimationSpeedFactorRange = 1.5 1.5
   
End
   
AliasConditionState = FIRING_C REALLYDAMAGED

   
ConditionState      = BETWEEN_FIRING_SHOTS_B REALLYDAMAGED
     
Animation         = UIHERO_SKL.UIHERO_IATA2
     
AnimationMode     = MANUAL
     
Flags             = START_FRAME_LAST
     
WaitForStateToFinishIfPossible = TRANS_FiringAInjuredB
   
End
   
AliasConditionState = RELOADING_B REALLYDAMAGED
   
AliasConditionState = BETWEEN_FIRING_SHOTS_C REALLYDAMAGED
   
AliasConditionState = RELOADING_C REALLYDAMAGED

   
TransitionState     = TRANS_FiringB TRANS_FiringAInjuredB
     
Animation         = UIHERO_SKL.UIHERO_IATAHIT
     
AnimationMode     = ONCE
   
End


   
; --- moving
   
ConditionState      = MOVING
     
Animation         = UIHERO_SKL.UIHERO_RNA2 30
     
AnimationMode     = LOOP
     
Flags             = RANDOMSTART
     
TransitionKey     = None
     
ParticleSysBone   = None InfantryDustTrails
   
End
   
AliasConditionState = MOVING FIRING_A
   
AliasConditionState = MOVING BETWEEN_FIRING_SHOTS_A
   
AliasConditionState = MOVING RELOADING_A

   
ConditionState      = MOVING REALLYDAMAGED
     
Animation         = UIHERO_SKL.UIHERO_IRNA 30
     
AnimationMode     = LOOP
     
Flags             = RANDOMSTART
     
TransitionKey     = None
     
ParticleSysBone   = None InfantryDustTrails
   
End
   
AliasConditionState = MOVING FIRING_A REALLYDAMAGED
   
AliasConditionState = MOVING BETWEEN_FIRING_SHOTS_A REALLYDAMAGED
   
AliasConditionState = MOVING RELOADING_A REALLYDAMAGED
   
   
; --- cheering
   
ConditionState      = SPECIAL_CHEERING
     
Animation         = UIHERO_SKL.UIHERO_CHA
     
AnimationMode     = LOOP
   
End

   
ConditionState      = SPECIAL_CHEERING REALLYDAMAGED
     
Animation         = UIHERO_SKL.UIHERO_ICHA
     
AnimationMode     = LOOP
   
End
   
   
; --- dying
   
ConditionState      = DYING
     
Animation         = UIHERO_SKL.UIHERO_DTA
     
Animation         = UIHERO_SKL.UIHERO_DTB
     
Animation         = UIHERO_SKL.UIHERO_IDTA
     
Animation         = UIHERO_SKL.UIHERO_IDTB
     
AnimationMode     = ONCE
     
TransitionKey     = TRANS_Dying
   
End

   
TransitionState     = TRANS_Dying TRANS_Flailing
     
Animation         = UIHERO_SKL.UIHERO_ADTG21
     
AnimationMode     = ONCE
   
End

   
ConditionState      = DYING EXPLODED_FLAILING
     
Animation         = UIHERO_SKL.UIHERO_ADTG22
     
AnimationMode     = LOOP
     
TransitionKey     = TRANS_Flailing
   
End

   
ConditionState      = DYING EXPLODED_BOUNCING
     
Animation         = UIHERO_SKL.UIHERO_ADTG23
     
AnimationMode     = ONCE
     
TransitionKey     = None
   
End
   
   
; --- falling
   
ConditionState      = FREEFALL
     
Animation         = UIHERO_SKL.UIHERO_PFL
     
AnimationMode     = LOOP
     
TransitionKey     = TRANS_Falling
   
End
   
AliasConditionState = FREEFALL REALLYDAMAGED
   
AliasConditionState = FREEFALL DYING

   
ConditionState      = PARACHUTING
     
Animation         = UIHERO_SKL.UIHERO_PHG
     
AnimationMode     = LOOP
     
Flags             = PRISTINE_BONE_POS_IN_FINAL_FRAME  ; our bone positions should come from the last frame, rather than the first
     
TransitionKey     = TRANS_Chute
   
End
   
AliasConditionState = PARACHUTING REALLYDAMAGED
   
AliasConditionState = PARACHUTING DYING

   
TransitionState     = TRANS_Falling TRANS_Chute
     
Animation         = UIHERO_SKL.UIHERO_POP
     
AnimationMode     = ONCE
     
Flags             = PRISTINE_BONE_POS_IN_FINAL_FRAME  ; our bone positions should come from the last frame, rather than the first
   
End

   
TransitionState     = TRANS_Chute TRANS_Stand
     
Animation         = UIHERO_SKL.UIHERO_PTD
     
AnimationMode     = ONCE
   
End

   
TransitionState     = TRANS_Chute TRANS_StandInjured
     
Animation         = UIHERO_SKL.UIHERO_PTD
     
AnimationMode     = ONCE
   
End
   
 
End

 
; ***DESIGN parameters ***
 
DisplayName           = OBJECT:JarmenKell
 
Side                  = ChinaSpecialWeaponsGeneral
 
EditorSorting         = INFANTRY
 
TransportSlotCount    = 1                 ;how many "slots" we take in a transport (0 == not transportable)
 
 
MaxSimultaneousOfType = 1
 
MaxSimultaneousLinkKey = Jarmen
 
 
WeaponSet
   
Conditions = None
   
Weapon = PRIMARY GLAJarmenKellRifle
   
Weapon = SECONDARY GLAJarmenKellVehiclePilotSniperRifle
   
Weapon = TERTIARY GLAJarmenKellHelicopterPilotSniperRifle
   
AutoChooseSources = SECONDARY NONE
   
AutoChooseSources = TERTIARY NONE
 
End

 
WeaponSet
   
Conditions = PLAYER_UPGRADE
   
Weapon = PRIMARY GLAJarmenKellRifle
   
Weapon = SECONDARY GLAJarmenKellKVSKVehiclePilotSniperRifle
   
Weapon = TERTIARY GLAJarmenKellHelicopterPilotSniperRifle
   
AutoChooseSources = SECONDARY NONE
   
AutoChooseSources = TERTIARY NONE
 
End

 
ArmorSet
   
Conditions      = None
   
Armor           = HumanArmor
   
DamageFX        = InfantryDamageFX
 
End
 
VisionRange         = 400
 
ShroudClearingRange = 400
 
Prerequisites
   
Object = Spec_ChinaBarracks
 
End
 
BuildCost = 1500
 
BuildTime = 10.0          ;in seconds  

 
ExperienceValue     = 50 50 100 150    ;Experience point value at each level
 
ExperienceRequired  = 0 100 200 400  ;Experience points needed to gain each level
 
IsTrainable         = Yes             ;Can gain experience
 
CrushableLevel      = 2  ;What am I?:        0 = for infantry, 1 = for trees, 2 = general vehicles
 
CommandSet          = Spec_GLAInfantryJarmenKellCommandSet

 
; *** AUDIO Parameters ***
 
VoiceSelect = DemoKellVoiceSelect
 
VoiceMove = JarmenKellVoiceMove
 
VoiceGuard = JarmenKellVoiceMove
 
VoiceAttack = JarmenKellVoiceAttack
 
VoiceFear = JarmenKellVoiceFear
 
SoundStealthOn = StealthOn
 
SoundStealthOff = StealthOff
 
 
UnitSpecificSounds
   
VoiceCreate          = DemoKellVoiceCreate
   
VoiceSnipePilot      = JarmenKellVoiceSnipe
   
VoiceGarrison = JarmenKellVoiceGarrison
   
VoiceEnter = JarmenKellVoiceMove
   
VoiceEnterHostile = JarmenKellVoiceMove
   
VoiceGetHealed      = JarmenKellVoiceMove
 
End


 
; *** ENGINEERING Parameters ***
 
RadarPriority = UNIT
 
KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS INFANTRY SALVAGER STEALTH_GARRISON SCORE HERO CANNOT_RETALIATE

 
Body = ActiveBody ModuleTag_02
   
MaxHealth       = 200.0
   
InitialHealth   = 200.0
 
End

 
Behavior = AIUpdateInterface ModuleTag_03
   
AutoAcquireEnemiesWhenIdle = Yes
 
End
 
Locomotor = SET_NORMAL JarmenKellLocomotor

 
Behavior = PhysicsBehavior ModuleTag_04
   
Mass = 5.0
 
End
 
   
Behavior = SpecialAbility ModuleTag_Power01
   
SpecialPowerTemplate = SpecialAbilityKellDisableBuilding
   
UpdateModuleStartsAttack = Yes
   
StartsPaused             = Yes
 
End

 
Behavior = SpecialAbilityUpdate ModuleTag_Power02
   
SpecialPowerTemplate = SpecialAbilityKellDisableBuilding
   
StartAbilityRange = 225.0
   
UnpackTime      = 1000
   
PackTime        = 0
   
PreparationTime = 1
   
PersistentPrepTime = 1
   
EffectDuration = 20000
   
UnpackSound     = JarmenKellVoiceSnipe
   
PrepSoundLoop   = JarmenKellKVSKWeaponSnipe
 
End

 
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_Power03
   
SpecialPowerTemplate = SpecialAbilityKellDisableBuilding
   
TriggeredBy = Upgrade_GLAKellBetterRifle
 
End
 
 
Behavior = StealthUpdate ModuleTag_06
   
StealthDelay                = 2000 ; msec
   
StealthForbiddenConditions  = ATTACKING
   
InnateStealth               = Yes
   
OrderIdleEnemiesToAttackMeUponReveal  = Yes
   
EnemyDetectionEvaEvent      = EnemyJarmenKellDetected
   
OwnDetectionEvaEvent        = OwnJarmenKellDetected
 
End

 
Behavior = CommandButtonHuntUpdate  ModuleTag_07 ; allows use of command button hunt script with this unit.
 
End

 
Behavior = WeaponBonusUpgrade ModuleTag_08
   
TriggeredBy = Upgrade_GLAAPBullets
 
End
 
 
;Hero units can't be squished!
 
;Behavior = SquishCollide ModuleTag_09
 
;  ;nothing
 
;End


; --- begin Death modules ---
 
Behavior = SlowDeathBehavior ModuleTag_Death01
   
DeathTypes          = ALL -CRUSHED -SPLATTED -EXPLODED -BURNED -POISONED -POISONED_BETA -POISONED_GAMMA
   
SinkDelay           = 3000
   
SinkRate            = 0.5     ; in Dist/Sec
   
DestructionDelay    = 8000
    FX                  
= INITIAL FX_JarmenKellDie
 
End
 
Behavior = SlowDeathBehavior ModuleTag_Death02
   
DeathTypes          = NONE +CRUSHED +SPLATTED
   
SinkDelay           = 3000
   
SinkRate            = 0.5     ; in Dist/Sec
   
DestructionDelay    = 8000
    FX                  
= INITIAL FX_GIDieCrushed
 
End
 
Behavior = SlowDeathBehavior ModuleTag_Death03
   
DeathTypes          = NONE +EXPLODED
   
SinkDelay           = 3000
   
SinkRate            = 0.5     ; in Dist/Sec
   
DestructionDelay    = 8000
    FX                  
= INITIAL FX_JarmenKellDie
   
FlingForce          = 8
   
FlingForceVariance  = 3
   
FlingPitch          = 60
   
FlingPitchVariance  = 10
 
End
 
Behavior = SlowDeathBehavior ModuleTag_Death04
   
DeathTypes          = NONE +BURNED
   
DestructionDelay    = 0
    FX                  
= INITIAL FX_DieByFireGLA
    OCL                
= INITIAL OCL_FlamingInfantry
 
End
 
Behavior = SlowDeathBehavior ModuleTag_Death05
   
DeathTypes          = NONE +POISONED
   
DestructionDelay    = 0
    FX                  
= INITIAL FX_DieByToxinGLA
    OCL                
= INITIAL OCL_ToxicInfantry
 
End
 
Behavior = SlowDeathBehavior ModuleTag_Death06 ; don't forget to give it a new, unique module tag
   
DeathTypes          = NONE +POISONED_BETA
   
DestructionDelay    = 0
    FX                  
= INITIAL FX_DieByToxinGLA
    OCL                
= INITIAL OCL_ToxicInfantryBeta ;you'll have to create this OCL and make it use the blue guys instead of green ones
 
End
 
Behavior = SlowDeathBehavior ModuleTag_Death07
   
DeathTypes          = NONE +POISONED_GAMMA
   
DestructionDelay    = 0
    FX                  
= INITIAL FX_DieByToxinGLA
    OCL                
= INITIAL OCL_ToxicInfantryGamma
 
End
; --- end Death modules ---

 
Behavior = PoisonedBehavior ModuleTag_14
   
PoisonDamageInterval = 100  ; Every this many msec I will retake the poison damage dealt me...
   
PoisonDuration = 3000       ; ... for this long after last hit by poison damage
 
End

 
Behavior = SpecialAbility ModuleTag_18
   
SpecialPowerTemplate = Demo_SpecialAbilityKellRemoteCharges
   
UpdateModuleStartsAttack = Yes
   
InitiateSound             = DemoKellVoiceAttackDemo
 
End

 
Behavior = SpecialAbilityUpdate ModuleTag_19
   
SpecialPowerTemplate = Demo_SpecialAbilityKellRemoteCharges
   
StartAbilityRange = 0.0
   
PreparationTime = 0
   
SpecialObject = RemoteC4Charge
   
MaxSpecialObjects = 8
   
SpecialObjectsPersistWhenOwnerDies = No ;Charges are removed instantly when owner dies (nobody can detonate).
   
AlwaysValidateSpecialObjects = Yes      ;Coupled with the above setting, this one is necessary for code optimization.
   
SpecialObjectsPersistent = Yes          ;Charges are persistent till lifetime expires or owner detonates them.
   
UniqueSpecialObjectTargets = Yes        ;This prevents multiple charges placed on the same object.
   
UnpackTime              = 5500          ;NOTE: Modifying this value will require modifying the delay for ColonelBurtonPlantCharge
   
PackTime                = 0
   
SkipPackingWithNoTarget = Yes           ;When yes, the packing/unpacking will be ignored when detonating charges.
   
FlipOwnerAfterUnpacking = Yes
   
FleeRangeAfterCompletion = 100.0         ;Runs away after finishing ability
   
UnpackSound               = ColonelBurtonPlantCharge
   
LoseStealthOnTrigger      = Yes
   
PreTriggerUnstealthTime   = 5000 ; in milliseconds
 
End

 
Behavior = SpecialAbility ModuleTag_20
   
SpecialPowerTemplate = Demo_SpecialAbilityDemoKellTimedCharges
   
UpdateModuleStartsAttack = Yes
   
InitiateSound             = DemoKellVoiceAttackDemo
 
End

 
Behavior = SpecialAbilityUpdate ModuleTag_11
   
SpecialPowerTemplate = Demo_SpecialAbilityDemoKellTimedCharges
   
StartAbilityRange = 0.0
   
PreparationTime = 0
   
SpecialObject = TimedC4Charge
   
MaxSpecialObjects = 10
   
SpecialObjectsPersistWhenOwnerDies = Yes
   
SpecialObjectsPersistent = Yes          ;Charges are persistent till lifetime expires or owner detonates them.
   
UniqueSpecialObjectTargets = Yes        ;This prevents multiple charges placed on the same object.
   
UnpackTime              = 5500          ;NOTE: Modifying this value will require modifying the delay for ColonelBurtonPlantCharge
   
FlipOwnerAfterUnpacking = Yes
   
FleeRangeAfterCompletion = 100.0         ;Runs away after finishing ability
   
UnpackSound               = DemoKellVoiceAttackDemo
   
LoseStealthOnTrigger      = Yes
   
PreTriggerUnstealthTime   = 5000 ; in milliseconds
 
End

 
Behavior = WeaponSetUpgrade ModuleTag_agaffel
   
TriggeredBy = Upgrade_GLAKellBetterRifle
 
End

 
Geometry = CYLINDER
 
GeometryMajorRadius = 10.0
 
GeometryMinorRadius = 10.0
 
GeometryHeight = 12.0
 
GeometryIsSmall = Yes
 
Shadow = SHADOW_DECAL
 
ShadowSizeX = 14;
 
ShadowSizeY = 14;
 
ShadowTexture = ShadowI;
 
BuildCompletion = APPEARS_AT_RALLY_POINT

End


and this error report:
Release Crash at Thu Sep 25 09:13:50 2008
; Reason Error parsing INI file 'Data\INI\CommandButton.ini' (Line: 'CommandButton Spec_Command_ConstructGLAInfantryJarmenKell')


Last error:


Current stack:

is somebody can help me pliz..

Edited by jend_maggot, 25 September 2008 - 02:36.


#6 Ion Cannon!

    Mountain Maniac

  • Gold Member
  • 5812 posts
  • Projects: European Conflict - Particle FX & Coder

Posted 25 September 2008 - 02:45

I've not modded ZH for ages, but does the commandbutton not need an end tag? I may be wrong, but you can try it anyway.
Posted Image

Posted Image

#7 jend_maggot

    Newbie

  • Member
  • 17 posts

Posted 25 September 2008 - 02:54

arrgghh i don't see it.. :stikattack2:

btw thank's for your help :crazydance:

but my barrack error now...

Release Crash at Thu Sep 25 09:51:48 2008
; Reason Error parsing INI file 'Data\INI\CommandSet.ini' (Line: 'CommandSet Spec_ChinaBarracksCommandSet ')


Last error:


Current stack:

Edited by jend_maggot, 25 September 2008 - 03:01.


#8 Ion Cannon!

    Mountain Maniac

  • Gold Member
  • 5812 posts
  • Projects: European Conflict - Particle FX & Coder

Posted 25 September 2008 - 11:43

On your commandset for the barracks, you haven't capitalised some parts. So it treats it as an invalid command button. To avoid it in future, copy your commandbutton name, then paste it.

IE this - 7 = Spec_command_constructGLAInfantryJarmenKell
Should be - 7 = Spec_Command_ConstructGLAInfantryJarmenKell

:Command buttons MUST be identical to the entry in the commandset.

Edited by Insomniac!, 25 September 2008 - 11:45.

Posted Image

Posted Image

#9 moetah

    Newbie

  • Member
  • 13 posts

Posted 26 September 2008 - 08:52

Ok I think i don't understand it very well. Can you explain me how to change an attack type by using .ini? The thing I do is opening the files to edit something for the entire game and not for any map. And then save it in the INI map of Zero Hour. But this is obviously wrong.

#10 Zeke

    The X General

  • Project Team
  • 3504 posts
  • Projects: Deep Impact (formerly EC)

Posted 26 September 2008 - 09:06

all weapons are defined in weapons.ini

the map .ini is only for editing the map and map conditions, not the whole game

Edited by Zeke, 26 September 2008 - 09:07.


#11 moetah

    Newbie

  • Member
  • 13 posts

Posted 02 October 2008 - 17:34

Ok i've tried a lot but i still dont get it:(. Could anyone explain me exactly how i can make a gattling tank fire comanche rockets? Sorry if i'm annoying.

#12 Zeke

    The X General

  • Project Team
  • 3504 posts
  • Projects: Deep Impact (formerly EC)

Posted 02 October 2008 - 17:48

;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
Weapon GattlingTankGun
PrimaryDamage = 50.0 ; damage, duh
PrimaryDamageRadius = 5.0 ; 0 primary radius means "hits only intended victim"
AttackRange = 150.0 ; range
DamageType = JET_MISSILE; damage type
DeathType = EXPLODED ; death type, how they die
WeaponSpeed = 300 ; speed of projectile, missiles don't really need this because they have locomoters
ProjectileObject = ComancheAntiTankMissile ; the missile used
FireFX = WeaponFX_GattlingTankMachineGunFire ; fire FX
VeterancyFireFX = HEROIC WeaponFX_GattlingTankMachineGunFireWithRedTracers ; HEROIC Fire FX
FireSound = ComancheMissileWeapon ; fire sound
RadiusDamageAffects = ALLIES ENEMIES NEUTRALS ; what the weapon can hit
DelayBetweenShots = 400 ; time between shots in a clip, msec
ClipSize = 0 ; how many shots in a Clip (0 = infinite)
ClipReloadTime = 0 ; how long to reload a Clip, msec
ContinuousFireOne = 2; How many shots before getting "CONTINUOUS_FIRE_MEAN RATE_OF_FIRE" bonus
ContinuousFireTwo = 6; How many shots before getting "CONTINUOUS_FIRE_FAST RATE_OF_FIRE" bonus
ContinuousFireCoast = 1000; msec we can coast without firing before we lose Continuous Fire
WeaponBonus = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200%; rate of fire increased by what "%"
WeaponBonus = CONTINUOUS_FIRE_FAST RATE_OF_FIRE 300%; ditto
WeaponBonus = PLAYER_UPGRADE DAMAGE 125%; ChainGun upgrade
AntiAirborneVehicle = No; ground weapon can't hit air
AntiAirborneInfantry = No; nor flying infantry
AntiGround = Yes; self explanatory
End

codes plus some explanation

Edited by Zeke, 02 October 2008 - 17:50.


#13 moetah

    Newbie

  • Member
  • 13 posts

Posted 05 October 2008 - 11:06

Ok thanks for the help but could you also explain me how and what i should open and how and where i got to save it? It seems that i'm doing that wrong. Thanks for all your help btw, i know i'm annoying:P

#14 Zeke

    The X General

  • Project Team
  • 3504 posts
  • Projects: Deep Impact (formerly EC)

Posted 05 October 2008 - 14:12

1. Get finalbig

2. Open INIZH.big and extract the contents into your main ZH directory.

3. In your main ZH directory there now should be a data/INI folder where all the INIs are located

4. Open weapon.INI with a text editor like notepad (but I recommend notepad++)

5. Replace the original gattling tank weapon with the one I posted (they should have the same name).

6. save your work then exit

7. open ZH and play

#15 moetah

    Newbie

  • Member
  • 13 posts

Posted 07 October 2008 - 15:34

Ok thank you a lot.



1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users