#126 Re: Программирование » Вызов функций Delphi? » 29-08-2010 04:32

Тут кто-то знает? Но не пишет?

#129 Re: Работа с памятью, EXE » функция которя добовляет оружие играку VC. » 28-08-2010 14:38

Указатель на актера, на объект(класса) или как?

#132 Re: О сайте и форумах » Вопросы и предложения » 26-06-2010 10:48

А как достичь высокой посещаемости на форуме?
Ну создал тему через день только может кто ответит.

#134 Работа с памятью, EXE » Не загружается фон VC » 26-06-2010 04:25

VintProg_Pro
Replies: 0

Вот есть функция:

 load_txd_fronten1 proc near             ; CODE XREF: sub_458EC0+58Dp
.text:00580CF0                                         ; sub_4A3A34+B0p ...
.text:00580CF0
.text:00580CF0 arg_0           = dword ptr  4
.text:00580CF0 arg_4           = dword ptr  8
.text:00580CF0
.text:00580CF0                 push    ebx
.text:00580CF1                 push    esi
.text:00580CF2                 push    edi
.text:00580CF3                 push    ebp
.text:00580CF4                 push    1
.text:00580CF6                 xor     bl, bl
.text:00580CF8                 mov     ebp, [esp+14h+arg_0]
.text:00580CFC                 mov     edi, [esp+14h+arg_4]
.text:00580D00                 call    sub_63F020
.text:00580D05                 pop     ecx
.text:00580D06
.text:00580D06 loc_580D06:                             ; CODE XREF: load_txd_fronten1+27j
.text:00580D06                 push    edi
.text:00580D07                 push    1
.text:00580D09                 push    2
.text:00580D0B                 call    sub_645A10
.text:00580D10                 mov     esi, eax
.text:00580D12                 add     esp, 0Ch
.text:00580D15                 test    esi, esi
.text:00580D17                 jz      short loc_580D06
.text:00580D19                 test    esi, esi
.text:00580D1B                 jz      short loc_580D7E
.text:00580D1D                 mov     eax, ds:dword_9B6A54
.text:00580D22                 mov     ecx, eax
.text:00580D24                 mov     ebx, [ecx+4]
.text:00580D27                 movzx   edx, byte ptr [ebx+ebp]
.text:00580D2B                 and     edx, 80h
.text:00580D31                 jz      short loc_580D37
.text:00580D33                 xor     edi, edi
.text:00580D35                 jmp     short loc_580D43
.text:00580D37 ; ---------------------------------------------------------------------------
.text:00580D37
.text:00580D37 loc_580D37:                             ; CODE XREF: load_txd_fronten1+41j
.text:00580D37                 mov     ecx, ebp
.text:00580D39                 lea     edi, [ecx+ecx*8]
.text:00580D3C                 lea     edi, [edi+edi*2]
.text:00580D3F                 add     edi, ecx
.text:00580D41                 add     edi, [eax]
.text:00580D43
.text:00580D43 loc_580D43:                             ; CODE XREF: load_txd_fronten1+45j
.text:00580D43                 push    0
.text:00580D45                 push    0
.text:00580D47                 push    16h
.text:00580D49                 push    esi
.text:00580D4A                 call    sub_64FB10
.text:00580D4F                 add     esp, 10h
.text:00580D52                 test    eax, eax
.text:00580D54                 jz      short loc_580D67
.text:00580D56                 push    esi
.text:00580D57                 call    sub_61E6F0
.text:00580D5C                 mov     [edi], eax
.text:00580D5E                 cmp     dword ptr [edi], 0
.text:00580D61                 setnz   bl
.text:00580D64                 pop     ecx
.text:00580D65                 jmp     short loc_580D74
.text:00580D67 ; ---------------------------------------------------------------------------
.text:00580D67
.text:00580D67 loc_580D67:                             ; CODE XREF: load_txd_fronten1+64j
.text:00580D67                 push    offset aFailedToLoadTx ; "Failed to load TXD\n"
.text:00580D6C                 call    nullsub_1
.text:00580D71                 xor     bl, bl
.text:00580D73                 pop     ecx
.text:00580D74
.text:00580D74 loc_580D74:                             ; CODE XREF: load_txd_fronten1+75j
.text:00580D74                 push    0
.text:00580D76                 push    esi
.text:00580D77                 call    sub_645940
.text:00580D7C                 pop     ecx
.text:00580D7D                 pop     ecx
.text:00580D7E
.text:00580D7E loc_580D7E:                             ; CODE XREF: load_txd_fronten1+2Bj
.text:00580D7E                 mov     al, bl
.text:00580D80                 pop     ebp
.text:00580D81                 pop     edi
.text:00580D82                 pop     esi
.text:00580D83                 pop     ebx
.text:00580D84                 retn
.text:00580D84 load_txd_fronten1 endp
.text:00580D84

В псевдо коде:

