Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Summer Special
      2. The Diamond Casino Heist
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Frontier Pursuits
      2. Find Lobbies & Outlaws
      3. Help & Support
    3. Crews

    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. Grand Theft Auto Series

    2. GTA VI

      1. St. Andrews Cathedral
    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
    6. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
    7. GTA III

      1. Guides & Strategies
      2. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    3. Gangs

    1. Announcements

    2. Support

    3. Suggestions

Opius

GTA:SA Opcodes

Recommended Posts

PLPynton

@Beep actually you have been asking for that:

 

But get the xyz coordinates from where the player/actor is shooting.
and you got the right answer for your question. if you are now interested in how to get coordinates actor is shooting/targeting at, start separate topic with question how to compute that information or ask in "memory addresses" part of this forum. there is no opcode to get that and opcodes topic ain't actually right place for any further discussions on this subject.

 

now let's back on track

 

04E2=2,set_player %1d% suspend_heavy_police_reinforcements %2h% 

 

suspends heavier reinforcements that game throws usually against player at 3+ stars

 

Share this post


Link to post
Share on other sites
Seemann

 

now let's back on track

 

04E2=2,set_player %1d% suspend_heavy_police_reinforcements %2h%

 

 

suspends heavier reinforcements that game throws usually against player at 3+ stars

 

Disagree. This opcode is NOP, in fact.

 

 

Share this post


Link to post
Share on other sites
PLPynton

oh yes, i see that now. sorry for misleadings.

Share this post


Link to post
Share on other sites
PLPynton

 

098E=3,set_portal %1g% type_bitmask %2d% %3b:set/clear% 

 

use this to change portal type into another by setting or clearing bits in portaltype bitmask. (ex: it was 100 and you set 32/1 so it will be 132 now, then you set 7/0 and it goes to 125 then)

Share this post


Link to post
Share on other sites
DexX

What do you mean by "portal" ? i'm confused by that term..

Share this post


Link to post
Share on other sites
PLPynton

reedited: enex

Share this post


Link to post
Share on other sites
PLPynton

 

08F4: toggle_gang_recruitment  0/1

1 means CJ can recruit GSF in accordance with his current respect level. 0 means he cannot. If you currently are commanding any GSF when 08F4 is set to 0, they are immediately disbanded.

 

 

