1. Do you need support for Assetto Corsa Competizione? Please use the proper forum below and ALWAYS zip and attach the WHOLE "Logs" folder in your c:\users\*youruser*\AppData\Local\AC2\Saved. The "AppData" folder is hidden by default, check "Hidden items" in your Windows view properties. If you report a crash, ALWAYS zip and attach the WHOLE "Crashes" folder in the same directory. Do not post "I have the same issue" in an existing thread with a game crash, always open your own thread. Do not PM developers and staff members for personal troubleshooting and support.
  2. As part of our continuous maintenance and improvements to Assetto Corsa Competizione we will be releasing small updates on a regular basis during the esports season which might not go through the usual announcement process detailing the changes until a later version update where these changes will be listed retrospectively.
  3. If ACC doesn't start with an error or the executable is missing, please add your entire Steam directory to the exceptions in your antivirus software, run a Steam integrity check or reinstall the game altogether. Make sure you add the User/Documents/Assetto Corsa Competizione folder to your antivirus/Defender exceptions and exclude it from any file sharing app (GDrive, OneDrive or Dropbox)! The Corsair iCue software is also known to conflict with Input Device initialization, if the game does not start up and you have such devices, please try disabling the iCue software and try again. [file:unknown] [line: 95] secure crt: invalid error is a sign of antivirus interference, while [Pak chunk signing mismatch on chunk] indicates a corrupted installation that requires game file verification.
  4. When reporting an issue with saved games, please always zip and attach your entire User/Documents/Assetto Corsa Competizione/Savegame folder, along with the logs and the crash folder (when reporting related to a crash).

About that maybe-server-api

