Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

News PSA: Recent Additions

Noodl

Something Else
Staff Member
Developer
Admin

Noodl

Online
Joined
Feb 24, 2016
Messages
437
Since I'm now finished with university for summer, I've had the last few days to chill out and do some stuff. This time I'm dropping a big gamemode, a QoL improvement for some, and an experimental CallAdmin revamp.
Here's a thread documenting my recent work:


GunGame Redux
My rewrite of the GunGame gamemode to work with new SM and game versions, and add some new twists.

You all know the gamemode (Arms Race from CS, GunGame from CoD), kill to get the next weapon rank.
Currently still quite beta, while I sort out the last remaining issue or two.


Rules:
  • Kill to promote yourself
  • You are always given a pan. Killing someone with this will demote them.
  • Dying 3 times without promoting will cause you to be demoted also.
  • Being panned for your third death in a row will cause you to be double demoted.
  • You always have your pan. If your current weapon is a melee weapon, use your +attack3 key to change. Same as your MvM medic shield key.
  • The weapon progression is config based, and customisable, the ladder is below. 26 ranks. (Still potentially looking to reduce, depends how playtest with 26 goes.)
  • Assists are not counted towards. I considered counting 3 assists to promote someone, but then after a little playtesting, especially when we had a lot of players on, the killstealing nature added to the chaotic aim (win by killcount) and actually made the game more tense, and a bit funnier, at least for me.
  • A player's wins are recorded and announced on the hud upon round win.
  • Scoreboard reflects players' ranks. Promotions and demotions.
Known Bugs:
  • I still need to do another playtest wave. A bunch of things have been moved, fixed and changed a bit since the first one, I'll announce a Steam event to fill the server. I'm mainly after reducing the lag spikes that result from player regenning with the new class/weapons.
  • Strange farming. This is the big one I've been working around (been doing things below for the last day or two). The scoreboard reflects your score, and updates your score according to your rank, up or down. However, I did not account for strange cosmetics. The way I set the scoreboard caused the player to be reallocated their points on every 'think' (that means a lot). Fixed.
  • Result:
    stra.PNG
Rank Ladder:
1.Engineer - Lugermorph
2. Scout - Pretty Boy's Pistol
3.Heavy - Family Business
4.Medic - Blutsauger
5.Scout - Force a Nature
  1. Sniper - SMG
  2. Engineer - Rescue Ranger
  3. Pyro - Backburner
  4. Spy - Ambassador
  5. Soldier - Cow Mangler
  6. Demo - Sticky Launcher
  7. Heavy - Minigun
  8. Pyro - Phlog

14. Sniper - Hunstman
15. Demo - Loose Cannon
16. Soldier - Direct Hit
17. Demo - Grenade Launcher
  1. Medic - Crossbow
  2. Demo - Caber
  3. Pyro - Flare Gun
  4. Scout- Sandman

22. Engineer - Golden Wrench
23. Scout - Flying Guillotine
  1. Pyro - Manmelter
  2. Heavy - Fists of Steel
  3. Spy - Saxxy

If you have any suggestions, additions, whatever, post below, referencing GGR.


TopX
A reward for players at the top of the leaderboard

Simple concept. Reward players at the top of each server's leaderboard with a tag and colour:
20170703010150_1.jpg
Obviously in my example, 1 is gold, 2 is silver and 3 is bronze. Again, customisable via config/cvar to reward however many you want and with what tag/colour.


Ties in with HLStats if you didn't already guess that. Simple, easy, free way to reward/motivate players.
I have no idea what this is going to do to Ben's store tags, if they'll cancel each other out, or one will override the other, or they'll happily coexist in some fashion.
May or may not be added. HLStats is pure garbage to code for, and the values don't make sense, so this is likely unpredictable, but proof of concept is there.
Maybe in the future, when things change, hint hint.



CallAdmin Verification
https://blackwonder.tf/threads/jims-calladmin-idea.6124/#post-27546

