Jump to content

Wielebny

Members
  • Posts

    133
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Wielebny

  1. Bardzo odradzam Ci korzystanie z tego modułu, posiada on wiele błędów, np. nie potrafi prawidłowo przetwarzać wartości typu NULL (wywala się na nich cały serwer) i zwraca wszystkie dane w formacie string, nie zawiera wbudowanego mechanizmu escapowania zmiennych. Wbudowane od jakiegoś czasu w MTA funkcje DB (dbConnect, dbQuery, ...) obsługują MySQL i nie mają tych niedociągnieć.
  2. Masz racje - można i warto to tak zapisać - jest krócej.
  3. Wojak, on opisuje sposób na ominięcie prostej blokady pisania na koloro na czacie - dokładnie to takiej: function stripColors(text) return string.gsub(text,"#[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]","") end I o ile stripColors poradzi sobie usunięciem koloru z "#FF0000Hej", to z "##FF0000FF0000Hej" - już nie. A skoro PanSkorpionek pochwalil się, jak to ominąć, to ja zaprezentuje poprawioną i odporną na to wersję tej funkcji: local function stripColors(text) local cnt=1 while (cnt>0) do text,cnt=string.gsub(text,"#[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]","") end return text end Ta usuwa już wszystkie kolory.
  4. https://wiki.multitheftauto.com/wiki/Scr ... ing_script Cały pierwszy punkt opisuje jak stworzyć zasób i oprogramować w nim spawnowanie graczy.
  5. Zainstaluj czyste, oryginalne GTA, bez żadnych podmianek. Słyszałem o tylko jednym crashu z tym offsetem i był on powiązany z tuningiem zamontowanym na podmienionym pojeździe.
  6. Wątpie aby zmiana formatu zapisu danych coś pomogła, prawdopodobnie zapisywanych jest zbyt dużo danych naraz. Czy proces zapisu pojazdów powoduje przywis serwera gry, widoczny chociażby w braku reakcji na wpisany tekst na czacie? Czy rozważałeś rozbicie procesu zapisu na wiele części, np. zapisywanie po x pojazdów co y sekund, zamiast wszystkie naraz?
  7. Myślę, że jest to zakodowane na sztywno w kodzie i zaciemnienie w tym miejscu występuje nawet po usunięciu tych obiektów.
  8. Najwyraźniej w momencie wykonywania screena główny serwer nie był dostępny. Czy problem jeszcze u Ciebie występuje?
  9. Daleko nie trzeba szukać: viewtopic.php?f=104&t=75256&p=693083&hilit=819B00B5#p693083
  10. Błąd dotyczy jednego gracza, czy wszystkich na tym serwerze?
  11. Wielebny

    Shoot

    https://wiki.multitheftauto.com/wiki/OnC ... WeaponFire
  12. Lopez, a czy znasz sposób na zmianę zakresu widoczności tych efektów? Aby np. ogień był widoczny z 300m, zamiast z domyślnych 50? W GTA można od ręki zrealizować to podmieniając bodajże particles.txd, ale podmienić tego dla każdego gracza jeszcze mi się nie udało.
  13. Z przyjemnością informuje, że kod został udostępniony na dodatkowej licencji MIT. Oznacza to, że można z niego korzystać bez konieczności publikowania swoich zmian. Pełny tekst licencji, wraz z wszystkimi informacjami znajduje się w repozytorium: https://github.com/lpiob/MTA-XyzzyRP
  14. MTA posiada wbudowany streamer. Napisanie własnego nie zwiększy Ci ilości widzianych obiektów, co najwyżej zmienisz algorytm ich wyboru. To, że te obiekty zachowują się inaczej po stronie klienta niż po stronie serwera to tylko kwestia przypadku i tego, w jakiej kolejności są przez streamer przetwarzane.
  15. Open DayZ jest na licencji GPLv3. MTA DayZ jest na licencji którą wymyslili jej autorzy i której fragment tu przytoczyłeś.
  16. O ile dobrze pamiętam, w danej chwili gracz może zobaczyć tylko 500 obiektów, a u Ciebie najprawdopodobniej jest ich więcej - stąd zauważalne ładowanie i wyładowywanie ich. W obecnej wersji MTA nie ma możliwości obejścia tego.
  17. Zgoda, ale przy pobieraniu zasobów przez graczy dochodzi do dystrybucji kodu, a w takiej właśnie sytuacji licencja GPLv3 (wspomniany Open Dayz) wymusza konieczność udostępnienia kodu na żądanie. Podobna sytuacja ma miejsce w przypadku np. kodu javascript pobieranego przez przeglądarke na stronach WWW. Są licencje, które pozwalają na ten jeden szczególny przypadek dystrybucji, bez konieczności udostępniania całości kodu, np. AGPL. Niemniej jednak, w przypadku GPLv2, GPLv3, taki obowiązek następuje. Odpowiedziałem Ci już na to pytanie na innym forum, ale pozwolę się tu powtórzyć: Licencja GPLv3 nakłada na Ciebie taki obowiązek, w opisanej wyżej sytuacji. Nie robienie tego to łamanie licencji.
  18. Jeśli chcesz wykonywać inną akcję, to podmień funkcję używaną w linii 21, reszta pozostaje taka sama.
  19. Skorzystaj z tego przykładu, myślę że jest dość czytelny i nie wymaga komentarza. Pochodzi z serwera BestPlay. addCommandHandler("daall", function(plr,cmd,odleglosc) -- if not isRCON(plr) then return end odleglosc=tonumber(odleglosc) if (not odleglosc or odleglosc<1 or odleglosc>10000) then outputChatBox("Uzyj: /daall <1-10000> - rozbrajanie graczy w podanym zasiegu", plr) return end local x,y,z=getElementPosition(plr) local col=createColSphere(x,y,z,odleglosc) local el=getElementsWithinColShape(col,"player") if (#el<=1) then outputChatBox("Nie ma nikogo w poblizu",plr) return end for k,v in ipairs(el) do outputChatBox(getPlayerName(plr) .. " rozbroił/a wszystkich ", v) takeAllWeapons(v) end destroyElement(col) end,false,false)
  20. Wgrywasz ten plik i plik id_graczy.lua usuwasz te fragmenty: if not getElementData(plr,"character") then outputChatBox("Najpierw wejdź do gry.", plr) return end ... if ninjaban(tresc) then outputChatBox(">> " .. getPlayerName(target) .. "(" .. getPlayerID(target) .. "): " .. tresc, plr, 245, 219, 0) exports["lss-admin"]:gameView_add("PM NINJABAN " .. getPlayerName(plr).."/"..getPlayerID(plr).." >> "..getPlayerName(target).."/"..getPlayerID(target)..": " .. tresc) return end i fragmenty odwołujące się do exports["lss-admin"]. To wystarczy aby uruchomić ten kod wszędzie. Po włączeniu, przed przetestowaniem, połącz się od nowa z serwerem aby otrzymać ID. Skrypt które je nadaje przewidziany jest do ciągłego działania, od startu serwera.
  21. Chyba że korzysta się z wbudowanych funkcji db... zamiast modułu mta_mysql. Wbudowane funkcje db... zwracają dane od razu we właściwych typach.
  22. Każdą zmianę w gamemodzie, każdy skrypt korzystający z bebechów tego gamemoda musisz opublikować na tej samej licencji. Może to być paczka do pobrania z linku na forum.
  23. Hasla, pliki konfiguracyjne - nie. Zmieniony kod - tak. A jeśli masz gdzieś hasło zapisane w kodzie to możesz przecież zawsze je usunąć przed udostępnieniem.
  24. Bo chcieli mieć go na innej licencji niż GPLv2.
  25. Nie znam licencji gamemodu DayZ, ale licencję XyzzyRP możesz odczytać w repozytorium - jest to standardowe GPLv2, pełny tekst licencji po polsku: http://gnu.org.pl/text/licencja-gnu.html Nie ma tu żadnych haczyków. Możesz zarabiać na prowadzeniu serwera. Możesz zarabiać na usługach związanych z tym kodem (takimi jak np. odpłatna instalacja dla kogoś, pisanie zasobów pod ten gamemod). Możesz go modyfikować. Musisz na żądanie opublikować zmiany w tym kodzie, o ile dochodzi do jego dystrybucji (a dochodzi jeśli gracze pobierają zasoby przy wejściu na serwer). To ostatnie nie wyklucza możliwości zarobku, chociaż nie każdy jest w stanie to zrozumieć. W planach jest też udostępnienie tego kodu na jeszcze mniej restrykcyjnej licencji, ale jeszcze nikt nie znalazł czasu aby to zrobić.
×
×
  • Create New...