Jump to content

I Have Some Weird Questions About Trucking Dupings :) [Classic]


ArmanCan

Recommended Posts

Hello guys 😃

 

Normally Trucking and Quarry has same flow and logic (You complete one sub mission and come back for next mission) but according to my logic and my experiment; duping the trucking "7 times" (Instance) and doing the actual first mssion is not enough to complete the whole Trucking side mission.. On the other hand duping Quarry 6 times (Instance) and completing the actual first mission flags the whole Quarry mission completed. My questions are..

 

- Why am i being unsuccessful on Trucking mission but on the Quarry not?

- Is it something to do with a "$STAT_UNLOCKED_CITIES_NUMBER" (integer stat 181)?

- If yes what should be my solution? I can comment out some labels if it's necessary 😉

- Do you have some other approaches for this or some other stuff to pay attention?

 

Thank you so much for your help/opinions and have a nice, cold and healthy day.. always stay hydrated folks.. 😎🥤

Link to comment
Share on other sites

Might be. Do you have access to Las Venturas ? This is a part of main.scm. Looks like you're not supposed to advance until all cities are open. Maybe there are some other check further in the code.  Anyways - why do you take such a strange approach to finish the missions ?
 

if 
  $Trucking_Total_Passed_Missions >= 6 
jf @TRUCK_468 
0652: $STAT_Unlocked_Cities_Number = integer_stat 181 
if 
  2 > $STAT_Unlocked_Cities_Number 
jf @TRUCK_468 
00BC: show_text_highpriority GXT 'TRK_H17' time 5000 flag 1  // The next trucking mission will be available when you have access to Las Venturas.

 

As for solution - you can try changing the stat with this code:

0629: change_integer_stat 181 to 2

 

Edited by vladvo
Link to comment
Share on other sites

42 minutes ago, vladvo said:

Do you have access to Las Venturas ?

Nope..i was experimenting it right after "Tanker Commander" with high priority Sweet's prison phonecall..and yes.. i've reduced marker waiting time to "0" in order to trigger the duping so easily and safely.. 🙂

49 minutes ago, vladvo said:

As for solution - you can try changing the stat with this code:

It seems you have similar opinions to change integer stat to highest number.. in this case it must be "4" 😉

47 minutes ago, vladvo said:

why do you take such a strange approach to finish the missions ?

You mean "Why am i doing this test?".. the answer is simple.. i'm just trying to complete the Trucking in a "genius" way and invent something (little bit) mind blowing.. if i complete this experiment with success i will post the results to here so anyone can benefit from it.. 😎

Link to comment
Share on other sites

Be careful with int stat 181. It can bug properties in the cities or even break the story flow if modified inappropriately.

 

Link to comment
Share on other sites

9 hours ago, OrionSR said:

Be careful with int stat 181. It can bug properties in the cities or even break the story flow if modified inappropriately.

 

will do..👍 i was trying to unlock all unavailale safehouses around SA but this cost me my mission progress 😃

Link to comment
Share on other sites

ribar133337
1 hour ago, ArmanCan said:

will do..👍 i was trying to unlock all unavailale safehouses around SA but this cost me my mission progress 😃

 


Sorry, since it won't let me send you a private message, I started switching gta sa. I can't get past the ice cold killer mission. Could you please complete it on to me, thank you anyway

Save : https://gtasnp.com/NoSsUY

Link to comment
Share on other sites

1 minute ago, ribar133337 said:

Sorry, since it won't let me send you a private message, I started switching gta sa. I can't get past the ice cold killer mission. Could you please complete it on to me, thank you anyway

Save : https://gtasnp.com/NoSsUY

Privyet 🙂

Thanks to the other serbian players contrubition to this specific crash i've fixed that by editing the GXT file.. just download it from my topic (below) and replace it with yours..😉

 

Link to comment
Share on other sites

ribar133337
37 minutes ago, ArmanCan said:

Privyet 🙂

Thanks to the other serbian players contrubition to this specific crash i've fixed that by editing the GXT file.. just download it from my topic (below) and replace it with yours..😉

 

