Вопросы по CLEO-скриптингу

Royan_Millans

Известный
145
183
Ну например по адресу samp + 219F88 содержится строка путь к файлам с настройками, скринами и т.д
В луа для чтения строк из памяти используется memory.tostring, а каким образом получить это значение в клео?

FnaWlrP.png
 

D3.Pheonix

🎹
Модератор
2,867
1,642
Ну например по адресу samp + 219F88 содержится строка путь к файлам с настройками, скринами и т.д
В луа для чтения строк из памяти используется memory.tostring, а каким образом получить это значение в клео?

FnaWlrP.png
0B2E: 0@ = read_samp_memory offset 0x219F88 size 4
 
D

deleted-user-399997

Гость
Научите работать с командами, как сделать что бы когда я написал команду /autoheal у меня активировался код, а когда еще раз напишу то деактевировался?
CLEO:
[/B]
{$CLEO}
0000:

:SAMPAv
wait 0
0AFA:  is_samp_available
jf @SAMPAv
0B34: samp register_client_command "autoheal" to_label @autoheal
0BDE: pause_thread 0@

:autoheal
0B43: samp cmd_ret
// пошло нахуй пойду в луа сделаю по образцу, хоть я и 0 в луа как и в клео
[B]
 

MAHEKEH

Известный
2,010
504
Научите работать с командами, как сделать что бы когда я написал команду /autoheal у меня активировался код, а когда еще раз напишу то деактевировался?
CLEO:
[/B]
{$CLEO}
0000:

:SAMPAv
wait 0
0AFA:  is_samp_available
jf @SAMPAv
0B34: samp register_client_command "autoheal" to_label @autoheal
0BDE: pause_thread 0@

:autoheal
0B43: samp cmd_ret
// пошло нахуй пойду в луа сделаю по образцу, хоть я и 0 в луа как и в клео
[B]

хз можешь так попробовать

Код:
0B34: samp register_client_command "cmd" to_label @0

:2
wait 0
if
31@ == 1
jf @2
// code
jump @2

:0
if
31@ == 1
else_jump @1
31@ = 0
0ACD: show_text_highpriority "OFF" time 2000
SAMP.CmdRet

:1
31@ = 1
0ACD: show_text_highpriority "ON" time 2000
SAMP.CmdRet
 

ARMOR

Модератор по раксампу
Модератор
4,936
6,732
Научите работать с командами, как сделать что бы когда я написал команду /autoheal у меня активировался код, а когда еще раз напишу то деактевировался?
CLEO:
[/B]
{$CLEO}
0000:

:SAMPAv
wait 0
0AFA:  is_samp_available
jf @SAMPAv
0B34: samp register_client_command "autoheal" to_label @autoheal
0BDE: pause_thread 0@

:autoheal
0B43: samp cmd_ret
// пошло нахуй пойду в луа сделаю по образцу, хоть я и 0 в луа как и в клео
[B]
Смотри сделай просто две команды к примеру /on и /off и просто во втором лабеле сделай все наоборот(( Тип отключение ))
Смотри сделай просто две команды к примеру /on и /off и просто во втором лабеле сделай все наоборот(( Тип отключение ))
 

hnnssy

Известный
Друг
2,684
2,762
Научите работать с командами, как сделать что бы когда я написал команду /autoheal у меня активировался код, а когда еще раз напишу то деактевировался?
CLEO:
[/B]
{$CLEO}
0000:

:SAMPAv
wait 0
0AFA:  is_samp_available
jf @SAMPAv
0B34: samp register_client_command "autoheal" to_label @autoheal
0BDE: pause_thread 0@

:autoheal
0B43: samp cmd_ret
// пошло нахуй пойду в луа сделаю по образцу, хоть я и 0 в луа как и в клео
[B]
0@ = 0
reg_cmd "cmd" @cmd

while true
wait 0
if 0@ == 1
then
// code
end
end

:cmd
0B12: 0@ 0@ xor 1
cmd_ret
 

MAHEKEH

Известный
2,010
504
Как правильно юзать эти адреса?

//Health PosX - 0x58EE87
//Health PosY - 0x58EE68

{$CLEO .cs}
0000: NOP

:0
wait 0
//-
0A8C: write_memory 0x58EE87 size 2 value 333 virtual_protect 1
0A8C: write_memory 0x58EE68 size 2 value 333 virtual_protect 1
jump @0

пробовал запись \ считывание
какие то указатели
до этого угадывал размер значения ну это хня
проводил какие то хитрожопые манипуляции с переменными
еще чето делал
Короче упускаю что-то, возможно незначительное...как обычно
 

Lobber

Известный
178
57
Как правильно юзать эти адреса?

//Health PosX - 0x58EE87
//Health PosY - 0x58EE68

{$CLEO .cs}
0000: NOP

:0
wait 0
//-
0A8C: write_memory 0x58EE87 size 2 value 333 virtual_protect 1
0A8C: write_memory 0x58EE68 size 2 value 333 virtual_protect 1
jump @0

