как сделать wh и aim

Тема в разделе "Гайды для Warface", создана пользователем Valic2001, 13 окт 2013.

  1. Оффлайн

    Valic2001 ст. сержант

    На форуме с:
    30 июн 2013
    Сообщения:
    34
    Симпатии:
    27
    Баллы:
    18
    Пол:
    Мужской
    делаем свой aim,wh
    Для начала нам понадобится:
    Логгер текстур:ь
    Direct3D StarterKit v3.0b (by Azorbix)
    Microsoft Visual

    И немного знаний: C++, D3D - _Google_

    Настройка D3D:
    Первым делом устанавливаем Microsoft Visual Studio и DirectX SDK

    Запускаем программу и идём в Tools->Options->Projects and Solutions>VC++ Directories


    Во вкладке Show directories for: Выбираем Include files и добавляем путь к нашему DirectX SD K к папке \Include

    Делаем тоже самое для Library Files (..\Lib\x86), Executable files(..\)

    Всё, теперь мы сможем откомпилить наш Direct3D StarterKit v3.0b

    Настройка Injector'а:

    В main.cpp нужно изменить только 1 строчку:
    Код:

    Код: выделить все
    #define APP_EXE "target_application.exe"


    Где target_application.exe прописываем название вашей игры

    Например:

    xrEngine.exe, crossfire.exe, pointblank.exe.

    Важно!

    Название .dll файла и инжектора должны быть одинаковыми.

    Как сделать обычный валлхак:
    1. Ищем текстуры которые нам нужны используя логгер текстур.

    2. Прописываем их в нашем Direct3D StarterKit v3.0b в d3d9dev.cpp в начале файла


    Пример:
    Код:

    Код: выделить все
    #define MyWallhack ((NumVertices == xx && primCount == xx) || (NumVertices == xx && primCount == xx))

    bool bWallHack = false;



    3. Теперь идём в DrawIndexedPrimitive

    и добавляем:
    Код:

    Код: выделить все
    if (bWallHack)
    {
    if (MyWallhack)
    {
    DWORD dwOldZEnable;
    m_pD3Ddev->GetRenderState(D3DRS_ZENABLE,&dwOldZEnable);
    m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,D3DZB_FALSE);
    m_pD3Ddev->DrawIndexedPrimitive(Type,BaseVertexIndex,MinVe rt exIndex,NumVertices,startIndex,primCount);
    m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,dwOldZEnable);
    }
    }



    4. Идём в EndScene и ставим валлхак на кнопку включить\выключить:
    Код:

    Код: выделить все
    if(GetAsyncKeyState( VK_NUMPAD1 ) &1 )
    bWallHack = !bWallHack;



    5. Компилим, инжектим, заходим в игру жмём NUMPAD 1 и видим результат.

    Как убрать стены в игре:

    Тут всё ещё проще.

    С верху файла добавляем:
    Код:

    Код: выделить все
    bool bFog = false;



    Идём в DrawIndexedPrimitive и добавляем такую строчку:
    Код:

    Код: выделить все
    if(bFog)
    {
    m_pD3Ddev->SetRenderState( D3DRS_FOGENABLE , false );
    }



    Теперь в EndScene
    Код:

    Код: выделить все
    if(GetAsyncKeyState( VK_NUMPAD2 ) &1 )
    bFog = !bFog;



    Всё готово! При нажатии в игре на кнопку NUMPAD2, опция будет включатся и выключатся.

    credits: _www.aden-territory.com and qwe

    Теперь собственно то, что нужно сделать, что бы Wallhack работал желаемым образом:
    В самом начале кода d3d9dev.cpp вставляем:
    Код:

    Код: выделить все
    unsigned int m_Stride;



    Далее, идем в SetStreamSource и прописываем там перед return m_pD3Ddev->SetStreamSource:
    Код:

    Код: выделить все
    if(StreamNumber==0) m_Stride=Stride;



    Теперь вместо строчки вначале кода #define MyWallhack ((NumVertices == xx && primCount == xx) || (NumVertices == xx && primCount == xx)) вставляем строчку:
    Код:

    Код: выделить все
    #define MyWallhack ((m_Stride == 28))



    Вот и всё! Вы будете видеть других игроков сквозь стены!
    Теперь о том, как сделать из Wallhack'a Chams:
    В начале d3d9dev.cpp прописываем:
    Код:

    Код: выделить все
    int a=1;


    __________________________________________________ __________________________________________________ __
    Далее после всех bool'ов вставляем этот код:
    Код:

    Код: выделить все
    LPDIRECT3DTEXTURE9 Pink;
    const BYTE bPink[58] =
    {
    0x42, 0x4D, 0x3A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x80, 0x00, 0xFF, 0x00
    };
    LPDIRECT3DTEXTURE9 Blue;
    const BYTE bBlue[60] =
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0xFF, 0x00, 0x00, 0x00, 0x00, 0x00
    };


    __________________________________________________ __________________________________________________ __
    Можно использовать и другие цвета, на ваш вкус, байты которых можно найти в гугле, ну или вот:
    [namespoiler=Цвета]const D3DCOLOR txtRed = D3DCOLOR_ARGB(255, 255, 0, 0);
    const D3DCOLOR txtYellow = D3DCOLOR_ARGB(255, 255, 255, 0);
    const D3DCOLOR txtGreen = D3DCOLOR_ARGB(255, 0, 255, 0);
    const D3DCOLOR txtBlue = D3DCOLOR_ARGB(255, 0, 0, 255);
    __________________________________________________ __________________________________________________ __
    const BYTE bBlue[60] = //Blue
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0xFF, 0x00, 0x00, 0x00, 0x00, 0x00
    };

    const BYTE bBlack[60] = //Black
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0xFF
    };

    const BYTE bRed[60] = //red
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0xFF, 0x00, 0x00, 0x00
    };

    const BYTE bYellow[60] = //yellow
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
    };

    const BYTE bGreen[60] = //green
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x20, 0xA0, 0x00, 0x00, 0xFF, 0xFF
    };

    const BYTE bPink[58] = //pink
    {
    0x42, 0x4D, 0x3A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x80, 0x00, 0xFF, 0x00
    };


    const BYTE bTur[60] = //turquoise
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00
    };

    const BYTE bOrange[60] = //orange
    {
    0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x10, 0x80, 0xF0, 0xB0, 0x00, 0x00
    };


    const BYTE bWhite[58] = //White
    {
    0x42, 0x4D, 0x3A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0xFF, 0xFF, 0xFF, 0x00
    };

    const BYTE bGrenade[58] = // Pink
    {
    0x42, 0x4D, 0x3A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
    0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
    0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0x80, 0x00, 0xFF, 0x00
    };[/namespoiler]
    __________________________________________________ __________________________________________________ __
    Идём в BeginScene() и вставляем такие строки перед return m_pD3Ddev->BeginScene(); :
    Код:

    Код: выделить все
    if (a==1)
    {
    D3DXCreateTextureFromFileInMemory(m_pD3Ddev,(LPCVO ID)&bPink,58,&Pink);
    D3DXCreateTextureFromFileInMemory(m_pD3Ddev,(LPCVO ID)&bBlue,60,&Blue);
    a=0;
    }



    Теперь идем в DrawIndexedPrimitive, к нашему волхаку и после строчки m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,D3DZB_FALSE); вставляем такую:
    Код:

    Код: выделить все
    m_pD3Ddev->SetTexture(0,Pink);



    А после m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,dwOldZEnable2); такую:
    Код:

    Код: выделить все
    m_pD3Ddev->SetTexture(0,Blue);



    Вот собственно и всё! Chams готов! xrEngine.exe dll - это либа, которая компилится из D3D (TatniumD3D.vcproj) Инжектор - это прога, которая инжектит либу в игру(main.cpp/TatniumInjector.vcproj) В общем у вас должно быть откомпилино: 1 либа, которую называешь TatniumD3D.dll и 1 екзешник, который обзываешь TatniumD3D.exe, ложешь их рядом(в одну папку пофиг куда) и запускаешь TatniumD3D.exe, нажимаешь ОК, запускаешь игру, нажимаешь 1 на дополнительной(цифровой) клавиатуре, только не забудь включить NumLock.
    __________________________________________________ __________________________________________________ __
    I
    I
    I
    I
    V
    2)Запускаем только с Обходом!!!!!!После создания!!!!
    __________________________________________________ __________________________________________________ __
    Ниже я напишу программы, которые вам понадобятся для того что бы создать свой вх для crossfire, в основном это визуальные редакторы и с вычислительными базами.

    Microsoft Visual C++ 6.0, MS DirectX SDK 9.0 (Summer 2004) и D3D framework per D3D8 e D3D9 (Hans' s base)
    __________________________________________________ __________________________________________________ __
    Подготовка к началу создание чита для crossfire:
    Первым делом необходимо установить программы, такие как Microsoft Visual C++ 6.0 и MS DirectX SDK 9.0
    Затем открыть Microsoft Visual C++ 6.0
    Создадим новый проект для DLL, выбрав "Fle > ew > Data Projets > Win32 Dynamic-Link Librry > Ok".
    Потом даете название своему проекту, например , я назову его M2 D3D Hack.
    Отроеться новое где нужно будет выбрать "An empty DLL project" и нажать на кнопку "Finish".

    И вот теперь мы будем производить импорт файлов в наш проект, сделаем это перейдя к базе: Hans' s base "Project> Add to Project> Files" , найти папку Hans' s base и установить следующие файлы последовательно, один за другим:

    D3dbase.h
    D3dbase.cpp
    D3dmenu.h
    D3dmenu.cpp
    Hackbase.cpp


    Важно: Не импортировать файлы типа "d3dfont .*"

    Теперь будет важная фаза создания чит для crossfire, а именно импорт MS DirectX SDK 9.0:
    1)Переходим к импорту файлов и библиотек, мы должны работать в D3D.
    2)Перейдите в раздел "Tools> Options> Directories tab". Ебедитесь, что установлен параметр "Show directories for" there is "Include Files"
    3)Добавьте новую строчку в папке "includes", которая содержится в scrtella, как раз на котором установлено SDK
    4)В моем случае, директория размещения файла будет такой : "E: \ Program Files\ Microsoft DirectX 9.0 SDK (Summer 2004) \ INCLUDE"
    5)Теперь в "Show directories for" выберите "Library Files" и вместо папки "includes" Добавить папку "LIB",
    6)В моем случае это будет: "E: \ Program Files \ Microsoft DirectX 9.0 SDK (Summer 2004) \ Lib"
    __________________________________________________ __________________________________________________ __
    Настройка базы для D3D8 и D3D9, настройка баз чита для crossfire:

    Теперь в зависимости от игры будем выбирать между D3D9 и D3D8 , например как в моем случае я использую D3D8 и редактирую файл d3dbase.h:

    Код: выделить все
    C++ Code: Line
    Numbers: ON/OFF - Expand: ON/OFF

    //#define FOR_D3D8
    #define FOR_D3D9



    И заменить его на:

    Код: выделить все
    Line Numbers: ON/OFF - Expand: ON/OFF

    #define FOR_D3D8
    //#define FOR_D3D9



    Теперь заготовка нашего чит для CrossFire готова. Вы должны проверить, сделано ли все правильно, для этого нажмите F7, если не будет ошибок - то все сделано правильно, можно продолжить создавать свой чит для crossfire дальше.


    Задание функций для чита для crossfire. Создание функций для нашего hack:

    Нам предстоит создать функции для каждого отдельного раздела hacks, вы же хотите сделать рабочий чит для crossfire? В качестве примера я создам функцию, которая при изменении скорости игры (speedhack для crossfire). будет указывать 0x5F29BC (old) соответственно после перехода 0x10 и 0x5B6 в шестнадцатеричный код.

    Первым шагом будет являться определение различных баз Address / Offsets (do this in just under the include "hackbase.cpp"):

    Код: выделить все
    C++ Code: Line Numbers: ON/OFF - Expand: ON/OFF

    #define Base_Pointer 0x5F29BC
    #define Ofs_MovSpeed_1 0x10
    #define Ofs_MovSpeed_2 0x5B6



    Теперь мы можем просто создать функцию что бы изменить скорость передвижения в игре, speedhack для crossfire (still in "hackbase.cpp"):

    Код: выделить все
    C++ Code: Line Numbers: ON/OFF - Expand: ON/OFF

    void MovSpeed(speedVal)
    {
    DWORD Addy1 = *(DWORD*)Base_Pointer; //I read the value of the base pointer
    DWORD Addy1 = *(DWORD*)(addy1+Ofs_MovSpeed_1) + Ofs_MovSpeed_2; //I read the value of the value of base pointer + the first offset addy + the second offset
    *(DWORD*)Addy1 = speedVal; //Change the address of the speed with the value "speedVal" which will be defined by using the function
    }



    Нам необходимо создать несколько вариантов для выбора скоростей, например, мы делаем так, что бы была возможность выбора скорости от 1 до 4 с диапазоном "0,5". Необходимо добавить переменную, следовательно которая будет позволяет нам выбирать "Чит для crossfire должен быть включен по умолчанию или нет."

    Код: выделить все
    C++ Code: Line Numbers: ON/OFF - Expand: ON/OFF

    char *opt_MovSpeed[] = { "Off", "0,0", "1,0", "1,5", "2,0", "2,5", "3,0", "3,5", "4,0" };
    int CH_MovSpeed = 0;



    "E:\Program Files\MICROSOFT DIRECTX 9.0 SDK (SUMMER 2004)\INCLUDE"

    В случаем который вы видите сейчас "CH_Movspeed = 0" , то есть когда вы поставите вашу скорость на это значение то сама скорость движения будет установлена ​​в положение OFF, то есть выключенна. Если бы я хотел установить его в 2,5 я поставил : "CH_Movspeed = 5", потому что если "Off" в положение "0" из списка, 2,5 в пятое место.

    Теперь будем добавлять функции для взлома crossfire, а если быть точнее делать нам чит для crossfire .

    Создание D3D меню:

    Добавим в наш hack меню, зададим новую линию с названием функции, вот так:

    Код: выделить все
    C++ Code: Line Numbers: ON/OFF - Expand: ON/OFF

    pMenu->AddItem("Mov Speed" , &CH_MovSpeed , opt_MovSpeed, 9);



    Где "Mov Speed" является текст, который появляется в меню, CH_MovSpeed ​​это переменная, составленная ранее и в состоянии hack (enabled, disabled, etc.), opt_MovSpeed ​​доступны 9 вариантов.

    Теперь мы адаптируем функции для нашего чита crossfire выше созданного варианта:

    Код: выделить все
    C++ Code: Line Numbers: ON/OFF - Expand: ON/OFF

    void MovSpeed(speedVal)
    {
    DWORD Addy1 = *(DWORD*)Base_Pointer;
    DWORD Addy1 = *(DWORD*)(addy1+Ofs_MovSpeed_1) + Ofs_MovSpeed_2;
    *(long*)Addy1 = (16226 + (speedVal * 0,5 * 60));
    }



    Разберем все по-порядку, если мы сделали hack например, "0,0", которая является номером 1 в этом варианте мы имеем: 15 256 + (1 х 0,5 х 60) = 16 256, это будет являться по умолчанию скорость для crossfire.

    Однако, если будет установлено в "2,5" это пятый вариант, то мы имеем: 15 256 + (5 х 0,5 х 60) = 16 406 и так далее ...

    И сейчас мы будем связывать наши функции и меню в единое целое, то есть как создать свой чит для crossfire вы уже знаете.
    Придадим нашей функции нужную базу, для этого мы как всегда заходим в "hackbase.cpp" и смотрим:

    Код: выделить все
    C++ Code: Line Numbers: ON/OFF - Expand: ON/OFF

    // Seperate thread for making hacks
    DWORD WINAPI HACKthread( LPVOID param )
    {
    // --- hack loop
    while (1) {
    // ..if (CH_stamina) ....
    // ..
    Sleep(50);
    }
    return 0;



    Вносим изменения в эту функцию:

    Код: выделить все
    C++ Code: Line Numbers: ON/OFF - Expand: ON/OFF

    // Seperate thread for making hacks
    DWORD WINAPI HACKthread( LPVOID param )
    {
    // --- hack loop
    while (1) {
    if (CH_MovSpeed != 0)
    {
    MovSpeed(CH_MovSpeed);
    }
    Sleep(50);
    }
    return 0;
    }


    __________________________________________________ __________________________________________________ __
    Мы закончили! Чтобы вытащим наш hack, переходим "Build> Сделать активным проектом Configuraton"и выберите"Win32-Release". Нажмите клавишу F7 и найдите наш DLL в папке нашего проекта.
    Если получилось ставь палец Вверх.
     
    MAMArodnaia, ²º¹³√, ne4enb и 11 другим нравится это.
  2.  
  3. Оффлайн

    рго_рф_рго

    На форуме с:
    11 авг 2013
    Сообщения:
    1.295
    Симпатии:
    638
    Баллы:
    126
    Пол:
    Мужской
    skype:
    sergo787898
  4. Оффлайн

    рго_рф_рго

    На форуме с:
    11 авг 2013
    Сообщения:
    1.295
    Симпатии:
    638
    Баллы:
    126
    Пол:
    Мужской
    skype:
    sergo787898
    всё получилось но вх кривое ((
     
  5. Оффлайн

    Valic2001 ст. сержант

    На форуме с:
    30 июн 2013
    Сообщения:
    34
    Симпатии:
    27
    Баллы:
    18
    Пол:
    Мужской
    нужны новые значение
    найдёш в интернете
    если помог спасибо
     
  6. Оффлайн

    блок М. Лейтенант

    На форуме с:
    19 июл 2012
    Сообщения:
    304
    Симпатии:
    255
    Баллы:
    69
    Пол:
    Мужской
    я сделал вх ,но aim что то не робит(
    дал чит другу но унего не открывается в чем дело?
     
  7. Оффлайн

    Дима Одинокий рядовой

    На форуме с:
    16 дек 2012
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
  8. Оффлайн

    ЛаймовыйЁжВернулся ст. рядовой

    На форуме с:
    29 авг 2013
    Сообщения:
    58
    Симпатии:
    7
    Баллы:
    3
    Пол:
    Мужской
    где достать логгер текстур
     
  9. Оффлайн

    Valic2001 ст. сержант

    На форуме с:
    30 июн 2013
    Сообщения:
    34
    Симпатии:
    27
    Баллы:
    18
    Пол:
    Мужской
    иы делаеш приват
     
  10. Оффлайн

    Саша Алаулов ст. рядовой

    На форуме с:
    17 июл 2013
    Сообщения:
    38
    Симпатии:
    4
    Баллы:
    3
    спосибо всё роботает h>d
     
  11. Оффлайн

    блок М. Лейтенант

    На форуме с:
    19 июл 2012
    Сообщения:
    304
    Симпатии:
    255
    Баллы:
    69
    Пол:
    Мужской
    да
     

Поделиться этой страницей

Уважаемый пользователь!

Мы обнаружили, что вы блокируете показ рекламы на нашем сайте.

Просим внести его в список исключения или отключить AdBlock.

Наши материалы предоставляются БЕСПЛАТНО и единственным доходом является реклама.

Спасибо за понимание!