❤️ Love

Link to comment
Share on other sites

 

 

Both sub mission can be played as often as you want
There's nothing that terminates the sniffer scripts at any time

Trucking is initialized in mission Tanker Commander and Quarry in mission Explosive Situation

Spoiler
//-------------Mission 43---------------
// Originally: Tanker Commander
:CAT3_17111
004F: create_thread @TRUCKS

//-------------Mission 85---------------
// Originally: Explosive Situation
:CASINO2_16387
004F: create_thread @HEIST  
004F: create_thread @QUARRYS

 

 

/////////////////////////////////////////////////////

 

 

The Trucking mission script contains this variable to allocate locations and truck models and script blocks
and is used as counter of the completions

$TRUCKING_TOTAL_PASSED_MISSIONS

 

The mission complete block contains a check for this variable
And if the 8th completions is done then you get a tiny reward

:TRUCK_16627
00D6: if
0038:   $TRUCKING_TOTAL_PASSED_MISSIONS == 8
004D: jump_if_false @TRUCK_16710
00D6: if
0038:   $MISSION_TRUCKING_PASSED == 0
004D: jump_if_false @TRUCK_16687
0595: mission_complete  <--------------  reward
030C: progress_made = 1 <--------------  reward
0394: play_music 2      <--------------  reward
0004: $MISSION_TRUCKING_PASSED = 1
0006: 114@ = 1

:TRUCK_16687
00BA: show_text_styled GXT 'TRK_P4' time 5000 style 4  // Trucking Complete!  <--------------  reward message
0002: jump @TRUCK_16729

Since then, you will always get the message "Trucking Complete!"

 

The variable $MISSION_TRUCKING_PASSED only makes sure that the reward will be given only one time

 

Consider the variable 114@, it has a similar function like $MISSION_TRUCKING_PASSED

Spoiler

If it is 1, then some value will be set
I have no idea in which case that can happen and i don't know what that means and i'm too lazy to find it out
I think it's not important

 

:TRUCK_964
0050: gosub @TRUCK_16746
00D6: if
0039:   114@ == 1
004D: jump_if_false @TRUCK_1024
0006: 38@ = 0
0006: 36@ = 50
0006: 37@ = 0
0006: 114@ = 0
0002: jump @TRUCK_619

:TRUCK_1024
0051: return

 


/////////////////////////////////////////////////////

 

 

The Quarry mission script contains this variable to allocate script blocks, amount of reward money
and is used as array index and as counter of the completions

$QUARRY_MISSIONS_PASSED

 

The mission complete block contains a check for this variable
And if the 7th completions is done then you get a tiny reward

:QUARRY_27270
00D6: if
0038:   $QUARRY_MISSIONS_PASSED == 7
004D: jump_if_false @QUARRY_27461
0595: mission_complete      <--------------  reward
030C: progress_made = 1     <--------------  reward
0394: play_music 2          <--------------  reward
0004: $MISSION_QUARRY_PASSED = 1
0004: $QUARRY_MISSIONS_PASSED = 0
00BA: show_text_styled GXT 'QUAR_P2' time 4000 style 4  // Quarry Complete!
0006: 50@ = 0
00D6: if
0038:   $MISSION_QUARRY_PASSED == 1
004D: jump_if_false @QUARRY_27393
0006: 48@ = 0

 

!!! In addition
the variable $QUARRY_MISSIONS_PASSED will be reset to 0
the variable $MISSION_QUARRY_PASSED will be set to 1


The Quarry mission script contains checks for the variable $MISSION_QUARRY_PASSED
like this one, that makes possible to enable parked_car_generators

