This week in FiveM: August 29th, 2018

this-week

#1

Just like last week, we’re getting reminded that this needs to be posted a bit too late, so it’s time for another rushed weekly status update.

Progress and events

Some progress was made.

  • Another semi-internal OneSync test was held, both testing fidelity/bug fixes as well as a second load test. The system held up well up to 63 players (dying right at 64 :stuck_out_tongue: ), though AI doesn’t seem to work properly yet as evidenced by a later test showing at least 8 points of required improvement/fixing.
  • We merged a pull request by @Firecul to cfx-server-data that makes the chat size itself relatively on different resolutions.
  • Apparently Linux server builds were broken, they should work again thanks to a PR by @Hellslicer but weren’t re-enabled yet to actually try.
  • A bug was fixed by @blcd. Good job on the PRs, everyone!
  • A number of changes were made on canary for now, unrelated to OneSync work:
  • Apparently, more commits were made to the internal cfx/fivem-docs repo, but whoever was working on them hasn’t been updating the repository with their last changes. :angry:
  • We’ve got a new element account on Discord. Yay!
  • A lot of new todo list entries got added. Most of them are insanely vague, though it’d be quite nice if we actually had a publicly readable todo list for this kind of stuff.
    • This idea literally got thought up while we were writing this, it’s been added to the internal private todo list.
  • Not much else happened, or some things were forgotten. It’s sorta hard to remember without noting ‘oh this should be put in the weekly status update’ at every single minor event.

More Slots for any Server
Any reason to the disparity between linux and Win artifacts builds?
More Slots for any Server
#7

it keeps getting better and better


#9

Please schedule this next time so that I can finally be around again :stuck_out_tongue: missed the last couple testing days…

nice!

RIP :frowning:

Fancy!

So many todo lists, i like it!

Great work as always! Not sure what else we could expect, it’s only been a week!


#10

Thanks for the update <3


#11

wouuuuuh :pray: :grin:


#12

I am not so techy and don’t realy understand all these terms and what does what. Could you please elaborate and explain why you can’t just release onesync with like 63 players? (since you said it crashed at 64)


#13

Don’t think a full explanation would help anyone, as it’ll probably only delay further development if they have to sit here explain all the details.

However a tl;dr:
the current version may work, but it still has a LOT of things that need to be changed before it’s even available for large scale beta testing.

After that it’ll still take time to improve things before it can be released to the public.


#14

Thank you CFX and the external contributors for another week of improvements, keep it up!! :grin:


#15

:open_mouth: what does this mean? also good job guys, we appreciate you :heart:!


#16

Yeahhhhhh nice weekly status update.


#17

Great! Really looking forward to it :slight_smile:


#18

WOOHOO!!! Awesome work and cannot wait!


#19

A game of “spot the new element”?


#20

Loving these weekly update status posts. Great work guys. And :snail: of course


#21

Very pleased to read about all the progress being made. These weekly updates are a great addition :+1: Thanks for all your hard work.


#22

By the way…I do not want to start a policy discussion or criticism here, but I would like to ask the question, why do GVMP and RageMP have so many slots and FiveM only 32. Do these systems have a different system?

And before I forget, I thank you not only for the hard work you do, but also for the time you invest and the information you give us!

THX!


#23

Because they implement their own netcode/syncronization code. Unlike FiveM that uses the native syncronization that is built into GTA 5.

Why they went his approach is an unknown with me, but I can see writting an own syncronization network could be cumbersome, big effiort to build and maintain.


#24

Oh many thanks for the very fast response. Thank you very much!


#25

did you guys add like a parking break into this update? Because my server is having the issue to where a parking break auto turns on at random times in a vehicle. When its on you can only “rev” the engine now move.


#26

That’s only a half-truth, and a common misconception. OneSync is still based on the game’s own networking system, however rewriting and expanding intermediate layers in order to have more flexibility including (initially) up to 256 player slots. There’s nothing inherent about ‘writing custom netcode’ that leads to it being able to ‘have more slots’ and an expanded version of the original networking system to not have such.

Writing entirely custom networking code, while bringing ‘lots of slots’ early, is unnecessary effort when the game itself already has a set of entity serializers/deserializers and other provisions that can be used with enough programming ability, and that will inevitably provide higher-fidelity clone replication than ‘just’ blindly trying to monkey about with replication without understanding the game’s own functionality (i.e. ‘scripthook sync’, abusing natives and tasks to give the illusion of replicated state, as is really common among the other modifications in the V MP ecosystem).

That, and a ‘custom’ model ignoring the game’s own functionality is unlikely to allow proper functioning of AI across multiple clients.

The amount of ‘slots’ isn’t the only feature a network model has, nor is it the only feature a game modification platform has.

In addition, any statements of ‘FiveM is using GTAO code, which is illegal’ make no sense - firstly, GTA V is a single binary, and the networking code is tightly interwoven with the game codebase/engine, and similarly, using GTA V code itself (hooking, calling, etc.) would be just as ‘illegal’. Secondly, since nearly every game routine contains network-related code (we’ve noticed a prevalence of ~1-2% of game functions containing some network code, more if discounting engine code), even modifications that don’t use the game’s native networking functionality for whatever reasons - incompetence or others - still call into GTA/RAGE networking code, which is unrelated to GTAO, as GTAO is a set of scripts and assets on top of the base GTA V game code that happens to only execute in network mode.


A mention of the reasoning behind 'network decisions'