пробовал запись \ считывание
какие то указатели
до этого угадывал размер значения ну это хня
проводил какие то хитрожопые манипуляции с переменными
еще чето делал
Короче упускаю что-то, возможно незначительное...как обычно

Полагаю, это может помочь
CLEO:
{$CLEO .cs}

0000: NOP

wait 8500

{
    // Default Coords
    0AB1: @Health 3 X 141.0 Y 77.0 SizeX 569.0
    0AB1: @Armour 3 X 94.0 Y 48.0
    0AB1: @WeaponIcon 3 X 0.1734304577 Y 20.0 SizeY 58.0
    0AB1: @Money 2 Y 89.0 SizeX 0.5500000119
    0AB1: @HudRadarAndComponentsCoords 16 fRadarLeft 40.0 fRadarTop 104.0 fRadarWidth 94.0 fRadarHeight 76.0 fRadarRingPlaneHorzPad 18.0 fRadarRingPlaneVertPad 18.0 fAltimeterRadarLeft 40.0 fAltimeterRadarTop 104.0 fAltimeterRadarHeight 76.0 fAltimeterVertBarLeftMostRadarPos 20.0 fAltimeterVertBarLeftRadarPos 10.0 fAltimeterHorzBarLeftMostRadarPos 25.0 fAltimeterHorzBarLeftRadarPos 5.0 fAltimeterHorzBarHeight 2.0 fRadarDiscHorzMargin 4.0 fRadarDiscVertMargin 4.0
}

0AB1: @Health 3 X 497.5 Y 370.0 SizeX 569.0
0AB1: @Armour 3 X 450.0 Y 383.0
0AB1: @WeaponIcon 3 X 0.7334304142 Y 315.0 SizeY 80.0
0AB1: @Money 2 Y 400.0 SizeX 0.5500000119
0AB1: @RadarAndComponentsCoords 16 fRadarLeft 40.0 fRadarTop 104.0 fRadarWidth 94.0 fRadarHeight 76.0 fRadarRingPlaneHorzPad 18.0 fRadarRingPlaneVertPad 18.0 fAltimeterRadarLeft 40.0 fAltimeterRadarTop 104.0 fAltimeterRadarHeight 76.0 fAltimeterVertBarLeftMostRadarPos 20.0 fAltimeterVertBarLeftRadarPos 10.0 fAltimeterHorzBarLeftMostRadarPos 25.0 fAltimeterHorzBarLeftRadarPos 5.0 fAltimeterHorzBarHeight 2.0 fRadarDiscHorzMargin 4.0 fRadarDiscVertMargin 4.0
0AB1: @HudCloring 15 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00
0AB1: @RadarCloring 21 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0

while true
wait 0

end

:RadarCloring
0A8C: write_memory 0x58A9A2 size 1 value 0@ virtual_protect 0
0A8C: write_memory 0x58A99A size 1 value 1@ virtual_protect 0
0A8C: write_memory 0x58A996 size 1 value 2@ virtual_protect 0

0A8C: write_memory 0x58A8EE size 1 value 3@ virtual_protect 0
0A8C: write_memory 0x58A8E6 size 1 value 4@ virtual_protect 0
0A8C: write_memory 0x58A8DE size 1 value 5@ virtual_protect 0

0A8C: write_memory 0x58A89A size 1 value 6@ virtual_protect 0
0A8C: write_memory 0x58A896 size 1 value 7@ virtual_protect 0
0A8C: write_memory 0x58A894 size 1 value 8@ virtual_protect 0

0A8C: write_memory 0x58A798 size 1 value 9@ virtual_protect 0
0A8C: write_memory 0x58A790 size 1 value 10@ virtual_protect 0
0A8C: write_memory 0x58A78E size 1 value 11@ virtual_protect 0

0A8C: write_memory 0x582F20 size 1 value 12@ virtual_protect 0
0A8C: write_memory 0x582F1A size 1 value 13@ virtual_protect 0
0A8C: write_memory 0x582F18 size 1 value 14@ virtual_protect 0
// My pos icon
0A8C: write_memory 0x588691 size 1 value 15@ virtual_protect 0
0A8C: write_memory 0x58868C size 1 value 16@ virtual_protect 0
0A8C: write_memory 0x588687 size 1 value 17@ virtual_protect 0
// " N " circle icon
0A8C: write_memory 0x5860CD size 1 value 18@ virtual_protect 0
0A8C: write_memory 0x5860C2 size 1 value 19@ virtual_protect 0
0A8C: write_memory 0x5860BD size 1 value 20@ virtual_protect 0
0AB2: ret 0


:HudCloring
0A8C: write_memory 0xBAB22C size 4 value 0@ virtual_protect 0
0A8C: write_memory 0xBAB230 size 4 value 1@ virtual_protect 0
0A8C: write_memory 0xBAB234 size 4 value 2@ virtual_protect 0

