Jump to content

Recommended Posts

Nyerguds    73

All C&C stuff is stored inside the exe file itself. TibEd's "settings.ini" doesn't actually exist, it's a workaround to use the ini-editing-based TibEd to edit an exe file.

 

I might be implementing a real rules.ini system into C&C soon.

Share this post


Link to post
Share on other sites
Nyerguds    73

Ah, yeah... and you can even edit them. You need my UGE editor for that.

http://nyerguds.arsaneus-design.com/tools/cnc95uge_beta.zip

The weapons aren't fully identified in this , and a lot of other stuff, and the documentation, need some work too.

 

There's some errors in the weapons section too.. the second Unknown value is actually the FIRST value of the next weapon, namely the ID of the projectile ("Bullet") it uses. The first unknown is the muzzle flash animation ID.

(This error means that there's one value too much at the end which is actually unrelated to the weapons, and that there is one value missing at the start)

 

 

 

Here's the full weapons info as I got it now, converted to ini format. Note that the weapons in C&C have no real text names associated with them, so I made those up or copied them from RA1.

 

The Bullet, Sound and MuzzleFlash are internal ID numbers referring to respectively the Bullets (projectiles) list, the sounds list and the animations list. I could look up which is which, but the sound and animation lists are huge, and the bullets and animations lists, again, have no real names except for a graphic they use, but a lot of them use the same graphics, so they're not really a name indication.

 

; Commando's Sniper Rifle

[sniper]

Bullet=0

Damage=125

ROF=40

Range=5.50

Sound=57

MuzzleFlash=-1 ; None

 

; Guard Tower/Apache machinegun

[Chaingun]

Bullet=16

Damage=25

ROF=50

Range=4.00

Sound=45

MuzzleFlash=50

 

; Civilian pistol

[Pistol]

Bullet=1

Damage=1

ROF=7

Range=1.75

Sound=41

MuzzleFlash=-1 ; None

 

; M-16 rifle

[Rifle]

Bullet=1

Damage=15

ROF=20

Range=2.00

Sound=51

MuzzleFlash=-1 ; None

 

; Bazooka/bike/orca rocket

[Rocket]

Bullet=7

Damage=30

ROF=60

Range=4.00

Sound=33

MuzzleFlash=-1 ; None

 

; Infantry flamethrower

[infantryFlamer]

Bullet=8

Damage=35

ROF=50

Range=2.00

Sound=40

MuzzleFlash=14

 

; Tank flamethrower

[TankFlamer]

Bullet=8

Damage=50

ROF=50

Range=2.00

Sound=40

MuzzleFlash=14

 

; chemwarrior/visceroid chemical spray

[ChemSpray]

Bullet=9

Damage=80

ROF=70

Range=2.00

Sound=40

MuzzleFlash=22

 

; Grenade

[Grenade]

Bullet=11

Damage=50

ROF=60

Range=3.25

Sound=73

MuzzleFlash=-1 ; None

 

; Light Tank gun

[LightCannon]

Bullet=2

Damage=25

ROF=60

Range=4.00

Sound=66

MuzzleFlash=34

 

; Medium Tank gun

[MediumCannon]

Bullet=2

Damage=30

ROF=50

Range=4.75

Sound=67

MuzzleFlash=34

 

; Mammoth tank gun

[HeavyCannon]

Bullet=2

Damage=40

ROF=80

Range=4.75

Sound=68

MuzzleFlash=34

 

; Turret gun

[TurretCannon]

Bullet=2

Damage=40

ROF=60

Range=6.00

Sound=68

MuzzleFlash=34

 

; Mammoth tank missiles

[MammothTusk]

Bullet=4

Damage=75

ROF=80

Range=5.00

Sound=58

MuzzleFlash=-1 ; None

 

; MLRS Missile

[MLRSMissile]

Bullet=5

Damage=75

ROF=80

Range=6.00

Sound=58

MuzzleFlash=-1 ; None

 

; Artillery weapon

[ballistic]

Bullet=3

Damage=150

ROF=65

Range=6.00

Sound=65

MuzzleFlash=34

 

; Humvee/buggy/APC gun

[Machinegun]

Bullet=1

Damage=15

ROF=30

Range=4.00

Sound=50

MuzzleFlash=50

 

; Gunboat missile

[boatMissile]

Bullet=4

Damage=60

ROF=35

Range=7.50

Sound=59

MuzzleFlash=-1 ; None

 

; Advanced Guard Tower missile

[AGTMissile]

Bullet=4

Damage=60

ROF=40

Range=6.50

Sound=59

MuzzleFlash=-1 ; None

 

; A-10's Napalm drop

[Napalm]

Bullet=10

Damage=100

ROF=20

Range=4.50

Sound=-1

MuzzleFlash=-1 ; None

 

; Obelisk LASER

[LASER]

Bullet=12

Damage=200

ROF=90

Range=7.50

Sound=54

MuzzleFlash=-1 ; None

 

; SAM Missile

[sAMMissile]

Bullet=6

Damage=50

ROF=50

Range=7.50

Sound=59

MuzzleFlash=-1 ; None

 

; SSM Launcher's napalm missile

[HonestJohn]

Bullet=15

Damage=100

ROF=200

Range=10.00

Sound=58

MuzzleFlash=-1 ; None

 

; Herbivorous dinosaur weapon

[DinoChew]

Bullet=17

Damage=100

ROF=30

Range=1.50

Sound=106

MuzzleFlash=-1 ; None

 

; Carnivorous dinosaur weapon

[DinoGore]

Bullet=18

Damage=155

ROF=30

Range=1.50

Sound=106

MuzzleFlash=-1 ; None

Edited by Nyerguds

Share this post


Link to post
Share on other sites
Nyerguds    73

The BulletTypes, converted form my disassembler. The identification so far was done by Reaperrr, the creator of the Return of the Dawn mod for TS.

 

These names are just the internal hexadecimal ID number + the name of the graphics they use. To actually see which is which, you'd have to connect the ID numbers to those in the weapons data.

 

; sniper bullet

[bULLET00_50CAL]

Explosion=12

Warhead=8 ; HollowPoint

RotationSpeed=0

BulletSpeed=-1

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=0

Graphic=50cal

BulletID=1

Unknown20=0

 

; normal bullet

[bULLET01_50CAL]

Explosion=12

Warhead=0 ; SmallArms

RotationSpeed=0

BulletSpeed=-1

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=0

Graphic=50cal

BulletID=1

Unknown20=0

 

; tank shot

[bULLET02_120MM]

Explosion=6

Warhead=2 ; ArmorPiercing

RotationSpeed=0

BulletSpeed=100

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=0

Graphic=120mm

BulletID=2

Unknown20=0

 

; hi-explosive shell

[bULLET03_120MM]

Explosion=7

Warhead=1 ; HiExplosive

RotationSpeed=0

BulletSpeed=30

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=1

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=0

Unknown15=0

BallisticCurve=1

FlyOverWalls=1

Graphic=120mm

BulletID=3

Unknown20=0

 

; Rocket Launcher type #1

[bULLET04_DRAGON]

Explosion=2

Warhead=1 ; HiExplosive

RotationSpeed=5

BulletSpeed=60

Unknown5=0

Unknown6=7

Unknown7=1

Unknown8=1

Inaccurate=1

NoRotation=0

Unknown11=1

SmokeTrail=1

Unknown13=1

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=DRAGON

BulletID=4

Unknown20=1

 

; Rocket Launcher type #2

[bULLET05_DRAGON]

Explosion=2

Warhead=1 ; HiExplosive

RotationSpeed=7

BulletSpeed=60

Unknown5=0

Unknown6=9

Unknown7=1

Unknown8=1

Inaccurate=1

NoRotation=0

Unknown11=1

SmokeTrail=1

Unknown13=1

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=DRAGON

BulletID=5

Unknown20=1

 

; SAM Missile

[bULLET06_MISSILE]

Explosion=4

Warhead=2 ; ArmorPiercing

RotationSpeed=10

BulletSpeed=100

Unknown5=0

Unknown6=0

Unknown7=1

Unknown8=0

Inaccurate=0

NoRotation=0

Unknown11=1

SmokeTrail=1

Unknown13=1

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=MISSILE

BulletID=6

Unknown20=1

 

; Bazooka

[bULLET07_DRAGON]

Explosion=5

Warhead=2 ; ArmorPiercing

RotationSpeed=5

BulletSpeed=60

Unknown5=0

Unknown6=3

Unknown7=1

Unknown8=1

Inaccurate=0

NoRotation=0

Unknown11=1

SmokeTrail=1

Unknown13=1

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=DRAGON

BulletID=7

Unknown20=1

 

; Flame spit

[bULLET08_FLAME]

Explosion=-1

Warhead=3 ; Fire

RotationSpeed=0

BulletSpeed=40

Unknown5=12

Unknown6=12

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=0

Unknown11=1

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=0

Graphic=FLAME

BulletID=8

Unknown20=0

 

; Chem spit (not a clue why it's also called "Flame", or how it actually links to the real 8 graphics files)

[bULLET09_FLAME]

Explosion=-1

Warhead=1 ; HiExplosive

RotationSpeed=0

BulletSpeed=40

Unknown5=12

Unknown6=12

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=0

Unknown11=1

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=0

Graphic=FLAME

BulletID=9

Unknown20=0

 

; Napalm bomb

[bULLET0A_BOMBLET]

Explosion=9

Warhead=3 ; Fire

RotationSpeed=0

BulletSpeed=12

Unknown5=24

Unknown6=24

Unknown7=0

Unknown8=1

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=0

Unknown15=1

BallisticCurve=0

FlyOverWalls=1

Graphic=BOMBLET

BulletID=10

Unknown20=0

 

; Throwable grenade

[bULLET0B_BOMB]

Explosion=5

Warhead=1 ; HiExplosive

RotationSpeed=0

BulletSpeed=12

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=1

Inaccurate=1

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=0

Unknown15=0

BallisticCurve=1

FlyOverWalls=1

Graphic=BOMB

BulletID=11

Unknown20=0

 

; Obelisk LASER

[bULLET0C_LASER]

Explosion=-1

Warhead=4 ; SUPER

RotationSpeed=0

BulletSpeed=-1

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=Laser

BulletID=12

Unknown20=0

 

; A-bomb going up (No idea why this is a real projectile type rather than an animation)

[bULLET0D_ATOMICUP]

Explosion=2

Warhead=1 ; HiExplosive

RotationSpeed=0

BulletSpeed=100

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=1

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=ATOMICUP

BulletID=13

Unknown20=0

 

; A-bomb coming down (No idea why this is a real projectile type rather than an animation)

[bULLET0E_ATOMICDN]

Explosion=60

Warhead=1 ; HiExplosive

RotationSpeed=0

BulletSpeed=100

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=1

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=ATOMICDN

BulletID=14

Unknown20=0

 

; SSM Missile

[bULLET0F_MISSILE]

Explosion=10

Warhead=3 ; Fire

RotationSpeed=10

BulletSpeed=40

Unknown5=0

Unknown6=10

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=0

Unknown11=1

SmokeTrail=1

Unknown13=1

Unknown14=0

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=MISSILE

BulletID=15

Unknown20=0

 

; Heavy machinegun

[bULLET10_50CAL]

Explosion=13h

Warhead=1 ; HiExplosive

RotationSpeed=0

BulletSpeed=-1

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=1

Graphic=50cal

BulletID=16

Unknown20=0

 

; Herbivorous dino bite (Yes, WW messed up the names of 2 invisible projectiles -_-)

[bULLET11_GORE]

Explosion=-1

Warhead=10 ; DinoChew

RotationSpeed=0

BulletSpeed=-1

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=0

Graphic=GORE

BulletID=17

Unknown20=0

 

; Carnivorous dino bite (Yes, WW messed up the names of 2 invisible projectiles -_-)

[bULLET12_CHEW]

Explosion=-1

Warhead=11 ; DinoGore

RotationSpeed=0

BulletSpeed=-1

Unknown5=0

Unknown6=0

Unknown7=0

Unknown8=0

Inaccurate=0

NoRotation=1

Unknown11=0

SmokeTrail=0

Unknown13=0

Unknown14=1

Unknown15=0

BallisticCurve=0

FlyOverWalls=0

Graphic=CHEW

BulletID=18

Unknown20=0

Edited by Nyerguds

Share this post


Link to post
Share on other sites
Nyerguds    73

Moving on to sounds... each of these entries in the exe has 2 options too, neither of them identified, but they don't seem too important. They mainly seem to divide the sounds list in classes like unit responses and such.

 

Anyway, here's the list. All of them have unique names:

 

[bombit1] ; 0

[Cmon1] ; 1

[Gotit1] ; 2

[Keepem1] ; 3

[Laugh1] ; 4

[Lefty1] ; 5

[Noprblm1] ; 6

[Onit1] ; 7

[Ramyell1] ; 8

[Rokroll1] ; 9

[Tuffguy1] ; 10

[Yeah1] ; 11

[Yes1] ; 12

[Yo1] ; 13

[Girlokay] ; 14

[Girlyeah] ; 15

[Guyokay1] ; 16

[Guyyeah1] ; 17

[2dangr1] ; 18

[Ackno] ; 19

[Affirm1] ; 20

[Await1] ; 21

[Movout1] ; 22

[Negatv1] ; 23

[Noprob] ; 24

[Ready] ; 25

[Report1] ; 26

[Ritaway] ; 27

[Roger] ; 28

[ugotit] ; 29

[unit1] ; 30

[Vehic1] ; 31

[Yessir1] ; 32

[bazook1] ; 33

[bleep2] ; 34

[bomb1] ; 35

[button] ; 36

[Comcntr1] ; 37

[Constru2] ; 38

[Crumble] ; 39

[Flamer2] ; 40

[Gun18] ; 41

[Gun19] ; 42

[Gun20] ; 43

[Gun5] ; 44

[Gun8] ; 45

[Gunclip1] ; 46

[Hvydoor1] ; 47

[Hvygun10] ; 48

[ion1] ; 49

[Mgun11] ; 50

[Mgun2] ; 51

[Nukemisl] ; 52

[Nukexplo] ; 53

[Obelray1] ; 54

[Obelpowr] ; 55

[Powrdn1] ; 56

[Ramgun2] ; 57

[Rocket1] ; 58

[Rocket2] ; 59

[sammotr2] ; 60

[scold2] ; 61

[sidbar1c] ; 62

[sidbar2c] ; 63

[squish2] ; 64

[Tnkfire2] ; 65

[Tnkfire3] ; 66

[Tnkfire4] ; 67

[Tnkfire6] ; 68

[Tone15] ; 69

[Tone16] ; 70

[Tone2] ; 71

[Tone5] ; 72

[Toss] ; 73

[Trans1] ; 74

[Treebrn1] ; 75

[Turrfir5] ; 76

[Xplobig4] ; 77

[Xplobig6] ; 78

[Xplobig7] ; 79

[Xplode] ; 80

[Xplos] ; 81

[Xplosml2] ; 82

[Nuyell1] ; 83

[Nuyell3] ; 84

[Nuyell4] ; 85

[Nuyell5] ; 86

[Nuyell6] ; 87

[Nuyell7] ; 88

[Nuyell10] ; 89

[Nuyell11] ; 90

[Nuyell12] ; 91

[Yell1] ; 92

[Myes1] ; 93

[Mcomnd1] ; 94

[Mhello1] ; 95

[Mhmmm1] ; 96

[Mplan3] ; 97

[Mcourse1] ; 98

[Myesyes1] ; 99

[Mtiber1] ; 100

[Mthanks1] ; 101

[Cashturn] ; 102

[bleep2_0] ; 103

[Dinomout] ; 104

[Dinoyes] ; 105

[Dinoatk1] ; 106

[Dinodie1] ; 107

Edited by Nyerguds

Share this post


Link to post
Share on other sites
Nyerguds    73

The animations...

 

This is how far the animations have been identified (again, by Reaperrr). I'm just posting this here to give you an idea of what kind of data it contains:

 

[ANIM49_TRIC]

unknown00=-1

SoundID=107

Unknown02=0

NumberOfFrames=20

Unknown04=0

Unknown05=0

FirstFrame=176

Unknown07=2

Unknown08=0

Unknown09=0

DrawBelowTarget=1

Unknown11=1

Unknown12=0

Unknown13=0

Unknown14=0

Unknown15=0

Unknown16=1

Unknown17=32

Graphic=TRIC

Unknown19=4

AnimationID=73 ; 49h

 

And now, the list. Again, this has duplicates, because an animation also sets a range of frames to play from a loaded SHP file. So one SHP can contain many animations. Note that the names between [ ] have the hexadecimal ID; the decimal number is under that, on the Graphic line.

[ANIM00_FBALL1]

Graphic=FBALL1; 0

 

[ANIM01_VEH_HIT2]

Graphic=VEH_HIT2; 1

 

[ANIM02_FRAG1]

Graphic=FRAG1; 2

 

[ANIM03_FRAG3]

Graphic=FRAG3; 3

 

[ANIM04_VEH_HIT1]

Graphic=VEH_HIT1; 4

 

[ANIM05_VEH_HIT2]

Graphic=VEH_HIT2; 5

 

[ANIM06_VEH_HIT3]

Graphic=VEH_HIT3; 6

 

[ANIM07_ART_EXP1]

Graphic=ART_EXP1; 7

 

[ANIM08_NAPALM1]

Graphic=NAPALM1; 8

 

[ANIM09_NAPALM2]

Graphic=NAPALM2; 9

 

[ANIM0A_NAPALM3]

Graphic=NAPALM3; 10

 

[ANIM0B_SMOKEY]

Graphic=SMOKEY; 11

 

[ANIM0C_PIFF]

Graphic=PIFF; 12

 

[ANIM0D_PIFFPIFF]

Graphic=PIFFPIFF; 13

 

[ANIM0E_FLAME_N]

Graphic=FLAME_N; 14

 

[ANIM0F_FLAME_NE]

Graphic=FLAME_NE; 15

 

[ANIM10_FLAME_E]

Graphic=FLAME_E; 16

 

[ANIM11_FLAME_SE]

Graphic=FLAME_SE; 17

 

[ANIM12_FLAME_S]

Graphic=FLAME_S; 18

 

[ANIM13_FLAME_SW]

Graphic=FLAME_SW; 19

 

[ANIM14_FLAME_W]

Graphic=FLAME_W; 20

 

[ANIM15_FLAME_NW]

Graphic=FLAME_NW; 21

 

[ANIM16_CHEM_N]

Graphic=CHEM_N; 22

 

[ANIM17_CHEM_NE]

Graphic=CHEM_NE; 23

 

[ANIM18_CHEM_E]

Graphic=CHEM_E; 24

 

[ANIM19_CHEM_SE]

Graphic=CHEM_SE; 25

 

[ANIM1A_CHEM_S]

Graphic=CHEM_S; 26

 

[ANIM1B_CHEM_SW]

Graphic=CHEM_SW; 27

 

[ANIM1C_CHEM_W]

Graphic=CHEM_W; 28

 

[ANIM1D_CHEM_NW]

Graphic=CHEM_NW; 29

 

[ANIM1E_FIRE3]

Graphic=FIRE3; 30

 

[ANIM1F_FIRE2]

Graphic=FIRE2; 31

 

[ANIM20_FIRE1]

Graphic=FIRE1; 32

 

[ANIM21_FIRE4]

Graphic=FIRE4; 33

 

[ANIM22_GUNFIRE]

Graphic=GUNFIRE; 34

 

[ANIM23_SMOKE_M]

Graphic=SMOKE_M; 35

 

[ANIM24_BURN_S]

Graphic=BURN_S; 36

 

[ANIM25_BURM_M]

Graphic=BURN_M; 37

 

[ANIM26_BURN_L]

Graphic=BURN_L; 38

 

[ANIM27_BURN_S]

Graphic=BURN_S; 39

 

[ANIM28_BURN_M]

Graphic=BURN_M; 40

 

[ANIM29_BURN_L]

Graphic=BURN_L; 41

 

[ANIM2A_SAMFIRE]

Graphic=SAMFIRE; 42

 

[ANIM2B_SAMFIRE]

Graphic=SAMFIRE; 43

 

[ANIM2C_SAMFIRE]

Graphic=SAMFIRE; 44

 

[ANIM2D_SAMFIRE]

Graphic=SAMFIRE; 45

 

[ANIM2E_SAMFIRE]

Graphic=SAMFIRE; 46

 

[ANIM2F_SAMFIRE]

Graphic=SAMFIRE; 47

 

[ANIM30_SAMFIRE]

Graphic=SAMFIRE; 48

 

[ANIM31_SAMFIRE]

Graphic=SAMFIRE; 49

 

[ANIM32_MINIGUN]

Graphic=MINIGUN; 50

 

[ANIM33_MINIGUN]

Graphic=MINIGUN; 51

 

[ANIM34_MINIGUN]

Graphic=MINIGUN; 52

 

[ANIM35_MINIGUN]

Graphic=MINIGUN; 53

 

[ANIM36_MINIGUN]

Graphic=MINIGUN; 54

 

[ANIM37_MINIGUN]

Graphic=MINIGUN; 55

 

[ANIM38_MINIGUN]

Graphic=MINIGUN; 56

 

[ANIM39_MINIGUN]

Graphic=MINIGUN; 57

 

[ANIM3A_SMOKLAND]

Graphic=SMOKLAND; 58

 

; ion cannon animation

[ANIM3B_IONSFX]

Graphic=IONSFX; 59

 

; nuke animation

[ANIM3C_ATOMSFX]

Graphic=ATOMSFX; 60

 

; crate animations

[ANIM3D_DEVIATOR]

Graphic=DEVIATOR; 61

 

[ANIM3E_DOLLAR]

Graphic=DOLLAR; 62

 

[ANIM3F_EARTH]

Graphic=EARTH; 63

 

;steel crate animation

[ANIM40_EMPULSE]

Graphic=EMPULSE; 64

 

[ANIM41_INVUN]

Graphic=INVUN; 65

 

[ANIM42_MINE]

Graphic=MINE; 66

 

[ANIM43_RAPID]

Graphic=RAPID; 67

 

[ANIM44_STEALTH]

Graphic=STEALTH; 68

 

[ANIM45_MISSILE2]

Graphic=MISSILE2; 69

 

;Temple nuke launch anim

[ANIM46_ATOMDOOR]

Graphic=ATOMDOOR; 70

 

[ANIM47_MOVEFLSH]

Graphic=MOVEFLSH; 71

 

;civilian oil derrick flame

[ANIM48_FLMSPT]

Graphic=FLMSPT; 72

 

; dino death animations; read straight from the unit SHP files

[ANIM49_TRIC]

Graphic=TRIC; 73

 

[ANIM4A_TREX]

Graphic=TREX; 74

 

[ANIM4B_STEG]

Graphic=STEG; 75

 

[ANIM4C_RAPT]

Graphic=RAPT; 76

 

[ANIM4D_CHEMBALL]

Graphic=CHEMBALL; 77

Edited by Nyerguds

Share this post


Link to post
Share on other sites
Nyerguds    73

And finally... warheads. Warhead determine the damage percentage that a weapon does against each armor type. Note that the warhead is a property of the Bullet (projectile), and not of the actual weapon itself.

 

These have been modified from their original structure quite a bit because I fixed several bugs in them (for my 1.06c patch), and while I was at it, I expanded them to include an extra armor type. The normal game doesn't have an armor type "5", and as you see, I haven't even inserted values into it, meaning that at this point, any unit or structure that would be given this armor type would become invincible :P

 

The Infantry Death Animations for each warhead were also originally not stored in the Warhead itself, but in an external list. This gave serious problems for adding new warheads, so I fixed that. The infantry death ID list is this:

0: Normal (Humvee gun, minigun, commando sniper)

1: Torn apart (Guard Tower/Apache, MLRS missile)

2: Blown away (tank shot, bazooka)

3: Burn (flamethrower, ion cannon)

4: [wh6] (used for the unknown warhead 6, not sure what it does)

5: [wh7] (used for the unknown warhead 7, not sure what it does)

6: Eaten (looks like Normal, but is used for the carnivorous dinos; I suppose it does the "heal from eaten infantry" thing)

 

And finally, the Warheads list:

Note that some percentages look odd because they are internally stored as parts of 256. So "0.390625%" is actually just "1/256", meaning it's internally stored as "1".

[smallArms]

Unknown0=2

TargetWalls=0

TargetWood=0

Unknown3=0

InfantryDeath=0

versesArmor0=100%

versesArmor1=50%

versesArmor2=56.25%

versesArmor3=25%

versesArmor4=25%

versesArmor5=0%

 

[HiExplosive]

Unknown0=6

TargetWalls=1

TargetWood=1

Unknown3=1

InfantryDeath=1

versesArmor0=87,5%

versesArmor1=75%

versesArmor2=56.25%

versesArmor3=25%

versesArmor4=100%

versesArmor5=0%

 

[ArmorPiercing]

Unknown0=6

TargetWalls=1

TargetWood=1

Unknown3=0

InfantryDeath=2

versesArmor0=25%

versesArmor1=75%

versesArmor2=75%

versesArmor3=100%

versesArmor4=50%

versesArmor5=0%

 

[Fire]

Unknown0=8

TargetWalls=0

TargetWood=1

Unknown3=1

InfantryDeath=3

versesArmor0=87,5%

versesArmor1=100%

versesArmor2=68,75%

versesArmor3=25%

versesArmor4=50%

versesArmor5=0%

 

; used for Laser

[sUPER]

Unknown0=4

TargetWalls=0

TargetWood=0

Unknown3=0

InfantryDeath=3

versesArmor0=100%

versesArmor1=100%

versesArmor2=100%

versesArmor3=100%

versesArmor4=100%

versesArmor5=0%

 

[ionCannon]

Unknown0=7

TargetWalls=1

TargetWood=1

Unknown3=1

InfantryDeath=3

versesArmor0=100%

versesArmor1=100%

versesArmor2=75%

versesArmor3=75%

versesArmor4=75%

versesArmor5=0%

 

[Warhead6]

Unknown0=4

TargetWalls=0

TargetWood=0

Unknown3=0

InfantryDeath=4

versesArmor0=100%

versesArmor1=12.5%

versesArmor2=12.5%

versesArmor3=6.25%

versesArmor4=6.25%

versesArmor5=0%

 

[Warhead7]

Unknown0=4

TargetWalls=0

TargetWood=0

Unknown3=0

InfantryDeath=5

versesArmor0=100%

versesArmor1=12.5%

versesArmor2=12.5%

versesArmor3=6.25%

versesArmor4=6.25%

versesArmor5=0%

 

; used for Sniper

[HollowPoint]

Unknown0=4

TargetWalls=0

TargetWood=0

Unknown3=0

InfantryDeath=0

versesArmor0=100%

versesArmor1=3.125%

versesArmor2=3.125%

versesArmor3=3.125%

versesArmor4=3.125%

versesArmor5=0%

 

; used for the blossom tree spray damage

[Organic]

Unknown0=-1

TargetWalls=0

TargetWood=0

Unknown3=0

InfantryDeath=0

versesArmor0=100%

versesArmor1=0.390625%

versesArmor2=0.390625%

versesArmor3=0.390625%

versesArmor4=0.390625%

versesArmor5=0%

 

[DinoGore]

Unknown0=1

TargetWalls=1

TargetWood=1

Unknown3=0

InfantryDeath=6

versesArmor0=100%

versesArmor1=75%

versesArmor2=50%

versesArmor3=12.5%

versesArmor4=3.125%

versesArmor5=0%

 

[DinoChew]

Unknown0=1

TargetWalls=1

TargetWood=1

Unknown3=0

InfantryDeath=0

versesArmor0=100%

versesArmor1=75%

versesArmor2=50%

versesArmor3=12.5%

versesArmor4=3.125%

versesArmor5=0%

Edited by Nyerguds

Share this post


Link to post
Share on other sites
Nyerguds    73

It's not linked yet though... might do that during the next days, if I got some time; add the header names next to the IDs at all spots. That should get some more visible structure into it all.

Edited by Nyerguds

Share this post


Link to post
Share on other sites
DarkMastero    0

Just one question. The Guard Tower/Apache machinegun (Chaingun) attacks links to Bullet 16 (BULLET10_50CAL) which then links to Warhead 1 (HiExplosive). Is this correct? I was expecting Warhead 0 (Small Arms).

Share this post


Link to post
Share on other sites
Nyerguds    73

It's indeed HighExplosive. You can see that in the way infantry is torn apart by it rather than just dropping dead.

Edited by Nyerguds

Share this post


Link to post
Share on other sites
adityars    4

Thank you. This information is exactly what I needed to recreate this game in Javascript.

 

I had a few doubts that I hope someone here can help me with.

 

1. Do you have a mapping for Animation to Sound?

 

For eg. which sound file should I play for the Frag1 explosion animation? I know that I need to play rocket2 when firing BoatMissile. However I didn't see any file that maps what sound I should play when It lands. If someone happens to have a mapping file, that would be really helpful.

 

2. How does the game use the ROF (rate of fire) to calculate time interval between shots? Also, the BoatMissile fires two shots at a time. Is there a setting in somewhere that indicates this?

 

3. When the bullet lands, is there a way to indicate whether it does area/splash damage, and what the affected area for the weapon is?

 

Appreciate any feedback/advice.

 

This is the project I am working on. www.adityaravishankar.com/projects/games/command-and-conquer/ ... Recreating C&C - Tiberian Dawn in Javascript.

 

The new version that I am currently writing has all the units (GunBoat, Hovercraft etc...) which is why I need the extra details to perfect the game.

 

Thanks...

Share this post


Link to post
Share on other sites
Nyerguds    73

Oh hey, good to see you here! We already chatted for a bit, here. This thread was actually the start of my TD rules project :)

 

1. I'll see if I can get the complete list of animation data here. Lots of data though. But I got regex search & replace for sorting it out automatically :). The annoying work is mostly the hex-to-decimal conversion of the actual data.

 

2. No idea, really. The RA rules.ini just says "ROF = multiplier to Rate Of Fire for all weapons [larger means slower ROF] (def=1.0)". For things like that it's sometimes worth to actually go and time it in the game itself, playing on relatively low game speed. As far as I know, the missions use a basic time unit that's 1 minute on the default (= middle) game speed, so the ROF might be using that same standard somehow.

 

In C&C1 (unlike in RA1), double shots are just a unit option though, just like the mammoth tank and stealth tank fire twice. It's called FiresTwice in my ini

 

3. I just looked into this. Spread rates seem to be a property of the warheads. Looking at the RA rules.ini, it seemed to be the first value of a warhead, which I had not identified yet. I've updated the ini file now.

As for how exactly it's handled, RA's rules.ini has a very accurate description:

Spread = damage spread factor [larger means greater spread] (def=1)

[A value of 1 means the damage is halved every pixel distant from center point. A value of 2 means damage is halved every 2 pixels, etc.]

 

As I said before, you can find the whole collection of my ini-rules here:

nyerguds.arsaneus-design.com/cnc95upd/inirules/

I recently added units and structures to that, too.

 

[edit]

 

Added anim.ini and sounds.ini. I haven't actually linked the ini information (like sound IDs) to each other's text names yet though. They're all still numbers.

There's an index at the top of each ini though, so linking the IDs to a section programmatically shouldn't be hard ;)

