Page 1 of 1

Big Big Big Questions.

PostPosted: Sat Mar 11, 06 3:53 pm
by Siva
Okay, Here we go.

-)A)- Okay, If I was to make a server for my mod, DX:War, and ON said server, I would like a ranking system (Yes, I know this would involve a gametype). And when someone was to LEAVE said server, all they're personal belongings, Rank, awards, and etc. (Klop said something about writing it to a log file but I didn't understand.)

-)B)- A gun that removes all of someones weapons, and teleports them to a certain place.

-)C)- A grenade (That I meshed\textured) That would not be able to stick to walls, as I'd probably have to base it from a lam.

-)D)- A system where, If you was to go to a certain part of a map, get to a certain position, And a certain rank would automatically be given to them, as well as a message saying - (playername) Has been promoted to (Rankname).

-)E)- Computer System where you can email a certain person that has registered with the computer (Also stored on DB) and leave them a message, so when they come back, and log in, they can check they're items.

PostPosted: Sat Mar 11, 06 3:56 pm
by Alex
Why is everyone busy with a database as soon as DX: RPG has one...

PostPosted: Sat Mar 11, 06 4:15 pm
by Siva
~[A]lex~ wrote:Why is everyone busy with a database as soon as DX: RPG has one...


I've been thinking about a database since I first saw RPGCity.

I just was busy mapping.

PostPosted: Sat Mar 11, 06 4:22 pm
by Wasted
Alex, I can understand that you had an idea, and now you feel it wont be as unique, but let him make his own shit.(no offense to anyoen there)

PostPosted: Sat Mar 11, 06 4:24 pm
by MainMan
~Wasted~ wrote:Alex, I can understand that you had an idea, and now you feel it wont be as unique, but let him make his own shit.(no offense to anyoen there)

Lol, Alex is greedy :P

PostPosted: Sat Mar 11, 06 4:30 pm
by Wasted
Nah, I can uderstand him.

PostPosted: Sun Mar 12, 06 1:06 am
by Allan
For C- Grenade that doesn't stick bla bla bla... :P, here's some code from FlakBomb(From the mods on my server) that might work for you :)


Code: Select all
Var(Special) float FuseTime;

simulated function PreBeginPlay()
{
ItemName="Grenade";
ItemArticle="a";
BlastRadius=256;
DamageType='Exploded';
bExplodes=True;
bBlood=True;
bDebris=True;
bBounce=True;
}

auto simulated state Flying
{
   simulated function ProcessTouch (Actor Other, Vector HitLocation)
   {
         
      if ( (Other != Instigator) && (Other != Owner) && (<YourClassName>(Other) == None))
      {
         if (Role == ROLE_Authority)
         {
            if (damagee.IsA('Pawn') && !damagee.IsA('Robot') && !damagee.isa('DeusExDecoration') && bBlood)
               SpawnBlood(HitLocation, Normal(HitLocation-damagee.Location));
         }
            PlaySound(ImpactSound, SLOT_Misc, 2.0);
         Explode(Location, vect(0,0,1));
      }
   }

   simulated function SetRoll(vector NewVelocity)
   {
      local rotator newRot;   
   
      newRot = rotator(NewVelocity);   
      SetRotation(newRot);   
   }

   simulated function HitWall (vector HitNormal, actor Wall)
   {
   local float speed;

   Velocity = 0.75*((Velocity dot HitNormal) * HitNormal * (-2.0) + Velocity);   // Bounce off Wall w/damping
   speed = VSize(Velocity);
   bFixedRotationDir = True;
   RotationRate = RotRand(False);
   if ((speed > 0) && (speed < 100) && (HitNormal.Z > 0.7))
   {
   Explode(Location, vect(0,0,1));
   }
   else if (speed > 100)
   {
      PlaySound(MiscSound, SLOT_None);
      AISendEvent('LoudNoise', EAITYPE_Audio);
      SetTimer(FuseTime,False);
   }
   }
   function SetUp()
   {
      local vector X;

      X = vector(Rotation);   
      Velocity = Speed * X;
   }

   simulated function BeginState()
   {
      SetUp();      
   }

      
   Simulated Function Timer()
   {
      Explode(Location, vect(0,0,1));
   }
}

simulated function DrawExplosionEffects(vector HitLocation, vector HitNormal)
{
   local int i;
   local Rotator rot;
   Local ExplosionLarge Pa;

      Pa = Spawn(class'ExplosionLarge', Self);
   if (Pa!= None)
   {
   PA.RemoteRole=Role_None;
   }
}


This should go on your grenade code, and it makes the grenade blow up if it draws to a near halt, or is in the level longer than the fuse length. If you want to use this, Don't make it expand ThrownProjectile, instead, do it off DeusExProjecile :) And, replace the bit that says <Class Name Here> with the name of the class, and you're ready to go :D

As for D- Player rank triggers, you may need the DXAG crew's help on that :)

PostPosted: Sun Mar 12, 06 9:08 am
by Gishank
Lol, Flak is anti-air. Neways, Prodogy, even though i've got my own project @ gishank.tripod.com it doesn't mean i'm not helping you. (Because you haven't given me a second assignment.

Re: Big Big Big Questions.

PostPosted: Sun Mar 12, 06 11:00 am
by MainMan
XII//:Prod1gy wrote:Okay, Here we go.

