#1 Re: Sanny Builder и CLEO » CLEO для GTA III » 26-02-2016 17:12

kenking wrote:

А что ж так-то? Это не есть хорошо... Просьба это дело исправить.

Кто-то на gtaforums.com вроде тестил клео с v140_xp, но все равно не заработало. Я лично не проверял и не хочу этим заниматься. Если есть visual studio, можешь сам попытаться.

#2 Re: Sanny Builder и CLEO » CLEO для GTA III » 25-02-2016 13:28

На XP работать не будет, так как скомпилировано все без поддержки XP. Возможно если перекомпилировать с _xp то заработает, но я не проверял.

#3 Re: Sanny Builder и CLEO » CLEO для GTA III » 06-09-2015 11:33

Shag wrote:

Баг проявляется только в 11 утра и только при погоде SUNNY, на чистой сборке вайса с единственным установленным плагином - VC.CLEO.asi, даже при отсутствии папки CLEO.

Спасибо, вчера выкладывал новую версию, но этого сообщения не видел. Оказывается там надо было еще один адресок пропатчить. Перезалил исправленную v2.0.0.3 на сайт.

Также выложил свои старые скрипты в пределанном виде сюда - http://13.sannybuilder.com/cleo-scripts

Shag wrote:

Sergey81, есть пара проблем с твоим новым Widescreenfix(последним, скачанным с твоего сайта, который с прозрачным фоном меню) для вайса:

Для мышки надо скачать SilentPatch, а FOV действительно перестал работать, сейчас перезалью исправленную версию.

#4 Re: Sanny Builder и CLEO » CLEO для GTA III » 04-08-2015 12:52

Те опкоды я исправил, а в новой версии для вайса ничего нового, кроме того, что надпись '0 scripts' не показывается.
База для gta3 лежит на паблике, но структур там практически нет.

#5 Re: Sanny Builder и CLEO » Аудио плагин для GTA Vice City/III » 24-07-2015 22:34

Здорово, а то я всё раздумывал делать или не делать. Я бы всё-таки предложил загружать bass.dll автоматически, без использования опкода, а саму dll встроить в плагин и загружать например через MemoryModule(смысла её отдельно держать в папке с игрой в принципе нет, как по мне). Ну и сохранить нумерацию опкодов из клео 4, а уже какие-то свои изменения/дополнения делать с новыми номерами.

#6 Re: Программы для GTA » Проблемы с Map Cleaner - ом » 24-07-2015 12:09

Почему бы не использовать fastloader и загружать игру за 3 секунды вместо полутора минут? И никаких мерцаний не будет заодно.

#7 Re: Sanny Builder и CLEO » CLEO для GTA III » 23-07-2015 18:27

Shag wrote:

1)После выделения памяти в "scr1.cs" можно ли ниже использовать этот скрипт для другого кода

Почему бы и нет?

Shag wrote:

2)будет ли наконец реализована работа со звуком(проигрывание mp3 и воспроизведение всех звуков из sfx.raw, а не каких-то отдельных, как это реализовано в опкодах 018С и 018D)?

Пока не уверен, аудио из клео 4 может и будет потом, стандартные звуки - не знаю.

#8 Re: Sanny Builder и CLEO » CLEO для GTA III » 23-07-2015 16:14

Я нашел chm файл в старой версии клео 4(4.1.1.30) - http://cleo.li/download.html
Можно открыть установщик через 7zip и просто вытащить его оттуда.
В новой версии его вроде не вкладывают, но точно не знаю.

#9 Re: Sanny Builder и CLEO » CLEO для GTA III » 23-07-2015 15:37

0AC8 выделяет блок памяти указанного размера. Полученный буфер может использоваться как угодно, например, для хранения строк.

0AB1. Данный опкод вызывает код из текущего скрипта (по аналогии с gosub), передает в него параметры и получает результат. Передаваемые параметры последовательно (то есть в прямом порядке) копируются в область локальных переменных скрипта, остальные локальные перменные обнуляются. Затем поток переходит на указанную метку, выполняет код по данной метке и возвращается после опкода 0AB2.

Почитай справку к опкодам и scm функциям.