Share this post


Link to post
Share on other sites
adityars    4

1. Thanks... Since I use config files within the game, I just have to plug in these settings to have the game sound perfect.....

 

It will also make it easier to identify the death animations and stuff.

 

2. I think I figured it out with a little playing around. ROF is a cool down period. So after a shot, I count down from ROF to 0 before I can fire another shot.

 

Check out the demo video of my latest code update... I think it looks pretty close. (though obviously not perfect)

 

3. I already have that url bookmarked and it's always open on one of my tabs.... I wouldn't have been able to do half the stuff I've managed in the last few days without these files ..... :)

 

Didn't realize you'd updated the warheads file.. Will take a look....

 

BTW, Where is the rules.ini file?

Share this post


Link to post
Share on other sites
Nyerguds    73

Hm? Rules.ini? That file isn't too important, it just contains some beta switches and the music configuration for the score and map screens. But in my patch 1.06c, it's inside updatec.mix.

 

I'm not sure whether I'll combine all this info into one rules file, or keep them as separate inis though.

 

 

Two remarks on the video:

1. That specific death scream is normally exclusively used for burning to death :P

2. Maybe I'm wrong, but I got the impression that turret died pretty quickly. Keep in mind that all health values for structures that are in the structures.ini have to be doubled to get the actual health used ingame. I don't know why, but it's also visible when comparing with RA1's rules.ini file.