char __cdecl load_txd_fronten1(int a1, int a2)
{
  char v2; // bl@1
  int v3; // eax@2
  int v4; // esi@2
  int v5; // edi@5

  v2 = 0;
  sub_63F020(1);
  do
  {
    v3 = sub_645A10(2, 1, a2);
    v4 = v3;
  }
  while ( !v3 );
  if ( v3 )
  {
    if ( *(_BYTE *)(*(_DWORD *)(dword_9B6A54 + 4) + a1) & 0x80 )
      v5 = 0;
    else
      v5 = *(_DWORD *)dword_9B6A54 + 28 * a1;
    if ( sub_64FB10(v3, 22, 0, 0) )
    {
      *(_DWORD *)v5 = sub_61E6F0(v4);
      v2 = *(_DWORD *)v5 != 0;
    }
    else
    {
      nullsub_1();
      v2 = 0;
    }
    sub_645940(v4, 0);
  }
  return v2;
}

Сделал так:
Load_backrounf : procedure(FileName : pchar; i : integer); cdecl;


    @Load_backrounf := PCardinal($00580CF0);
     Load_backrounf('MODELS\my_fronten1.TXD',1);

Не хочит загружать? В чем тут проблема, помогите пожалуйста.

#135 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 26-06-2010 02:05

void _wstrcpy (WORD * pDst, WORD * pSrc) {
  while (*pSrc)
    *pDst++ = *pSrc++;
  *pDst = 0;
}

А для Delphi это как выглядить будет???

#137 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 25-06-2010 12:02

listener
А как ты параметры правильные узнал?

#138 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 25-06-2010 08:54

А вот еще как определить парамметры данной процедуры для дельфи?

Если это под псевдокодом выглядиь вот так:

int __cdecl sub_5857E0(int a1, int a2)
{
  int result; // eax@1
  int i; // ecx@1
  __int16 v4; // dx@3

  result = a2;
  for ( i = a1; ; i += 2 )
  {
    v4 = *(_WORD *)result;
    if ( !*(_WORD *)result )
      break;
    result += 2;
    *(_WORD *)i = v4;
  }
  *(_WORD *)i = 0;
  return result;
}

Помогите пожалуйста.

#139 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 24-06-2010 11:42

Set_health_value_color : procedure(a, r, g, b : byte) cdecl;


Set_health_value_color proc near        ; CODE XREF: sub_429FE0+12Dp
.text:00541590                                         ; sub_429FE0+1E7p ...
.text:00541590
.text:00541590 arg_0           = byte ptr  4
.text:00541590 arg_4           = byte ptr  8
.text:00541590 arg_8           = byte ptr  0Ch
.text:00541590 arg_C           = byte ptr  10h
.text:00541590
.text:00541590                 mov     eax, ecx
.text:00541592                 mov     cl, [esp+arg_0]
.text:00541596                 mov     [eax], cl
.text:00541598                 mov     dl, [esp+arg_4]
.text:0054159C                 mov     [eax+1], dl
.text:0054159F                 mov     cl, [esp+arg_8]
.text:005415A3                 mov     [eax+2], cl
.text:005415A6                 mov     dl, [esp+arg_C]
.text:005415AA                 mov     [eax+3], dl
.text:005415AD                 retn    10h
.text:005415AD Set_health_value_color endp
    @Set_health_value_color := Ptr($00541590);
      Set_health_value_color(Random(254),Random(254),Random(254),Random(254));

Не хочит менять цвета почему???

#140 Работа с памятью, EXE » функция которя добовляет оружие играку VC. » 24-06-2010 11:24

VintProg_Pro
Replies: 7

Кто знает адрес функции которая добавляет определенное оружие играку, и сколько там параметров?

#142 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 24-06-2010 10:44

Пацаны, вот еще проблемка, через арт манию цвет меняется в памяти $00558BBF, а через плагин нет PByte($00558BBF)^ := 55;
Почему?

#143 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 24-06-2010 10:25

Все пацаны!!! я разабрался, спасибо всем за подержку!!!

#144 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 24-06-2010 10:16

Что значит статика/нестатика?

Но статика когда ты патчиш, статический exe, а Динамически(Не статика) когда патчиш память.

#145 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 24-06-2010 10:07

В статику вместо фиксированного значения цвета можно подставить свой адрес памяти, в котором в любой момент времени можно переписать значение.

Den_spb

А можно по подробний, как это делается.

#146 Re: Работа с памятью, EXE » Значение цвета хелсов VC. » 24-06-2010 09:53

Так мне нужно в памяти. А это статика.

#148 Работа с памятью, EXE » Значение цвета хелсов VC. » 24-06-2010 09:19

VintProg_Pro
Replies: 18

Ребята подскажите где находится в памяти значение цвета хелсов, я пробывал исать не смог найти, в статике нашол вот они:

Цвет Health Value
-----------------------------------------------------
001587BA -  (255)
001587BF - R (225)
001587C4 - G (150)
001587C9 - B (255)

А в памяти не могу найти, очень надо, заранее спасибо. Только для gta-vc.exe 1.1

#149 Re: Работа с памятью, EXE » Адрес памяти для 00BC: show_text_highpriority » 24-06-2010 09:16

Ребята спасибо вам большое!!!

Только как будет это выглядить для DELPHI, Как это в дельфи определить.

Board footer

Powered by FluxBB