0AB1: call_scm_func @__VarToOffset 1 varnumber 0 result 0@ // получили указатель на переменную 0@ в scr1
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0 // прочитали её значение, это значение - указатель на блок памяти из опкода 0AC8.
//0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0 // здесь либо читаем значение, расположенное в начале этого блока (со смещением 0)
//либо делаем по другому
0A8E: 1@ = 0@ += 0x0 // int
0A8D: 2@ = read_memory 1@ size 4 virtual_protect 0 // 1
0A8E: 1@ = 0@ += 0x4 // int
0A8D: 3@ = read_memory 1@ size 4 virtual_protect 0 // 2
0A8E: 1@ = 0@ += 0x8 // int
0A8D: 4@ = read_memory 1@ size 4 virtual_protect 0 // 3
03F0: enable_text_draw 1 
0609: show_formatted_text_position 50.0 50.0 text "%d %d %d" 2@ 3@ 4@

#10 Re: Sanny Builder и CLEO » CLEO для GTA III » 23-07-2015 07:16

Shag wrote:
Sergey81 wrote:

в чем проблема сделать через переменную? К примеру как-нибудь так:

Хорошо, а как в этом коде сделать 2 переменных? Или придется для каждой переменной создавать новый скрипт?

0AC8: 0@ = allocate_memory_size 260
0A8C: write_memory 0@ size 4 value 123 virtual_protect 0 //1
0A8E: 1@ = 0@ += 0x4 // int
0A8C: write_memory 1@ size 4 value 345 virtual_protect 0 //2
0A8E: 1@ = 0@ += 0x8 // int
0A8C: write_memory 1@ size 4 value 567 virtual_protect 0 //3
....

Чтение аналогично.

#11 Re: Sanny Builder и CLEO » CLEO для GTA III » 22-07-2015 21:35

Shag wrote:

Вот мне и хотелось бы узнать парочку адресов из неиспользуемой памяти.
Я вижу, всё же придется пойти сложным способом, но проблема в том, что я не понимаю, как это сделать(я нуб в работе с памятью). Мне нужно 5 адресов для записи integer значений, может кто-то помочь с реализацией этого?

Открой базу или экзешник в IDA, найди к примеру строчку "align 10h" в любом месте, вот здесь и будет нужный тебе адрес. Но все равно я не пойму в чем проблема сделать через переменную? К примеру как-нибудь так:

{$CLEO}
//scr1.cs
0000:
0AC8: 0@ = allocate_memory_size 260
0A8C: write_memory 0@ size 4 value 123 virtual_protect 0

while true
wait 0
///
end


{$CLEO}
//scr2.cs
0000:
while true
wait 0
0AB1: call_scm_func @__VarToOffset 1 varnumber 0 result 0@
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
03F0: enable_text_draw 1 
0609: show_formatted_text_position 50.0 50.0 text "%d" 0@
end

:__VarToOffset
{
0AB1: call_scm_func @__VarToOffset 1 varnumber 6 result 0@
}
0AAA: 13@ = thread 'scr1.cs' pointer
if
13@ <> 0
then
13@ += 0x30
0@ *= 4
005A: 13@ += 0@ // address of the local variable 
0AB2: ret 1 13@
else
0AB2: ret 1 0
end

EPm4YUu.jpg

#12 Re: Sanny Builder и CLEO » CLEO для GTA III » 22-07-2015 12:56

kenking wrote:

@Shag, можно попробовать запись значения переменной одного скрипта в ini файл и чтение этого значения другим скриптом, вот только, как это сопоставится с очерёдностью выполнения скриптов.

Я бы не рекомендовал так делать.

kenking wrote:

А, кстати, вот и вопрос: в каком порядке загружаются и выполняются скрипты при, допустим, одном wait 0 в каждом скрипте?

Ну загружаются они по алфавиту, можно в логе посмотреть, выполняются наверно в том же порядке.

Сегодня обновил обе версии клео, добавлен опкод 0673 отсюда - http://www.gtagarage.com/mods/show.php?id=2508
Исправленный плагин(убрана реализация опкода) с исходником можно скачать тут - https://www.sendspace.com/file/rerz5r

#13 Re: Sanny Builder и CLEO » CLEO для GTA III » 21-07-2015 14:21

Не вижу смысла в этих опкодах, поэтому их и не добавлял. Как вариант можно выделить память(через hex...end) или опкод в одном скрипте, адрес этого буфера записать куда-нибудь(в неиспользуемую память или же получать как выше было отмечено через переменную), а потом этот адрес использовать из любого скрипта.