0A8C: write_memory 0xBAB238 size 4 value 3@ virtual_protect 0
0A8C: write_memory 0xBAB23C size 4 value 4@ virtual_protect 0
0A8C: write_memory 0xBAB260 size 4 value 5@ virtual_protect 0

0A8C: write_memory 0xBAB240 size 4 value 6@ virtual_protect 0
0A8C: write_memory 0xBAB244 size 4 value 7@ virtual_protect 0
0A8C: write_memory 0xBAB248 size 4 value 8@ virtual_protect 0

0A8C: write_memory 0xBAB24C size 4 value 9@ virtual_protect 0
0A8C: write_memory 0xBAB250 size 4 value 10@ virtual_protect 0
0A8C: write_memory 0xBAB254 size 4 value 11@ virtual_protect 0

0A8C: write_memory 0xBAB258 size 4 value 12@ virtual_protect 0
0A8C: write_memory 0xBAB25C size 4 value 13@ virtual_protect 0
0A8C: write_memory 0xBAB260 size 4 value 14@ virtual_protect 0
0AB2: ret 0

:Money
0A8C: write_memory 0x866C88 size 4 value 0@ virtual_protect 0 // Y
0A8C: write_memory 0x866CAC size 4 value 1@ virtual_protect 0 // Size X
0AB2: ret 0

:Health
0A8C: write_memory 0x86535C size 4 value 0@ virtual_protect 0 // X
0A8C: write_memory 0x866CA8 size 4 value 1@ virtual_protect 0 // Y
0A8C: write_memory 0xB793E0 size 4 value 2@ virtual_protect 0 // Size X
0AB2: ret 0

:Armour
0A8C: write_memory 0x866B78 size 4 value 0@ virtual_protect 0 // X
0A8C: write_memory 0x862D38 size 4 value 1@ virtual_protect 0 // Y
0AB2: ret 0

:WeaponIcon
0A8C: write_memory 0x866C84 size 4 value 0@ virtual_protect 0 // X
0A8C: write_memory 0x858BA4 size 4 value 1@ virtual_protect 0 // Y
0A8C: write_memory 0x866C50 size 4 value 2@ virtual_protect 0 // Size Y
0AB2: ret 0

:RadarAndComponentsCoords
const
    fRadarLeft = 31@
    fRadarTop = 30@
    fRadarWidth = 29@
    fRadarHeight = 28@
    fRadarRingPlaneHorzPad = 27@
    fRadarRingPlaneVertPad = 26@
    fAltimeterRadarLeft               = 25@
    fAltimeterRadarTop                = 24@
    fAltimeterRadarHeight             = 23@
    fAltimeterVertBarLeftMostRadarPos = 22@
    fAltimeterVertBarLeftRadarPos     = 21@
    fAltimeterHorzBarLeftMostRadarPos = 22@
    fAltimeterHorzBarLeftRadarPos     = 21@
    fAltimeterHorzBarHeight           = 20@
    fRadarDiscHorzMargin              = 19@
    fRadarDiscVertMargin              = 18@
end

