#4951 19-02-2018 20:31

4lifeGTA
Registered: 28-01-2018
Posts: 23

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

trashmas, да логически оно так, в любом случае я нашел альтернативный вариант cool

Но вопрос маится, знатоки подскажите, те деньги(количество) что снимаются в покрасочной(P&S), они где? В Main.scm искать или это из gta_sa.exe?

Offline

#4952 20-02-2018 06:44

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

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

4lifeGTA wrote:

trashmas, да логически оно так, в любом случае я нашел альтернативный вариант cool

Но вопрос маится, знатоки подскажите, те деньги(количество) что снимаются в покрасочной(P&S), они где? В Main.scm искать или это из gta_sa.exe?

В exe.
7gQ0qFJ.png


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#4953 20-02-2018 16:16

4lifeGTA
Registered: 28-01-2018
Posts: 23

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

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

Offline

#4954 20-02-2018 17:20

Shag
Registered: 29-03-2010
Posts: 147
Website

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

Nikita592 wrote:

Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?

В VC это функция
5778B0                         ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)

В SA вроде
70CE30                             ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)

Offline

#4955 21-02-2018 08:35

Nikita592
Registered: 14-06-2017
Posts: 36

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

Shag wrote:
Nikita592 wrote:

Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?

В VC это функция
5778B0                         ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)

В SA вроде
70CE30                             ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)

Shag, спасибо, но как этим пользоваться? Использовать опкод 0A8D? Если да, то как? Просто я в памяти игры плохо разбираюсь, и как пользоваться  этим адресом памяти я не знаю.

Offline

#4956 21-02-2018 20:03

Shag
Registered: 29-03-2010
Posts: 147
Website

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

Nikita592 wrote:
Shag wrote:
Nikita592 wrote:

Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?

В VC это функция
5778B0                         ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)

В SA вроде
70CE30                             ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)

Shag, спасибо, но как этим пользоваться? Использовать опкод 0A8D? Если да, то как? Просто я в памяти игры плохо разбираюсь, и как пользоваться  этим адресом памяти я не знаю.

А для какой игры? Если для VC - могу накатать код на досуге(я не профи, так что для меня это работка на несколько часов, т.к. я всегда допускаю какие-нибудь ошибки и приходится тестировать по-нескольку раз), но вообще я работаю над новыми опкодами для Вайса, и этот опкод тоже в планах на добавление.

Если для SA - то навряд ли смогу помочь, т.к. с ней не работаю(даже в функции для неё не уверен).

UPD:
А, нашел всё же инфу по СА:
https://sannybuilder.com/forums/viewtop … 8988#p8988

Last edited by Shag (21-02-2018 20:05)

Offline

#4957 21-02-2018 22:44

Nikita592
Registered: 14-06-2017
Posts: 36

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

Shag wrote:
Nikita592 wrote:
Shag wrote:
Nikita592 wrote:

Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?

В VC это функция
5778B0                         ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)

В SA вроде
70CE30                             ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)

Shag, спасибо, но как этим пользоваться? Использовать опкод 0A8D? Если да, то как? Просто я в памяти игры плохо разбираюсь, и как пользоваться  этим адресом памяти я не знаю.

А для какой игры? Если для VC - могу накатать код на досуге(я не профи, так что для меня это работка на несколько часов, т.к. я всегда допускаю какие-нибудь ошибки и приходится тестировать по-нескольку раз), но вообще я работаю над новыми опкодами для Вайса, и этот опкод тоже в планах на добавление.

Если для SA - то навряд ли смогу помочь, т.к. с ней не работаю(даже в функции для неё не уверен).

UPD:
А, нашел всё же инфу по СА:
https://sannybuilder.com/forums/viewtop … 8988#p8988

Shag, спасибо. Для SA хочу это всё сделать.

Offline

#4958 23-02-2018 07:49

egor230
Registered: 13-07-2017
Posts: 7

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

Для sa есть адреса функцией для загрузки слота и сохранение в него без входа в меню.
Возможно, нужно поискать его в базе.
Для vc нашел.
{$CLEO .cs}
0000:
:1
wait 0
if and
0038: $onmission == 0 // integer values
80DF: not actor $player_actor driving
0AB0: key_pressed 0x74 // f5
jf @1
05E1: call 6412464 num_params 1 pop 0 0 // 0 это первый слот
wait 500 ms 0acd: show_text_high_priority "Save game" time 1000
jump @1

Last edited by egor230 (23-02-2018 07:59)

Offline

#4959 23-02-2018 12:38

egor230
Registered: 13-07-2017
Posts: 7

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

