Jump to content
  • 0

Waiting for Character to Create Issue


adzvaughan

Question

Hi Guys,

 

We are struggling with "Creating player to create now and again, its rare but when it happens only fix is a reboot of the server we are on.

 

We have ridiculous bandwidth as shown below:

 

K7BFAz2.jpg

 

We have 3 servers running, one is a public hive vanilla the other two are OverPoch servers getting 50 players each. MySQL ini is set to default.

 

Here is my basic.cfg (after reading these forums):

 

language="English";
MinBandwidth=20971520;
MaxBandwidth=1073741824;
MinErrorToSendNear=0.029999999;
MaxCustomFileSize=0;
MaxMsgSend=1024;
adapter=-1;
Resolution_Bpp=32;
3D_Performance=1;
Windowed=0;
MinErrorToSend=0.0019999994;
MaxSizeNonguaranteed=64;

 

Could anyone recomend any changes to try and resolve the issue?

 

Any help appriciated.

 

Thanks,

Adam

Link to comment
Share on other sites

Recommended Posts

  • 0

Do you mean this?
XTfW1Cc.jpg

 

 

That was constant for me on the same server.
I could join other servers with no issues.

When I could log in after 2 deaths This issue popup up again, login to a different server then log back in.

 

I had retail Arma 2 and Steam version of Operation Arrowhead.

I deleted everything related to Arma2 +DLCs. (I had a full Steam Arma 2 Package)

I downloaded/reinstalled/Ran the games in this order

Arma2, Arma2OA, BAF/PMC, Epoch 1.0.5.1, Overwatch.

 

The Login-timeout went away (Waiting for character to create)
This only started with the new 1.63 version.

 

I have no idea what was causing it, I tried a lot of different stuff to fix it But the above was the only solution =)
 

Link to comment
Share on other sites

  • 0

Possibly, but i think a lot has to do with bad scripting. Start by fixing your private vars - Squint2 is your friend.

Other things you can try

  1. Ask an admin that is on to use the cleanup function in your AH
  2. Finetune your basic.cfg
  3. Start debugging your server properly, use the client rpt to find and fix bugs in your mission file and use the server RPT to debug your server.

If everyone could report like the latest 250 files in their client.rpt when they cannot get it, it would help pin down where this bug is coming from.

Link to comment
Share on other sites

  • 0

Maybe we can share each others Basic.cfg

 

here is mine for 60 max players:

MaxMsgSend=128;
MinBandwidth=100428800;
MaxBandwidth=104857600;
MinErrorToSend=0.0049999999;
MinErrorToSendNear=0.0099999998;
MaxCustomFileSize=160000;
adapter=-1;
3D_Performance=93750;
Resolution_W=0;
Resolution_H=0;
Resolution_Bpp=32;
Windowed=0;
serverLongitude=-115;
serverLatitude=36;
serverLongitudeAuto=-115;
serverLatitudeAuto=36;
Link to comment
Share on other sites

  • 0

I think i pinpointed the problem with mine...although if its not this.....i am remaking the server.

IF you are getting (in the client log files not the server's) this error:

Client: Object 650:99 (type Type_99) not found.
Client: Object 650:99 (type Type_99) not found.
Client: Object 650:99 (type Type_98) not found.
Client: Object 650:99 (type Type_124) not found.

then its that old getPos instead of getPosATL bug.

 

When you use createvehicle and prior you are getting the player's position with "player getposATL" then you have to use getPos instead.

I tweaked a few of my scripts and for a couple of days i didnt have a problem.

 

The reason why this is happening with more people online...is because the chances that the script will get activated (that has this bug) has more chances to be 'fired' with more people online.

Probably the server fps play a roll with it also.

 

I wish that arma debug log was giving better explanations with errors.

Link to comment
Share on other sites

  • 0

Is it better to just use getPos or getPosATL?

 

When you use createvehicle command and add a pos for the vehicle to spawn, then use getPos when you retrieve the position.

Like for example:

_pos = getpos player;
_object = createVehicle [_classname, _pos, [], 0, "CAN_COLLIDE"];

I dont know exactly which script 'breaks' the server....could be any one really...so i'll start changing all my scripts that have createvehicle in them, and see how it goes.

But i remember i had this long time ago on 1.0.3.1 epoch...and that solved the Waiting problem.

 

It seems that the server doesnt know (or breaks) where to spawn a player that joins the server....so they are stuck there...

Link to comment
Share on other sites

  • 0

 

Use FNC_GetPos. It auto detects if a object is above water and gets the position accordingly.

 

Use like:

_pos = [_object] call FNC_GetPos;

then to use pos

_object setPos _pos;

 

 

But that does _pos = getPosATL _obj;  which brings us back to the problem :P

Link to comment
Share on other sites

  • 0

Yeah that wasn't the brightest of posts..
 

Over the past few days i have been working on reworking most of the dayz_server files for Epoch. Stuff like publishvehicle and the server_monitor needed some overdue maintenance. Just finished transforming all of the server and dayz_code files to use FNC_GetPos and use SetPosATL where needed.

Things i have done so far

  • Fix all the private vars
    A lot of files have missing ones by default and wrongly placed ones. This could cause for memory leaks.
     
  • Reworked a lot of code to better handle database calls.
    Took out stuff like while{ try max 10 times } do { db call }. That is just asking for problems on a busy server.
     
  • Optimized the global to local object stream
    Side project I have been working on. Basically turning a proof of concept to production.
     
  • Lot of general code cleanup
    A lot of poor markup has been removed. Mainly to enhance readability but also to improve performance. Result is lower filesize and better code.
     
  • -> FNC_GetPos
    Added this function everywhere applicable. Use it in combination with setPosATL and you are mostly gold.

Been quite a rough ride cause i pushed a lot of experimental stuff on our live server, mainly because it's much faster to test code on a server with a lot of players.

Just pushed the latest - pretty stable - code to our github for you to checkout SandBird. Hope it helps you sorting your issues, cheers.

Link to comment
Share on other sites

  • 0

Yeah that wasn't the brightest of posts..

 

Over the past few days i have been working on reworking most of the dayz_server files for Epoch. Stuff like publishvehicle and the server_monitor needed some overdue maintenance. Just finished transforming all of the server and dayz_code files to use FNC_GetPos and use SetPosATL where needed.

Things i have done so far

  • Fix all the private vars

    A lot of files have missing ones by default and wrongly placed ones. This could cause for memory leaks.

     

  • Reworked a lot of code to better handle database calls.

    Took out stuff like while{ try max 10 times } do { db call }. That is just asking for problems on a busy server.

     

  • Optimized the global to local object stream

    Side project I have been working on. Basically turning a proof of concept to production.

     

  • Lot of general code cleanup

    A lot of poor markup has been removed. Mainly to enhance readability but also to improve performance. Result is lower filesize and better code.

     

  • -> FNC_GetPos

    Added this function everywhere applicable. Use it in combination with setPosATL and you are mostly gold.

Been quite a rough ride cause i pushed a lot of experimental stuff on our live server, mainly because it's much faster to test code on a server with a lot of players.

Just pushed the latest - pretty stable - code to our github for you to checkout SandBird. Hope it helps you sorting your issues, cheers.

 

Any chance you're going to release all these fixes?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
  • Discord

×
×
  • Create New...