Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Demonical Monk

Strony: [1] 2 3 ... 9
1
C, C++ / Hook na funkcje
« dnia: 2013-07-08, 11:32 »
http://securityxploded.com/dll-injection-and-hooking.php#Hooking

Tylko nie mam pojęcia co Ty chcesz zrobić, obsługa eventów nie leci w Render, jak sama nazwa wskazuje :|

2
Narzędzia / gtools
« dnia: 2012-02-17, 14:42 »
Wiki przywrócone.

Cytuj
Jestes jego rzecznikiem prasowym czy co? :lol2:  
Nawet jeśli to co?

Co do testów i pomocy - później.

3
Narzędzia / gtools
« dnia: 2012-02-14, 17:16 »
Wraz z dniem dzisiejszym zdecydowałem się zamknąć publiczny rozwój projektu, nowe wersje będą wydawane od dziś na wyłączność grupy SoulFire. Z pewnością dalszym rozwojem publicznego forka zajmie się jakiś reverser obecny na forum ;)

4
Archiwum / [POMYSŁY]Budzis Skrypt Mod 4.0
« dnia: 2012-02-13, 17:17 »
GS nie jest bez bugów, Silnik Gothica także (nie oszukujmy się nie wszystkie bugi w modach to wina modmakerów, część to po prostu wykorzystanie możliwości silnika których twórcy silnika dobrze nie przetestowali, albo zrezygnowali z naprawy i nie wprowadzili do niezmodowanych plansz/skryptów)

Owszem kody często psują grę ale często są też potrzebne. z tego co czytałem w temacie o Ikarusie, to nie można zbyt łatwo zmienić Marvin#msg1019678a na inny kod ponieważ funkcja która sprawdza kod jest głęboko ukryta w silniku gothika (jak nie wierzysz to sobie otwórz gothic.exe w notatniku/hexedytorze i poszukaj "marvin" - nie ma tam tej frazy), jednak włączanie/wyłączanie trybu cheatów z poziomu skryptu jest już dużo prostsze - można łatwo zrobić antymarvinowy skrypt - po prostu wyłącza Marvin-Mode od razu po jego włączeniu - a zmienna która opisuje CZY jest właczony Marvin-Mode jest dobrze znana. Ikarus po dodaniu paru niestandardowych funkcji potrafi sprawdzić naciśnięcie dowolnego klawisza. nic nie stoi na przeszkodzie aby zrobić warunkowy anty-marvin, który to warunek blokady byłby wyłączony po napisaniu po kolei "RAFALBUDZIS" (tj. trzeba będzie najpierw wpisać "RAFALBUDZIS" a dopiero potem włączyć Marvin-Mode w grze). Taki koncept anti-fool byłby całkiem niezły - bo dziecko neo nie wpadnie na pomysł żeby sprawdzić coś innego poza marvin-em, a każdy pełnosprytny obywatel powinien do tego dotrzeć jak naprawdę będzie tego potrzebował.

Google: głębokie ukrycie. Ta fraza jest przeznaczona do innego rodzaju faili :D

W silniku kody realizuje HandleResultString(class zString) i jest ona jawnie callowania przez którąś tam metodę w (bodajże) zCStatusMenu. Sam fakt tego, że nie możesz jej znaleźć notatnikiem jeszcze niczego nie znaczy. Szukajką w notatniku nie znajdziesz większości tekstów w Unicode, druga sprawa, że tych kodów jest więcej (np. MARIN, 42). Do sprawdzania kodów używa się tablicy hashującej, która swoje klucze trzyma właśnie w postaci nieodwracalnych matematycznie skrótów. Nie widać konkretnie jak brzmią kody, natomiast widać co robią. Być może to easter egg, żeby pobawić się w zgadywanie/crackowanie? :P

Jestem za tym (jeśli już blokujemy kody, choć wasze argumenty z Gothic Sourcerem są śmieszne :P), żeby jakiś przedmiot znajdywany w dziwnych okolicznościach pod koniec gry (może jaskinia z kopaczem-uciekinierem znajdująca się w górze, na której stoi forteca Ur-Shaka, albo inne miejsce z potencjałem, lecz niezagospodarowane) odblokowywał możliwość użycia kodów.

5
Archiwum / [POMYSŁY]Budzis Skrypt Mod 4.0
« dnia: 2012-02-13, 10:31 »
Co mnie powstrzymuje przed otwarciem hexedytora i nadpisaniem tego jednego bajtu? Pomijając oczywiście fakt, że byle noob może zdekompilować moda i wyciąć te kilka linijek.

