{"action":"created","issue":{"url":"https://api.github.com/repos/deathsythe47/base_entranced/issues/50","repository_url":"https://api.github.com/repos/deathsythe47/base_entranced","labels_url":"https://api.github.com/repos/deathsythe47/base_entranced/issues/50/labels{/name}","comments_url":"https://api.github.com/repos/deathsythe47/base_entranced/issues/50/comments","events_url":"https://api.github.com/repos/deathsythe47/base_entranced/issues/50/events","html_url":"https://github.com/deathsythe47/base_entranced/issues/50","id":113140158,"number":50,"title":"Anti-spam","user":{"login":"deathsythe47","id":13821762,"avatar_url":"https://avatars.githubusercontent.com/u/13821762?v=3","gravatar_id":"","url":"https://api.github.com/users/deathsythe47","html_url":"https://github.com/deathsythe47","followers_url":"https://api.github.com/users/deathsythe47/followers","following_url":"https://api.github.com/users/deathsythe47/following{/other_user}","gists_url":"https://api.github.com/users/deathsythe47/gists{/gist_id}","starred_url":"https://api.github.com/users/deathsythe47/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/deathsythe47/subscriptions","organizations_url":"https://api.github.com/users/deathsythe47/orgs","repos_url":"https://api.github.com/users/deathsythe47/repos","events_url":"https://api.github.com/users/deathsythe47/events{/privacy}","received_events_url":"https://api.github.com/users/deathsythe47/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/deathsythe47/base_entranced/labels/enhancement","name":"enhancement","color":"c7def8"},{"url":"https://api.github.com/repos/deathsythe47/base_entranced/labels/major%20project","name":"major project","color":"cc5500"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":14,"created_at":"2015-10-24T06:05:56Z","updated_at":"2016-04-12T06:56:55Z","closed_at":"2016-04-12T06:56:13Z","body":"I think these are the two most common methods of spam.\r\n\r\nMethod 1 (\"but I was just planting!!!111\" minespam): Tossing mines into chokepoints even though you know enemies are going to run through momentarily, then saying you were \"just planting\" and justifying the spam because nobody was in the chokepoint/doorway during the nanosecond you were tossing mines(even if you knew they would be likely to run in immediately afterwards)\r\n\r\nSolution: When a defender attempts to throw a mine, check to see if there are any non-mindtricking enemies within X distance and within a reasonably-wide cone of forward vision. If a defender attempts to throw a mine while there are enemies within this distance and cone, instantly remove the mine from the world and refund the demo's ammo back to him. (If there are any walkers or jedis using protect nearby, don't bother with the restriction, because spamming walkers and protecting jedis is okay). This will force a player to use other weapons, instead of mines, when enemies are nearby and in front of them.\r\n\r\nMethod 2 (doorspam): Repeatedly firing splash weapons at doors, or slightly in front of doors, so that any enemy who comes through will instantly be hurt.\r\n\r\nSolution: Note the time (in milliseconds) during which a projectile is launched by a defender. Also note the open/closed status of all doors at that moment. Then, later, at the moment immediately before the projectile will explode, if the projectile is near a door that had been closed at the moment when the projectile had been fired, instantly remove the projectile from the world. This will force players to wait for the door to open before attacking.\r\n\r\nThe \"was it fired at a closed door?\" detection should be two-fold: (1)check if the weapon was fired at a closed door(crosshair aimed at the door), and (2)check if the door is within the explosion splash radius(accounts for explosions aimed NEAR a door)"},"comment":{"url":"https://api.github.com/repos/deathsythe47/base_entranced/issues/comments/208738943","html_url":"https://github.com/deathsythe47/base_entranced/issues/50#issuecomment-208738943","issue_url":"https://api.github.com/repos/deathsythe47/base_entranced/issues/50","id":208738943,"user":{"login":"deathsythe47","id":13821762,"avatar_url":"https://avatars.githubusercontent.com/u/13821762?v=3","gravatar_id":"","url":"https://api.github.com/users/deathsythe47","html_url":"https://github.com/deathsythe47","followers_url":"https://api.github.com/users/deathsythe47/followers","following_url":"https://api.github.com/users/deathsythe47/following{/other_user}","gists_url":"https://api.github.com/users/deathsythe47/gists{/gist_id}","starred_url":"https://api.github.com/users/deathsythe47/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/deathsythe47/subscriptions","organizations_url":"https://api.github.com/users/deathsythe47/orgs","repos_url":"https://api.github.com/users/deathsythe47/repos","events_url":"https://api.github.com/users/deathsythe47/events{/privacy}","received_events_url":"https://api.github.com/users/deathsythe47/received_events","type":"User","site_admin":false},"created_at":"2016-04-12T06:56:55Z","updated_at":"2016-04-12T06:56:55Z","body":"Added some more commits recently to do a visibility check on enemies/walkers and improve hoth hangar detection."}}