Jump to content

neutron

Plugin Developer
  • Content Count

    6
  • Joined

  • Last visited

About neutron

  • Rank
    Newbie

Contact Methods

  • Website URL
    https://battlefield.agency

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. View File Battlefield Agency Battlefield Agency - Battlefield Player Insights & BF4 anticheat About What is Battlefield Agency? At battlefield.agency we focus on combating cheaters in BF4 in efficient and sustainable ways. We offer you a free cheater ban list, updated by the hour. While automatic tools assist us, all bans are entirely manually reviewed and we strive for quality using skilled staff. What does this plugin do? This plugin enforces the ban list(s) managed by us and helps us link cheater accounts. Setup Acquire API key First, you need to get an API key to use with the plugin. To do so, log in to battlefield.agency using your Discord account. Find your server by using the search feature with "Search for: Servers" selected. Click your server and click "Verify" at the top. Then follow the instructions shown. Installation Download the .zip file from this post and extract it. Place BattlefieldAgency.cs in your Plugins/<game> folder, BF4, BF3 or BFH, depending on what you are installing for. Place BattlefieldAgencyAPI.ext in your Plugins/ folder. Installation instructions and layer version support details can also be found at battlefield.agency/servers. Settings General API key: paste the API key described above here. Enforcement VPN kicks: Specifies if the plugin should kick VPN users. Enable toxicity ban list: Specifies if the optional ban list for extremely toxic players should should be enforced. Read the ban policy for more information on this. Cheating bans are always enforced. Enable crasher ban list: Specifies if the optional ban list for crashing accounts should should be enforced. Read the ban policy for more information on this. Cheating bans are always enforced. Player Whitelist: Place any battlefield.agency player GUIDs (visible in the URL, like https://battlefield.agency/player/<id>) here to be excluded from being kicked. Logging Announce enforced bans: Specifies if the plugin should announce enforced bans to global server chat. Log kicks to file: Specifies whether to log players kicked by the plugin to an external log file. Kick log file path: Specifies the file name that the plugin should write the kick log to. It defaults to Logs/BAKicks.log. Debug: Specifies whether to output verbose/debug information to the console or not. Support To get support or report a bug, join our Discord server. License The plugin is licensed under a full proprietary license, with usage rights granted to server owners. This means that you are free to use the plugin for its intended purpose, but any redistribution or modification is not allowed. Submitter neutron Submitted 06/06/20 Category Plugins
  2. UDP floods are one of the easiest attack types to block. Tell your hoster to step up.
  3. Version 1.0.1

    8 downloads

    Battlefield Agency - Battlefield Player Insights & BF4 anticheat About What is Battlefield Agency? At battlefield.agency we focus on combating cheaters in BF4 in efficient and sustainable ways. We offer you a free cheater ban list, updated by the hour. While automatic tools assist us, all bans are entirely manually reviewed and we strive for quality using skilled staff. What does this plugin do? This plugin enforces the ban list(s) managed by us and helps us link cheater accounts. Setup Acquire API key First, you need to get an API key to use with the plugin. To do so, log in to battlefield.agency using your Discord account. Find your server by using the search feature with "Search for: Servers" selected. Click your server and click "Verify" at the top. Then follow the instructions shown. Installation Download the .zip file from this post and extract it. Place BattlefieldAgency.cs in your Plugins/<game> folder, BF4, BF3 or BFH, depending on what you are installing for. Place BattlefieldAgencyAPI.ext in your Plugins/ folder. Installation instructions and layer version support details can also be found at battlefield.agency/servers. Settings General API key: paste the API key described above here. Enforcement VPN kicks: Specifies if the plugin should kick VPN users. Enable toxicity ban list: Specifies if the optional ban list for extremely toxic players should should be enforced. Read the ban policy for more information on this. Cheating bans are always enforced. Enable crasher ban list: Specifies if the optional ban list for crashing accounts should should be enforced. Read the ban policy for more information on this. Cheating bans are always enforced. Player Whitelist: Place any battlefield.agency player GUIDs (visible in the URL, like https://battlefield.agency/player/<id>) here to be excluded from being kicked. Logging Announce enforced bans: Specifies if the plugin should announce enforced bans to global server chat. Log kicks to file: Specifies whether to log players kicked by the plugin to an external log file. Kick log file path: Specifies the file name that the plugin should write the kick log to. It defaults to Logs/BAKicks.log. Debug: Specifies whether to output verbose/debug information to the console or not. Support To get support or report a bug, join our Discord server. License The plugin is licensed under a full proprietary license, with usage rights granted to server owners. This means that you are free to use the plugin for its intended purpose, but any redistribution or modification is not allowed.
  4. You don't really understand @skulls. This is about PRoCons event handling being broken, for which I already posted a workaround/fix. The BF4 servers player.onAuthenticated event is the exact time after which a player can be kicked successfully, but it is not passed on to the plugin correctly by PRoCon. > OnPunkbusterPlayerInfo Too late. Map has already loaded, crasher already had a chance to press F12. Just as an example. Also, not every server runs Punkbuster. > OnListPlayers Why bother with it? The player list has every player after player.onJoin, even unkickable ones, and it's slower/less efficient to retrieve the player list than to run any other command. I've "solved" it in my own way rather efficient way now, you'll see that in our next plugin update, but I would definitely like for my patch to go through as this is still a very dirty solution.
  5. Okay, so I can see that player.onJoin is supposed to trigger PRoCons OnPlayerAuthenticated here: https://github.com/AdKats/Procon-1/blob/master/src/PRoCon.Core/Remote/BF4Client.cs#L823 Given what was said about the events having been switched around after BFBC2, I suppose this makes sense so the Plugin interface doesn't need overloads for both methods. But what baffles me is that it was apparently forgotten to also override DispatchPlayerOnAuthenticatedRequest in BF4Client.cs. This means that the default code in https://github.com/AdKats/Procon-1/blob/master/src/PRoCon.Core/Remote/FrostbiteClient.cs#L4298 never gets to trigger the event since the packet for BF4's player.onAuthenticated only contains two words (event and soldier name). The fix here would be to introduce this event override in BF4Client.cs (and probably also BFH etc.): protected override void DispatchPlayerOnAuthenticatedRequest(FrostbiteConnection sender, Packet cpRequestPacket) { base.DispatchPlayerOnAuthenticatedRequest(sender, cpRequestPacket); if (cpRequestPacket.Words.Count >= 2) { if (PlayerJoin != null) { this.PlayerJoin(this, cpRequestPacket.Words[1]); } } } This would still leave the events switched around to keep API compatibility, but at the same time trigger events correctly. I would just make this a PR on GitHub but I don't have a GitHub account under this name so I'm just posting it here. The problem is just that a new PRoCon version with this fix would not be available on all layers and thus I still need a solution given the current API. Thanks
  6. Hey, so while working on the Battlefield Agency plugin (where I strive to kick as fast as possible with the lowest performance impact) I noticed the following oddity, already posted by FalconTx in 2011 (!) In BF4, the order of events is this: player.onJoin name eaguid (sent by the server on blaze reserve slot request) and once actually connected player.onAuthenticated name Naively, you'd now think that to get those events, you listen to OnPlayerJoin and OnPlayerAuthenticated. But what actually happens confused the hell out of me: - player.onJoin fires OnPlayerJoin and OnPlayerAuthenticated - player.onAuthenticated fires nothing Sadly, player.onAuthenticated is exactly the point at which a player can be kicked successfully. Until now I've "solved" the problem by just spamming kicks until the player is gone, but this came with a load of new problems. For my new major update, I'd like to do things properly. Is there a way to do this properly? Thanks, Neutron
×
×
  • 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.