**It is that simple. **
As suggested it could be implemented fairly easily on post game logs if and only if there was a report of intentional feeding. As a reminder I suggested that this would only help to qualify IN players who we have strong reason to believe were feeding, which would then rely on the use of the game replay to conclude . This would help reduce the volume of feeding reports that would need to be reviewed, to keep costs low for Riot, as they would not need to waste their time reviewing replays if player behavior was clearly NOT feeding.
Worst case scenario you would be able to alert to players that they were flagged for intentional feeding, and show how their distance from tower, and enemy health% varied compared to the global average for that elo (could be extended to contextualize champ, and role, and be normalized for global gold difference).
FeedingBuster to warrant a live video review if accompanied by a player report of intentional feeding. Only run on games where summoners receive reports of intentional feeding.
All of this data is readily available as you can see it online in the post game report, which shows gold, towers, and deaths by player as a function of time, along with where they happened on map.
FeederScore = 0
//First check to see if they feed early
If (Summoner.getDeathsByTime>1 && game.getTime<2:00){
FeederScore+=1
IntentToFeed=True
}
//Next check for playstyle to see if they are dying under tower or just running at the enemy and dying no where near their side of the map repeatedly
//**Contextualize deaths based on furthest tower standing for the position they play as a function of time. If they are dying under tower no big deal, if they die far from their tower with comparably low damage inflicted to the enemy champion, that is, by definition, feeding. Combined with intent to feed you can conclude probable cause of feeding.
TotalDeathDistanceFromTower=0
EnemyHealth%=0
lastdeathTime=0
For each death in Summoner.getDeaths() {
_
//See if they just run back to lane and die immediately at any point in the game_
If death.time-lastdeathTime<Summoner.getRespawnTime+120{
FeederScore+=1
IntentToFeed=True
}
lastDeathTime=death.time
//Calculate how far they were from tower and how much damage was inflicted on enemies for each time they died to see if they were playing safe or running at fed enemies just for shits
FurthestTower=GetTowers(death.time)[0]
TotalDeathDistanceFromTower+=death.location-FurthestTower.location
EnemyHealth%+=death.getKiller.getHealth%
}
AverageDeathDistance=TotalDeathDistanceFromTower/Summoner.GetDeaths().count
AverageEnemyHealth%=EnemyHealth%/Summoner.GetDeaths().count
If AverageDeathDistance>GlobalEloDeathDistanceAverage {
FeederScore+=1
IntentToFeed=True
}
If EnemyHealth%>GlobalEloEnemyHealth% {
FeederScore+=1
IntentToFeed=True
}
//Finally calculate if they player was teamfighting at anypoint during the game, or not for further context of player behavior. If no one else on the summoners team inflicted any damage on the champion that killed the feeding summoner, it is highly likely (not guarenteed, but again this is just to flag probably cause) that they were not team fighting.
For each death in Summoner.getDeaths() {
If death.getKiller.getDamageSources.count<=1{
FeederScore+=1
//No intentToFeed=true here cause this could just be them split pushing which is fine, but coupled with the other feeding behviors above makes for a more conclusive test
}
}
If (FeederScore>=2 && IntentToFeed){
SummonerFeeding=True
FlagForReview
}
AFK TEST
The client clearly tracks inputs and clicks in order to move champs, etc a simple timer that calculates how long it has been since last input, while champ location = on tower (or inside base if people figure it out) makes for a simple 4 line test for AFK
Summoner.TimeAliveOnTower=0
While (game = true) {
If (Summoner.Location==OnTower && game.time > 500){
Summoner.TimeAliveOnTower+=1
}
}
Happy to chat.