You are not logged in.
После потери своих же исходников для CLEO III, желания писать "по новой" совсем не было... Но вчера что-то перевернулось.
Т.е. новая версия клео всё же будет?
Offline
Наверное.
Написал новую читалку для FXT, добавил такую опцию
MYTEXT \$ << Spaces here
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
круто, продолжай.
Offline
После потери своих же исходников для CLEO III, желания писать "по новой" совсем не было... Но вчера что-то перевернулось
Это хорошо, что перевернулось. Я в это время собираю справочною информацю GTA 3 для оф. справки СБ. Пока информации мало, но думаю скоро там будет новый раздел
Last edited by wmysterio (15-02-2015 19:25)
Offline
Да, я уже почти закончил с версией для III. Осталось только сделать опкоды поиска.
Кстати, интересный факт - в CLEO для VC, хоть он и вышел раньше, используется расширенная таблица для кастомных опкодов (почему это же не было сделано в III - не понятно).
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
Да, я уже почти закончил с версией для III. Осталось только сделать опкоды поиска.
Это хорошо! Опкоды для работы с ini файлами и опкоды для работы с внешними звуковыми файлами будут?
Список новых опкодов можно посмотреть?
Огласите весь список пожалуйста.
Offline
Это хорошо! Опкоды для работы с ini файлами и опкоды для работы с внешними звуковыми файлами будут?
Список новых опкодов можно посмотреть?
Огласите весь список пожалуйста.
Я решил немного помочь с разработкой, на данный момент новый опкод у DK только один был сделан, START_CUSTOM_THREAD_VSTRING. Для VC хочу восстановить 016F и 0349, плюс добавить несколько новых в обе версии.
Offline
Хорошо бы по-возможности добавить опкоды для работы с ini файлами, внешними звуковыми файлами, битами, компонентами моделей (особо интересует поиск компонента по его названию).
Offline
Я уже добавил некоторые из опкодов из клео4, в том числе для работы с ini, звук пока не обещаю, битовые операции тоже есть. Все оригинальные опкоды были продублированы с номерами клео4 (05EE: - 0AB0:), добавленные опкоды клео4 соответственно с теми же номерами.
Всё это пока для вайса, но перенести будет не долго.
Про компоненты, если есть scm функции, которые хотелось бы превратить в опкод, просьба выложить здесь.
Offline
Ну если есть желание, могу выложить что-нибудь для тестирования.
Last edited by Sergey81 (17-05-2015 12:55)
Offline
Если собрались менять номера опкодов, то надо подумать об обратной совместимости для старых скриптов. Я бы предложил сделать отдельным плагином режим, который будет редиректить все вызовы со старых опкодов на новые (05EE: - 0AB0:). Потом по мере обновления скриптов, этот плагин можно будет удалить и использовать новые номера.
Offline
Нет, номера я не меняю, все опкоды, которые были в оригинальной версии они так и остались. В добавку к этому они дублируются с номерами опкодов из CLEO4.
Единственное, что я пока не уверен как будет, это несколько новых опкодов:
0x0600, START_CUSTOM_THREAD_VSTRING 0x0601, IS_BUTTON_PRESSED_ON_PAD 0x0602, EMULATE_BUTTON_PRESS_ON_PAD 0x0603, IS_CAMERA_IN_WIDESCREEN_MODE 0x0604, GET_MODEL_ID_FROM_WEAPON_ID 0x0605, GET_WEAPON_ID_FROM_MODEL_ID 0x0606, SET_MEM_OFFSET 0x0607, GET_CURRENT_WEATHER 0x0608, SHOW_TEXT_POSITION 0x0609, SHOW_FORMATTED_TEXT_POSITION
IS_CAMERA_IN_WIDESCREEN_MODE есть в SA, GET_CURRENT_WEATHER/SHOW_TEXT_POSITION/SHOW_FORMATTED_TEXT_POSITION были в new opcodes для SA, остальных не было нигде. Поэтому не уверен какие номера им тут поставить. Наверно лучше сделать номера больше, чем номер последнего опкода клео 4, на случай если они появятся в клео 4, чтобы не было путаницы потом.
Last edited by Sergey81 (17-05-2015 13:35)
Offline
Я думаю, нумерация новых опкодов в данном случае не так важна. Однажды мы придем к полному отказу от опкодов и переходу на кейворды/классы. Полного соответствия по номерам опкодов между разными версиями библиотек будет сложно добиться. Гораздо логичнее будет если в рамках одной игры все опкоды добавляются последовательно, без "дыр" в нумерации.
Offline
Гораздо логичнее будет если в рамках одной игры все опкоды добавляются последовательно, без "дыр" в нумерации.
Ну не знаю, как по мне так опкод с определенным номером должен делать одно и то же во всех играх(как и большинство стандартных опкодов).
Offline
Про компоненты, если есть scm функции, которые хотелось бы превратить в опкод, просьба выложить здесь.
Из того. что я проверил в скриптах:
gta3 1.0 (gta3 1.1) 0x52E660 (0x52E8A0) // IsComponentPresent 0x545930 (0x545B30) // GetDoorStatus 0x52EF90 (0x52F1D0) // IsDoorFullyOpen 0x52E750 (0x52E990) // CAutomobile__OpenDoor 0x5458E0 // GetComponentStatus 0x4B9160 (0x4B9250) // CMatrix_SetRotateXOnly 0x4B91F0 (0x4B92E0) // CMatrix_SetRotateYOnly vc 1.0 (vc 1.1) 0x59D1D0 (0x59D1F0) // IsComponentPresent 0x5A9810 (0x5A9830) // GetDoorStatus 0x59C890 (0x59C8B0) // IsDoorFullyOpen 0x59CF50 (0x59CF70) // CAutomobile__OpenDoor 0x645280 (0x6452D0) // RwFrameRotate 0x4DF620 (0x4DF640) // CMatrix_SetRotateXOnly 0x4DF590 // CMatrix_SetRotateZOnly 0x4DF6B0 (0x4DF6D0) // CMatrix__setPos (Z Y X) 0x644AD0 // RwFrameDestroy 0x5A9850 // GetComponentStatus 0x4DF240 (0x4DF260) // CPlacable__setRotation
Хорошо бы ещё оформить в опкоды вот это
Offline
Было бы неплохо иметь какой-нибудь простенький пример скрипта для этих опкодов, чтобы сразу проверить работает или нет. Я имею в виду пример с scm функцией, а потом я её заменю на опкод и проверю работоспособность. Сам бы написал, но скоро сессия и пока не до этого.
Offline
Было бы неплохо иметь какой-нибудь простенький пример скрипта для этих опкодов, чтобы сразу проверить работает или нет. Я имею в виду пример с scm функцией
Вот несколько примеров:
http://rghost.ru/8qJhwQVns
Last edited by kenking (18-05-2015 14:34)
Offline
Offline
Offline
Для текстур и текста надо делать свой рендерер, а стандартный выкинуть куда подальше. Иначе делать CLEO вообще нет смысла.
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
Ну почему, для меня того факта что можно под три игры писать одним набором опкодов и то, что игра не вылетает при загрузке сейва/новой игры каждый раз уже достаточно.
Offline
Нет, ты не так понял.
Я имел ввиду, что лучше вообще не делать ничего связанного с рисованием, чем делать это на основе стандартной рисовалки.
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
Ну вообще да, но пусть будет. Я кстати переписал парочку своих скриптов, вроде бы все работает, так что если никто не возражает, могу собрать архивы с парой примеров да выложить. Или Seemann'у скинуть, чтоб обновил на сайте. А то скоро сессия, некогда будет.
Offline