6
Archiwum / [POMYSŁY]Budzis Skrypt Mod 4.0
« dnia: 2012-02-12, 12:26 »
Teoretycznie ludzie, którzy chodzili na trasie bractwo <> kopalnia SO stawali *PRZED* kopalnią i czekali. Tyle wystarczy. Innym problemem jest to, że taki statystyczny kopacz mógłby na trasie dostać wpierdziel od ścierwojadów/wilków/wtf.

7
Programowanie / Sortowanie bąbelkowe
« dnia: 2012-02-09, 17:26 »
To może być zgubne. Co z polskimi znakami?



Jak widać - w pierwszych 127 pozycjach nie ma polskich znaków, jest za to typowy alfabet łaciński. Wniosek z tego prosty: każdy polski krzaczek będzie miał większą wartość niż jakakolwiek standardowa litera alfabetu łacińskiego.

Mogą być więc anomalie jeśli nie zamierzamy ograniczać się do tego alfabetu, ale sam sposób jest mniej/więcej dobry.

8
Offtopic / Hacker Seba
« dnia: 2012-02-08, 21:50 »
Cytuj
A i jeszcze dodam. Za jakis czas tego forum nie bedzie. Trzeba oczyscic go z gowna.

Ja miałem fajną sytuacje.
Wchodzę sobie na forum z laptopa firmowego, czytam ten temat, a tu zamiast normalnych obrazków pojawiły mi się na TM zdjęcia porno.
Przykładowo w profilu Iskry zamiast grafiki nagród, pojawiały się zdjęcia panienki robiącej loda murzynowi x 4, a zamiast " ---> :facepalm:  " zdjęcie jakiś lesbijek.
Już kurwa myślę, że wreszcie forum idzie w dobrym kierunku, jednak po usunięciu ciasteczek wszystko niestety wróciło do normy :/

Nie, to tylko twój współpracownik pożyczył (podjebał?) laptopa i przeglądając strony porno złapał rootkita.

9
Skrypty / duże obciążenie silnika
« dnia: 2012-02-08, 18:43 »
Właśnie bezmyślnie skopiowałeś własny skrypt 20 razy, nawet nie wiem w jakim celu.

10
Skrypty / duże obciążenie silnika
« dnia: 2012-02-08, 17:44 »
Co to ma związanego z Ikarusem w ogóle? To, że niektórzy są debilami i nie myślą logicznie to już nie mój problem.

11
Skrypty / duże obciążenie silnika
« dnia: 2012-02-08, 16:39 »
Cytuj
Korzystasz z Ikarusa, po kiego wafla robisz 20 zmiennych i szlaczek? Użyj tablic/list/wtf.

Nie chciałeś 20 linijkowego szlaczka masz 180 linijek szlaczka na pewno to lepsze rozwiązanie ;p

p.s. Nie korzystam dużo z ikarusa.

Gdzie w tym szlaczku jest użycie list, które rekomendowałem? Ehm?

12
Narzędzia / gtools
« dnia: 2012-02-07, 20:14 »
Staram się nie powodować konfliktów z niczym, dodatkowe ficzery będą implementowane z czasem. Obecnie z czasem u mnie krucho, mam czas pracować tylko weekendami (i to nie zawsze), najnowsza wersja może się więc subtelnie opóźnić :|

13
Skrypty / duże obciążenie silnika
« dnia: 2012-02-07, 18:20 »
1) na początek rozdziel to

       if (zatruty20.aivar[49] > 0 )
        && (licznik_trucia == 8)
        && (zatruty20.attribute[atr_hitpoints] > 10)

na

       if (zatruty20.aivar[49] > 0 ){
        if (licznik_trucia == 8){
        if (zatruty20.attribute[atr_hitpoints] > 10)

(...) W pierwszym skrypcie ZAWSZE sprawdzało 3 warunki na raz. (...)

Do stwierdzenia, że koniunkcja jest fałszywa wystarczy znaleźć jedno fałszywe zdanie logiczne, które się na nią składa. Sprawdziłeś co robi parser zanim to napisałeś?

Cytuj
3) aaaa mam przyczyne ;d  
if (true)
{  Wld_SendTrigger("TICK_TOCK");   };

(...) Te śmieszne coś powoduje wywoływanie skrypty zaraz po jego skończeniu. (...)

Udowodnij jaki związek ma wpierdalanie zawsze spełniającego się warunku przed `Wld_SendTrigger` ze zmianą działania samego `Wld_SendTrigger`. Póki co nie widzę krzty logiki, ani w tym zapisie, ani w Twoim myśleniu.

Nie męcz się, po prostu wywal ten najbardziej kosztowny fragment który jak na ironię nawet nic nie robi:
//////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////koniec///////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////
if(PerFrameCallTrigger_Init)
{
var int ptr;
ptr = MEM_SearchVobByName ("TICK_TOCK"); //TICK_TOCK to nazwa twojego tick_tocka
MEM_AssignInst (trigger, ptr);
PerFrameCallTrigger_Init=FALSE;
};
///////////////////////////////////////////////////////////////////////////////////////////

Chciałeś zrobić triggera klatkowego, ale ten fragment który miał być POZA ticktockiem (np w startupie) wstawiłeś DO niego, a tego który miał być w nim... nie wstawiłeś nigdzie. (PS: właściwie to nigdy nie korzystałem tak naprawdę z Ikarusa, mam tylko teoretyczną wiedzę - jednak szansa że się mylę jest tutaj raczej niewielka).

Jeśli nadal wydajność będzie za mała, przeczytaj mój poprzedni post. Ale na razie rzuć wszystkie skomplikowane przeróbki i spróbuj wywalić tylko to co tu napisałem.

Tu się zgodzę, lookupowanie całego świata w poszukiwaniu VOBa za pomocą stringa MUSI boleć. Prawdopodobnie najciężej strawny kawałek funkcji. (dopisano) Tylko zaraz... Przecież ta inicjalizacja i tak powinna wykonać się tylko raz, @see:
PerFrameCallTrigger_Init=FALSE;
Cytuj
                       trucie(zatruty1);
                        trucie(zatruty2);
                        trucie(zatruty3);
                        trucie(zatruty4);
                        trucie(zatruty5);
                        trucie(zatruty6);
                        trucie(zatruty7);
                        trucie(zatruty8);
                        trucie(zatruty9);
                        trucie(zatruty10);
                        trucie(zatruty11);
                        trucie(zatruty12);
                        trucie(zatruty13);
                        trucie(zatruty14);
                        trucie(zatruty15);
                        trucie(zatruty16);
                        trucie(zatruty17);
                        trucie(zatruty18);
                        trucie(zatruty19);
                        trucie(zatruty20);

:facepalm:  Korzystasz z Ikarusa, po kiego wafla robisz 20 zmiennych i szlaczek? Użyj tablic/list/wtf.

14
Skrypty / duże obciążenie silnika
« dnia: 2012-02-07, 16:29 »
Faktycznie, twoje zamulające skrypty są tak cenne... Kto będzie chciał i tak zdekompiluje moda i je wyciągnie, jest sens się tak bawić?

15
Offtopic / Hacker Seba
« dnia: 2012-02-06, 23:13 »
Aaaach ale moc!!!

Zanurzyłeś się we własnej urynie? :lol:

16
Multiplayer / Gothic Multiplayer
« dnia: 2012-02-06, 20:35 »
I przez tyle czasu nikt nie jest w stanie opanować sytuacji? Nie macie kopii zapasowych? Zapewne też nikt ani razu nie ruszył dupy żeby zaktualizować forum? Aplikujcie do instytucji rządowych, na adminów nadajecie się wręcz idealnie. :facepalm:

[dopisano]
Oczywiście skejt23 (członek teamu GMP) aktywnie śledzi wątek i ma was w dupie, screen dla upamiętnienia:



To tak na potwierdzenie mojej teorii, że gimbusy zwinęły dupę w troki jak tylko pojawiły się problemy z serwerem, których nie są w stanie rozwiązać, a idiotyczny plan przerabiania networkingu dał dupy.

17
Offtopic / Hacker Seba
« dnia: 2012-02-06, 20:24 »
Nie wiem czy  :facepalm:   czy  :lol2:  
W każdym razie każdy sobie może napisać że jest hakerem jak się wkurzy na jakieś forum
A propsy wiesz po co, Seba? Żeby dostawali je ludzie którzy są całkowitym przeciwieństwem ciebie w, na przykład, ilorazie inteligencji

Dla liczby 100 przeciwieństwem jest -100. IQ liczymy ze wzoru (wiek umysłowy * 100 / wiek życia). Fakt, czasami patrząc na Ciebie odnoszę wrażenie, że istnieją ludzie posiadający wiek umysłowy z czasów jeszcze przed poczęciem.

18
Offtopic / Pulpity
« dnia: 2012-02-05, 12:47 »
Launchy jest fajniejsze - automatycznie skanuje sprecyzowane katalogi w poszukiwaniu skrótów/programów/wtf, odpalasz sobie ustalonym skrótem klawiszowym, wklepujesz kawałek nazwy i wciskasz enter. Zbawienie w systemach starszych od Win7.

19
Multiplayer / Gothic multiplayer
« dnia: 2012-02-05, 02:48 »
Z ciekawości dorwałem binarkę serwera GMP na jakimś chomiku. Binarka, lista funkcji i dwa zdisasemblowane cuda:
http://monk.4programmers.net/pub/research/.gothic/gmpserver.zip
Nie wgłębiałem się w szczegóły. Wystarczy zajrzeć do tego, żeby pierdolnąć soczystego facepalma, a że namiętnie używa funkcji z biblioteki standardowej i importów z HawkNLa to kod powinien być zrozumiały dla większości. Użyto najpopularniejszego wśród gimbusów wzorca projektowego, więc programowania jednofunkcyjnego. Sztuka ta polega na otwarciu edytora, najebaniu kodu gdzie popadnie i skompilowaniu tak powstałej w bólach aplikacji.

Cała inicjalizacja sieci, odczyt konfiguracji i obsługa konsoli została sprytnie upakowana do int main(). Na każdego gracza przypada osobny wątek serwera, który w trybie blokującym oczekuje na pakiety od danego osobnika. I tu do akcji wkracza procedura roboczo nazwana _procHandleClient(), która prezentuje się niczym kret z kijem od miotły wsadzonym w dupę. Funkcja ta waży 12KB kodu maszynowego(!), co daje przynajmniej 2 razy tyle kodu. Dla wizualizacji: to tyle, ile by zajmował wyraz "kretyn" napisany około 4100 razy. Odpowiada za odbieranie i odpowiadanie na "pakiety" gracza. Całą komunikację realizuje ta jedna funkcja zawierająca gigantyczny switch. Jeśli dobrze widzę, to użytkownik nie otrzyma *ŻADNYCH* danych od serwera zanim o nie nie poprosi - to mogła być przyczyna zjebanej synchronizacji na płaszczyźnie klient<>serwer, a głupie tłumaczenia teamu GMP i portowanie aplikacji nowy silnik sieciowy (bezcelowo, żaden bajer im nie uratuje tyłka, jeśli go poprawnie nie użyją) po prostu aktem nieporadności.

Oprócz wymienionego wyżej burdelu zauważyłem ledwo trzy małe funkcje (możliwe że jeszcze jakieś niezbyt istotne pominąłem) - ładowanie banów, zapisywanie banów i pobieranie informacji z serwera lobby.gothic-multiplayer.com. Cała reszta to czysta klepanka. Istną plakietką "Polacy tu byli" są bezbłędnie przetłumaczone na angielski komunikaty:
Cytuj
Banned person tryied to join server!
Banned person tryied to join server!
%d joined to battle! Now we have %d players.
Timeout. ID:%d aka %s disconnected. %d players has been in server now.
Someone check our number of players.

Przy takim wyglądzie sprawy ciężko żeby serwer nie był podatny na cheaty, skoro ślepo wierzy informacjom podawanym przez graczy, tym samym brakuje synchronizacji poszczególnych graczy, a teoretycznie martwy gracz (tak jak to gdzieś w komentarzach czytałem) może biegać po mapie i zabijać wszystkich bez konsekwencji - serwer łyknie każdy kit.

Post pisany na szybko, sporo detali brakuje, mam nadzieję, że ogólny kształt tego burdelu został wyraźnie ukazany. Jakieś oficjalne stanowisko teamu GMP aka "wyjebaliśmy własną stronę i udajemy głuchych"?

20
Programowanie / Programowanie.
« dnia: 2012-02-04, 23:09 »
ICC? pierwsze słyszę... proszę mnie oświecić jeśli jestem ignorantem.
beznadzieja w toolchainie? z toolchaina GCC są ważne tylko kompilatory, linker i debugger - reszta może być uzupełniona przez tak zwane build systems jako zewnętrzny program.
jeśli chodzi o g++ (kompilator GCC dla C++) to nigdy nie widziałem czemu miałby "ssać" poza zgłaszaniem błędów dla szablonów (template) klas - ale to trudno dobrze zaimplementować ze względu na specyfikę języka C++. Może chodzi ci o to że brakuje kompilatorów dla jakichś języków - jeśli tak to których tak bardzo ci brakuje?

I ponownie odsyłam do wątku: http://forum.4programmers.net/Flame/184888-dlaczego_uzywasz_linuksa_na_desktopie?p=774271#id774271
Powody dyskusji linuksowych devów nad GCC /\
Nowe GCC akurat się nieco podciągnęło, ale w porównaniu do konkurencji naprawdę nie wypada tak mocno jak powinien...

Strony: [1] 2 3 ... 9
Do góry