3. I noticed you used the artillery explosion as death sound for the humvee. I'm not sure how much of my inis you've processed so far, but all vehicles have a linked death animation, with a linked sound ;)

 

[edit]

 

Updated grids.ini to include the grids for terrain objects, and added the terrain objects in terrain.ini :)

 

[edit]

 

Updates pretty much all inis with more consistent key naming, and replaced all object IDs of cross referenced objects by the object names instead.

 

I also changed the warheads.ini to have the original /256 values instead of percentages, and put all verses values on one line as it's done in RA's rules.ini.

(note that InfantryDeath was 100% hardcoded before my patch. Yay for progress!)

 

[edit]

 

Added structure animations and structure dimensions inis

Share this post


Link to post
Share on other sites
adityars    4

  1. Yep... Haven't integrated infantry deaths based on warhead types.... I just wanted something fun out there to mark the death.... Once I get all the infantry death animations sorted out, I should be able to correct that.... :)
  2. Is that hit point doubling only for structures or for everything? No I don't double yet.. I didn't know that... Thanks!!
  3. I did the video before I saw some of the unit dead animations related stuff... I have fixed the dying animation/sound for vehicles now based on the ini files...

Share this post


Link to post
Share on other sites
adityars    4

I found the RA.ini file on the web... It is a goldmine of information :) ...

 

