Jump to content
ColColonCleaner

Advanced In-Game Admin and Ban Enforcer - AdKats

Recommended Posts

Advanced In-Game Admin and Ban Enforcer - AdKats


ADKATS 7.6.0.0 RELEASED!

Admin Toolset with a plethora of features, over 100 available in-game commands, and many customization options. AdKats focuses on making in-game admins more efficient and accurate at their jobs, with flexibility for almost any setup. Includes a cross-server ban enforcer with advanced enforcement features, global admin management, cross-server player messaging, and the BFAdminCP 2.0+ for web-based control has been released. Designed for groups with high-traffic servers and many admins, but will function just as well for small servers.

REQUIREMENTS: 
This plugin requires a MySQL database, and XpKiller's Stat logger plugin to operate. If you do not have an existing database and/or a Procon layer we suggest using Branzone's hosting services. Our group has been with them for years across BF3, BF4, and Hardline; the most performant and reliable host we've found.
Web/Database Hosting: Branzone Web Hosting (Used for MySQL Databases)
Procon Layer Hosting: Branzone Procon Layers

 

FEATURES

  • Extensive In-Game Commands. Commands for player killing, kicking, punishing, banning, unbanning, moving, joining, whitelisting, messaging, etc, etc... ~100 available in-game commands. Commands can be accessed from in-game, Procon's chat window, database, and from other plugins.
  • Customizable User Roles. Custom user roles can be created for admins and players, with each role given access to only the commands you want them to use. Default guest role is given to all players and can be edited to your desired specs. Roles and powers are automatically synced between servers so you only need to change user information once. Soldiers assigned to users will also keep their powers even if they change their in-game names.
  • Setting sync between servers. All changes to plugin settings are stored in the database and can be automatically synced between your Procon layers. Setting up new layers or switching layers is a breeze as the settings for existing servers are automatically imported on startup.
  • Infraction Tracking System. Punish/forgive players for breaking rules on your servers. Everything is tracked so the more infractions they commit, the worse their punishment automatically gets. Created so all players can be treated equally based on their history, regardless of who is issuing punishments against them. Heavily customizable.
  • Player Reputation System. Based on issued commands from and against players they can form a numeric reputation on the server. Documentation below. A local leaderboard for reputation is provided in the BFAdminCP.
  • Quick Player Report and Admin Call Handling, with Email Support.Notification system and quick handling features for all admin calls and player reports. Reports can be referenced by number for instant action. Automatic PBSS are triggered on reported players.
  • Orchestration and Server List Management. Server reserved slots, spectator slots, autobalance whitelising through MULTIBalancer, ping kick whitelists, and several others can be automatically handled through the AdKats user list, role groups, and orchestration commands.
  • AdKats Ban Enforcer. AdKats can enforce bans across all of your servers and can enforce on all identity metrics at the same time. System will automatically import bans from your servers, consolidating them in one place, and can import existing bans from the BF3 Ban Manager plugin's tables. Full documentation below.
  • Automated Challenge System with Rewards. The challenge system in AdKats is designed to be a multi-server stats-driven way to give players new goals with rewards. You can set up almost any combination of damage types or weapons to be used by players, in multiple tiers.
  • BF3/BF4 "Hacker-Checker" with Whitelist. Battlelog stats can be polled for players in the server, issuing automatic bans for damage mods, aimbots, magic bullet, and several others. The LIVE system can detect damage mods and magic bullet from a single round of play. DPS checks are enabled by default, with others available after a few clicks.
  • Surrender Vote System. When enabled, if players are stuck in their base with no options, they can vote to end the round with the current winning team as winner.
  • Auto-Surrender/Auto-Nuke System. This uses ticket loss rates to detect where teams are on the map, specifically with how many flags are captured. If a team is being base-camped, it can either automatically end the round with current winner, or nuke the team who is causing the base-camp. Optimal values for Metro 2014 and Operation Locker are available, for both surrender and nuke options.
  • Automatic Updates. AdKats automatically updates itself when stable releases are made, only requiring a Procon instance reboot to run updated versions. This can be disabled if desired, but is required if running TEST versions.
  • Ping Enforcer. Automated kick system based on ping, with moving average calculation, modifiers based on time of day and server population, customizable messages, logged kicks, and manual ping options.
  • AFK Manager. Automated kick system based on player AFK time, with manual kick command. Customizable durations, and option to ignore chat messages counting toward active time.
  • Internal SpamBot with Whitelist. SpamBot with options for simultaneous say, yell, and tell. Customizable intervals between each type of message, and ability to whitelist players/admins from seeing spambot messages.
  • Commander Manager. Commanders can cause team imbalance when servers are in low population. This manager can forbid commanders before a certain player count is active.
  • Cross-Server Player Messaging. Private conversations between players can operate not only within the same server, but will work between any online server in the database, and even between any AdKats supported game.
  • Admin Assistants. When fully used this can turn your regular playerbase into a human autoadmin. Trusted players fill the gaps normal autoadmins don't see by utilizing the report system and keeping your server under control even when normal admins are offline.
  • Email Notification System. Email addresses can be added to every user, and once enabled they will receive emails for player reports and admin calls.
  • Fuzzy Player Name Completion. Fully completes partial or misspelled player names. I've been consistently able to find almost any player only a few characters from their name. Can also fetch players who have left the server, are in another server of yours on the same database, or have been in your servers at any point in time.
  • Player Muting. Players can be muted if necessary, giving warnings and kicks if they talk. Automatic mute in specific cases like lanuage can be orchestrated by other plugins like Insane limits.
  • Player Joining. Player's squads can be joined via command, and locked squads can be unlocked for admin entry.
  • Player Locking. Players can be locked from admin commands for a specific timeout, the main purpose is if a certain admin is handling them (checking stats for cheat detection, records, etc.) they shouldn't be interrupted by another admin acting on the player.
  • Player Assist. Player's want to play with their friends, but you don't want to imbalance the teams_ The assist command lets any player join the weak team to help them out and squad up with friends without hurting server balance.
  • Yell/Say Pre-Recording. Use numbers to reference predefined messages. Avoid typing long reasons or messages. e.g. /kill player 3
  • Server Rule Management. Server rules can be listed, requests for rules logged, rules targeted at other players, and rules can be distributed between servers automatically.
  • External Controller API. AdKats can be controlled from outside the game through systems like the BFAdminCP and through other plugins like Insane Limits. For example, you can issue AdKats punish commands from Insane Limits or ProconRulz and have them logged against the player's profile like any other admin command.
  • Internal Implementation of TeamSwap. Queued move system for servers that are consistently full, players can be queued to move to full teams once a slot opens.
  • Metabans Support. When using ban enforcer all bans can be submitted to metabans and removed if the player is unbanned.
  • Editable In-Game Commands. Command text, logging options, chat access types, and enable options can be edited to suit your needs.
  • Full Logging. All admin activity is tracked via the database per your custom settings for every command, so holding your admins accountable for their actions is quick and painless. If you are using the BFAdminCP nobody but your highest admins will need manual Procon access.
  • Setting Lock. The settings page in AdKats can be locked with a password. This means even admins with access to plugin settings can be blocked from changes using the password.
  • Performance. All actions, messaging, database communications, and command parsing take place on their own threads, minimizing performance impacts.

 

