This is a test. Test! Consider yourself tested.

Looking for a skilled / experienced scripter that won't fall through

For questions and discussion about UnrealEd, UnrealScript, and other aspects of Unreal Engine design.

Moderators: Semfry, ividyon

xortion
Skaarj Scout Skaarj Scout
Posts: 15
Joined: 26 Oct 2012, 07:11

Subject: Looking for a skilled / experienced scripter that won't fall through

Post Posted: 22 Jun 2013, 00:19

Hello everyone,

I've been working on a project for Unreal Tournament for a while now and I've done most of the scripting and level design for it. To take off some of the load I've tried recruiting a couple other people to help me on the part of both of those activities. Unfortunately I've found that I've been unable to get in contact with either of them as they have either apparently died in front of their computers or have gotten a life. Either way isn't good news for me...Anyway, to summarily put it: I'm looking for someone who can whip up a script for me that I can actually depend on. I've been working so long on this thing that I just want to get it done now, really, and before the next college semester! I'm certainly willing to pay for quality work. So, if anyone is interested, please PM me or add [ES]Sonic the Hedgie or [ES]Xoleras on Steam (either one will provide the same details). Thanks!

P.S. I'd prefer the latter method of contact :)

User avatar Buff Skeleton
>:E >:E
Posts: 4173
Joined: 15 Dec 2007, 00:46

Subject: Re: Looking for a skilled / experienced scripter that won't fall through

Post Posted: 22 Jun 2013, 00:34

Might help if you specify what it is you want scripted.
Image

xortion
Skaarj Scout Skaarj Scout
Posts: 15
Joined: 26 Oct 2012, 07:11

Subject: Re: Looking for a skilled / experienced scripter that won't fall through

Post Posted: 22 Jun 2013, 00:43

Basically I need a vehicle (jet) like TV's that is exclusive to my own project. That's really the basic whole of it. Except that I'd like some additions to that :

-Player enters by Touch or Use
-Adjustable speed
-Speed shown in DrawText
-Changeable mesh

(the jet HUD will change when the player enters)

Extras / Bonus

-ScriptedPawn Jet
-Custom HUD
-Mounted weapon(s) (rockets or bullets will do)
-Collision system (where colliding with the edge of the jet
deflects it, does not make it explode, -health, etc.)
-more?

User avatar makemeunreal
Banned Banned
Posts: 1295
Joined: 20 Mar 2011, 09:20
Contact:

Subject: Re: Looking for a skilled / experienced scripter that won't fall through

Post Posted: 22 Jun 2013, 09:10

https://www.youtube.com/watch?v=VtydOiqFPvU

Dots' advanced vehicles mod, with much more realistic physics. Version 1.5.
http://hyper.dnsalias.net/dl/Vehicles.7z

Dots' Unreal 2 vehicles mod. The Raptor, Juggernaut etc. from Unreal 2 with the physics of the above Vehicles mod. Nicely made.
http://hyper.dnsalias.net/dl/U2Vehicles.7z

Youcan create our own vehicles using the code.
"They let us go about our business here, but it is a farce. I know that they are watching us, controlling us. I believe that this once safe haven is as deadly as the surface planet below."

xortion
Skaarj Scout Skaarj Scout
Posts: 15
Joined: 26 Oct 2012, 07:11

Subject: Re: Looking for a skilled / experienced scripter that won't fall through

Post Posted: 22 Jun 2013, 12:49

Haven't downloaded it yet, but this is works on UT99 as well? I'm on a laptop right now.

gopostal
Skaarj Lord Skaarj Lord
Posts: 152
Joined: 01 Aug 2008, 06:35

Subject: Re: Looking for a skilled / experienced scripter that won't fall through

Post Posted: 23 Jun 2013, 15:34

IIRC the vehicles work but the replication online isn't good, meaning they won't go on servers but will do just fine for SP campaigns.

User avatar Draco Nihil
Skaarj Lord Skaarj Lord
Posts: 197
Joined: 06 Jun 2012, 21:18
Location: Independence, Kansas
Contact:

Subject: Re: Looking for a skilled / experienced scripter that won't fall through

