UT 2k3/2k4 RainbowSix mute would like some testers

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

Silver_Ibex

Member
Feb 27, 2001
654
0
16
Meowcat, I really like what you have done with the vehicles :cool: the new skin on the humvees is sweet, and the helicopter feels like a helicopter :2thumb:

Awhile-back Eric-Red gave me full permission to port his Little Bird helicopters over to UT2k4 from OFP, I got the models into Milkshape with the textures but lacked the time and vehicle code knowledge to write the mutator.

Seeing that you already have the helicopter code, would you be interested in helping bring his little birds to UT2k4?

[SCREENSHOT]http://www.silveribex.com/mt/archives/EricRedLBHelo01.gif[/SCREENSHOT]

I can send you the link for the the Milkshape model files, if you are interested.
 
Last edited:

zeep

:(
Feb 16, 2001
1,741
1
36
Visit site
Psych i understand your points. I wouldn't mind testing such an aim system if it was programmed.

Just a small thing with jumping; I think for me personally i've established a bond with jumping in all games. (I'm not talking about bunnyhopping!). Jumping can give a creative player a nice position in a map where other maybe don't go. I don't mean mapbugging though. From the old days since i started playing computer games many games had 'secrets'. Duke3d, thief etc. A player could search here and there and maybe find a hidden ledge, room, etc. This instinct to 'search' has kept with me in all other games. In inf i also like to explore maps, be it for betatesting or normal play. Many locations may not be a mapbug but require skill to get to, that is a challenge i also like.

Now maybe the above is an extreme, but it is dynamic gameplay to have to jump across ledges, maybe try to jump on that wall so you can walk across it a bit and flank the tango who's not expecting you to come from that side. I think that having an auto-jump will dumbify the dynamic a bit and probably force mappers to make maps accordingly. A bit dull.

Anyway, climbing would spice things up on the other hand.

I guess the thing is, i don't want to be forced to move in a certain direction, cross a ledge in a certain way or climb over a wall only at a certain point. If i could walk over the wall in real life, i want to be able to do it in-game too.


Anyway, every option would have to be tested in-game. You can only think and discuss so much, at some point you have to experience it. New ideas will come from that, alternatives to rules, new input.. It's a creative process, it needs fuel.
 
Apr 21, 2003
2,274
2
38
Europe
zeep said:
Psych i understand your points. I wouldn't mind testing such an aim system if it was programmed.
If. It's not that I advocate it, maybe it wont work out well, but the good is, that it makes you not to care about weapon positions, it is operated more intuitive.


zeep said:
Just a small thing with jumping; I think for me personally i've established a bond with jumping in all games. (I'm not talking about bunnyhopping!). Jumping can give a creative player a nice position in a map where other maybe don't go.
Climbing has defenitely the priority on this case, but I agree, jumping should be a key. I mean where is the problem, since it is not such an important movement? It doesn't have to be the Space key, but some other, which is used just sometimes.

I like games with a ninja like recon type thing, to jump and climb around, but that is exactly the thing, the jumping is only usefull with a light gear.
A recon can take a run up (run movement, not fast walk) and jump over a gap of at most 2 meters.
An operative with a medium gear could make nothing more than like an unusually large "jumpy" step forward, of slight more than a meter distance.
A heavy amored operative simply can't jump.
 

meowcat

take a chance
Jun 7, 2001
803
3
18
Updated version of YARM mod posted on August 30th 2008. See first post for download link or this other thread with screen shots and information. Included in this version is a INF 2.75 style mutator.....
 

Corporal_Lib [BR]

Brazilian Graphic Designer & Gun Nut {=)
Wohaaa...nice to see that you´re still working on YARm, Meowcat!!!
Gotta reinstall UT2k4 to enjoy this new version!!!

BTW: is there a ini or script where we can change the weapons ironsights offset? The MP5´s ones are a lil down (the ring is half above the diopter hole, hidding the front mass)
..errr... and can we disable (toggle on off) the crosshairs for TD/R6 and COD4style?

And where are the R6 style Sp maps? (the destroyer mission, the jungle rescue mission etc)???
 
Last edited:

meowcat