AdKats_Docs_UserManual.jpg

AdKats_Docs_Dependencies.jpg

AdKats_Docs_Install.jpg

AdKats_Docs_FAQ.jpg

AdKats_Docs_Features.jpg

AdKats_Docs_Commands.jpg

AdKats_Docs_Web.jpg

AdKats_Docs_Settings.jpg

 

New Extension! Click below to enforce loadouts on-spawn!

AdKats_Docs_Loadout.jpg

 

AdKats_Docs_Donate.jpg

 

AdKats Release Notes:

https://github.com/AdKats/AdKats/blob/master/CHANGELOG.md#7600-8-jul-2019

I hope you enjoy the plugin. While using this plugin, two players, ColColonCleaner, and PhirePhrey will be added to your server's reserved slot list.

If you have any questions, please comment here.

 

Share this post


Link to post

Originally Posted by dyn*:

 

Tons of features to this plugin! Very nice job writing up what everything does and how to use it. This is actually one item I'm been looking to do: implement an admin punish type system for some time now. This should hopefully reduce the number of bans our admins issue and also create a type of tracking for who has been warned and who hasn't. The idea of using a DB so punishments can be carried across servers is pretty slick and am looking forward to testing it out in the coming week. Will let you know what develops!

 

Thanks! :smile:


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