Некоторые опкоды в CLEO 2.0 дублируют CLEO 1.1. Ты писал, что, помимо новых, старые опкоды CLEO 1.1 тоже работают. Для чего тогда дублирование? Или есть отличия?

Отличий нет, я только хотел чтобы во всех трех играх были одинаковые номера опкодов. Иначе не удобно, когда пишешь скрипт сразу под 3 игры, перебивать номера опкодов.

#14 Re: Sanny Builder и CLEO » CLEO для GTA III » 11-07-2015 11:55

kenking wrote:

А новые опкоды только для exe 1.0 или 1.1 тоже поддерживается?

Ну да, опкоды доступны для всех версий, Но в скриптах надо не забывать менять какие-то конкретные адреса если есть желание поддерживать несколько версий.
В опкоде game_version возвращаемое значение не поменялось, для стим версии будет 2.

#15 Re: Sanny Builder и CLEO » CLEO для GTA III » 10-07-2015 20:33

Выложил версию 2.0 на гитхаб.
https://github.com/ThirteenAG/III.VC.CLEO/releases
Опкоды, файлы для SB, сдк и тестовый скрипт можно найти там же на гитхабе или здесь: http://gtaforums.com/topic/807185-iiivcrel-cleo-20/
Отличий от прошлой беты немного, мелкие правки и добавлен опкод получения значения брони в гта3.

#16 Re: Sanny Builder и CLEO » CLEO для GTA III » 02-07-2015 13:47

Собственно, выкладываю обновленные версии:
III.CLEObeta.zip 
VC.CLEObeta.zip 
opcodes.zip 
В opcodes.zip просто взяты все опкоды клео 4, плюс добавлены новые(0601-0609), я там немного поменял кое что. Это я в ближайшее время исправлю, чтобы не было путаницы. Новых опкодов из клео4 по сравнению с предыдущей версией не добавилось, за исключением тех, что идут в плагинах. Опкоды из плагинов я тоже сделал через плагины. Также нашел в исходниках опкоды 0B17-0B1D, которых раньше ни в одном ini не видел. Добавил их тоже.

#17 Re: Sanny Builder и CLEO » CLEO для GTA III » 26-05-2015 18:57

Ну если без клео работает все, тогда дело точно в клео, правда я не понимаю в чем тут дело, да и логи какие-то странные.

#18 Re: Sanny Builder и CLEO » CLEO для GTA III » 26-05-2015 14:30

Да и другие тоже, скорее всего функций нужных нету.

#19 Re: Sanny Builder и CLEO » CLEO для GTA III » 25-05-2015 18:28

А может причина в другом моде/плагине? Думаю если дело в клео, то я бы смог воспроизвести.

#20 Re: Sanny Builder и CLEO » CLEO для GTA III » 25-05-2015 15:23

Судя по дампу, вылетает на 0x66A702, но как это связано с клео я не очень понимаю. Воспроизводится ли вылет без скриптов, только с клео?

#21 Re: Sanny Builder и CLEO » CLEO для GTA III » 25-05-2015 14:12

Очень странно, выложи тогда дамп, сгенерированный после вылета: http://dk22pac.blogspot.ru/2013/02/how- … files.html

#22 Re: Sanny Builder и CLEO » CLEO для GTA III » 24-05-2015 20:07

А установлен ли мой пример скрипта пикапов? У меня с ним действительно вылетает, если несколько раз начать новую игру, правда с другим адресом. Что-то связанное с рендером теней, создаваемых опкодом 016F. Буду разбираться.
EDIT: Скрипт обновил, там если радиус проверки снизить немного, то работает нормально.

#23 Re: Sanny Builder и CLEO » CLEO для GTA III » 24-05-2015 19:51

Но эта ошибка в функции CGarage::Update(), странно как-то. А до последнего обновления также было или вылета не было?

#24 Re: Sanny Builder и CLEO » CLEO для GTA III » 24-05-2015 19:23

Давай еще раз по порядку, какой скрипт нужен и что надо сделать чтоб вылетело(и чтобы я смог воспроизвести).

#25 Re: Sanny Builder и CLEO » CLEO для GTA III » 24-05-2015 18:27

Работает у меня так. На каком адресе вылет?

Board footer

Powered by FluxBB