Questions

On Unity Asset store it says "SUPPORTED GAME TYPES TrueSync is great for 2-player action games or RTS as its rollback engine makes it very easy to minimize lag. For games like an 8-player FPS or a VR game where continuous controls are needed, PUN is the better option."

Is TrueSync only for 2 player action games, or its it scalable to handle more than 2 players in a session? Is it for peer to peer or standalone server? Does TrueSync work on Playfab?

I want to convert Unity's Roll-a-Ball tutorial to multiplayer & running on a multi-session standalone server with at least about 4 or 8 players per session but possibly more. Is TrueSync ideal for this? Thanks.

Comments

  • Hi @oneiro, answering your questions:
    - handle more than 2 players? yes;
    - p2p or server? works through photon's relay server;
    - work on playfab? at first glance TS can work on anything deterministic, if you use some feature on Playfab that is not deterministic (like a async callback) to change the gameplay then it can't be used.

    In theory TrueSync is good to use, in theory because a lockstep solution is very handy if you have a lot of players playing together in the same "map/context". Sadly, to make it deterministic we couldn't rely on Unity's physics engine or float numbers calculations so we had to use a different physics engine (jitter for 3D and farseer for 2D) and fixed point math. These decisions have a drawback, we lose performance! and it is even worse on 3D physics. For many objects (in a multiplayer session of Roll-a-Ball you may have a lot) you will easily notice the choppy physics simulation, so for the port you want maybe TrueSync in the current stage is not the best choice.
  • oneiro
    oneiro
    edited May 2017
    - p2p or server? works through photon's relay server;

    So this means there will be a monthly fee / CCU limit?

    - so we had to use a different physics engine (jitter for 3D and farseer for 2D) and fixed point math.

    is this a modified version of Jitter to run on fixed point math? or is this already a feature of Jitter? does this mean cross platform deterministic physics simulations are possible?
  • also, will i be able to run my own 'relay server' independently of photon?
  • Hello again @oneiro, you are right, with TrueSync you have a cross platform deterministic physics! Jitter and Farseer code that are included in our source are modified to be deterministic and use fixed point math. But as I said, we have a drawback on performance you should make a few tests first to see if it is good for your game. About the relay server it will be the photon one and you have the CCU limit, at least for now.
  • oneiro
    oneiro
    edited May 2017
    Hello again @oneiro, you are right, with TrueSync you have a cross platform deterministic physics!

    So you're saying its consistent between linux, windows, osx, android?

    Jitter and Farseer code that are included in our source are modified to be deterministic and use fixed point math. But as I said, we have a drawback on performance you should make a few tests first to see if it is good for your game.

    If Jitter is being constrained in this manner, shouldnt developers be designing around these constraints?Could you list some recommended practices - Like maximum/minimum world size, player size, velocity.
  • Yes @oneiro, it is supposed to be consistent, the same physics simulation should run in each machine. About the recommended we don't have a proper benchmark to say a safe value to you, take a look at the "Boxes Demo", it has a lot of objects and there is a script that allow you to increase even more, so you can feel it.
  • Hello @JeffersonHenrique TrueSync can it be used for turn base games? I just want to use deterministic physics.
  • Hi @Penth0s, yes it can be, a lockstep solution is a good approach for turn based games.