1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Hey Guest, UCS 0.7.4.0 is now available. Get it now for FREE here
    Dismiss Notice
  3. Hi there Guest ! Are you a uploader and you are looking for a way to earn from your uploads? uploadify is a file hosting platform that provides you the possibility to earn from your download without the annoying surveys. Free 10 Gb Space!
    Dismiss Notice
  4. Hey Guest, It is hard to setup a server, that is why there is a documentation to help you here
    Dismiss Notice

QUESTION Checksum In Packet 14102

Discussion in 'Clash of Clans Underground' started by kuilin, Nov 27, 2016.

  1. Hi,

    I am trying to implement a C# Clash client as a part of a web project, and the end goal is that it can join clans autonomously and analyze packet 24335 for clan war information. I have no experience reverse engineering at all, and most of all I have done is trial and error and self-learning. I have the initial handshake working well, and it seems like packet 14102 is not necessary to maintain the connection - but, if packet 14305 (to join a clan) is sent properly, 24335 isn't actually sent until a 14102 with bytes 12-16 1 is sent by the client, which is problematic since an incorrect uint checksum (bytes 4-8 in 14102) causes the server to disconnect. Just sending the 14305 without a subsequent 14102 causes the account to enter a limbo where the clan has the player but the player does not have the clan, which can't be fixed unless the account is kicked from the clan.

    Thus, in order to get the war info for a clan, I need to send a 14102 with a valid checksum, which appears to vary by a relatively constant amount per game tick - on my th3 mini it's about 1.936305732 per 1/60 second tick - which makes me believe that it has something to do with the total resource count of my collectors. It seems to vary much more dramatically when I play the game, and stabilize to around the above value when it is not touched, however it is still not stable enough to be predictable. I could not find any resources online as to how exactly the checksum for 14102 is calculated, since most of the work towards reverse engineering Clash seems to be of the form vanilla client and custom server - there is much less public work about having a custom client interface with the vanilla server. Is there documentation that I am not aware of, or has anyone else put work into this problem?

    Thanks in advance,
    Kuilin
     
  2. I'm currently using that for quite a few things - the main problem with it is that it cannot get current war information, and it can't get the war weight of the members of the war.
     
  3. Hmm i think you can use C# packet reader to read CoC raw packets
     
  4. Uh yes I can... The problem is not reading the packet, I can see that bytes 4-8 is a checksum of some sort related to the game state, and I want to be able to send that packet without the help of an emulator running the vanilla client to calculate it. Perhaps the algorithm is known is known, calculable from the data in 24101 or something? That's what I'm asking.
     

Share This Page