I don't need to test my programs. I have an error-correcting modem.
Difference between revisions of "Legacy:Redeemer Style Weapons"
Line 62: | Line 62: | ||
may be to subclass playerpawn to allow direct access to input variables. That includes checking and | may be to subclass playerpawn to allow direct access to input variables. That includes checking and | ||
− | setting. Then one would grab that info and pass it to the [[Legacy:Projectile (UT) | + | setting. Then one would grab that info and pass it to the [[Legacy:Projectile (UT)|projectile]], which would |
calculate the rotation, store it as a [[Legacy:Quaternions In Unreal Tournament|quaternion]] witch does | calculate the rotation, store it as a [[Legacy:Quaternions In Unreal Tournament|quaternion]] witch does |
Latest revision as of 21:46, 19 June 2004
Redeemer Style Weapons[edit]
A page in progress
This is for UT[edit]
Extend Projectile
class MyRedeemer extends Projectile
Add a mesh, usually by addding the following line to the default properties
mesh=lodMesh'(insert mesh name here)'
such as a missle
mesh=lodMesh'botpack.missle'
create a tick function and add code to change the missiles direction as well as manage the playerpawn's
viewtarget
simulated function Tick(float DeltaTime) { if(playerpawn(instigator)!=none) { playerpawn(instigator).viewtarget=self; setrotation(playerpawn(owner).viewrotation); velocitiy = vector(rotation)*250; } else { destroy(); } }
add a destroyed() function to handle the playerpawn and a shockwave
simulated function Destroyed() { playerpawn(instigator).viewtarget = playerpawn(instigator) spawn('shockwave'); Super.Destroyed(); }
i haven't tested it yet, but it's good in concept.
Gimbal lock[edit]
While fixing this seems simple, upon closer inspection, it turns out to be complex. The solution
may be to subclass playerpawn to allow direct access to input variables. That includes checking and
setting. Then one would grab that info and pass it to the projectile, which would
calculate the rotation, store it as a quaternion witch does
not suffer from gymbal lock. a simple conversion to rotator for the rotation and some vector stuff
for the velocity and acceleration, and your done (with the gimbal lock fix at least.)
Comments[edit]
Foxpaw: Some note should be made on this page that it refers to the UT implementation. In UT2003 the redeemer does not track the firer's rotation and instead is essentially a specialized type of player itself.
MythOpus: How do you know this tut in't going to be for the UT2k3 version ? o_O
Foxpaw: The "add code to the tick event to follow direction of player" is the way the Redeemer was done in UT.
MythOpus: Where does it say anything about this tick event here ? lol o_O
Wormbo: Right above Foxpaw's first response: "Add code to the tick event to follow direction of player".
MythOpus: :O Don't I feel smart !
Wormbo: "A page in progress" ? It doesn't look like that. I hope TomAndrews continues this tutorial, otherwise it should probably be tagged with "Delete Me"...
GRAF1K: From TomAndrews:
TomAndrews: I'm working on it now, give me a week and it should be done.
Granted, TomAndrews should have written to the point of his tutorial being of use before uploading, but still... no DeleteMe until the 23rd. ;-)
Dirk Fist: I'd like to make a deemer(UT) that does'nt have gymbal lock
GRAF1K: That's it.
MadNad Well, since its been so long... want to have some fun, give weapons to the deemer in 2k3 :P
TomAndrews: I'm working on it more, but yeah it is for UT. I wish i could do ut2003, but no waay on a 500mhz laptop with 25bmb ram and 8mb video