wrong, it toggles nothing (i haven't seen any toggle opcode in this game yet). what it actually does is:

 

08F4=1,set_gang_strenght_limit_to %1h%

 

use to arrange limit of gang strenght counted in members (it does not override UP the hardcoded influence of respect however). in original script it is used to be removed with 99 so i am not sure if they did not know exactly where the maximum gang strenght will land in the time of game release, or there is a simple way to edit that value thru mem editing.

 

Edit: smb, i let myself to discover the real gang recruitment opcode:

 

07B4=2,set_player %1d% gang_recruitment_enabled %2h%

 

that is the real opcode to enable/disable gang recruitment for specified player

 

now back on track:

 

09CF=2,set_train %1d% finish_at_next_station %2h%

 

train has to be launched from a station coordinates for it to have any effect. and to make it harder i say i am not really sure if that is the only function of this opcode as it seems to have more, i do not know.

 

 

 

0883=3,attach_FxSystem %1d% to_actor %2d% mode %3h% 

 

each mode contains locations (as head, torso ect) as well as rotation factors ect. you can attach that FxSystem before or you can spawn it on 3D coord it does not matter. i do not have all modes discovered yet so i will not post them.

 

 

06E2=4,AS_actor %1d% goto_object %2d% timelimit %3h% stop_radius %4d% 

 

simple go near object order. does not work in water, (-1) gets memorized until actor stop swimming. actor/object has to be valid, not necessarly alive.

 

Edit2:

 

09FB=1,get_language_set_store_to %1d%

 

returns int, 0 will be the first language from menu. by the means of game versions available on market it is english.

Edited by PLPynton

Share this post


Link to post
Share on other sites
PLPynton

that perticular code has never been used in original game and it has great potential, that is why i have to do dblpost as i find this perticular research quite useful:

 

06B5=5,set_searchlight %1d% move_target_point_to_3D_coord %2d% %3d% %4d% speed %5d%;***

 

simple order to change (travel to new) target coordinates, speed in m/s

 

this allows you to try, and it is a good shot now, to add, change lights, within the script. look at the movie 2.2MB DivX to see how i created a light that is now light at actor's aqualung equipement. i never tried to change colors of this light as it intrest me not for this mod, but i believe is just as easy as this what i have achieved until now.

i coded already many versions of these and they look good, you can attach them to anything ingame or let them travel alone. the only thing is that it might become jumpy at really high speeds.

 

Edit: it seems to be, that there is no reason to post any new research, hosts of this section sucks i am afraid to say!

 

Edit2: as ceedj said there will be always a reason. i will be glad, however to see any of the "hosts" shaking a bit in this section or visit it at least from time to time. as i am leaving for a while here is some:

 

 

09FB=1,get_language_set_store_to %1d% 

 

returns int, 0 will be the first language from menu. by the means of game versions available on market it is english.

 

 

 

0A45=1,set_rail_tracks_friction_to %1d% 

 

concerns vehicles driven over the rail tracks. setting is not overwritten by starting new game, default -1.0.

 

 

 

07B3=2,set_group %1d% give_command %2h% 

 

such orders as 1=follow leader, 2=wait... executing it upon player group makes actor of that player speak corespondent voice quotes.

 

 

 

082A=2,set_player %1d% able_to_use_crouch_button %2h% 

 

it disables the button functionality so it can render actor of player to be unable to crouch or get up.

 

 

 

0575=2,set_actor %1d% pinned_position %2d% 

 

ex. after teleport or creation to keep position regardless of what happens around or gravity.

 

 

 

094C=5,get_actor %1d% currently_used_portal_3D_coord_to %2d% %3d% %4d% number_to %5d% 

 

get XYZ (and number of portal history depth?) acor is currently using (the most recent active he is in). applies only to (minimum 2)-way portals between interiors, not inside of them. look for IPL EnEx entries for spec.

 

 

 

09F5=1,set_player_disable_mutal_activities %1h% 

 

enables or disables abilities such as scraming when on fire, hit by bullet, drop from hi-altitude or non-scripted voices spoken with other actors...

 

 

 

094D=1,  is_actor %1d% mutally_active 

 

such as scraming when on fire, hit by bullet, drop from hi-altitude or non-scripted voices spoken with other actors...

 

 

 

094E=2,set_actor %1d% disable_mutal_activity %2d% 

 

disables: scraming when on fire, hit by bullet, drop from hi-altitude or non-scripted voices spoken with other actors... seems to be that it has same functionality and parameter is ignored

 

 

 

094F=1,set_actor %1d% restore_mutal_activity 

 

restores abilities such as scraming when on fire, hit by bullet, drop from hi-altitude or non-scripted voices spoken with other actors...

 

the best is that it might need some language fixes around it. @ceedj: i am glad to see you mate.

Edited by PLPynton

Share this post


Link to post
Share on other sites
CoDe

 

02AB: set_actor $PLAYER_ACTOR immunities  1  1  1  1  1

 

 

Makes CJ invulnerable.

Share this post


Link to post
Share on other sites
PLPynton

@CoDe: the opcodes named like you posted are known if you haven't noticed yet.

for example 0818 was unknown until now, now when i found it give it a name regarding of what it does/n't do and as well some comments when needed.

 

 

0818=1,  is_actor %1d% in_air;***

 

checks by distance from ground&water: 1 when airbone, jumping or falling. swimming returns 0.

 

Share this post


Link to post
Share on other sites
Seemann

 

for example 0818 was unknown until now, now when i found it give it a name regarding of what it does/n't do and as well some comments when needed.

 

Well, this opcode is known if you haven't noticed yet. tounge.gif

 

nothing personal though, good work as usual.

Share this post


Link to post
Share on other sites
Bigun

3 opcode-related questions:

 

1) There probably isn't, but is there any way to avoid bugs with 01C2 used on actors in cars? It sometimes causes the cars to warp around...

2) How exactly do the get_handle_to_random_actor/car opcodes work? AFAIK if you keep calling them in a loop they keep returning other actors/cars? Do they return -1 after they pass all actors/cars?

3) Relatedly, and trying to avoid the 01C2 bug, is there an opcode that gets random actors on foot ONLY? I think there was one but I can't find it now.

Share this post


