[T2] Vengeance mod by ZOD - Page 10 - TribalWar Forums
Click Here to find great hosting deals from Branzone.com


Go Back   TribalWar Forums > Current Gaming > Tribes Talk
Reload this Page [T2] Vengeance mod
Page 10 of 32
Thread Tools
Amadeus
VeteranXX
Old
181 - 06-03-2004, 11:09
Reply With Quote
Oh, you can wait for that... somehow, applying the same calculation to reeling in does not only not work, but it also seems to have messed up plain swinging. The interesting thing is that the two aren't (at least shouldn't be) connected. I'm looking into it. Meanwhile, feel free to update, as I might scrap this version too and try something else.

btw which one do you use now?
 
Amadeus is online now
 
Sponsored Links
KillerONE
VeteranX
Old
182 - 06-03-2004, 12:34
Reply With Quote
I think Beta 3 is on there, which is still using the grapple code form Beta 2. The one that pulls you in the direction your pointing, but doesn't drastically alter your direction. Nice smooth use of the grapple. I changed the REEL in to a lower value, but haven't tried it yet (at 3 instead of 5).

I'd like to get the mod at a point where a pickup could occur for some good quality play testing.
 
KillerONE is offline
 
JimBodkins
VeteranX
Old
183 - 06-03-2004, 14:06
Reply With Quote
I would like to know if anyone else is having the same issue with base turrets and vehicles that I am. It may just be me, but if it isnt we are wasting a great deal of time. Tomorrow is friday. No one is going to want to work on this over the weekend although I'm certain no one will want to play T2 over the weekend either.
 
JimBodkins is offline
 
KillerONE
VeteranX
Old
184 - 06-03-2004, 14:08
Reply With Quote
I'll upload Beta 4 then, just for Jim..
 
KillerONE is offline
 
KillerONE
VeteranX
Old
185 - 06-03-2004, 14:14
Reply With Quote
=(ir)= Vengeance - 66.235.201.61:28000

Beta 4 Installed.
 
KillerONE is offline
 
JimBodkins
VeteranX
Old
186 - 06-03-2004, 14:15
Reply With Quote
I'm so glad you did that Killer, thanks. On your server, AA ignores shrikes and plasma takes it out.

It looks like chain and mortar track vehicles also.
 
JimBodkins is offline
 
Last edited by JimBodkins; 06-03-2004 at 14:53..
ZOD
VeteranX
Old
187 - 06-03-2004, 15:03
Reply With Quote
I am making good progress with the missile launcher btw. I have them tracking a laser atm but still some bugs to work out.
 
ZOD is offline
 
Amadeus
VeteranXX
Old
188 - 06-03-2004, 15:13
Reply With Quote
Quote:
Originally Posted by ZOD
I am making good progress with the missile launcher btw. I have them tracking a laser atm but still some bugs to work out.
That's good, I'm eager to try out the rocket pod. In the mean time, let me please you with this piece of code here:

Code:
// We cancel schedules when player switches to another weapon - 
// WeaponImage::onUnmount and DefaultGame::onClientKilled

datablock TargetProjectileData(GrappleBeam)
{
   directDamage = 0.0;
   hasDamageRadius = false;
   indirectDamage = 0.0;
   damageRadius = 0.0;
   velInheritFactor = 1.0;

   maxRifleRange = 250;
   beamColor = "0.1 1.0 0.1";
								
   startBeamWidth = 0.30;
   pulseBeamWidth = 0.20;
   beamFlareAngle = 3.0;
   minFlareSize = 0.0;
   maxFlareSize = 400.0;
   pulseSpeed = 6.0;
   pulseLength  = 0.150;

   textureName[0] = "special/nonlingradient";
   textureName[1] = "special/flare";
   textureName[2] = "special/pulse";
   textureName[3] = "special/expFlare";
   beacon = false;
};

datablock ItemData(GrapplingHook) : TargetingLaser
{
   image = GrapplingHookImage;
   pickUpName = "a grappling hook";
   computeCRC = false;
};

datablock ShapeBaseImageData(GrapplingHookImage) : TargetingLaserImage
{
   item = GrapplingHook;
   projectile = GrappleBeam;
   usesEnergy = true;
   minEnergy = 5;
   cutOffEnergy = 10;

   stateName[3] = "Fire";
   stateEnergyDrain[3] = 3;
   stateFire[3] = true;
   stateAllowImageChange[3] = false;
   stateScript[3] = "onFire";
   stateTransitionOnTriggerUp[3] = "ReelIn";
   stateTransitionOnNoAmmo[3] = "ReelIn";
   stateSound[3] = TargetingLaserPaintSound;
   //stateTimeoutValue[3] = 2.0;
   //stateTransitionOnTimeout[3] = "Deconstruction";

   stateTimeoutValue[5] = 1.5;

   stateName[6] = "ReelIn";
   stateFire[6] = true;
   stateSound[6] = TargetingLaserPaintSound;
   stateAllowImageChange[6] = false;
   stateScript[6] = "onReelIn";
   stateTransitionOnTriggerDown[6] = "Deconstruction";
   //stateTimeoutValue[6] = 2.0;
   //stateTransitionOnTimeout[6] = "Deconstruction";
};