Did it in about an hour or two tonight, so there's one or two lazy methods in there.
I was keen on keeping everything very query-low due to the current state of Ben's MySQL.
I don't know if you guys were doing this or not, but now you have the means to do so, or to experiment with it.

Additions:

  • Public calladmin is no longer available
  • Players must apply on the forums
  • After which, admins must go on a server, any server, and type: sm_addcaller "STEAM_0:xxxxxx" in the console. Yes, it will spew some shit at you, I know, but it will still process.
  • Once added to the DB, the player can now use CA again.
  • Donators and admins bypass this requirement to apply.
  • As per your usual /claim, you can now do sm_invalidcall to mark the call as abuse (does not mirror to Discord, nor is this /claim. They're different plugins, sorry. You'll need to claim it still.)
  • /invalidcall will update the player's invalidcall count.
  • Invalid call works in two ways: leaving it argument-less, like /invalidcall will use the Steam ID of the last report on the server.
  • Alternatively, you can add a Steam2 ID: /invalidcall Steam2 will update that specific user's invalid count.
  • A cvar controlled value (defaulted to 5) will determine how many invalid calls a player can have before they are again restricted from calling.
  • Callers can be removed from access with sm_removecaller "STEAM_0:xxxxx" in console.
  • All calculations (getting invalidcounts etc) are done on client join, as to reduce querying as much as possible. As such, if you invalidate someone and that pushes them over the limit, it will take a map change for the restriction to take effect. Same with adding/removing their caller rights.
  • If this system actually sees any uptake/good reception, it can be developed further, perhaps seeing a webpanel in the future, to manage adding/removing and changing invalid call counts (which is only available via root DB access, not via command, though easily done if needed).

These may or may not be available soon after I commit them to our Git repo, depends if Ben wants to use or not.
Leave any comments, suggestions, whatever, below.
-N
:csdsmile:
 

Noodl

Something Else
Staff Member
Developer
Admin

Noodl

Online
Joined
Feb 24, 2016
Messages
437
GunGame Redux Update:

Updated weapon ladder (removed the godamn Bison from it). Took a few ranks out as rounds are very long, and swapped a few things around to make it less of the same in a row.

Untested: fixed having overheal on spawn/promote for various reasons.

Currently investigating ways to reduce lag. It may come down to removing all cosmetics. The lag comes from dynamically loading weapon and cosmetic models midgame. As the weapons are all predefined, it's possible to pre-cache them for fast loads, while cosmetics are not predictable, therefore I might just block them altogether if necessary.

Also removed infinite respawn, and replaced it with a slightly delayed spawn, to offset people promoting and spawning at the same time, for the lag reasons.

CallAdmin Update:

Changed sm_invalidcall to allow for optional SteamID targetting (default, no arguments will target the last call on the server).

Jailbreak TeamBans Update:

Added a /tbanstatus command for regular users to know if they are teambanned, by who, for what, how long for, and when they were banned.
20170711174708_1.jpg
I'm aware that displaying the Steam ID of who banned you is not exactly helpful, but because of the way it's stored in the DB, the only way is to query the Steam web API with the ID, and get and decode the JSON via SMSockets or PHP, and that's a whole lot of effort just to get a name.
 
Last edited:

Noodl

Something Else
Staff Member
Developer
Admin

Noodl

Online
Joined
Feb 24, 2016
Messages
437
This is almost becoming a changelog thread for this this stuff.

GunGame Redux Update:
  • Should have fixed the overheal bug resulting from players having chosen a desired class, and me not actually changing that desired class, merely force setting their class -> results to their entity health being set, then changed to my set class, resulting in old excess max health becoming overheal. Can't confirm real fix when promoting etc until we playtest again.
  • Lots of micro-optimisations about the spawning events, no boring details there.
  • Added a cvar (sm_gg_blockcosmetics) to cause the plugin to remove all cosmetics before loading them in, again, will have to test the effect on lag in playtest.
  • Realised the conditions for double demotion and deathstreak demotion may have been wrong, so these should actually be strict now.
  • If you're about to win, everyone is going to know about it:
    20170713010700_1.jpg
  • Next on the list: possibly trying to add an effect to the current leader of each team.
  • Shortening that weapon ladder a bit more, but we'll see more on that after playtest.
  • US servers coming straight after I properly finish dev on it.