Post Posted: 23 Jun 2013, 17:03

Here's what I had going before I eventually gave up out of depression:

Code: Select all

//=============================================================================
// LandedSkimmer.
//=============================================================================
class LandedSkimmer expands Decoration;

function Landed(vector HitNormall)
{
   SetPhysics(PHYS_None);
}

function Trigger( actor Other, pawn EventInstigator )
{
   Super(Actor).Trigger( Other, EventInstigator);
}

singular function BaseChange()
{
   local Skimmer S;

   if( (Base == None) || (Base == Level) )
   {
      SetPhysics(PHYS_None);
      return;
   }
   else if ( PlayerPawn(Base) != None )
   {
      SetCollision(false, false, false);
      bCollideWorld = false;
      SetCollisionSize(0.000000, 0.000000);
      bHidden = true;
      
      Instigator = PlayerPawn(Base);
      
      S = Spawn(Class'Skimmer.Skimmer',Instigator,'');
      
      if( S != None )
         Destroy();
      else
      {
         Instigator = None;
         SetCollision(true, true, true);
         bCollideWorld = true;
         SetCollisionSize(Class'Skimmer.LandedSkimmer'.Default.CollisionRadius, Class'Skimmer.LandedSkimmer'.Default.CollisionHeight);
         bHidden = false;
         SetBase(None);
      }
      
      return;
   }
   else
   {
      SetPhysics(PHYS_None);
      SetBase(None);
   }
}

function Timer();

function Bump( actor Other );

defaultproperties
{
     bPushable=True
     bStatic=False
     bCanTeleport=True
     bCollideWhenPlacing=True
     bStasis=False
     DrawType=DT_Mesh
     Mesh=LodMesh'Skimmer.SkimmerM'
     CollisionRadius=257.000000
     CollisionHeight=45.000000
     bCollideActors=True
     bCollideWorld=True
     bBlockActors=True
     bBlockPlayers=True
     bProjTarget=True
     Mass=40.000000
}


Code: Select all

//=============================================================================
// Skimmer.
//=============================================================================
class Skimmer extends Projectile;

#exec OBJ LOAD FILE="GenIn.utx" PACKAGE=GenIn

#exec MESH IMPORT MESH=SkimmerM ANIVFILE=Models\SkimmerM_a.3d DATAFILE=Models\SkimmerM_d.3d X=0 Y=0 Z=0
#exec MESH ORIGIN MESH=SkimmerM X=0 Y=0 Z=0 YAW=-64
#exec MESH SEQUENCE MESH=SkimmerM SEQ=All STARTFRAME=0 NUMFRAMES=1

#exec MESHMAP NEW MESHMAP=SkimmerM MESH=SkimmerM
#exec MESHMAP SCALE MESHMAP=SkimmerM X=0.50195 Y=0.50195 Z=1.00391

#exec MESHMAP SETTEXTURE MESHMAP=SkimmerM NUM=0 TEXTURE=gship1
#exec MESHMAP SETTEXTURE MESHMAP=SkimmerM NUM=1 TEXTURE=FireEffect28a

var   SkimmerControls   Avionics;
var()   int   Health;
var()   float   FireRate;
var()   float   AltFireRate;
var   float   Throttle;
var   float   CurrentSpeed;
var   float   LastTickOccurence;

replication
{
   reliable if ( Role == ROLE_Authority )
      Health, Throttle, CurrentSpeed;
}

function Destroyed()
{
   if( PlayerPawn(Owner)!=None )
   {
      Pawn(Owner).DrawType = Pawn(Owner).Class.Default.DrawType;
      Pawn(Owner).Visibility = Pawn(Owner).Class.Default.Visibility;
      if( PlayerPawn(Owner).Health > 0 )
      {
         Pawn(Owner).SetPhysics(PHYS_Falling);
         Pawn(Owner).SetCollision(true, true, true);
         Pawn(Owner).bCollideWorld = true;
      }
   }
   Super.Destroyed();
}