function GrapplingHookImage::onFire(%data, %obj, %slot)
{
   //error("GrapplingHookImage::onFire(" SPC %data.getName() SPC %obj.client.nameBase SPC %slot SPC ")");
   %p = Parent::onFire(%data, %obj, %slot);
   if(isObject(%p))
   {
      %obj.grapplePos = %p.getTargetPoint();
	$GrapplePoint = %obj.grapplePos;
      %dist = vectorDist(%obj.grapplePos , %obj.getPosition());
      if(%dist > 250)
      {
         %p.delete();
         %obj.lastProjectile = "";
         %obj.grapplePos = "";
         return;
      }
	$ropeLength = %dist;
      %obj.grappleObject();
      %p.schedule(300, "delete");
   }
}

function Player::grappleObject(%obj)
{
   if(isObject(%obj))
   {
      if(isEventPending(%obj.grappleSchedule)) 
         cancel(%obj.grappleSchedule);

      if(%obj.getState() !$= "Dead")
      {
	%pos = %obj.getWorldBoxCenter();
	%dist = VectorLen(VectorSub(%pos, $GrapplePoint));
	%vel = %obj.getVelocity();
	%rad = VectorSub($GrapplePoint, %pos);
	%radx = getWord(%rad, 0); %velx = getWord(%vel, 0);
	%rady = getWord(%rad, 1); %vely = getWord(%vel, 1);
	%radz = getWord(%rad, 2); %velz = getWord(%vel, 2);
	if (VectorLen(VectorSub(VectorAdd(%pos, %vel), $GrapplePoint)) > $RopeLength) {
		%radVel = ((%radx * velx) + (%rady * %vely) + (%radz * %velz)) / %dist;
		%force = VectorScale(VectorNormalize(%rad), %radVel);
		
		%obj.SetVelocity(VectorSub(%vel, %force));

	}


         %obj.grappleSchedule = %obj.schedule(250, "grappleObject");
      }
   }
}

function GrapplingHookImage::onReelIn(%data, %obj, %slot)
{
   if(isObject(%obj))
   {
    //  if(isEventPending(%obj.grappleSchedule)) 
         cancel(%obj.grappleSchedule);

      %dist = vectorDist(%obj.grapplePos , %obj.getPosition());
      if(%dist > 250)
      {
         %data.deconstruct(%obj, %slot);
         return;
      }
      %obj.reelIn();
   }
}

$TractorPower = 10;
function Player::reelIn(%obj)
{
   if(isObject(%obj))
   {
      if(isEventPending(%obj.reelSchedule)) 
         cancel(%obj.reelSchedule);

      if(%obj.getState() !$= "Dead")
      {
	$RopeLength = $RopeLength - $TractorPower;
	%pos = %obj.getWorldBoxCenter();
	%dist = VectorLen(VectorSub(%pos, $GrapplePoint));
	%vel = %obj.getVelocity();
	%rad = VectorSub($GrapplePoint, %pos);
	%radx = getWord(%rad, 0); %velx = getWord(%vel, 0);
	%rady = getWord(%rad, 1); %vely = getWord(%vel, 1);
	%radz = getWord(%rad, 2); %velz = getWord(%vel, 2);
	if (VectorLen(VectorSub(VectorAdd(%pos, %vel), $GrapplePoint)) > $RopeLength) {
		%radVel = ((%radx * velx) + (%rady * %vely) + (%radz * %velz)) / %dist;
		%force = VectorScale(VectorNormalize(%rad), %radVel);
		%force = VectorAdd(%force, VectorScale(VectorNormalize(%rad), -$TractorPower));

		%obj.SetVelocity(VectorSub(%vel, %force));

	}


         %obj.reelSchedule = %obj.schedule(250, "reelIn");
      }
   }
}

function GrapplingHookImage::deconstruct(%data, %obj, %slot)
{
   if (isObject(%obj.lastProjectile))
   {
      %obj.lastProjectile.delete();
      %obj.lastProjectile = "";
   }
   %obj.grapplePos = "";
   if(isEventPending(%obj.grappleSchedule)) 
      cancel(%obj.grappleSchedule);

   if(isEventPending(%obj.reelSchedule)) 
      cancel(%obj.reelSchedule);

   %obj.use(%obj.prevWeapon);
}