Didn't find anything about the doubling of building life in there though....

 

----

 

edit: Never mind... I just saw that they double values for turrets and buildings in the RA.ini file... Fixed it...

 

Was wondering why the game seemed so easy before.. Now I'm getting killed :D

Edited by adityars

Share this post


Link to post
Share on other sites
Nyerguds    73

Ooh, this is neat. I just cracked the infantry animation sequences :)

 

[sequence_E1]

Ready=0,1,1

Guard=8,1,1

Prone=192,1,8

Walk=16,6,6

FireUp=64,8,8

Down=128,2,2

Crawl=144,4,4

Up=176,2,2

FireProne=192,6,8

Idle1=256,16,0

Idle2=272,16,0

StartFistCombat=288,13,0

HopPunch=292,10,0

Punch=301,2,0

RoundhouseKick=303,6,0

FaceHit1=309,2,0

FaceHit2=311,4,0

FaceHit3=315,5,0

GutHit1=319,2,8

GutHit2=321,4,0

GutHit3=325,5,0

StopFistCombat=330,5,0

Die1=382,8,0

Die2=398,8,0

Die3=398,8,0

Die4=406,12,0

Die5=418,18,0

Wave=436,3,3

Greet=460,3,3

Salute=484,3,3

Bow=508,3,3

