/////////////////////////////////////////////////////////////////////////////// // KnightArcher /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // register defines /////////////////////////////////////////////////////////////////////////////// @DEFINE rProjectile 1 @DEFINE rProjectileSnapshot 2 @DEFINE giCollidedActor 1 @DEFINE cAIHitDust1 AIDUSA @DEFINE cAIHitDust2 AIDUSB @DEFINE cAIHitDust3 AIDUSC @DEFINE cAIHitDust4 AIDUSD @DEFINE cAIHitDust5 AIDUSE @DEFINE cBGHitDust1 BGDUSA @DEFINE cBGHitDust2 BGDUSB @DEFINE cBGHitDust3 BGDUSC @DEFINE cBGHitDust4 BGDUSD @DEFINE cBGHitDust5 BGDUSE @DEFINE cArrowDust1 ARDUSA @DEFINE cCastSuck1 CSUCKA @DEFINE cCastSuck2 CSUCKB @DEFINE cWallHitDust1 WHDUS1 @DEFINE cWallHitDust2 WHDUS2 @DEFINE cObjHitDust1 OHDUS1 @DEFINE cObjHitDust2 OHDUS2 @DEFINE_END /////////////////////////////////////////////////////////////////////////////// @NUM_SIMUL 2 @MAX_TIME 5.0 @NUM_REGISTERS 3 @NUM_INTERFACES 3 @GO_INTERFACES 1 /////////////////////////////////////////////////////////////////////////////// ///////////////////////////////// // Audio DEFINE_COMPONENT AudioComponent BEGIN EMITTER ID 0 NAME KnightsArrow1Emitter IS2D false ISFORSCORE false PRIORITY 8 DEFAULTISAUTOREWIND true DEFAULTMINMAXDISTANCE 8.0 150.0 DEFAULTPITCH -200 200 END EMITTER BEGIN EMITTER ID 1 NAME KnightsArrow1Emitter IS2D false ISFORSCORE false PRIORITY 8 DEFAULTISAUTOREWIND true DEFAULTMINMAXDISTANCE 8.0 150.0 DEFAULTPITCH -200 200 END EMITTER END COMPONENT // Arrow Impact ALLOC SpellAudioComponent AUDCAA SOURCEINDEX 33040 EMITTERID 0 ERM_SRC MTX34_INTERFACE REG rProjectile END // Arrow Shoot ALLOC SpellAudioComponent AUDCAB SOURCEINDEX 33036 EMITTERID 0 ERM_SRC MTX34_INTERFACE REG rProjectile END // Arrow Woosh ALLOC SpellAudioComponent AUDCAC SOURCEINDEX 33037 EMITTERID 0 ERM_SRC MTX34_INTERFACE REG rProjectile END // Rumble ALLOC SpellAudioComponent AUDCBA SOURCEINDEX 33039 EMITTERID 1 ERM_SRC MTX34_REGISTER rProjectile END // Bow charge ALLOC SpellAudioComponent AUDCBB SOURCEINDEX 33038 EMITTERID 1 ERM_SRC MTX34_REGISTER rProjectile END // Bow snap ALLOC SpellAudioComponent AUDCBC SOURCEINDEX 33035 EMITTERID 1 ERM_SRC MTX34_REGISTER rProjectile END ALLOC SpellJitterComponent JITTER TIME 1.2 CHANGE_OVER_TIME 0.25 0.0 END /////////////////////////////////////////////////////////////////////////////// TEMPLATE_DEF tSkinParticles tpIndex tpJoint tpParticleTemplate PARTSYSDATA tpIndex JOINT1 tpJoint TYPE tpParticleTemplate END TEMPLATE_END /////////////////////////////////////////////////////////////////////////////// // place staff to orb path in MTXReg rProjectile ALLOC SpellCollideComponent REGS1 ERM_SRC MTX34_INTERFACE STAFF ERM_DST MTX34_INTERFACE ORB IWM_RSLT MTX34_REGISTER rProjectile FORCE_RESULT OFFSET 0.0 -2.5 ORIENT_TO_SOURCE END ALLOC SpellCollideComponent REGS2 ERM_SRC MTX34_INTERFACE STAFF ERM_DST MTX34_INTERFACE ORB IWM_RSLT MTX34_REGISTER 3 FORCE_RESULT ORIENT_TO_SOURCE END ################################################# ## Targeting ################################################# ALLOC SpellAutoTargetComponent AUTOTG ERM_SRC MTX34_REGISTER 1 ERM_DST MTX34_INTERFACE ORB IGO_RSLTA GO_INTERFACE REG 1 FILL_OUT_MAPPINGS PRI_AUTO_TARGET CLOSEST TARGET_ANGLE 90 AUTO_TARGET_RADIUS 20.0 TARGET_LEVEL_HEIGHT 1 ROTATEY 0 END /////////////////////////////////////////////////////////////////////////////// // get path from rProjectile (generated by SpellCollideComponent REGS1) // // i guess since src and dest are the same they are specifying an origin and direction // and .DISTANCE is saying how far forward ALLOC SpellProjectileComponent PROJ ERM_SRC MTX34_REGISTER 3 ERM_DST MTX34_INTERFACE ORB M34I_UP REG rProjectile IGO_RSLT GO_INTERFACE REG giCollidedActor GO_SRC REG 1 RADIUS 0.2 TIME 1.6 DISTANCE 30.0 PATHFIND 0.75 AUTO_TARGET 360 0.15 -1.0 TIME_TILL_AUTO 150 ROTATEY 0 START_TIME dProjectile1Delay OUTPUT_COUNTED_HITS NO_STOP_HIT_AI END /////////////////////////////////////////////////////////////////////////////// ALLOC SpellOneTimeDmgComponent DAMG NUM_CAN_DAMAGE 16 DAMAGE LIGHT 40.0 LIGHT 5 1 GO_SRC REG giCollidedActor END /////////////////////////////////////////////////////////////////////////////// ALLOC SpellSkinComponent BOW ERM_SRC MTX34_REGISTER rProjectile SCALE_FLAGS 7 SCALE_VALUES_SCR 0.14 0.14 0.14 SCALE_VALUES_DST 0.14 0.14 0.14 ROTATE_VALUES_SCR 0.0 180.0 0.0 ROTATE_VALUES_DST 0.0 180.0 0.0 SKIN SKIN_FILE NC2A\Effect\Spell\SSB00C0a.SN2 NUM_ANIMS 1 ANIM_FILE nc2a\Effect\Spell\SSB00A04.AN2 ANIM1 SCALE 5.200000 5.200000 END COMPONENT PARTSYS 3 TEMPLATE_INST tSkinParticles 0 root KnightArcher2 TEMPLATE_INST tSkinParticles 1 joint12 KnightArcher2 TEMPLATE_INST tSkinParticles 2 joint14 KnightArcher2 SHRINKING 0.35 FADE_BY_INPUT_CALL FADE_OUT_TIME 1.0 ALPHA 0.99 DEPTHFUNC_ALWAYS START_PAUSED END ALLOC SpellSkinComponent ARROW ERM_SRC MTX34_INTERFACE REG rProjectile SCALE_FLAGS 7 SCALE_VALUES_SCR 0.15 0.15 0.15 SCALE_VALUES_DST 0.15 0.15 0.15 ROTATE_VALUES_SCR 0.0 0.0 0.0 ROTATE_VALUES_DST 0.0 0.0 360.0 SKIN SKIN_FILE NC2A\Effect\Spell\SSB00C01.SN2 NUM_ANIMS 0 SCALE 5.200000 5.200000 END COMPONENT SHRINKING 0.35 FADE_BY_INPUT_CALL FADE_OUT_TIME 1.0 ALPHA 0.99 DEPTHFUNC_ALWAYS NO_BFACECULL END /////////////////////////////////////////////////////////////////////////////// ALLOC SpellSetRegOnceComponent SNAPR1 ERM_SRC MTX34_INTERFACE rProjectile M34R_DST rProjectileSnapshot END /////////////////////////////////////////////////////////////////////////////// // shockwave quads TEMPLATE_DEF tShockwaveQuad tpName tpStartScale tpEndScale ALLOC SpellQuadComponent tpName ERM_SRC MTX34_REGISTER rProjectileSnapshot TEXTURE NC2A\Effect\Spell\SSB00T0i.DDS TIME 0.55 ADDITIVE_MODE NO_CLIP DRAW_POST_LANDSCAPE BLEND_IN_TIME 0.025 BLEND_OUT_TIME 0.025 BLEND_ALPHA 1.0 FADE_IN_BY 0.05 FADE_OUT_AT 0.05 ORIENT_TO_CAMERA FIXED_OFFSET 0.0 0.0 0.0 ROTATION 0.0 0.0 45.0 ORIENTATION 90.0 0.0 0.0 SCALE tpStartScale tpStartScale tpStartScale SCALEEND tpEndScale tpEndScale tpEndScale END TEMPLATE_END TEMPLATE_INST tShockwaveQuad SHKWVA 1.5 2.5 TEMPLATE_INST tShockwaveQuad SHKWVB 1.8 2.8 TEMPLATE_INST tShockwaveQuad SHKWVC 1.9 2.9 TEMPLATE_INST tShockwaveQuad SHKWVD 2.0 3.0 TEMPLATE_INST tShockwaveQuad SHKWVE 2.1 3.1 //////////////////////////////////////////// // particle systems TEMPLATE_DEF tParticlesI tpName tpParticleTemplate tpMatIF ALLOC SpellParticleComponent tpName PARTICLETYPE tpParticleTemplate ERM MTX34_INTERFACE tpMatIF MTX_MOVE END TEMPLATE_END TEMPLATE_DEF tParticlesR tpName tpParticleTemplate tpMatR ALLOC SpellParticleComponent tpName PARTICLETYPE tpParticleTemplate ERM MTX34_REGISTER tpMatR MTX_MOVE END TEMPLATE_END TEMPLATE_INST tParticlesI cCastSuck1 KnightArcher5 PLAYER TEMPLATE_INST tParticlesI cCastSuck2 KnightArcher6 PLAYER TEMPLATE_INST tParticlesI cArrowDust1 KnightArcherArrowDustLvl2 rProjectile TEMPLATE_INST tParticlesI KN1P KnightArcher1a rProjectile TEMPLATE_INST tParticlesR cAIHitDust1 KnightArcher1HitDust rProjectileSnapshot TEMPLATE_INST tParticlesR cAIHitDust2 KnightArcher1HitDust rProjectileSnapshot TEMPLATE_INST tParticlesR cAIHitDust3 KnightArcher1HitDust rProjectileSnapshot TEMPLATE_INST tParticlesR cAIHitDust4 KnightArcher1HitDust rProjectileSnapshot TEMPLATE_INST tParticlesR cAIHitDust5 KnightArcher1HitDust rProjectileSnapshot TEMPLATE_INST tParticlesR cBGHitDust1 KnightArcher1HitDustFarReaching rProjectileSnapshot TEMPLATE_INST tParticlesR cBGHitDust2 KnightArcher1HitDustFarReaching rProjectileSnapshot TEMPLATE_INST tParticlesR cBGHitDust3 KnightArcher1HitDustFarReaching rProjectileSnapshot TEMPLATE_INST tParticlesR cBGHitDust4 KnightArcher1HitDustFarReaching rProjectileSnapshot TEMPLATE_INST tParticlesR cBGHitDust5 KnightArcher1HitDustFarReaching rProjectileSnapshot TEMPLATE_INST tParticlesR cWallHitDust1 KnightArcher1HitDust rProjectileSnapshot TEMPLATE_INST tParticlesR cWallHitDust2 KnightArcher1HitDustFarReaching rProjectileSnapshot TEMPLATE_INST tParticlesR cObjHitDust1 KnightArcher1HitDust rProjectileSnapshot TEMPLATE_INST tParticlesR cObjHitDust2 KnightArcher1HitDustFarReaching rProjectileSnapshot //////////////////////////////////////////// // timers TEMPLATE_DEF tTimer tName tTime ALLOC SpellTimerComponent tName TIME tTime END TEMPLATE_END TEMPLATE_INST tTimer TIMER 4.0 TEMPLATE_INST tTimer ARWDLY 0.15 TEMPLATE_INST tTimer BOWDLY 0.15 TEMPLATE_INST tTimer ARFADL 1.0 TEMPLATE_INST tTimer BOFADL 0.01 //////////////////////////////// // Counters //////////////////////////////// // Audio counter ALLOC SpellCounterComponent AUDCNT COUNT 1 END // Visuals counter ALLOC SpellCounterComponent VISCNT COUNT 1 END // Counter to end spell ALLOC SpellCounterComponent COUNT COUNT 2 END //////////////////////////////// // Level 2 Logic //////////////////////////////// NMAP ENTRY POW2 AUDCNT START VISCNT START COUNT START TIMER START REGS1 START REGS2 START ARFADL START BOFADL START NMAP_END MAP REGS2 BEGUN 2 REGS2 STOP ARROW START NMAP REGS1 BEGUN REGS1 STOP BOW START ARWDLY START BOWDLY START cCastSuck1 START cCastSuck2 START NMAP_END NMAP ARROW BEGUN AUDCAB START AUDCAC START NMAP_END NMAP BOW BEGUN AUTOTG START AUDCBB START AUDCBC START NMAP_END MAP AUTOTG FNDA 1 PROJ START MAP AUTOTG NOFNDA 1 PROJ START NMAP ARWDLY DONE cArrowDust1 START KN1P START cCastSuck1 STOP cCastSuck2 STOP NMAP_END NMAP BOWDLY DONE BOW ANIM JITTER START NMAP_END NMAP JITTER BEGUN AUDCBA START NMAP_END NMAP JITTER DONE AUDCBA FOUT20 NMAP_END NMAP ARFADL DONE ARROW FADE NMAP_END NMAP BOFADL DONE BOW FADE NMAP_END //////////////////////////////// NMAP PROJ HITOBJ AUDCAB STOP AUDCAC STOP AUDCAA START SNAPR1 START SHKWVA START cObjHitDust1 START cObjHitDust2 START NMAP_END NMAP PROJ HITWAL AUDCAB STOP AUDCAC STOP AUDCAA START SNAPR1 START SHKWVA START cWallHitDust1 START cWallHitDust2 START cArrowDust1 STOP NMAP_END NMAP PROJ NOHIT AUDCAC FOUT10 AUDCAB FOUT10 NMAP_END //////////////////////////////// // shane says sending the same DMG component DMG messages // multiple times should work assuming the GO_INTERFACE is // update in time NMAP PROJ HITA AUDCAA START SNAPR1 START SHKWVA START cAIHitDust1 START cBGHitDust1 START DAMG DMG NMAP_END NMAP PROJ HITB AUDCAA START SNAPR1 START SHKWVB START cAIHitDust2 START cBGHitDust2 START DAMG DMG NMAP_END NMAP PROJ HITC AUDCAA START SNAPR1 START SHKWVC START cAIHitDust3 START cBGHitDust3 START DAMG DMG NMAP_END NMAP PROJ HITD AUDCAA START SNAPR1 START SHKWVD START cAIHitDust4 START cBGHitDust4 START DAMG DMG NMAP_END NMAP PROJ HITE AUDCAA START SNAPR1 START SHKWVE START cAIHitDust5 START cBGHitDust5 START DAMG DMG NMAP_END NMAP PROJ DONE ARROW STOP cArrowDust1 STOP NMAP_END //////////////////////////////// NMAP TIMER DONE VISCNT TRIG NMAP_END NMAP AUDCAC DONE AUDCNT TRIG NMAP_END // Spell completion MAP VISCNT DONE 1 COUNT TRIG MAP AUDCNT DONE 1 COUNT TRIG MAP COUNT DONE 1 ENTRY STOP