Page 1 of 1

world of warcraft npc's

Posted: Thu Nov 22, 2012 2:33 am
by [JSC][GU]PREDATOR
I'm having trouble getting them to work as a monster_generic, all i want it to do is go after players but all it does is stand there, its because there is something you have to do with the .qc file and i don't know what that is.

here is a video of me messing around with the animations
[youtube][/youtube]

the names of each smd files:

felreaver_attackunarmed
felreaver_attackunarmed2
felreaver_channelcastomni
felreaver_combatcritical
felreaver_combatwound
felreaver_dance
felreaver_dead
felreaver_death
felreaver_idle
felreaver_parryunarmed
felreaver_runspecialunarmed
felreaver_stand
felreaver_walk

if i can get this resolved i'll release it so you can have this huge thing as a custom npc in your maps

Re: world of warcraft npc's

Posted: Thu Nov 22, 2012 2:48 am
by [JSC][GU]PREDATOR
heres another video, why not
[youtube][/youtube]

Re: world of warcraft npc's

Posted: Thu Nov 22, 2012 4:35 pm
by MaestraFénix
Oh, another veteran who comes from the past, excelent.


I think that i know what is happening, i had a similar issue with a zombie model: https://developer.valvesoftware.com/wiki/$animation

Look the align and world movement parts. You have to put the XY or similar thing.

This is an example of the QC of the default zombie model:

Code: Select all

$animation a_WalkS "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -180 fps 50.00 }

$animation a_WalkSE "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -135 fps 50.00 }

$animation a_WalkE "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -90 fps 50.00 }

$animation a_WalkNE "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -45 fps 50.00 }

$animation a_WalkN "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 0 fps 50.00 }

$animation a_WalkNW "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 45 fps 50.00 }

$animation a_WalkW "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 90 fps 50.00 }

$animation a_WalkSW "Walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 135 fps 50.00 }

Re: world of warcraft npc's

Posted: Thu Nov 22, 2012 5:24 pm
by [JSC][GU]PREDATOR
With that, this is what my .qc looks like

Code: Select all

$scale 50
$modelname "worldofwarcraft\felreaver\felreaver_idle2.mdl"
$body "Body" "felreaver_idle.SMD"
$cdmaterials "worldofwarcraft\felreaver"

$surfaceprop "Metal"

$sequence stand "felreaver_stand.SMD" fps 30
$sequence idle "felreaver_idle.SMD" fps 30
$sequence attack1 "felreaver_attackunarmed.SMD" fps 30
$sequence attack2 "felreaver_attackunarmed2.SMD" fps 30
$sequence channelcastomni "felreaver_channelcastomni.SMD" fps 30
$sequence criticallyhit "felreaver_combatcritical.SMD" fps 30
$sequence combatwound "felreaver_combatwound.SMD" fps 30
$sequence dance "felreaver_dance.SMD" fps 30
$sequence dead "felreaver_dead.SMD" fps 30
$sequence death "felreaver_death.SMD" fps 30
$sequence parryunarmed "felreaver_parryunarmed.SMD" fps 30
$sequence run "felreaver_run.SMD" fps 30
$sequence specialattack "felreaver_specialunarmed.SMD" fps 30
$sequence walk "felreaver_walk.SMD" fps 30

$animation a_WalkS "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -180 fps 30.00 }

$animation a_WalkSE "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -135 fps 30.00 }

$animation a_WalkE "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -90 fps 30.00 }

$animation a_WalkNE "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto -45 fps 30.00 }

$animation a_WalkN "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 0 fps 30.00 }

$animation a_WalkNW "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 45 fps 30.00 }

$animation a_WalkW "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 90 fps 30.00 }

$animation a_WalkSW "felreaver_walk"
{ loop walkframe 60 LX LY startloop 0 rotateto 135 fps 30.00 }
guistudio says there is a problem with

{ loop walkframe 60 LX LY startloop 0 rotateto -180 fps 30.00 }

Re: world of warcraft npc's

Posted: Thu Nov 22, 2012 6:38 pm
by MaestraFénix
What it says?

Re: world of warcraft npc's

Posted: Thu Nov 22, 2012 7:27 pm
by [JSC][GU]PREDATOR

Code: Select all

GUIStudioMDL 2.2/Source - © 2007 Neil 'Jed' Jedrzejewski - http://www.wunderboy.org/

Loaded QC file - "C:\Users\predator\Desktop\unused desktop\brutallusfinaltry\felreaver\felreaver_idle2.qc"

Created command line: "C:\Program Files (x86)\Steam\steamapps\marksoundy\sourcesdk\bin\orangebox\bin\studiomdl.exe" -game "c:\program files (x86)\steam\steamapps\marksoundy\half-life 2 deathmatch\hl2mp" -nop4 -nox360 "C:\Users\predator\Desktop\unused desktop\brutallusfinaltry\felreaver\felreaver_idle2.qc"