Arm=0,1,1

Beg=0,1,1

Executed=0,1,1

 

All the rest in http://nyerguds.arsaneus-design.com/cnc95upd/inirules/infanims.ini :)

 

I found the RA.ini file on the web... It is a goldmine of information :) ...

I could've given you that, lol. I use the RA1 and TS inis as references all the time when making these inis. In fact, I didn't understand how these sequences worked (more specifically, the third number) until I read the explanation about them in TS' art.ini. amazing how the actual underlying systems never really changed :)

Share this post


Link to post
Share on other sites
adityars    4

They must have figured, if it works so well in C&C, why change it .... . :)

 

This infantry anim file is going to be really useful... It is hard to see the infantry properly because of how small the images are...Doing this manually would have been painful.... :D

 

I'll take a look at the TS ini file too.. .I am not using "prone" yet, because I didn't know how/when to use it....

Share this post


Link to post
Share on other sites
Nyerguds    73

Infantry goes prone when shot at, and receives only 50% damage when prone. They get back up when they are given a doubleclicked move command or are left unattacked for a while.

 

As for the exact sequence meanings, they're in the TS art.ini:

 

; Infantry animations are grouped within a single art file.

; Unlike units, infantry animation layout is completely

; arbitrary and must be explicitly specified. Each

; infantry format file will be identified with one of these