Tons of features to this plugin! Very nice job writing up what everything does and how to use it. This is actually one item I'm been looking to do: implement an admin punish type system for some time now. This should hopefully reduce the number of bans our admins issue and also create a type of tracking for who has been warned and who hasn't. The idea of using a DB so punishments can be carried across servers is pretty slick and am looking forward to testing it out in the coming week. Will let you know what develops!

 

Thanks! :smile:

Glad there is some interest in this! I have already made many updates to the plugin (making things run better and adding more features), the update will be released this coming week.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

Sweet! Setup ran perfectly.

 

Couple of things you might consider adding:

1. clan tag based admin list; just add the clan tag and all with that tag now have "admin" powers. Save from having to add/edit/delete a separate list every time you add/edit/delete an admin. OR, possibly have it pull admin accounts from procon itself......winnerwinner, chicken dinner!

 

2. Allow the use of the pre-defined "messages" as reasons for the punishment: @punish (reportID or playername)(# of predefined message), so it would look like "@punish 697 2" would punish that the player defined in the reportID (or the playername) for the predefined message #2 of baserape is not allowed on this server. We try to keep a consistent admin protocol on our servers, and only allow pre-determined reasons for any actions against other players. This would work in tandem with the plugin "ServerRulesonRequest" perfectly.

 

3. Looks like @report and @admin currently sends a chat to every "admin" on the list. Any way to just send to admins currently in game? How about a "tweet" for those of us who monitor that type of thing? Would be handy to keep track of stuff going on if you weren't actually in the server.

 

Thanks for the effort, looks like a winner to me. Are you planning on building a webpage to sort through/search the database? That would be especially helpful to weed out heavy handed or overzealous admins.

 

Hutchew


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

Glad to hear things ran well! Just replying to your comments in-line :smile:

 

Sweet! Setup ran perfectly.

 

Couple of things you might consider adding:

1. clan tag based admin list; just add the clan tag and all with that tag now have "admin" powers. Save from having to add/edit/delete a separate list every time you add/edit/delete an admin. OR, possibly have it pull admin accounts from procon itself......winnerwinner, chicken dinner!

This might already be fixed in version 2.5, i've made an admin editor in adkats settings so you can add, remove, or change the access level of any player without ever touching the database. I cannot pull clan tags :sad:, the server does not send us that information, unfortunate. Pulling admin accounts from procon would be convenient, but it kinda ruins the purpose, with this system if you add an admin on one server they are automatically an admin on all servers running on that database.

 

Also just FYI, you are gonna lose your admin list when installing on the new version, i optimized it a lot and relying on someone else's pre-made access list just wasn't gonna cut it, SORRY lol. On the plus side you can add them back quickly.

 

2. Allow the use of the pre-defined "messages" as reasons for the punishment: @punish (reportID or playername)(# of predefined message), so it would look like "@punish 697 2" would punish that the player defined in the reportID (or the playername) for the predefined message #2 of baserape is not allowed on this server. We try to keep a consistent admin protocol on our servers, and only allow pre-determined reasons for any actions against other players. This would work in tandem with the plugin "ServerRulesonRequest" perfectly.

What i do when using report IDs is use the same reason the player reported them for as the reason in the action. So @report fluffy baseraping --> Report [542] --> @kill 542 --> fluffy killed for baseraping. So you might not want to use the report ID system just yet until i work in an update for you.

 

3. Looks like @report and @admin currently sends a chat to every "admin" on the list. Any way to just send to admins currently in game? How about a "tweet" for those of us who monitor that type of thing? Would be handy to keep track of stuff going on if you weren't actually in the server.

I just looped through everyone in the admin list because the say to admins not in-game will just fail, but not break anything. Every in-game admin will get the message. I am working on importing both the email system from notifyme and the tweet system from insanelimits, but that will take a little while as i want to test things completely before releasing code. My clan's servers are the test dummies for my code, wanna make sure things work properly before releasing them.

 

Thanks for the effort, looks like a winner to me. Are you planning on building a webpage to sort through/search the database? That would be especially helpful to weed out heavy handed or overzealous admins.

It would take a while but i could do something like this. The HTTP server procon has is very very basic, im talking sending single strings back on requests basic. Essentially i would need to generate a single string of html code manually and send it back to you, so...yeah...might take a little while to get that working. My clan has an external game control panel running on a webserver which already had access to the database, so making a display for this was was simple for us, not so much in your case but i'll do what i can.

 

Hutchew


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by MorpheusX(AUT)*:

 

Regarding your last point about the webpage: why wouldn't you simply write a webpage/script that connects to the database instead of going script->procon->database->procon->script?


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

Regarding your last point about the webpage: why wouldn't you simply write a webpage/script that connects to the database instead of going script->procon->database->procon->script?

What is needed for accessing a database is more than just a webpage, it cant be done client side. It requires a server-side component, and that's a good thing for security purposes. What i mentioned to him, even though it would take some time to generate html code manually, is still less work than making a webserver around this thing. I'll be doing it eventually, will just take a while.

 

If i was to write an adkats web-interface i would need it to be a fully functional GUI for the in-game instance, interacting through the database for actions (or the procon http server if we can get it secured, at least to the point of not using GET all the time), and operational across all servers the person is running. The problem is it would need access to all current server info, and players, which would require either responses from the procon http server, or a direct RCON connection to the bf3 server.

 

Please correct me if i'm wrong on any points :smile:


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by MorpheusX(AUT)*:

 

What is needed for accessing a database is more than just a webpage, it cant be done client side. It requires a server-side component, and that's a good thing for security purposes. What i mentioned to him, even though it would take some time to generate html code manually, is still less work than making a webserver around this thing. I'll be doing it eventually, will just take a while.

 

If i was to write an adkats web-interface i would need it to be a fully functional GUI for the in-game instance, interacting through the database for actions (or the procon http server if we can get it secured, at least to the point of not using GET all the time), and operational across all servers the person is running. The problem is it would need access to all current server info, and players, which would require either responses from the procon http server, or a direct RCON connection to the bf3 server.

 

Please correct me if i'm wrong on any points :smile:

If i understand the serverside part correctly, you're trying to avoid e.g. having to run a php script on a webserver, but having a browser query the plugin directly (e.g. via Procon's HTTP Server), which then establishes the connections and runs the commands? If yes: that is WAY more complicated and definitely more error-prune. What's bad about having to run it on a server? Most MySQL databases for gameservers come with webspace, or you can rent it for a dollar (or even free).

 

What you are describing is (on a less detailed level) done by the remote banlist plugin by bambam and me, although that just included banlist/kick and chat functionality.

Regarding the information needed: you could either get some of that via the Procon HTTP server if it works for these cases or simply have the plugin update a table in the database every X seconds. The information you mentioned is usually updated every 15-30 seconds by Procon, so you could write it at those intervals or even slower, depending on your needs. Not optimal, but better than writing additional code basically implementing parts of a webserver.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

Yeah, thats all I'm talking about...like the procon webadmin we already use:Link*

 

Thanks for the update, look forward to testing this out fully.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

Yeah, thats all I'm talking about...like the procon webadmin we already use:Link*

 

Thanks for the update, look forward to testing this out fully.

Ah i see, might i make a suggestion? If you are looking for things in that regard check out gameME's stats sites, it offers much more detailed information on players. Not sure about bans though.

 

Full player list on my clan's version: http://stats.adkgamers.com/players/bfiii

My soldier's profile on it: http://stats.adkgamers.com/playerinfo/450875

 

What i would be making personally is a way to control the server via a webpage, not just view logs.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

lol, I will look into that, does look cool............but what I am talking about is a way to see what admins are doing, so perhaps a search by admin, and then it brings back everything that admin has done or said as far as the database is concerned.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

lol, I will look into that, does look cool............but what I am talking about is a way to see what admins are doing, so perhaps a search by admin, and then it brings back everything that admin has done or said as far as the database is concerned.

Yep, i will be implementing that. Was just talking about a replacement for the procon webadmin you were using.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Jamesonp*:

 

Giving this a try! Will report back.

 

So far so good. Thanks for the plugin. One thing that would be cool is a web front end to manage players and view a history of violations and commands which were executed.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Prophet731*:

 

I'm one of the developers for ADK more specifically the web end. I was thinking about making a lightweight frontend to be able to manage and view player history with AdKats. Problem with that currently is a security issue with the way that the HTTP server for procon is. Using GET requests is a major issue because of the fact that anyone can get the URL and just send it to someone and boom nuke the server if they wanted to. Right now the way we are currently issuing commands to the plugin is with the plugin polling the database and any entry that I put in with an admin issues a command on that player from the web then the plugin acts on it. It's about a 10 sec delay for it to be issued.

 

Also for added security I plan on having a simple member account management for this frontend that way its not open to the public.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

I'm one of the developers for ADK more specifically the web end. I was thinking about making a lightweight frontend to be able to manage and view player history with AdKats. Problem with that currently is a security issue with the way that the HTTP server for procon is. Using GET requests is a major issue because of the fact that anyone can get the URL and just send it to someone and boom nuke the server if they wanted to. Right now the way we are currently issuing commands to the plugin is with the plugin polling the database and any entry that I put in with an admin issues a command on that player from the web then the plugin acts on it. It's about a 10 sec delay for it to be issued.

 

Also for added security I plan on having a simple member account management for this frontend that way its not open to the public.

In short, this will be developed as soon as possible. A version routed through the database for both record retrieval and viewing, as well as command issuing will be version 1. Version 2 will hopefully be able to issue commands in real time once we get the procon http server somewhat secured. However I'm focusing most on releasing version 0.2.5.0 until that is done.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

Awesome. great work, guys.

 

Thanks for your efforts.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Jamesonp*:

 

Good to hear. Keep up the great work!


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

Has anyone experienced lag in command actions during high stress times? We have on our servers on a couple occasions, right now assuming it's from the high number of plugins we run bogging it down, not AdKats itself.

 

I will be working on multi-threading the tool to stop anything else from slowing it down, but that's planned for plugin version 3.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Jamesonp*:

 

Has anyone experienced lag in command actions during high stress times? We have on our servers on a couple occasions, right now assuming it's from the high number of plugins we run bogging it down, not AdKats itself.

 

I will be working on multi-threading the tool to stop anything else from slowing it down, but that's planned for plugin version 3.

When my server is at 64 players, there is a slight (2-4 second) delay vs below 32 players it's almost non existent.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

When my server is at 64 players, there is a slight (2-4 second) delay vs below 32 players it's almost non existent.

Most of the time when our servers are at 64 things don't lag, it's only certain times. But yeah there is stuff lagging the system, hopefully multi-threading it will fix those problems, but that wont come till version 3. Hopefully the features are worth the lag until then, lol. 2.5 release should be only a few days away now, final testing.

 

I might release the multi-threading early if it becomes a big issue.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

After further testing on our super busy metro server i'm deeming this lag issue a major problem. I'll need to get the multi-threading going right away to fix it before a release. If you really want the 2.5 update i can give it to you, there are a ton of new features, but the lag issue will only get worse if i let it go unchecked. Let me know if you want that update for testing, it's ready as far as my testing goes, but i'd suggest waiting for me to thread this thing so it won't be lagged.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

Are you self hosting your layers or running through a provider?

 

I would like to check out 2.5 just for kicks, please.

 

Thanks!


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

Are you self hosting your layers or running through a provider?

 

I would like to check out 2.5 just for kicks, please.

 

Thanks!

Clan boss man doesn't want to host the layers locally (even though we have plenty of resources), so we are running through a provider at the moment. Trying to push for a change, but he feels safer hosting them elsewhere which i can understand to an extent.

 

I will give you the link to 2.5 source tonight once i get a couple things squared away, the db setup script needs one final test as i made some last minute changes. There shouldn't be any issues, but i want to be sure.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

AHA!! It was a database code problem causing the lag, not the actual plugin code. I'll release the hotfix with 2.5 :biggrin:.

 

EDIT: Yep, just confirmed all the lag on our servers made by the plugin is gone, fluid as ever.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

AdKats 2.5 Released! With performance boost!

 

Docs and download link here, "new in version 2.5" at the bottom. You will also see this in your procon instances.

https://github.com/ColColonCleaner/A...ster/README.md

 

New in Version 2.5:

 

  • Admin List GUI. You can now modify the database reflected admin list through AdKats settings. You can edit who the admins are, and what level of access they have, without needing to access the database manually. All instances of the plugin on your database will reflect the admins you enter.
  • Admins now have multiple levels of access. They range from full admin (0) to normal player (6). List of commands for each level is given below. Admins can issue commands at or below their level. All commands on an admin's access level can be used on other admins of any level with the exception of muting.
  • Commands now have levels of access. Admins need to be at or above certain levels of access to use certain commands.
  • HTTP Server Online. Commands can now be sent to AdKats using procon's internal HTTP server, or through the database. Info given below on security of this system.
  • Player name suggestion system improved. System now considers player names starting with what was typed more correct than those with it just somewhere in their name. System will also perform a "fuzzy" player-name search if the text admins entered is not valid for any players.
  • Ghost Commands Fixed. Commands admins send but don't confirm will be auto-canceled if they move on to other things. This stops unwanted commands from being acted on after the fact.
  • TeamSwap can now auto-whitelist X random players in the server each round. The random list is changed each round. Use this to generate hype for players to get full access to teamswap. Players are told the first time they spawn that they have access. Players who already have access are not added to the auto-whitelist.
  • Player report logging improved. Whether a report was used by an admin is now logged.
  • "Admin Assistant" position added. Players who consistently send useful player reports get a small bonus. Details below. This can be disabled.
  • Round Report Handling Improved. Handling changed so admins can enter new reasons that override the report reason. The new reason entered will be used instead, and must follow the requirements for a reason defined in settings.
  • Pre-defined messages usable in all commands. All player interaction commands (not say or yell), will accept preMessageIDs as input for reasons now. e.g. @kill charlietheunicorn 4 --> charlietheunicorn killed for Baseraping Enemy Spawn Area.
  • Server IDs can be different now, yet still have punishments increase across servers. Now the origin of reports wont show as coming from the same server, since same server ID was required before for global punishments.
  • Added new commands. Kick all Players, and Nuke Server.
  • Commands can now operate in shortened hidden mode. When commands are issued in hidden mode they normally require an extra character. e.g. /@kill target reason. They now work with just the slash. e.g. /kill target reason.
  • Commands will target the speaker when entered with no parameters. Most player interaction commands will now target the speaker when entered with no parameters. So "@kill" == "@kill SourcePlayerName Self-Inflicted". Report and call admin will not do this, in addition to commands meant for targeting multiple players.
  • Additional ban message option added. e.g. Optionally add "appeal at www.yoursite.com" to the end of bans.
  • 30 seconds now hardcoded as punishment timeout. Setting was only editable for testing purposes.
  • Optimizations in code, database, and settings handling.

* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

AdKats 2.5 Released! With performance boost!

 

Docs and download link here, "new in version 2.5" at the bottom. You will also see this in your procon instances.

https://github.com/ColColonCleaner/A...ster/README.md

 

New in Version 2.5:

>

BEAUTIFUL. Installing and will provide feedback shortly.

 

Please provide link to donate to you or your clan, please.

 

Hutchew


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

BEAUTIFUL. Installing and will provide feedback shortly.

 

Please provide link to donate to you or your clan, please.

 

Hutchew

There is a donate link in my signature now. Thanks much!

 

If you find any bugs please submit them to the 0.2.5.1 bugfix release here: https://github.com/ColColonCleaner/A...e=5&state=open

 

I'll get that released once it gets some full server testing time to find any bugs.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

New empty DB, double checked permissions. Tried to post on your github, don't think it worked, so posting here as well.

 

[12:17:42 00] [AdKats] Enabled! Version: 0.2.5.0

[12:17:42 00] [AdKats] Attempting database connection.

[12:17:42 00] [AdKats] Database connection SUCCESS.

[12:17:42 01] [AdKats] ERROR: Main Record table not present in the database.

[12:17:42 01] [AdKats] Running database setup script. You will not lose any data.

[12:17:42 14] [AdKats] EXCEPTION: Your database did not accept the script. Does your account have access to table creation? AdKats will not function properly. Exception: MySql.Data.MySqlClient.MySqlException: Duplicate column name 'server_ip'

at MySql.Data.MySqlClient.MySqlStream.ReadPacket()

at MySql.Data.MySqlClient.NativeDriver.GetResult(Int3 2& affectedRow, Int64& insertedId)

at MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId, Int32& affectedRows, Int64& insertedId)

