You are not logged in.
Código de main.scm na mesagem #13 determina como o herói aparece no jogo pela primeira vez... Eu tentei mudá-lo usando o script - não poderia fazê-lo... Você pode até perguntar aqui...
Ou eu vou perguntar aqui em russo 
Народ, как бразильскому товарищу поменять модельку CJ'я при старте? Только редактированием мейна или можно скриптом? А то я чёт по португальски могу пообщаться, а с этим в лужу сел 
É possível, mas não com Cleo. Acho que para isso, precisamos de mudar main.scm.
Encontrar este código com um SB:
0053: $PLAYER_CHAR = create_player #NULL at 2488.562 -1666.865 12.8757
E substituir modelo. Mas não tenho certeza se isso vai funcionar em "cutscenes"...
Não sei como escrever código de alto nível. Aqui está o código que muda o jogador pressionando T (Lá e de volta). O herói está sempre em nova roupagem, mesmo em missões, à excepção de certos "cutscenes" prescritos em .exe:
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
0001: wait 0 ms
0006: 0@ = 0
0002: jump @NONAME_5
:NONAME_5
0001: wait 0 ms
00D6: if
0256: player $PLAYER_CHAR defined
004D: jump_if_false @NONAME_5
00D6: if
0AB0: key_pressed 84
004D: jump_if_false @NONAME_5
0001: wait 50 ms
0002: jump @NONAME_10
:NONAME_10
00D6: if
0039: 0@ == 0
004D: jump_if_false @NONAME_20
0247: request_model 252
038B: load_requested_models
:NONAME_15
00D6: if
0248: model 252 available
004D: jump_if_false @NONAME_15
09C7: change_player $PLAYER_CHAR model_to 252
0006: 0@ = 1
0249: release_model 252
0002: jump @NONAME_5
:NONAME_20
00D6: if
0039: 0@ == 1
004D: jump_if_false @NONAME_10
0247: request_model #NULL
038B: load_requested_models
:NONAME_25
00D6: if
0248: model 7 available
004D: jump_if_false @NONAME_15
09C7: change_player $PLAYER_CHAR model_to #NULL
0006: 0@ = 0
0249: release_model #NULL
0002: jump @NONAME_5Funciona. Eu verifiquei.
Por favor.
тогда уж с запрошенной моделью 
Eu acho que é por causa da diferença de Português em Portugal e no Brasil 
Não ... estudo do Português não foi a minha escolha. Estudei no Instituto das Relações Internacionais e, em seguida, a distribuição das línguas, a pedido do Ministério das Relações Exteriores.
aqui é o código com o modelo, que você gostaria:
{$CLEO .cs}
0000: NOP
wait 0
repeat
wait 0
repeat
wait 0
until 0AB0: 84
model.Load(252)
038B: load_requested_models
09C7: change_player $PLAYER_CHAR model_to 252
model.Destroy(252)
until falsefunciona para mim. eu verifiquei
Estudei Português no Instituto... E desde que há 10 anos que se formou usando tradutor do Google
. Além disso, eu não tenho um layout de teclado para o Português.
O código deve ser aproximadamente assim com estes cheques:
//-------------MAIN--------------- 0000: NOP 0000: NOP wait 0 :NONAME_10 wait 0 if 0256: player $PLAYER_CHAR defined jf @NONAME_10 if 0AB0: key_pressed 84 jf @NONAME_10 jump @NONAME_23 :NONAME_15 Model.Load(#WMYVA2) :NONAME_20 if 0248: model #WMYVA2 available jf @NONAME_20 09C7: change_player $PLAYER_CHAR model_to #WMYVA2
Embora eu não testei e não tenho certeza que o código vai funcionar 
I want by pressing the "T", the player becomes the model "WMYVA2", but my code when I enter the game, it gives error! And the GTA closes.
What's wrong?
Here is my code:// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007 {$VERSION 3.1.0027} {$CLEO .cs} //-------------MAIN--------------- 0000: NOP 0000: NOP wait 0 if 0AB0: key_pressed 84 jump @NONAME_23 :NONAME_23 Model.Load(#WMYVA2) 09C7: change_player $PLAYER_CHAR model_to #WMYVA2Help me please!
Não sei, se isso vai resolver o seu problema, mas você precisará de pelo menos duas mudanças em seu código.
Em primeiro lugar, quando você faz qualquer coisa para o jogador, você precisa verificar se ele está definido.
0256:
A segunda verificação é quando você carregar qualquer modelo, você precisa verificar se ele é carregado
0248:
oh, quanto tempo eu não usei o Português... 
Загружаешь при загрузке текстур стандартного HUD'а
можно поподробнее?
Я думал текстуры стандартного худа в памяти постоянно висят... С другой стороны, у меня все элементы стандартного худа будут скриптово отключены, так что (если текстуры грузятся-выгружаются как и все другие) будут всегда выгружены.
fonts.dat содержит таблицы пропорциональности шрифтов... хз за что они отвечают.
По сути вопроса - место отображения и цвет шрифта, выводящегося на экран как элемент hud'а, прописан в .exe. Изменить можно - путём изменения соответствующих значений в памяти игры. Лично я адрес в памяти не знаю. Может кто скажет... Есть InterfaceEditor, который, насколько я помню, позволяет отредактировать положение этого шрифта. Цвет, насколько я помню, можно изменить только вместе с деньгами... Что касается размера - то возможно, он отображается в "натуральную" величину, и тогда изменить его, возможно, можно только изменив текстуры или значения пропорциональности в fonts.dat... Ну и ещё при большом желании можно скриптово отключить этот элемент (09B9: show_entered_car_name 0) и отображать название собственным кодом.
Jack Daniel's wrote:По какому адресу находится значение задержки обновления кадров? Я не про fps limiter
Если кому интересно, написал плагин, меняющий стандартное значение задержки (14мс) на 0мс:
http://dl.dropbox.com/u/34394266/Optimiser.asi
Делает игру очень плавной, если итак высокий фпс.
С compact.exe от Listener не работает. Игра вылетает при старте.
У меня ноут первую неделю. И это явно не вибрация кулера - она бОльшей частоты и чувствуется только на металле. Когда ноут выключен но питание есть, вибрация тоже есть. Может это 50 Гц от переменного тока?
думаю, что это блок питания... если прищупаться, то даже пластиковый адаптер от телефона чуток вибрирует... вредная или нет - хз... я бы помацал в магазине еще пару-тройку таких же, чобы проверить. если на всех - значит так и должно быть. если нет - значит брак (можно еще в нете поискать по конкретной модельке - может быть болячка какая-нить врождённая).
Занопать можно, но тогда это будет на все авто действовать, а не только на авто героя...Так вот мне и надо выключить взрыв у всех автомобилей..
Это я поторопился малось, сказав, что все таймеры отключаться... Отключится как раз только авто героя, ну или той машины, от хендла которой считать оффсет таймера... Чтобы отключить у всех (ну или почти у всех) я бы искал интерсептором перевёрнутое авто и вышеуказанным опкодом запрещал взрыв + нопил таймер в авто героя (поскольку компьютерные педы из авто при переворачивании вылезают - их авто будет пустой и опкод будет работать, а авто героя будет с героем пока кнопку выхода не нажмёшь).
Проверить можно, вызывая drawTexturedRect, где в качестве параметра (this*) передаётся адресс структуры RwTexture (прочитать из 0xA94B68).
Если ты хочешь, чтобы твои текстуры не выгружались, - их лучше добавить в hud.txd и самому загружать/выгружать, когда это нужно.
1) На компакт экзе я это и так проверил и знаю. Я спрашивал про другие версии, которых у меня нет.
2) Угу. Вопрос: "когда это нужно". 
Занопать функцию того самого изменения таймера.
Занопать можно, но тогда это будет на все авто действовать, а не только на авто героя...
Кстати, вопрос к тебе: у тебя что-то вышло с добавлением нового шрифта в игру?
Вопрос ко всем: у кого-нибудь есть почищенный мейн (то есть не совсем пустой, как в файлах СБ идёт, а почищенный от рокстаровского мусора типа опкодов про mutual_activities и идущих подряд jump'ов)?
И еще нубский вопрос... Можно ли в мейне (не в клео) сделать госабом переход в "левую" метку? Например, добавить в мейн интерсептор. Из одного потока искать, скажем авто... из второго - педов. Но искать их госабами, обращаясь к единому интерсептору? Или, можно ли использовать в каждом из таких потоков опкод 0AB1: call_scm_func @interceptor 0, а, соответствено, метку интерсептора в мейне иметь одну?
Есть такой опкод. Находил в базе deji. Сейчас сам хочу найти. Можно посмотреть тему cleo favorites там тоже кое что есть.
Да, действительно, есть опкод на эту тему. Мой SASCM.INI знает один:
03ed=2,set_car %1d% disable_flipped_explosion_when_empty %2h%
1ый параметр - переменная авто, 2ой, насколько я понимаю, - флаг 0/1
Однако, судя по описанию, он отключает взрыв только на пустой машине...
Подскажите, можно ли выключить взрыв автомобилей при переворачивании?
мои тесты (путем включения чита неубиваемости текущего авто) показывают, что авто при переворачивании не взрывается как таковое, а быстро теряет здоровье (как известно при здоровье меньше 250 авто начинает гореть и потом (при 0) взрывается - с включенным читом оно порывается загореться, но сразу тушится). Согласно базе данных по адресам в СА по оффсету +1216 находится флоат значение оставшегося здоровья авто, а по оффсету +2276 - флоат таймер горения. Соответственно отключить взрыв можно, проверив находится ли авто в перевернутом положении, и переписывая в лупе значение либо здоровья, либо таймера. Хотя, возможно, где-то есть флаг, отвечающий за последствия переворачивания...
Господа, такая пара вопросов...
1) кто может подтвердить или опровергнуть тот факт, что во всех вариантах gta_sa.exe по адресу 0xA94B68 находится текстура, загруженная под номером 1 (то, что в IDA базе от Listener называется TXDPool)? Compact от Listener не интересует, ибо там я и сам это могу подтвердить...
2) по моим тестам адрес является статическим... указатель не требуется... опровержения (?) приветствуются...
Проверить совсем просто с помощью, например, ArtMoney... сложнее, но тоже возможно, написав скрипт выводящий на экран 1, если значение по адресу больше 0. Далее зайти в ГринБотлзБар и запустить либо пул, либо один из двух аркадных автоматов...
Спасибо.
Помогите разобраться,что в этом скрипте не так?не работает
:NONAME_226 if Actor.Driving($PLAYER_ACTOR) 07A5: AS_actor 1@ attack_actor $PLAYER_ACTOR -1 ms jump @NONAME_179
jf @ не пробовал добавить? а то когда герой пешком у тебя код подвисает...
А у меня такая проблема. Мне надо считать сколько я убил бандитов банды баласс и вагос. Причем в 2 счетчика в одно м балассы в другом вагосы. (уровень розыска банд)
Если я правильно понимаю: берешь нацеленного педа, проверяешь есть ли он и какой он модели, если баллас или вагос - проверяешь жив ли он, если нет - проверяешь кто его грохнул, если герой - +1 к соответствующей переменной-счетчику...
Правда, это не будет считать, например, задавленных...
на gtaforums.com ZAZ ткнул меня в функцию isTxdDictionaryLoaded (сообщение от Wesser)...
Там, кстати, в этом примере с проверкой на загруженность txd архива нужно еще название потока указывать, что я заметил, так что...
хм... господа, а может кто-нибудь из людей сведующих в языках программирования помочь использовать упомянутые функции? Там просто этот код написан с целью выгрузки текстур из памяти... А мне бы хотелось понять как можно отслеживать использование текстур... Если можно на пальцах объяснить, например, куда название потока или словаря указывать... Например, main.scm содержит поток :POOL2. Под одной из его меток (:POOL2_1292 в моем декомпилированном main.scm) игра загружает txd словарь 'LD_POOL'. Как уточнить, что код сработал и игра словарь загрузила (если словари грузятся-выгружаются) /использует (если они грузятся при старте экзешника)? Можно ли как-то в памяти отследить загрузку словаря текстур? Может есть флаг где-то, что загруженный словарь используется? Или счетчик использований?
@mfisto, @Den_spb - на gtaforums.com ZAZ ткнул меня в функцию isTxdDictionaryLoaded (сообщение от Wesser)... разбираюсь... может тоже пригодится.
Попробую добавить в функцию загрузки шрифтов загрузку своего отдельного шрифта и попробую "активировать" его в игре, но ничего не получится - закон подлости.
Вопрос в том, что загрузка шрифта из экзешника производится при старте игры. Если я правильно понимаю раньше клео. Тогда изменить функцию в игре можно только патчем экзешника... Хотя, может, есть ещё вариант "догрузки" своего шрифта после старта игры через клео-скрипт..?
@Sw[ee]t - не понял о каком меню речь...
есть опкод
0349: set_text_draw_font 3
Если я правильно понимаю, допустимые параметры от 0 до 3. То есть на выбор 4 шрифта. Они присутствуют в игровых файлах (дат и тхд). И вопрос как раз не в "подмене" существующего (это элементрано (тхд поменять и всё)) а в добавлении новых шрифтов (2 на каждый новый тхд).
не уверен, но мне кажется это зашито глубоко в exe и игра не предусматривает несколько шрифтов (как и возможность модификации
)
Дат файл содержит два шрифта ИД 0 и ИД 1, тхд две картинки фонт1 и фонт2. При чем на каждой картинке и в каждой секции дат файла по два шрифта. Через скрипт они вызываются как шрифты 0,1,2,3. Вот собственно и хотел узнать можно ли в дат добавить ИД 2, в тхд фонт3 и через скрипт юзать их как 4 и 5... У меня так просто не получилось... Собственно и спрашивал не пробовал ли кто с экзешником разобраться по этому поводу 
а смысл? делать такие твики со шрифтами
можно вместо текстур использовать. как звёзды в оригинале реализованы.