; animation sequences.

;

; The first number is the starting frame number. The second

; number is the number of frames of the animation. If this

; number is zero then the anim sequence is not present.

; The third number is the multiplier by the infantry facing

; to reach the facing specific animation start. If this

; last number is zero, then there is no facing specific

; version.

;

; Ready = standing around

; Guard = standing around with weapon drawn

; Prone = while prone

; Walk = walking [normal movement]

; FireUp = firing while standing

; Down = transition from standing to prone

; Crawl = moving while prone

; Up = transition from prone to standing

; FireProne = firing while prone

; Idle1 = idle animation sequence #1

; Idle2 = idle animation sequence #2

; Die1 = death animation when hit by gunfire

; Die2 = death animation when exploding

; Die3 = death animation when exploding (alternate)

; Die4 = death animation by concussion explosion

; Die5 = death animatino by fire

 

 

As you see, C&C1 has quite a bit more. The hand-to-hand combat ones are completely unused though, and so are Beg and Executed. "Arm" is the animation for a civilian getting a gun out of his jacket, but it seems to be unused too.

Then there's Wave, Greet, Salute and Bow. I know for a fact one of the first three is used as animation when a unit exits the barracks. The Bow one is used when exiting a transport.

 

btw, if I remember correctly, there's an error in one of the death animations of the engineer (blown up, I think). I'll have to look into that, and correct the ini when I find it.

Share this post


Link to post
Share on other sites
adityars    4

Well... I just need the mini gunner for the first few levels... Won't need engineers for a while....

 

Will try working in some of the death animations now... How do I know which scream/sound to use for a specific death?

 

Also on a side note, where can I get the images for "Mission Accomplished" ?? I couldn't find it anywhere....

Share this post


Link to post
Share on other sites
adityars    4

roundhouse kick, face hit 1,2,3, gut hit 1,2,3, hop punch????

 

WTF.. They have enough moves to make mortal kombat....

 

Why would any idiot punch when his opponent has a gun?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×