Okna.  Wirusy.  Laptopy.  Internet.  Biuro.  Narzędzia.  Kierowcy

Od razu ostrzegam, że będzie ciężko, ale nie wszystko jest tak straszne, jak się wydaje.
Napiszmy prostą wtyczkę, której funkcją będzie: po naciśnięciu klawisza dajemy naszemu graczowi kupę dolarów na bogate i szczęśliwe życie!
Ten artykuł jest przeznaczony dla początkujących; będzie bezużyteczny dla doświadczonych programistów.

Przejdź do rzeczy! Aby rozpocząć, pobierz IDE i w prostych słowach- program, w którym programiści dokonują cudów. Wybrałem darmowy i dość wygodny, a co najważniejsze prosty - Dev C++ 5.11.
Możesz go pobrać
Możesz wybrać cokolwiek, na przykład Code Blocks, lub Visual Studio C++, to kwestia gustu, ja polecam Code Blocks.

Ostrzegam Cię z góry, jeśli nie możesz zainstalować ten program lub pobierz, nie powinieneś dalej czytać tego artykułu.

Uruchamiamy program, klikamy w menu - utwórz ---> projekt i wybieramy DLL.

Zapisujemy nasz projekt w dowolnym, wcześniej utworzonym folderze pod nazwą AsiPlugin.
Kod źródłowy projektu otwiera się przed nami, niczego nie dotykamy, wystarczy teraz funkcja o nazwie DllMain.

Co to jest DllMain? Jest to funkcja, którą gra może wywołać przy uruchomieniu, dzięki czemu wszystko, co masz na myśli, zostanie wykonane w tej sekcji kodu. Do naszego małego eksperymentu będziemy potrzebować następującego fragmentu kodu:

Sprawa DLL_PROCESS_ATTACH: ( // tutaj napiszemy naszą akcję i zostanie ona wykonana. break; )

Czego potrzebujemy do doładowania konta gracza? Zgadza się, najpierw dowiedz się, kiedy nacisnęliśmy klawisz!
Dam ci szablon tej funkcji i będziesz mógł z niego skorzystać w przyszłości.

Void OnTimer(HWND hwnd, UINT msg, UINT idTimer, DWORD dwTime) ( if (GetAsyncKeyState(0x47) & 0x8000) // jeśli naciśniesz G, 0x47 jest kodem klucza ( // wtedy wykonujemy tutaj nasz kod))

Można znaleźć kody klawiatury.
Ta część kodu będzie stale powtarzana i za każdym razem sprawdzany będzie stan klawisza G.

Następnie następuje najtrudniejsza część. Potrzebujemy adresu zmiennej przechowującej kwotę pieniędzy gracza. Korzystając z tego adresu, wliczamy pieniądze do naszej zmiennej i wpisujemy nową kwotę.
Przejdź tutaj (tutaj znajdziesz główne adresy zmiennych gry)

Widzimy nasz adres: 0xB7CE50 - Pieniądze.
Jak z tego skorzystać, pytasz? Wyjaśnię!

DWORD Wiele = *(DWORD*)0xB7CE50; // zdobądź pieniądze.
*(DWORD*)0xB7CE50 = 1000000; // daj pieniądze graczowi

DWORD Wiele = *(DWORD*)0xB7CE50; // ile pieniędzy ma gracz? jeśli (wiele

Następnie musimy uruchomić timer, który wykona naszą funkcję i za każdym razem pytać: czy nacisnęliśmy klawisz?
Robi się to w ten sposób - SetTimer(0, 0, 200, (TIMERPROC)OnTimer); // 200 interwałów w milisekundach

W rezultacie otrzymujemy następujący kod:

Void OnTimer(HWND hwnd, UINT msg, UINT idTimer, DWORD dwTime) ( if (GetAsyncKeyState(0x47) & 0x8000) // jeśli nacisnąłeś G ( DWORD Many = *(DWORD*)0xB7CE50; // uzyskaj kwotę pieniędzy, jeśli (Wiele

Teraz pozostaje nam tylko skompilować nasz program i wypróbować go w grze. Chcę od razu zwrócić Twoją uwagę. Wybierz 32-bitowy kompilator w Dev C++, w przeciwnym razie nasza wtyczka nie będzie działać.
Zobacz obraz, jak to zrobić i co kliknąć, aby skompilować.

Czy poszło bez błędów? Jeśli tak, to przejdź do folderu z naszym projektem i znajdź plik DLL, które otrzymaliśmy. Zmień nazwę rozszerzenia na ASI i upuść je w folderze z grą. Ważny! Nie zapomnij zainstalować AsiLoadera lub CLEO 4.
To wszystko. Uruchom grę i naciśnij G. Czy wszystko działa? Brawo, gratulacje!
Co dalej, pytasz? Moja odpowiedź brzmi: studiuj programowanie, może zostaniesz modderskim guru, a może nawet fajniejszym.
Dla tych, którym się nie udało, dam ci wtyczkę AsiPlugin.rar i źródło projektu lekcja.rar.

Przydatne linki:
Można pobrać książki o programowaniu.
Adresy i funkcje Gta San Andreas, tam też można znaleźć bazę danych dla IDA, która zawiera wiele ciekawych rzeczy. Obawiam się, że sposób korzystania z IDA wymaga osobnego artykułu.

Dziękuję za uwagę, mam nadzieję, że artykuł przypadł Ci do gustu! Powodzenia wszystkim!
p.s: Jeśli artykuł wzbudzi zainteresowanie, to w kolejnym artykule nauczę Cię, jak korzystać z funkcji GTA i np. Spawnować samochody.

Artykuł jest przeznaczony wyłącznie dla tej witryny; kopiując materiał, musisz podać link do witryny.

Skrypty

Korzystając z CLEO, możesz dodawać do gry nowe skrypty, napisane w Sanny Builderze lub innym edytorze skryptów, bez konieczności uruchamiania nowa gra. Aby dodać taki skrypt do gry wystarczy umieścić go w folderze CLEO. Skrypt zacznie działać po uruchomieniu gry. Aby usunąć skrypt z gry, usuń odpowiedni plik.

Wszystkie skrypty zostały napisane przez fanów gry i nie mają żadnego związku z twórcami CLEO. Chociaż sama biblioteka CLEO powinna współpracować różne wersje gier, poszczególne skrypty mogą mieć własne ograniczenia i wymagania dotyczące plików gier. W przypadku pytań dotyczących wykonania konkretnego skryptu prosimy o kontakt z jego autorem.

Kody operacyjne

CLEO 4 dodaje do gry 100 nowych poleceń skryptowych, które pozwalają na pracę z plikami zewnętrznymi, zmianę danych w pamięci gry, wywoływanie funkcji gry z własnymi parametrami i wiele więcej.

W czwartej wersji pojawiły się nowe polecenia do pracy z dźwiękami, liniami oraz dodano możliwość wyświetlania tekstu na ekranie bez użycia plików zewnętrznych (.gxt, .fxt). Aby ocenić nowe osiągnięcia i wykorzystać je w swoich skryptach, zainstaluj najnowsza wersja Biblioteki CLEO 4.

Wtyczki

Wtyczki CLEO to zwykłe pliki DLL, ale z rozszerzeniem .CLEO. Po uruchomieniu biblioteka CLEO przeszukuje folder CLEO w poszukiwaniu plików z tym rozszerzeniem i próbuje je załadować. Jeśli pobranie zakończy się pomyślnie, wtyczka zacznie działać i będzie wykonywać funkcje, dla których została napisana.

CLEO 4 umożliwia tworzenie nowych kodów operacji za pomocą kody źródłowe SDK CLEO. W zestawie startowym biblioteki można znaleźć trzy przykłady takich wtyczek.

Wtyczki instaluje się i odinstalowuje podobnie jak skrypty. Listę dostępnych wtyczek znajdziesz na tej stronie.

Instalacja

CLEO 4 jest dystrybuowany jako automatyczny instalator. Aby zainstalować bibliotekę, uruchom instalator i postępuj zgodnie z jego instrukcjami.

CLEO 4.3 obsługuje trzy wersje gry GTA San Andreas: 1,0, 1,01, 3,0 (para).

CLEO wymaga instalacji programu ASI Loader, który jest dostarczany z biblioteką. ASI Loader to program, który automatycznie ładuje pliki z rozszerzeniem .asi przy uruchomieniu gry. ASI Loader zastępuje jeden z oryginalnych plików gry „vorbisFile.dll” swoim własnym, dlatego pamiętaj o utworzeniu kopii tego pliku.

Inne pliki gry nie są zastępowane, ale dodawane są następujące pliki i foldery:
- cleo\ (folder CLEO, do którego kopiowane są wszystkie skrypty i wtyczki)
- cleo\FileSystemOperations.cleo (wtyczka do pracy z plikami)
- cleo\IniFiles.cleo (wtyczka do pracy z INI)
- cleo\IntOperations.cleo (wtyczka do pracy z liczbami całkowitymi na poziomie bitowym)
- cleo\cleo_save\ (folder zapisu CLEO)
- cleo.asi (jądro biblioteki CLEO)
- bass.dll (biblioteka do pracy z dźwiękiem)
- vorbisHooked.dll (program ładujący ASI Silent)
Wszystkie wtyczki są opcjonalne, ale ich funkcjonalność może być wykorzystywana przez różne skrypty CLEO.

CLEO 4 dla San Andreas grać pliki dźwiękowe wymaga zainstalowanej biblioteki BASS.dll w wersji 2.4, którą można pobrać z oficjalnej strony Un4seen Developments Ltd.

Kompatybilny z CLEO3

CLEO z biegiem czasu stale się udoskonala i rozwija. W bardzo rzadkich przypadkach niektóre skrypty napisane dla CLEO 3 mogą nie działać z CLEO 4. Począwszy od CLEO 4.3 można włączyć specjalny tryb zgodności dla skryptów CLEO 3. Aby to zrobić, zmień rozszerzenie pliku skryptu (zwykle „.cs”). ) do „.cs3”. CLEO 4.3 będzie współpracować z takimi skryptami w specjalnym trybie, który polega na zmianie zachowania niektórych poleceń skryptu. Jednocześnie w zdecydowanej większości przypadków skrypty CLEO 3 współpracują z CLEO 4 bez żadnych problemów, a korzystanie z trybu zgodności nie jest wymagane.

O autorach

Twórcy nie są powiązani z Take 2 Interactive ani Rockstar Games i nie ponoszą żadnej odpowiedzialności za możliwe negatywne konsekwencje spowodowane użyciem tego produktu lub inne produkty dystrybuowane wraz z biblioteką. Używaj go na własne ryzyko.

Informacje o zmianach w wersji 4.3 i nowszych szczegółowy opis Możliwości CLEO można znaleźć w plikach Readme dołączonych do biblioteki.

ASI Loader - umożliwia uruchamianie skryptów asi, jest niezbędny do działania modów w GTA 5. Pamiętaj, że jeśli masz już zainstalowany, to w tym przypadku nie musisz już instalować ASI Loader, ponieważ skrypt asi jest już dołączony w haku skryptu.

Skrypt jest potrzebny tym graczom, którzy wolą używać w grze różnych modów, które dodają wiele różnych funkcji, od funkcjonalności zmiany modeli głównych bohaterów po wszelkiego rodzaju trainery.

Menedżer modów ASI

Niektórzy gracze uważają, że trzeba osobno uruchomić moduł ładujący asi, jednak tak nie jest, wystarczy zainstalować plik z rozszerzeniem .dll i wszystkie kolejne pobrane modyfikacje będą działać.

Lokalizacja Wielka kradzież Auto V stało się fikcyjnym miastem Los Santos, którego prototypem jest Los Angeles. Los Santos po raz pierwszy pojawiło się w jednej z poprzednich gier z serii – Grand Kradzież samochodu: San Andreas, wydany w 2004 roku. Oprócz samego miasta gra zawiera także okoliczne obszary wiejskie, góry, lasy, wzgórza i plaże, zwane w grze „Blaine County”. Jest też wydzielona przestrzeń do gier – fikcyjny stan North Yankton; prawdopodobnie parodia prawdziwego stanu Dakota Północna w pobliżu granicy z Kanadą. W tym stanie jest tylko jedno ponure miasto – Ludendorff. Do North Yankton nie możesz dostać się za wyjątkiem dwóch misji fabularnych, które rozgrywają się bezpośrednio w Ludendorff. Cała mapa Los Santos i okolic jest otwarta dla graczy od samego początku. W grze dostępnych jest łącznie 39 lokalizacji.

Jak zainstalować

Skopiuj plik dinput8.dll do folderu głównego GTA 5 ten plik już obecny, po prostu go wymień.



Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl+Enter
UDZIAŁ: