[Help] Codex src Bugs / FPS problems ETC

Results 1 to 3 of 3
  1. #1
    Enthusiast extasyy is offline
    MemberRank
    Jul 2013 Join Date
    41Posts

    [Help] Codex src Bugs / FPS problems ETC

    Hi guys i try to use codex src. It is working well but few hours later the supervisor got crashed all the time.
    When u enter the car the other player FPS go down to 10FPS. I try to find it why but still dont know. When 2 cars going in same area the fps all other peaople go down to 5. The nightvision is bugged to. Sound sometime stuck. Fps is very shit with this src.

    Before i use HunZ src which is so much better then codex src. Just a problem is HunZ src is a community edition which is dont have finished features.

    in codex Src colorado with gtx 580 40FPS when somebody got a car and u just watch it your FPS 10
    in hunz src colorado with gtx 580 80 FPSwhen somebody got a car and u just watch it your still 80


    So i think Codex something doing wrong. i think so much better if we doing it together if somebody have any idea why is shit fps with Codex src pls tell me.


  2. #2
    Member Dafkid is offline
    MemberRank
    Mar 2013 Join Date
    79Posts

    Re: [Help] Codex src Bugs / FPS problems ETC

    I dont know what is different between Our and codex cars. Maybe hi need to fix it but hi is a good guy so i think hi can do it. The most important thing in the cars is the packet system, if the packets to much or all cars going with same packet its is problem because of response and perfomance etc. And a lot of things more which is make the cars hard to make. Warz engine is the worst engine what our team (HunZ) seen ever. The Fps increase with this engine is impossible because of the render. So this is why everybody got the same problem.
    So thats why is hard to make anything with it. :))
    Last edited by Dafkid; 09-09-14 at 04:57 AM.

  3. #3
    Proficient Member vinnieshuda is offline
    MemberRank
    Jan 2013 Join Date
    158Posts

    Re: [Help] Codex src Bugs / FPS problems ETC

    Hi, im Amph from hunz dev team.
    First of all i resprct codex, but.. he coded the worst vehicles ever.. (sry)
    Im not flaming, i try to help with this..

    First:

    He using one!!! i say again, one packet structure for update vehicle things like damage, fuel, passangers etc.

    Here is a little knowledge in programming..

    If you create a structure with variables, your program allocate the memory of your structure..
    in one word, your structures size come from your variables.

    A long int is 4 or 8 byte, if you create a structure with 12 long int, 12 * 8 = 96byte...

    Codex created a packet (pkt_s2c_positionvehicle) with 13 data... Int, float, bool and the most big is the physx carcontrolldata.... and sending it over the network to ALL CLIENT, in all time ca. 10 times / sec!

    No,no,no and again no!

    Here is a little training how you need to create a networking...

    If you want to update something over the network, do only when is necesery....
    Dont do it everytime, because you need RESOURCES to send, accept and process this..

    And dont use big sized packets over the network, why?
    I know, most internet service speed is good, but the RESOURCES....

    Let me explain it.

    You get a packet from server in approx X time (depend on size), your processor extracting and decoding the message(packet)... maybe using the data from your packet..

    Which is faster?
    A packet with only 1 or 2 data inside (like position update)
    Or a packet with 13 data inside?

    i dont talk about the lag, if the netspeed is not enough(he cant download the packet in time), clients get ASYNCed because he dont get the right packet in the right time.

    Conclusion: networking must be, clear, fast and small as much possible...

    But Codex did another big mistake.....

    He networked the carcontroldata and the physix timestep too....

    This is so weird...
    Codex forced the clients to simulate physx world, when the carposition packet is arrived..

    Physx calculate everything in clients, and you override the data from OUTSIDE (actually with the packet)

    So the fixed timestep is get rekt, and physx need to resimulate everytime...

    What is timestep?

    The timestep is the most important thing in physx, value how often need simulate the world again...
    And codex sended a timestep value that is a past...

    Carcontrolldata is the same thing, codex overwrite this thing in physx, physx need simulate again, because the data is changed from outside...

    How to do this in right way? (yes i started this at the good way in hunz source)

    2 possibility..

    1: you send the keypress only, and let the client simulate only once!!

    This is the best way, but sometimes get the server/another clients asynced..
    So need correction on client/server side (called PREDICITON in game development)

    2:

    Only update the position, and rotation (x, y , z, angle), because 4 float is the smallest packet ..

    This is the shitty way, but work too..

    After all, Codex using a building object to get collision for vehicle..
    Again losing performance, because client need to recalculate every time the building position..

    I hope helped with this...



Advertisement