Skocz do zawartości

Temat zbiorczy na drobnostki


Chell

Rekomendowane odpowiedzi

Hej mam naprawdę dziwny problem...

 

Ukończyłem projekt w GMS 1.4999, i eksportuję go do .exe (wybieram opcję Single runtime executable.) -eksport na platformę Windows. Do tego momentu wszystko jest w porządku, program eksportuje się do .exe i mam jeden plik - zgodnie z przewidywaniami. Pakuje go do zipa, i wrzucam na serwer.

 

Z ciekawości pobrałem tego zipa na mój inny komuter -  Macbook. Oczywiście wiem, że taki plik .exe przygotowany pod Windowsa nie odpali mi się na Macu, ale nie to jest tu sednem problemu. Wyobraźcie sobie, że z ciekawości rozpakowałem tego zipa za pomocą jakiegoś MAC'owskiego odpowiednika Winrara ( jakiś dekompresor) , i.... w co nie mogę do tej pory uwierzyć, rozpakowało mi paczkę w taki sposób, że w folderze pojawił się nie tylko plik .exe , ale także wszystkie included files — dokładnie tak jakbym przy tworzeniu apki wybrał opcję : 'Compressed Applications Zip', a ja przecież wybrałem  'Single runtime executable'.  To oznacza, że przy pomocy jakiegoś dekompresora, uzytkownicy mogą mieć dostęp do included files.

 

Czy ja mam jakieś zwidy, czy rzeczywiście można sobie tak łatwo zdekompresować pojedyńczy .exe stworzony w GMS 1.4999 ?

Odnośnik do komentarza
Udostępnij na innych stronach

"Single runtime executable" to tak naprawdę samo rozpakowujący się zip, który odpala exe ze środka. Na Windowsie jak go odpalasz to rozpakowuje się chyba do folderu %appdata%

 

Dlatego nie jest to najfajniejsza opcja. Wręcz przeciwnie. Jeżeli z jakiegoś powodu komputer ci się wyłączy podczas gry to śmieci zostaną rozpakowane i ukryte "gdzieś".
Instalator pozwala na pełne odinstalowanie danych, a zip na ich usunięcie bo je widzisz.

Odnośnik do komentarza
Udostępnij na innych stronach

Oki, dzięki za informacje, czyli po prostu przed stworzeniem zipa albo instalatora muszę pousuwać zbędne 'Included files' (zwłaszcza te dotyczące assetu GMLive ) oraz niektóre z  'Extensions' . Oby tylko nie zcrashowało mi to apki w najmniej oczekiwanym momencie.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

To jest taki stary i mało znany feature ZIPa, że mógł być EXEkiem. Niektóre instalatory w rzeczywistości są zipami i można im zmienić rozszerzenie, aby je rozpakować. RAR tego już nie ma.

Odnośnik do komentarza
Udostępnij na innych stronach

Hej jak w prosty sposób zrobić tak, żeby za każdym kliknięciem myszki zmienna zwiększała sie o 1, ale tylko do 10 i następne kliknięcie będzie zmniejszało zmienną o 1 aż do zera. Gdy będzie zero, to znowu będzie zwiększana i tak w koło.

Chodzi mi o to, czy jest jakaś funkcja od tego, coś jak funkcja clamp(x, 0, 10); która zwraca liczbę z przedziału od 0 do 10, nawet jak dalej będziemy zwiększać X. Tylko mi potrzeba jeszcze żeby robiła się pętla zwrotna.

 

EDIT: for() while() odpada, bo pętla wstrzymuje kod, aż do jej zakończenia, a nie o to mi chodzi.

 

y += add;
if(y == 10){ add = -1; }
else if(y == 0){ add = 1; }

chodzi o takie coś, ale skrócone :/

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

Są dwie opcje. Pierwsza:

//create
way =1;
 

//event myszki
if (way == 1) {
    y += 1;
    if (y == 10) way = 0;
} else {
    y-=1;
    if (y == 0) way = 1;
}

Druga:

//create
result = 1;


//event myszki
result++;
if (result==10) result = -10;
y = abs(result);

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Hej, mam drobnostkę dotyczącą display_get_width / display_get_height. 

 

