#1326 29-08-2009 22:04

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Один вопрос

0A97: 8@ = car 0@ struct 
8@ += 2424 
0A8D: 9@ = read_memory 8@ size 1 virtual_protect 0

Здесь идёт получение нетро (0@ - машина игрока)

А 0AB3 ничего не делает, это просто замена кейворду var.

EDIT:
Кстати, в исходном коде gasoline_NEW нашёл очень глупую проверку.

03C0: 8@ = actor $PLAYER_ACTOR car 
046C: 26@ = car 8@ driver 
if 
003B:   26@ == $PLAYER_ACTOR // (int) 
else_jump @NONAME_2

ИМХО зачем проверять является-ли водителем машины ИГРОКА - игрок? lol

Last edited by Sw[ee]t (29-08-2009 22:06)

Offline

#1327 29-08-2009 22:13

flashTrash
From: Н.Новгород
Registered: 21-02-2007
Posts: 260
Website

Re: Один вопрос

Sw[ee]t wrote:

EDIT:
Кстати, в исходном коде gasoline_NEW нашёл очень глупую проверку.

03C0: 8@ = actor $PLAYER_ACTOR car 
046C: 26@ = car 8@ driver 
if 
003B:   26@ == $PLAYER_ACTOR // (int) 
else_jump @NONAME_2

ИМХО зачем проверять является-ли водителем машины ИГРОКА - игрок? lol

Сам ты глупый:lol:
Если машина игрока, то это не значит, что он стопроцентно её водитель. Он может сидеть и на пассажирском месте.

Offline

#1328 29-08-2009 23:18

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Один вопрос

Кстати, в исходном коде gasoline_NEW нашёл очень глупую проверку.

Эта проверка делалась специально для того, чтобы задавались «умные» вопросы.:D

0AB3 устанавливает значение глобальной CLEO-переменной. Читай help внимательно.

Offline

#1329 30-08-2009 17:34

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Один вопрос

"И незачем так орать" ©
Незнал, извиняюсь blush

Offline

#1330 30-08-2009 18:07

PIT
Registered: 08-09-2008
Posts: 224

Re: Один вопрос

flashTrash wrote:

Если машина игрока, то это не значит, что он стопроцентно её водитель. Он может сидеть и на пассажирском месте.

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


100 постов - 27 августа;

Offline

#1331 30-08-2009 20:00

flashTrash
From: Н.Новгород
Registered: 21-02-2007
Posts: 260
Website

Re: Один вопрос

PIT wrote:

без скриптов такое только на миссиях встречается.

У человека может стоять какой-нибудь мод, с которым можно садиться и на пассажирские сидения. Поэтому следует данный момент предусмотреть, чтобы повысить совместимость. Это как правила хорошего тона.

PIT wrote:

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

Потому что по сути, это те же глобальные переменные, только мало используемые.

Offline

#1332 30-08-2009 21:42

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Один вопрос

flashTrash wrote:

только мало используемые.

угу угу. глобальные чаще, имхо там не тока цыферки smile

Offline

#1333 31-08-2009 08:09

PIT
Registered: 08-09-2008
Posts: 224

Re: Один вопрос

Вот, пришло пара безумных идей, как улучшить клео grin:
1. Если мы знаем, где находится адрес опкодов, то нам можно некоторые опкоды изменить с помощью этого? например nopы изменить, чтобы они рабочими стали.
2. Наверняка в памяти где-то выделяется эн-ное количество памяти для локальных переменных. Если количество увеличить, то и локальных переменных станет больше. smile
вопрос: как удалить у педа референцес, при этом чтобы он атакавал актёра?


100 постов - 27 августа;

Offline

#1334 31-08-2009 10:17

Lost_forever
From: Saint-Petersburg
Registered: 12-08-2009
Posts: 28
Website

Re: Один вопрос

У меня еще один вопрос,возможно глупый,как запихнуть свою музыку в гта cа?где то видел а вот где не помню sad

Offline

#1335 31-08-2009 10:20

listener
From: Vice City
Registered: 09-11-2006
Posts: 616
Website

Re: Один вопрос

@PIT - Под локальные переменные выделен массив в CScriptThread. Увеличить его можно, но нужно править все места, где есть ображения к CScriptThread - а это очень неблагодарное занятие. Проще перетещить весь скриптовый движок из IV.

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

Offline

#1336 31-08-2009 11:17

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Один вопрос

У меня была мысль увеличить кол-во локальных переменных в потоках CLEO-скриптов (они создаются и управляются библиотекой CLEO, поэтому технически такая возможность есть), но я посчитал, что наличие определенного лимита (в данном случае 32 переменных на поток) стимулирует к более рациональному использованию имеющихся ресурсов и повышает качество кода. Проще говоря: меньше переменных - код больше оптимизируется.

Для временного хранения больших объемов данных можно использовать внутреннее пространство самого скрипта. Например, через hex..end резервировать буфер в конце файла, затем напрямую писать и читать значения оттуда. Кажется, так делал Ryosuke в некоторых скриптах.

Offline

#1337 31-08-2009 13:23

PIT
Registered: 08-09-2008
Posts: 224

Re: Один вопрос

Listener wrote:

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

тоесть, фактически при вызове эн-ного опкода мы просто заменяем его функции своими. а какие NOPы удобнее использовать? ведь есть и со строками, и без.

Lost_forever wrote:

У меня еще один вопрос,возможно глупый,как запихнуть свою музыку в гта cа?где то видел а вот где не помню sad

запихивай в C:\Documents and Settings\User name\Мои документы\GTA San Andreas User Files\User Tracks


100 постов - 27 августа;

Offline

#1338 01-09-2009 10:44

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Один вопрос

PIT wrote:
Lost_forever wrote:

У меня еще один вопрос,возможно глупый,как запихнуть свою музыку в гта cа?где то видел а вот где не помню sad

запихивай в C:\Documents and Settings\User name\Мои документы\GTA San Andreas User Files\User Tracks

Он наверное имеет в виду другой плагин для вставки своей музыки из которой можно сделать радио. wink

Last edited by Sw[ee]t (03-09-2009 14:11)

Offline

#1339 01-09-2009 16:52

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

Нужно брать качеством, а не количеством

наверное любимые слова listener'а:D

тоесть, фактически при вызове эн-ного опкода мы просто заменяем его функции своими.

А смысл заменять нопы есть? Наверное проще воспользоваться методом, примененным Seemann'ом здесь. Естественно, адрес смещения надо будет самому искать. Если в клео скрипте, то смещение будет не относительно начало блока скм, а относительно индекса самого скрипта.

Last edited by Alien (01-09-2009 16:59)

Offline

#1340 02-09-2009 07:18

GTASA
Registered: 13-09-2008
Posts: 476

Re: Один вопрос

Как занести имя машины $car в стринговую переменную?

Offline

#1341 02-09-2009 11:43

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

имя машины часто совпадает с её моделью...надо через QO как-то GXT читать %)


GIMS developer

Offline

#1342 02-09-2009 12:08

GTASA
Registered: 13-09-2008
Posts: 476

Re: Один вопрос

Ну и как?

Offline

#1343 03-09-2009 12:32

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

@GTASA - почитай этот пост.

Offline

#1344 03-09-2009 12:46

PIT
Registered: 08-09-2008
Posts: 224

Re: Один вопрос

3Doomer wrote:

имя машины часто совпадает с её моделью...надо через QO как-то GXT читать %)

3Doomer имхо не знаешь - молчи mad


100 постов - 27 августа;

Offline

#1345 03-09-2009 13:40

Daeman
From: }{абаровск
Registered: 08-05-2009
Posts: 70

Re: Один вопрос

PIT wrote:

вопрос: как удалить у педа референцес, при этом чтобы он атакавал актёра?

ответ: узнаёшь у жертвы педтип и делаешь hate CivMale (или CivFemale) к оному. Затем можно смело удалять сведения.
Объясню на всякий случай, почему команда для педтипа прохожих, а не для текущего педтипа агрессора. Когда референцы удаляются актёру заново даётся хэндл как простому смертному.

Offline

#1346 04-09-2009 10:15

PIT
Registered: 08-09-2008
Posts: 224

Re: Один вопрос

я уже кажись нашел способ и объяснил даеману в аске grin


100 постов - 27 августа;

Offline

#1347 04-09-2009 19:44

DrugsFan
Registered: 17-07-2009
Posts: 8

Re: Один вопрос

Кто-нибудь видел где в саньке сидит код проституток, которые по улицам ходят? smile

Offline

#1348 05-09-2009 06:04

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

для зон в определённое время суток настроены типы появляющихся пешеходов...это не скрипт

то, что они садятся в машину итд это в ЕХЕ

Last edited by 3Doomer (05-09-2009 06:08)


GIMS developer

Offline

#1349 05-09-2009 10:41

PIT
Registered: 08-09-2008
Posts: 224

Re: Один вопрос

DrugsFan wrote:

Кто-нибудь видел где в саньке сидит код проституток, которые по улицам ходят? smile

а тебе что конкретно надо, подправить или сделать что-то похожее? такое нетрудно сделать.


100 постов - 27 августа;

Offline

#1350 05-09-2009 21:06

CraZZZy-GameRRR
From: Москва
Registered: 11-08-2009
Posts: 97
Website

Re: Один вопрос

При считывании из памяти типа двигателя авто (+0x75), каждый раз получаю какие-то разные и непонятные значения, типа 0, 128, 310 и т.п.

Last edited by CraZZZy-GameRRR (05-09-2009 21:07)

Offline

Board footer

Powered by FluxBB