Link to post
Share on other sites
PLPynton

Seemann wow that is nice page, i never knew it exists... it could be nice if finder of this and maybe other opcodes will post them in this topic.

 

Bigun, i can help a bit here:

1. i did that chceking distance of all intercepted vehs and marking them when away, such array will consume variables but what the hell are globals for hehe

2. if such an interceptor marks this ingame vehicle as needed then it will not be able to intercept it anymore, i do not remember but it should apply to actors and objects. if there is no veh/actor/object found then it returns indeed -1

3. just use whole map as a zone

 

02DD=5,get_actor_within_zone %1s% civilian %2h% gang %3h% criminal %4h% handle_as %5d%;rnd nvpet recreate

 

 

edit:

since you playing with that too, i am somewhere in middle of design for new interceptor for actors & vehicles as well. it will be able to intercept anything what exists and everything specific as well. just wait till weekend if you like.

Edited by PLPynton

Share this post


Link to post
Share on other sites
DeeZire

@PLPython I'd be interested in that too. As far as I can tell, those opcodes will only intercept cars & peds from the pedgroups and cargroups. Is there any way to reliably intercept a copcar or cop ped?

Share this post


Link to post
Share on other sites
Seemann

 

Seemann wow that is nice page, i never knew it exists... it could be nice if finder of this and maybe other opcodes will post them in this topic.

This search engine made by sleeper and based on the SASCM.ini v3.1.0020 I posted earlier. So, 'the finder' is me wink.gif

Share this post


Link to post
Share on other sites
Bigun
Is there any way to reliably intercept a copcar or cop ped?

Well, I know that 08E5 can indeed catch cops as well.

 

@Pynton: Yeah, that sounds very nice, I'll keep an eye out for it! smile.gif

 

@Seemann: I thought I'd post this here since this is already slightly discussed here. I'm not sure if you can, but can you try to fix 01C2, perhaps, or write a new opcode as a replacement? Something for CLEO.

Share this post


Link to post
Share on other sites
PLPynton

i am gonna have to bee offtopic a bit so here is my tax:

 

0898=3,set_cranes_controls_enable_UP %1d% enable_DOWN %2d% enable_RELEASE %3d% 

 

assign controller to one of crane objects in order for it to have effect. it simply enables or disables corresponding control abilities.

 

now here is idea how interception will work for actors (actually is just a question of diffrent addresses when we consider vehs/other ingame stuff). i wrote that so it can be used with MB as well (small cosmetic changes are needed however).

 

0007: [email protected] = 120.0 // input coord X0007: [email protected] = 90.0  // input coord Y0007: [email protected] = 3.0   // input coord Z0007: [email protected] = 30.0  // input radius////////////////////// 0006: [email protected] = 12010640 gosub @MemRead_4B0085: [email protected] = [email protected] 000A: [email protected] += 32 0006: [email protected] = 0 0006: [email protected] = -1 0085: [email protected] = [email protected] :CHAR_13100D6: if 8039:   not   [email protected] == 139 004D: jump_if_false @CHAR_133000A: [email protected] += 20 gosub @MemRead_4B0085: [email protected] = [email protected] 00D6: if 8039:   not   [email protected] == 0 004D: jump_if_false @CHAR_132000A: [email protected] += 48 gosub @MemRead_4B0085: [email protected] = [email protected] 000A: [email protected] += 4 gosub @MemRead_4B0085: [email protected] = [email protected] 000A: [email protected] += 4 gosub @MemRead_4B0085: [email protected] = [email protected] 050A: get_distance_between_3D_coord [email protected] [email protected] [email protected] and_3D_coord [email protected] [email protected] [email protected] store_to [email protected]: if 0025:   [email protected] > [email protected] 004D: jump_if_false @CHAR_1320085: [email protected] = [email protected] 0085: [email protected] = [email protected] :CHAR_132000A: [email protected] += 1988 0085: [email protected] = [email protected] 000A: [email protected] += 10002: jump @CHAR_131:CHAR_13300D6: if 8039:   not   [email protected] == -1 004D: jump_if_false @CHAR_1400006: [email protected] = 38057608005A: [email protected] += [email protected] 0085: [email protected] = [email protected] gosub @MemRead_1B0012: [email protected] *= 256 005A: [email protected] += [email protected] 00D6: if and 056D:   is [email protected] valid_actor_handle 803C:   not $PLAYER_ACTOR == [email protected] 8118:   not is_actor [email protected] dead004D: jump_if_false @CHAR_134//009B: delete_actor [email protected]: jump @CHAR_140:CHAR_1340006: [email protected] = -1:CHAR_140// [email protected] is output char here

 

