Skocz do zawartości

Ranmus

Filar Społeczności
  • Postów

    3 205
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    4

Treść opublikowana przez Ranmus

  1. Juniorator, nie bierz sie za zadne managery jak jestes poczatkujacy.
  2. No to sobie poczekasz na recenzje, bo 73 MB jednak pochlania troche czasu na sciagniecie.
  3. No masz ci los, akurat dzisiaj kombinowałem z winapi i coś mi wywala błąd z tym oknem tekstu. Jak chcesz typowo windowsowy, to poszukaj na oficjalnym forum, tam pelno jest takich dll'i
  4. O boziu... patrzyliście spis nowych funkcji w najnowszej wersji GM? Nie? To wasza strata.
  5. W olu i,0 tablicy "a" nie ma id lub podany numer nie jest numerem id zadnego obiektu lub nie ma takiego obiektu, przez co nie mozna pobrac x.
  6. https://gmclan.iglu.cz/upload/temp/piony.zip
  7. Nic nie daja, przeciez ja sobie je wymyslilem, zeby czyms zapelnic tabele, to akurat nie jest najwazniejsze. Zreszta gdybys czytal dokladnie, to bys wiedzial do jakiej zmiennej sa zapisywane te liczby: attack_min, attack_max Rozumiesz juz?
  8. Pamiętaj, że klocek nie odpowiada tylko jednej funkcji, czasem jest to większy algorytm, więc niektórych dokładnie nie da się rozszyfrować.
  9. Zrob sobie tablice dwuwymiarowa i zapisuj w pierwszej kolumnie nazwe muzyki, w drugiej sciezke, w trzeciej czas trwania itd. Kombinuj i tyle.
  10. Jak sobie ograniczysz to tak.
  11. Ostatnio tlumaczylem Mifie, wiec na swiezo moge pomoc: Tablice to są zbiory zmiennych występujących pod jedną nazwą. Służą do przechowywania danych i w ogóle. Bez tablic (arrays) daleko nie zajedziesz, nic lepszego nie napiszesz. Przykladowe zastosowanie tablic: a[0] = "Wielki "; a[1] = "Mały "; a[2] = "Olbrzymi "; a[3] = "Karłowaty "; b[0] = "Dobry "; b[1] = "Zły "; b[2] = "Neutralny "; b[3] = "Chaotyczny "; c[0] = "Człowiek"; c[1] = "Krasnolud"; c[2] = "Goblin"; c[3] = "Elf"; imie = a[round(random(4))] + b[round(random(4))] + c[round(random(4))]; Mamy tutaj trzy tablice: a, b i c. Do każdej z nich wrzuciłem po cztery elementy. W nawiasach kwadratowych podaje się indeks danego elementu/zmiennej. Zmienna imię bedzie miała wygenerowaną klasę bohatera. Losowane są po prostu indeksy tablic. Idąc dalej, w GM sa jeszcze tablice dwuwymiarowe: a[x,y] To taki przykladzik zeby lepiej zrozumiec, tablicę dwuwymiarową można porównać do kartki papieru w kratkę. Każde małe pole zawiera zmienną. Aby zapisać "stefan" do wiersza 5 i kolumny 3 robimy tak: nazwa_tablicy[5,3] = "stefan"; Zeby odczytac: draw_text(x,y, string( nazwa_tablicy[5,3] )); Do czego sie moze przydac? Np w rpg do przechowywania danych o broni, o to tablica ( | to podzial na kolumny): Miecz dwusieczny | 10 | 20 | sprite_1 Sztylet | 2 | 4 | sprite_2 Krótki miecz | 5 | 10 | sprite_2 zapisujemy to wszystko do tablicy w GM: global.weapons[0,0] = "Miecz dwusieczny"; global.weapons[0,1] = 10; global.weapons[0,2] = 20; global.weapons[0,3] = sprite_1; global.weapons[1,0] = "Sztylet"; global.weapons[1,1] = 2; global.weapons[1,2] = 4; global.weapons[1,3] = sprite_2; global.weapons[2,0] = "Krótki miecz"; global.weapons[2,1] = 5; global.weapons[2,2] = 10; global.weapons[2,3] = sprite_3; Tworzymy obiekt "weapon" Teraz jak zabijemy jakies potwora to robimy tak: id_nowej_broni = instance_create(x,y,weapon); // uchwyćmy id nowego obiektu with ( id_nowej_broni ) { var i; // zmienna i potrzebujemy tylko na chwile, wiec dopisujemy var i = round(random(3)); // Bo mamy 3 bronie weapon_name = global.weapons[i,0]; attack_min = global.weapons[i,1]; attack_max = global.weapons[i,2]; sprite_index = global.weapons[i,3]; } W ten sposob mamy wygenerowany nowy obiekt weapon z paroma waznymi zmiennymi jak nazwa broni, jej atak minimalny i maksymalny oraz sprite. Teraz niech ktos mi pokaze jak takie cos zrobic bez tworzenia nowych rodzajow obiektow i to bez tablic. :emot11: A tak apropos, tablice to poziom zaawansowania veryyy beginner.
  12. Ranmus

    Nasze strony

    http://gamem.host.sk A co się będę oszczędzał. :) Marmot: Pierwsza strona nie działa.
  13. Ranmus

    GAMEM

    Marmot: Błąd poprawiony. A co do reklamy, to ostatnia zasada w regulaminie powinna wszystko wytłumaczyć. :] Stwórz sobie temat w valhallii "strony domowe" i już. Bo jak każdy będzie reklamował osobno to już przesada. A co do CMS'a, to nie ma żadnego, ale Marmot jest na dobrym tropie, będę pobierał składniki z gmclan (ale oczywiście przerobione).
  14. Bierz to co Buziol. Wydaje się fajne, ale cos mi tu smierdzi mega hackiem php-nuke. :)
  15. Ranmus

    GAMEM

    Pod starym adresem GMS'a wylądowała... moja stronka domowa: http://gamem.host.sk Nie liczyć na częste aktualizacje. :) Będę tam wrzucał różne rzeczy, w tym zapowiedzi jakichś projektów itp. niekoniecznie związanych z GM'em. No i mam nadzieję, że już niedługo uda mi się tam wpuścić jakieś gierki z hi-score online. Tylko nie oceniać mi tutaj mojego angielskiego <_< . Co sądzicie o grafice?
  16. Co jest gorsze a co lepsze? Niby czemu? Te dwa eventy służą do czego innego. Step nie jest niewydajne, tylko jak już ktoś to napisał sprawdzane jest cały czas. Kłopot w tym, że trzeba umieć z niego korzystać, a nie bezmyślnie jak to część robi. Ja przykładowo zrobiłem zaznaczanie jednostek i proste chodzenie. Gdy miałem na raz paredziesiąt zaznaczonych, gra osiągała ~190 fps! Druga sprawa, draw. Tego radzę unikać jak ognia. Funkcje rysujące są strasznie procożerne. Prawdziwa jatka zacznie się w GM 6.0. Sam się niecierpliwię. Draw często można zastąpić różnymi trickami. Przykładowo zielona obwódka wokół jednostek zaznaczonych. Metodą draw szybkość spadał do parudziesięciu fps przy paru jednostkach. Gdy zrobiłem metodą tworzenia obiektu o spricie zielonej ramki dla każdego obiektu i żeby za nim podążała, gra... praktycznie nie straciła żadnych fps'ów. Optymalizacja i jeszcze raz optymalizacja! Sadam : Optymalizacja i Optymalizacja. Lock :P
  17. Wygrzebałem ze swojego kompa: https://gmclan.iglu.cz/upload/temp/fonty.rar
  18. jPortal jest do chrzanu, wierz mi. Strona BuZiola? Tak. Stoi na MD Pro i mialem zamiar ci go polecic. A i jeszcze Xoops nie zostal wymieniony. :-)
  19. Cos niewydajne silniki piszecie, ja moge bez eventow to i pare tysiecy obiektow wstawiac bez najmniejszej straty fps :) Ja bym zrobil tak: 1) Zrobil tor chodzenia z obiektow jak to marmot napisal. 2) Pionek przesuwajac sie za kazdym razem gdzie jest kolejny klocek z tor, oczywiscie by sprawdzal czy to nie jest przypadkiem ten, na ktorym byl ostatnio. Samo chodzenie to tak: 1) Utworzyc zmienna z liczba pol do przejscia 2) Za kazdym razem wlaczac algorytm przesuwania popikselowego az obiekt osiagnie docelowa pozycje. PRzykladu gmd nie chce mi sie tworzyc, bo robie cos innego.
  20. Hmmm... Najlepiej by szybkosc room'a byla taka sama jak czestotliwosc odswiezania. Wybierasz 70, to ustawiasz fps na 70. Mark Chyba cos z Vsync'em skopał. 'Wait for vertical blank before draw jakos nie daje efektow". I czasem u gory jest takie małe szarpnięcie.
  21. Woock: To ... nic. Wpisz fastball w google i zastanów się czy Aionel zarejestrował sobie tą nazwę. :] Lion nic nie musi zmieniać.
  22. A samemu nie łaska poszukać? Jak do tej pory nie dostałeś wyczerpującej odpowiedzi na ten temat, to znaczy, że nikt nie ma w tym zbyt dużego doświadczenia, więc bierz się za poszukiwanie informacji.
  23. Sie wie, ale to może być także zły dobór parametrów i w sumie chyba to można wykulczyć, ponieważ tecbug użył exclusive. Przydało by się znać parametry karty graficznej.
  24. Zrob jakis przykladowy gmd i zarzuc tutaj, to oblukam ustawienia jakie zastosowales.
  25. Użyć komend MCI za pomoca specjalnej funkcji w GM (w helpie wpisz MCI) lub skombinowac sobie jakis dll do obslugi muzyki eliminujacy ten blad ( w GM 6.0 juz go nie bedzie). Widzialem kiedys na oficjalnym forum taki tylko dla midi, ale nie pamietam jak sie nazywal.
×
×
  • Dodaj nową pozycję...