Commit Graph

149 Commits

Author SHA1 Message Date
RaidMax
c18be20899 add snap metric to anticheat
update various small code bits
2019-09-09 17:40:04 -05:00
RaidMax
db3a20c60b merge from 2.3 2019-08-28 13:47:38 -05:00
RaidMax
27a05ce6db update api controller to support actually filtering events by server
fix up stats manager async semaphore wait
add new shared guids
fix regex parsing with empty name
2019-08-28 13:45:53 -05:00
RaidMax
7c0e37cc8e Merge branch '2.3' into 2.4-pr 2019-08-24 20:16:35 -05:00
RaidMax
11d2df1fe8 small stat changes 2019-08-24 20:15:50 -05:00
RaidMax
a820929582 another fix because I'm retarded
bump version up
2019-08-24 14:06:23 -05:00
RaidMax
dcd1c97d37 Merge branch '2.3' into 2.4-pr 2019-08-24 11:10:43 -05:00
RaidMax
6726217354 Make stats update after 10 kills so we don't wait quite as long
Gracefully disconnect clients on shutting down again
2019-08-24 10:02:53 -05:00
RaidMax
c1a825f8f2 Merge branch '2.3' into 2.4-pr 2019-08-23 21:28:09 -05:00
RaidMax
563c73221e actually fix it here 2019-08-23 21:27:36 -05:00
RaidMax
d35001049f Merge branch '2.3' into 2.4-pr 2019-08-23 19:12:28 -05:00
RaidMax
652f3fb86b Fix small issue with saving client kills multithreaded 2019-08-23 19:11:36 -05:00
RaidMax
f877ba73a9 Merge branch '2.3' into 2.4-pr 2019-08-23 18:36:28 -05:00
RaidMax
91078eec0f Update to some stat stuff to fix some latent issues 2019-08-23 18:34:31 -05:00
RaidMax
85d88815f1 top stats info is per server instead of total when selecting each tab
fix issue with ingame name failing to match when using color codes
only show live radar for servers that support it
2019-08-10 09:08:26 -05:00
RaidMax
55fb36863c fix copy paste error in penalty loader
start allowing color codes from ingame
2019-08-01 09:37:33 -05:00
RaidMax
2b8d8fc4b7 Merge 2.3 into 2.4-pr 2019-07-25 10:01:20 -05:00
RaidMax
ac32034910 optimize index for rating history
update log server to prevent delays or missed information
2019-07-24 19:15:07 -05:00
RaidMax
e5cd824c99 start work for live radar 2019-07-17 12:37:24 -05:00
RaidMax
2542b7de12 Clean up some old files 2019-07-17 12:29:51 -05:00
RaidMax
16d2ec82b8 make sure flags are excluded from active penalties on player profile
modify how flags "expire"
2019-06-25 18:01:47 -05:00
RaidMax
421e90cf70 fix old bug of auto unflag not working
fix wrong thresholds on recoil
2019-06-24 18:32:14 -05:00
RaidMax
8119ff9f83 adjust detection thresholds for recoil and offset
make sure we don't keep adding penalties after first
add "Other" penalty for future plugin use
2019-06-24 16:56:47 -05:00
RaidMax
cb80def122 update version
make sure ac snapshots are saved
2019-06-16 14:49:04 -05:00
RaidMax
e669d0be82 don't count bots on master list
don't save every ac snapshot oops..
2019-06-16 12:19:23 -05:00
RaidMax
495197c19d add no recoil detection 2019-06-15 17:37:43 -05:00
RaidMax
82390340c9 fix duplicate meta data when restarting
fix issue with parsing anticheat info in non en-US culture
fix rare issue with client spots "swapping"
don't copy referenced shared library assemeblies from plugins
2019-06-09 09:50:58 -05:00
RaidMax
163523d586 convert GetPort to auto property
don't force disconnect player if someone is "in" their spot
increase gamelogserver max time before purge
2019-05-31 10:17:01 -05:00
RaidMax
95d64df321 combined Penalty and EFPenalty
moved some classes around
2019-05-29 16:55:35 -05:00
RaidMax
0b0290a871 fix issue with restarting via web
replace some hard coded string in javascript with localization
break things to fix things
2019-05-17 09:02:09 -05:00
RaidMax
5f588bb0f7 clean up the profanity determent plugin by using the Get/Set Additional properties
cleaned up the base event parser to not need the server object to generate the event
Hopefully prevent anticheat from freaking out when database connection is lost
2019-05-13 10:36:11 -05:00
RaidMax
1dc0f5a240 fix aggregate issue with KDR on global top stats
refactor some of the main application code to have a cleaner code flow
add enviroment flag to opt out of .net core telemetry in start script
fixed "a moment" missing the "ago"
fixed case sensitive client searches on postgresql
clean up command code flow
Add missing map "mp_cairo" to default settings
2019-05-08 20:34:17 -05:00
RaidMax
02622ea7de update application version
ignore stat events of bots if they are ignored
limit max number of bot profiles to 18, greater than 18 wraps
prevent anti cheat from running on bot events
create localization folder on publish so copying over doesn't fail
include quick message mapping on webfront server history chat
make gravatar on profile not repeat
2019-04-25 13:00:54 -05:00
RaidMax
03ae3b5822 deleted localization files as they're now generated during release
reintroduce throttling for servers that are unreachable (defaults to 60 seconds between polls)
small revert to the RektT5M parser contell -> tell
add migration to introduce gamename to server
impllement quickmessage mapping
2019-04-23 17:27:20 -05:00
RaidMax
b3e5f468a1 finish implementation of per server top stats page 2019-02-27 20:13:15 -06:00
RaidMax
c21bf2ebf1 continue working on per servver topstats 2019-02-26 21:25:27 -06:00
RaidMax
40f1697c97 fix damage event not including log line
complete initiall implementation for "2FA"
issue #52
issue #66
2019-02-16 15:04:40 -06:00
RaidMax
8dca05a442 Small fixes 2018-12-17 13:45:16 -06:00
RaidMax
4522992c0e fix remote commands
user clientkick_for_reason for T6 parsers
small bug fixes
2018-12-01 12:17:53 -06:00
RaidMax
9d6cbee69c update stats
change server id
fIx change log server complaining when empty read
2018-11-27 18:31:48 -06:00
RaidMax
5ac8a55c72 fixes for new polling setup
update database model for alias (nullable ip)
heartbeats now send ip to master server
2018-11-25 20:00:36 -06:00
RaidMax
9bdd7d1b8a More work modifying client stuff 2018-11-07 20:30:11 -06:00
RaidMax
ed83c4c011 started work on getting the restart functionality in the gamelogserver
fix bug with unbanned players still showing as banned via lock icon
move player based stuff into client class
finally renamed Player to EFClient via partial class
don't try to run this build because it's in between stages
2018-11-05 21:01:29 -06:00
RaidMax
d9d548ea18 Small anti-cheat update 2018-10-28 20:47:56 -05:00
RaidMax
d50e6c8030 change penalty expiration datetime to null for perm bans
add tempban max time
allow searching for GUID
stats returns ranking as well
fix for promotion/demotion text
2018-10-15 19:51:04 -05:00
RaidMax
e91d076b41 curtail lost connection messages from RCon
verify still compatible with T6
fix potential null reference exception during configuration reading/setup
2018-10-10 19:22:08 -05:00
RaidMax
b289917319 update project to .net core 2.1.5
got rid of "threadsafe" stats service in stats plugin
2018-10-07 21:34:30 -05:00
RaidMax
c8366a22e5 fixed the vpn detection plugin method signature call
added some fixes for stats/ac
2018-10-06 15:31:05 -05:00
RaidMax
de902a58ac write individual server log files and main log file seperately
log writing is thread safe now
2018-10-06 11:47:14 -05:00
RaidMax
c7547f1ad5 clean up publish folder output to have a less cluttered structure.
add migration class to perform the migration on update
2018-10-05 22:10:39 -05:00
RaidMax
9d946d1bad more stability changes 2018-10-03 21:20:49 -05:00
RaidMax
d45729d7e1 clean up rcon, fix a bunch of little things 2018-09-29 14:52:22 -05:00
RaidMax
5d93e7ac57 a ton of stuff and fix migations 2018-09-23 19:45:54 -05:00
RaidMax
0f9d2e92e1 fix for issue #50 2018-09-16 17:51:11 -05:00
RaidMax
4a46abc46d add index to time sent in EFCLientMessage, so we can retrieve faster in context view
set the maximum height of the
add link to profile on client chat
move change history into a seperate service
move around AC penalty processing
2018-09-16 15:34:16 -05:00
RaidMax
b9086fd145 fix parsing view angles in exponential form
update RestEase  and CodePages dependencies
optimized the find by name query
add index to name
2018-09-11 14:28:37 -05:00
RaidMax
3d8108f339 fixed profanity bug
fix the shared GUID connect
fix linux  log issue
2018-09-08 20:20:11 -05:00
RaidMax
39596db56e fixed rating and kill streak bug, but uncommenting something I forgot I commented out
Added SharedGUIDKick plugin to kick people with shared GUID
2018-09-08 17:29:30 -05:00
RaidMax
ba5b1e19a6 update readme
add vision average to client stats
other stuff
2018-09-07 22:29:42 -05:00
RaidMax
0c90d02e44 update libraries to pre release
fix remaining issue for issue #32
adds overall ranking to profile page for issue #24
2018-09-04 21:07:34 -05:00
RaidMax
cfbacabb4a fix bug with player not getting updated on disconnect (related to issue #24)
jint version downgraded for better stability (also locked the engine instance as it's not thread safe)
updated readme
remove vpn detection from application configuration as it's now in a seperate plugin
defaulted webfront bind URl to all interfaces
readd the custom say name
added visibility percentage to AC
2018-09-04 12:40:29 -05:00
RaidMax
e77ef69ee8 Added additional properties method to allow easier extension to client properties
updated VPN plugin to use WebClient
message is sent to client trying to execute commands before they are authenticated
fixed rare issue with ToAdmins failing
record bullet distance fraction for client kills (_customcallbacks)
change client level/permissions through webfront
ability to tempban through webfront
2018-09-02 16:59:27 -05:00
RaidMax
cc7628d058 fixed broken broadcast events
events don't get out of order when a invalid event line throws exception
handle the stats history update with no change throwing DBConcurrencyException
2018-08-31 22:35:51 -05:00
RaidMax
46bdc2ac33 moved event API stuff around
finally fixed threading issue (which actually had to do with IW4x log outputs being out of sync (not an issue with my code). What a lot of headache over something that wasn't my fault.
2018-08-30 20:53:00 -05:00
RaidMax
bbefd53db4 think I finished reworking the event system
added http log reading support for debugging remotely
started working on unit test framework
2018-08-28 16:32:59 -05:00
RaidMax
56cb8c50e7 reworked event management (again)
almost finished
2018-08-27 17:07:54 -05:00
RaidMax
0538d9f479 started update for readme
start update for version changes
hopefully fixed pesky stat bug
move vpn detection into script plugin
2018-08-26 19:20:47 -05:00
RaidMax
ac64d8d3c1 fixed unicode crap stuff in webhook
enable preview of tiered compiliation (faster startup)
ban events are sent to the API properly now
add vpn except id configuration
begin work on javascript plugin support
2018-08-22 20:25:34 -05:00
RaidMax
a0fafe5797 cleaned up some namespace discrepancies
fixed the coloring for custom groups translation
add reserved slots
add webhook project to show notifications in discord
2018-08-07 13:43:09 -05:00
RaidMax
6071ad8653 fix bug with AC failing to ban because of EF issue. 2018-07-05 21:04:34 -05:00
RaidMax
454238a192 finer version numbers work correctly.
fix bug with level being reset.
add {{ADMINS}} to message tokens
modified offset threshold calculation
2018-06-26 20:17:24 -05:00
RaidMax
e7c7145da1 Show time passed since ban instead of "forever"
reworked event api to include all events (sans unknown)
2018-06-16 21:11:25 -05:00
RaidMax
5be6b75ccf [webfront] search by ip and name
[application] levels set properly with multiple GUIDs
[stats] require 3 hours of playtime for top stats recognition
[application] configurable rcon polling rate
2018-06-07 21:19:12 -05:00
RaidMax
e60f612f95 [application] added chat context to profile page
[iw4script] reworked balance to balance based on performance rating
[stats] log penalty context to database
2018-06-05 16:31:36 -05:00
RaidMax
6d0f859a93 more updates to top stats page 2018-06-01 19:55:26 -05:00
RaidMax
696e2d12c9 change table design for rating history 2018-05-31 19:17:52 -05:00
RaidMax
bf68e5672f Add automated ban offense for anti-cheat
add EFClientStatHistory and EFClientAverageStatHistory for tracking change of stats over time
2018-05-30 20:50:20 -05:00
RaidMax
2204686b08 added top player stats
fix for some commands returning multiple matches found when target not required
2018-05-28 20:30:31 -05:00
RaidMax
d9a601328c stats tweaked to scale SPM based on team size
invalid client id results in 404 rather than exception page
performance based on traditional elo rating
fixed @ (broadcast commands)
added reports to penalty list and profile
2018-05-24 14:48:57 -05:00
RaidMax
be68335f70 update change tracking and elo
master shows monitoring server count
master can provide individual localizations
2018-05-20 21:35:56 -05:00
RaidMax
4d585e6ab2 set default elo rating
maybe fix deadlock again :c
changed "skill" to Performance (Skill + Elo / 2)
2018-05-17 18:31:58 -05:00
RaidMax
4006c09045 add most played command
hopefully fixed thread lock?
started work on elo rating
2018-05-15 23:57:37 -05:00
RaidMax
699c19cd4b adding Cod4 support (for steam GUID is truncated to 16 characters)
exit properly whoops
add all linked accounts to drop down
consolidate linked admin accounts to the most recently seen one
limited some waits to 5s to hopefully prevent a rare thread lock
2018-05-14 12:55:10 -05:00
RaidMax
6e5501b32d fix T6 reading
add WaW support
fix stats threading
2018-05-10 23:52:20 -05:00
RaidMax
e964013700 lots of fixes :) 2018-05-10 00:34:29 -05:00
RaidMax
9ff7f39e8d SPM fix for negative/teamdamage
added localization as downloaded from the Master API
interupted network communication no longer treated as unknown exception
topstats prints the right message if no one qualifies
angle adjustments
move unflag to seperate command
2018-05-07 23:58:46 -05:00
RaidMax
e8dff01c41 re-added the kill server command (can only be used if run as admin)
less warns when using a disposed socket
topstats added to tokens as {{TOPSTATS}}
fixed topstats reporting for only a single server
added fix to iw4 regex for negative score
tokens now support multiple lines (using Environment.NewLine to separate)
localization includes culture again
2018-05-05 15:36:26 -05:00
RaidMax
3092a529e9 add penalties for angle info
queue Tell/Say to prevent plugins from throwing exception when server is offlline
fixed CPU usage issue over time
sort penalties by type on webfront
2018-05-03 23:22:10 -05:00
RaidMax
f442f251f6 more stat SPM fixes
prevent null say event from executing when exiting
adjusted rcon and socket timeout
fixed bug with login/setpassword not working after claiming ownership
2018-05-03 00:25:49 -05:00
RaidMax
3a463be7f8 Profanity deterrent kick players with offensive names
status parsing with Regex in IW4 is much cleaner
fixed tempban not always kicking
made plugin event tasks parallel
2018-04-29 15:44:04 -05:00
RaidMax
35e7f57156 fixed up IW5 parser with new event system
changed login alias to li (duplicate)
fixed crashing bug in generic repo
fixed anonymous name in access to web console
2018-04-28 20:11:13 -05:00
RaidMax
bb90a807b7 moved heartbeat to timer instead of manual task/thread
GameEventHandler uses ConcurrentQueue for events
exception handlers for events and log reading
added IW4ScriptCommands plugin
fixed stats
lots of little fixes
2018-04-28 00:22:18 -05:00
RaidMax
2c2c442ba7 updated portuguese translation
fixed issue with locale when no config present
changed kick color on webfront
aliased owner to iamgod (for b3 familiar users)
hopefully fixed stats issue
added T5M (V2 BO2) support
made dvar grab at beginning minimal to prevent throttling on older CODS
2018-04-26 19:19:42 -05:00
RaidMax
99390f1f35 fixed issue with status response erroring when incorrect length
view angle vector parse fail is now a handled exception
change local host check to byte array to make it faster than comparing string
kick command now requires moderator level or higher
tempban now requires administrator level or higher
hopefully fixed negative SPM bug
pipelined the events and consolidated them to run through GameEventHandler
uniform console colors
2018-04-26 01:13:04 -05:00
RaidMax
4caa4655e2 abstracting rcon parsing and event parsing
changed Event to GameEvent
finally fixed the stats NaN
check ip for bans
consolidated console, profile, and logout into dropdown
make sure game is iw4 before using :^ in say
fix pm not showing from name if in web console
show time left of temban on profile
2018-04-13 01:32:30 -05:00
RaidMax
827e69f70a fixed loader offset
some stat stuff still not working
made seperate parsers
2018-04-11 17:24:21 -05:00
RaidMax
1a50391bfe exit works correctly again
changes to rcon for T6M
hopefully fixed some stat issues (spm and database errors)
2018-04-10 19:25:44 -05:00
RaidMax
c2a3cf0d15 fixed minification and bundling
template tweaks
2018-04-09 22:33:42 -05:00
RaidMax
718087309c migrating Stats to .Net Core 2
moved buildscripts to application
added publish profile
2018-04-08 16:50:58 -05:00