From 3bf4dafa0d76af28cef3e85d4b00eb62fb3823ca Mon Sep 17 00:00:00 2001 From: MirceaKitsune Date: Sun, 17 Jul 2011 01:03:44 +0300 Subject: [PATCH] Limit how often the Grabber's beam effect is sent (lightning bolt from the weapon to the linked hook). It was being sent each frame, choking the network in multiplayer. --- data/qcsrc/server/g_grabber.qc | 9 +++++++-- data/qcsrc/server/tturrets/units/unit_phaser.qc | 4 ++-- docs/Release notes.txt | 6 ++++-- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/data/qcsrc/server/g_grabber.qc b/data/qcsrc/server/g_grabber.qc index a92cedab..33336203 100644 --- a/data/qcsrc/server/g_grabber.qc +++ b/data/qcsrc/server/g_grabber.qc @@ -85,6 +85,7 @@ float LostMovetypeFollow(entity ent) } .float grabber_length; +.float grabber_sendbeam; void RemoveGrabber(entity pl) { @@ -247,8 +248,12 @@ void GrabberThink() } } - makevectors(self.angles_x * '-1 0 0' + self.angles_y * '0 1 0'); - te_beam(self.owner, WarpZone_RefSys_TransformOrigin(self, self.owner, self.origin) + v_forward * (-9), org); + if(self.grabber_sendbeam < time) // don't kill the bandwidth by sending this each frame + { + makevectors(self.angles_x * '-1 0 0' + self.angles_y * '0 1 0'); + te_beam(self.owner, WarpZone_RefSys_TransformOrigin(self, self.owner, self.origin) + v_forward * (-9), org); + self.grabber_sendbeam = time + cvar("sys_ticrate"); + } } void GrabberTouch (void) diff --git a/data/qcsrc/server/tturrets/units/unit_phaser.qc b/data/qcsrc/server/tturrets/units/unit_phaser.qc index 2781f5f9..13f89e43 100644 --- a/data/qcsrc/server/tturrets/units/unit_phaser.qc +++ b/data/qcsrc/server/tturrets/units/unit_phaser.qc @@ -79,7 +79,7 @@ void turret_phaser_attack() entity beam; beam = spawn(); - beam.ticrate = 0.1; //cvar("sys_ticrate"); + beam.ticrate = cvar("sys_ticrate"); setmodel(beam,"models/turrets/phaser_beam.md3"); beam.effects = EF_LOWPRECISION; beam.solid = SOLID_NOT; @@ -98,7 +98,7 @@ void turret_phaser_attack() self.fireflag = 1; beam.attack_finished_single = self.attack_finished_single; - self.attack_finished_single = time; // + cvar("sys_ticrate"); + self.attack_finished_single = time + cvar("sys_ticrate"); setattachment(beam,self.tur_head,"tag_fire"); diff --git a/docs/Release notes.txt b/docs/Release notes.txt index e4316e44..d013aac1 100644 --- a/docs/Release notes.txt +++ b/docs/Release notes.txt @@ -238,12 +238,14 @@ Bug fixes: - Fix swallowing not working in multiplayer, due to the predator's angles not being updated properly. This also fixes jittering in bot matches, that has always eixsted in VT. -- Fix Grabber reload being constantly re-triggered in multiplayer, if reloading with players in your stomach +- Fix Grabber reload being constantly re-triggered in multiplayer, if reloading with players in your stomach. -- Fix the view weapon model not animating in multiplayer, if having players in your stomach +- Fix the view weapon model not animating in multiplayer, if having players in your stomach. - Fix exterior weapon model blinking and attempting to be attached to the stomach model for predators +- Limit how often the Grabber's beam effect is sent (lightning bolt from the weapon to the linked hook). It was being sent each frame, choking the network in multiplayer. + - Tweak Grabber fuel usage and the fuel system, improving some things and fixing minor bugs. - Disable GLSL color control by default, as it seems to be the cause for some video card issues. This MIGHT fix the white screen problem some people have been reporting, as well as the game crashing between map changes. -- 2.39.2