simulated function PostBeginPlay()
{
   if( PlayerPawn(Owner) == None )
   {
      Destroy();
      return;
   }
   else
   {
      Super(Actor).PostBeginPlay();
      if( ROLE == ROLE_Authority )
      {
         Avionics = Spawn(Class'Skimmer.SkimmerControls',Owner,'');
         if( Avionics == None )
         {
            Destroy();
            return;
         }
         else
         {
            Avionics.Skimmer = self;
            Owner.SetCollision(false, false, false);
            Owner.bCollideWorld = false;      
            Owner.DrawType = DT_None;
            Pawn(Owner).Visibility = 255;
            Owner.SetPhysics(PHYS_None);
            Owner.SetLocation(Self.Location);
            Owner.SetBase(Self);
            PlayerPawn(Owner).ViewTarget = Self;
            Enable('Tick');
            Enable('Bump');
            Enable('Touch');
         }
      }
   }
}

simulated function Tick( float DeltaTime )
{
   if( PlayerPawn(Owner) == None )
   {
      Disable('Tick');
      Destroy();
      return;
   }
         
   if( Owner.Base != Self )
   {
      Owner.SetBase(Self);
      Owner.SetPhysics(PHYS_None);
      Owner.SetLocation(Self.Location);
   }

   if( PlayerPawn(Owner).bWasForward )
      Throttle = FClamp( Throttle+0.2*DeltaTime, 0.15, 1.0 );
   if (PlayerPawn(Owner).bWasBack )
      Throttle = FClamp( Throttle-0.2*DeltaTime, 0.15, 1.0 );

   MaxSpeed = 2500*Throttle;
   RotationRate.Pitch = Class.Default.RotationRate.Pitch - VSize(Velocity)*4.5;
   RotationRate.Yaw = Class.Default.RotationRate.Yaw - VSize(Velocity)*4.5;
   DesiredRotation += PlayerPawn(Owner).ViewRotation - PlayerPawn(Owner).DesiredRotation;
   DesiredRotation.Roll = Rotation.Yaw - DesiredRotation.Yaw;
   Acceleration = Vector(Rotation)*MaxSpeed;
   CurrentSpeed = VSize(Velocity)*0.001;
   AutonomousPhysics(DeltaTime);
}

simulated singular function ProcessTouch(Actor Other, Vector HitLocation)
{
   local int HitDamage;

   if( Pawn(Other) != None )
   {
      Hitdamage = VSize(Velocity);
      
      if( HitDamage > 0 )
         Other.TakeDamage(hitdamage, instigator,HitLocation, (35000.0 * Normal(Velocity)), 'crushed' );
   }
}

simulated singular function Bump( Actor Other )
{
   Touch(Other);
}

simulated function SetRoll(vector NewVelocity)
{
   local rotator newRot;   
   
   newRot = rotator(NewVelocity);
   PlayerPawn(Owner).ViewRotation = newRot;
   SetRotation(PlayerPawn(Owner).ViewRotation);
   DesiredRotation = PlayerPawn(Owner).ViewRotation;
}

simulated singular function HitWall (vector HitNormal, actor Wall)
{
   if( !Wall.IsA('BlockAll') )
      Touch(Wall);

   Velocity -= 2 * ( Velocity dot HitNormal) * HitNormal; 
   SetRoll(Velocity);
}

simulated function TakeDamage( int Damage, Pawn EventInstigator, vector HitLocation, vector Momentum, name DamageType)
{
   if( EventInstigator == None )
      EventInstigator = Pawn(Owner);

   if( Role == ROLE_Authority )
   {
      switch(DamageType)
      {
         case('shot'):
         Damage *= 0.25;
         break;
         Default:
         break;
      }
   
      Health -= Damage;
   
      if( Health <= 0 )
      {
         if( Avionics != None )
            Avionics.Destroy();
            
         Owner.TakeDamage(Pawn(Owner).Health*1000, EventInstigator, Owner.Location, VRand()*25000, 'exploded');
         Explode(Location, vect(1.0,1.0,1.0));
      }
   }
}