take a chance
Jun 7, 2001
803
3
18
Howdy Corporal_Lib, I ended up removing the SP maps cause I just did not have the time to make them into something that "felt right" when playing. I may package them up separately in the future, not really sure.

As for the crosshairs, if you type "set infPawn bSpecialCrosshair false" in the INF mute or "set yarmCODpawn bSpecialCrosshair false" in the COD mute, that should turn off the coded in crosshairs (but you will then still have to manually turn off the weapon's crosshairs from the normal HUD/Weapons configuration menu).

and Nuts about the iron sights, I forgot to check all of those again... well unfortunately not much I can do about those yet, I'll ad that to my list for the next version as its not too difficult to make those into an .ini configurable item.
 

Corporal_Lib [BR]

Brazilian Graphic Designer & Gun Nut {=)
Those maps (SP) were embebed in YARM117, I have them backuped somewhere... they weren´t perfect, but were fun... If I "transplanted" those maps to YARM 126 would they work or the updates could break their scripts? (better wait for the updated and finished maps, lol) ;)

Thanks for the codes, they´ll be usefull for toggling on and off the animated crosshairs!

And I´ve only noticed this misaligned ironsight in the MP5 variants, and the shotties don´t align the irons, they stop on high ready, all the rest of the weapons are fine!!!