it will search in sphere XYZ, search criteria opened for all actors, the actor nearest center of search sphere will be outputed or -1 for none.

here are memory read code for 1 byte and 4 bytes (use cleo to spear space or these ones to keep MB compactibility). i used original Y_Less idea and changed it to break some of its limitations.

 

:MemRead_1B0085: [email protected] = [email protected] 0085: [email protected] = [email protected] 0016: [email protected] /= 4 0012: [email protected] *= 4 0062: [email protected] -= [email protected] :MemRead_0100D6: if0039:   [email protected] == 0 004D: jump_if_false @MemRead_020006: [email protected] = 0 0006: [email protected] = 0 0006: [email protected] = 7 :MemRead_0200D6: if0039:   [email protected] == 1 004D: jump_if_false @MemRead_030006: [email protected] = 0 0006: [email protected] = 8 0006: [email protected] = 15 :MemRead_0300D6: if0039:   [email protected] == 2 004D: jump_if_false @MemRead_040006: [email protected] = 0 0006: [email protected] = 16 0006: [email protected] = 23 :MemRead_0400D6: if0039:   [email protected] == 3 004D: jump_if_false @MemRead_050006: [email protected] = 0 0006: [email protected] = 24 0006: [email protected] = 31 :MemRead_050085: [email protected] = [email protected] 000E: [email protected] -= 107871680016: [email protected] /= 4 008B: [email protected] = &0([email protected],1i)0085: [email protected] = [email protected] 0006: [email protected] = 0 :MemRead_060001: wait 0 ms 00D6: if08B9:   test [email protected] bit [email protected]: jump_if_false @MemRead_0708BF: set [email protected] bit [email protected]:MemRead_0700D6: if803B:   not   [email protected] == [email protected] 004D: jump_if_false @MemRead_Return000A: [email protected] += 1 000A: [email protected] += 1 0002: jump @MemRead_06:MemRead_Return0085: [email protected] = [email protected] 0051: return:MemRead_4B0085: [email protected] = [email protected] 000E: [email protected] -= 107871680016: [email protected] /= 4 008B: [email protected] = &0([email protected],1i)0085: [email protected] = [email protected] 0051: return 

 

and sorry for such a long post guys.

edit: i am aware of no medelID check and no PLAYER_ACTOR ignore, but i can re-write it if someone needs that.

Edited by PLPynton

Share this post


Link to post
Share on other sites
vivelapsp

PLPynton, can you give we the download opcode database ? The link in your sing doesn't work sad.gif

Share this post


Link to post
Share on other sites
PLPynton
PLPynton, can you give we the download opcode database ? The link in your sing doesn't work sad.gif

next weekend it will work. there will be also mirror at Sanny side thanx to Seemann. i am re-writing opcodes all over again and will be ready on weekend- just wait few days pls, it's worth it.

Share this post


Link to post
Share on other sites
Aschratt

Dont know if its already known, but I found a useful opcode for checking which enex (Yellow Marker defined by IPL) the player used.

 

 

0844: store_interior_to %1d%

 

 

you can request the string later and test if it has the same value as the interior:

 

 

 00D6: if  005AD:   s$TestString == 'AMMUN1';; 8-byte strings

 

 

//EDIT: the variable s$706 seems to be the global s$PLAYER_ENEX Variable in original SA SCM!

Edited by Aschratt

Share this post


Link to post
Share on other sites
Seemann

PLPynton;

 

Great job on the opcodes v2.0!

 

But I found that many entries still have no ever names although 3.1.0020 has. So, I made the list of the opcodes which are named unknown at yours. Look, maybe you will find something useful. Some of the opcodes are unknown to me and I just wrote some words for possible directions to discover its real meaning later.

 

Note, that all opcodes named NOP by me should be named so by you too, to avoid the confusions when an user will try to use it thinking that it does doing something.

 

The first line is your variant, the second is mine (or at least presented at 3.1.0020).

 

 

