Raised This Month: $12 Target: $400
 3% 

[TF2] SyncR Rocket Sync Trainer v0.8.8


Post New Thread Reply   
 
Thread Tools Display Modes
Author
AI_
Member
Join Date: Oct 2014
Location: Canada
Plugin ID:
4419
Plugin Version:
0.8.8
Plugin Category:
Gameplay
Plugin Game:
Team Fortress 2
Plugin Dependencies:
Servers with this Plugin:
35 
Plugin Description:
Rocket Jump Sync Reflex Trainer
Old 11-19-2014 , 02:46   [TF2] SyncR Rocket Sync Trainer v0.8.8
Reply With Quote #1

SyncR is a server-side SourceMod plugin for TF2 jump servers to assist rocket syncs.

Screencaps:





Technical demonstration:
http://www.youtube.com/watch?v=wqNsQ-erCd4 https://www.youtube.com/watch?v=zVh711KY-h4

Details:

Learning and executing syncs are tremendously difficult due to lack of visibility of the rocket due to aiming and ping limitations on a remote server. To mitigate these effects, the player must adjust their timing but learning this is inconsistent and difficult.

This plugin provides three visual and one audio feedback mechanisms:
  • Visual
    - The rocket time-to-impact is visualized via a colored laser emitted in front of the rocket (green to yellow and rose to red)
    - Player body overlapping with an existing rocket changes the laser to blue, i.e. for triple syncs (cyan to blue)
    - Crit rocket particles are attached to rockets launched sufficiently close to another
    - Player predicted landing positions are visualized on the ground in the form a ring
    - Distance to impact for the player and rockets are shown in a chart on the right of the screen
  • Audio
    - Similar to crit particles, upon firing a rocket amounting to a close sync to an existing rocket, a crit rocket sound plays. Test trials indicate this feedback to be very satisfying for some learning players.

Server ConVars:
Code:
syncr_laser [0/1]         - Show colored laser pointer
syncr_laser_all [0/1]     - Show colored laser pointer of all players using SyncR
syncr_laser_hide [0/1]    - Hides laser pointers when looking up
syncr_chart [0/1]         - Show distance to impact chart
syncr_ring [0/1]          - Show landing prediction ring
syncr_crit [0/1]          - Show sync crit particle
syncr_sound [0/1]         - Play sync crit sound
syncr_rave [0/1]          - Toggles disco/rave lasers for bored admins

syncr_warn_distance [Default: 440.0]   - Imminent rocket impact distance to warn with red
syncr_threshold [Default: 30.0]        - Distance required between rockets for crit feedback
Plugin dependencies: SourceMod 1.6.3+, SMLIB, Updater (optional)

Usage:

SyncR can be toggled by a player using /syncr, while admins with the slay flag can toggle for a player using /setsyncr <name>.

---
Coding is done by me while the JumpBOT recordings from the videos were done by Fractal and Aurora.

The project code is open-source GPLv3 and available to be tracked at https://bitbucket.org/GeominorAI/syncr

---
Changelog:
Spoiler
Attached Files
File Type: smx syncr.smx (25.7 KB, 785 views)
File Type: sp Get Plugin or Get Source (syncr.sp - 681 views - 25.6 KB)

Last edited by AI_; 05-06-2015 at 00:31. Reason: Updated to 0.8.8
AI_ is offline
Drixevel
AlliedModders Donor
Join Date: Sep 2009
Location: Somewhere headbangin'
Old 11-19-2014 , 09:24   Re: [TF2] SyncR Rocket Sync Trainer v0.6.0
Reply With Quote #2

Nice plugin!

Few tips:

Add an 'sm_' before the command 'syncr' to give it more compatibility with prefixes like '!' or '/'. If you want to keep the straight command usage, just register another one with the 'sm_' prefixed.

---

You can move the ConVar functions from 'OnMapStart' to 'OnConfigsExecuted' so they're always refreshed.

Code:
public OnConfigsExecuted()
{
  g_bPluginEnabled = GetConVarBool(g_hPluginEnabled);
  g_bLaser = GetConVarBool(g_hLaser);
  g_bLaserAll = GetConVarBool(g_hLaserAll);
  g_bCrit = GetConVarBool(g_hCrit);
  g_bSound = GetConVarBool(g_hSound);
  g_bRave = GetConVarBool(g_hRave);
  
  g_fWarnDist = GetConVarFloat(g_hWarnDist);
  g_fThreshold = GetConVarFloat(g_hThreshold);
}
---
Loops for clients should probably be this...

Code:
for (new i=1; i<=MaxClients; i++)
instead of this...

Code:
for (new i=0; i<MAXPLAYERS; i++)
Data being cleared like this is fine!

Code:
for (new i=0; i<MAX_ROCKETS; i++)
---

For your 'IsValidClient' function, you don't need to check if they're connected. You can just remove that portion and have 'IsClientInGame' return the value since clients have to be connected to be in-game.

Nice plugin friend!
Drixevel is offline
AI_
Member
Join Date: Oct 2014
Location: Canada
Old 11-28-2014 , 06:33   Re: [TF2] SyncR Rocket Sync Trainer v0.7.0
Reply With Quote #3

Thanks for the feedback. I have incorporated some of the suggestions in the 0.7.1 release.

Here are the latest changes:
  • Fixed an occasional bug where rockets are missing lasers
  • Fixed access permissions for toggling SyncR on other players
  • Added admin command sm_setsyncr requiring admin slay flag
  • Tightened timings for syncr_threshold=30 and syncr_warn_distance=150
  • Added cvar syncr_laser_hide [0/1] (default 1) that hides the lasers when looking up at rockets during a sync
  • Added configuration file under cfg/sourcemod/syncr.cfg
  • Added support for Updater with a reliable web host
  • Minor code cleanup

Last edited by AI_; 11-28-2014 at 10:13.
AI_ is offline
AI_
Member
Join Date: Oct 2014
Location: Canada
Old 12-02-2014 , 08:11   SyncR 0.8.0 - Feature sneak peak
Reply With Quote #4

What if... you knew exactly where you will land?

---


Coming soon to a SyncR v0.8.0 release.

Last edited by AI_; 12-02-2014 at 19:56.
AI_ is offline
AI_
Member
Join Date: Oct 2014
Location: Canada
Old 04-29-2015 , 09:14   SyncR 0.8.5 Prediction Update Released
Reply With Quote #5

An update (0.8.5) has been released for SyncR. The download is available via Bitbucket and through Updater, if installed.



https://www.youtube.com/watch?v=zVh711KY-h4

This update focuses on sync prediction features. Here are the latest changes:
  • Added distance to impact chart for the player character (PC) and rockets (R#)
  • Added landing prediction ring for predicted player ground impact
  • Enabled spectator view of a player using syncr laser, ring, and chart without requiring cvar syncr_laser_all=1
  • Reduced server and client load by lowering refresh rate
  • Fixed the occasional player unable to use syncr
  • Fixed the command sm_setsyncr notifying the wrong player
  • Removed need to set cvar syncr_laser_all for syncr_rave to be visible
  • Increased default for cvar syncr_warn_distance=440
  • Added cvars syncr_chart[0/1] (default 1) and syncr_ring[0/1] (default 1) to control visibility of the new prediction features
  • Calculations of distance between rockets (to compare cvar syncr_threshold) now weighs horizontal (0.7) and vertical disparities separately (0.3)

Known issues:
  • The landing prediction ring currently only works flat horizontal surfaces, and hides when an impact is predicted on a wall
  • The precision of the landing prediction ring and impact distances depend on the player's ping
  • The player character (PC) bar shows impact distances to any surface within the player's movement arc rather than just the ground

Upgrade steps
  • Replace syncr.smx from tf/addons/sourcemod/plugins with the new one
  • Due to the new cvars and changed recommended default values, delete tf/cfg/sourcemod/syncr.cfg and let the plugin recreate it
AI_ is offline
AI_
Member
Join Date: Oct 2014
Location: Canada
Old 04-30-2015 , 21:24   SyncR 0.8.6 Released
Reply With Quote #6

An update (0.8.6) has been released for SyncR. The download is available via Bitbucket.

Here are the latest changes:
  • Fixed possible crash when activating SyncR
AI_ is offline
AI_
Member
Join Date: Oct 2014
Location: Canada
Old 05-02-2015 , 03:53   SyncR 0.8.8 Released
Reply With Quote #7

An update (0.8.8) has been released for SyncR. The download is available via Bitbucket and through Updater, if installed.

Here are the latest changes:
  • Fixed gravity-related bug hiding the prediction ring

Last edited by AI_; 05-02-2015 at 03:55.
AI_ is offline
AcidZer0
New Member
Join Date: Oct 2015
Location: Russia, Krasnodar
Old 10-15-2015 , 21:37   Re: [TF2] SyncR Rocket Sync Trainer v0.8.8
Reply With Quote #8

Hello!
How to default enable this plugin for all players ?
AcidZer0 is offline
AI_
Member
Join Date: Oct 2014
Location: Canada
Old 10-16-2015 , 15:10   Re: [TF2] SyncR Rocket Sync Trainer v0.8.8
Reply With Quote #9

I do not recommend enabling it by default, since it will be distracting during wallpogos, but you can add this function to the code and recompile:

Code:
public OnClientPostAdminCheck(iClient) {
    g_rPlayers[iClient][bActivated] = true;
}
Attached Files
File Type: smx syncr.smx (26.4 KB, 498 views)
File Type: sp Get Plugin or Get Source (syncr.sp - 504 views - 26.1 KB)

Last edited by AI_; 10-16-2015 at 15:11. Reason: Attached compiled
AI_ is offline
epicwindow
Senior Member
Join Date: Jan 2018
Old 03-12-2018 , 13:59   Re: [TF2] SyncR Rocket Sync Trainer v0.8.8
Reply With Quote #10

Hello
is it possible to make it that it remembers you have turned syncr on so you dont have to turn it back on every map change?
thanks

also got this error
L 03/14/2018 - 19:54:19: [SM] Call stack trace:
L 03/14/2018 - 19:54:19: [SM] [1] Line 392, syncr.sp::Timer_refresh
L 03/14/2018 - 19:54:19: [SM] Exception reported: Array index is out of bounds
L 03/14/2018 - 19:54:19: [SM] Blaming: syncr.smx

Last edited by epicwindow; 03-14-2018 at 09:10.
epicwindow is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 10:36.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode