B-Spec Grinder 2.5.2: Automate Remote Races

Discussion in 'GT5 B-Spec' started by yonis, Feb 25, 2011.

  1. yonis

    yonis Premium

    Messages:
    264
    Location:
    United States
    EDIT (2013-02-18): I am no longer developing this project. It will continue to be provided below "as-is" with no warranty. As such, I have also disabled the Donate feature.

    If there are any enthusiastic GTPlaneteers who want to pick up the torch (or already have), PM me and I'll give you a link to your edition here instead.


    Thank you all for the support during the development of this Widget. It means a great deal to me. I wanted to experiment with providing a free, high-quality program to a small but passionate community of people. For me, this experiment was a success. I sincerely hope it was useful to you, and that it will continue to be in the future.

    ----------------------------------------
    ORIGINAL POST BELOW:
    ----------------------------------------

    This is a Widget which will automate Remote Races for you. As soon as one race ends, it will try to start another.



    Keep in mind that your PS3 may drop its connection to the Internet if you leave it running overnight, in which case B-Spec Grinder will not be able to communicate with it.

    HOW TO USE IT
    Download and install Yahoo! Widgets (Windows or Mac OS X).
    Download and run B-Spec Grinder v2.5.2 (it's the Widget inside the ZIP file).
    Enter your PSN email address and password in the preferences, and select the country to which the account belongs.


    HOW DOES IT WORK?
    This Widget, to put it simply, emulates a web browser. Using HTTPS, it first authenticates with store.playstation.com to authenticate your credentials. Then, just like a browser, it stores the logged in session and starts making requests to the JSON APIs on gran-turismo.com. It requests your profile information and the status of your PS3, then tries to automatically launch a race if it's online and ready to go, trying to fill all 16 driver slots with random drivers from your friends list. Then, it monitors the status of the race using the Remote Race JSON API, updating the display appropriately, and when the race is over, it repeats. Simple as that.

    CAN I GET IN TROUBLE FOR USING THIS?
    I honestly don't know. Because you can only use one of your own drivers at a time, you're benefitting other people more than you are yourself when you use this Widget. But, this is not an official use of the Remote Race API (I've totally reverse-engineered it) and I suppose it's kind of cheating, so Sony may frown upon it. If in doubt, don't use it!

    ANY KNOWN PROBLEMS?
    Sony's servers can be a bit ropey at times, so you may experience issues when loading data. The Widget has been thoroughly tested on the US servers, so if you have problems logging into your own country's server, try switching to the US one.

    I have not successfully been able to log into the Japanese servers, either.

    I'VE NOTICED IN MY FRIENDS' DRIVERS, NEXT TO SOME OF THEIR NAMES, THERE'S A "?" SYMBOL.
    This means that the Widget was denied access to that friend by Polyphony's servers. You'll see the same error if you log into the site proper. After you add a friend on PSN, both of you need to boot up GT5 so that Polyphony's servers know about it. After that, it can take a couple of hours before Polyphony's servers will sync up.

    OKAY BUT WHAT IF I HAVE A PROBLEM?
    Gather as much information as you can get about what happened before the problem occurred and report it in this thread. Then, reload the Widget or change over to the US servers to see if the problem goes away.

    WHERE'D THE DEBUG WINDOW GO?
    The debug window was a temporary fixture for debugging server connections during the beta phase. You can enable logging under the Advanced section of the Widget Preferences.

    An upcoming version will allow you to see a list of the races run without having to turn on logging, so sit tight!

    I DON'T TRUST YOU WITH MY PSN ACCOUNT.
    I understand why you wouldn't. You can crack open the Widget and look at all the source files with this Widget. It is trivial for me to obfuscate the JavaScript, but I have not because I have nothing to hide.

    I'm also fully compliant with Yahoo! Widgets' security policies; you can see every domain my Widget accesses right in the security prompt. Any domain outside of that whitelist is blocked by the engine, so you can see that your login credentials are not going through any servers they shouldn't be.

    I'VE BEEN USING THIS FOR A WHILE AND GT5 LOADS AND ENDS RACES A LOT SLOWER NOW.
    In GT5, try going to Options > Network > Clear System Cache. It may take around 10 or 20 minutes if you've never done it before, but it should help! Thanks to vakie-81 for that tip.

    VERSION HISTORY
    Right-click the Widget and select "About B-Spec Grinder" to see which version you're running.

    Current version: 2.5.2
    • Now displays the fancy new helmets from the GT5 1.10 patch!
    • Fixed the following errors:
      • Problem where cookies were not being properly deleted after expiration.
      • Cookies with no expiration date set were not properly deleted when the Widget was reopened.
      • "Secure" session cookies did not have a test in place to make sure they were being sent over https.

    2.5.1
    • Quick bandaid for a cookie change on the PlayStation Network login page.

    2.5
    • Several changes to the authentication code:
      • Tested with new PlayStation Network authentication.
      • Now caches session cookies between relaunches.
        • This should (hopefully) lead to better reliability with the PlayStation Network is undergoing maintenance.
        • Startup time should be much improved if we have a cookie set. V-TEC just kicked in, 'yo!
      • Lets you know if you need to update your PlayStation Network login credentials.
        • PSN will automatically email you with a reset link if you try to log in from the Widget.
      • Recognizes when the PlayStation Network is in maintenance mode and it cannot log in.
    • You can now elect to stop the Widget from automatically starting races.
      • The Widget will wait for the current race to complete but will not start another one.
      • One novel use of this mode is monitoring races which are started from another computer.
    • The Widget is localizable to the following languages supported by Yahoo! Widgets. Please PM me if you want to translate the interface to:
      • Mandarin Chinese
      • Simplified Chinese
      • Danish
      • Dutch - Thanks, GTHQ_MeShell!
      • Finnish - Thanks, MMORacing!
      • French - Thanks, Dany Caron (DCSemi) and WarriusZero!
      • German - Thanks, Andreas 'gNNY' Nie!
      • Italian
      • Japanese
      • Korean - In progress, maybe
      • Norwegian - Thanks, dr_de5ibel!
      • Portuguese - Thanks, João Tiago "JT"!
      • Russian
      • Spanish - In progress
      • Swedish - In progress
    • Fixed the following errors:
      • Problem where the experience sorting calculation was inaccurate.
      • Security sandbox problem related to $redirect_url.replace('signout/','') (for real this time). Retries in one minute.
      • Security sandbox problem related to /[country]/signin/psn_error.html. Assumes the PlayStation Network is in maintenance mode.

    Older Version History...
     
    Last edited: Feb 19, 2013
  2. balsaq

    balsaq

    Messages:
    34
    Great update and much appreciated for what you're doing Yonis.

    :tup:
     
  3. Halvstein420

    Halvstein420

    Messages:
    45
    Thanks! This will help a lot money wise, after what PD did with the 1.07 update.

    EDIT:
    Remote Race Country Codes:
    https://www.gtplanet.net/forum/showthread.php?p=5890374#post5890374
    https://www.gtplanet.net/forum/showthread.php?p=5897242#post5897242
    OLD spreadsheet: https://docs.google.com/spreadsheet...NkMEdweGZUelc0VWc&hl=en&authkey=CKaL11E#gid=0

    Put "preferences.preferredRace.value = id;" in the debug window, where id is the ID of the race you want to run.

    Yahoo Widget Debug Mode:
    https://www.gtplanet.net/forum/showthread.php?p=5503266#post5503266

    Thanks goes to Mikerobe and firestartar for the guide and the new RR Country Codes.
     
    Last edited: Sep 20, 2011
  4. Andrew9RS

    Andrew9RS

    Messages:
    835
    When I download this, I extract to my Destop and I get an Error upon trying to open the widget.

    "Could Not Open Widget C:\User\User\Desktop\B-SpecGrinder.widget. It either isnt a Widget or you dont have access to that file. (StartWidgetProcess:Unable to locate .kon file)



    I ran the other one for 24 hours no problem, I tried to download the Fix that the other guy in your other thread posted and I get the exact same error. I closed this one and Tried opening the one you sent me in PM originally and It works.

    Dont know why the one that is linked in your first post doesnt work. Also, Says that the file is 26kb when I know its fairly larger than that.


    Any Thoughts?
     
  5. yonis

    yonis Premium

    Messages:
    264
    Location:
    United States
    I just used the standard Windows ZIP extraction and it worked fine. Try that; if it doesn't work, I'll zip it in a different way.
     
  6. Andrew9RS

    Andrew9RS

    Messages:
    835
    Got it fixed, I tried saving it to another location other than the desktop and it works and opens perfectly.

    Hmmm dont know why Downloading to my Desktop wouldnt allow it to work?


    Any reason why?
     
  7. Testdasi

    Testdasi

    Messages:
    78
    Fantastic! Thanks a lot! You rock! What else can I say?
     
  8. yonis

    yonis Premium

    Messages:
    264
    Location:
    United States
    No idea. A guess is that Yahoo! Widgets didn't have permission to read the file there, but that'd be kind of absurd.

    Anyway, glad you got it working.
     
  9. Testdasi

    Testdasi

    Messages:
    78
    Permission quirks with Win Vista and 7 drives me crazy sometimes. One of those, I need to see it to fix it kind of problems.
     
  10. ypmud

    ypmud

    Messages:
    53
    I had issues with this not working as it wouldnt work if i set it to United Kingdom do you want me to post the error it comes up with ?
     
  11. yonis

    yonis Premium

    Messages:
    264
    Location:
    United States
    Yes, please. You could also try setting the country to US; that's the version I've been doing all of my testing in.
     
  12. balsaq

    balsaq

    Messages:
    34
    Just to point out, I'm using UK in the options and it's working fine (best it has done so far in fact).
     
  13. Timppaq

    Timppaq Premium

    Messages:
    5,115
    Location:
    Finland
    :lol:

    LOVE IT!!!
     
  14. nunorosendo

    nunorosendo

    Messages:
    451
    I think its great, but would be even better if we could choose the friends that we want to run and save it, to run those ones on all races.
    Just an idea.
     
  15. Testdasi

    Testdasi

    Messages:
    78
    Or a prefered list which have to be filled before going on random. Option of how many Bobs to use from the prefered list would be great too
     
  16. BadDoggie

    BadDoggie

    Messages:
    44
    Hi Konis, looks good dude - cheers.

    One request/suggestion for you - could you add an option to turn off the debug window?

    Or, what could be really cool (for tracking lock ups etc), is an optional/expandable "log window" that shows the messages at the bottom of the widget... like this (please excuse crudity of this mockup, I'm sure that it's easier to match the theme in the Widget Dev Tools than MSPaint!).
     

    Attached Files:

  17. enog

    enog

    Messages:
    56
    Call me paranoid, but no way am I putting my PSN ID and password into a random app! That is how accounts get hacked!

    Of course, if you feel safe doing it, feel free.... :nervous:
     
  18. ypmud

    ypmud

    Messages:
    53
    02/25/11 11:35:05.892: Could not successfully retrieve data! Will try reconnecting in 5 minutes.
    02/25/11 11:35:05.893: Data was as follows:
    --------------------------------------------
    --------------------------------------------
    --------------------------------------------
    URL: https://eu.gran-turismo.com/gb/api/gt5/remoterace/
    POST Data: job=7&replay_save=0&_=
    Response: ----------------------------------
    Could not load URL with POST
    --------------------------------------------
    --------------------------------------------
    --------------------------------------------
    02/25/11 11:35:07.607: Command hasn't gone through. Try it again.


    thats what i get when it loads the UK settings :(
     
  19. Ava Pug

    Ava Pug

    Messages:
    12
    Working great here. Been running it all day.
     
  20. polly181

    polly181

    Messages:
    7
    thanks yonis, ggod work :)
     
  21. T3mpu5_Fu91t

    T3mpu5_Fu91t

    Messages:
    78
    Ive posted quite a few ideas in the last thread:


    A manual/auto switch for starting a race...

    If anything goes wrong, could it restart itself??
    I've noticed it takes its time starting a new race sometimes... Maybe a timer to restart if it takes too long to do something.

    Maybe a switch to select your own driver or have it random??

    A layout like it has with the possitions of the race but with more details
    Instead of hovering over the helmets..

    Drop down menus...
    To select preferred friends....(maybe up to 5 or something)

    Your Own Driver (then extra option 'random')

    Race starts....(automatic,manual)

    Also multi skin UI's (like in winamp if you have used it) Big screen version (with more details) or Small screen (like it is now)

    Colours

    Option to save replays...


    I think its just a matter of time for this to develop...
     
  22. Igwyana

    Igwyana

    Messages:
    4,643
    Location:
    England
    Great work Yonis thanks for this, I'm using UK psn settings withot any issue so far.

    Thanks again for this :)
     
  23. frason

    frason Premium

    Messages:
    1,092
    I'm trying this out now as well, seems to work fine so far.

    Great work yonis!
     
  24. hst12

    hst12

    Messages:
    58
    Oh dear, I chose this morning to run my Bobs on Le Mans 24 hours so can't try it yet.:indiff:

    Thanks for making this Yonis.:tup:
     
  25. Andrew9RS

    Andrew9RS

    Messages:
    835
    I just hope this doesnt get too out of control (in the minds on PD) and they put a Stop to this.


    I Love it! Last night Ran it for a few hours, Went from a Level 0 B-Spec (New Game on different PSN) to level 20b-spec!

    Hopefully If i Remote race enough to at least the Enduros, I can actually Play Every single B-Spec Event and Reach Level 40 WIthout a Single Grind!


    That is my GOAL!
     
  26. Xenn

    Xenn Premium

    Messages:
    2,223
    Location:
    United Kingdom
    It doesn't, in anyway, get your accounts hacked. All it will do is, it will connect to the Gran Turismo site, like how you log in on their site.
     
  27. Testdasi

    Testdasi

    Messages:
    78
    Yahoo widget is open source as far as I know. Because I was able to "decompile" a previous version, read the java code and edit the code. Don't think u can hide malicious code for long as the widget gets more scrutini.
     
  28. Andrew9RS

    Andrew9RS

    Messages:
    835
    I just hope this Lasts a while as I would hate for PD to think this is somewhat Cheating
     
  29. Xenn

    Xenn Premium

    Messages:
    2,223
    Location:
    United Kingdom
    Gotta say, this newer version works like a charm! I like the options set for this, like choosing the length for events.

    Thanks for this!
     
  30. Peterram430

    Peterram430

    Messages:
    538
    I'm getting error: JSON.parse (JSON.js: Line 28)

    Brilliant idea though, thanks for making it. :tup:

    EDIT: Changed to US account and works perfectly!
     
    Last edited: Feb 25, 2011