ISI Servers PLEASE

Discussion in 'General Discussion' started by Ashes, Apr 13, 2015.

  1. Noel Hibbard

    Noel Hibbard Registered

    Joined:
    Oct 5, 2010
    Messages:
    2,744
    Likes Received:
    40
    Okay, more thoughts. With a plugin I can advance the session according to a schedule. If the server crashes I can start the server back up and then advance the server to the correct session. So, according to Rich's schedule:
    Practice: 20mins
    Qualify: 10 mins
    Warmup: 5 mins
    Race: 15 mins

    Say the server crashes 5mins into the P session. I could bring the server back up and it will start right off in the correct session. But 15mins in I would need to advance the session to Q so it stays in alignment. After that I wouldn't need to do any manual advancing. But lets say it crashes in 5mins into Q. I would bring it back up and then advance it to Q and then advance again in another 5mins. If it crashes in the race session then I guess I would just bring it back up and leave it in the P session and then restart the P session at the end of the scheduled race and then it will be back in sync. Not perfect but the servers really don't crash much so it shouldn't be too bad.

    I've been writing a timing system and for testing I have been running a dedi with 30 ai and set to not pause when empty. So it literally runs race after race 24/7. But I need to test to see if the sessions will rotate even when there are no AI. I will do that now. If the sessions run even when empty then that would be great.
     
  2. B1K3R

    B1K3R Registered

    Joined:
    Apr 6, 2012
    Messages:
    1,605
    Likes Received:
    88

    That would be bloody awesome Noel ! :)
     
  3. Ashes

    Ashes Registered

    Joined:
    Mar 4, 2014
    Messages:
    60
    Likes Received:
    0
    Noel, B1K3R & Rich.
    You guys are legends. So excited for what you are working on.
    I fall into the "get home from work, spend a bit of time with kids, get them into bed, spend a bit of time with my wife, she goes to bed, okay, now I have an hour or two to race, let me go online" category.
    I suppose I am a casual sim racer then, but I want to race on the software that I believe simulates real driving the best.

    So, for me, what you are working on will be SO awesome - I cannot wait.
    Bummed I'm away from my pc till next week, because I'm keen to get online.
    A few questions...
    1. Will voting be disabled for the timed servers (restart race / weekend etc)?
    2. How does the schedule cater for things like the over-run on quali while guys finish there laps (i.e. shifting the quali window outside of 20 mins)?
     
  4. B1K3R

    B1K3R Registered

    Joined:
    Apr 6, 2012
    Messages:
    1,605
    Likes Received:
    88

    hahha same here mate, hence why we are trying to make this project work


    These are the tricky part mate. Voting should be disabled as otherwise the schedule will be screwed up....

    As for your second question.....it's my biggest fear, but there is always a solution for everything. Have not arrived there, but hopefully we'll find a way...

    Note that at this stage we are not sure how possible all this is, we're just experimenting to see if its feasible with what we have
     
  5. Ashes

    Ashes Registered

    Joined:
    Mar 4, 2014
    Messages:
    60
    Likes Received:
    0
    Yeah - sure there is a solution.
    Wish I had experience coding plugins / setting up servers.
    In IT for my day job, so sure I'd have been able to help.
    You guys are going like a boeing though, so keen to see where this lands.
    Honestly, even if the timing spills over a little - I think what you are proposing will already make a big improvement.
     
  6. B1K3R

    B1K3R Registered

    Joined:
    Apr 6, 2012
    Messages:
    1,605
    Likes Received:
    88

    I might have found a way to get the timing right. Yesterday I experimented with Rich server and when I called the API for SessionInfo, I get the Session Type and the Time Elapsed. So Rich told me that he set the server to Practice, Qual, Warmup and Race and he gave me the times.

    So basically I grab the session type from the SessionInfo, the Elapsed Time and from Rich info I get compute the "server start time".

    Once I know the start time, then I can generate the schedule. But then again, I am sure that between sessions, there will be a time too. So I'll have find find a way around that. We'll see :)

    C++ is not my strength really (I'm mainly C# and web stuff) so I struggle with plugins but anything else is fun.
     
  7. Rich Goodwin

    Rich Goodwin Registered

    Joined:
    May 3, 2012
    Messages:
    1,219
    Likes Received:
    9
    I'm sure there are options for "allow finish hotlap" (could set it to no to force the time) and also time before the race ends after the drivers finish.
     
  8. Ashes

    Ashes Registered

    Joined:
    Mar 4, 2014
    Messages:
    60
    Likes Received:
    0
    Does the API - expose the option to "skip to next session"?
    If that is the case, then you could read the current session, forget about elapsed time altogether, and when the system time gets to...
    x:19 -> skip to next
    x:39 -> skip to next
    Race duration 20 mins

    Repeat cycle. Like I said - I know nothing about running a server nor writing plugins for rf2, but that would be the ideal scenario I would think.
    No need to worry about calculating things on server crash either - you simply fall into the cycle mentioned above.
     
  9. B1K3R

    B1K3R Registered

    Joined:
    Apr 6, 2012
    Messages:
    1,605
    Likes Received:
    88
    That would be great :)


    At the moment, I am only using the default ISI readonly APIs where I get info from the server to create the schedule. Then my web app will take care of the rest to allow user to subscribe to an session where others can see and join.

    As for the API you are talking about, that would be a separate app running on each server to take care of these things. I have not gone into that yet and according to Noel a few things are possible and I think he is willing to help us with writing something to control the server as we would need. Right Noel? :p
     
  10. Wishmaster

    Wishmaster Registered

    Joined:
    Nov 30, 2012
    Messages:
    315
    Likes Received:
    32
    There is a line in the multiplayer.ini where you can say in which session a driver can complete a started lap after the seesion end.
     
  11. Rich Goodwin

    Rich Goodwin Registered

    Joined:
    May 3, 2012
    Messages:
    1,219
    Likes Received:
    9
    The absolute best thing here would be a session repeating on the hour, every hour and a session every hour on the half hour. That way people know whenever they go on they are only a max of 30 minutes from a session.
     
  12. kiko0602

    kiko0602 Registered

    Joined:
    Dec 25, 2011
    Messages:
    255
    Likes Received:
    37
    Rich is there reason why you using mid ohio 1.91 on your server?
     
  13. Rich Goodwin

    Rich Goodwin Registered

    Joined:
    May 3, 2012
    Messages:
    1,219
    Likes Received:
    9
    That was left to one of my admins. If that's not the most recent version, I'll get him to update.
     
  14. P.S.R.

    P.S.R. Registered

    Joined:
    Jun 15, 2014
    Messages:
    1,794
    Likes Received:
    4
    Catch 22, but there is also the possibility of more people in each session with only hourly sessions.

    @B1K3R, while you guys have the hood up if there is a way to globally capture and expose results across servers in a single db (in fact, IIRC, you may already have this or something where people have to run plugins on their servers and then communicates with your db or something like that) then statistics can be generated that can add meaning to one-off races. Even the most basic statistics, such as who are my rivals based on head-to-head record, could add meaning. And of course more advanced reports which calculate "experience" points of some sort based on results against others with such and such experience points, etc. could also add meaning. Best part about this is that casual people could ignore or not even know these reports exists while more serious guys would check them before and after every race.

    Edit - And of course the ability to export global db info so people could make their own reports or, better yet, read-only access to MySQL db server would be cool too so people could experiment with the data.

    Edit #2 - And regarding rivals thing, where ARE my rivals? Or where do my rivals USUALLY race so I can hunt them down :p
     
  15. cosimo

    cosimo Registered

    Joined:
    Apr 14, 2013
    Messages:
    827
    Likes Received:
    99
    Just wanted to say, I can help with plugins, code, web apps, servers setup, etc...
     
  16. B1K3R

    B1K3R Registered

    Joined:
    Apr 6, 2012
    Messages:
    1,605
    Likes Received:
    88
    Ya, that would be a nice idea. Its all possible and I already did try something like that.....ONLY problem is hardware mate.......so I stopped it.....you need some serious servers as otherwise it wont handle all the Db request, streaming of data, web hosting etc etc.
     
  17. B1K3R

    B1K3R Registered

    Joined:
    Apr 6, 2012
    Messages:
    1,605
    Likes Received:
    88
    That's great! :) The main issue we have (which Noel might address and solve) is to a tool control the server sessions. So for example, you instruct the server to rotate between lets say practice 20 mins, qual, 15 mins and race 15 mins and it rotates quickly or at least always the same time (for ex 1 minute) between sessions so that the schedule is static.

    Also, if a server is restarted or crashes, it would need to be restarted and moved to the time where it left. So if it stopped at qual 5 mins and the server was down for 5 mins, then it would continue to 10mins. reason is that we want to keep the scheduled fixed!

    I think Noel already did some experiments but not sure where he arrived :)
     
  18. P.S.R.

    P.S.R. Registered

    Joined:
    Jun 15, 2014
    Messages:
    1,794
    Likes Received:
    4
    Makes sense. Good news on one front at least is that local log files contain all driver performances so anyone who is inclined has all the data they need to track their rivals :)
     
  19. B1K3R

    B1K3R Registered

    Joined:
    Apr 6, 2012
    Messages:
    1,605
    Likes Received:
    88
    ya true, but imagine how awesome it would be if all data from all servers is streamed to one big centralised database, would be like a data warehouse with all the statistics, results, graphs, reports, ratings..maybe leagues and league management..........:rolleyes:

    It's all possible and here at my work we do all that stuff but the money they pay for those servers is like....what?! :p
     
  20. 88mphTim

    88mphTim racesimcentral.net

    Joined:
    Sep 23, 2010
    Messages:
    10,840
    Likes Received:
    314
    I suggested as much at ISI and it was planned to do it at one point, basically what I proposed would have allowed leagues or individuals to set schedules, with a race result and stats tying into that. You set the points for each position, all that stuff. I even wanted offline races to offer to send your results to the site when you were done to allow people to do offline championships for themselves. So each driver had a profile, kind of like iRacing's site apps. I have no idea whether it'll actually happen now, but I can raise it again. It's all possible, LiveRacers does a lot of it... But... *shrugs*
     

Share This Page