015B=3,UNKNOWN setA %1h% setB %2d% setC %3d%015B=3,unknown_player %1h% time %2d% key %3d% 0331=2,UNKNOWN set_player %1d% flag %2d%;***0331=2,toggle_player %1d% fast_reload %2d% 0454=3,UNKNOWN get_debug_floats %1d% %2d% %3d%0454=3,useless_store_debug_camera_position_to %1d% %2d% %3d%0463=3,UNKNOWN get_debug_floats %1d% %2d% %3d%0463=3,useless_store_debug_camera_target_point_at %1d% %2d% %3d%054E=1,UNKNOWN actor %1d%?054E=1,clear_actor %1d% damage054F=1,UNKNOWN vehicle %1d% ?054F=1,clear_car %1d% damage060A=2,UNKNOWN create_entity %1h% %2d%060A=2,create_decision_maker_type %1h% store_to %2d%; decision\allowed\m_.ped files060B=2,UNKNOWN actor %1d% UNKNOWN_use_entity %2d%060B=2,set_actor %1d% decision_maker_to %2d%0636=9,UNKNOWN AS_nop_parameters %1d% %2d% %3d% %4d% %5d% %6d% %7d% %8d% %9d%;***0636=9,NOP %1d% %2d% %3d% %4d% %5d% %6d% %7d% %8d% %9d%062E=3,UNKNOWN actor %1d% mask %2d% get %3d%?062E=3,unknown_get_actor %1d% task %2d% status_store_to %3d%; ret 7 if not found0646=2,UNKNOWN actor %1d% get %2d%;int?0646=2,unknown_get_actor %1d% task_1560_status_store_to %2d%; similar to 062E065C=1,UNKNOWN mark_entity_as_no_longer_needed %1d%065C=1,remove_references_to_decision_maker %1d%065D=2,UNKNOWN status_noteA %1d% string %2h% 065D=2,NOP %1d% %2h%065E=2,UNKNOWN status_noteB %1d% string %2h% 065E=2,NOP %1d% %2h% 065F=2,UNKNOWN write_debug_message_1param %1d% %2h%;***065F=2,NOP %1d% %2h%0660=2,UNKNOWN status_noteC %1d% string %2h% 0660=2,NOP %1d% %2h%06AD=2,UNKNOWN group %1d% use entity %2d%06AD=2,set_group %1d% group_decision_maker_to %2d%06AE=2,UNKNOWN group_entity_creator %1d% %2d%06AE=2,create_group_decision_maker_type %1h% store_to %2d%; decision\allowed\mission.grp06CF=1,UNKNOWN set_debug_enabled %1h%06CF=1,NOP %1h%06F2=0,UNKNOWN;***?06F2=0,unknown_disable_2_players_distance_limit0708=2,UNKNOWN add_entity_item %1d% %2h%0708=2,add_decision_maker %1d% event %2h%0709=9,UNKNOWN set_entity %1d% UNKNOWN_item %2h% %3d% %4d% %5d% %6d% %7d% %8h% %9h%0709=9,set_decision_maker %1d% on_event %2h% unknown_info %3d% %4d% %5d% %6d% %7d% %8h% %9h%; see *.ped files072F=7,UNKNOWN vehicle %1d% set_float %2d% set_time %3d% flag %4h% flag %5h% flag %6h% unk_type %7h%072F=7,enable_car %1d% stuck_check_distance %2d% time %3d% unknown %4h% %5h% %6h% %7h%; extended 03CC0749=2,UNKNOWN group_add_item %1d% %2h%0749=2,add_group_decision_maker %1d% event %2h%074A=9,UNKNOWN group_set_item_params %1d% %2h% %3d% %4d% %5d% %6d% %7d% %8h% %9h%074A=9,set_group_decision_maker %1d% on_event %2h% unknown_info %3d% %4d% %5d% %6d% %7d% %8h% %9h%; see *.ped files0752=1,UNKNOWN vehicle %1d%0752=1,NOP %1d%075B=1,UNKNOWN %1h%075B=1,zoom_radar %1h%07B1=4,UNKNOWN flag %1h% UNKNOWN %2d% UNKNOWN %3d% UNKNOWN %4d%?07B1=4,unknown_get_audio %1h% store_to %2d% %3d% %4d%07BC=2,UNKNOWN AS_actor %1h% UNKNOWN_entity %2d%07BC=2,set_actor %1h% decision_maker_to %2d%; AS_pack_version07E5=2,UNKNOWN copy_entity %1d% %2d% 07E5=2,copy_decision_maker %1d% to %2d%07E6=2,UNKNOWN copy_egroup %1h% %2d% 07E6=2,copy_group_decision_maker %1h% to %2d%?0861=1,  is_player %1d% not_scaning_horizon0861=1,  unknown_check %1d%; param is useless0864=4,UNKNOWN float %1d% float %2d% radius %3d% flag %4h%0864=4,toggle_interior_at %1d% %2d% radius %3d% access %4h%08A0=7,UNKNOWN actor %1d% priority %2d% type %3h% 3D_coord %4d% %5d% %6d% using_script_named %7h%08A0=7,actor %1d% in_radius %2d% near_model %3o% with_offset %4d% %5d% %6d% end_script_named %7h%; IF and SET0910=1,UNKNOWN %1d%; Not sure,  maybe 2 params ***0910=1,release_external_script %1x%0912=3,UNKNOWN flag %1h% set %2d% set %3d%?0912=3,unknown_text_draw_flag %1h% height %2d% width %3d%0915=0,UNKNOWN?0915=0,unknown_release_weather091A=1,UNKNOWN %1d%091A=1,NOP %1d%093E=2,UNKNOWN actor %1d% set %2d%093E=2,NOP %1d% %2d%0971=0,UNKNOWN?0971=0,unknown_set_to_current_time0978=2,UNKNOWN fill/merge_entity %1d% %2d%0978=2,copy_decision_maker %1d% to %2d%09AC=1,UNKNOWN flag %1h%09AC=1,disable_map_icons %1h%09D5=6,UNKNOWN actor %1d% UNKNOWN_voice %2d% flag %3h% flag %4h% flag %5h% UNKNOWN %6d% ?09D5=6,unknown_get_actor %1d% unknown %2d% flags %3h% %4h% %5h% store_to %6d%; extended 094709D6=5,UNKNOWN actor %1d% UNKNOWN_voice %2d% flag %3h% flag %4h% flag %5h%?09D6=5,set_actor %1d% sound %2d% flags %3h% %4h% %5h%09F8=0,UNKNOWN;***?09F8=0,unknown_give_to_2_player_weapon_of_1_player0485=0,  UNKNOWN true0485=0,  NOP_true059A=0,  UNKNOWN false;***059A=0,  NOP_false06AA=1,  UNKNOWN vehicle_check %1d%06AA=1,  NOP_false %1d%0735=1,  UNKNOWN check %1h% 0735=1,  NOP_false %1h% 0736=1,  UNKNOWN check %1h% 0736=1,  NOP_false %1h% 0741=1,  UNKNOWN player_check %1d%?0741=1,  actor %1d% busted0831=0,  UNKNOWN false;***0831=0,  NOP_false0977=1,  UNKNOWN object_check %1d%0977=1,  player_in_radius_of_object %1d% external_script_trigger09F2=1,  UNKNOWN check %1d%09F2=1,  decision_maker %1d% exists0A36=0,  UNKNOWN check	0A36=0,  unknown_trip_skip_check0A49=0,  UNKNOWN false;***0A49=0,  NOP_false0A4D=0,  UNKNOWN false;***0A4D=0,  NOP_false

 

 

 