0AC6: 17@ = label @DefaultRadarAndComponentsCoords offset
0085: fRadarLeft = 17@
0A8C: write_memory fRadarLeft size 4 value 0@ virtual_protect 0
0A8E: fRadarTop = 17@ + 0x04
0A8C: write_memory fRadarTop size 4 value 1@ virtual_protect 0
0A8E: fRadarWidth = 17@ + 0x08
0A8C: write_memory fRadarWidth size 4 value 2@ virtual_protect 0
0A8E: fRadarHeight = 17@ + 0x0C
0A8C: write_memory fRadarHeight size 4 value 3@ virtual_protect 0
0A8E: fRadarRingPlaneHorzPad = 17@ + 0x10
0A8C: write_memory fRadarRingPlaneHorzPad size 4 value 4@ virtual_protect 0
0A8E: fRadarRingPlaneVertPad = 17@ + 0x14
0A8C: write_memory fRadarRingPlaneVertPad size 4 value 5@ virtual_protect 0
0A8E: fAltimeterRadarLeft = 17@ + 0x18
0A8C: write_memory fAltimeterRadarLeft size 4 value 6@ virtual_protect 0
0A8E: fAltimeterRadarTop = 17@ + 0x1C
0A8C: write_memory fAltimeterRadarTop size 4 value 7@ virtual_protect 0
0A8E: fAltimeterRadarHeight = 17@ + 0x20
0A8C: write_memory fAltimeterRadarHeight size 4 value 8@ virtual_protect 0
0A8E: fAltimeterVertBarLeftMostRadarPos = 17@ + 0x24
0A8C: write_memory fAltimeterVertBarLeftMostRadarPos size 4 value 9@ virtual_protect 0
0A8E: fAltimeterVertBarLeftRadarPos = 17@ + 0x28
0A8C: write_memory fAltimeterVertBarLeftRadarPos size 4 value 10@ virtual_protect 0
0A8E: fAltimeterHorzBarLeftMostRadarPos = 17@ + 0x2C
0A8C: write_memory fAltimeterHorzBarLeftMostRadarPos size 4 value 11@ virtual_protect 0
0A8E: fAltimeterHorzBarLeftRadarPos = 17@ + 0x30
0A8C: write_memory fAltimeterHorzBarLeftRadarPos size 4 value 12@ virtual_protect 0
0A8E: fAltimeterHorzBarHeight = 17@ + 0x34
0A8C: write_memory fAltimeterHorzBarHeight size 4 value 13@ virtual_protect 0
0A8E: fRadarDiscHorzMargin = 17@ + 0x38
0A8C: write_memory fRadarDiscHorzMargin size 4 value 14@ virtual_protect 0
0A8E: fRadarDiscVertMargin = 17@ + 0x3C// Map and sprites position relative to the radar rectangle.
0A8C: write_memory fRadarDiscVertMargin size 4 value 15@ virtual_protect 0
0A8C: write_memory 0x005834C2 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x005834D4 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x005834F6 size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x00583500 size 4 value fRadarTop virtual_protect 1// Radar ring plane rectangle.
0A8C: write_memory 0x0058A449 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A453 size 4 value fRadarRingPlaneHorzPad virtual_protect 1
0A8C: write_memory 0x0058A469 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A47D size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A489 size 4 value fRadarRingPlaneVertPad virtual_protect 1
0A8C: write_memory 0x0058A499 size 4 value fRadarTop virtual_protect 1// Altimeter rectangle.
0A8C: write_memory 0x0058A5E2 size 4 value fAltimeterRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A5F0 size 4 value fAltimeterVertBarLeftMostRadarPos virtual_protect 1
0A8C: write_memory 0x0058A60E size 4 value fAltimeterRadarTop virtual_protect 1
0A8C: write_memory 0x0058A620 size 4 value fAltimeterVertBarLeftRadarPos virtual_protect 1
0A8C: write_memory 0x0058A632 size 4 value fAltimeterRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A6E6 size 4 value fAltimeterRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A6F2 size 4 value fAltimeterHorzBarLeftMostRadarPos virtual_protect 1
0A8C: write_memory 0x0058A70E size 4 value fAltimeterRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A71E size 4 value fAltimeterRadarTop virtual_protect 1
0A8C: write_memory 0x0058A759 size 4 value fAltimeterHorzBarLeftRadarPos virtual_protect 1
0A8C: write_memory 0x0058A767 size 4 value fAltimeterHorzBarHeight virtual_protect 1// Upper-left radar disc rectangle.
0A8C: write_memory 0x0058A79B size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A7A9 size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A7C7 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A7D9 size 4 value fRadarDiscVertMargin virtual_protect 1
0A8C: write_memory 0x0058A7E9 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A801 size 4 value fRadarHeight virtual_protect 1// Upper-right radar disc rectangle.
0A8C: write_memory 0x0058A836 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A840 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A848 size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A868 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A87A size 4 value fRadarDiscVertMargin virtual_protect 1
0A8C: write_memory 0x0058A8AB size 4 value fRadarHeight virtual_protect 1// Lower-left radar disc rectangle.
0A8C: write_memory 0x0058A8E9 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A8F9 size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A913 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A921 size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A92D size 4 value fRadarDiscVertMargin virtual_protect 1
0A8C: write_memory 0x0058A943 size 4 value fRadarWidth virtual_protect 1// Lower-right radar disc rectangle.
0A8C: write_memory 0x0058A98A size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A99D size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A9AB size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A9C7 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A9D5 size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A9E1 size 4 value fRadarDiscVertMargin virtual_protect 1// Radar searchlight maximum width?
0A8C: write_memory 0x0058781B size 4 value fRadarWidth virtual_protect 1
0AB2: ret 0

:HudRadarAndComponentsCoords
hex
00002042 // ( 40.0f) fRadarLeft
0000D042 // (104.0f) fRadarTop
0000BC42 // ( 94.0f) fRadarWidth
00009842 // ( 76.0f) fRadarHeight
00009041 // ( 18.0f) fRadarRingPlaneHorzPad
00009041 // ( 18.0f) fRadarRingPlaneVertPad
00002042 // ( 40.0f) fAltimeterRadarLeft
0000D042 // (104.0f) fAltimeterRadarTop
00009842 // ( 76.0f) fAltimeterRadarHeight
0000A041 // ( 20.0f) fAltimeterVertBarLeftMostRadarPos
00002041 // ( 10.0f) fAltimeterVertBarLeftRadarPos
0000C841 // ( 25.0f) fAltimeterHorzBarLeftMostRadarPos
0000A040 // (  5.0f) fAltimeterHorzBarLeftRadarPos     // Unscaled, R* bug.
00000040 // (  2.0f) fAltimeterHorzBarHeight           // Unscaled, R* bug.
00008040 // (  4.0f) fRadarDiscHorzMargin
00008040 // (  4.0f) fRadarDiscVertMargin
end