function mSgn(%value) {

	if (%value == 0) return "0";
	else return %value / mAbs(%value);
}
Currently the line is quite easy to stretch either by jetting or gravity, but the movement itself is probably the closest I can get to T:V's for a time.

Reeling in is a bit weak imo, but setting it higher caused buggy performance for reasons yet unknown. It's not that bad though, it just takes forever.


Sorry about the latency, hope KillerONE isn't tired of updating his server. I'd really like to know how this is functioning in a real game, 'cause I'd hate to leave you guys with some lame buggy crap for a week.
 
Amadeus is online now
 
KillerONE
VeteranX
Old
189 - 06-03-2004, 15:32
Reply With Quote
Added the grapple code to Beta 4.

Someone test.
 
KillerONE is offline
 
JimBodkins
VeteranX
Old
190 - 06-03-2004, 15:39
Reply With Quote
Quote:
Originally Posted by ZOD
I am making good progress with the missile launcher btw. I have them tracking a laser atm but still some bugs to work out.

Great. Then I propose the following.

1) Hook - I just looked at the latest hook. Very slightly different from the current hook. Perhaps a little less energetic. Perhaps let's decide by this evening about the hooks. At this point I could use either. I like the extra energy of the current hook, but the new hook's subtlety is interesting.

2) Rocket Pod - Maybe have ZOD finish (if possible) the Pod this evening. Good to hear it's coming along.

3) Turret Barrels - Maybe take a look at the AA barrel. Should it track vehicles? It doesnt. (I remember the AA being different than the others in some way. In terms of the target detection mechanism).

4) Friday Pack - Perhaps do a pack on Friday for a pickup test on KillerONES server sometime between Friday and Sunday evening.



Comments?
 
JimBodkins is offline
 
Last edited by JimBodkins; 06-03-2004 at 16:04..
JimBodkins
VeteranX
Old
191 - 06-03-2004, 15:50
Reply With Quote
Hook Comments

Beta hook
-------------