:QUARRY_1525
00D6: if
0038:   $MISSION_QUARRY_PASSED == 1
004D: jump_if_false @QUARRY_1701
00D6: if
0039:   292@ == 1
004D: jump_if_false @QUARRY_1677
00D6: if
80E1:   not player 0 pressed_key 19
004D: jump_if_false @QUARRY_1670
0006: 38@ = 1
00BC: show_text_highpriority GXT 'QUAR_37' time 5000 flag 1  // ~s~Return to the site office to start the next mission.
00BA: show_text_styled GXT 'SKIPPED' time 5000 style 5  // SKIPPED!
0008: $QUARRY_MISSIONS_PASSED += 1
00D6: if
0038:   $QUARRY_MISSIONS_PASSED == 7
004D: jump_if_false @QUARRY_1649
0004: $QUARRY_MISSIONS_PASSED = 0

:QUARRY_1649
014C: set_parked_car_generator $2759 cars_to_generate_to 101
014C: set_parked_car_generator $2760 cars_to_generate_to 101
0002: jump @QUARRY_2224

I understand it following:
If the Quarry mission was completed 7 times and then again 7 times,
then it enable parked_car_generators

There're some more checks for $MISSION_QUARRY_PASSED to select several script blocks

 

 

 

 

Edited by ZAZ
Link to comment
Share on other sites

34 minutes ago, ZAZ said:

I understand it following:
If the Quarry mission was completed 7 times and then again 7 times,
then it enable parked_car_generators

That doesn't seem quite right. It's been a long time since I looked into the quarry vehicles but what I'm expecting is that the cargens are enabled when the final quarry mission is completed, but hidden again when the mission sequence is started again. The intended goal is to disable the cargens so they aren't in the way of the missions.

The schools handle this better. Each vehicle has it's own flag. All 3 reward vehicles are hidden when the lesson starts, and any unlocked and flagged are unhidden after the lesson.

What I remember from fiddling with the quarry cargens in the custom Chain Game saves though: I was worried that the helicopter I placed on the LV rooftop as kind of a reward from Up Up and Away might get in the way of the mission, so I assigned it to the handle of a quarry cargen. Starting the quarry missions again provided the players with an in-game option to disable the vehicle if there was a problem - which never came up.

 

10 hours ago, ArmanCan said:

will do..👍 i was trying to unlock all unavailale safehouses around SA but this cost me my mission progress 😃

IIRC, we've discussed issues caused my modifying int stat 181 in some detail before, so I didn't go into the specifics. I just feel compelled to post a warning whenever the Cities Unlocked stat is mentioned, as relaunching closed sniffer scripts is an awkward process.

Link to comment
Share on other sites

1 hour ago, ZAZ said:

There's nothing that terminates the sniffer scripts at any time

You are trying to say that there is no limit to complete the Trucking in one row..

 

Actually yes.. if you are playing Badlands or San Fierro chapters you still need to unlock the 7th and 8th missions...i was trying to mess with integer stat but i was scared to do it so i cowardly and amateurly commented out these labels..

Spoiler
:TRUCK_324
054C: use_GXT_table 'TRUCK' 
//if 
//  $TRUCKING_TOTAL_PASSED_MISSIONS >= 6 
//jf @TRUCK_468 
//0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181 
//if 
//  2 > $STAT_UNLOCKED_CITIES_NUMBER 
//jf @TRUCK_468 
//00BC: show_text_highpriority GXT 'TRK_H17' time 5000 flag 1  // The next trucking mission will be available when you have access to Las Venturas.
if 
  not Actor.Dead($PLAYER_ACTOR)
jf @TRUCK_450 
Actor.PutAt($PLAYER_ACTOR, -76.9664, -1134.639, 0.0781)
Actor.Angle($PLAYER_ACTOR) = 14.7291
Camera.SetBehindPlayer
Player.CanMove($PLAYER_CHAR, True)

:TRUCK_468
//if 
//  $TRUCKING_TOTAL_PASSED_MISSIONS >= 4 
//jf @TRUCK_601 
//0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181 
//if 
//  1 > $STAT_UNLOCKED_CITIES_NUMBER 
//jf @TRUCK_601 
//00BC: show_text_highpriority GXT 'TRK_H18' time 5000 flag 1  // The next trucking mission will be available when you have access to San Fierro.
if 
  not Actor.Dead($PLAYER_ACTOR)
jf @TRUCK_583 
Actor.PutAt($PLAYER_ACTOR, -76.9664, -1134.639, 0.0781)
Actor.Angle($PLAYER_ACTOR) = 14.7291
Camera.SetBehindPlayer
Player.CanMove($PLAYER_CHAR, True)

 

According to my research on this "integer stat 181" i could only realized that vehicular side missions are checking it and this one inserted into the obvious missions.. The problem is Quarry doesn't have this check but Trucking has 🙁

Edited by ArmanCan
Link to comment
Share on other sites

6 minutes ago, OrionSR said:

IIRC, we've discussed issues caused my modifying int stat 181 in some detail before, so I didn't go into the specifics. I just feel compelled to post a warning whenever the Cities Unlocked stat is mentioned, as relaunching closed sniffer scripts is an awkward process.

Maybe.. but i think you are remembering a guy who is trying to unlock properties at the first place.. he even tried to prepare a starter save..🙂

Link to comment
Share on other sites

41 minutes ago, ArmanCan said:

You are trying to say that there is no limit to complete the Trucking in one row..

yes

Quote

Actually yes.. if you are playing Badlands or San Fierro chapters you still need to unlock the 7th and 8th missions...i was trying to mess with integer stat but i was scared to do it so i cowardly and amateurly commented out these labels..

It's inside the mission script. The mission can still be started. It's just cancelled in the mentioned cases.

And as soon as $STAT_UNLOCKED_CITIES_NUMBER is 2, then it can be played

 

your commenting out is not ok at all

jump directly to label TRUCK_601 should be fine

:TRUCK_324
054C: use_GXT_table 'TRUCK' 
jump @TRUCK_601

 

 

Edited by ZAZ
Link to comment
Share on other sites

On 6/21/2023 at 10:54 PM, ZAZ said:

jump directly to label TRUCK_601 should be fine

ok i can do but this label has other opcodes.. is it ok to split it and insert the jump between them?.. i mean like this(below).. if yes.. i'll try another attempt and see if i can do this test with success.. i may post a video result here so we can better discuss it 😉

Spoiler
:TRUCK_324
054C: use_GXT_table 'TRUCK'
jump @TRUCK_601

if 
  $TRUCKING_TOTAL_PASSED_MISSIONS >= 6 
jf @TRUCK_468 
0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181 
if 
  2 > $STAT_UNLOCKED_CITIES_NUMBER 
jf @TRUCK_468 
00BC: show_text_highpriority GXT 'TRK_H17' time 5000 flag 1  // The next trucking mission will be available when you have access to Las Venturas.
if 
  not Actor.Dead($PLAYER_ACTOR)
jf @TRUCK_450 
Actor.PutAt($PLAYER_ACTOR, -76.9664, -1134.639, 0.0781)
Actor.Angle($PLAYER_ACTOR) = 14.7291
Camera.SetBehindPlayer
Player.CanMove($PLAYER_CHAR, True)

Edit: Well..no luck with doing the 7 instances and completing the actual first mission.. i still didn't trigger the Trucking completion.. maybe if i combine this with truth's next mission (body harvest) i may have a chance to trigger it 🙂

Edited by ArmanCan
Link to comment
Share on other sites

20 hours ago, ArmanCan said:

ok i can do but this label has other opcodes..

No, they have not

Can't you see it?

It needs to lead via else_jump to can play the mission

 

or the opposite

If the checks will be passed, the mission will be canceled

 

I simplified the code a bit

Spoiler
THIS

0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181 
if and
   $TRUCKING_TOTAL_PASSED_MISSIONS >= 6 
   2 > $STAT_UNLOCKED_CITIES_NUMBER 
jf @TRUCK_468//


IS SAME LIKE THIS

00D6: if 
0028:   $TRUCKING_TOTAL_PASSED_MISSIONS >= 6 
004D: jump_if_false @TRUCK_468 
0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181 
00D6: if 
001A:   2 > $STAT_UNLOCKED_CITIES_NUMBER 
004D: jump_if_false @TRUCK_468

----------------------------------

THIS

