wARmAcH1n3@Posted: Sat Mar 19, 2005 12:53 am :
I wanna have the cyberdemon in my map stronger and more dangerous.

He should be

- faster
- his rockets stronger
- more stronger (more health)

Do someone know this? I make the cyberdemon mortal for all weapons with the key (finalboss =0) (thx rich :) )



Luigi@Posted: Sat Mar 19, 2005 12:57 am :
Extract the cyberdemon's ".def" file from one of the pak files. Open it using Wordpad and edit what you want there. You have rocket damage, health, etc.



wARmAcH1n3@Posted: Sat Mar 19, 2005 1:12 am :
when i change the def-file, will the changes affect all other maps/mods ?
how can i isolate the changes to only my map ?



SnoopJeDi@Posted: Sat Mar 19, 2005 1:23 am :
wARmAcH1n3 wrote:
when i change the def-file, will the changes affect all other maps/mods ?
how can i isolate the changes to only my map ?


Create a new cyberdemon def file, so you have two. You'll have a super_cyberdemon.def or whatever and the regular cyberdemon.def

Then, when you make your map, choose the super-duper one instead of the normal one.



KoRnScythe@Posted: Sat Mar 19, 2005 1:31 am :
How do you do that? Lol



rich_is_bored@Posted: Sat Mar 19, 2005 6:26 am :
Actually the filename of the def file is not what makes it different. It's the contents of that file that's important.

All you need to do is reference the entity definition for the cyberdemon and make some modifications only to the key/value pairs you'd like to change.

Here's the cyberdemon's entity definition...

Code:
entityDef monster_boss_cyberdemon {
   "inherit"                  "monster_default"
   "editor_mins"               "-90 -90 0"
   "editor_maxs"               "90 90 300"
   "scriptobject"               "monster_boss_cyberdemon"
   "model"                     "monster_boss_cyberdemon"
   "ragdoll"                  "monster_boss_cyberdemon"
   "size"                     "100 100 300"
   "use_aas"                  "aas_cyberdemon"
   "team"                     "1"
   "rank"                     "3"
   "health"                  "4000"
   "mass"                     "1000"
   "def_projectile"            "projectile_cyber_rocket"
   "fov"                     "120"
   "attack_cone"               "120"
   "attack_accuracy"            "2"
   "melee_range"               "95"
   "combat_chatter_min"         "2"
   "combat_chatter_max"         "4"
   "af_push_moveables"            "1"
   
   "def_kickdamage"            "melee_cyberdemon_kick"
   
   "big_monster"               "1"      // makes his bounding box non-solid to other monsters

   "smokeParticleSystem1"         "cyber_barrel_smoke"
   "smokeParticleSystem2"         "cyber_backfire1"
   "smokeParticleSystem3"         "cyber_backfire2"
   "smokeParticleSystem4"         "cyber_backfire3"
   "smokeParticleSystem5"         "cyber_mouth_fire"
   "smokeParticleSystem6"         "cyber_mouth_fire_L"
   "smokeParticleSystem7"         "cyber_mouth_fire_R"
   "smokeParticleSystem8"         "cyber_rfoot_dust"
   "smokeParticleSystem9"         "cyber_lfoot_dust"
   

   "damage_zone head"            "*Neck"
   "damage_zone chest"            "*Waist -*Rshldr -*Lshldr -*Neck"
   "damage_zone left_arm"         "*Lshldr"
   "damage_zone right_arm"         "*Rshldr"
   "damage_scale head"            "1"

   "pain_threshold"            "150"
   "finalBoss"                  "1"

   "focus_align_time"            "0"
   "head_focus_rate"            "0.05"
   "head_look"                  "1"
   "bone_focus"               "Barrel"
   "look_min"                  "-90 -120 0"
   "look_max"                  "25 120 0"
   "look_joint Waist"            "0.4 0.4 0.4"
   "look_joint Chest"            "0.4 0.4 0.4"
   "look_joint Head"            "0.2 0.2 0.2"
   "look_joint Rshldr"            "0.1 0.2 0.1"
   "look_joint Relbow"            "0.1 0.2 0.1"
   "turn_rate"                  "75"

   "ik_numLegs"               "2"
   "ik_footSize"               "20"
   "ik_minWaistAnkleDist"         "50"
   "ik_footUpTrace"            "32"
   "ik_footDownTrace"            "128"
   "ik_waist"                  "Body"
   "ik_hip1"                  "Lupleg"
   "ik_hip2"                  "Rupleg"
   "ik_knee1"                  "Lloleg"
   "ik_knee2"                  "Rloleg"
   "ik_ankle1"                  "Lankle_r"
   "ik_ankle2"                  "Rankle_r"
   "ik_dir1"                  "Lknee"
   "ik_dir2"                  "Rknee"
   "ik_foot1"                  "cyber_lfoot_dust"
   "ik_foot2"                  "cyber_rfoot_dust"

   "snd_sight1"               "monster_boss_cyberdemon_sight1"
   "snd_chatter"               "monster_boss_cyberdemon_chatter"
   "snd_chatter_combat"         "monster_boss_cyberdemon_chatter_combat"
   "snd_pain"                  "monster_boss_cyberdemon_pain"
   "snd_attackmissile"            "monster_boss_cyberdemon_attackmissile"
   "snd_footstep"               "monster_boss_cyberdemon_step"
}


So, you'd have an entity definition like so...

Code:
entityDef monster_boss_cyberdemon_tough {
   "inherit"                  "monster_boss_cyberdemon"
   "health"                  "4000"
   "def_projectile"            "projectile_cyber_rocket_tough"
   "finalBoss"                  "0"
}

entityDef projectile_cyber_rocket_tough {
   "inherit"            "projectile_cyber_rocket"
   "def_damage"            "damage_CyberrocketDirect_tough"
   "def_splash_damage"         "damage_CyberRocketSplash_tough"
}

entityDef damage_CyberrocketDirect_tough {
   "inherit"         "damage_CyberrocketDirect"
   "damage"         "80"
   "push"            "4000"
}

entityDef damage_CyberRocketSplash {
   "inherit"         "damage_CyberRocketSplash_tough"
   "damage"         "80"
   "radius"         "80"
   "push"            "10000"
}



wARmAcH1n3@Posted: Sun Mar 20, 2005 1:51 am :
thx these is very useful.

but i dont understand exactly, can i put all these keys/values in the entity-menue in the level-editor (by selected the cyber-demon) or have i to put it into a text-file (.def) ?



rich_is_bored@Posted: Sun Mar 20, 2005 4:51 am :
In my second code block in the post above, I'm "creating" new entities that use the original cyberdemon assets so that the modification does not alter the vanilla content of the game. The point being that you take this code and put it in a new def file named whatever you want.

You can, if you want, make modifications directly to an instance of the cyberdemon in the editor. However, this direct form of modification is only useful for the cyberdemon, not the rockets he fires.

Why? Because you placed the cyberdemon entity in the map so you therefore have control over his spawn arguments. You however, do not have control over the rockets he spawns.

That is why it's nessicary, if you want to change the damage of the rockets, that you create new entity definitions.



hellstorm27@Posted: Sun Mar 20, 2005 3:46 pm :
When you put the cyberdemon in your level, you can change its health by entering the key "health" into the cyberdemon's properties. A larger number will make the monster harder to kill.

Rich's suggestion about new entity definitions is probably the only way you'll be able to change the rockets (at least before the expansion pack arrives), but you could try giving the player less armour (if feasibly possible) as an alternative.

The Cyberdemon is also ten times harder to beat if you don't have a Soul Cube on you.



KoRnScythe@Posted: Sun Mar 20, 2005 11:12 pm :
Unless you find out how to make the cyberdemon a killable target without soul cube, he's more than 10 times harder.

I'd rather not mess around with .def files untill I feel I need more of a challenge, of course...



SnoopJeDi@Posted: Sun Mar 20, 2005 11:16 pm :
hellstorm27 wrote:
The Cyberdemon is also ten times harder to beat if you don't have a Soul Cube on you.


He's impossible to beat w/o the Soul Cube by default. That's the point.

Quote:
Unless you find out how to make the cyberdemon a killable target without soul cube, he's more than 10 times harder.


Yep.

The def rich posted earlier holds the answer:

Code:
"finalBoss"                  "1"


This key is referenced in the code (idActor.cpp I think, been a while, it's in PrimalFreeze's BrittleFracture post, search it if you'd like) and specifically checks the projectile type. If it's not a Soul Cube, no damage is dealt.



wARmAcH1n3@Posted: Mon Mar 21, 2005 12:50 pm :
ok just one question:

i copy the def-file from the cyberdemon into a new renamed one and modify it, but how to make it that the editor takes the new def file and not the original?

btw to fight with the standart cyberdemon is real boring (with normal weapons and soulcube too). i wanna make him so like in the old-school-cyberdemon



SnoopJeDi@Posted: Mon Mar 21, 2005 6:17 pm :
wARmAcH1n3 wrote:
ok just one question:

i copy the def-file from the cyberdemon into a new renamed one and modify it, but how to make it that the editor takes the new def file and not the original?

btw to fight with the standart cyberdemon is real boring (with normal weapons and soulcube too). i wanna make him so like in the old-school-cyberdemon


When you create a new def file, there will be a new entity for the editor to put in the map (in the right-click menu, you'll have two cyberdemons; the origina, and yours)



wARmAcH1n3@Posted: Wed Mar 23, 2005 11:27 am :
ah ok now i get it...

enjoy a hard showdown in 1-2 months :twisted:



pbmax@Posted: Wed Mar 23, 2005 2:34 pm :
wARmAcH1n3 wrote:
i copy the def-file from the cyberdemon into a new renamed one and modify it...


interesting discussion. i've never looked into the final boss's .def file before...

anyway, i think what rich was trying to say is that you do not have to make a whole new .def file. you can create a new cyberdemon entity definition right in the same .def file.

in fact, i think you can place just about any type of entity definition in any .def file. thats why you see projectiles, for example, within monster .def files.



wARmAcH1n3@Posted: Wed Mar 23, 2005 3:54 pm :
pbmax wrote:
wARmAcH1n3 wrote:
i copy the def-file from the cyberdemon into a new renamed one and modify it...


interesting discussion. i've never looked into the final boss's .def file before...

anyway, i think what rich was trying to say is that you do not have to make a whole new .def file. you can create a new cyberdemon entity definition right in the same .def file.

in fact, i think you can place just about any type of entity definition in any .def file. thats why you see projectiles, for example, within monster .def files.


i think its better to copy the def file and make a isolated file so u dont get messed up with the orginal def-file