Forum

OrionTF beta

Discuss anything not covered by any of the other categories.

Moderator: InsideQC Admins

Postby ceriux » Wed Apr 28, 2010 9:30 pm

btw i know im a lil late, but this looks sexy wish i had the chance to play.
User avatar
ceriux
 
Posts: 2223
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

Postby scar3crow » Sun May 02, 2010 7:38 pm

Tried it again, with the teamplay settings on. Pretty fun, though it seems like some bots are exceptionally better than others. A single soldier killed me four times in a row, along with three of my teammates, multiple times. I would think it was just me sucking, but none of my bot teammates could stand up to him. He just racked up the frags outside of a spawn room in 2fort5.

Also, I got kicked out of the game for cheating, due to my speed? I don't know, I entered a respawn room, grabbed, some ammo, and was exiting the respawn room when I got kicked from my own game.
...and all around me was the chaos of battle and the reek of running blood.... and for the first time in my life I knew true happiness.
User avatar
scar3crow
InsideQC Staff
 
Posts: 1054
Joined: Tue Jan 18, 2005 8:54 pm
Location: Alabama

Postby Orion » Sun May 02, 2010 8:33 pm

@scar3crow This also happened to me. Often. Mainly if I'm a Scout.
At that time I didn't figure out how to fix that, but I realized that I just needed to change some numbers on the cheat checking function. That function is to prevent players changing their cl_forwardspeed and so to values higher than the class' default speed.

Also, on PlayerPostThink() I added some lines that prevents a player to bunnyhop. Sure he can bunnyhop normally, but it he reaches a certain speed, when he hits the ground, will result in a complete stop, giving him a major disadvantage, depending on the case. The criteria is if he reaches the class' speed + 200 units (say soldier's speed is 240, so the maximum is 440) while bunnyhopping, he'll have a complete stop when landing on the floor. But this won't kick a player out of the server. Also, you may notice some "stops" when you try to wallhug.

I also let the bot's aim a bit less botlike, but I'm waypointing some more maps, and I'll then release a patch. :)
User avatar
Orion
 
Posts: 476
Joined: Fri Jan 12, 2007 6:32 pm
Location: Brazil

Postby Sajt » Sun May 02, 2010 9:59 pm

These Satanic hacks are where (vanilla) Quake shows its age (and inexplicability of some of the programmer's decisions)... The sensible thing to do is to send movement values in the 0-1 range and send the status of the run key, rather than multiplying to get the desired player speed on the client-side. And the equally abominable "anti-bunnyhop" hacks wouldn't be necessary if SV_PlayerPhysics were modified. If you are intending this mod for vanilla engines, it's like the outbreak of world war... senseless and horrifying but there's not much I can do about it. I would like to just run away and pretend this world doesn't exist.
F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.
Sajt
 
Posts: 1215
Joined: Sat Oct 16, 2004 3:39 am

Postby Pulseczar » Mon May 03, 2010 2:15 pm

Just tried to run this in WinQuake. When I spawn a bot, the game crashes with i >= cl.maxclients. I tried setting 'maxclients' but discovered that it doesn't exist in NetQuake.
User avatar
Pulseczar
 
Posts: 37
Joined: Sat Aug 12, 2006 6:45 pm

Postby Orion » Mon May 03, 2010 4:00 pm

Try -listen 16 on the command line.
Then set deathmatch to a value other than zero, teamplay to 1 or 2, and maxplayers to 16. On NQ the command is maxplayers, not maxclients. :wink:
User avatar
Orion
 
Posts: 476
Joined: Fri Jan 12, 2007 6:32 pm
Location: Brazil

Postby Dr. Shadowborg » Mon May 03, 2010 4:25 pm

Forgot to mention it in my earlier post, but scar3crow's post reminded me, I too got kicked for speed cheating a few times (even though I wasn't), seemed to happen on any class.
User avatar
Dr. Shadowborg
InsideQC Staff
 
Posts: 1110
Joined: Sat Oct 16, 2004 3:34 pm

Postby Spike » Mon May 03, 2010 4:41 pm

SV_PlayerPhysics? DIE! DIE HORRIBLY! SERIOUSLY, DIE!!!

That extension is an abomination that mucks up prediction big time.

If you want to prevent QW-style acceleration in zquake/mvdsv/fte just set pm_bunnyspeedcap 1
Same physics, no bunnyhop acceleration.
Note that you can still propel yourself quickly using rockets, but you'll slow down again if you turn... At least I think you will.

Speedcheating in QuakeWorld is detected by checking the duration of the movement frame which the client sends to the server. Its not due to your actual speed (as that would break as soon as you bunny).
In other words: lower your client's framerate (or packetrate in clients that support that).
If you're running the mod in DP, you need to reduce the server's ticrate down to no more than 77 tics per second, I assume.
Spike
 
Posts: 2892
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Postby Orion » Mon May 03, 2010 5:04 pm

Spike wrote:If you want to prevent QW-style acceleration in zquake/mvdsv/fte just set pm_bunnyspeedcap 1
Same physics, no bunnyhop acceleration.
Note that you can still propel yourself quickly using rockets, but you'll slow down again if you turn... At least I think you will.