Jailbreak TeamBans Update:

An overlook on my part caused the /tbanstatus command to return empty for permanent bans (length 0) and saying you weren't banned. So fixed that.
Conveniently, while doing that, and seeing someone say they were still banned, I checked the unban command, and saw that it was also suffering this issue, failing to unban someone if they had a permban, as it didn't fall under the conditions to find that ban (based on time and shit).

So unteamban actually works properly now, for permanent bans also.

Next on list: Make a pretty web panel for teambans, SourceBans-esque.
 
Last edited:

Noodl

Something Else
Staff Member
Developer
Admin

Noodl

Online
Joined
Feb 24, 2016
Messages
437
Not sure if I should just rename this "Noodl's Changelog" eventually.
Updates to yet again the same set of things.

GunGame Redux Update:
  • To go along with the burning flames you get when you have the final weapon of the ladder, I've now implemented it such that the leader(s) of each time will get green/purple energy for blue and red respectively.
  • 20170714022920_1.jpg
  • The energy effects do get overridden by the Saxxy's burning flames.
  • There can be multiple leaders
  • Being a "leader" starts at rank 6 and above.
  • Does not apply to your pan, only to your primaries, this includes when you have 2 melees, your promoting weapon is considered your "primary" as such.
  • This entire system is optional, cvar controlled - sm_gg_leaderparticles 1|0; default 1
  • I am ambitiously searching for a way to change particle system colours. This may not actually be possible. There just aren't many blue effects, they all seem to be red and green ish.
I sadly won't have a prime time evening free for a few days to oversee a final playtest (really need to see how blocking cosmetics affects lag with more players), but I think I'm basically done with GGR dev now (save for ladder changes).

Jailbreak TeamBans Update:
  • As per request, added a new admin command: sm_checktban <Steam2|name>
  • Returns in the same format as sm_tbanstatus, just in third person.
  • You can either provide a pure Steam2 ID (STEAM_0:xxxxxx), or provide a name and it'll find a target based off of that name.
  • This allows for offline checking (you can give anyone's Steam ID at any time to query their status) and ease of use for checking someone in game.

Side note: fixed all commands recently added returning "unknown command" in console, but still working.
 

Noodl

Something Else
Staff Member
Developer
Admin

Noodl

Online
Joined
Feb 24, 2016
Messages
437
Strange Titles
Upgradable titles from the store.
  • Purchase "Strange Titles Upgrade" from the commands menu, for free.
  • Use sed command
  • Boom, you have a title, credits are subtracted. Equip from titles.
  • Move up the ladder to the top rank. Colours will upgrade in certain segments of the ladder.
20170729184201_1.jpg

CallAdmin Update
  • Removed chat announcements upon a player reporting someone, and announcing if admins are in game, as requested. This has been pushed to all servers.
 

Benedevil

Blackwonder's Own
Staff Member
Owner
Developer
Joined
Sep 28, 2015
Messages
3,325
You can buy donator for one month from the store now. So now you can trade a key to storebot and receive enough credits to buy donator
 

Noodl

Something Else
Staff Member
Developer
Admin

Noodl

Online
Joined
Feb 24, 2016
Messages
437
VectorAFK
  • A new AFK managing plugin I wrote to counteract afking players on certain servers. Brainstormed with @Buster
  • Without going into detail on how it works, for obvious reasons: available commands are
  • For admins /afkdistance x.x only use this if you know why and have spoken to someone who knows what it's for.
  • /currentdistance - displays the map's setting
  • For anyone: /amiafk mainly for admin use, but it's a global anyway.
  • Spectators won't be touched unless at 22 players or higher.
  • Afk players will be moved to spectate, then kicked if still afk.
  • Counteracts +direction and forced persistent/scripted inputs.
 

Who Read This Thread (Total Members: 1)

User Who Replied This Thread (Total Members: 2)

Top Bottom