Автор Тема: Создание класса в Plugin-SDK  (Прочитано 2393 раз)

Оффлайн DK

  • Новичок
  • **
  • Сообщений: 234
  • Репутация: +328/-0
    • dk22pac
    • Просмотр профиля
Создание класса в Plugin-SDK
« : Октябрь 23, 2016, 07:21:39 pm »
Plugin-SDK - открытый проект, внести свой вклад в проект может каждый.
Однако, для того, чтобы вносить изменения надо обладать кое-какими навыками.

Обсуждать, как загружать свой коммит в репозиторий мы здесь не будем - по этому уже есть статья на нашей вики.

Поговорим о том, как добавить класс игры (т.е. класс, который существует в коде GTA) в Plugin-SDK.
Весь процесс "добавления" можно представить такими этапами:
1. Собираем информацию о классе (структуры, переменные и функции) и разбираем его в IDA.
2. При помощи утилиты sdk_funcs_gen, генерируем код объявлений и определений функций.
3. Создаём файлы в sdk (хедеры, исходники) и заполняем их.
Самым сложным является первый этап.

Что нам нужно:
1. База данных. Для VC - я использую базу, основанную на базе maxorator'а.
2. База Android для VC.
3. Утилита sdk_funcs_gen. Получить её можно в ЛС.

Для примера мы возьмем класс CGeneral.

Как я уже говорил, использовать будем базу, основанную на базе maxorator'а. Плюсы этой базы - в ней проименованы почти все функции. Минусы - мало проименованых переменных и мало структур.
То, что в этой базе уже есть разобранные функции, немного упрощает нам задачу. Но нужно быть внимательным - я находил в этой базе ошибки.

https://www.youtube.com/watch?v=90qA3yDZSRs

При просмотре включить субтитры.
« Последнее редактирование: Октябрь 23, 2016, 07:41:40 pm от DK »
Plugin-SDK https://github.com/DK22Pac/plugin-sdk

Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Оффлайн Shagg_E

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 705
  • Репутация: +24/-4
  • Изобретательный Рукожопъ
    • Просмотр профиля
    • NewRockstar
Re: Создание класса в Plugin-SDK
« Ответ #1 : Октябрь 23, 2016, 10:57:09 pm »
Круто, я думаю пора уже и спецтему на форуме сделать, куда вынести всё по Plugin SDK. Т.е., сгруппировать все линки на соответствующую тематику. Типа этой темы.