:TRUCK_468
0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181
if and
   $TRUCKING_TOTAL_PASSED_MISSIONS >= 4 
    1 > $STAT_UNLOCKED_CITIES_NUMBER 
jf @TRUCK_601


IS SAME LIKE THIS



:TRUCK_468
00D6: if 
0028:   $TRUCKING_TOTAL_PASSED_MISSIONS >= 4 
004D: jump_if_false @TRUCK_601 
0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181 
00D6: if 
001A:   1 > $STAT_UNLOCKED_CITIES_NUMBER 
004D: jump_if_false @TRUCK_601

 

 

:TRUCK_324
054C: use_GXT_table 'TRUCK' 

0652: $STAT_UNLOCKED_CITIES_NUMBER = integer_stat 181 

if and
   $TRUCKING_TOTAL_PASSED_MISSIONS >= 6 
   2 > $STAT_UNLOCKED_CITIES_NUMBER 
jf @TRUCK_468// <------------------------------------ GOTO NEXT CHECK 
00BC: show_text_highpriority GXT 'TRK_H17' time 5000 flag 1  // The next trucking mission will be available when you have access to Las Venturas.
if 
8118:   not actor $PLAYER_ACTOR dead 
jf @TRUCK_450 
00A1: put_actor $PLAYER_ACTOR at -76.9664 -1134.639 0.0781 
0173: set_actor $PLAYER_ACTOR Z_angle_to 14.7291 
0373: set_camera_directly_behind_player 
01B4: set_player $PLAYER_CHAR can_move 1 

:TRUCK_450
016A: fade 1 time 500 
0001: wait 5000 ms 
0A2D: hide_styled_text_while_fading 1
0051: return//  <-------------------------------------- CANCEL MISSION




:TRUCK_468// ---------------------- NEXT CHECK
if and
   $TRUCKING_TOTAL_PASSED_MISSIONS >= 4 
    1 > $STAT_UNLOCKED_CITIES_NUMBER 
jf @TRUCK_601// <---------------- GOTO RUN MISSION 
00BC: show_text_highpriority GXT 'TRK_H18' time 5000 flag 1  // The next trucking mission will be available when you have access to San Fierro.
if 
8118:   not actor $PLAYER_ACTOR dead 
jf @TRUCK_583 
00A1: put_actor $PLAYER_ACTOR at -76.9664 -1134.639 0.0781 
0173: set_actor $PLAYER_ACTOR Z_angle_to 14.7291 
0373: set_camera_directly_behind_player 
01B4: set_player $PLAYER_CHAR can_move 1 

:TRUCK_583
016A: fade 1 time 500 
0001: wait 5000 ms 
0A2D: hide_styled_text_while_fading 1 
0051: return//  <---------------------------------- CANCEL MISSION 







:TRUCK_601// <--------------------------------------- RUN MISSION
        

 

 

 

 

 

 

Edited by ZAZ
Link to comment
Share on other sites

@ZAZ thank you so much for your return.. i need to give you guys a small update..

 

At first i commented out the Trucking script from the Catalina and added to MAIN script.. (line number was appr. 950..)

:CAT3_17111
//start_new_script @TRUCKS

I've placed the icon and the marker into the "Initial 1" (line number was appr. 23690)

0570: $MARKER_TRUCKING_MISSION = create_asset_radar_marker_with_icon 51 at $2373 $2374 $2375

I had to remove barriers and forbidden cubes for reaching to the locked cities.. as you noticed i didn't touch the integer stat there 🙂

0629: change_integer_stat 181 to 0 
Player.CanMove($PLAYER_CHAR, True)
041D: set_camera_near_clip 0.1 
select_interior 0 
076C: set_zone 'GAN1' gang 1 density_to 10 
076C: set_zone 'GAN2' gang 1 density_to 10 
//0776: create_objects_in_object_group "BARRIERS1" 
//0776: create_objects_in_object_group "BARRIERS2" 
//01E8: create_forbidden_for_cars_cube_cornerA -2696.464 1239.866 40.7599 cornerB -2665.359 2190.96 70.8125

