Announcement

Collapse
No announcement yet.

Entity Velocities

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Entity Velocities

    I've been tossing around the idea of making a sniper game on the FTE engine. The basic premise is an online sniper duel: 2 players, a huge map, and realistic gameplay mechanics. Last man standing wins the duel.

    In keeping with realism, the fired bullets need to have bullet drop from gravity, so that elevation holdovers apply when shooting a long distance. I will do the math to convert quake units to meters to accurately simulate speeds later.

    In my mind, the easiest way of achieving this is by making the bullets an actual moving entity instead of a traceline function.

    Question is this: is there a point where an objects velocity is too fast to be accurately relayed? If the server updates every frame, would your bullet velocity be constrained by the servers frame rate? Or would it simply lose accuracy in where it contacts? A realistic velocity would be well above 10,000 quake units per second I imagine...like I said, I haven't done the math yet.

    I already have some ideas to implement this with traceline if the afore mentioned method won't work reliably across network.

    I haven't gotten far enough in my engine studies to know this yet.
    'Replacement Player Models' Project

  • #2
    @2 players, a huge map,

    Bad idea. When SOCOM FTB1 had online support there were numerous times where myself and 1 other person would end up in a big map like Riverine for FFA. Often you could go almost the entire round without ever seeing the other person. You want small maps, and they should be designed where you can pretty much see from one end to the other but have some tunnels or something to sneak around the map by.

    The below images may be about the same size but the first map was easily half the size of the second

    this was a good ffa map for <= 4 players. To get an idea of scale, the larger tufts of grass on the parapets are roughly player bbox size for this view.


    this was not. To get an idea of scale... that tent on the far left middle held about 5 or 6 players.
    Last edited by MadGypsy; 11-12-2016, 02:59 PM.
    http://www.nextgenquake.com

    Comment


    • #3
      @map size

      I should have stated this is mostly for me and my old man. We enjoy playing long drawn-out matches, finding the perfect vantage point, waiting for the other one to make a slip...I understand not many people like that gameplay. We did this back in the day on rainbow six rogue spear over the LAN line
      'Replacement Player Models' Project

      Comment


      • #4
        Well if you need some map ideas - this map was awesome for 2 players. The player is about the size of the smaller stones. I remember standing behind that really big "stone" in the upper left and it was like standing behind a mac truck.
        Last edited by MadGypsy; 11-12-2016, 03:32 PM.
        http://www.nextgenquake.com

        Comment


        • #5
          unless you're using ODE (which has its own set of issues), every single entity in quake that collides with the world does so by using tracebox/traceline. This is true whether its a shotgun pellet or the engine stepping the entity forwards each frame.
          With that in mind, the only reason to make it an actual entity is if you want it to feel slow.
          when its moving at 10k+ qu/s its probably not ever going to feel slow...
          and client interpolation will be ugly when it appears in one frame and disappears the very next (networking wise, the point of impact is generally sent as eg a separate pointparticles event, its just that you likely won't see the projectile move to there but rather get removed prematurely - because the ssqc tends to not wait a frame before removing, and if it did the entity would appear to slow down for the last frame thanks to it not actually moving as far, which is weird).
          plus if you do make it an entity then antilag stuff gets messy too.
          (and you need to bump sv_maxvelocity quite a lot, too).

          instead I would say to just call traceline yourself in a loop. break the trail up into segments, drop the z value a little for each step, and nudge it sideways slightly to simulate wind, if you want that.
          that's essentually what eg movetype_toss would be doing anyway.

          and yes, as MG says, large maps suck for finding your next victim. If you do go that route, be sure to implement some kind of radar so that you can actually find your victims, otherwise it'll just be a boring 'empty' expanse with very little enemy contact.
          Some Game Thing

          Comment


          • #6
            @gypsy

            Thanks for the map ideas. I was actually thinking of a snow map too.

            @spike

            Ok, thanks for the explanation, good to know. I like the idea of the traceline loop. I'll play around and see if I can't get something to stick. I've noticed that final frame issue with fast moving entities before, now I know why it's happening lol

            The map ideas I've had are very open, as in you will probably see most of the map at any given time. Whoever is careless enough to move out of cover first will likely catch a bullet lol. It's the main reason for going FTE, I want to see if I can get height map working
            'Replacement Player Models' Project

            Comment


            • #7


              This map was awesome for a "capture the flag" style game. Side A starts on the left by the brown rail-car. Side B starts in the big warehouse on the right. The weird, bent gray line cutting the map in half is a skybridge from the warehouse second floor to the other small building second floor. The smaller building was nothing but steps and an alcove... basically a "fancy" way to end the skybridge.

              Maps like these aren't very good for the high paced gameplay quake offers though. It's better for at max a jog but, primarily you want to move slow and sneak around.
              http://www.nextgenquake.com

              Comment


              • #8
                CAx's instagib doesnt use a traceline, it's a projectile. I had to increase the server's maxvelocity to allow the slug to travel 10k qu/s

                Code:
                void()  W_Fire_Neutron =
                {
                	local entity missile;
                	local float n;
                
                	n = random()*3;
                	
                	if (n < 2 ) sound (self, CHAN_WEAPON, "weapons/ric1.wav",1,ATTN_NORM);
                	if (n == 2) sound (self, CHAN_WEAPON, "weapons/ric2.wav",1,ATTN_NORM);
                	if (n > 2 ) sound (self, CHAN_WEAPON, "weapons/ric3.wav",1,ATTN_NORM);
                	
                	missile		 	= spawn ();
                	missile.owner 		= self;
                	missile.movetype 	= MOVETYPE_FLYMISSILE;
                	missile.solid 		= SOLID_BBOX;
                	missile.effects 	= EF_DIMLIGHT;
                	missile.classname 	= "slug";
                	
                	makevectors 	(self.v_angle);
                	
                	missile.velocity 	= aim(self,10000);
                	missile.velocity 	= missile.velocity * 10000;
                	missile.angles		= vectoangles(missile.velocity);
                	missile.touch 		= Neutron_Touch;
                	missile.nextthink 	= time + 5;
                	missile.think 		= SUB_Remove;
                	
                	setmodel	(missile, "progs/w_spike.mdl");
                	setsize 	(missile, '0 0 0', '0 0 0');		
                	setorigin 	(missile, self.origin + v_forward*8 + '0 0 16');
                	        
                   	self.stats_lg_tot	= self.stats_lg_tot + 325;
                	missile.state 		= 1;	
                };
                changing the movetype can make it drop over time/distance.
                www.quakeone.com/qrack | www.quakeone.com/cax| http://en.twitch.tv/sputnikutah

                Comment


                • #9
                  Originally posted by Dutch View Post
                  It's the main reason for going FTE, I want to see if I can get height map working
                  Please document your experience somewhere

                  Sounds like a cool idea for a mod though... just not for everyone. But hey that's why non-commercially driven game design is cool!

                  Comment


                  • #10
                    i believe there is a movetype in darkplaces called BOUNCEMISSILE or something like that (will be usefull with the rook's code not for bounce, but for gravtiy)... sure in FTE you will have something similar. I remember AS VAL/VSS from Stalker SOC
                    the invasion has begun! hide your children, grab the guns, and pack sandwiches.

                    syluxman2803

                    Comment


                    • #11
                      If you do go the entity route, you could also use Gyro. It has gravity, magnetic, wind and other physics for entities.

                      Comment

                      Working...
                      X