about func SendAcksOnly

Options
ymlyjq
edited July 2013 in DotNet
how does the func works ?

and

where i can use it ?

photonPeer.SendAcksOnly()

thanks;

Comments

  • Tobias
    Options
    SendAcksOnly is a variant of SendOutgoingCommands which selectively only sends acknowledgements to the server to keep the connection. Calling this, anything your client tried to send will stay in the outgoing queues. This can be a good thing if the client is busy doing other things (loading, etc).

    Read the doc about Service(), SendOutgoingCommands() and DispatchIncomingCommands() to learn more about those.
  • ymlyjq
    Options
    your means :
    sendOutgoingCommands : send allthings from outgoing queue to server right now
    sendaskonly : only send connection info to server ?

    ohter way ,if i call sendaskonly func , the connection is well ?
  • Tobias
    Options
    If you call SendAcksOnly none of your updates go out to the other players but connection will be fine.
  • ymlyjq
    Options
    If you call SendAcksOnly none of your updates go out to the other players but connection will be fine.

    i cant understand this ....

    my english is poor...
  • Tobias
    Options
    > i cant understand this ....
    I'm sorry to read this but I can't re-write the answers when it's only about the translation. Maybe you find someone who helps you or you just give the code a try!

    > my english is poor...
    What's your first language, by the way?

    > if i call sendaskonly func , the connection is well ?
    Only the connection to the server. Use SendOutgoingCommands to send your updates to others.
  • ymlyjq
    Options
    oh , chinese ;

    >Only the connection to the server. Use SendOutgoingCommands to send your updates to others.
    ask this question,beasuse my project disconnect from server offten,
    so i want to know how to improve this .

    >send your updates to others.
    what is meams about updates here ?
    i will use this func sendoutgoingcommands in clients, your meas is in server do ? in client ,why to others ?
    if you can ,i can give my code here ,and mybe you can give me a good propose
  • Tobias
    Options
    > chinese
    My Chinese is certainly worse than your English :)

    We know that there might be connection issues from China Mainland. Some developers had similar issues. Until we have our regional servers up there, the other solution would be to host a server yourself. Get the Server SDK and run the included binaries with "LoadBalancing (MyCloud)".

    Also have a look at the available regions. Maybe one is better for you:
    http://doc.exitgames.com/photon-cloud/Regions


    In general, read these pages and try to find a solution with the tips on them:
    http://doc.exitgames.com/photon-cloud/A ... isconnects
    http://doc.exitgames.com/photon-cloud/C ... onHandling
    http://doc.exitgames.com/photon-cloud/PerformanceTips
  • ymlyjq
    Options
    in chinese 虽不明,但觉厉
    Although not quite understand,but that was amazing.

    i make a sever use server SDK, like lite sample for my game .
    may be you can see it Future,it named "eden";

    so , dont understand that ,photon-cloud regions is usefull for me ? can i use this ?

    my server is setup in my server pc , windows , chinese language

    and do you have communication tools ?

    because jet lag ......and other reason
    one day ,i can ask you little questions....no good...

    how can i contact you quickly......

    baby, i need you :P
  • Tobias
    Options
    Hehe. This forum is our way to answer questions!
    We provide this support for free, so we can't also be available on demand for everyone, sorry. This would stop Photon evolution quite quickly.

    Ignore Photon Cloud if you run the Server yourself. If you get disconnects on your own server, then make sure you read the links I posted above.
  • ymlyjq
    Options
    at this page

    http://doc.exitgames.com/photon-cloud/AnalyzingDisconnects/

    >Keep an eye on roundtrip time and variance
    photonpeer.RoundTripTime and photonpeer.RoundTripTimeVariance can get a value for network lag
    and what is value is good ? bad ?(for udp and tcp ) (20, 5)? my pc shows
    and have relation with photonserver.config
    MinimumTimeout="20000"
    MaximumTimeout="40000">
    that my setting ......

    >Pick closest Photon Cloud Region
    >Host close to your customers
    >Check your hardware and minimal lag
    how can i makesure what hardware is better? and minimal lag ?
    >In worst case, exclude players with bad connection

    an other question :
    on time my server had some error like this:
    WARN Photon.SocketServer.PeerBase [(null)] - Disconnecting peer 3316: Send buffer full

    what is happend ? how can i improve it ?
  • Tobias
    Options
    Bad values depend a bit on the game. A bit about 300ms RTT might be ok. Somewhere around 400 I'd say the bad RTTs start.

    MinimumTimeout = 20000 defines that a timeout can't happen unless at least 20 seconds passed. That's very late.
    It means: One player might not notice the other being dropped before waiting at least 20 sec.

    > how can i makesure what hardware is better? and minimal lag ?
    You can check if your hardware or WLAN is causing trouble by testing on another device and another network.
    Checking minimal lag (RTT) means: Check if your roundtrip time is bad (see above).


    > WARN Photon.SocketServer.PeerBase [(null)] - Disconnecting peer 3316: Send buffer full
    Means: You tried to send too much to fit in the send-buffer. This is limited as the clients usually can't handle huge amounts of data.
    This can be avoided by sending less and less often. Minimize what you're sending. Don't send data > 2kB regularly.