I'm using this memory adress to not get a sticky 4 stars at the beginning..

0A8C: write_memory 0x44183D size 1 value 0 virtual_protect 0 // removes the wanted level when you leave town// this enables traffic again:s

As i did above i've skipped the "$STAT_UNLOCKED_CITIES_NUMBER" by jumping directly to the mission flow..

:TRUCK_324
054C: use_GXT_table 'TRUCK'
jump @TRUCK_601

After all this preparation i've started a new game, headed there and tried to complete all 8 missions in a normal way and i NEVER encountered any problem.. that shows us that the "integer stat 181 =2" is not required to start a trucking mission..

 

I'm currently comparing the Quarry and the Trucking flows carefully but i couldn't find a way to edit and solve my issue..

 

My goal is duping the Trucking "7 times" and completing the actual first mission to "instapass" and get a mission progress (just like Quarry setup). I've cut both missions into the new txt files.. if you would like to compare with me i can post here..😉 

 

Edit 2: I've applied the same setup to the Quarry and i've perfectly duped this mission..it's still interesting and annoying why is it not possible??..🤔

Edited by ArmanCan
Link to comment
Share on other sites

My final update..

 

I was brainstorming myself to solve my issue and i've asked myself this "why" question and my answer was simple..

 

"Quarry has the same vehicle, same objects, same conditions and off course.. the same tasks".. on the other hand Trucking has randon vehicles, rigs, destination and it's timers so i've tried to make the first mission same and duped 8 times but no hope..

 

Result: The Trucking can not be INSTAPASSED!! I'm giving up this idea and closing this case but if anyone has a better idea i may apply it real quick 🙂

Link to comment
Share on other sites

Make following changes in the mission passed section

Spoiler
:TRUCK_16540
0050: gosub @TRUCK_7500 
01E3: show_text_1number_styled GXT 'M_PASS' number 83@ time 5000 style 1  // MISSION PASSED!~n~~w~$~1~
0109: player $PLAYER_CHAR money = 83@ 
0151: remove_status_text $8160 
0008: $TRUCKING_TOTAL_PASSED_MISSIONS += 1 
00D6: if 
0038:   $TRUCKING_TOTAL_PASSED_MISSIONS == 0 
004D: jump_if_false @TRUCK_16627 
00BC: show_text_highpriority GXT 'TRK_P1' time 5000 flag 1  // ~s~Youve completed your first trucking mission. Return to the depot at any time for more.
0002: jump @TRUCK_16729

:TRUCK_16627
//00D6: if 
//0038:   $TRUCKING_TOTAL_PASSED_MISSIONS == 8 
//004D: jump_if_false @TRUCK_16710 
00D6: if 
0038:   $MISSION_TRUCKING_PASSED == 0 
004D: jump_if_false @TRUCK_16687 
0595: mission_complete 
030C: progress_made = 1 
0394: play_music 2 
0004: $MISSION_TRUCKING_PASSED = 1 
0006: 114@ = 1 

 

 

 

check if $TRUCKING_TOTAL_PASSED_MISSIONS is 0

0008: $TRUCKING_TOTAL_PASSED_MISSIONS += 1
00D6: if 
0038:   $TRUCKING_TOTAL_PASSED_MISSIONS == 0 
004D: jump_if_false @TRUCK_16627

 

comment out this check

:TRUCK_16627
//00D6: if 
//0038:   $TRUCKING_TOTAL_PASSED_MISSIONS == 8 
//004D: jump_if_false @TRUCK_16710 

 

 

Then you will complete the truck mission with the first delivery

and you will also get the money asset pickup

 

TRK_P4        // Trucking Complete!
TRK_P2        // ~s~All future missions will be of variable distance, difficulty, and reward.
04A6: $1933 = create_asset_money_pickup_at -82.2693 -1135.526 0.5847 money $1934 $1934
ASS_ACQ        // Asset acquired!
ASS_LUV        // This property will now generate revenue up to a maximum of $~1~. Make sure you collect it regularly!

 

 

 

Edited by ZAZ
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

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