But the MI-4 chopper still doesn´t fire rockets =( (and we need a MBT to replace the UT2K4 futuristic tank)

Keep up the great work, Meow, this is getting beter and better! (now I´ll have some fun playing YARM on DM_Blackhawk and other Angelheart´s masterpieces maps)
 

meowcat

take a chance
Jun 7, 2001
803
3
18
I still have not updated the MI-4 to fire rockets, but I did include a MBT (Abrams) in the latest version of TD Vehicles, check the link in my signature.
 

Corporal_Lib [BR]

Brazilian Graphic Designer & Gun Nut {=)
Yeah, but how can we replace the UT2K4 tank for the Abrams? The TD vehicle mutator only list the cycle, IFAV, hummer and chooper to replace UT ones... (I´m using the latest TD vehicles mutator in your sig)

Errr...I see, your sig leds to TDvehicles110..the latest is 120!!!! (you gotta update your sig ;D

Edit: NIIIIICE TANK... now onslaught got a whole new face/feel!!!

But those codes for toggling off crosshair only worked with CODpawn (but it kept reset everytime I respawn)... the TD and INF seems unaffected (there´s a syntax complaing unrecognised class)
 
Last edited:

Silver_Ibex

Member
Feb 27, 2001
654
0
16
How about some free-floating 3D iron sights like Infiltration 2.9, attached is a small tec demo showing how it can be easily done in UT2k4, I sub classed the Yarm guns so you will need the newest Yarm to play it.

Place the files in the UT2k4 system folder.

To get it working how it should, in UT2k4 just chose Game type "Ibex Style Cam" and use mutator "IronArena" to get the guns, I have not tested it with other mutators so best not to have any other mutators running while viewing the demo.

Weapons always bob in the players view, this is bob without always rocking the camera,
Guns free float so recoil is less jarring and pointing the gun feels more “real”.

When eyes are locked looking down the sights, the aim drifts depending on players stance and speed.

To really appreciate the difference between this method and regular UT2k4, Type in "togglesv" command to switch between old UT2k4 style, and new free aiming style, this lets you compare the difference between them.

Also you can press the F4 key to see the third person over the shoulder view, not much use for a tactical shooter, but I left the code in, since it is just a tec demo, this third person camera could be good for something like a “Crimson Land” style monster blasting game.


Wish list of Features I think it could still use
· Brace weapon (Need to port the Brace weapon code over from UT99, so weapons can be braced against solid surfaces).
· Jamming (Weapon jamming variable, reloading or cocking clears weapon jams, like I did for UT99).
· Speed toggle (Walk key should toggle pawn between running/walking so you do not have to hold it).

Comments and suggestions feedback welcome
 

Attachments

  • CameraAndSightTest01.zip
    23.8 KB · Views: 7
  • Shot00013.jpg
    Shot00013.jpg
    23.7 KB · Views: 37
  • Shot00015.jpg
    Shot00015.jpg
    31.7 KB · Views: 32
  • Shot00008.jpg
    Shot00008.jpg
    32.5 KB · Views: 37
Last edited:

meowcat

take a chance
Jun 7, 2001
803
3
18
@Silver_Ibex: This is very, very cool! Have you tested this in a LAN situation? I took a look at the code and nearly kicked myself, the solution to the free aim is so simple! I had always been afraid that by implementing free aim it would require me to replicate yet another rotator or vector to take into account the offset between camera angle and weapon direction, it never even occurred to me to simply lag the clientside camera rotation... your method should still have the client's shots on the server going the correct direction. More comments to follow, but boy was this nice! (Even works well for the default UT2k4 weapons!)
 

Silver_Ibex

Member
Feb 27, 2001
654
0
16
I have not had a chance to play test this Pawn on a LAN yet, but I am betting there will not be any problem there with the offset FX, since it has worked for me in the past on other custom Pawns, but still would be good to check this one on a LAN anyways :D

Can you help with the weapon bracing code? The code I used for UT99 does not perform the same in UT2k4, I spent a long time hacking away at it trying to get it to work right, and ended up just commenting it out for the demo till a solution can be found.

It needs to find if the player is facing against a chest high solid object or wall corner/side, taking into account crouching, so players can brace against low objects if they crouch down, and then return true if there is a solid surface/actor there.
 
Last edited:

Corporal_Lib [BR]

Brazilian Graphic Designer & Gun Nut {=)
Ohhhh Boy, free aim for UT2K4 and YARm... I just wet my pants!!! Did you correct the aim offset of the MP5´s? The rear sight was a lil upped and obstructed the front sight in ironsght mode!!!
Silver, you´re da man..I´m still waiting for your driveble Humvee for INF COOP maps!!! (hint hint)
 
Last edited:

meowcat

take a chance
Jun 7, 2001
803
3
18
Freeaim test version available

Ok I have the test IronSights/Freeaim version/patch up here (SI, this is the same one I linked you to). This uses the freeaim code you provided Silver_Ibex, but it's integrated into the custom player controller class rather than pawn.

The console commands for activating freeaim (and switching iron sight mode on/off) are in the readme file. I also retweaked some of the iron sight settings.

I have an INF style freeaim option in there, as well as a few other settings.

[EDIT] I changed the link to a much improved version of the freeaim code as of Nov 16th 2008.
 
Last edited:

Silver_Ibex

Member
Feb 27, 2001
654
0
16
Some more suggestions :D

I adjusted the CalcYawInertia and CalcPitchInertia script slightly in the YarmPlayer class

Code:
// added Nov 11 2008 to support freeaim
simulated final function float	CalcYawInertia(float dt, float FrictionFactor, float OldValue, float NewValue){
	local float	Friction;
    if( bINFSRot){
      if(abs(OldValue) < maxYawFAdiff) return NewValue;
      else if(OldValue > 1) return NewValue + (OldValue - maxYawFAdiff);
      else return NewValue + (OldValue + maxYawFAdiff);
    }else{
    	Friction = 1.f - FClamp( (0.02*FrictionFactor) ** dt, 0.f, 1.f);

        if(abs(OldValue) <= (maxYawFAdiff / 7)) return NewValue;//placed by Ibex, still camera when close to center
    	else if(abs(OldValue) <= maxYawFAdiff) return	OldValue * Friction  + NewValue;
    	else if(OldValue >= 1) 		  return 	NewValue + (OldValue - maxYawFAdiff);
        else 				  return 	NewValue + (OldValue + maxYawFAdiff);
	}
}
simulated final function float	CalcPitchInertia(float dt, float FrictionFactor, float OldValue, float NewValue){
	local float	Friction;
    if( bINFSRot){
      if(abs(OldValue) < maxPitchFAdiff) return NewValue;
      else if(OldValue > 1) return NewValue + (OldValue - maxPitchFAdiff);
      else return NewValue + (OldValue + maxPitchFAdiff);
    }else{
    	Friction = 1.f - FClamp( (0.02*FrictionFactor) ** dt, 0.f, 1.f);

        if(abs(OldValue) <= (maxPitchFAdiff / 7)) return NewValue;//placed by Ibex, still camera when close to center
    	else if(abs(OldValue) <= maxPitchFAdiff) return	OldValue * Friction  + NewValue;
    	else if(OldValue >= 1) 		  return 	NewValue + (OldValue - maxPitchFAdiff);
        else 				  return 	NewValue + (OldValue + maxPitchFAdiff);
	}
}

And am currently using the defaultproperties set at
Code:
     CamRotationInertia=3.500000
     maxPitchFAdiff=3500
     maxYawFAdiff=4000

I would suggest removing the camera walkbob, but keep the weapon mesh bob and have it always on. Makes the front and rear sights bounce unaligned when moving, so they feel more realistic.

To remove the camera walk bob while keeping the weapon mesh bob I made the following changes.

In the YarmPlayer class at the bottom of function CalcFirstPersonView I removed the "+ Pawn.WalkBob" changing it from

Code:
    CameraLocation = CameraLocation + Pawn.EyePosition() + Pawn.WalkBob + ShakeOffset.X * x + ShakeOffset.Y * y + ShakeOffset.Z * z + AmbShakeOffset;

to

Code:
    CameraLocation = CameraLocation + Pawn.EyePosition() + ShakeOffset.X * x + ShakeOffset.Y * y + ShakeOffset.Z * z + AmbShakeOffset;


then in the YarmPawn class I made the following changes

removed the + WalkBob so the camera will not rock up and down
Code:
simulated function vector EyePosition(){
	local vector X, Y, Z, tot;
    local coords bonepos;
	if (abs(CurrLean)>0.02){
        GetAxes(Rotation,X,Y,Z);
        tot = (14*Y);//Lrightvect.y
//Ibex removed the + WalkBob so the camera will not rock up and down
	    //return EyeHeight * vect(0,0,1) + WalkBob + tot*CurrLean + abs(Currlean)*vect(0,0,-7);
	    return EyeHeight * vect(0,0,1) + tot*CurrLean + abs(Currlean)*vect(0,0,-7);
	}
    else if(bPerformingAnimMove){
        bonepos = GetBoneCoords(HeadBone);
        //rootpos = GetBoneCoords(RootBone);
       return ((8*bonepos.Zaxis) + bonepos.origin - location);
	}else return EyeHeight * vect(0,0,1); // + WalkBob;
}

made weapon mesh bob always be on for this pawn type
Code:
simulated function vector CalcDrawOffset(inventory Inv){
	local vector DrawOffset;
	local coords bonepos;
	local vector X,Y,Z, tot;

	if ( Controller == None )
		return (Inv.PlayerViewOffset >> Rotation) + BaseEyeHeight * vect(0,0,1);

	DrawOffset = ((0.9/Weapon.DisplayFOV * 100 * ModifiedPlayerViewOffset(Inv)) >> GetViewRotation() );
	if ( !IsLocallyControlled() )
		DrawOffset.Z += BaseEyeHeight;
	else if(bPerformingAnimMove){
        bonepos = GetBoneCoords(HeadBone);
        //rootpos = GetBoneCoords(RootBone);
       return ((8*bonepos.Zaxis) + bonepos.origin - location);
	}else{
	     if (abs(CurrLean)>0.02){
            GetAxes(Rotation,X,Y,Z);
            //tot= (Lrightvect.y*Y + Lrightvect.z*Z) * CurrLean;
            tot = (14*Y)*CurrLean + abs(Currlean)*vect(0,0,-7);
    	    DrawOffset += tot;
	     }
	     DrawOffset.Z += EyeHeight;
            // gam ---
//Ibex removed this so weapon mesh bob is always on for this pawn type
            //if( bWeaponBob ) 
		    DrawOffset += WeaponBob(Inv.BobDamping);
            // --- gam
            DrawOffset += CameraShake();
	}
	return DrawOffset;
}


and at the bottom of the function CheckBob

Code:
// overwritten to add an X component to the bobbing while moving
function CheckBob(float DeltaTime, vector Y)
{
	local float Speed2D;
	local vector X;
    local float OldBobTime;
	local int m,n;

	OldBobTime = BobTime;
    //if( !bWeaponBob || bJustLanded )
    if( bJustLanded )
    {
		BobTime = 0;
		WalkBob = Vect(0,0,0);
        return;
    }
	Bob = FClamp(Bob, -0.01, 0.01);
	if (Physics == PHYS_Walking )
	{
		X = Vector(Rotation);
        Speed2D = VSize(Velocity);
		if ( Speed2D < 10 )
			BobTime += 0.2 * DeltaTime;
		else
			BobTime += DeltaTime * (0.3 + 0.7 * Speed2D/GroundSpeed);
			//BobTime += DeltaTime * (0.3 + 0.9 * Speed2D/GroundSpeed); // speed this up a tad
		WalkBob = Y * Bob * Speed2D * sin(8 * BobTime) + X * Bob * Speed2D * sin(16 * BobTime);//
		AppliedBob = AppliedBob * (1 - FMin(1, 16 * deltatime));
		WalkBob.Z = AppliedBob;
		if ( Speed2D > 10 )
			WalkBob.Z = WalkBob.Z + 0.75 * Bob * Speed2D * sin(16 * BobTime);
	}
	else if ( Physics == PHYS_Swimming )
	{
		BobTime += DeltaTime;
		Speed2D = Sqrt(Velocity.X * Velocity.X + Velocity.Y * Velocity.Y);
		WalkBob = Y * Bob *  0.5 * Speed2D * sin(4.0 * BobTime);
		WalkBob.Z = Bob * 1.5 * Speed2D * sin(8.0 * BobTime);
	}
	else
	{
		BobTime = 0;
		WalkBob = WalkBob * (1 - FMin(1, 8 * deltatime));
	}
////////////////////////////////////////////////////////////////////////
//set the bob time so it plays the sounds properly
	OldBobTime = BobTime;
////////////////////////////////////////////////////////////////////////
    //here is the stuff from UnrealPawn CheckBob
    if ( (Physics != PHYS_Walking) || (VSize(Velocity) < 10)
		|| ((PlayerController(Controller) != None) && PlayerController(Controller).bBehindView) )
		return;

	m = int(0.5 * Pi + 9.0 * OldBobTime/Pi);
	n = int(0.5 * Pi + 9.0 * BobTime/Pi);

	if ( (m != n) && !bIsWalking && !bIsCrouched )
		FootStepping(0);

//Ibex Removed the !bWeaponBob so it still plays the sound 
	//else if ( !bWeaponBob && bPlayOwnFootSteps && !bIsWalking && !bIsCrouched && (Level.TimeSeconds - LastFootStepTime > 0.35) )
	else if ( bPlayOwnFootSteps && !bIsWalking && !bIsCrouched && (Level.TimeSeconds - LastFootStepTime > 0.35) )
	{
		LastFootStepTime = Level.TimeSeconds;
		FootStepping(0);
	}
}

In the weapon class defaultproperties the BobDamping variable tells it how much to make the sights bounce around, so this can be adjusted for each weapon model to an amount that suits the mesh.
 
Last edited:

Corporal_Lib [BR]

Brazilian Graphic Designer & Gun Nut {=)
BUMP!!! Meowcat, I´ve downloaded recently UClassic, a mod for UT2K4 that tries to recreate Unreal experience in UT2K4... but I´d like to play it the same way we´ve been playing Unreal with INF COOP, so could you tell (or do the code for) a way to integrate YARM models and weapons with this SP mod (sort of an replacement mini-mod or maybe a auxiliary mutator to integrate them..) Pleeeeease 8D
Link to the mod:
http://www.uem.at.gg/

(I think Psychomorph is going to love it)
 
Last edited:

meowcat

take a chance
Jun 7, 2001
803
3
18
@Corporal_Lib[BR]: I could not seem to download that mod, is there a better link to it at some site like FileFront?

@Silver_Ibex: Thanks for the code fixes & suggestions. I should be able to implement in the next revision.

I've been working on a little GoldenEye64 to UT2k4 mod so some of my time has been split between that and working on a couple of levels (the full archives from GE64, and probably some sort of village in winter with buildings similar to INF-ExtremePrejudice).