Also, please delete the opcodes 00C3, 00C4, 0181 which aren't supported anymore due to CLEO. And add the CLEO opcodes as the following:

 

 

; --- CLEO 2 Opcodes ---; version 2.0.0.31; visit www.cleo.sannybuilder.com for more info;-----------------------0A8C=4,write_memory %1d% size %2d% value %3d% virtual_protect %4d%0A8D=4,%4d% = read_memory %1d% size %2d% virtual_protect %3d%0A8E=3,%3d% = %1d% + %2d%; int0A8F=3,%3d% = %1d% - %2d%; int0A90=3,%3d% = %1d% * %2d%; int0A91=3,%3d% = %1d% / %2d%; int0A96=2,%2d% = actor %1d% struct0A97=2,%2d% = car %1d% struct0A98=2,%2d% = object %1d% struct0A99=1,chdir %1b:userdir/rootdir%0A9A=3,%3d% = openfile %1s% mode %2d% // IF and SET0A9B=1,closefile %1d%0A9C=2,%2d% = file %1d% size0A9D=3,readfile %1d% size %2d% to %3d%0A9E=3,writefile %1d% size %2d% from %3d%0A9F=1,%1d% = current_thread_pointer0AA0=1,gosub_if_false %1p%0AA1=0,return_if_false0AA2=2,%2h% = load_library %1s% // IF and SET0AA3=1,free_library %1h%0AA4=3,%3d% = get_proc_address %1s% library %2d% // IF and SET0AA5=-1,call %1d% num_params %2h% pop %3h%0AA6=-1,call_method %1d% struct %2d% params %3h% pop %4h%0AA7=-1,call_function %1d% params %2h% pop %3h%0AA8=-1,call_function_method %1d% struct %2d% params %3h% pop %4h%0AA9=0,  is_game_version_original;0AAA reserved due to cool name;)0AAB=1,  file_exists %1s%0AAC=2,%2d% = load_mp3 %1d%0AAD=2,set_mp3 %1d% perform_action %2d%0AAE=1,release_mp3 %1d%0AAF=2,%2d% = get_mp3_length %1d%

 

 

 