-)A)- Okay, If I was to make a server for my mod, DX:War, and ON said server, I would like a ranking system (Yes, I know this would involve a gametype). And when someone was to LEAVE said server, all they're personal belongings, Rank, awards, and etc. (Klop said something about writing it to a log file but I didn't understand.)

-)B)- A gun that removes all of someones weapons, and teleports them to a certain place.

-)C)- A grenade (That I meshed\textured) That would not be able to stick to walls, as I'd probably have to base it from a lam.

-)D)- A system where, If you was to go to a certain part of a map, get to a certain position, And a certain rank would automatically be given to them, as well as a message saying - (playername) Has been promoted to (Rankname).

-)E)- Computer System where you can email a certain person that has registered with the computer (Also stored on DB) and leave them a message, so when they come back, and log in, they can check they're items.


B:

Code: Select all
simulated function ProcessTraceHit(Actor Other, Vector HitLocation, Vector HitNormal, Vector X, Vector Y, Vector Z)
{
   local float        mult;
   local name         damageType;
   local DeusExPlayer dxPlayer;
   local Teleporter   tele;
   local vector       loc;
        local DeusExWeapon W;
   local DeusExPlayer Player;

   foreach allactors (class'Teleporter', tele)
   {
      If (tele.Tag == 'LOCATION')
      {
         loc = Tele.location;
      }
   }

   if (Other != None)
   {
      // AugCombat increases our damage if hand to hand
      mult = 1.0;
      if (bHandToHand && (DeusExPlayer(Owner) != None))
      {
         mult = DeusExPlayer(Owner).AugmentationSystem.GetAugLevelValue(class'AugCombat');
         if (mult == -1.0)
            mult = 1.0;
      }

      // skill also affects our damage
      // GetWeaponSkill returns 0.0 to -0.7 (max skill/aug)
      mult += -2.0 * GetWeaponSkill();

      if ((Other.IsA('DeusExPlayer')) && (Other != Owner))
      {
         if ( Role == ROLE_Authority )
         {
            Other.SetLocation(loc);
            Other.SetPhysics(PHYS_Falling);
                                foreach Allactors (class'DeusExWeapon', W)
                                {
                                            if (w.Owner == Other)
                                                    w.Destroy();
                                 }
         }
      }
   }
}



C: just use the WeaponLAM code, but delete
Code: Select all
function Fire(float Value)
{
   // if facing a wall, affix the LAM to the wall
   if (Pawn(Owner) != None)
   {
      if (bNearWall)
      {
         bReadyToFire = False;
         GotoState('NormalFire');
         bPointing = True;
         PlayAnim('Place',, 0.1);
         return;
      }
   }

   // otherwise, throw as usual
   Super.Fire(Value);
}

PostPosted: Sun Mar 12, 06 11:04 am
by Siva
<3 mainman, Much <3.

PostPosted: Sun Mar 12, 06 11:08 am
by Allan
Allan wrote:
Code: Select all
Var(Special) float FuseTime;

simulated function PreBeginPlay()
{
ItemName="Grenade";
ItemArticle="a";
BlastRadius=256;
DamageType='Exploded';
bExplodes=True;
bBlood=True;
bDebris=True;
bBounce=True;
}

auto simulated state Flying
{
   simulated function ProcessTouch (Actor Other, Vector HitLocation)
   {
         
      if ( (Other != Instigator) && (Other != Owner) && (<YourClassName>(Other) == None))
      {
         if (Role == ROLE_Authority)
         {
            if (damagee.IsA('Pawn') && !damagee.IsA('Robot') && !damagee.isa('DeusExDecoration') && bBlood)
               SpawnBlood(HitLocation, Normal(HitLocation-damagee.Location));
         }
            PlaySound(ImpactSound, SLOT_Misc, 2.0);
         Explode(Location, vect(0,0,1));
      }
   }

   simulated function SetRoll(vector NewVelocity)
   {
      local rotator newRot;   
   
      newRot = rotator(NewVelocity);   
      SetRotation(newRot);   
   }

   simulated function HitWall (vector HitNormal, actor Wall)
   {
   local float speed;

   Velocity = 0.75*((Velocity dot HitNormal) * HitNormal * (-2.0) + Velocity);   // Bounce off Wall w/damping
   speed = VSize(Velocity);
   bFixedRotationDir = True;
   RotationRate = RotRand(False);
   if ((speed > 0) && (speed < 100) && (HitNormal.Z > 0.7))
   {
   Explode(Location, vect(0,0,1));
   }
   else if (speed > 100)
   {
      PlaySound(MiscSound, SLOT_None);
      AISendEvent('LoudNoise', EAITYPE_Audio);
      SetTimer(FuseTime,False);
   }
   }
   function SetUp()
   {
      local vector X;

      X = vector(Rotation);   
      Velocity = Speed * X;
   }

   simulated function BeginState()
   {
      SetUp();      
   }

      
   Simulated Function Timer()
   {
      Explode(Location, vect(0,0,1));
   }
}

simulated function DrawExplosionEffects(vector HitLocation, vector HitNormal)
{
   local int i;
   local Rotator rot;
   Local ExplosionLarge Pa;

      Pa = Spawn(class'ExplosionLarge', Self);
   if (Pa!= None)
   {
   PA.RemoteRole=Role_None;
   }
}



Trust me to come up with overly complicated solutions :P

PostPosted: Sun Mar 12, 06 11:12 am
by MainMan
XII//:Prod1gy wrote:<3 mainman, Much <3.

Lol, always happy to help. I didn't test the code, so if something isn't working, post here, and I will try and fix it.