W przypadku podłączonego monitora do laptopa, program  odbiera za pomocą tych funkcji szerokość i wysokość tylko monitora z laptopa, nawet jeśli przeniosę okno z grą na drugi moniotr - znacznie większy. Czy ktoś wie, jakiej funkcji mam użyć, aby window_get_width / window_get_height dotyczyło monitora, na którym okno z grą jest aktualnie wyświetlane?

 

Z góry dzięki za pomoc i pozdawiwam,

Dawid Maj

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...
53 minuty temu, gnysek napisał:

@nowy_user dodane 6 sierpnia, jak na zamówienie, sprawdza ile ekranów jest: https://marketplace.yoyogames.com/assets/8517/display_measure

Właściwie to chyba nawet na zamówienie, bo zadałem podobne pytanie na GMC i ten użytkownik też mi tam odpisał...  :D asset działa tylko na Windowsa, a mi zależało też na MAC'u, ale możliwe, że skorzystam z tego programu.

 

Pozdrawiam,

nowy_user 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 4 miesiące temu...
  • 4 tygodnie później...
  • Administratorzy

Jak piszą w dokumentacji do polecenia buffer_create - "pamiętaj aby usunąć z pamięci", więc tak, siedzi tam ciągle i nie ma garbage collectora. Garbage collector w GMie jest na instancje z niezaznaczonym persistent i tablice.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 miesiące temu...

Pytanie o game maker: studio 
Można jakoś pozyskać listę folderów, a później plików w tym folderze? Chciałbym zrobić eksplorator plików muzycznych i powiedzmy, że mam główny folder nazwany "Music", a w nim foldery o niewiadomej mi nazwie, a w tych folderach pliki muzyczne też o niewiadomej nazwie. Tyle wiem, że trzeba będzie zrobić jakąś tablice trzymającą ścieżki. Albo jestem zbyt zmęczony, żeby wpaść na pomysł, albo tego po prostu w gm:s nie da się zrobić.

Odnośnik do komentarza
Udostępnij na innych stronach

Hej, mam pytanie, bardziej związane z gamedevem niż z samym GMem, ale nie wiedziałem, gdzie je wrzucić więc podsyłam tutaj. Mam problem, mam ok 50 -60 zdjęć (kwadratowych z ostrymi rogami) i chcę z nich zrobić tzw roudned rectangle, czyli kwadratowe zdjęcia z zaokrąglonymi rogami. Czy wiecie w jaki sposób  mogę to zrobić najszybciej, tak aby nie musieć każdego kwadratu przycinać z osobna? Czy są do tego jakieś programy?

Odnośnik do komentarza
Udostępnij na innych stronach

ImageMagick ma jeszcze komendę mogrify dla wielu plików, ale jeżeli nie zadziała zawsze możesz skrypt napisać, np. pod windowsa w konsoli wpisz:

for %f in (*.png) do convert %f ( +clone -alpha extract -draw "fill black polygon 0,0 0,15 15,0 fill white circle 15,15 15,0" ( +clone -flip ) -compose Multiply -composite ( +clone -flop ) -compose Multiply -composite ) -alpha off -compose CopyOpacity -composite %~nf_rounded_corners.png

Pod Linuxa działa to trochę inaczej np dla windowsa usunąłem znaki \ przy nawiasach i zamieniłem pojedyncze ' na "
 

Odnośnik do komentarza
Udostępnij na innych stronach

Hej mam krótkie pytanie, jak poprawnie aktualizować grę webową, tak aby nie było żadnych 'glitchy' graficznych po stronie użytkownika? Za każdym razem gdy wrzucam grę na ten sam adres, to obawiam się, że pojawią się jakieś 'farmazony graficzne'. Czy można jakoś tego uniknąć? Czy może za każdym razem powinienem uploadować każdą aktualizację do innego folderu i robić jakieś przekierowanie z adresu starszych wersji?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

Hm, w sumie nie wiem jak GM wczytuje grafiki, ale można by, tam gdzie jest ich lista, podmienić nazwy i dodać jakies ?ver=1 itp. za każdą aktualizacją, to przeglądarka pobierze nową wersję.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...