defaultproperties
{
     Health=853
     FireRate=1.000000
     AltFireRate=1.000000
     Throttle=0.150000
     speed=2500.000000
     MaxSpeed=2500.000000
     Damage=80.000000
     bCanTeleport=True
     bCollideWhenPlacing=True
     bNetTemporary=False
     RemoteRole=ROLE_SimulatedProxy
     LifeSpan=0.000000
     Mesh=LodMesh'Skimmer.SkimmerM'
     CollisionRadius=257.000000
     CollisionHeight=45.000000
     bBlockActors=True
     bBlockPlayers=True
     bProjTarget=True
     bBounce=True
     bRotateToDesired=True
     Mass=1000.000000
     Buoyancy=1000.000000
     RotationRate=(Pitch=15000,Yaw=15000,Roll=5000)
}


Code: Select all

//=============================================================================
// SkimmerControls.
//=============================================================================
class SkimmerControls expands Weapon;

var   Skimmer   Skimmer;

replication
{
   reliable if( Role == ROLE_Authority )
      Skimmer;

}

function inventory PrioritizeArmor( int Damage, name DamageType, vector HitLocation )
{
   return self;
}

function int ReduceDamage( int Damage, name DamageType, vector HitLocation )
{
   return 0;
}

function Destroyed()
{
   if (MyMarker != None )
      MyMarker.markedItem = None;      
   // Remove from owner's inventory.
   if( PlayerPawn(Owner)!=None )
   {
      Pawn(Owner).DrawType = Pawn(Owner).Class.Default.DrawType;
      Pawn(Owner).Visibility = Pawn(Owner).Class.Default.Visibility;
      if( PlayerPawn(Owner).Health > 0 )
      {
         Pawn(Owner).SetPhysics(PHYS_Falling);
         Pawn(Owner).SetCollision(true, true, true);
         Pawn(Owner).bCollideWorld = true;
      }
      Pawn(Owner).DeleteInventory( Self );
   }
}

function PostBeginPlay()
{
   Super(Actor).PostBeginPlay();
}

event TravelPostAccept()
{
   Destroy();
}

//Using postrender instead
simulated event RenderOverlays( canvas Canvas );

simulated event PostRender( canvas Canvas )
{
   if ( PlayerPawn(Owner) != None )
   {
      if( PlayerPawn(Owner).ViewTarget != Skimmer )
         PlayerPawn(Owner).ViewTarget = Skimmer;
   }
}

function SetWeaponStay()
{
   bWeaponStay = false;
}

event float BotDesireability(Pawn Bot)
{
   return -MaxInt;
}

function float RateSelf( out int bUseAltMode )
{
   return -MaxInt;
}

function bool HandlePickupQuery( inventory Item )
{
   return True; //Can't pickup anything when in a vehicle!
}

function Weapon WeaponChange( byte F )
{
   if( PlayerPawn(Owner) != None )
      PlayerPawn(Owner).Weapon = Self;
}
function inventory SpawnCopy( pawn Other );
function SetSwitchPriority(pawn Other);
function GiveAmmo( Pawn Other );
function BecomePickup();
function BecomeItem();
function GiveTo( pawn Other );
function float SwitchPriority()
{
   return -MaxInt;
}
function bool WeaponSet(Pawn Other)
{
   return false;
}
function Weapon RecommendWeapon( out float rating, out int bUseAltMode )
{
   rating = -MaxInt;
   bUseAltMode = 0;
}
function DropFrom(vector StartLocation)
{
   Destroy();
}
function CheckVisibility()
{
   if( PlayerPawn(Owner) != None )
   {
      Owner.DrawType = DT_None;
      Pawn(Owner).Visibility = 255;
   }
}

function Finish();

function Fire( float Value );

function AltFire( float Value );

auto state Pickup
{
   singular function ZoneChange( ZoneInfo NewZone );

   // Validate touch, and if valid trigger event.
   function bool ValidTouch( actor Other )
   {
      return false;
   }
      
   // When touched by an actor.
   function Touch( actor Other );

   // Landed on ground.
   function Landed(Vector HitNormal);

   function CheckTouching();

   function BeginState();

   function EndState();

Begin:
   if( PlayerPawn(Owner) != None )
   {
      Instigator = Pawn(Owner);
      PlayerPawn(Owner).Weapon = self;
      PlayerPawn(Owner).AddInventory( Self );
      GotoState('Idle');
   }
   else
   {
      Instigator = None;
      SetOwner(None);
      Destroy();
   }

Dropped:
   GoTo('Begin');
}