at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force)

at MySql.Data.MySqlClient.MySqlDataReader.NextResult( )

at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader( CommandBehavior behavior)

at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuer y()

at PRoConEvents.AdKats.runDBSetupScript()

[12:17:42 14] [AdKats] ERROR: adkat_playerlist not present in the database. AdKats will not function properly.

[12:17:42 14] [AdKats] ERROR: adkat_playerpoints not present in the database. AdKats will not function properly.

[12:17:42 14] [AdKats] ERROR: Database structure errors detected, not set up for AdKats use.

 

Now, when I disable.enable, get this:

 

[12:39:50 93] [AdKats] Disabled! =(

[12:39:52 03] [AdKats] Enabled! Version: 0.2.5.0

[12:39:52 03] [AdKats] Attempting database connection.

[12:39:52 03] [AdKats] Database connection SUCCESS.

[12:39:52 03] [AdKats] Confirming Database Structure.

[12:39:52 03] [AdKats] ERROR: adkat_playerlist not present in the database. AdKats will not function properly.

[12:39:52 04] [AdKats] ERROR: adkat_playerpoints not present in the database. AdKats will not function properly.

[12:39:52 04] [AdKats] ERROR: Database structure errors detected, not set up for AdKats use.

[12:42:55 28] [AdKats] Disabling command functionality

[12:42:55 28] [AdKats] Disabled! =(

 

I could theoretically create the tables, but too many variables exist on where to create, and with what details.

 

 

Stuck..........

What to do?

 

 

 

FIXED************** Removed the following lines and ran it through the sql query:

 

-- If the tables already exist and just need updating, the above will warn and below will be success.

ALTER TABLE `adkat_records` MODIFY `record_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP;

ALTER TABLE `adkat_records` MODIFY `server_id` int(11) NOT NULL DEFAULT -1;

ALTER TABLE `adkat_records` ADD `server_ip` varchar(45) NOT NULL DEFAULT "0.0.0.0:0000";

ALTER TABLE `adkat_records` MODIFY `command_type` varchar(45) NOT NULL DEFAULT "DefaultCommand";

ALTER TABLE `adkat_records` ADD `command_action` varchar(45) NOT NULL DEFAULT "DefaultAction";

ALTER TABLE `adkat_records` MODIFY `record_durationMinutes` int(11) NOT NULL DEFAULT 0;

ALTER TABLE `adkat_records` MODIFY `target_guid` varchar(100) NOT NULL DEFAULT "EA_NoGUID";

ALTER TABLE `adkat_records` MODIFY `target_name` varchar(45) NOT NULL DEFAULT "NoTarget";

ALTER TABLE `adkat_records` MODIFY `source_name` varchar(45) NOT NULL DEFAULT "NoNameAdmin";

ALTER TABLE `adkat_records` MODIFY `record_message` varchar(100) NOT NULL DEFAULT "NoMessage";

ALTER TABLE `adkat_records` MODIFY `adkats_read` ENUM('Y', 'N') NOT NULL DEFAULT 'N';

DROP TABLE `adkat_teamswapwhitelist`;

 

It was hung up on the two "add" lines and the "drop table" line, fyi.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by ColColonCleaner*:

 

Well crap. Thanks for the testing, my db only warns for the things it was failing on for you, so on my end it ran fine every time. Those alters are there to keep any previous data you had instead of just dropping and re-creating everything.

 

And yeah your issue post didn't go through, will add it :smile:. Thanks.

 

EDIT: I changed the sql query so others running it will still see the error, but it will be success if they just restart the plugin. It's a temporary fix as i'm not on my dev machine, but it will work.


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Originally Posted by Hutchew*:

 

Now, anytime you fool around in the admins section, it clears the plugin details screen (on 3 different servers tested). Can still enable/disbale the plugin, and it will tell you it pulled the admin list, but before it "crashes" it doesn't populate the admin list from the 1st server to the next. lol, make sense?

 

adkats1.jpg

 

I can hit you with a joinme so you can see what is going on if you like.

 

teamspeak is 74.208.103.208


* Restored post. It could be that the author is no longer active.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Our picks

    • I wanted I let you know that I am starting to build out the foundation for the hosting services that I talked about here. The pricing model I was originally going for wasn't going to be suitable for how I want to build it. So instead I decided to offer each service as it's own product instead of a package deal. In the future, hopefully, I will be able to do this and offer discounts to those that choose it.

      Here is how the pricing is laid out for each service as well as information about each. This is as of 7/12/2020.

      Single MySQL database (up to 30 GB) is $10 USD per month.



      If you go over the 30 GB usage for the database then each additional gigabyte is charged at $0.10 USD each billing cycle. If you're under 30GB you don't need to worry about this.


      Databases are replicated across 3 zones (regions) for redundancy. One (1) on the east coast of the USA, One (1) in Frankfurt, and One (1) in Singapore. Depending on the demand, this would grow to more regions.


      Databases will also be backed up daily and retained for 7 days.




      Procon Layer will be $2 USD per month.


      Each layer will only allow one (1) game server connection. The reason behind this is for performance.


      Each layer will also come with all available plugins installed by default. This is to help facilitate faster deployments and get you up and running quickly.


      Each layer will automatically restart if Procon crashes. 


      Each layer will also automatically restart daily at midnight to make sure it stays in tip-top shape.


      Custom plugins can be installed by submitting a support ticket.




      Battlefield Admin Control Panel (BFACP) will be $5 USD per month


      As I am still working on building version 3 of the software, I will be installing the last version I did. Once I complete version 3 it will automatically be upgraded for you.





      All these services will be managed by me so you don't have to worry about the technical side of things to get up and going.

      If you would like to see how much it would cost for the services, I made a calculator that you can use. It can be found here https://ezrcon.com/calculator.html

       
      • 10 replies
    • I have pushed out a new minor release which updates the geodata pull (flags in the playerlisting). This should be way more accurate now. As always, please let me know if any problems show up.

       
      • 6 replies
×
×
  • Create New...

Important Information

Please review our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.