Skocz do zawartości

Utermiko

Użytkownicy
  • Postów

    796
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez Utermiko

  1. Gdy spojrzałem na nazwę tematu domyśliłem się że chodzi o program do odpytywania gdyż sam taki piszę. Wcześniejszą wersję przestałem tworzyć dawno temu a od 2 tygodni coś mnie naszło i pracuję nad kolejną. :) Nie wiem czy Utermiko ma na myśli mój program czy jeszcze jakiś inny ale jakbyś chciał zobaczyć mój pytacz to tu jest temat na forum.

    Osobiście uważam że twój jest słabszy od mojego i ja nie chciałbym się uczyć przy pomocy twojego programu. Nie chodzi tylko o to że mam swój ale po prostu "Nauczek" mi się nie podoba. Ma mało funkcji, jakiś dziwny sposób dodawania słówek których listy nie widać i kilka innych wad. Jakbym miał oceniać dałbym 2-/5.

    Tak, chodziło mi o twój. Zresztą ja i tak nie korzystam z takich rzeczy, bo nie lubię się przy tym uczyć.

  2. Lipne to jest trochę. Nie pomogło by mi raczej w nauce. Z tego co się orientuję, był już taki program na GMClanie tylko, że w lepszej odsłonie. Mogłeś dodać jakieś opcje typu test, który cię przepytuje i pokazuje wyniki na koniec.

    1.5/5

    BTW. Co jest złego w GMC'lanowym uploaderze, lub takich, z których można pobierać bezpośrednio?

  3. @kriso99

    GML
    var size;

    while(true)

    {

    size = receivemessage(global.otherplayer);//SIZE TO WIELKOSC W BAJTACH WIADOMOSCI

    if(size < 0) break;//jesli wielkosc jest mniejsza od 0 to znaczy ze nic nie odebralismy

    if(size == 0)//jesli wielkosc jest rowna 0 to znaczy ze klient sie rozlaczyl

    {

    show_message("The other player left the game");

    game_end();

    }

    messageid = readbyte();

    switch(messageid)

    {

    //...

    }

    }

     

    Obliczanie wysłanych bajtów? Sprawdzasz wielkość bufora przed wysłaniem(nie wiem jaka jest funkcja, nie robię już w GM), lub sam sobie obliczasz.

  4. TCP jest protokołem połączeniowym. Kiedy klient się rozłączy dostajesz o tym informację. TCP jest wolne, ponieważ pakiety zawsze są sprawdzane i jeśli nie dotrą to wysyła je jeszcze raz. Zawsze docierają w kolejności w jakiej je wysłałeś. Wymaga otwarcia portów tylko na serwerze.

    UDP jest protokołem bezpołączeniowym. Kiedy wysyłasz wiadomość, za każdym razem podajesz ip i port na jaki ma być wysłany pakiet. Wysyła i go później nie interesują dalsze losy pakietu, dzięki czemu jest dość szybki. Musisz sam to sprawdzać. Pakiety mogą dotrzeć, dotrzeć w innej kolejności, dotrzeć 2 razy lub nie dotrzeć wcale. Nie ma czegoś takiego, że dotrze część pakietu lub nie poprawne dane. Do gry dynamicznej jest to dobre rozwiązanie, ponieważ jeśli pakiet jest wysyłany 10x na sekundę to w razie jeśli poprzedni pakiet nie dojdzie to następny zrobi poprawkę. UDP wymaga otwarcia portów na serwerze, jak i u klienta, chyba że użyjesz UDP Hole Punching to wtedy nie musisz ani na serwerze ani na kliencie.

    Częstym sposobem jest używanie TCP i UDP razem. TCP do wiadomości które muszą dotrzeć, jak np. chat, informacja o statach etc., a UDP to np. ruch.

     

    Do gry turowej TCP będzie idealne.

    Nie pomyśl sobie czasem, że TCP jest tak wolne, że pakiet leci ze dwie sekundy. Przy małej ilości pakietów wysyłanych na raz, tak jak w grach turowych to, czy pakiet leci 100 ms czy 200 ms to nie będzie różnica.

  5. Czyli wpisujesz kod w tym "downloaderze" i daje Ci odnośnik do downloadu? Żenada. Lepiej było zrobić to w grze, lub wcale tego nie robić, bo po co. Nikt nie wyśle Ci smsa, w dodatku na zwykły numer tak jak było w poprzedniej części (po co to robić wgl? zysku żadnego nie ma, a autor musi odpisać na smsa), żeby pograć w to.

     

    Gra 20mb a 180kb manager

    Więc dlaczego avast krzyczy, że coś jest nie tak z plikiem?

×
×
  • Dodaj nową pozycję...