Thanks, mate, and keep it up icon14.gif

 

 

EDIT:

03A1 named wrong. It must be:

 

 

03A1=4,show_sphere_at %1d% %2d% %3d% radius %4d%

 

put it in a loop to see a result

Edited by Seemann

Share this post


Link to post
Share on other sites
Seemann

 

0763: add_car_reference [email protected]

 

makes a car unique. Works only in a mission.

Share this post


Link to post
Share on other sites
DeeZire

 

0947=3,set_actor %1d% to_speak_from_WAVtable %2d% entry %3d%

Makes actor speak a quote from their respective WAV table, works on $PLAYER_ACTOR too. P2 is WAV table to use, P3 must be a variable and is used to generate a random entry from the WAV table. List of WAV tables is at http://pdescobar.home.comcast.net/gta/saat/sfx_dir.html but the numbers do not always corrospond.

 

 

03E3=1,set_texture_to_be_drawn_antialiased %1h%

Bit of a guess, but it appears to make the next drawn texture (loaded with 0390) appear smoothed, as if antialiased. Default is '0' so you only ever need to set it to '1' and you need to set this before every 'draw texture' command for it to affect every individual texture you draw.

 

Not an opcode, but a handy snippet for Demarest's Windshield mod;-

 

0652: @1 = stat  46674 (); integer

@1 will return a value of 1 if the player has disabled the game HUD from the main menu options, returns a value of 257 if HUD is enabled from there.

Edited by DeeZire

Share this post


Link to post
Share on other sites
Midnightz

Check pertaining to player movement...

 

02A0: has_actor $PLAYER_ACTOR stopped

The above^ exists in db but its mate is missing:

 

82A0:   not has_actor $PLAYER_ACTOR stopped

 

Share this post


Link to post
Share on other sites
ceedj

I'm fairly sure any conditional opcode can be "flipped" to a NOT by replacing the first 0 with an 8. Which is why it's not in the DB.

Share this post


Link to post
Share on other sites
Midnightz

I was writing a mod that needed this and couldn't find it. So I tried flipping it and it worked. Btw, many others ARE in the db. Either leave them out or add them all in = consistency.

Share this post


Link to post
Share on other sites
Demarest
I'm fairly sure any conditional opcode can be "flipped" to a NOT by replacing the first 0 with an 8. Which is why it's not in the DB.

Yep. This is covered in the Mission Builder readme. On a related note, anytime I'm searching original code for conditionals, I always search for the last three characters only just for this reason. smile.gif

Share this post


Link to post
Share on other sites
DeeZire

 

08FF=2,  object %1d% received_damage_from_weapon_type %2h%

 

 

Tests if an object has been hit by a certain weapon number.

Share this post


Link to post
Share on other sites
spaceeinstein

Huh? That was already discovered. ?

Share this post


Link to post
Share on other sites
BBumper

I know this is offtopic but did Demarest get banned?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • 2 Users Currently Viewing
    0 members, 0 Anonymous, 2 Guests

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.