UPD Для таких значений как WantedEmptyY и подобных нужно 2 байта, а не 4
UPD 2 Статья - http://ugbase.eu/index.php?threads/gta-sa-memories.21794/
Как правильно юзать эти адреса?
Ну, теперь и я полез в эти дебри, и решил кое-что подшаманить на своем худе, а именно положение звезд.
Но, столкнулся с рядом проблем, которые бессовестно съели мое время и никак не хотят решаться. Теперь этот вопрос возник и у меня.
Значится суть - есть адреса, по которым и стоит менять положение, а именно:

Wanted Active and Inactive PosX: 0x58DD0F
Wanted Inactive PosY: 0x58DFB3
Wanted Active PosY: 0x58DDFC
Wanted Active PosY 2: 0x58DEF5
Wanted Height 2: 0x58DCAA
Wanted Active Height: 0x58DD70
Wanted Inactive Height: 0x58DF5D
Wanted Width 2: 0x58DCC0
Wanted Active Width: 0x58DD86
Wanted Inactive Width: 0x58DF79
Wanted Space Between: 0x58DFED

Но, на этапе тестов, меня ждало одно разочарование, ибо адекватно это шляпа никак работать не хочет. Либо неадекватное отображение, либо черти где и как, либо вообще пропадает с экрана. Если тут найдется человек, который эту тему мне прояснит, было бы замечательно.
 
Последнее редактирование:
  • Вау
Реакции: MAHEKEH

MAHEKEH

Известный
2,010
504
Полагаю, это может помочь
CLEO:
{$CLEO .cs}

0000: NOP

wait 8500

{
    // Default Coords
    0AB1: @Health 3 X 141.0 Y 77.0 SizeX 569.0
    0AB1: @Armour 3 X 94.0 Y 48.0
    0AB1: @WeaponIcon 3 X 0.1734304577 Y 20.0 SizeY 58.0
    0AB1: @Money 2 Y 89.0 SizeX 0.5500000119
    0AB1: @HudRadarAndComponentsCoords 16 fRadarLeft 40.0 fRadarTop 104.0 fRadarWidth 94.0 fRadarHeight 76.0 fRadarRingPlaneHorzPad 18.0 fRadarRingPlaneVertPad 18.0 fAltimeterRadarLeft 40.0 fAltimeterRadarTop 104.0 fAltimeterRadarHeight 76.0 fAltimeterVertBarLeftMostRadarPos 20.0 fAltimeterVertBarLeftRadarPos 10.0 fAltimeterHorzBarLeftMostRadarPos 25.0 fAltimeterHorzBarLeftRadarPos 5.0 fAltimeterHorzBarHeight 2.0 fRadarDiscHorzMargin 4.0 fRadarDiscVertMargin 4.0
}

0AB1: @Health 3 X 497.5 Y 370.0 SizeX 569.0
0AB1: @Armour 3 X 450.0 Y 383.0
0AB1: @WeaponIcon 3 X 0.7334304142 Y 315.0 SizeY 80.0
0AB1: @Money 2 Y 400.0 SizeX 0.5500000119
0AB1: @RadarAndComponentsCoords 16 fRadarLeft 40.0 fRadarTop 104.0 fRadarWidth 94.0 fRadarHeight 76.0 fRadarRingPlaneHorzPad 18.0 fRadarRingPlaneVertPad 18.0 fAltimeterRadarLeft 40.0 fAltimeterRadarTop 104.0 fAltimeterRadarHeight 76.0 fAltimeterVertBarLeftMostRadarPos 20.0 fAltimeterVertBarLeftRadarPos 10.0 fAltimeterHorzBarLeftMostRadarPos 25.0 fAltimeterHorzBarLeftRadarPos 5.0 fAltimeterHorzBarHeight 2.0 fRadarDiscHorzMargin 4.0 fRadarDiscVertMargin 4.0
0AB1: @HudCloring 15 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00 ARGB 0xFF00FF00
0AB1: @RadarCloring 21 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0 RGB 0 255 0

while true
wait 0

end

:RadarCloring
0A8C: write_memory 0x58A9A2 size 1 value 0@ virtual_protect 0
0A8C: write_memory 0x58A99A size 1 value 1@ virtual_protect 0
0A8C: write_memory 0x58A996 size 1 value 2@ virtual_protect 0

0A8C: write_memory 0x58A8EE size 1 value 3@ virtual_protect 0
0A8C: write_memory 0x58A8E6 size 1 value 4@ virtual_protect 0
0A8C: write_memory 0x58A8DE size 1 value 5@ virtual_protect 0