OMG! *facepalm*
The mod is NQ-only, but if I host it on an FTE dedicated server, any QW client can join. And this command is also on FTE. :)
So I'm gonna take out my server-side bunny limiter. But the speed cheat check will be still there. I raised some numbers a bit, and when I played, at least I didn't get kicked on a 15-minute match, but I gotta test it again to guarantee. Because anyone can change their cl_forwardspeed and so to values higher than their class' speed, and this function will reset the commands to the class' original speed and if that happen repeatedly, that player is kicked from the server.

At least when I play on DP or FTE, these commands are latched, as they're stuffcmd()'d.

EDIT: Forget to mention that the speed cheat is checked every 2 seconds. It's not checked every frame, otherwise you'd be kicked in a matter of seconds. I just made the function less sensible.
User avatar
Orion
 
Posts: 476
Joined: Fri Jan 12, 2007 6:32 pm
Location: Brazil

Postby Spike » Mon May 03, 2010 6:30 pm

How do you measure speed?
Does this also consider rocket impacts on people running? Gravity?
Spike
 
Posts: 2892
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Postby Orion » Mon May 03, 2010 6:45 pm

Actually I didn't made the code, I taken it from TF source code and adapted it to my mod.

Code: Select all
void() CheckSpeedHack =
{
   local float tf, pf;
   local vector vplf, vf, ang;
   
   self.nextthink = time + 2;
   
   if (self.owner.deadflag)
      return;
   
   if (!(self.owner.flags & FL_ONGROUND) || self.velocity_z != 0)
      return;
   
   vplf = self.owner.velocity;
   
   ang = self.owner.v_angle;
   ang_x = ang_z = 0;
   makevectors (ang);
   
   vf = v_forward;
   vf_z = 0;
   
   vf = normalize(vf);
   
   tf = (vplf_x * vf_x) + (vplf_y * vf_y);
   
   pf = self.owner.speed + 200;
   
   if (tf > pf)
   {
      pf = pf + 200;
      
      if (tf > pf)
      {
         dprint (self.owner.netname);
         dprint (" had his speeds reset\n");
         self.nextthink = time + 2;
         self.owner.cheat_lev = self.owner.cheat_lev + 300;
      }
      else
      {
         dprint (self.owner.netname);
         dprint (" had his speeds cautiously reset\n");
         self.nextthink = time + 3;
         self.owner.cheat_lev = self.owner.cheat_lev + 150;
      }
      
      SetSpeed (self.owner, self.owner.speed);
   }
   
   if (self.owner.cheat_lev > 1200)
   {
      self.owner.cheat_lev = 0;
      
      bprint (self.owner.netname);
      bprint (" has been kicked for cheating\n");
      sprint (self.owner, "You have been kicked for cheating, because of your speed.\n");
      stuffcmd (self.owner, "disconnect\n");
   }
};


It only works if you're on the ground. You can still move quickly via a rocket-jump, grenade-jump, gun knockbacks and such.
User avatar
Orion
 
Posts: 476
Joined: Fri Jan 12, 2007 6:32 pm
Location: Brazil

Postby Orion » Mon Aug 16, 2010 7:48 pm

OK I finally decided to update this.
There are now 18 waypointed maps in total, and that visible weapon bug was fixed. It's now handled by 'temp1' cvar.
Also detpacks will now destroy walls, grates etc.

File (10mb):
http://www.quaketastic.com/upload/files/multiplayer/mods/oriontf_beta2.zip
User avatar
Orion
 
Posts: 476
Joined: Fri Jan 12, 2007 6:32 pm
Location: Brazil

Postby Team Xlink » Mon Aug 16, 2010 10:38 pm

Orion wrote:OK I finally decided to update this.
There are now 18 waypointed maps in total, and that visible weapon bug was fixed. It's now handled by 'temp1' cvar.
Also detpacks will now destroy walls, grates etc.

File (10mb):
http://www.quaketastic.com/upload/files/multiplayer/mods/oriontf_beta2.zip


So does this mean the DP_SV's aren't required anymore?

Or is DP_CHECKEXTENSIONS, used?

Or am I just talking non sense and none of what I typed is relevant to it at all?
Team Xlink
 
Posts: 368
Joined: Thu Jun 25, 2009 4:45 am
Location: Michigan

Postby Orion » Mon Aug 16, 2010 10:45 pm

It uses DP_CHECKEXTENSIONS. :)
You can run it on practically any engine, except regular WinQuake (you'll get skin taller than 300 errors), but WQPro will run fine.

If you run it on DarkPlaces or FTE, the only thing that changes is visible weapons support, just set 'temp1' to 1.
User avatar
Orion
 
Posts: 476
Joined: Fri Jan 12, 2007 6:32 pm
Location: Brazil

Re: OrionTF beta

Postby r00k » Tue Aug 17, 2010 12:58 am

Orion wrote:The mod also features visible weapons, which are separate weapon models from the player. Unfortunately, if don't play on DarkPlaces or FTE you'll get a bug like this in 1st person view


Can't you just stuffcmd to all clients r_drawviewmodel 0 ?
r00k
 
Posts: 1110
Joined: Sat Nov 13, 2004 10:39 pm

PreviousNext

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest