Skocz do zawartości

nowy_user

Użytkownicy
  • Postów

    235
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    5

Treść opublikowana przez nowy_user

  1. Cześć, mam spory problem z GM. Używam GMStudio 1.4 z eksportem web, i niestety, pomimo, że GM to program przygotowany z myślą o projektach 2d, to nie jest w stanie wyświetlać ich prawidłowo. Obraz jest rozmazany i gorszej jakości niż w przypadku wersji na Windowsa, a gdy dochodzi do tego skalowanie, i korzystanie z urządzeń z mniejszymi wyświetlaczami to mamy już do czynienia z prawdziwą tragedią: czcionki są kompletnie nieczytelne, a grafiki, choć w wysokiej rozdzielczości też sporo tracą na tym skalowaniu. Używam kodu, który został podany w tym artykule: https://www.yoyogames.com/blog/66/the-basics-of-scaling-the-game-view i kod rzeczywiście fajnie działa, aby dopasować okno gry (przy zachowaniu proporcji) do ekranów różnych wielkości - tu nie mam zarzutu, Czasen trzeba liczyć się z tym że będą wyświetlać się czarne paski po bokach ekranu, jeśli urządzenie jest niestandardowych rozmiarów, ale to nie jest dla mnie problem. Najgorsza jest jest jakość grafik i czcionek po skalowaniu, tu jest istny dramat. Stąd moje pytanie: * Jaką wielkość roomu powinienem zastosować aby spadek jakości był jak najmniejszy? Domyślam się, że najlepiej, aby rozmiar roomu był taki jak rozdzielczość docelowego urządzenia. Problem w tym, że chcę, aby moja gra była używana zarówno na tabletach, smartfonach i komputerach. Teraz wybrałem wielkość room 960 x 540, ale po eksporcie, i na telefonie jakość jest słaba. Na PC i tablecie trochę lepiej * Co, oprócz wielkości roomu mogę jeszcze zrobić, aby jakość grafik przy skalowaniu nie obniżała się tak bardzo? I jeszcze jedno, wszedłem na stronę True Valhalla ( https://www.truevalhalla.com/), gość robiy gry webowe w GMS i nie wiem jak on to zrobił, ale w jego grach jakość i ostrość grafik jest naprawdę super, niezależnie od tego, czy włączam grę na laptopie, tablecie czy smartphonie. Gość sprzedaje też swój 'Mobility Engine' ale to koszt ok 250 zł, i sorry, ale płacąc za GMa, który samozwańczo określa się najlepszym silnikiem do 2d, to raczej oczekiwałbym, że normalne wyświetlanie grafik 2d powinno być zapewnione.
  2. Właściwie to bardziej się obawiam sytuacji, w której coś się pochrzani przy aktualizacjach MySQL albo MariaDB. Podejrzewam, że jeśli wtedy by się coś poprzestawiało, to miałbym problem aby ustawić wszystko tak, aby działało. Swoją drogą wysłałem też zapytanie na GMCommunity, i doradzono mi, abym po prostu się nie przejmował tym, że ktoś może w nieuczciwy sposób korzystać z mojej aplikacji ( w sensie instalować na więcej urządzeń) i po prostu abym nie robił żadnego systemu zabezpieczeń. Zamiast tego poradzono mi, abym sprzedawał produkt na minimum 10 urządzeń i wtedy, nawet jak ktoś będzie chciał mnie oszukać to i tak sprzedaż na 10 kompów / tabletów będzie już jakimś konkretem. No przyznam, że ma to sens.
  3. Dziękuję za odpowiedź @gnysek . 1. Tak się składa, że pracowałem przez 2 lata dla firmy, która tworzyła aplikację na tablety dla szkół, dla specyficznej grupy uczniów i wiesz co, masz sporo racji, że w szkołach z budżetem jest ciężko, natomiast na tego typu produkty są bardzo duże dofinansowania, i zwłaszcza pod koniec roku kalendarzowego szkoły kupowały to zaskakująco dobrze. Skupiając się jedynie na rynku Polskim można wygenerować zyski wystarczające na utrzymanie 1-2 osób, ale jeśliby rozwinąć biznes na inne kraje... tu widzę duży potencjał Sam produkt pod kątem programistycznym jest niezbyt złożony, bardziej chodzi o jego wartości terapeutyczne, myślę, że w GM to ok 2 miesięcy ( podczas pracy nad projektem full time). Co do pozostałych punktów, to spróbuję... szkoda, że w GMie nie ma jakichś domyślnych rozwiązań, widać, że pracownicy Yoyo zakładają, że główny kanał dystrybucji gier to albo Steam albo App Store/ Google Play, i nie widzą potencjału w innych bardziej niszowych — a przez to mniej nasyconych — gałęziach przemysłu gamingowego. Potrzebuję rozwiązania jak najmniej skomplikowanego, aby jak najmniej czasu poświęcać na ewentualny customer support, problemy z serwerami itd. Chciałbym po prostu poświęcić 2-3 miesiące na zrobienie produktu, a potem zacząć agresywne działania sprzedażowe.
  4. Ok , to ma sens, natomiast, chciałbym sprzedawać moją grę/aplikację do szkół na ilość stanowisk. Jeśli zrobię to tak jak piszesz, to szkoła może kupić aplikację na 1 stanowisko , a następnie skopiować na pozostałe komputery. Wolałbym generować klucze aktywacyjne i w zależności na ile stanowisk dana szkoła kupi program, to tyle dostaną kluczy aktywacyjnych. Tylko tutaj klucz musi się deaktywować po wpisaniu go… No nie jest to łatwy temat, ciekaw jestem czy da się w ogóle coś takiego zrobić w GM. Czy ma ktoś pomysł?
  5. Cześć, mam pytanie, jak zrobić wersję trial programu, który zrobiłem w GM? Tak aby po 14 dniach blokowało dostęp, jeśli nie wpisze się specjalnego kodu aktywacyjnego? Jak zrobić aby przeinstalowanie programu nie resetowało licznika dni zużytych? Przez prawie 2 miesiące tworzyłem system rejestracji i loginu ( gdzie po 14 dniach, jeśli ktoś nie zapłaci to nie ma dostępu do aplikacji ), i pomimo że mam cały system gotowy i zaimplementowany, to chcę z niego zrezygnować. Decyzja jest podyktowana tym, że martwię się takimi sytuacjami jak potencjalne problemy z serwerem, zhackowanie serwera i wyciek danych itd. Wolałbym to zrobić w prostszej wersji — przynajmniej na początek. Jaki system proponujecie?
  6. nowy_user

    Bonfire

    Gratulacje TeeGee ! Jesteś świetnym przykładem na to, że z robienia gier ( i to w GMie ) można żyć ! Swoją drogą, dalej pracujesz z całym swoim zespołem ( z którym pracowałeś nad Cinders) czy raczej teraz głównie tworzysz sam?
  7. Właściwie to chyba nawet na zamówienie, bo zadałem podobne pytanie na GMC i ten użytkownik też mi tam odpisał... 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
  8. 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
  9. 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.
  10. 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 ?
  11. Witajcie, mam do czynienia z dziwną sytuacją. Co jakiś czas w moim projekcie dochodzi do spadków FPS z 60 do ok 35. Na ogół kilka minut po wejściu do rooma. Dzieje się tak czasami, nawet gdy nic nie robię w aplikacji. Spadek FPS trwa różnie - czasami 30 sekund czasami minutę lub dwie. Potem, na ogół, wraca do normy. Zdarza się, że restart roomu pomaga. Nie jestem w stanie zdiagnozować co jest przyczyną problemu ( nie tworzą się żadne nowe obiekty, bo mam ciągle wyświetlaną ilość aktywnych obiektów.), raczej to też nie problem ze strukturami danych — używam raptem dwóch list, które zawsze po użyciu są usuwane. Nie mam pojęcia, w jaki sposób mogę zdiagnozować przyczynę problemu, czy ktoś ma jakiś pomysł , jak dokonać diagnostyki tego nieoczekiwanego spadku FPS? Pozdrawiam, nowy EDIT Zmieniłem w ustawieniach sleep marigin z 1ms na 10 ms - nic to nie dało.
  12. Dzięki, teraz jest to jasne EDIT.... Przy okazji, wiesz może @gnysek czy mogę dostać jakoś informację zwrotną od GMa, gdy zapis do pliku tekstowego zostanie już wykonany? Wiem , że istnieje funkcja file_exists ale jeśli nadpisuję plik, który już istnieje, to formuła if file_exists tu nie zadziała... Pytam, ponieważ chciałem ustawić zapis gry przy wyłączeniu, i dotychczas ustawiałem alarm na chybił trafił np.2 sekundy po odpaleniu kodu do zapisu gry , gra się wyłączałą. Tylko co, jeśli plik będzie na tyle duży albo komputer będzie zajęty jakimiś innymi procesami w tle, i zapis zabierze mu więcej niż te 2 sekundy? Wówczas gra się zamknie, a plik nie zdąży zostać zapisany. Niestety w GMie nie ma żadnej funkcji typu if file_save_is_done albo coś w tym stylu... może da się to jakoś sprytnie obejść? Pozdrawiam
  13. Panowie, ostatnio GM daje mi się we znaki ( jak to zwykle bywa, tuż przed publikacją produktu, i gdy już skupiałem się na marketingu, nagle zaczęły wyskakiwać mi dziwne bugi ). Niestety, na wskutek tych bugów prawdopodobnie muszę zrezygnować z systemu zapisu danych w chmurze i próbuję robić zapis off-line. Dziś napotkałem na bardzo dziwny bug i nie wiem już, czy to przez nerwy czy raczej GM zachowuje się dziwnie w prostej sytuacji. Proszę o pomoc. Wszystko jest ok gdy próbuję zapisać sobie plik za pomocą kodu: { var _path, _file; _path = get_save_filename("project|*.txt", ""); if (_path != "") { _file = file_text_open_write(_path); file_text_write_string(_file, string(_savedane)); file_text_close(_file); } } Pojawia się okno dialogowe, ja mogę sobie wybrać lokalizację pliku i zapisać go gdzie chcę. Problem pojawia się, gdy chcę zrobić sobie autosave projektu wybranego wcześniej też za pomocą okna dialogowego. Przy wgrywaniu pliku mam kod: var _path, _file, _savedane; _savedane=''; _path = get_open_filename("project|*.txt", ""); if (_path != "") { _file = file_text_open_read(_path); _savedane=file_text_read_string(_file); file_text_close(_file); global.cloudoff_load_result = _savedane global.cloudoff_file_path=_path; room_goto_next(); } Jak widzimy, ten kod zapisuje sobie w zmiennej globalnej global.cloudoff_file_path ścieżkę wybranego przez nas pliku. Jest ona prechowywana, po to, aby właśnie potem, przy autosavie nie otwierać okna dialogowego, tylko aby plik zapisywał się właśnie automatycznie. Używam do tego kodu: { var _path, _file; _path = global.cloudoff_file_path if (_path != "") { _file = file_text_open_write(_path); file_text_write_string(_file, string(_savedane)); file_text_close(_file); } } Jak widać ten kod jest łudząco podobny do tego, który przedstawiłem na początku, różnica jest taka że zamiast _path = get_save_filename("project|*.txt", ""); mamy _path = global.cloudoff_file_path . Pomimo, że w obu przypadkach _path zwraca nam tę samą ścieżkę ( sprawdzałem za pomocą show_debug_message), to w pierwszym przypadku - z oknem dialogowym - plik zapisuje się bezproblemowo, a w drugim wysakuje błąd w oknie compile form : Error! not allowing save with filename Error! not allowing save with filename 'C:\Users\Dawid\Desktop\pulpit\Base_Project_New.txt'.Error! not allowing save with filename ''. ( tu na końcu jest kropka i strzałka w górę narysowana). Czy ktoś ma pomysł , dlaczego tak się dzieje? Z góry dzięki za pomoc nowy_zdesperowany_user
  14. Ok postaram się to ogarnąć, najdziwniejsze jest to, że jak próbuję forsować wczytanie danych ( gdy się nie uda to ustawiam alarm[0] na 1 step który ponawia próbę i tak w kółko ) to zaledwnie po kilku próbach wczytuje tego Jsona, nawet jeśli jest on kilkukrotnie dłuższy. Jeśli alarm[0] ustawię na 30 lub 60 stepów, to wtedy nawet po 20 próbach ma problem z wczytaniem tego Jsona , to jest bardzi dziwne ...
  15. Ale mi nie ucina znaków, po prostu gdy JSON jest za długi to nie wczytuje go wcale a w debug message mam:http:// *adres strony www */load.php?: Load Failed! RESULT: undefined JSON zapisuje się poprawnie, problem jest z wczytaniem.
  16. Ten skrypt wygląda następująco: <?php header("Access-Control-Allow-Origin: *"); // Get config variables require_once 'include/Config.php'; // Get Database functions require_once 'include/DB_Functions.php'; $db = new DB_Functions(); // json response array $response = array("error" => FALSE); if (isset($_POST['unique_id']) && isset($_POST['save_code']) && isset($_POST['slot'])) { // receiving the post params $unique_id = $_POST['unique_id']; $save_code = $_POST['save_code']; $slot = $_POST['slot']; // Get user $info=$db->getUserByUserIdAndSaveCode($unique_id,$save_code); $user=$info[0]; switch ($slot) { case 1: // Check if all went ok if ($info[1]==""){ // All ok $error_info=""; $response["load_data"] = $user["save001"]; }else{ // Error $error_info=$info[1]; } break; case 2: // Check if all went ok if ($info[1]==""){ // All ok $error_info=""; $response["load_data"] = $user["save002"]; }else{ // Error $error_info=$info[1]; } break; case 3: // Check if all went ok if ($info[1]==""){ // All ok $error_info=""; $response["load_data"] = $user["save003"]; }else{ // Error $error_info=$info[1]; } break; case 4: // Check if all went ok if ($info[1]==""){ // All ok $error_info=""; $response["load_data"] = $user["save004"]; }else{ // Error $error_info=$info[1]; } break; case 5: // Check if all went ok if ($info[1]==""){ // All ok $error_info=""; $response["load_data"] = $user["save005"]; }else{ // Error $error_info=$info[1]; } break; default: $error_info = $slot . " saves slot don't exists!"; } if ($error_info=="") { $response["error"] = FALSE; } else { $response["error"] = TRUE; $response["error_msg"] = $error_info; } echo json_encode($response); } else { if (isset($_POST['share_code']) && isset($_POST['slot'])) { // receiving the post params $share_code = $_POST['share_code']; $slot = $_POST['slot']; // Get user $info=$db->getUserByShareCode($share_code); $user=$info[0]; switch ($slot) { case 1: // Check if all went ok if ($info[1]==""){ // All ok $error_info=""; $response["load_data"] = $user["share001"]; }else{ // Error $error_info=$info[1]; } break; case 2: // Check if all went ok if ($info[1]==""){ // All ok $error_info=""; $response["load_data"] = $user["share002"]; }else{ // Error $error_info=$info[1]; } break; default: $error_info = $slot . " save slot don't exists!"; } if ($error_info=="") { $response["error"] = FALSE; } else { $response["error"] = TRUE; $response["error_msg"] = $error_info; } echo json_encode($response); } else { if (isset($_POST['unique_id']) && isset($_POST['save_code']) && isset($_POST['row'])) { // receiving the post params $unique_id = $_POST['unique_id']; $save_code = $_POST['save_code']; $row = $_POST['row']; // Check if allow public if (GLOBAL_PUBLIC_1==FALSE) { // Get user $info=$db->getUserByUserIdAndSaveCode($unique_id,$save_code); $user=$info[0]; // Check if all went ok if ($info[1]=="") { $all_ok=TRUE; } else { $all_ok=FALSE; } } else { // Don't need user $all_ok=TRUE; } // Check if all went ok if ($all_ok){ // All ok $error_info=$db->loadVar($row); $new_value=$error_info["value"]; $error_info=$error_info["error"]; $response["value"] = $new_value; }else{ // Error $error_info=$info[1]; } if ($error_info=="") { $response["error"] = FALSE; } else { $response["error"] = TRUE; $response["error_msg"] = $error_info; } echo json_encode($response); } else { if (isset($_POST['row'])) { // receiving the post params $row = $_POST['row']; $error_info=$db->loadPublic($row); $new_value=$error_info["value"]; $error_info=$error_info["error"]; $response["value"] = $new_value; if ($error_info=="") { $response["error"] = FALSE; } else { $response["error"] = TRUE; $response["error_msg"] = $error_info; } echo json_encode($response); } else { // required post params is missing $response["error"] = TRUE; $response["error_msg"] = "Required parameters are missing!"; echo json_encode($response); } } } } ?>
  17. Dokładnie tak, JSON jest czytany z mysql przez PHP i mogę sobię go przejrzeć z poziomu przeglądarki w MyPhpAdmin. Co ciekawe, jeśli ustawię sobie w alarmie, aby ponowić próbę pobrania JSONA ( w przypadku gdy się nie uda za pierwszym razem) , i alarm ustawię np. na 60 stepów, no to co sekundę będzie próbować pobrać Jsona , ale nawet i po 20 powtórzeniach mu się nie uda, jeśli JSON jest długi. Natomiast... co jest mega dziwne.... jesli ustawię alarm na 1 step to dzieje się coś totalnie nieprzewidywalnego, ponieważ pierwsza próba pobrania JSONA jest nieudana ( to jest jeszcze zgodne z przewidywaniami ), ale.... następna jest już ok i pobiera JSONa nawet jeśli jest bardzo długi ! Czasami potrzebuje kilku prób, ale max 5-10 nawet przy bardzo długiej zmiennej... Dziwne jest to, że jak alarm ustawiam na np 60 stepów, to nawet i po kilkudziesięciu próbach nie wczytuje tego JSONa... a przy alarmie ustawionym na 1 step, max kilka prób... nie potrafię tego wytłumaczyć logicznie, ale muszę to zrozumieć, bo to rozwiązanie, które udało mi się wykombinować na chybił trafił zdaje się zbyt niestabilne, i nie chcę żadnych fakapów w przyszłości - zwłaszcza, że będę moją apkę sprzedawać. Czy ktoś ma jakikolwiek pomysł, dlaczego takie dziwne rzeczy się dzieją?
  18. Hej, czy serwer może narzucić mi limit długości stringa Json, który mogę wczytać z bazy MySQL? Mam problem, że gdy string Json jest dość długi, ale nie jakoś bardzo, (zawiera 13 500 znaków) to mogę go bez problemu zapisać do bazy MySQL, ale wczytać już nie bardzo. Przy krótszych string’ach działa bez zarzutu. Zastanawiam się, czy problem leży w moim kodzie w GM, czy jednak to serwer i jego ustawienia za to odpowiadają. Czy ktoś ma jakieś wskazówki?
  19. To akurat nie jest problem, mam w bazie datę rejestracji , i datę ostatniego logowania, więc mam te dwie daty. Problem w tym, że chcę porównać czy różnica w dniach pomiędzy dwoma datami to 14 dni. Ja wymyśliłem taki skrypt: var day1, month1, year1, day2, month2, year2; day1=25; month1=11; year1=2019; day2=3; month2=12; year2=2019; var difference; difference = ( day2+ceil((month2*30.5))+(year2*365) ) - (day1+ceil((month1*30.5)) + (year1*365) ) Teoretycznie działa, nie jest to super dokładny sposób i czasami, gdy daty są z różnych miesięcy albo lat to skrypt myli się o jeden dzień, ale na razie chyba mi to wystarczy. Gdyby ktoś miał lepszy pomysł to może napisać, w innym wypadku będę korzystał z tego, co sam wykombinowałem. EDIT O rany, pogrzebałem w dokumentacji i znalazłem funkcję: date_day_span(date1, date2); Problem uznaję zatem za rozwiązany
  20. Hej, mam pytanie, czy ktoś wie jak wyliczyć dokładną różnicę dni pomiędzy dwoma dniami ( tak żeby nie wskazywało jakichś głupot, gdy porównamy daty z dwóch różnych miesięcy lub dwóch różnych lat) w GM studio? Tworzę system, który ma za zadanie automatycznie zablokować dostęp do mojego programu po 14 dniach ( system trial ) i nie wiem do końca jak to zaimplementować . GM studio ma funkcję date_compare_daytime , ale to zwraca nam tylko informację, czy dana data jest wcześniejsza, czy późniejsza, bez dokładnego określenia różnicy dni pomiędzy nimi.
  21. Cześć mam problem, gra trochę przycina mi gdy eksportuję ją do HTML 5 i wrzucam na serwer. Co ciekawe FPS cały czas pokazuje mi 30 ( czyli taki jak Room Speed) abrak jest takiej płynności, która jest obecna gdy grę testuję w wersji na windowsa. Nie są to jakieś straszne lagi, ale zastanawia mnie z czego to się bierze? Mam jedynie 11 obiektów w roomie, każdy z nich ma naprawdę niewiele kodu ( no dobra, każdy z nich podąża ścieżką wyznaczoną przez path, a path ma jakieś 15 punktów- to też chyba nie jest tragedia), jest też jeden sprite który robi za background ( jest nieduży, bo gra jest przygotowana pod telefony), a z kolei obiekty nie mają sprite'a , tylko każdy z nich rysuje w evencie draw zamalowane kółko w swojej pozycji x i y. Czy ktoś wie, jak moge zoptymalizować grę pod kątem HTML5? Jak mogę sprawdzić co powoduje ten brak płynności? Na co zwracać uwagę? Może lepiej rysować sprity, niż używać funkcji typu draw_circle itp.? Bardzo tajemnicze jest to, że w momentach przycinek FPS dalej jest na maxa. Będę wdzięczny za sugestie. Pozdrawiam, nowy
  22. nowy_user

    Szukam programu

    Dzięki za podpowiedź niestety nie mogę połączyć się ze swoim PC , gdy próbuje się połączyć za pomocą MACA to wyskakuje błąd ( na MACu), że mój PC z którym próbuje się połączyć jest niepodłączony do internetu ( a na pewno jest), albo nie ma uruchomionego programu ( a na pewno ma) . Mam w ustawieniach zaznaczone, że zezwalam na zdalną kontrolę komputera... czy ktoś zna jakieś alternatywy dla Team Viewera oraz Microsoft Remote Desktop?
  23. nowy_user

    Szukam programu

    Hej, szukam programu, który pozwoliłby mi na zdalną kontrolę nad kompuuterem ( PC z windowsem ) za pomocą Macbooka. Do tej pory używałem TeamViewer'a ale niestety, program 'wykrył' , że używam go do celów komercyjnych ( co jest nieprawdą! ) i mam zablokowany dostęp - musz wykupić licencję (najtańsza to 115 zł miesięcznie). Próbowałem użyć Pythonowego sktryptu z githubu : https://gist.github.com/idarek/9f121fa63106ef0224372e563c809830 , ale gdy otwieram go przez Python Launcher, to wyskakuje mi info, że muszę odpalić skrypt z root;a . Gdy odpalam skrypt z konsoli, wyskakuje info 'command not found'. W związku z tym pewnie będę musiał poszukać innego programu, może znacie jakąś dobrą , najlepiej darmową ( albo chociaż tanią ) alternatywę dla TeamViewera. Ważne jest to , abym miał możliwość połączenia się za pomocą MacBooka z PC. pozdrawiam, nowy_user!
  24. Rzeczywiście , umknęło mi to , dzięki za pomoc !
×
×
  • Dodaj nową pozycję...