Guest User

railgun fadeout prob.

a guest
Dec 12th, 2011
148
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //////////////// GRANNY
  2.  
  3. weapon/grenade/projectile {
  4. // Render the grenade model
  5. model "models/ammo/grenade1.md3"
  6. // wolfcam need to do model rotation yourself
  7. if velocity {
  8. rotate time * 1000 / 4
  9. }
  10. anglesModel
  11.  
  12.  
  13. ////////////////////////// BLINKY TRAIL
  14. shader flareshader
  15. distance 1 // t9
  16. {
  17. wobble dir velocity 0
  18. scale velocity velocity 0
  19. size 3.5 // BLINKY
  20. emitter 0.25 + rand *0.25 { // .35
  21. colorFade 0
  22. color 1 .5 0
  23. Sprite
  24. }
  25. }
  26. }
  27.  
  28. weapon/grenade/impact {
  29. sound sound/weapons/rocket/rocklx1a.wav
  30. // Will be the light colour
  31. color 1 1 0
  32. emitter 0.5 {
  33. Sprite
  34. size 300
  35. Light
  36. }
  37.  
  38.  
  39. color 1 .75 0 // PHAT PARTZ
  40. alpha 0
  41. shader flareShader
  42. repeat 2 {
  43. // random velocity
  44. scale velocity velocity 10
  45. size 200
  46. emitter 0.75 {
  47. moveBounce 0 0
  48. colorFade 0
  49. Sprite
  50. }
  51. }
  52.  
  53.  
  54. color 1 1 1 // SMALL PARTZ
  55. alpha 0
  56. shader flareShader
  57. repeat 100 {
  58. random velocity
  59. scale velocity velocity 500 + rand*150
  60. size 5 + rand *5
  61. emitter "0.25 + rand*0.15" {
  62. moveBounce 0 0
  63. colorFade 0
  64. Sprite
  65. }
  66. }
  67. }
  68.  
  69.  
  70. weapon/grenade/trail {
  71. // The standard SMOKE PUFF trail thing
  72. alpha 0.25
  73. shader smokePuff
  74. angle 360 * rand
  75. // Emit a sprite every 50 milliseconds
  76. interval 0.025 {
  77. emitter 0.700 {
  78. alphaFade 0
  79. size 8 + lerp * 32
  80. sprite cullNear
  81. }
  82. }
  83. }
  84. /////////////////////////// PLASMA
  85.  
  86. weapon/plasma/projectile {
  87. color .25 .75 1
  88. size 400
  89. light
  90. rotate rand*360
  91. size 15 // THE SPRITE FOR THE PLASMA
  92. shader sprites/plasma1
  93. sprite
  94. // Plasma flying sound
  95. loopSound "sound/weapons/plasma/lasfly.wav"
  96.  
  97. color 0 0.05 .25 // TRAILCOLOR gets bright because of distance low
  98. alpha 0 //?? /// === plasma TRAIL
  99. shader flareshader /// raildisc
  100.  
  101. distance 5 //0 + rand *10
  102. {
  103. normalize parentVelocity v0
  104. inverse v0
  105. wobble v0 velocity 5 /// + rand*2 //STRAIGHTEN OUT TRAIL
  106. // scale velocity velocity 50 + rand*50 // ??
  107. emitter 0.13 {
  108. size 17 // * ( 1 - 0.25 * lerp * 1 )
  109. colorFade 0
  110. moveGravity 0
  111. Sprite
  112. }
  113. }
  114. }
  115.  
  116. ///////////////// LIGHTNING GUN
  117.  
  118.  
  119.  
  120. // input: origin, team, clientnum, enemy, teammate, ineyes
  121. weapon/lightning/flash {
  122. color 0.6 0.6 1
  123. size 300 + rand*32
  124. light
  125. }
  126.  
  127.  
  128. // input: origin, dir, end (wolfcam), team, clientnum, enemy, teammate, ineyes
  129. weapon/lightning/trail {
  130. //shader "lightningBoltNew"
  131. // wolfcam ql uses lightningBolt[1 - 7]
  132. shader flareshader // "lightningBolt2"
  133. // Standard q3 beam size
  134.  
  135. size 7.5
  136. color 0.3 0.3 1 // LG BEAM
  137. //width 20
  138. // The beam is repeated every 45 degrees
  139. angle 45
  140. // higher = thinner
  141. // Draw the beam between origin in direction of
  142. if ineyes {
  143. beam depthhack
  144. } else {
  145. beam
  146. }
  147. // repeat 2
  148. // Length of beam in t0
  149. t0 dir
  150. // Check if we need to render the impact flash effect thing
  151. // That means we end before the maximum lightning range
  152. if ( t0 < 768 ) {
  153. // Clear the previous shader so it uses the one in the model
  154. shaderClear
  155. model "models/weaphits/crackle.md3"
  156. size 1
  157. // Slightly before the endpoint
  158. addScale origin dir origin ( (t0 - 5 ) / t0 )
  159. // Just a random model in it's angles
  160. angles0 rand * 360
  161. angles1 rand * 360
  162. angles2 rand * 360
  163. anglesModel
  164. }
  165. }
  166.  
  167. // input: origin, dir, team, clientnum, enemy, teammate, ineyes, surfacetype
  168. weapon/lightning/impact {
  169. // random impact sound
  170. soundList {
  171. sound/weapons/lightning/lg_hit.wav
  172. sound/weapons/lightning/lg_hit2.wav
  173. sound/weapons/lightning/lg_hit3.wav
  174. }
  175. // Hole mark shader decal
  176. shader gfx/damage/hole_lg_mrk
  177. size 5 // 12
  178. decal
  179.  
  180.  
  181.  
  182. // from impact surface
  183. shader flareshader // smokepuff
  184. alpha 0
  185. color .1 .1 .1
  186. repeat 2 { /// higher kills FPS
  187. wobble dir velocity 25 + rand*10
  188. scale velocity velocity 55 + rand*10
  189. size 15 + rand *10
  190. // width 100 +rand*10 no width on flareshader?
  191. emitter 0.5 + rand*0.5 /// 0.5 + rand* .25
  192. {
  193. moveGravity 300
  194. moveBounce 0.5 0.5
  195. alphaFade 0
  196. sprite // spark
  197. }
  198. }
  199. }
  200.  
  201. // q3mme example scripts combined into one file with example changes to make
  202. // it compatible with wolfcam
  203.  
  204. // wolfcam additional inputs to some scripts are:
  205. // team 0 free, 1 red, 2 blue, 3 spectator
  206. // clientnum
  207. // enemy 1 if enemy of whoever is being specced in demo
  208. // teammate
  209. // ineyes 1 if first person view is with this player
  210. // surfacetype for impact scripts: 0 not specified, 1 metal, 2 wood,
  211. // 3 dust
  212. //
  213.  
  214. /////////////////////////////////////////////////////
  215.  
  216.  
  217. // Some general fx script you could use in the effects editor when really bored
  218. mme/decal {
  219. Trace
  220. decalTemp
  221. }
  222.  
  223. mme/quad {
  224. quad
  225. }
  226.  
  227.  
  228. mme/model {
  229. anglesModel
  230. }
  231.  
  232. // Talk sprite
  233. // input: origin, team, clientnum, enemy, teammate, ineyes
  234. player/talk {
  235. if ineyes != 1 {
  236. size 10
  237. shader sprites/balloon3
  238. Sprite
  239. }
  240. }
  241.  
  242. // Impressive sprite
  243. // input: origin, team, clientnum, enemy, teammate, ineyes
  244. player/impressive {
  245. if ineyes != 1 {
  246. size 10
  247. shader medal_impressive
  248. Sprite
  249. }
  250. }
  251.  
  252. // Excellent sprite
  253. // input: origin, team, clientnum, enemy, teammate, ineyes
  254. player/excellent {
  255. if ineyes != 1 {
  256. size 10
  257. shader medal_excellent
  258. Sprite
  259. }
  260. }
  261.  
  262. // Holy shit medal from ra3
  263. // input: origin, team, clientnum, enemy, teammate, ineyes
  264. player/holyshit {
  265. if ineyes != 1 {
  266. size 10
  267. shader medal_holyshit
  268. Sprite
  269. }
  270. }
  271.  
  272. // Accuracy medal
  273. // input: origin, team, clientnum, enemy, teammate, ineyes
  274. player/accuracy {
  275. if ineyes != 1 {
  276. size 10
  277. shader medal_accuracy
  278. Sprite
  279. }
  280. }
  281.  
  282. // Gauntlet sprite
  283. // input: origin, team, clientnum, enemy, teammate, ineyes
  284. player/gauntlet {
  285. if ineyes != 1 {
  286. size 10
  287. shader medal_gauntlet
  288. Sprite
  289. }
  290. }
  291.  
  292. // connection sprite
  293. // input: origin, team, clientnum, enemy, teammate, ineyes
  294. player/connection {
  295. if ineyes != 1 {
  296. size 10
  297. shader disconnected
  298. Sprite
  299. }
  300. }
  301.  
  302. // haste/speed trail
  303. // input: origin, angles, velocity, dir (normalized), team, clientnum,
  304. // enemy, teammate, ineyes
  305. player/haste {
  306. interval 0.1 {
  307. shader hasteSmokePuff
  308. emitter 0.5 {
  309. size 6 + 10 * wave( 0.5 * lerp )
  310. alphaFade 0
  311. sprite cullNear
  312. }
  313. }
  314. }
  315.  
  316. // flight trail -- wolfcam addition, not in q3mme
  317. // input: origin, angles, velocity, dir (normalized), team, clientnum,
  318. // enemy, teammate, ineyes
  319. player/flight {
  320. interval 0.1 {
  321. shader hasteSmokePuff
  322. emitter 0.5 {
  323. size 6 + 10 * wave( 0.5 * lerp )
  324. alphaFade 0
  325. sprite cullNear
  326. }
  327. }
  328. }
  329.  
  330. // wolfcam addition, not in q3mme:
  331. //
  332. // player/head/trail
  333. // player/torso/trail
  334. // player/legs/trail
  335. //
  336. // input: origin, angles, velocity, dir (normalized), team, clientnum,
  337. // enemy, teammate, ineyes
  338.  
  339. //player/legs/trail {
  340. // interval 0.1 {
  341. // shader sprites/balloon3
  342. // emitter 0.5 {
  343. // size 6 + 10 * wave( 0.5 * lerp )
  344. // alphaFade 0
  345. // sprite cullNear
  346. // }
  347. // }
  348. //}
  349.  
  350.  
  351. // teleport in effect and sound effect
  352. // input: origin
  353. player/teleportIn {
  354. sound sound/world/telein.wav
  355. // Show the fading spawn tube for 0.5 seconds
  356. //model models/misc/telep.md3
  357. // wolfcam ql uses different model
  358. model models/powerups/pop.md3
  359. //shader teleportEffect // wolfcam for ql don't add shader
  360. emitter 0.5 {
  361. colorFade 0
  362. anglesModel
  363. }
  364. }
  365.  
  366. // teleport out effect and sound effect
  367. // input: origin
  368. player/teleportOut {
  369. sound sound/world/teleout.wav
  370. //Show the fading spawn tube for 0.5 seconds
  371. //model models/misc/telep.md3
  372. // wolfcam ql uses different model
  373. model models/powerups/pop.md3
  374. //shader teleportEffect // wolfcam for ql don't add shader
  375. emitter 0.5 {
  376. colorFade 0
  377. anglesModel
  378. }
  379. }
  380.  
  381.  
  382. // Freezetag thaw
  383. // input: origin, velocity, team, clientnum, enemy, teammate, ineyes
  384. //
  385. // wolfcam: guessing that velocity corresponds to player
  386. //
  387. // player/thawed {}
  388.  
  389.  
  390. // General weapon effects
  391. // flash is a 0.25 second event after a weapon is fired
  392. // fire is a single event when weapon is fired
  393. // impact is for weapons impact on something or explode like grenades
  394. // trail is a single event for weapons without projectiles or a
  395. // constant event when projectile is in motion projectile is for
  396. // rendering the specific projectile
  397.  
  398. // wolfcam: the other ql weapons also available as 'nailgun', 'prox',
  399. // and 'chaingun'
  400. // wolfcam: weapons also have, in addition to /impact scripts, /impactflesh
  401. // scripts. ex: weapon/plasma/impactflesh
  402. // inputs for 'impactflesh' are: origin and dir
  403. //
  404. // If a weapon doesn't have an impactflesh script 'weapon/common/impactFlesh'
  405. // will be checked. 'weapon/common/impactFlesh' would be a good place to
  406. // place custom hit sparks.
  407.  
  408.  
  409. // input: origin, dir, team, clientnum, enemy, teammate, ineyes
  410. //weapon/common/impactFlesh {
  411. // shader flareShader
  412. // size 5
  413. // color 1 0 1
  414. // emitter 4 {
  415. // //origin2 origin2 + lerp * 8
  416. // velocity2 200
  417. // moveGravity 0
  418. // Sprite
  419. // }
  420. //}
  421.  
  422.  
  423. // Bubbles in the water
  424. // input: origin
  425. weapon/common/bubbles {
  426. shader waterbubble
  427. distance 5+rand*10 {
  428. size 1 + rand * 2
  429. random dir
  430. addScale origin dir origin 10 * rand
  431. emitter 1+rand*0.25 {
  432. alphaFade 0
  433. origin2 origin2 + lerp * 8
  434. Sprite
  435. }
  436. }
  437. }
  438.  
  439. // input: origin, team, clientnum, enemy, teammate, ineyes
  440. weapon/rocket/flash {
  441. color 1 0.75 0
  442. size 300 + rand*32
  443. light
  444. }
  445.  
  446. // input: velocity, dir (normalized), rotate, origin, angles, axis, size
  447. //
  448. // no client info rocket projectiles
  449. weapon/rocket/projectile {
  450. // Render the rocket
  451. model "models/ammo/rocket/rocket.md3"
  452. // wolfcam need to do model rotation yourself
  453. rotate time * 1000 / 4
  454. dirModel
  455.  
  456. // Sound generated by the flying rocket
  457. loopSound "sound/weapons/rocket/rockfly.wav"
  458. }
  459.  
  460. // input: origin, angles, velocity, dir (normalized), axis
  461. //
  462. // no client info for rocket trails
  463. weapon/rocket/trail {
  464. // Set the base yellow color
  465. color 1 0.75 0
  466.  
  467. size 200
  468. Light
  469.  
  470. // The standard smoke puff trail thing
  471. color 1 1 1
  472. alpha 0.33
  473. shader smokePuff
  474. rotate 360 * rand
  475. distance 45 {
  476. emitter 2 {
  477. alphaFade 0
  478. size 8 + lerp * 40
  479. sprite cullNear
  480. }
  481. }
  482. }
  483.  
  484. // input: origin, dir
  485. //
  486. // no client info for rocket impact
  487. weapon/rocket/impact {
  488. vibrate 70
  489. sound sound/weapons/rocket/rocklx1a.wav
  490. // Mark on the wall, using direction from parent
  491. shader gfx/damage/burn_med_mrk
  492. size 64
  493. Decal
  494.  
  495. // Animating sprite of the explosion
  496. shader rocketExplosion
  497. size 40
  498. // Will be the light colour
  499. color 1 0.75 0
  500. emitter 1 {
  501. Sprite
  502. // size will goto zero after 0.5 of the time
  503. size 300 * clip(2 - 2*lerp)
  504. Light
  505. }
  506. }
  507.  
  508. // input: origin, team, clientnum, enemy, teammate, ineyes
  509. weapon/bfg/flash {
  510. color 1 0.7 1
  511. size 300 + rand*32
  512. light
  513. }
  514.  
  515. // input: velocity, dir (normalized), rotate, origin, angles, axis, size
  516. //
  517. // no client info
  518. weapon/bfg/projectile {
  519. // ze model
  520. model models/weaphits/bfg.md3
  521. dirModel
  522. // ze flight sound
  523. loopSound "sound/weapons/rocket/rockfly.wav"
  524. }
  525.  
  526. // input: origin, angles, velocity, dir (normalized), axis
  527. //
  528. weapon/bfg/trail {
  529. // World Light
  530. color .2 .9 .3 //// 0.2 0.2 1
  531.  
  532. size 300
  533. Light
  534.  
  535. color .2 .9 .3 //// 0.2 0.2 1
  536. alpha 0.50
  537. shader flareShader
  538. distance 15 {
  539. normalize parentVelocity v0
  540. inverse v0
  541. wobble v0 velocity 5 + rand*10
  542. scale velocity velocity 75 + rand*52
  543. emitter 0.01 + rand*0.55 {
  544. size 10 * ( 1 - 0.5 * lerp * 1.5 ) // dust
  545. colorFade 0.001
  546. moveGravity 10
  547. Sprite
  548. }
  549. }
  550. }
  551.  
  552. // input: origin, dir
  553. //
  554. // no client info
  555. weapon/bfg/impact {
  556. vibrate 100
  557. sound sound/weapons/rocket/rocklx1a.wav
  558. // Mark on the wall
  559. shader gfx/damage/burn_med_mrk
  560. size 32
  561. decal
  562.  
  563. // Animating sprite of the explosion
  564. shader bfgExplosion
  565. size 40
  566. emitter 0.6 {
  567. sprite
  568. }
  569. }
  570.  
  571. // input: origin, team, clientnum, enemy, teammate, ineyes
  572. weapon/grenade/flash {
  573. color 1 0.7 0
  574. size 300 + rand*32
  575. light
  576. }
  577.  
  578.  
  579.  
  580.  
  581. // input: origin, team, clientnum, enemy, teammate, ineyes
  582. weapon/plasma/flash {
  583. color 0.6 0.6 1
  584. size 300 + rand*32
  585. light
  586. }
  587.  
  588.  
  589. // input: origin, angles, velocity, dir (normalized), axis
  590. //
  591. // no client info
  592. weapon/plasma/trail {
  593.  
  594. }
  595.  
  596. // input: origin, dir, surfacetype
  597. //
  598. // no client info
  599. weapon/plasma/impact {
  600. vibrate 10
  601. sound sound/weapons/plasma/plasmx1a.wav
  602.  
  603. shader plasmaExplosion
  604. model models/weaphits/ring02.md3
  605. // Show the ring impact model on a random rotation around it's direction
  606. rotate rand*360
  607. emitter 0.6 {
  608. dirModel
  609. }
  610. size 24
  611. shader gfx/damage/plasma_mrk
  612. Decal energy
  613. }
  614.  
  615. // input: origin, team, clientnum, enemy, teammate, ineyes
  616. weapon/rail/flash {
  617. color 1 0.6 0
  618. size 300 + rand*32
  619. light
  620. }
  621.  
  622. // input: origin, dir, team, clientnum, enemy, teammate, ineyes, surfacetype
  623. weapon/rail/impact {
  624. vibrate 50
  625. sound sound/weapons/plasma/plasmx1a.wav
  626.  
  627. // The white expanding impact disc
  628. rotate rand*360
  629. shader railExplosion
  630. model models/weaphits/ring02.md3
  631. emitter 0.6 {
  632. dirModel
  633. }
  634. size 24
  635. shader gfx/damage/plasma_mrk
  636. Decal energy
  637. }
  638.  
  639. weapon/rail/trail {
  640. size r_railCoreWidth*0.5
  641. shader railCore
  642. emitter cg_railTrailTime * 0.001 {
  643. colorFade 0
  644. Beam
  645. }
  646. shader railDisc
  647.  
  648. pushparent color2
  649. pop color
  650. if cg_oldrail {
  651.  
  652. size r_railWidth*0.5
  653.  
  654. width r_railSegmentLength
  655. emitter cg_railTrailTime * 0.001 {
  656. colorFade 0.1
  657. Rings
  658. }
  659. } else { // stupid RAIL SPIRAL
  660.  
  661. t0 dir
  662. normalize dir
  663.  
  664. perpendicular dir v0
  665.  
  666. scale v0 v0 0 /// 5
  667. size 1.1
  668.  
  669. t1 rand*360
  670.  
  671. repeat ( t0 / 1 ) {
  672. rotatearound v0 dir v1 t1
  673.  
  674. t1 t1 + 0
  675. addScale v1 dir origin loop * t0
  676. add parentOrigin origin origin
  677. emitter 0.6 + loop * t1 * 0 {
  678.  
  679. colorFade 0
  680. Sprite
  681. }
  682. }
  683. }
  684. }
  685.  
  686.  
  687. // input: origin, team, clientnum, enemy, teammate, ineyes
  688. weapon/shotgun/flash {
  689. color 1 1 0
  690. size 300 + rand*32
  691. light
  692. }
  693.  
  694. // input: origin, dir, team, clientnum, enemy, teammate, ineyes, surfacetype
  695. weapon/shotgun/impact {
  696. vibrate 1
  697. // Bullet mark on the wall, shotgun ones are smaller
  698. shader gfx/damage/bullet_mrk
  699. size 4
  700. Decal
  701.  
  702. // explosion cone with animating shader
  703. size 1
  704. shader bulletExplosion
  705. model models/weaphits/bullet.md3
  706. rotate rand*360
  707. emitter 0.6 {
  708. dirModel
  709. }
  710.  
  711. // a single sprite shooting up from impact surface
  712. wobble dir velocity 10 + rand*30
  713. scale velocity velocity 200 + rand*50
  714. size 1 + rand*0.5
  715. shader flareShader
  716. alpha 0.8
  717. color 1 0.6 0.3
  718. emitter 0.6 + rand*0.3 {
  719. moveGravity 200
  720. colorFade 0.6
  721. Sprite
  722. }
  723. }
  724.  
  725.  
  726. weapon/shotgun/trail {
  727. // Yep empty and not called
  728. }
  729.  
  730. // input: origin, dir, team, clientnum, enemy, teammate, ineyes, surfacetype
  731. weapon/machinegun/impact {
  732. soundList {
  733. sound/weapons/machinegun/ric1.wav
  734. sound/weapons/machinegun/ric2.wav
  735. sound/weapons/machinegun/ric3.wav
  736. }
  737. // Bullet mark on the wall
  738. shader gfx/damage/bullet_mrk
  739. size 8
  740. decal
  741.  
  742. // explosion cone with animating shader
  743. size 1
  744. shader bulletExplosion
  745. model "models/weaphits/bullet.md3"
  746. rotate rand*360
  747. emitter 0.6 {
  748. dirModel
  749. }
  750.  
  751. // a single sprite shooting up from impact surface
  752. wobble dir velocity 10 + rand*30
  753. scale velocity velocity 200 + rand*50
  754. size 2 + rand
  755. shader flareShader
  756. alpha 0.8
  757. color 1 0.75 0.6
  758. emitter "0.6 + rand*0.3" {
  759. moveGravity 200
  760. colorFade 0.6
  761. Sprite
  762. }
  763. }
  764.  
  765. weapon/machinegun/trail {
  766. // Empty
  767. }
  768.  
  769.  
  770. // input: origin, team, clientnum, enemy, teammate, ineyes
  771. weapon/gauntlet/flash {
  772. color 0.6 0.6 1
  773. size 300 + rand*32
  774. light
  775. }
  776.  
  777. // input: origin, team, clientnum, enemy, teammate, ineyes
  778. weapon/grapple/flash {
  779. color 1 0.6 0
  780. size 300 + rand*32
  781. light
  782. }
  783.  
  784.  
  785. // Render a cheap red beam for the grapple.
  786. // input: origin, angles, velocity, dir (normalized), axis
  787. weapon/grapple/trail {
  788. size 10
  789. shader mme/red
  790. rotate 60
  791. beam
  792. }
  793.  
  794. // Just use a rocket as a standard grapple model
  795. // input: velocity, dir (normalized), rotate, origin, angles, axis, size
  796. weapon/grapple/projectile {
  797. //Render a rocket as a grapple?
  798. model "models/ammo/rocket/rocket.md3"
  799. dirModel
  800. }
  801.  
  802.  
RAW Paste Data