0A8C: write_memory 0x58A89A size 1 value 6@ virtual_protect 0
0A8C: write_memory 0x58A896 size 1 value 7@ virtual_protect 0
0A8C: write_memory 0x58A894 size 1 value 8@ virtual_protect 0

0A8C: write_memory 0x58A798 size 1 value 9@ virtual_protect 0
0A8C: write_memory 0x58A790 size 1 value 10@ virtual_protect 0
0A8C: write_memory 0x58A78E size 1 value 11@ virtual_protect 0

0A8C: write_memory 0x582F20 size 1 value 12@ virtual_protect 0
0A8C: write_memory 0x582F1A size 1 value 13@ virtual_protect 0
0A8C: write_memory 0x582F18 size 1 value 14@ virtual_protect 0
// My pos icon
0A8C: write_memory 0x588691 size 1 value 15@ virtual_protect 0
0A8C: write_memory 0x58868C size 1 value 16@ virtual_protect 0
0A8C: write_memory 0x588687 size 1 value 17@ virtual_protect 0
// " N " circle icon
0A8C: write_memory 0x5860CD size 1 value 18@ virtual_protect 0
0A8C: write_memory 0x5860C2 size 1 value 19@ virtual_protect 0
0A8C: write_memory 0x5860BD size 1 value 20@ virtual_protect 0
0AB2: ret 0


:HudCloring
0A8C: write_memory 0xBAB22C size 4 value 0@ virtual_protect 0
0A8C: write_memory 0xBAB230 size 4 value 1@ virtual_protect 0
0A8C: write_memory 0xBAB234 size 4 value 2@ virtual_protect 0

0A8C: write_memory 0xBAB238 size 4 value 3@ virtual_protect 0
0A8C: write_memory 0xBAB23C size 4 value 4@ virtual_protect 0
0A8C: write_memory 0xBAB260 size 4 value 5@ virtual_protect 0

0A8C: write_memory 0xBAB240 size 4 value 6@ virtual_protect 0
0A8C: write_memory 0xBAB244 size 4 value 7@ virtual_protect 0
0A8C: write_memory 0xBAB248 size 4 value 8@ virtual_protect 0

0A8C: write_memory 0xBAB24C size 4 value 9@ virtual_protect 0
0A8C: write_memory 0xBAB250 size 4 value 10@ virtual_protect 0
0A8C: write_memory 0xBAB254 size 4 value 11@ virtual_protect 0

0A8C: write_memory 0xBAB258 size 4 value 12@ virtual_protect 0
0A8C: write_memory 0xBAB25C size 4 value 13@ virtual_protect 0
0A8C: write_memory 0xBAB260 size 4 value 14@ virtual_protect 0
0AB2: ret 0

:Money
0A8C: write_memory 0x866C88 size 4 value 0@ virtual_protect 0 // Y
0A8C: write_memory 0x866CAC size 4 value 1@ virtual_protect 0 // Size X
0AB2: ret 0

:Health
0A8C: write_memory 0x86535C size 4 value 0@ virtual_protect 0 // X
0A8C: write_memory 0x866CA8 size 4 value 1@ virtual_protect 0 // Y
0A8C: write_memory 0xB793E0 size 4 value 2@ virtual_protect 0 // Size X
0AB2: ret 0

:Armour
0A8C: write_memory 0x866B78 size 4 value 0@ virtual_protect 0 // X
0A8C: write_memory 0x862D38 size 4 value 1@ virtual_protect 0 // Y
0AB2: ret 0

:WeaponIcon
0A8C: write_memory 0x866C84 size 4 value 0@ virtual_protect 0 // X
0A8C: write_memory 0x858BA4 size 4 value 1@ virtual_protect 0 // Y
0A8C: write_memory 0x866C50 size 4 value 2@ virtual_protect 0 // Size Y
0AB2: ret 0

:RadarAndComponentsCoords
const
    fRadarLeft = 31@
    fRadarTop = 30@
    fRadarWidth = 29@
    fRadarHeight = 28@
    fRadarRingPlaneHorzPad = 27@
    fRadarRingPlaneVertPad = 26@
    fAltimeterRadarLeft               = 25@
    fAltimeterRadarTop                = 24@
    fAltimeterRadarHeight             = 23@
    fAltimeterVertBarLeftMostRadarPos = 22@
    fAltimeterVertBarLeftRadarPos     = 21@
    fAltimeterHorzBarLeftMostRadarPos = 22@
    fAltimeterHorzBarLeftRadarPos     = 21@
    fAltimeterHorzBarHeight           = 20@
    fRadarDiscHorzMargin              = 19@
    fRadarDiscVertMargin              = 18@
end

