Quantcast

Jump to content

» «
Photo

is it possible to change..

9 replies to this topic
Danikov
  • Danikov

    The Fake Russian

  • Members
  • Joined: 27 Aug 2009
  • Israel

#1

Posted 06 November 2013 - 02:52 PM

I wanted to know,is it possible to change the velocity of the rocket projectile(Both Normal and Homing ones)? if it,how can I do it?


Jack
  • Jack

    firearms and adrenaline

  • Feroci
  • Joined: 06 Dec 2011
  • Colombia

#2

Posted 06 November 2013 - 08:00 PM

I remember I've found some memory address in III other section that can do what you want but I don't know the page number of SA memory addresses so go there and have a look  :).


Danikov
  • Danikov

    The Fake Russian

  • Members
  • Joined: 27 Aug 2009
  • Israel

#3

Posted 22 November 2013 - 05:09 PM

Been searching in the whole main.scm file,and didn't manage to find this...


Jack
  • Jack

    firearms and adrenaline

  • Feroci
  • Joined: 06 Dec 2011
  • Colombia

#4

Posted 22 November 2013 - 06:01 PM

Did I say main.scm? No I didn't. I meant here:

http://gtaforums.com...emory-adresses/


Danikov
  • Danikov

    The Fake Russian

  • Members
  • Joined: 27 Aug 2009
  • Israel

#5

Posted 22 November 2013 - 09:13 PM

I took a look first in the main.scm,and I guess I have misread your reply somehow,thanks,will take a look in the memory adresses topic.

ED-E
  • ED-E

    War. War never changes.

  • Members
  • Joined: 31 May 2010
  • United-Kingdom

#6

Posted 23 November 2013 - 08:31 AM Edited by ChopTheDog., 23 November 2013 - 08:35 AM.

Here's the Rocket pool information for SA.

Rockets
The rocket pool contains info on launched rockets (for example, Hydra rockets).
0xC891A8 - Rocket pool start. Each slot has 36 bytes of data. There are 32 elements in the pool.
+0 = [dword] Rocket type:
16 = none
17 = tear gas
19 = normal
20 = heatseeking
39 = remote explosives
58 = flare
+4 = [dword] Pointer to launching entity
+8 = [dword] Pointer to target vehicle (when heatseeking), 0 otherwise
+16 = [byte] Does rocket exist?
0 = exploded/does not exist
1 = travelling
+20 = [float] X-axis position
+24 = [float] Y-axis position
+28 = [float] Z-axis position

Using the two opcodes below you can read from and write to the above memory.

0A8D: $result = read_memory 1@ size 4 virtual_protect 0
0A8C: write_memory 0xC0BC15 size 1 value 1 virtual_protect 0

Danikov
  • Danikov

    The Fake Russian

  • Members
  • Joined: 27 Aug 2009
  • Israel

#7

Posted 23 November 2013 - 08:47 AM

Thank you for this.
I thought modifying rocket velocity would be easier,but this seems beyond my understanding of coding,which is very minimal...
Hopefully,I'll be able to do something with this in the future.

Please lock.

ED-E
  • ED-E

    War. War never changes.

  • Members
  • Joined: 31 May 2010
  • United-Kingdom

#8

Posted 23 November 2013 - 01:37 PM Edited by ChopTheDog., 23 November 2013 - 01:43 PM.

I think it goes something like this:

 

Example snippet (I've written this using notepad since I don't have SA or SB installed so forgive me if I'm incorrect, one of the pros will have to correct me):

 

{CLEO}
0000:
 
:0
1@ = 0xC891A8
1@ += 16
0A8D: $RocketExist = read_memory 1@ size 4 virtual_protect 0
 
:1
wait 0
if
$RocketExist == 1
jf @1
 
:2
2@ = 0xC891A8
2@ += 20
0A8D: $RocketVel = read_memory 2@ size 4 virtual_protect 0
 
:3
$RocketVel = 100 //Chose a random number, specifies the velocity you want the rocket to have
 
//Clean up here, Don't have the opcode database to hand.
jump @0

 

 

Again I need to clarify that this could be 100% wrong but there's no harm in trying.


aStiffSausage
  • aStiffSausage

    Formerly Oksu

  • Members
  • Joined: 30 Sep 2010
  • Finland

#9

Posted 24 November 2013 - 12:49 AM

Well, there is Ryosuke's Missile script, which only works on CLEO 3 (at the moment). You can get it from here. So far, it'd be your easiest choice.

@ChopTheDog

There's no documentation of rocket velocity in that pool, I'd say the pool doesn't store information which will stay constant on same type of missiles, thus that is why there is X-axis position which you tried to write with integer instead of original float value. :p (And it would only get handle of one rocket which is in the first handle of the pool.)


ED-E
  • ED-E

    War. War never changes.

  • Members
  • Joined: 31 May 2010
  • United-Kingdom

#10

Posted 24 November 2013 - 07:30 PM

@ChopTheDog

There's no documentation of rocket velocity in that pool, I'd say the pool doesn't store information which will stay constant on same type of missiles, thus that is why there is X-axis position which you tried to write with integer instead of original float value. :p (And it would only get handle of one rocket which is in the first handle of the pool.)

 

Ah, I see.  :sui:





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users