Skocz do zawartości

gnysek

Administratorzy
  • Postów

    9 806
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    139

Odpowiedzi opublikowane przez gnysek

  1. jak już powiedziałem, tam tęgie głowy nad tym siedziały, które są warte na giełdzie kilkaset milionów. Więc.. ta dyskusja do niczego nie doprowadzi, a już nikt na pewno się tym nie przejmie.

     

    Dodam tylko, że kodowa nazwa GMS2 to Zeus, więc może i YYG chciało nazwę zmienić, ale Playtech nie pozwolił.

  2. Teraz, unveres napisał:

    Mi się takie rozwiązanie wydaje dosyć intuicyjne:

    
    x = inferiorTo;
    
    while (instance_exists(x)) {
      x.inferiorTo.click = 1;
      x = x.inferiorTo;
    }
    

    Nie musisz iterować po wszystkich obiektach tylko po tych w hierarchii, więc wychodzi nieco optymalniej. :P

    (pisałem z głowy, więc sprawdź czy działa, bo GMa od dawna nie ruszałem ;))

     

    Jak do X przypiszesz, to zmieni się pozycja :) Ale faktycznie, wygląda, że ma to sens, tak długo jak to jest hierarchia 1-1-1-1... i "inferiorTo" ma id instancji, nie nazwę obiektu.

  3. Można zawsze odczytywać DLC online, też za pomoca klucza, ale prędzej czy później ktoś go odczyta z EXE. Nie da się w 100% zabezpieczyć, więc nie warto czasem tracić na to czasu i po prostu zrobić jakieś proste zabezpieczenie, które odrzuca "noobów" komputerowych, bo prawdziwych hakerów i tak nie przechytrzysz. Pytanie, czy oni w ogóle kupią grę czy już od początku spiracą. Niestety, w tym biznesie musisz założyć, że 50% graczy to będą tacy, co mają grę z "lewego" źródła. I wtedy właśnie zaczyna sie dyskusja, czy piracąc okradasz dewelopera. Gracze twierdzą, że nie, bo wtedy gry by nie kupili, ale deweloper powie, że tak, bo widzi, że połowa graczy przyniosła 0$ dochodu (a prawda jest taka, że nawet jak 1% z tych piracących jednak by kupiła grę gdyby nie było pirata, to zarobisz 1% wiecej, czyli jednak straciłeś kasę na nich).


    Rynek muzyczny ma jeszcze gorzej :)

  4. DLC powinno być pobieralnym plikiem, wtedy sobie tak od nie odblokują. I najlepiej wtedy w pełnej grze mieć sekretny klucz, oraz wynik hashowania pliku DLC, ale nigdy zawartości DLC - wtedy znalezienie treści tego pliku jest niemal niemożliwe (no, może z tęczowej tablicy przypadkiem by trafili, ale to jest 0,0001% szansy).

    Oczywiście wtedy jest szansa, że DLC będzie piracone... no i tak to wygląda zawsze.

  5. 19 godzin temu, nowy_user napisał:

     

    GMS ma swój własny język programowania

     

    Ma, od chyba początku istnienia. I co to zmienia? Gdyby YYG uważało, że nazwa marketingowo jest zła, zmieniłaby ją przy okazji premiery GMS2 2 lata temu. Ale nie zmieniła, a pamiętaj, że poza YoYoGames siedziała nad tym firma PlayTech, mająca w 2017 roku 800 milionów euro przychodu. Więc tam byle bubki nie pracują - ot chociażby, PlayTech jest firmą dzięki której od 2 dni LOTTO można kupić na komórce, oraz firmą która obsługuje jedyne w polsce legalne kasyno online (tez Totalizatora Sportowego). Tak więc nawet polski rząd korzysta z ich usług (bo właścicielem Totalizatora jest skarb państwa).

    Twoje osobiste obiekcje mają się nijak, do decyzji panów w garniturkach na górze :)

  6. Załóżmy, że masz 10 obiektów w hierarchi. Rozumiem, że każdy ma numerek od 1 do 10. (albo 0 - 9). Czy zawsze kasujesz ostatni, czy też ze środka?

     

    Jeśli kasujesz ostatni, to robisz dwie zmienne:

    global.ilosc_kwadratow = 0; global.kwadraty = [];

    i jak tworzysz kwadrat to robisz: global.kwadraty[global.ilosc_kwadratow] = instance_create_layer(0,0,kwadrat,"layer"); global.ilosc_kwadratow++;

    i potem zwykły for od 0 do global.ilosc_kwadratow załatwia sprawę :) Oczywiście kasując zmieniasz tylko global.ilosc_kwadratow--;

     

    Jeśli możesz kasować te ze środka, no to musisz dorobić obsługę przesuwania elementów tablicy.

     

    Jeśli jednak jeden kwadrat może mieć kilka dzieci, no to sprawa się nieco bardziej komplikuje. Ale wtedy wystarczy, że każdy kwadrat ma lokalną tablicę ilosc_kwadratow = [] i zapisuje wszystkie swoje dzieci i też jakoś z tego wybrniesz - oczywiście to dużo więcej kodu do napisania.

  7. Jeśli gra jest single player to szczerze... jeśli ktoś nie chce w nią normalnie grać, tylko oszukiwać, to mam to gdzieś. To jest jego wybór, że chce iść na łatwiznę, na grę innych to nie wpływa, więc psuje radość jedynie sobie (a może ją własnie zapewnia). Jeśli zapłacił za grę i oszukuje - no trudno, może kupił grę dlatego, ze może oszukiwać ? :D

     

    Szczerze, to bym się tym nie przejmował.

     

    Natomiast jeśli chodzi o zapisy z gier, to sobie w grze zrobiłem tak - jest jakieś tam pseudo hasełko, typu: "abc$xxx9". Wybieram sobie jakieś 4-5 rzeczy które są w sejvie i je doklejam do stringa: var checksum = md5(a+b+c+d+password); i zapisuję "sumę kontrolną" w sejvie.

    Jak wczytuję grę, to wtedy sprawdzam czy wartość tych a+b+c+d (i hasła które jest tylko exe) jest taka jak ten hash. To zapobiega modyfikowaniu zmiennych tak długo, aż ktoś nie ma tego hasła - ale jak je potrafi znaleźć to już żadne zabezpieczenie nie pomoże :)

  8. Profesjonalne gierki w Unity, gdzie masz licencję, to chyba nie zawierają takiej wprost informacji, że są w Unity i ludzie też o tym nie wiedzą? Czy to czasem nie wina splash-screena, że Unity jest tak postrzegane ? Akurat mało gram na PC, ale znam sporo gierek na PlayStation w Unity i one nie są złe (aczkolwiek złych Sony praktycznie nie dopuszcza, chociaż Black Tiger jakoś przeszedł :P).

  9. Była zniżka 20% z okazji Black Friday:

     

    GameMaker Studio 2 Creator: $39 $31
    GameMaker Studio 2 Desktop: $99 $79
     
    Co do zniżki dla posiadaczy 1.4 która była w 2017:
    for a limited time existing Professional users and module holders will get 40% off the equivalent Studio 2 product and Master Collection users will get 50% off each product.
     
    Zniżka nie dotyczyła GMów kupionych w drugim Humble Bundle.
×
×
  • Dodaj nową pozycję...