Здравствуйте, всем.
Хочу сделать гараж, где был гараж Джонса Кэма в миссии "работе".
Не получается, подскажите, пожалуйста.

{$CLEO}              
0000:
:1 
wait 0           
if 0AB0: key_pressed 0x41 // a
jf @1                                         
0219: 0@ = create_garage_type 2 door -852.82 -898.73 11.103 to -901.78 -904.66 14.103 depth -852.830 -897.225
gosub @open
03BB: set_garage 0@ door_type_to_swing_open 
03DA: set_garage 0@ camera_follows_player 
//057A: set_garage 0@ max_cars_to 1      
//02FA: garage 0@ change_to_type 16 
jump @1                     
:open
0AE3: 3@ = random_object_near_point -836.77 -901.84 12.05 in_radius 5.0 find_next 0 //IF and SET    
for 4@ = 1 to 100 
034E: move_object 3@ to -837.13 -901.67 15.95 speed 0.0 0.0 0.05 collision_check 0 
wait 4
end                                          
return       
/* 
1 конец гаража коор x                 
2 начала гаража  правая сторона коор y

то 1 начала гаража коор x
то 2 начала гаража левая сторона коор y
depth правый дальный угол

Offline

#4960 25-02-2018 10:46

Shag
Registered: 29-03-2010
Posts: 147
Website

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

egor230
Ответил здесь.

Offline

#4961 25-02-2018 10:53

xISRAPILx
Registered: 25-02-2018
Posts: 4

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

Помогите, никак не могу вывести координаты в чат. Пишет тупо "Координаты точки: X:  Y:  Z:", без указания самих координат.

{$CLEO .cs}

if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end

while not SAMP.Available()
    wait 100
end

0B34: samp register_client_command "cpp" to_label @cpp

0BDE: pause_thread 0

:cpp
if call @is_racecp_active 0 
then  
    call @get_racecp_pos 0 X 1@ Y 2@ Z 3@
    0AF8: samp add_message_to_chat "Координаты точки: X: %f Y: %f Z: %f" color 0xFFFFFF 1@ 2@ 3@
else
    0AF8: samp add_message_to_chat "Точка не найдена!" color 0xFFFFFF
end
samp.CmdRet()

:is_racecp_active
if 0AA2: 0@ = loadlib "samp.dll" 
then 
    0A8E: 1@ = 0@ + 0x21A10C
    0A8D: 1@ = readMem 1@ sz 4 vp 0
    1@ += 0x49
    0A8D: 1@ = readMem 1@ sz 4 vp 0
    if 1@ == true 
    then 
        0485:  return_true
    else 
        059A:  return_false
    end
    
    0AA3: freelib 0@
end 
0AB2: ret 0

:get_racecp_pos
if 0AA2: 0@ = loadlib "samp.dll" 
then 
    0A8E: 1@ = 0@ + 0x21A10C
    0A8D: 1@ = readMem 1@ sz 4 vp 0
    1@ += 0x2C
    0A8D: 2@ = readMem 1@ sz 4 vp 0
    1@ += 0x4
    0A8D: 3@ = readMem 1@ sz 4 vp 0
    1@ += 0x4
    0A8D: 4@ = readMem 1@ sz 4 vp 0
    0AA3: freelib 0@
end 
0AB2: ret 3 2@ 3@ 4@

Offline

#4962 25-02-2018 13:36

Shag
Registered: 29-03-2010
Posts: 147
Website

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

xISRAPILx wrote:

не могу вывести координаты в чат

Это не форум по samp. Грязный читерский стафф обсуждается в других местах.

Offline

#4963 25-02-2018 14:07

xISRAPILx
Registered: 25-02-2018
Posts: 4

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

Shag wrote:
xISRAPILx wrote:

не могу вывести координаты в чат

Это не форум по samp. Грязный читерский стафф обсуждается в других местах.

Ало, где ты тут читы видишь? Я только учусь, пробую что-то писать. Ты в получении координат точки видишь читы? Боже...

Offline

#4964 25-02-2018 15:06

Shag
Registered: 29-03-2010
Posts: 147
Website

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

xISRAPILx wrote:

Ало, где ты тут читы видишь? Я только учусь, пробую что-то писать. Ты в получении координат точки видишь читы? Боже...

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

Offline

#4965 25-02-2018 15:13

xISRAPILx
Registered: 25-02-2018
Posts: 4

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

Shag wrote:
xISRAPILx wrote:

Ало, где ты тут читы видишь? Я только учусь, пробую что-то писать. Ты в получении координат точки видишь читы? Боже...

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

Чем получение координат мешает игре, другим игрокам? Это же глупо... Лучше бы помог, чем спорить не зная сути. Буду благодарен.  :-D

Offline

#4966 25-02-2018 16:02

Shag
Registered: 29-03-2010
Posts: 147
Website

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

xISRAPILx wrote:

Чем получение координат мешает игре, другим игрокам? Это же глупо... Лучше бы помог, чем спорить не зная сути. Буду благодарен.  :-D

При чем здесь "чем мешает"? Получая доступ к информации, которую сервер не предоставляет добровольно, ты получаешь преимущество над другими игроками. Это и есть читерство. Кого ты пытаешься обмануть?

Offline

#4967 25-02-2018 16:08

xISRAPILx
Registered: 25-02-2018
Posts: 4

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

Shag wrote:
xISRAPILx wrote:

Чем получение координат мешает игре, другим игрокам? Это же глупо... Лучше бы помог, чем спорить не зная сути. Буду благодарен.  :-D

При чем здесь "чем мешает"? Получая доступ к информации, которую сервер не предоставляет добровольно, ты получаешь преимущество над другими игроками. Это и есть читерство. Кого ты пытаешься обмануть?

Извини, но... Какое нахуй преимущество тебе дает знание координат точки? Ты головой подумай, это просто цифры, это никакого преимущества не дает тебе...
Ебать, именно по-этому кодеры не любят русские форумы.

Offline

#4968 25-02-2018 18:34

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

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

xISRAPILx, с вопросами по SAMP - на форумы по SAMP. Буду благодарен.


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#4969 26-02-2018 11:03

egor230
Registered: 13-07-2017
Posts: 7

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

Shag wrote:

egor230
Ответил здесь.

спасибо большое,  Вы очень помогли.

Offline

#4970 07-03-2018 14:05

trashmas
Registered: 12-04-2016
Posts: 41

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

В клео возможно сделать что бы несколько клео скриптов работали одновременно, при этом взаимодействовали друг с другом? Например один поток проверяет если актер, созданный в другом потоке, умер. Я знаю что есть "передача" переменных при создании потока, а есть опкод просто на импорт/экспорт переменных? Типа "write_lvars 5@ 6@ 7@ from_thread "hello" to 0@ 1@ 2@" ну думаю ясно.

Конкретно интересует VC

Last edited by trashmas (07-03-2018 14:07)

Offline

#4971 07-03-2018 19:25

mfisto
From: Russia Perm
Registered: 01-02-2008
Posts: 558
Website

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

Через память только, находишь скрипт в памяти по имени (можешь через опкод) и вперед...


I know everything and nothing...

Offline

#4972 09-03-2018 09:42

Chel555
Registered: 25-07-2015
Posts: 38

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

Всем привет! У меня возник вопрос можно ли как то CLEO скриптом  убрать вылет когда спавнишь много транспорта за 1 сеанс игры? Например на моем тесте игра крашнула как я подряд заспавнил 83 транспорт

Offline

#4973 09-03-2018 16:23

Shag
Registered: 29-03-2010
Posts: 147
Website

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

Chel555 wrote:

Всем привет! У меня возник вопрос можно ли как то CLEO скриптом  убрать вылет когда спавнишь много транспорта за 1 сеанс игры? Например на моем тесте игра крашнула как я подряд заспавнил 83 транспорт

Ты имеешь в виду одновременное присутствие вблизи игрока? Если да, то тут пока тухляк, но у меня есть небольшой прогресс(правда с педами и в вайсе), так что как разберусь окончательно - попробую раскопать что-нибудь и для са.

Offline

#4974 09-03-2018 16:44

Chel555
Registered: 25-07-2015
Posts: 38

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

Shag wrote:
Chel555 wrote:

Всем привет! У меня возник вопрос можно ли как то CLEO скриптом  убрать вылет когда спавнишь много транспорта за 1 сеанс игры? Например на моем тесте игра крашнула как я подряд заспавнил 83 транспорт

Ты имеешь в виду одновременное присутствие вблизи игрока? Если да, то тут пока тухляк, но у меня есть небольшой прогресс(правда с педами и в вайсе), так что как разберусь окончательно - попробую раскопать что-нибудь и для са.

ты прав CLEO уже не выдерживает, зато MoonLoader выдерживает https://youtu.be/R2RJ-pyWSQo

Offline

#4975 10-03-2018 10:15

kenking
From: Казахстан
Registered: 28-06-2010
Posts: 253

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

Chel555 wrote:

ты прав CLEO уже не выдерживает, зато MoonLoader выдерживает

А причём здесь CLEO?

Offline

Board footer

Powered by FluxBB