///////////////////////////////////////////////////////
state NormalFire
{
   function Fire(float F)
   {
   }
   function AltFire(float F)
   {
   }

Begin:
   GoToState('Idle');
}

////////////////////////////////////////////////////////
state AltFiring
{
   function Fire(float F)
   {
   }

   function AltFire(float F)
   {
   }

Begin:
   GoToState('Idle');
}

//**********************************************************************************
// Weapon is up, but not firing
state Idle
{
   function AnimEnd()
   {
      Disable('AnimEnd');
   }

   function bool PutDown()
   {
      if( PlayerPawn(Owner) != None )
         PlayerPawn(Owner).Weapon = self;
         
      return False;
   }

Begin:
   Sleep(0.0);
   bPointing=False;   
   Disable('AnimEnd');
}

//
// Bring newly active weapon up
// Bring newly active weapon up
state Active
{
   function Fire(float F)
   {
   }

   function AltFire(float F)
   {
   }

   function bool PutDown()
   {
      return false;
   }

   function BeginState()
   {
      bChangeWeapon = false;
   }

Begin:
   bWeaponUp = True;
   GoToState('Idle');
}

//
// Putting down weapon in favor of a new one.
//
State DownWeapon
{
ignores Fire, AltFire;

   function bool PutDown()
   {
      return false;
   }

   function BeginState();

Begin:
   if( PlayerPawn(Owner) != None )
      PlayerPawn(Owner).Weapon = Self;
      
   GoToState('Idle');
}

function TweenDown();

function TweenSelect();

function PlaySelect();

defaultproperties
{
     bCanThrow=False
     shakemag=0.000000
     shaketime=0.000000
     shakevert=0.000000
     AIRating=0.000000
     RefireRate=0.000000
     AltRefireRate=0.000000
     AutoSwitchPriority=255
     InventoryGroup=255
     bAmbientGlow=False
     bRotatingPickup=False
     RespawnTime=0.000000
     PlayerViewOffset=(X=0.000000,Z=0.000000)
     PlayerViewScale=0.000000
     BobDamping=0.000000
     PickupViewScale=0.000000
     ThirdPersonScale=0.000000
     Charge=1
     ArmorAbsorption=100
     bIsAnArmor=True
     AbsorptionPriority=2147483647
     MaxDesireability=0.000000
     Icon=None
     bHidden=True
     bTravel=False
     RemoteRole=ROLE_DumbProxy
     bHiddenEd=True
     DrawType=DT_None
     Style=STY_None
     Texture=None
     DrawScale=0.000000
     AmbientGlow=0
     bUnlit=True
     bOnlyOwnerSee=True
     bAlwaysRelevant=True
     SoundRadius=0
     SoundVolume=0
     TransientSoundVolume=0.000000
     CollisionRadius=0.000000
     CollisionHeight=0.000000
     bCollideActors=False
     bFixedRotationDir=False
     Mass=0.000000
     RotationRate=(Yaw=0)
     DesiredRotation=(Yaw=0)
}



I stopped working when I realized I'm basically bastardizing code .:..: wrote and I was doing it off the top of my head too.

So yeah, sorry about that. And by no means did this ever work properly online which is another reason why I gave up because dealing with replication for both Unreal 1 and UT99 gave me a serious headache.

As for failing to be in contact you happened to message me at the wrong time and I hadn't noticed you at all (I've mostly been bed ridden for a good few weeks struggling with feeling like shit), then I noticed you somehow got blocked (along with several others not mentioning names obviously) on my account while I was out taking a walk around the block so I guess one of my roommates thought it'd be a fun joke to piss off everyone on my friends list.

I did get your PM on YouTube but I thought I'd respond here seeing you put up a thread here and I feel like someone else should take over because I've got some problems in real life I need to take care of before I drive myself mad.
“I am the dragon without a name...”


Who is online

Users browsing this forum: No registered users and 19 guests

Copyright © 2001-2024 UnrealSP.org

Powered by phpBB® Forum Software © phpBB Limited