You are not logged in.
У меня вот пара вопросов
- нужна проверка: атакует ли опред актер опред машину
- можна ли отключить читы? (скрипт или ехе если да?)
-=YariK=-
http://my-mods.org.ua/
Offline
я раньше был зареган под ником федо но я забыл пароль:D
недавно решил поиграть вновь в сан и вот хочу , чтобы мою территорию постоянно атаковали - как это сделать?:wow:;-)
Offline
Здравствуйте! Всем известно что Autoaim bot уже встроен в GTA, когда cтавишь управление с джойстика. Но дело в том, что при управлении с джойстика отключается обзор мышкой, что очень не удобно. Реально ли сделать такой мод/скрипт чтобы работал авто аим и работал обзор мышкой?
Offline
Я убеждаюсь, что массивы в SanAndreas глючные. Когда использовал небольшой массив, всё OK, но когда использую много больших массивов (пять массивов размером 10), то очень часто значения ячеек сдвигаются, подменяются даже в чистом мейне! А когда в оригинальном мейне (через Cleo3), то даже при четырех массивах размером 4. Можно как нибуть обойти эту проблему?
[small][/small]
Offline
@VcSaJen - на все локальные переменные (включая и массивы) для обычных потоков отводится 136 байт, для миссий 4096 байт. Пять массивов по десять элементов 200 байт. Если ты их используешь в обычном потоке, то ты перелез за границу.
Если у тебя массивы определены так:
var
0@: Array 10 of Integer
1@: Array 10 of Integer
2@: Array 10 of Integer
endТо они перезапишут друг друга.
Offline
У меня вот пара вопросов
- нужна проверка: атакует ли опред актер опред машину
- можна ли отключить читы? (скрипт или ехе если да?)
Поможет ктото с этим?
-=YariK=-
http://my-mods.org.ua/
Offline
@Yarik
1.
0@ = Car.Create(...)
1@ = Car.Health(0@)
0085: 2@ = 1@ // (int)
while true
wait 0
1@ = Car.Health(0@)
if and
051C: car 0@ damaged_by_actor $PLAYER_ACTOR
001D: 2@ > 1@ // (int)
then
Player.Money($PLAYER_CHAR) += 1
0085: 2@ = 1@ // (int)
end
end2.
0A8C: write_memory 0x0053BFB8 size 4 value 0x90909090 virtual_protect 1 0A8C: write_memory 0x0053BFBC size 1 value 0x90 virtual_protect 1
Offline
я раньше был зареган под ником федо но я забыл пароль
На форуме есть функция "вспомнить пароль". Если не поможет и старый аккаунт еще актуален для тебя, обращайся ко мне в личку, разберемся.
Offline
да нет удалить его можешь для меня сейчас вопрос актуален :
как сделать чтобы территории мои атаковали постояннно
{$CLEO}
:POI
0000:
:F4_2
wait 0
thread 'F4'
1@ = 304499
:F4_27
wait 0
if
&0(1@,1i) == 0x00FF0000
jf @F4_2
вот тут если не трудно напишите пожалуйста))
еще как вариант если не трудно можно сделать ,чтобы я нажимал F8 и тут же территория моя атаковалась балласами или вагосами
если не хотите делать я могу и сам только с опкодами помогите
Last edited by fedo2 (16-03-2008 20:07)
Offline
@Sanchez - Я их объявил как глобальные, локальные в SB вызывают ошибку:
Неверный символ в идентификаторе @.
Last edited by VcSaJen (17-03-2008 05:43)
[small][/small]
Offline
Ребята, ну что там с авто-прицелом то? Никто не поможет?
(Сообщение #366)
Offline
@VcSaJen
Может у тебя ошибка в коде. Вот смотри 5 массивов по 10 элементов на чистом мейне все работает прекрасно:
var
$arr1: Array 10 of Integer
$arr2: Array 10 of Integer
$arr3: Array 10 of Integer
$arr4: Array 10 of Integer
$arr5: Array 10 of Integer
0@: Integer
1@: Integer
end
for 0@ = 0 to 9
1@ = 0@
$arr1[0@] = 1@
1@ *= 10
$arr2[0@] = 1@
1@ *= 10
$arr3[0@] = 1@
1@ *= 10
$arr4[0@] = 1@
1@ *= 10
$arr5[0@] = 1@
$PLAYER_CHAR.Money += $arr1[0@]
$PLAYER_CHAR.Money += $arr2[0@]
$PLAYER_CHAR.Money += $arr3[0@]
$PLAYER_CHAR.Money += $arr4[0@]
$PLAYER_CHAR.Money += $arr5[0@]
endВыложи свой код.
Last edited by Sanchez (17-03-2008 12:58)
Offline
Здравствуйте! Всем известно что Autoaim bot уже встроен в GTA, когда cтавишь управление с джойстика. Но дело в том, что при управлении с джойстика отключается обзор мышкой, что очень не удобно. Реально ли сделать такой мод/скрипт чтобы работал авто аим и работал обзор мышкой?
вероятно, потребуется менять код exe, на уровне одних опкодов такую задачу не решить.
Offline
а на мой вопрос ответьте пожалуста вы же шарите):blush:
Offline
Кто замутит авто-аим с рабочим обзором мышкой тому пиво!:D
Offline
2Sanchez спасибо
Античит работает, проверка еще тест проходит 
Теперь еще такой вопрос, как можно отремонтировать фары? Делаю ремонт всех частей по отдельности
Опкодами 0698 и 068A нашел кажется все кроме фар (хотя при некоторых параметрах вылетело, может и оно, но как сделать что бы не вылетало тогда)
-=YariK=-
http://my-mods.org.ua/
Offline
@Sanchez - у меня простой скрипт перекрёстного Put'а игрока от подножия лестницы (примеч: по всей игре сиджей "взобрался" только на одну лестницу, да и то во время миссии) к её вершине и наоборот.
массивы $Xs $Ys $Zs $Dg - координаты и угол, $nP - для перекреста (к I прибавляется или отнимается по еденице).
В Cleo варианте я сразу-же после присвоения значений выводил 1num текст, и значение $nP[3] вместо только-что присвоенной -1 оказывается равна 4, а координаты сдвигаются, вместо (2588.65, 2638.34, 10.8679) получается (2638.34, 10.8679, 0.0). В stripped-скрипте то же самое, но при десяти элементах. Как обойти эту проблему, не знаю.
stripped-скрипт:
:lest0
thread 'LESTNI'
{const
Ns: = 2
end }
var
$PLAYER_ACTOR: Actor
$PLAYER_CHAR: Player
$Xs: Array 11 of Float
$Ys: Array 11 of Float
$Zs: Array 11 of Float
$nP: Array 11 of Integer //Перекрёст
$Dg: Array 11 of Float//Degrees
$I: Integer = 0
0@: Integer = 0
1@: Integer = 0
end
wait 0
select_interior 0
$PLAYER_ACTOR.PutAt(2588.65, 2638.34, 10.8679)
wait 0
0860: link_actor $PLAYER_ACTOR to_interior 0
$Xs[0] = 2703.16 //Заднее здание с двумя широкими короткими трубами
$Ys[0] = 2676.44
$Zs[0] = 11.7222
$Dg[0] = 180.0
$nP[0] = 1
$Xs[1] = 2703.16 //Крыша
$Ys[1] = 2677.94
$Zs[1] = 21.8472
$Dg[1] = 0.0
$nP[1] = -1
$Xs[2] = 2588.65 //Подножие правой длинноЙ башни
$Ys[2] = 2638.34
$Zs[2] = 9.7203
$Dg[2] = 90.0
$nP[2] = 1
$Xs[3] = 2590.35 //вершина
$Ys[3] = 2638.34
$Zs[3] = 108.0675
$Dg[3] = 270.0
$nP[3] = -1
$Xs[4] = 2632.61 //Подножие левой длинноЙ башни
$Ys[4] = 2836.68
$Zs[4] = 24.3737
$Dg[4] = 270.0
$nP[4] = 1
$Xs[5] = 2632.61 //вершина
$Ys[5] = 2835.58
$Zs[5] = 123.574
$Dg[5] = 90.0
$nP[5] = -1
$Xs[6] = 2562.63 //Переднее здание с двумя широкими короткими трубами
$Ys[6] = 2723.94
$Zs[6] = 12.5737
$Dg[6] = 0.0
$nP[6] = 1
$Xs[7] = 2562.78 //Крыша
$Ys[7] = 2722.55
$Zs[7] = 22.5737
$Dg[7] = 180.0
$nP[7] = -1
$Xs[8] = 2571.2 // Первая (передняя) из цистерн (справа)
$Ys[8] = 2643.97
$Zs[8] = 10.5737
$Dg[8] = 180.0
$nP[8] = 1
$Xs[9] = 2571.2 // Верхушка
$Ys[9] = 2646.17
$Zs[9] = 35.5737
$Dg[9] = 0.0
$nP[9] = -1
$Xs[10] = 2613.27 // Вторая () из цистерн (справа)
$Ys[10] = 2643.97
$Zs[10] = 10.5737
$Dg[10] = 180.0
$nP[10] = 1
$Xs[11] = 2613.27 // Верхушка
$Ys[11] = 2646.17
$Zs[11] = 35.5737
$Dg[11] = 0.0
$nP[11] = -1
//$Xs[] = //
//$Ys[] =
//$Zs[] =
//$Dg[] =
//$nP[] = 1
//
//$Xs[] = //
//$Ys[] =
//$Zs[] =
//$Dg[] =
//$nP[] = -1
$Zs[0] = 11.7222
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[0] time 1000 flag 1
wait 1000
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[1] time 1000 flag 1
wait 1000
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[2] time 1000 flag 1
wait 1000
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[3] time 1000 flag 1
jump @lest2
:lest2
wait 0 //2588.65 2638.34 10.8679
00FE: actor $PLAYER_ACTOR sphere 1 in_sphere $Xs[$I] $Ys[$I] $Zs[$I] radius 2.0 2.0 3.0 //Правая длинная башня
jf @Plus
0512: show_permanent_text_box 'lbox'
0@=1
if
00E1: player 0 pressed_key 15
jf @lest2
if $nP[$I] == 1 //Пришлось сделать так, из-за изменения значений
then
$I+=1
else
$I-=1
end
fade 0 200
wait 250
$PLAYER_ACTOR.PutAt($Xs[$I], $Ys[$I], $Zs[$I])
$PLAYER_ACTOR.Angle = $Dg[$I]
fade 1 200
$I=0
0@=0
wait 200
jump @lest2
:Plus
wait 0
//if 80FE: actor $PLAYER_ACTOR sphere 1 in_sphere $Xs[$I] $Ys[$I] $Zs[$I] radius 1.0 1.0 3.0
//0AA0: gosub_if_false @remov
Inc($I)
if and
$Xs[$I] <> 0.0
$Ys[$I] <> 0.0
$Zs[$I] <> 0.0
0AA0: gosub_if_false @p2
if 0@==1
jf @lest2
0@=0
03E6: remove_text_box
jump @lest2
:p2
wait 0
$I=0
returncleo-скрипт:
{$CLEO}
:lest0
thread 'LESTNI'
{const
Ns: = 2
end }
var
$PLAYER_ACTOR: Actor
$PLAYER_CHAR: Player
$Xs: Array 4 of Float
$Ys: Array 4 of Float
$Zs: Array 4 of Float
$nP: Array 4 of Integer //Перекрёст
$I: Integer = 0
0@: Integer = 0
1@: Integer = 0
end
//054C: use_GXT_table 'OTB'
wait 6000
select_interior 0
$PLAYER_ACTOR.PutAt(2588.65, 2638.34, 10.8679)
wait 200
0860: link_actor $PLAYER_ACTOR to_interior 0
$Xs[0] = 2703.16 //Правое здание с двумя широкими короткими трубами
$Ys[0] = 2676.44
$Zs[0] = 12.7222
$nP[0] = 1
$Xs[1] = 2703.16 //Крыша
$Ys[1] = 2677.94
$Zs[1] = 23.0094
$nP[1] = -1
$Xs[2] = 2588.65 //Продножие правой длинноЙ башни
$Ys[2] = 2638.34
$Zs[2] = 10.8679
$nP[2] = 1
$Xs[3] = 2590.35 //вершина
$Ys[3] = 2638.34
$Zs[3] = 110.768
$nP[3] = -1
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[0] time 1000 flag 1
wait 1000
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[1] time 1000 flag 1
wait 1000
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[2] time 1000 flag 1
wait 1000
01E5: show_text_1number_highpriority GXT 'DOLLAR' number $nP[3] time 1000 flag 1
//if or
//$Xs[3]==0.0
//$Ys[3]==0.0
//$Zs[3]==0.0
//jf @lest2
//0512: show_permanent_text_box 'lbox'
jump @lest2
//:lest
//wait 0 ms
//if
//00E1: player 0 pressed_key 15
//jf @lest
:lest2
wait 0 //2588.65 2638.34 10.8679
00FE: actor $PLAYER_ACTOR sphere 1 in_sphere $Xs[$I] $Ys[$I] $Zs[$I] radius 2.0 2.0 3.0 //Правая длинная башня
jf @Plus
0512: show_permanent_text_box 'lbox'
0@=1
if
00E1: player 0 pressed_key 15
jf @lest2
fade 0 200
wait 250
if $nP[$I] == 1
then
$I+=1
else
$I-=1
end
$PLAYER_ACTOR.PutAt($Xs[$I], $Ys[$I], $Zs[$I])
fade 1 200
$I=0
0@=0
wait 200
jump @lest2
:Plus
wait 0
//if 80FE: actor $PLAYER_ACTOR sphere 1 in_sphere $Xs[$I] $Ys[$I] $Zs[$I] radius 1.0 1.0 3.0
//0AA0: gosub_if_false @remov
Inc($I)
if and
$Xs[$I] <> 0.0
$Ys[$I] <> 0.0
$Zs[$I] <> 0.0
0AA0: gosub_if_false @p2
if 0@==1
jf @lest2
0@=0
03E6: remove_text_box
jump @lest2
:p2
wait 0
$I=0
return
//:Remov
//wait 0
//03E6: remove_text_box
//returnP.S.: У меня не постоянная связь с интернетом, потому ответы могут задержатся.
[---]
Ещё: в моём моде лифта есть функция падения лифта при взрыве в лифте(от гранаты, ракеты и т.д.)(для этого пришлось дополнительно изменить .col).
Но при этом лифт падает ещё при малейшем соприкосновении с машиной или велосипедом. Я устанавливал для объекта флаг неразрушаемости, устанавливал иммунитеты, не помогает. Как-то через скрипт можно поменять или надо копаться в object.dat?
Last edited by VcSaJen (05-04-2008 04:58)
[small][/small]
Offline
@VcSaJen - в CLEO-скриптах нельзя использовать новые глобальные переменные, только те что в CustomVariables.ini или локальные.
Offline
{$CLEO}
// Actor.PutAt($PLAYER_ACTOR, 2588.65, 2638.34, 10.8679)
var
0@: Integer
1@: Integer
10@: Array 4 of Float
14@: Array 4 of Float
18@: Array 4 of Float
22@: Array 4 of Integer
end
10@ = 2703.16
14@ = 2676.44
18@ = 12.7222
22@ = 1
11@ = 2703.16
15@ = 2677.94
19@ = 23.0094
23@ = -1
12@ = 2588.65
16@ = 2638.34
20@ = 10.8679
24@ = 1
13@ = 2590.35
17@ = 2638.34
21@ = 110.768
25@ = -1
while true
wait 0
if
Player.Defined($PLAYER_CHAR)
then
for 0@ = 0 to 3
wait 0
if and
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 10@[0@] 14@[0@] 18@[0@] radius 2.0 2.0 2.0
00E1: player 0 pressed_key 15
then
fade 0 200
wait 250
1@ = 0@
if
22@[0@] == 1
then
Inc(1@)
else
Dec(1@)
end
Actor.PutAt($PLAYER_ACTOR, 10@[1@] 14@[1@] 18@[1@])
fade 1 200
wait 200
end
end
end
end
Offline
Помогите советом. Есть мод: изменен майн, добавлен внешний скрипт + cleo-скрипты.
До сохранения в игре все работает нормально, а с сохраненной игры работают только cleo-скрипты, и то не все. Где ошибку искать?
Offline
Скажите кто-нибудь, пожалуйсто, адреса координат вывода имени автомобиля и названия улицы. Найти самому у меня не получается, к сожалению=(.
Offline
Все переменные координат основаны на указателях , тоесть чтобы изменить значение надо записать его в свою переменную , а в коде изменить указатель оригинала указателем на новую переменную
(Seemann выкладывал где-то пример управления интерфейсом скриптами)
0x58B149 , "CarName.X"
0x58B135 , "CarName.Y"
(из interface editor'a)
Offline
Все переменные....
Спасибо. Пол проблемы решено=)
Добавленно.
Нашел в посте Seemann'а координату вывода названия улицы по Y - 0x866B74
¾ проблемы решено
Last edited by flashTrash (06-05-2008 09:12)
Offline
Люди помогите с этим скриптом, это автопилот на самолет, но самолет должен быть НЕодноместный, иначе не пашет. Пожалуста измените его, чтоб можно было на любом самолете, не только, чтобы было и пасажирское место, + сделайте плиз клавишу включение: Ctrl + A, выключение также! Надеюсь поможете, я в скриптах ламер.
:pilot thread 'pilot' :pilot_10 wait 250 if Player.Defined($PLAYER_CHAR) else_jump @pilot_10 if 04AB: actor $PLAYER_ACTOR driving_plane jf @pilot_10 if 00E1: key_pressed 0 6 else_jump @pilot_10 if player.Controllable($PLAYER_CHAR) jf @pilot_10 03C0: 5@ = actor $PLAYER_ACTOR car 01EA: 4@ = car 5@ max_munber_of_passengers if 4@ == 0 then car.RemoveReferences(5@) jump @pilot_10 end // if #WMYPLT.Load while not #WMYPLT.Available wait 0 end var 3@ : float 1@ : float end // var 054C: use_GXT_table 'DSERT5' 00BC: text_highpriority 'DES5_SG' 1200 ms 1 // ZOLY4EHA LNQEH3NR ZNLOTA! 0819: 1@ = actor $PLAYER_ACTOR distance_from_ground 3@ = 1@ 3@ += 50.0 0430: put_actor $PLAYER_ACTOR into_vehicle 5@ passenger_seat 0 0129: 6@ = create_actor 4 #WMYPLT in_car 5@ driverseat Actor.SetImmunities(6@, 1, 1, 1, 1, 1) 2@ = car.Angle(5@) 2@ += 90.0 070F: plane 5@ fly_direction 2@ altitude_between 1@ and 3@ :pilot_15 wait 250 if and Player.Defined($PLAYER_CHAR) not Car.Wrecked(5@) 82BF: not car 5@ sunk Actor.InCar($PLAYER_ACTOR, 5@) else_jump @pilot_40 if 80E1: not key_pressed 0 6 else_jump @pilot_45 if 80E1: not key_pressed 0 5 else_jump @pilot_20 if 80E1: not key_pressed 0 7 else_jump @pilot_25 if 80E1: not key_pressed 0 14 else_jump @pilot_30 if 80E1: not key_pressed 0 16 else_jump @pilot_35 jump @pilot_15 :pilot_20 2@ += 5.0 070F: plane 5@ fly_direction 2@ altitude_between 1@ and 3@ jump @pilot_15 :pilot_25 2@ -= 5.0 070F: plane 5@ fly_direction 2@ altitude_between 1@ and 3@ jump @pilot_15 :pilot_30 if 1@ >= 5.0 then 1@ -= 5.0 3@ -= 5.0 070F: plane 5@ fly_direction 2@ altitude_between 1@ and 3@ end jump @pilot_15 :pilot_35 1@ += 5.0 3@ += 5.0 070F: plane 5@ fly_direction 2@ altitude_between 1@ and 3@ jump @pilot_15 :pilot_40 gosub @remove jump @pilot_10 :pilot_45 036A: put_actor $PLAYER_ACTOR in_car 5@ 00BC: text_highpriority 'CHEATOF' 1500 ms 1 // PEGNM NCZPABLEHNR KODA BSKLU4EH gosub @remove jump @pilot_10 :remove car.RemoveReferences(5@) actor.DestroyInstantly(6@) #WMYPLT.destroy return
Offline