0AC6: 17@ = label @DefaultRadarAndComponentsCoords offset
0085: fRadarLeft = 17@
0A8C: write_memory fRadarLeft size 4 value 0@ virtual_protect 0
0A8E: fRadarTop = 17@ + 0x04
0A8C: write_memory fRadarTop size 4 value 1@ virtual_protect 0
0A8E: fRadarWidth = 17@ + 0x08
0A8C: write_memory fRadarWidth size 4 value 2@ virtual_protect 0
0A8E: fRadarHeight = 17@ + 0x0C
0A8C: write_memory fRadarHeight size 4 value 3@ virtual_protect 0
0A8E: fRadarRingPlaneHorzPad = 17@ + 0x10
0A8C: write_memory fRadarRingPlaneHorzPad size 4 value 4@ virtual_protect 0
0A8E: fRadarRingPlaneVertPad = 17@ + 0x14
0A8C: write_memory fRadarRingPlaneVertPad size 4 value 5@ virtual_protect 0
0A8E: fAltimeterRadarLeft = 17@ + 0x18
0A8C: write_memory fAltimeterRadarLeft size 4 value 6@ virtual_protect 0
0A8E: fAltimeterRadarTop = 17@ + 0x1C
0A8C: write_memory fAltimeterRadarTop size 4 value 7@ virtual_protect 0
0A8E: fAltimeterRadarHeight = 17@ + 0x20
0A8C: write_memory fAltimeterRadarHeight size 4 value 8@ virtual_protect 0
0A8E: fAltimeterVertBarLeftMostRadarPos = 17@ + 0x24
0A8C: write_memory fAltimeterVertBarLeftMostRadarPos size 4 value 9@ virtual_protect 0
0A8E: fAltimeterVertBarLeftRadarPos = 17@ + 0x28
0A8C: write_memory fAltimeterVertBarLeftRadarPos size 4 value 10@ virtual_protect 0
0A8E: fAltimeterHorzBarLeftMostRadarPos = 17@ + 0x2C
0A8C: write_memory fAltimeterHorzBarLeftMostRadarPos size 4 value 11@ virtual_protect 0
0A8E: fAltimeterHorzBarLeftRadarPos = 17@ + 0x30
0A8C: write_memory fAltimeterHorzBarLeftRadarPos size 4 value 12@ virtual_protect 0
0A8E: fAltimeterHorzBarHeight = 17@ + 0x34
0A8C: write_memory fAltimeterHorzBarHeight size 4 value 13@ virtual_protect 0
0A8E: fRadarDiscHorzMargin = 17@ + 0x38
0A8C: write_memory fRadarDiscHorzMargin size 4 value 14@ virtual_protect 0
0A8E: fRadarDiscVertMargin = 17@ + 0x3C// Map and sprites position relative to the radar rectangle.
0A8C: write_memory fRadarDiscVertMargin size 4 value 15@ virtual_protect 0
0A8C: write_memory 0x005834C2 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x005834D4 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x005834F6 size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x00583500 size 4 value fRadarTop virtual_protect 1// Radar ring plane rectangle.
0A8C: write_memory 0x0058A449 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A453 size 4 value fRadarRingPlaneHorzPad virtual_protect 1
0A8C: write_memory 0x0058A469 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A47D size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A489 size 4 value fRadarRingPlaneVertPad virtual_protect 1
0A8C: write_memory 0x0058A499 size 4 value fRadarTop virtual_protect 1// Altimeter rectangle.
0A8C: write_memory 0x0058A5E2 size 4 value fAltimeterRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A5F0 size 4 value fAltimeterVertBarLeftMostRadarPos virtual_protect 1
0A8C: write_memory 0x0058A60E size 4 value fAltimeterRadarTop virtual_protect 1
0A8C: write_memory 0x0058A620 size 4 value fAltimeterVertBarLeftRadarPos virtual_protect 1
0A8C: write_memory 0x0058A632 size 4 value fAltimeterRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A6E6 size 4 value fAltimeterRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A6F2 size 4 value fAltimeterHorzBarLeftMostRadarPos virtual_protect 1
0A8C: write_memory 0x0058A70E size 4 value fAltimeterRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A71E size 4 value fAltimeterRadarTop virtual_protect 1
0A8C: write_memory 0x0058A759 size 4 value fAltimeterHorzBarLeftRadarPos virtual_protect 1
0A8C: write_memory 0x0058A767 size 4 value fAltimeterHorzBarHeight virtual_protect 1// Upper-left radar disc rectangle.
0A8C: write_memory 0x0058A79B size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A7A9 size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A7C7 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A7D9 size 4 value fRadarDiscVertMargin virtual_protect 1
0A8C: write_memory 0x0058A7E9 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A801 size 4 value fRadarHeight virtual_protect 1// Upper-right radar disc rectangle.
0A8C: write_memory 0x0058A836 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A840 size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A848 size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A868 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A87A size 4 value fRadarDiscVertMargin virtual_protect 1
0A8C: write_memory 0x0058A8AB size 4 value fRadarHeight virtual_protect 1// Lower-left radar disc rectangle.
0A8C: write_memory 0x0058A8E9 size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A8F9 size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A913 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A921 size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A92D size 4 value fRadarDiscVertMargin virtual_protect 1
0A8C: write_memory 0x0058A943 size 4 value fRadarWidth virtual_protect 1// Lower-right radar disc rectangle.
0A8C: write_memory 0x0058A98A size 4 value fRadarLeft virtual_protect 1
0A8C: write_memory 0x0058A99D size 4 value fRadarWidth virtual_protect 1
0A8C: write_memory 0x0058A9AB size 4 value fRadarDiscHorzMargin virtual_protect 1
0A8C: write_memory 0x0058A9C7 size 4 value fRadarTop virtual_protect 1
0A8C: write_memory 0x0058A9D5 size 4 value fRadarHeight virtual_protect 1
0A8C: write_memory 0x0058A9E1 size 4 value fRadarDiscVertMargin virtual_protect 1// Radar searchlight maximum width?
0A8C: write_memory 0x0058781B size 4 value fRadarWidth virtual_protect 1
0AB2: ret 0