Discussion in 'Chit Chat Room' started by Minolin, Jun 11, 2015.

  1. Quffy

    Quffy Alien

    When you have something to fight for, like in the iracing case, a single track during a week is good for people get better and better at it. But it makes sense in iracing, the game model suits it. However in AC where you've got casual public racing, as soon as you're done with the qualify and race session on a track, then the server keeps the same track session after session, day after day, you don't get bored? I think most people just do it once then come back another day. A server with track rotation means that people will stay on the server longer at once, because the track changes, so people can stay for more time and race against the majority who raced in the previous track. Now with the same track, you'll get plenty of new people every new session.. and other servers just don't fill up with people hopping from server to server. With track rotation the same drivers tend to stay more with a certain server for a longer time at once, so they get used to one another. And other servers from the Online mode will get more filled up, because people stay longer since the entertainment is more varied. It gets quickly boring to do the same track after you just did a qualify-race session, especially Spa and GT cars. But if those people transition to a new track but with the same cars, you've got again something new to do on the server, without falling on the boredom of routine.
     
  2. Stefano flat out said that track rotation isn't coming to non booking servers in AC; it is a bad design choice but it is one that it is far too late to scrap and redo. A service with a server farm could have a server start up on a different combo when one shuts down, however, I see it being run with the same combo all week just like iracing.

    Hopefully not at RD though; getting banned from racing over there because Bram doesn't like your point of view on a thread is BS.
     
    TCLF likes this.
  3. Stereo

    Stereo Alien

    I've never wanted track rotation, when I switch tracks I'm completely incompetent for a couple races anyway. So running the same thing for a day is fine with me, and I'm not specifically attached to 'drive against the same people on a different track' unless it's a championship format. The only upside I see is that people might join on a popular track and then be too lazy to leave when it switches to one I actually want to race on.

    Stefano said that if the plugin rejects someone joining, it can return a message. Might be nice if during the 'ping' the server list sends out, the server could also say whether or not it'll accept the user though so it can be filtered.
     
  4. vanveen, nonnex, Minolin and 4 others like this.
  5. mangal

    mangal Hardcore Simmer

    For all the good that RD does and I recognize, it has a real nasty authoritarian streak that I can't handle. By now I only really get there when I absolutely have to have a mod, and I am directed there.
     
  6. Minolin

    Minolin Staff Member KS Dev Team

    Good one, haven't thought about that. But is this really useful, or more a technical plaything? What would the default user do with that information? (Honest question)
    I'm also pretty contrary web access on random internet servers - this should be done in a more secure way the average "yes-I-managed-to-start-the-server-by-disabling-the-firewall" joe is capable of. On the other hand it would be really cool to offer one central web UI where the different servers report their livetiming-data.
    So the average joe (no offense intended btw) would just need to use the plugin and already has the web ui. Yeah I know, centralized server costs, ... ^^ Just thinking out loudly. @kevin.maatman

    Noyes.. All of this is more backend capability for classical python apps or client changes. So maybe yes, but the server plugins will work better (=by design) if invisible.

    ---
    Don't want to play the forum police, but please think about the topics you discuss and where (in the forum) you are. This thread is intended to become a source of information regarding the plugins.. Somebody who wants to start out and maybe would write the big acRating plugin we all wait for wouldn't be interested in RD politics stuff.
     
    TDS and Alessandro Greghi like this.
  7. nonnex

    nonnex Alien

    Read it too in the morning with a coffee in my hand and sleepy eyes. First I thought I have'nt read right. But then Whohooo!

    I had a thought about personal racing stats:
    I always wanted to have an detailed overview of my personal racing performance state and history in AC.
    For example: looking at specific laps and used setup, deltas, collision involvements, penalty details, summerizeations and so on and so on...
    Just all data that could help to analyze your personal driving and (for example) making a training plan out of it.
    Something like a "Driver Telemetry System" ;)
     
    Last edited: Jul 16, 2015
  8. Minolin

    Minolin Staff Member KS Dev Team

    Don't let our expectations get too low, mh? :D
    Fortunately you're a programmer ^^ But yes, we should think about a way to centralize information, otherwise we'll have all this in a year, but distributed over 34 different databases in 12 different plugin backends.
    And it's quite important to communicate and share.. For my beloved "wreckers" I'd use the collision data of course, but we also need a rating as result, which should include laps done and/or time driven. Cutters, server edition = same story. Where do we get this? What's the primary key? (no, please don't tell me "driver name")
     
  9. ArYeS

    ArYeS Gamer

    And when you have live-timings like f_deutsch mentioned. You can store that data into animation, and animate race from top-down. I hope we can store absolute position on track and rotation for each car every second or so. That would be so badass feature :)
     
  10. something like http://www.lfsworld.net will be fantastic, i think :)
    apart from the programming per se, who is gone pay the server cost? o_O
     
    Niki Đaković and norbs like this.
  11. Minolin

    Minolin Staff Member KS Dev Team

    is always free in modding if you ask me. Others drive for fun, I'll code for fun.

    Valid question. If we let happen decentralized things, probably everybody who already offers (and pays) a MP server. For centralized things we'll have to stick with the RSR model and live (or die) from donations.
     
  12. i was talking about programming time, not considering the cost, actually ;)
    Yep, a centralized system will be better, of course, but if theres "n" different server plugins this is not going to happen; what we will need is a community effort for developing one single server plugin, and a centralized db (on a kunos server?) with the data - don't know if it's really doable, honestly (fortunately, we have sTracker now to do most of this stuffs, everyone has it's own db, but it works very well - thank again neys :))
     
  13. bigbawmcgraw

    bigbawmcgraw Alien

    How big a server would be required?? I'm sure Kevin could supply one cheap.
     
  14. nonnex

    nonnex Alien

    @Minolin: Nah, in the phase of brainstorming (aka dreaming) there are no borders or claims setted too high.

    Technically and (from my programmer point of view) it's a classical and simple datamining task.

    Datamining:
    You are right, an important part is the data amount, quality, organisation and availability. The best case would be to store the data in a centrallized way to get the most out of it.

    Processing:
    The most important but harder task is to visualize the data for humans in a proper and confortable way. For example: Making rational algos to get and show conclusions based on the data collected, statistical work etc.
    All this could be used as a database for other plugs that are more specific like automated mechanisms to keep AC Servers relatively clean like some has mentioned, or making Servers for a specific group of drivers for example.

    Just the classical information technology things we have learnt, well in my case,... some time ago... hm... long ago. How ever, a good way to refresh some mind.
     
    Last edited: Jul 16, 2015
  15. Stereo

    Stereo Alien

    On that subject, I think it'd be nice to keep the centralized info more flexible than iRacing's. For example, iRacing only splits performance up 2 ways - oval & road. For each you just have a single 'safety rating' with a fixed proportion for light contact (0 points), offtrack (1), loss of control (2), and crashes (4). If you keep it fairly flexible you'd have more options (eg. require seat time in this specific car with acceptable driving, or penalize at different proportions). Fine to make a generic iRacing-style safety score available if a server just wants to say "must be grade C" and have done with it, but some options will help it get used by everybody.

    I'm probably not in a position to spend much time coding things in the near future but I am happy to talk about what features it needs.

    One problem with making the system central but the servers decentral is of course that you can't vouch for the quality of every server who submits data; to encourage adoption specific server groups should be able to get the scores from races within their own servers rather than globally.

    There are (for reasonable load) free server options like Google AppEngine - just cache vigorously, and it could probably handle a pretty large community at no cost. As far as I can tell there are only a few dozen races on at any given time, so probably not much more than 10,000 individual user-joins-race events a day, of which a lot would be the same users repeatedly (and thus cached). At the rates AppEngine charges I really don't see it going more than $1-2 a month to run unless AC's multiplayer scene really took off.


    I think the 'irating' ranking system's probably better left up to fully central sets of servers, that sort of thing is very easy to game if you can just run your own server and kick anyone who threatens your chances at victory. But it's of course possible to track a driver's results along with how they drive.
     
    Last edited: Jul 16, 2015
    Alessandro Greghi and Minolin like this.
  16. Minolin

    Minolin Staff Member KS Dev Team

    Not really, in fact we need different and competing plugins. But a plugin is a stateless thing of additional features in the first place; it's the backend that is questioned. Where is the data stored, server and database-wise?
    Can the backends talk to each other, like CUTTERS asks RSR "hey, do you have some recent laps for steam ID 120391241? I'd like to know if bigbaw was there and really could have scored 387 points".

    "one cheap" is the point - no, this has to be a usual business for him. Otherwise it's not fair, who gets a "cheap" server and who not?
    But my thoughts are really that he could - on top of a existing business model - add backendservers with included donation methods.

    True. Unfortunately not my business, especially if you watch the RSR team as reference (and your suggestions would be much more demanding)

    Absolutely. My mind cannot decide what to think about first.
     
    Alessandro Greghi likes this.
  17. Minolin

    Minolin Staff Member KS Dev Team

    Oh this is really great. I'm sure I am not the only one who thinks that he could do anything without even knowing the iRating.

    Very good point, especially if you consider evil minds as well. If I'd do a wreckers/cutters backend, the submitting server would need a "quality" rating as well. Imagine that your personal rating can be dumped to hell by somebody who just types the right link into his browser, not a bright vision. Some resilience against exploiting is required - by design; a very difficult task if you want to allow a simple plug&play behaviour for the server admins.
     
  18. Ben Lee

    Ben Lee Alien

    Simply "finishing" a race should add +XP to your rating. It would help keep people in a race after they have had a minor incident and help stop races starting with a 24 car field and ending with 6 cars racing.
     
  19. Minolin

    Minolin Staff Member KS Dev Team

    As a general rule of thumb: Every "simple" your type in this context is probably wrong :)
    Can we detect race finishes properly? What if you didn't see the finish line in time? How much XP gives a 8 lap Nordschleife Endurance race compared to a 3 lap Vallelunga-Club? Is it a difference if you finished a race in an exos or ruf against a guilietta? Is it important if there were 2 or 24 cars on the track? Is it relevant if you could drive alone or fight for 80% of the time? Should we prevent the possibility to grind XP on empty servers?

    But yes, I like the abstract model of finished races because it will help improving MP experiences in multiple ways. After all, this is the single goal. It's about setting incentives to change the general MP behaviour so we all have more fun.


    Btw, maybe @Stereo : How does the iRating prevent building elitist groups of A-servers where newcomers don't have a chance to improve?
     
    Ben Lee likes this.
  20. Stereo

    Stereo Alien

    Oh yeah, I guess it's worth talking about the way the existing systems work.

    iRating: A variant on the Elo rating system - beating someone with a higher score means yours goes up, losing to someone with a lower score means yours goes down. If you beat someone with the same or lower score, or lose to someone with a higher score, the change is minimal. Since races are 15-20 person affairs it's obviously a bit more complicated than chess. In practice the top half of the race gains points and the bottom half loses points for the most part if their iRatings are similar.
    Championship rating: each race's 'split rating' is calculated from the iRating of the participants (a mean of some sort). The points available are scaled with the split rating, so races against competent enemies is a better way to score.
    Safety rating: Uses the 4 types of incident I mentioned - light contact (0 points), offtrack (1), spun (2), heavy contact (4) - to contribute to a general incident count. Incidents are upgraded to the worst that occurs; if you go offtrack and then spin you only get 2, if you then hit someone heavily you get 4. Incidents are contagious; if you contact someone lightly but they spin you both get 2. The incidents are scaled against the number of corners in the race to give a "incident per corner" score, so if you score 10 incident points on a 20 lap race at Monza, you would have 10/200 corners for that race. These scores are tracked for the last ~1000 laps you've run to give an overall incident per corner score, with the older laps decaying away. The license grades are for something like "1 per 50 corners or less = D grade, 1 per 50 to 100 corners = C grade, 1 per 100 to 200 = B grade" although in practice the categories overlap to prevent grades changing back and forth when you're near the edge of one, and the actual number of incidents is presented as a numeric grade, eg. "C 3.5" would be a C grade but at the top end, "C 1.5" would be a C grade but the low end. You can see how much this score changes at the end of each race.
     
    nonnex likes this.

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice