{"action":"created","issue":{"url":"https://api.github.com/repos/RoboJackets/robocup-software/issues/330","labels_url":"https://api.github.com/repos/RoboJackets/robocup-software/issues/330/labels{/name}","comments_url":"https://api.github.com/repos/RoboJackets/robocup-software/issues/330/comments","events_url":"https://api.github.com/repos/RoboJackets/robocup-software/issues/330/events","html_url":"https://github.com/RoboJackets/robocup-software/pull/330","id":93166990,"number":330,"title":"Add a onetouchpass play","user":{"login":"jgkamat","id":4349709,"avatar_url":"https://avatars.githubusercontent.com/u/4349709?v=3","gravatar_id":"","url":"https://api.github.com/users/jgkamat","html_url":"https://github.com/jgkamat","followers_url":"https://api.github.com/users/jgkamat/followers","following_url":"https://api.github.com/users/jgkamat/following{/other_user}","gists_url":"https://api.github.com/users/jgkamat/gists{/gist_id}","starred_url":"https://api.github.com/users/jgkamat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jgkamat/subscriptions","organizations_url":"https://api.github.com/users/jgkamat/orgs","repos_url":"https://api.github.com/users/jgkamat/repos","events_url":"https://api.github.com/users/jgkamat/events{/privacy}","received_events_url":"https://api.github.com/users/jgkamat/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/RoboJackets/robocup-software/labels/Plays/Behaviors","name":"Plays/Behaviors","color":"bfe5bf"},{"url":"https://api.github.com/repos/RoboJackets/robocup-software/labels/soccer","name":"soccer","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-07-06T01:35:36Z","updated_at":"2015-07-06T01:50:11Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/RoboJackets/robocup-software/pulls/330","html_url":"https://github.com/RoboJackets/robocup-software/pull/330","diff_url":"https://github.com/RoboJackets/robocup-software/pull/330.diff","patch_url":"https://github.com/RoboJackets/robocup-software/pull/330.patch"},"body":"This still needs a lot of cleanup, but I think its about time for this to be reviewed. Currently the only thing left to do is aim for areas that arent the center of the goal when using touchpasses (which is waiting on window evaluator improvements (that I could do), and possibly optimize my function for determining receive points (Right now it creates a list of points, and then iterates through them, we don't have to store this list).\r\n\r\nThis works best when the ball is on the enemy side of the field. Sometimes the ball won't replan if a robot gets in the way, this is because the field is layed out so all points are blocked (usually). We can increase the amount of checked points to overcome this. I also check for a replan once every 30 frames, as it's relatively slow.\r\n\r\nLet me know if anything needs more work/documentation/cleanup, and i'll get to it! :smile: \r\nI've rebased this onto the latest master so you may need to `reset --hard`. (@rmkeezer).\r\n\r\nThis closes #244"},"comment":{"url":"https://api.github.com/repos/RoboJackets/robocup-software/issues/comments/118690754","html_url":"https://github.com/RoboJackets/robocup-software/pull/330#issuecomment-118690754","issue_url":"https://api.github.com/repos/RoboJackets/robocup-software/issues/330","id":118690754,"user":{"login":"justbuchanan","id":115131,"avatar_url":"https://avatars.githubusercontent.com/u/115131?v=3","gravatar_id":"","url":"https://api.github.com/users/justbuchanan","html_url":"https://github.com/justbuchanan","followers_url":"https://api.github.com/users/justbuchanan/followers","following_url":"https://api.github.com/users/justbuchanan/following{/other_user}","gists_url":"https://api.github.com/users/justbuchanan/gists{/gist_id}","starred_url":"https://api.github.com/users/justbuchanan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/justbuchanan/subscriptions","organizations_url":"https://api.github.com/users/justbuchanan/orgs","repos_url":"https://api.github.com/users/justbuchanan/repos","events_url":"https://api.github.com/users/justbuchanan/events{/privacy}","received_events_url":"https://api.github.com/users/justbuchanan/received_events","type":"User","site_admin":false},"created_at":"2015-07-06T01:50:11Z","updated_at":"2015-07-06T01:50:11Z","body":"Sounds great!  I'll look through and review it later tonight or tomorrow.\r\n\r\n@barulicm is rewriting the WindowEvaluator in C++ (with a python wrapper) and I think we'll add in shot success likelihood into it.  I think we'll wait for that to go through before merging this.\r\n\r\nOne thing that would probably be good is if you could refactor this into a tactic, so we could easily drop one_touch_pass into an existing play.  This would just require moving most of the code out of the test play you currently have an into a new class that subclasses Tactic."}}