A controversial idea to help populate R3E ranked servers

Discussion in 'General Discussion' started by Stelcio, Sep 19, 2021.

  1. Nico Kunze

    Nico Kunze Well-Known Member

    Joined:
    Sep 1, 2018
    Ratings:
    +396 / 0 / -0
    I mean if those servers are clearly marked as including ai, they work in a way that doesnt allow you to fafm rating and the number of non ai ranked servers doesnt go down then i guess i wouldnt mind it too much. But you definitely wont see me joining any of those servers :D
     
  2. ravey1981

    ravey1981 Well-Known Member Beta tester

    Joined:
    Apr 15, 2018
    Ratings:
    +873 / 0 / -0
    The AI isn't good enough for this. If you know how to game them you can make them let you past consistently. If you make them more "intelligent" you use up more CPU, that's on a game that is already CPU heavy. Then you have the question, whos computer will be running these AI?

    For non ranked then go ahead, but for ranked official races then absolutely not.
     
  3. Vale

    Vale Well-Known Member

    Joined:
    Jul 4, 2019
    Ratings:
    +279 / 0 / -0
    Have you ever tried mixing AI and multiplayer for beta testing purposes? It strikes me as a useful tool to help test for bugs when not many testers are around.

    An interesting twist to the original idea could be to have the possibility to invite just one or two friends to join a single player session against the AI but no idea if that is viable.

    I´ll get back in my box again. For now.
     
    • Funny Funny x 1
  4. Maskerader

    Maskerader Well-Known Member

    Joined:
    Oct 6, 2019
    Ratings:
    +356 / 0 / -0
    How? Don't you need to be faster anyway? Of course if we don't consider pace issues when AI is significantly slower in some places (which, like I said earlier, probably can be avoided/mitigated by skipping such combos or fixing the combo before it goes live).

    It's not all that CPU-heavy in multiplayer. And the number of AI you need to add is quite small.

    Should be the server, to protect races from cheating. I'm not sure but I looks like the current dedicated server software isn't very demanding.
     
  5. ravey1981

    ravey1981 Well-Known Member Beta tester

    Joined:
    Apr 15, 2018
    Ratings:
    +873 / 0 / -0
    1. If you put your car in a certain place relative to them they will always yield, where as a real driver is unpredictable in that sense.

    2. Exactly, it's not CPU heavy in MP because there is no AI involved. Start adding AI and th load goes up, quickly, thus hindering users with lower powered systems.

    3. That would require very powerful servers which in turn would be very expensive. Also, AI runs a much more complicated set of rules/physics etc when near the player car. In SP that means only a few AI have to be running those calculations, which lends itself to the users system doing them. For it to work in MP you would have to have the AI doing those calcs for players all around the track, that's going to create a real heavy CPU load for whichever system has to run it.

    I don't see what the trouble is anyway, whenever I want to race ranked there's always options available with decent grids and I don't get to race until very late European time (2200hrs for example). If people in other timezones are struggling then I'd suggest they tell their friends about the game and generate their own traffic. Adding bots isn't the answer, MP players want to race people not AI, that's the whole point!
     
    • Agree Agree x 3
    • Disagree Disagree x 1
    • Informative Informative x 1
  6. ravey1981

    ravey1981 Well-Known Member Beta tester

    Joined:
    Apr 15, 2018
    Ratings:
    +873 / 0 / -0
    It's not even possible on any of the beta builds. AFAIK it was mentioned a while back as a possibility for the future but that's all I know.
     
  7. Maskerader

    Maskerader Well-Known Member

    Joined:
    Oct 6, 2019
    Ratings:
    +356 / 0 / -0
    Why would the load go up if AI is run by the server?

    I don't know why you think it would require very powerful servers, because I'm not sure about that at all.

    1) Right now dedicated servers are so low-demanding that you can run them on free Amazon servers, if I'm not mistaken. Or at least the cheapest tiers.
    2) Running a grid of 10-12 AI is also a task even the lowest-powered PCs can handle. Even at the start of the race (so all AIs are on a more complex rules/physics). While also rendering a picture and running a full physics simulation of a player's car - something that server doesn't need to do.

    This suggestion might work only if it's first spread through some official R3E channels for a lot of people. Telling this to a handful of players on the forums won't attract enough crowd to be a noticeable change in playerbase.
     
    Last edited: Sep 22, 2021
  8. ravey1981

    ravey1981 Well-Known Member Beta tester

    Joined:
    Apr 15, 2018
    Ratings:
    +873 / 0 / -0
    1. Exactly, they can run on a potato because they are only passing a bit of data back and forth. If you want to put the AI calculations on the server then that's when you're gonna need a much beefier computer running the server.

    2. Same point as above, AFAIK it's only the very nearest cars that get the full fat physics, even on the grid some are running on a much lower model. Of you're running the AI remotely you've got an extra layer of lag as the AI car has to wait for the signal from the client before it can decide how to react. With that lag their performance in terms or driving standards will inevitably get worse.

    I can't see it ever happening anyway. I'm out of this thread now. Ciao
     
    • Informative Informative x 1
  9. Maskerader

    Maskerader Well-Known Member

    Joined:
    Oct 6, 2019
    Ratings:
    +356 / 0 / -0
    It's not happening anytime soon, that's for sure...

    Good point, yeah...

    Something much beefier than a potato can still be reasonably priced.
     
    Last edited: Sep 22, 2021
  10. MattYKee

    MattYKee Active Member

    Joined:
    May 16, 2019
    Ratings:
    +28 / 0 / -0
    Unreal Tournament done this, worked well. You set a minimal player count and if the player count fell lower a bot would spawn in. I think a few MOba's have gone this route in recent times too. Thinking of the Pokemon generations, Mobile legends, MXM etc.
     
  11. Stelcio

    Stelcio Active Member

    Joined:
    Sep 17, 2021
    Ratings:
    +39 / 0 / -0
    That's actually still prime time to race as far as I can tell, so that doesn't surprise me. There's a reason some daily races are scheduled around that time as well.
    That's if they're ran remotely. If they're ran by the server itself, the only lag is between the server and the players.
     
  12. ravey1981

    ravey1981 Well-Known Member Beta tester

    Joined:
    Apr 15, 2018
    Ratings:
    +873 / 0 / -0
    The server is remote.
     
  13. Stelcio

    Stelcio Active Member

    Joined:
    Sep 17, 2021
    Ratings:
    +39 / 0 / -0
    You mean the AI ran by the servers would react to players who are remotely connected to the servers and that would cause an issue due to latency?

    If that's the case, is player's position calculated locally, then sent to servers and taken for granted? Doesn't the server correct the position somehow? And if it doesn't:

    - couldn't it do that for the sake of AIs and only for them?
    - isn't that a field for exploits on its own?
     
  14. ravey1981

    ravey1981 Well-Known Member Beta tester

    Joined:
    Apr 15, 2018
    Ratings:
    +873 / 0 / -0
    The game in multiplayer will make a guess at where it thinks another car will be based on the previous information it has, speed, inputs etc. Usually it's very good, if ping is decent, if it's not you see some jitter as the position is corrected. But even then all the server is doing is passing data back and forth. For AI to run on the server you would have to have it making lots and lots of calculations.

    For example if an AI car has to change its line to avoid a player car, the players car position would have to be uploaded to the server, then the AI would have to work out how it should react and pass that back to the client. Since there are potentially multiple AI all interacting with different players all around the track that adds up to lots of extra calculations. Even when playing locally (single player) the AI can get borked if there's too much going on. It's just never going to work when the AI is run remotely.
     
  15. Maskerader

    Maskerader Well-Known Member

    Joined:
    Oct 6, 2019
    Ratings:
    +356 / 0 / -0
    How do AI interact between each other? Is there one "central" AI that runs them all (i.e. they drive collectively and "know" what each other is doing) or each AI driver is its own entity and also has to calculate interactions with other AI? Looking at some of their mistakes I'd suspect it's rather the latter, which means it would be no different in multiplayer.

    I understand that lag would make it worse but I'm not sure it would be so bad to call it "never going to work".

    Also, real people do stupid things too when there's a lot going on around them.
     
  16. Stelcio

    Stelcio Active Member

    Joined:
    Sep 17, 2021
    Ratings:
    +39 / 0 / -0
    OK, so if I understand correctly, it's not the server that calculates the positions of drivers, but it's each of the clients that does that based on specific packets of information that each client sends on the server and then the server redistributes between all other players.

    If that's the case, the solution seems to be simple, at least in principle. The server should just delegate the AI control to clients based on AI driver's relative position to players, so that the calculations for the AI are made by client which controls the closest car (or the clients should just delegate it to each other). Then the client can just send the packets for both cars (or three-four cars if necessary, that's still not that many). Other players will get the data just like from regular players, while the closest one will benefit from lack of remoteness. If the AI driver gets further from its designated client's controlled car, the control can be switched from one client to other that controls the closer car.

    Well, obviously the racing environment is so complex that there are many issues that can manifest themselves. Implementation of online AI would have to be made step by step - so first, one AI vs one player, then one AI vs several players and so on. It could as well turn out that handling each scenario one by one and identifying and tackling issues at each stage could lead to the final scenario being pretty smooth and workable, even though the desired outcome right now seems to be unrealistic. And honestly, some of the issues you predict, may not manifest themselves at all despite being likely or may not be overall as substantially detrimental to the experience as you estimate. I wouldn't dismiss the idea just because it seems impossible, before any honest attempts to make it work were even done, as it seems like a classic case of looking for ways to make it work if you want it to happen vs looking for reasons to put it aside when you don't.
     
  17. Maskerader

    Maskerader Well-Known Member

    Joined:
    Oct 6, 2019
    Ratings:
    +356 / 0 / -0
    I think this approach creates more problems than it solves. A lot of issues with AI happen at start, in a tight pack. At that time, one AI can be close to several players. If it's the server that runs AI, the lag is only player>server. If the AI car is run by one of the players, this AI will have zero lag with this player but the lag with all the other players will be player>server>host-player.
     
  18. Stelcio

    Stelcio Active Member

    Joined:
    Sep 17, 2021
    Ratings:
    +39 / 0 / -0
    That's why I asked how positions are determined. It seems the positions are determined client-side for each player based on data packets sent from other players. This means that if the AI is controlled by one of the clients, it wouldn't have to react to whatever other players are doing on the other side of connection, but to whatever client it's working on is "guessing" the other players are doing, since their actions are smoothed out by the guessing process. It should only pose a problem when the quality of connection is low, but it poses a problem for human players as well when that's the case, so it would probably be just as much of an issue as it is now.
     
  19. bubblejohns

    bubblejohns Active Member

    Joined:
    Oct 8, 2019
    Ratings:
    +25 / 0 / -0
    last update killed the player base, i cant blame them, almost a third of players gone. same thing has happened as RF2 a few years ago. that's why the ranked is empty, why risk a game that's guaranteed to have a hissy fit every time you play it. also there's only European content so its not going to be popular outside of there unless you join a very specific regional group
     
    • Disagree Disagree x 1
    • Creative Creative x 1
  20. bubblejohns

    bubblejohns Active Member

    Joined:
    Oct 8, 2019
    Ratings:
    +25 / 0 / -0

    difference in ams2 is its an offline game where you have the content and there just changing servers which takes seconds. r3e seemingly needs everything bought down to do these servers also if you want to race with some oceania guys, i can make that happen