:HudRadarAndComponentsCoords
hex
00002042 // ( 40.0f) fRadarLeft
0000D042 // (104.0f) fRadarTop
0000BC42 // ( 94.0f) fRadarWidth
00009842 // ( 76.0f) fRadarHeight
00009041 // ( 18.0f) fRadarRingPlaneHorzPad
00009041 // ( 18.0f) fRadarRingPlaneVertPad
00002042 // ( 40.0f) fAltimeterRadarLeft
0000D042 // (104.0f) fAltimeterRadarTop
00009842 // ( 76.0f) fAltimeterRadarHeight
0000A041 // ( 20.0f) fAltimeterVertBarLeftMostRadarPos
00002041 // ( 10.0f) fAltimeterVertBarLeftRadarPos
0000C841 // ( 25.0f) fAltimeterHorzBarLeftMostRadarPos
0000A040 // (  5.0f) fAltimeterHorzBarLeftRadarPos     // Unscaled, R* bug.
00000040 // (  2.0f) fAltimeterHorzBarHeight           // Unscaled, R* bug.
00008040 // (  4.0f) fRadarDiscHorzMargin
00008040 // (  4.0f) fRadarDiscVertMargin
end

UPD Для таких значений как WantedEmptyY и подобных нужно 2 байта, а не 4
UPD 2 Статья - http://ugbase.eu/index.php?threads/gta-sa-memories.21794/

Ну, теперь и я полез в эти дебри, и решил кое-что подшаманить на своем худе, а именно положение звезд.
Но, столкнулся с рядом проблем, которые бессовестно съели мое время и никак не хотят решаться. Теперь этот вопрос возник и у меня.
Значится суть - есть адреса, по которым и стоит менять положение, а именно:

Wanted Active and Inactive PosX: 0x58DD0F
Wanted Inactive PosY: 0x58DFB3
Wanted Active PosY: 0x58DDFC
Wanted Active PosY 2: 0x58DEF5
Wanted Height 2: 0x58DCAA
Wanted Active Height: 0x58DD70
Wanted Inactive Height: 0x58DF5D
Wanted Width 2: 0x58DCC0
Wanted Active Width: 0x58DD86
Wanted Inactive Width: 0x58DF79
Wanted Space Between: 0x58DFED

Но, на этапе тестов, меня ждало одно разочарование, ибо адекватно это шляпа никак работать не хочет. Либо неадекватное отображение, либо черти где и как, либо вообще пропадает с экрана. Если тут найдется человек, который эту тему мне прояснит, было бы замечательно.

В теме то что ты скинул действительно рабочие адреса, как не переворачивай всё работает прекрасно
правда часто чего то не хватает, к примеру позиции денег по Х

я же пробовал работать с адресами из этой темы, и ни один из них не поддается какой то адекватной обработке
макс чего я добился это стирание с экрана элементов худа
@S E V E N расскажешь?
 

_razor

t.me/sssecretway | ТГК: t.me/razor_code
Всефорумный модератор
1,943
3,190
В теме то что ты скинул действительно рабочие адреса, как не переворачивай всё работает прекрасно
правда часто чего то не хватает, к примеру позиции денег по Х

я же пробовал работать с адресами из этой темы, и ни один из них не поддается какой то адекватной обработке
макс чего я добился это стирание с экрана элементов худа
@S E V E N расскажешь?
Прочитай этот адрес, и в полученые значения записывай значения
 

_razor

t.me/sssecretway | ТГК: t.me/razor_code
Всефорумный модератор
1,943
3,190
пробовал, на 1-2 элемент пропадает
на 3+ value игра крашит, ну это понятно
щас попробую на 0.1 единицах поредачить
Проблема в том, что в адреса нужно записывать ссылки на переменные, в С++:
float Value = 228.0f; *reinterpret_cast(0x58F5FC) = &Value;
(Пример редактирования координаты денег по X)
 
  • Вау
Реакции: MAHEKEH