qdir:    "c:\users\predator\desktop\unused desktop\brutallusfinaltry\felreaver\"
gamedir: "c:\program files (x86)\steam\steamapps\marksoundy\half-life 2 deathmatch\hl2mp\"
g_path:  "C:\Users\predator\Desktop\unused desktop\brutallusfinaltry\felreaver\felreaver_idle2.qc"
Building binary model files...
Working on "felreaver_idle2.qc"
SMD MODEL felreaver_idle.smd
SMD MODEL felreaver_stand.smd
SMD MODEL felreaver_attackunarmed.smd
SMD MODEL felreaver_attackunarmed2.smd
SMD MODEL felreaver_channelcastomni.smd
SMD MODEL felreaver_combatcritical.smd
SMD MODEL felreaver_combatwound.smd
SMD MODEL felreaver_dance.smd
SMD MODEL felreaver_dead.smd
SMD MODEL felreaver_death.smd
SMD MODEL felreaver_parryunarmed.smd
SMD MODEL felreaver_run.smd
SMD MODEL felreaver_specialunarmed.smd
SMD MODEL felreaver_walk.smd
ERROR: c:\users\predator\desktop\unused desktop\brutallusfinaltry\felreaver\felreaver_idle2.qc(24): - bad command {
ERROR: Aborted Processing on 'worldofwarcraft\felreaver\felreaver_idle2.mdl'

Re: world of warcraft npc's

Posted: Thu Nov 22, 2012 9:41 pm
by [JSC][GU]PREDATOR
I changed the lines to resemble what it says in that link you posted and it worked, the model compiled correctly but when i tested it the thing was still not moving, i was getting the exact same thing in console as i was before

Image

Re: world of warcraft npc's

Posted: Fri Nov 23, 2012 10:30 pm
by Shana
When I saw the name of the thread starter, I thought someone bumped a 6-years old thread.

Anyways I remember hearing from Skidz that you have to set up the NPC movement speeds in a 3D program, I never did any NPC modeling so I can't really tell you what to do exactly, I'd suggest reading up on it in the VDC.

Re: world of warcraft npc's

Posted: Fri Nov 23, 2012 11:07 pm
by MaestraFénix
Forget it, because like many things, it doesn´t appear there. At least not directly.

After an intensive search, i found that the following problems makes that error:


Your models lack of a ragdoll.

Your models lack a walk/run animation (you will have to look if you have a ACT_WALK or ACT_RUN). https://developer.valvesoftware.com/wik ... _Sequences https://developer.valvesoftware.com/wiki/$sequence

Your walk/run animation starts and freeze at frame 0 (check it on HLMV).

Check if your npc are spawing on the ground.


Tell me what it happens.

Re: world of warcraft npc's

Posted: Sat Nov 24, 2012 1:46 am
by [JSC][GU]PREDATOR
i put the npc above the ground a little for it to drop down to ensure that it isn't just stuck in the ground, this is what the .qc looks like now, and it fixed that error in console but still no progress he isn't moving

Code: Select all

$scale 50
$modelname "worldofwarcraft\felreaver\felreaver_idle.mdl"
$body "Body" "felreaver_idle.SMD"
$cdmaterials "worldofwarcraft\felreaver"

$surfaceprop "Metal"

$sequence stand "felreaver_stand.SMD" loop ACT_IDLE 1 fps 30
$sequence idle "felreaver_idle.SMD" fps 30
$sequence attack1 "felreaver_attackunarmed.SMD" ACT_RANGE_ATTACK1 1 fps 30
$sequence attack2 "felreaver_attackunarmed2.SMD" fps 30
$sequence channelcastomni "felreaver_channelcastomni.SMD" fps 30
$sequence criticallyhit "felreaver_combatcritical.SMD" fps 30
$sequence combatwound "felreaver_combatwound.SMD" fps 30
$sequence dance "felreaver_dance.SMD" fps 30
$sequence dead "felreaver_dead.SMD" fps 30
$sequence death "felreaver_death.SMD" fps 30
$sequence parryunarmed "felreaver_parryunarmed.SMD" fps 30
$sequence run "felreaver_run.SMD" loop ACT_RUN 1 fps 30
$sequence specialattack "felreaver_specialunarmed.SMD" fps 30
$sequence walk "felreaver_walk.SMD" ACT_WALK 1 fps 30
i took a vmf of a map from gamebanana of a houndeye which was intended for hl2dm, that is what i am basing the felreaver on. all i've done is change the model to a fel reaver. this is what the .qc of the working houndeye looks like

Code: Select all

$modelname "houndeye.mdl"
$model "studio" "houndeye.smd"
$lod 15
 {
  replacemodel "houndeye" "lod1_houndeye"
}
$lod 30
 {
  replacemodel "houndeye" "lod2_houndeye"
}
$lod 55
 {
  replacemodel "houndeye" "lod3_houndeye"
}
$shadowlod
{
  replacemodel "houndeye" "lod4_houndeye"
}
$poseparameter eye_controller 0.00 100.00
$cdmaterials "models\houndeye\"
$hboxset "default"
$hbox 0 "HoundEye.Body" -4.451  -2.893  -4.080  6.321  6.894  4.080
$hbox 0 "HoundEye.Spine" -0.427  -3.106  -6.524  9.779  7.177  6.524
$hbox 0 "HoundEye.Spine1" 0.000  -4.753  -8.648  7.951  11.803  8.648
$hbox 0 "HoundEye.Spine2" -0.962  -7.403  -9.573  12.462  12.753  9.559
$hbox 0 "HoundEye.Spine3" -3.055  -7.653  -11.712  11.381  12.042  11.712
$hbox 0 "HoundEye.Neck" -6.337  -7.274  -11.712  9.055  11.103  11.712
$hbox 0 "HoundEye.Head" -5.720  -9.532  -7.786  5.361  9.509  7.702
$hbox 0 "HoundEye.Eyelid" 0.000  -7.094  -6.580  5.745  6.337  6.581
$hbox 0 "eyelid_b" -1.648  -1.331  -3.496  0.053  1.110  3.291
$hbox 0 "eyelid_l" -2.179  -1.798  -3.974  0.057  0.422  3.569
$hbox 0 "eyelid_t" -2.447  -0.348  -4.315  0.101  2.576  4.172
$hbox 0 "eyelid_tr" -2.452  -1.752  -2.644  0.022  1.659  2.128
$hbox 0 "eyelid_tl" -2.444  -1.554  -2.788  0.062  1.970  1.920
$hbox 0 "eyelid_bl" -1.668  -2.651  -2.951  0.155  2.048  2.566
$hbox 0 "eyelid_br" -1.745  -1.522  -2.950  0.134  3.070  2.560
$hbox 0 "eyelid_r" -0.024  -0.467  -3.470  2.226  1.669  4.024
$hbox 0 "HoundEye.Hairs" 0.000  -5.575  -5.749  7.110  9.401  5.738
$hbox 0 "HoundEye.UpperArmL" -5.401  -6.103  -3.800  15.937  7.958  3.944
$hbox 0 "HoundEye.ForeArmL" -1.867  -1.334  -1.671  11.746  2.796  1.676
$hbox 0 "HoundEye.PawL" -0.962  -1.916  -1.926  4.902  1.313  1.721
$hbox 0 "HoundEye.UpperArmR" -15.934  -7.952  -4.120  5.402  6.224  3.625
$hbox 0 "HoundEye.ForeArmR" -11.744  -2.775  -1.851  1.869  1.356  1.496
$hbox 0 "HoundEye.PawR" -4.908  -1.302  -1.896  0.949  1.927  1.750
$hbox 0 "HoundEye.Thigh" -0.589  -5.176  -4.080  14.477  3.661  4.080
$hbox 0 "HoundEye.Calf" -1.045  -1.762  -2.235  9.886  1.528  2.235
$hbox 0 "HoundEye.Foot" -1.036  -1.107  -1.776  5.370  1.028  1.776
$hbox 0 "HoundEye.Toe" -0.325  -1.663  -1.772  4.833  1.163  1.771
// Model uses material "houndside2.vmt"
// Model uses material "eye.vmt"
// Model uses material "eye_env.vmt"
// Model uses material "individualhairs.vmt"
// Model uses material "eyelid.vmt"
$surfaceprop "alienflesh"
$eyeposition -0.000 0.000 27.000
$illumposition 4.116 0.863 22.343
$sequence idle1 "idle1" ACT_IDLE 1 fps 30.00
$sequence idle2 "idle2" loop ACT_IDLE 20 fps 30.00
$sequence idle3 "idle3" ACT_IDLE 1 fps 30.00
$sequence run "run" loop ACT_RUN 1 fps 30.00
$sequence attack "attack" ACT_RANGE_ATTACK1 1 fps 25.00 {
  { event 2 5 }
  { event 3 59 }
}

$sequence flinch_small "flinch_small" ACT_SMALL_FLINCH 1 fps 30.00
$sequence flinch_small2 "flinch_small2" ACT_SMALL_FLINCH 1 fps 30.00
$sequence running_jump "running_jump" ACT_LEAP 1 fps 30.00
$sequence walk_limp "walk_limp" loop fps 30.00
$sequence walk "walk" loop ACT_WALK 1 fps 30.00
$sequence leaderlook "leaderlook" ACT_GUARD 1 fps 30.00 {
  { event 1 10 }
  { event 1 20 }
}

$sequence sleep "sleep" loop ACT_CROUCHIDLE 1 fps 30.00
$sequence gotosleep "gotosleep" ACT_CROUCH 1 fps 30.00
$sequence sleeptostand "sleeptostand" ACT_STAND 1 fps 30.00
$sequence madidle "madidle" loop ACT_IDLE_ANGRY 2 fps 30.00
$sequence madidle2 "madidle2" loop ACT_IDLE_ANGRY 3 fps 37.00
$sequence madidle3 "madidle3" loop ACT_IDLE_ANGRY 1 fps 30.00
$sequence inspect "inspect" ACT_INSPECT_WALL 1 fps 10.00
$sequence eat "eat" ACT_EAT 1 fps 30.00
$sequence 180l "180l" loop ACT_TURN_LEFT 1 fps 30.00
$sequence 180r "180r" loop ACT_TURN_RIGHT 1 fps 30.00
$sequence jumpback "jumpback" ACT_LEAP 1 fps 30.00 {
  { event 6 10 }
}

$sequence wakefast "wakefast" ACT_HOP 1 fps 60.00
$sequence whimper "whimper" loop fps 35.00
$sequence ragdoll "ragdoll" ACT_DIERAGDOLL 1 fps 30.00
$animation mdldecompiler_delta.smd "mdldecompiler_delta.smd" fps 30
$animation eyelid0 "eyelid0" fps 30.000000 subtract mdldecompiler_delta.smd 0

$animation eyelid1 "eyelid1" fps 30.000000 subtract mdldecompiler_delta.smd 0

$animation eyelid2 "eyelid2" fps 30.000000 subtract mdldecompiler_delta.smd 0

$sequence eye_controller "eyelid0" fps 30.00 {
  blendwidth 4
  blend eye_controller 0.000000 100.000000
  delta
  autoplay
 eyelid0 eyelid1 eyelid2
}
$collisionjoints "phymodel.smd" {

	$mass 45.0
	$inertia 10.00
	$damping 0.01
	$rotdamping 1.50
	$rootbone "houndeye.body"

	$jointconstrain "houndeye.thigh" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.thigh" y limit -45.00 45.00 0.04
	$jointconstrain "houndeye.thigh" z limit -50.00 30.00 0.04

	$jointconstrain "houndeye.calf" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.calf" y limit -60.00 60.00 0.04
	$jointconstrain "houndeye.calf" z limit -60.00 40.00 0.04

	$jointconstrain "houndeye.foot" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.foot" y limit -30.00 30.00 0.04
	$jointconstrain "houndeye.foot" z limit -30.00 30.00 0.04

	$jointconstrain "houndeye.spine1" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.spine1" y limit -30.00 30.00 0.04
	$jointconstrain "houndeye.spine1" z limit -30.00 30.00 0.04

	$jointconstrain "houndeye.upperarmr" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.upperarmr" y limit -30.00 40.00 0.04
	$jointconstrain "houndeye.upperarmr" z limit -40.00 40.00 0.04

	$jointconstrain "houndeye.forearmr" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.forearmr" y limit -60.00 60.00 0.04
	$jointconstrain "houndeye.forearmr" z limit -60.00 40.00 0.04

	$jointconstrain "houndeye.upperarml" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.upperarml" y limit -40.00 30.00 0.04
	$jointconstrain "houndeye.upperarml" z limit -40.00 40.00 0.04

	$jointconstrain "houndeye.forearml" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.forearml" y limit -60.00 60.00 0.04
	$jointconstrain "houndeye.forearml" z limit -60.00 40.00 0.04

	$jointconstrain "houndeye.pawl" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.pawl" y limit -30.00 30.00 0.04
	$jointconstrain "houndeye.pawl" z limit -30.00 30.00 0.04

	$jointconstrain "houndeye.pawr" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.pawr" y limit -30.00 30.00 0.04
	$jointconstrain "houndeye.pawr" z limit -30.00 30.00 0.04

	$jointconstrain "houndeye.toe" x limit -30.00 30.00 0.04
	$jointconstrain "houndeye.toe" y limit -30.00 30.00 0.04
	$jointconstrain "houndeye.toe" z limit -30.00 30.00 0.04
}

Re: world of warcraft npc's

Posted: Sat Nov 24, 2012 9:22 am
by MaestraFénix
Well, the QC of the Houndeye defines the ragdoll and their physical properties, while the yours not.

https://developer.valvesoftware.com/wiki/Collision_mesh

https://developer.valvesoftware.com/wik ... sionjoints

https://developer.valvesoftware.com/wik ... d_Ragdolls


Also i´m reading that you need info_nodes for your npc moves (place them if you don´t did it before).

Try with that.

Re: world of warcraft npc's

Posted: Mon Nov 26, 2012 2:12 pm
by [JSC][GU]PREDATOR
i haven't given up but right now im working on something else
[youtube][/youtube]