I had a nice capping (I'm not a capper) route that used the hook on Titan. The hook made for an interesting exit.

I had a nice 'launch' technique on several maps - kata, titan for example.

Easy (energy) Tarzan swings are not that easy. However, there arent any/many maps in T2 that are similar to the T:V maps that were used to demo the T:V hook. (Lots of overhanging hook points with freespace underneath).


Amadeus hook
--------------

The new hook easy swings well. There arent that many places in T2 to do that.

The 'launch' technique doesnt really work with this hook.

The Titan cap route with hook no longer works.


conclusions
-----------

Beta hook is better as a source of 'speed' and change of direction etc.

The Amadeus hook is better for 'easy' Tarzaning where that is available.



Update
-------

The Amadeus hook can be used in swing cap routes on Titan. The angles are different, the exit speed is lower and the 'launch' range is shorter. But it does work.




I will probably update this post.
 
JimBodkins is offline
 
Last edited by JimBodkins; 06-03-2004 at 16:41..
Amadeus
VeteranXX
Old
192 - 06-03-2004, 16:06
Reply With Quote
Well, the T:V hook shouldn't allow you to gain speed either, only to change directions. Unfortunately that gravity thing is really disturbing when it comes to vertical swings, I'll do my best to get around it. Just keep in mind that grappling something at x speed and slingshotting yourself in the other direction at 2x speed is not supposed to happen, ever.
 
Amadeus is online now
 
ZOD
VeteranX
Old
193 - 06-03-2004, 16:07
Reply With Quote
The code for this new hook has problems. It won;t work properly on a dedicated server because of the use of these two global varibles:

$ropeLength
$GrapplePoint

They affect everyone on the server, not just the player using the grapple. I suggest putting these varibles on the player obj. I have done this but it is not working, and I cannot see why it is not
 
ZOD is offline
 
Amadeus
VeteranXX
Old
194 - 06-03-2004, 16:11
Reply With Quote
I see... maybe something like $ropeLength[%obj] would help? I.e. a separated array with the clients' ID's as indices. Might want to delete them in deconstruct() after the grappling event...
 
Amadeus is online now
 
JimBodkins
VeteranX
Old
195 - 06-03-2004, 16:15
Reply With Quote
Quote:
Originally Posted by Amadeu5
Well, the T:V hook shouldn't allow you to gain speed either, only to change directions. Unfortunately that gravity thing is really disturbing when it comes to vertical swings, I'll do my best to get around it. Just keep in mind that grappling something at x speed and slingshotting yourself in the other direction at 2x speed is not supposed to happen, ever.
Excuse me? Even without reel acceleration (fixed length), if you hook and jet it will increase in speed as it pivots. (Which is what I do - or one thing I do with the 'current' hook). Also with reel, even at fixed reel speed, it will shorten the moment arm and increase the tangential speed. (Otherwise you dont conserve energy). With reel acceleration it will accelerate even faster.

I understand you cant do any of this in a passive system. That is, Tarzan couldnt do any of this. But Tarzan didnt have a source of 'energy' or big motors on his 'vine' that change the vine length.
 
JimBodkins is offline
 
Adept
VeteranXX
Old
196 - 06-03-2004, 16:20
Reply With Quote
the problem with amadeus' hook is that it takes too long to take effect. this may just be a perception issue due to not being able to see it, but its quite annoying. as for not being able to gain speed with it (t:v hook).. im pretty sure you can. its elastic, with a weak reel in, which means that it should be possible to use the elasticity to gain a bit of speed.

also, why were the physics destroyed? its impossible to maintain skiing over 200-250. vengeance isnt t2 base..
 
Adept is offline
 
JimBodkins
VeteranX
Old
197 - 06-03-2004, 16:24
Reply With Quote
Quote:
Originally Posted by DEbig3
the problem with amadeus' hook is that it takes too long to take effect. this may just be a perception issue due to not being able to see it, but its quite annoying. as for not being able to gain speed with it (t:v hook).. im pretty sure you can. its elastic, with a weak reel in, which means that it should be possible to use the elasticity to gain a bit of speed.

also, why were the physics destroyed? its impossible to maintain skiing over 200-250. vengeance isnt t2 base..
The Amadeus hook actually works best with a 'tap' of the fire key and jet. (As I recall). The more you 'fire' the more you interfere with the hook somehow. (So far I like the beta hook a little more even if it probably is a little more energetic than the T:V hook. I can use the Amadeus one). I think people complained about the physics in T:V also. (I think someone mentioned around 300 kph or so in T:V). I read some rationalization about that from KP.
 
JimBodkins is offline
 
Last edited by JimBodkins; 06-03-2004 at 16:39..
KillerONE
VeteranX
Old
198 - 06-03-2004, 16:30
Reply With Quote
Just for coherence.. can we just call it Beta 4 hook and Amadeus hook. This current hook new hook is confusing.
 
KillerONE is offline
 
Adept
VeteranXX
Old
199 - 06-03-2004, 16:41
Reply With Quote
Quote:
Originally Posted by JimBodkins
The Amadeus hook actually works best with a 'tap' of the fire key and jet. (As I recall). The more you 'fire' the more you interfere with the hook somehow. (So far I like the beta hook a little more even if it probably is a little more energetic than the T:V hook. I can use the Amadeus one). I think people complained about the physics in T:V also. (I think someone mentioned around 300 kph or so in T:V). I read some rationalization about that from KP.
numbers between t:v and t2 mean nothing.. i hit a wall when skiing in this, and when i exploit the hook to get back up around 400, i slow down pretty damn quick (without touching ground). thats not cool.

[edit] oh, also, as far as i can tell, holding the fire key is pointless, since you have to press again to release anyways..

[edit #2] that reminds me, take out the switch to the previous weapon, its extremely annoying (and doesnt fit t:v behavior)
 
Adept is offline
 
Last edited by Adept; 06-03-2004 at 16:43..
JimBodkins
VeteranX
Old
200 - 06-03-2004, 16:45
Reply With Quote
Quote:
Originally Posted by DEbig3
numbers between t:v and t2 mean nothing.. i hit a wall when skiing in this, and when i exploit the hook to get back up around 400, i slow down pretty damn quick (without touching ground). thats not cool.

[edit] oh, also, as far as i can tell, holding the fire key is pointless, since you have to press again to release anyways..

[edit #2] that reminds me, take out the switch to the previous weapon, its extremely annoying (and doesnt fit t:v behavior)
With the beta 4 hook, if you hold the fire key you accelerate faster (as I recall). The Beta 4 hook is more energetic and results in MUCH higher speeds.

I was just commenting that others have commented on apparent 'speed' caps in T:V to which KP responded. I believe that is what motivated ZOD to make physics changes. In fact he 'whined' about having to make it 'floaty'.
 
JimBodkins is offline
 
Last edited by JimBodkins; 06-03-2004 at 16:48..
Page 10 of 32
Reply


Go Back   TribalWar Forums > Current Gaming > Tribes Talk
Reload this Page [T2] Vengeance mod

Social Website Bullshit


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


AGENT: claudebot / Y
All times are GMT -4. The time now is 22:10.