Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!   (86,018 visits to this link)

    2. News

    1. GTA Online

      1. Find Lobbies & Players
      2. Guides & Strategies
      3. Vehicles
      4. Content Creator
      5. Help & Support
    2. Crews

      1. Events
      2. Recruitment
    1. Grand Theft Auto Series

    2. GTA Next

    3. GTA V

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

      1. Episodes from Liberty City
      2. Multiplayer
      3. Guides & Strategies
      4. Help & Support
      5. GTA Mods
    5. GTA Chinatown Wars

    6. GTA Vice City Stories

    7. GTA Liberty City Stories

    8. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    9. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    10. GTA III

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    11. Top Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    12. Wiki

      1. Merchandising
    1. GTA Modding

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Mod Showroom

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

      1. DYOM
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Red Dead Redemption 2

    2. Red Dead Redemption

    3. Rockstar Games

    1. Off-Topic

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

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

    2. Site Suggestions

Sign in to follow this  
toonskull

ToonSkull's Mods

Recommended Posts

toonskull

 

I will contact my brother later today and see if he can get these links reloaded for you. I left him a voice message but I will keep poking him with a stick until he responds.

Six messages?! wft Josh? I don't hear from you in over week and then out of the blue 6 messages about a game mod? Really?

 

 

Toonskull's Mods - All of them I think.

  • arms dealer.cs - creates arm dealer in house between Mom's and Sweet's.
  • bikeshop.cs - Buy bikes behind your house.
  • carlot.cs - Buy cars from lot near Suburban
  • find tags.cs - show 5 nearest tags on radar
  • kowall.cs - fall down when you hit a wall
  • moshpit.cs - fight hand to hand with a large mob
  • real cop cars.cs - spawns cops to chase you for going too fast
  • real cops.cs - checks for witnesses to your crime and gives you 30 seconds before someone dials 911
  • real traffic.cs - A remake of HippieCommunist's old mod to check the traffic and make it more "normal"... still has some bug issues.
  • SF Race.cs - Cleo remake of my brother's "Jabhacksoul" mod in Tennpenny Stories.

I can only hope fileden is a better service provider than those others. Maybe this link won't vanish?

Share this post


Link to post
Share on other sites
aStiffSausage
I will contact my brother later today and see if he can get these links reloaded for you. I left him a voice message but I will keep poking him with a stick until he responds.

Six messages?! wft Josh? I don't hear from you in over week and then out of the blue 6 messages about a game mod? Really?

 

•real traffic.cs - A remake of HippieCommunist's old mod to check the traffic and make it more "normal"... still has some bug issues.

 

Ahh, brothers... smile.gif

 

Anyways, just wondering what bugs does real traffic have, except that the script sometimes doesn't get all vehicles until they are close?

Share this post


Link to post
Share on other sites
toonskull

Not a real big issue, the modded vehicles sometimes change visually. For example, the Picador that Ryder has in his yard has the modded version with lumber in the back. This mod basically deletes the incoming traffic and replaces it with a cloned copy of the same vehicle color, driver, and passengers (if any) but not the modification.

 

The bigger issue, the races and some missions will crash with the mod running, because it attempts to delete and copy the racers. I suppose a simple solution would be to add a check at the beginning to bypass the mod;

 

 

 :REALTRAFFIC_11wait 0if $ONMISSION = 0 jf @REALTRAFFIC_11

 

 

HippieCommunist made the original mod here. I tweaked it the best I could.

Share this post


Link to post
Share on other sites
Gramps

Hi Vincent, nice to see your still alive ! Haven't heard from you in a while? Hows the family? Send me a PM, or add me on Skype/Steam .. same name xD

 

Does anyone have HippeCommnists FreeAim mod that he posted in his Realistic Traffic thread? (toonskull did a remake using his 'real cars' mod I believe)

Share this post


Link to post
Share on other sites
toonskull

OK this thread sparked my interest in doing something.

I am sure scripts like this have been done already. But this is cool you can save to the HD using Cleo. I didn't know about this until I read that thread.

 

 

{$VERSION 3.1.0027}{$CLEO .cs}thread 'SAVECAR':SAVECAR_1wait 100//Player pressed B while in a carif andActor.Driving($PLAYER_ACTOR)0AB0:  key_pressed 66then//gather car data     03C0: [email protected] = actor $PLAYER_ACTOR car00AA: store_car [email protected] position_to [email protected] [email protected] [email protected] 0174: [email protected] = car [email protected] Z_angle0441: [email protected] = car [email protected] model03F3: get_car [email protected] primary_color_to [email protected] secondary_color_to [email protected] //Save to binary file0A99: chdir 0 0A9A: [email protected] = openfile "savecar.bin" mode 0x77 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9B: closefile [email protected] end/Player on Foot pressed Xif andnot Actor.Driving($PLAYER_ACTOR)0AB0:  key_pressed 88then//Recall the same car as before in the same location0A99: chdir 0 0A9A: [email protected] = openfile "savecar.bin" mode 0x72 0A9D: readfile [email protected] size 4 to [email protected]: readfile [email protected] size 4 to [email protected]: readfile [email protected] size 4 to [email protected]: readfile [email protected] size 4 to [email protected]: readfile [email protected] size 4 to [email protected]: readfile [email protected] size 4 to [email protected]: readfile [email protected] size 4 to [email protected]: closefile [email protected] //Create CarModel.Load([email protected]):loopwait 0 if andModel.Available([email protected])jf @loopCar.Create([email protected],[email protected],[email protected],[email protected],[email protected])Car.Angle([email protected]) = [email protected]: set_car [email protected] primary_color_to [email protected] secondary_color_to [email protected] endjump @SAVECAR_1

 

 

I am thinking of making another script like this one. I'll be back...

Share this post


Link to post
Share on other sites
Silent
The bigger issue, the races and some missions will crash with the mod running, because it attempts to delete and copy the racers. I suppose a simple solution would be to add a check at the beginning to bypass the mod;

It would be better to check if the vehicle has been created by script, I guess.

Share this post


Link to post
Share on other sites
toonskull

I have been playing a lot of mmos and thought that the wardrobe was missing a gun stash. I know you could just make some script to hand you weapons, but my goal here is to make the game more realistic. So now when running this script any wardrobe will have 2 red rings. The new one by the dresser is the gun stash.

 

What is NOT realistic about my script:

  • The same gun stash appear at all safe houses. Follows you around the same as your clothing.
  • Different weapons of type in the stash are pitched out.
  • Not part of the save file so it could be used to accumulate guns. (aka cheat)

This kind of script would come in handy when the mission makes you lose all your weapons. But the idea here is weapon storage and not cheating the game. This script also demonstrates file usage under Cleo 3.1+ something I am just learning about. The usage is pretty simple, just stand in the red ring and a menu will show you how much ammo is stored for each type. You then can either Load[F5] or Save[F6] or just leave the room.

 

 

{$VERSION 3.1.0027}{$CLEO .cs}//-------------MAIN---------------thread 'GUNS' 0A99: chdir 0   //Change to 1 to save in your user folder instead of the GTA folder.if 0AAB:   file_exists "gunstash.bin"  //First time run check for needed file.jf @GUNS_49 jump @GUNS_56 :GUNS_49gosub @GUNS_1663 :GUNS_56wait 0 if 0102:   actor $PLAYER_ACTOR in_sphere 257.5104 -42.999 1002.023 radius 1.0 1.0 5.0 sphere 1 stopped_on_foot jf @GUNS_56 //Create a menu to display weapons in stash 08D4: [email protected] = create_panel_with_title 'DUMMY' position 29.0 95.0 width 93.0 columns 2 interactive 0 background 1 alignment 1 08D6: set_panel [email protected] column 0 alignment 1 08DB: set_panel [email protected] column 0 header 'WEAPON' data 'GUN1' 'GUN2' 'GUN4' 'GUN5' 'GUN6' 'GUN7' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY'  // Weapon // Pistols // Shotguns // SMG // Assault // Rifles // Thrown08D6: set_panel [email protected] column 1 alignment 0 08DB: set_panel [email protected] column 1 header 'DUMMY' data 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 09DB: set_panel [email protected] column 0 width 140 09DB: set_panel [email protected] column 1 width 46 //Read File into Menu 0A9A: [email protected] = openfile "gunstash.bin" mode 114 // IF and SET 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 0 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 1 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 2 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 3 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 4 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 5 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9B: closefile [email protected] //F5 to load weapons from stash only types 3,4,5,6,7,9:GUNS_762wait 0 if 0AB0:   key_pressed 117 jf @GUNS_1148 0A9A: [email protected] = openfile "gunstash.bin" mode 119 // IF and SET 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 3 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 4 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 5 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 6 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 7 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 9 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9B: closefile [email protected] wait 2000         //wait to write file//remove those weapons from player017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 //F6 to save weapons to stash only types 3,4,5,6,7,9:GUNS_1148if 0AB0:   key_pressed 116 jf @GUNS_1519 0A9A: [email protected] = openfile "gunstash.bin" mode 114 // IF and SET 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 3 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 4 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 5 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 6 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 7 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 9 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 0A9B: closefile [email protected] wait 2000    //wait 2 seconds the clear the stash.gosub @GUNS_1663 //Loop until the player leaves the room.:GUNS_1519if 00FF:   actor $PLAYER_ACTOR sphere 0 in_sphere 257.5104 -42.999 1002.023 radius 3.0 3.0 5.0 on_foot jf @GUNS_1581 jump @GUNS_762 jump @GUNS_1593 //Leave Area:GUNS_158108DA: remove_panel [email protected]  //Removes the menu displayjump @GUNS_56 //Subroutine used many times to load guns:GUNS_1593Model.Load([email protected])038B: load_requested_models :GUNS_1600wait 0 if   Model.Available([email protected])jf @GUNS_1600 //Player has no ammo for this gun or the same weapon on hand (non matching ammo is pitched)if or [email protected] == 0 003B:   [email protected] == [email protected] // (int) jf @GUNS_1657 01B2: give_actor $PLAYER_ACTOR weapon [email protected] ammo [email protected] // Load the weapon model before using this :GUNS_1657wait 50 return //Subroutine used twice to clear and create an empty stash:[email protected] = 0 [email protected] = 0 0A9A: [email protected] = openfile "gunstash.bin" mode 119 // IF and SET :GUNS_1698wait 0 0A9E: writefile [email protected] size 4 from [email protected] [email protected] += 1 if  [email protected] == 18 jf @GUNS_1698 0A9B: closefile [email protected] return 

 

Share this post


Link to post
Share on other sites
Gramps

Very interesting concept there Vincent ! icon14.gif

Share this post


Link to post
Share on other sites
don_pedro
I have been playing a lot of mmos and thought that the wardrobe was missing a gun stash. I know you could just make some script to hand you weapons, but my goal here is to make the game more realistic. So now when running this script any wardrobe will have 2 red rings. The new one by the dresser is the gun stash.

 

What is NOT realistic about my script:

  • The same gun stash appear at all safe houses. Follows you around the same as your clothing.
  • Different weapons of type in the stash are pitched out.
  • Not part of the save file so it could be used to accumulate guns. (aka cheat)
This kind of script would come in handy when the mission makes you lose all your weapons. But the idea here is weapon storage and not cheating the game. This script also demonstrates file usage under Cleo 3.1+ something I am just learning about. The usage is pretty simple, just stand in the red ring and a menu will show you how much ammo is stored for each type. You then can either Load[F5] or Save[F6] or just leave the room.

 

 

{$VERSION 3.1.0027}{$CLEO .cs}//-------------MAIN---------------thread 'GUNS' 0A99: chdir 0   //Change to 1 to save in your user folder instead of the GTA folder.if 0AAB:   file_exists "gunstash.bin"  //First time run check for needed file.jf @GUNS_49 jump @GUNS_56 :GUNS_49gosub @GUNS_1663 :GUNS_56wait 0 if 0102:   actor $PLAYER_ACTOR in_sphere 257.5104 -42.999 1002.023 radius 1.0 1.0 5.0 sphere 1 stopped_on_foot jf @GUNS_56 //Create a menu to display weapons in stash 08D4: [email protected] = create_panel_with_title 'DUMMY' position 29.0 95.0 width 93.0 columns 2 interactive 0 background 1 alignment 1 08D6: set_panel [email protected] column 0 alignment 1 08DB: set_panel [email protected] column 0 header 'WEAPON' data 'GUN1' 'GUN2' 'GUN4' 'GUN5' 'GUN6' 'GUN7' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY'  // Weapon // Pistols // Shotguns // SMG // Assault // Rifles // Thrown08D6: set_panel [email protected] column 1 alignment 0 08DB: set_panel [email protected] column 1 header 'DUMMY' data 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 09DB: set_panel [email protected] column 0 width 140 09DB: set_panel [email protected] column 1 width 46 //Read File into Menu 0A9A: [email protected] = openfile "gunstash.bin" mode 114 // IF and SET 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 0 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 1 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 2 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 3 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 4 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 08EE: set_panel [email protected] column 1 row 5 text_1number GXT 'NUMBER' number [email protected]  // ~1~0A9B: closefile [email protected] //F5 to load weapons from stash only types 3,4,5,6,7,9:GUNS_762wait 0 if 0AB0:   key_pressed 117 jf @GUNS_1148 0A9A: [email protected] = openfile "gunstash.bin" mode 119 // IF and SET 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 3 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 4 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 5 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 6 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 7 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 9 weapon [email protected] ammo [email protected] model [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9E: writefile [email protected] size 4 from [email protected] 0A9B: closefile [email protected] wait 2000         //wait to write file//remove those weapons from player017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 017B: set_actor $PLAYER_ACTOR weapon [email protected] ammo_to 0 //F6 to save weapons to stash only types 3,4,5,6,7,9:GUNS_1148if 0AB0:   key_pressed 116 jf @GUNS_1519 0A9A: [email protected] = openfile "gunstash.bin" mode 114 // IF and SET 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 3 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 4 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 5 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 6 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 7 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 04B8: get_weapon_data_from_actor $PLAYER_ACTOR weapon_group 9 weapon [email protected] ammo [email protected] model [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] 0A9D: readfile [email protected] size 4 to [email protected] gosub @GUNS_1593 0A9B: closefile [email protected] wait 2000    //wait 2 seconds the clear the stash.gosub @GUNS_1663 //Loop until the player leaves the room.:GUNS_1519if 00FF:   actor $PLAYER_ACTOR sphere 0 in_sphere 257.5104 -42.999 1002.023 radius 3.0 3.0 5.0 on_foot jf @GUNS_1581 jump @GUNS_762 jump @GUNS_1593 //Leave Area:GUNS_158108DA: remove_panel [email protected]  //Removes the menu displayjump @GUNS_56 //Subroutine used many times to load guns:GUNS_1593Model.Load([email protected])038B: load_requested_models :GUNS_1600wait 0 if   Model.Available([email protected])jf @GUNS_1600 //Player has no ammo for this gun or the same weapon on hand (non matching ammo is pitched)if or [email protected] == 0 003B:   [email protected] == [email protected] // (int) jf @GUNS_1657 01B2: give_actor $PLAYER_ACTOR weapon [email protected] ammo [email protected] // Load the weapon model before using this :GUNS_1657wait 50 return //Subroutine used twice to clear and create an empty stash:[email protected] = 0 [email protected] = 0 0A9A: [email protected] = openfile "gunstash.bin" mode 119 // IF and SET :GUNS_1698wait 0 0A9E: writefile [email protected] size 4 from [email protected] [email protected] += 1 if  [email protected] == 18 jf @GUNS_1698 0A9B: closefile [email protected] return 

 

that is a GREAT idea, wonder if it`s possible to really store guns, like you can get only the ones you left there, e.g. you left there a Tec9 with 100 rounds, an this is the only gun you can get. I think that maybe this could be solved with creating some sort of empty slots, for example 5 slots for 5 weapons. Anyways I`m glad a serious scripter took the challenge to make some mods aiming in realism, not some bull*hit zombie or cheat mods suicidal.gif

Share this post


Link to post
Share on other sites
toonskull

Well I certainly encourage you or anyone else to expand on the mod. I thought about sifting through the Ammunation code to fetch all the gun names. I am going to take a break on San Adreas coding for now and try out the Cleo coding for Vice City.

 

This is what you can look forward to:

  • Gambling - dog track betting and lottery tickets.
  • Mission Menu - Same as mine for SA only VC.
  • Telephone Missions - More hitman style missions.

I hope all of this works for VC, I don't see enough missions and coding on here and I just installed the Cleo so let me see what damage I can do. lol.gif

Share this post


Link to post
Share on other sites
toonskull

Lottery Tickets in GTA Vice City using Cleo ver 1.1.1.6

 

So far this only works at one store. I think it could be expanded to several places. Line 20-23 would need to incorporate more locations and the leave the store subroutine (:LRTYBUY_900) would need additional exits for each store. The current location is the drug store due south of Hyman Condo across from the Well Stacked Pizza.

 

True to form, you can only purchase tickets after 8 pm or before 7 pm, because the machines shutdown 1 hour during the drawing at 7:30 pm. Instant tickets (scratch offs) can be purchased and win/lose instantly. While the Daily 3 can be purchased once a day and you can go kill something while you wait. If you leave the game before the drawing you won't win. On the bright side if the game crashed and you didn't save you didn't lose either. No matter where you are in the game the announcement will arrive at 19:30, if you have a Daily 3 ticket.

 

Save this in CLEO

as Lotto.txt

 

 

{$CLEO}thread 'LRTYBUY' :LRTYBUY_100wait 0if$onmission == 0jf @LRTYBUY_100ifPlayer.Defined($player_char)jf @LRTYBUY_100ifPlayer.Controllable($player_char)jf @LRTYBUY_10000BF: [email protected] = current_time_hours, [email protected] = current_time_minutes  //For Daily Drawing//Betting machines shut down for one hour during drawings.ifnot [email protected] == 19jf @LRTYBUY_100//Enter pink glowing circle if0102:   actor $player_actor stopped_near_point_on_foot -832.0529 742.3014 11.2885 radius 1.0 1.0 2.0 sphere 1 jf @LRTYBUY_100010B: [email protected] = player $player_char money [email protected] > 0jf @LRTYBUY_100//Need some input/output to playerPlayer.CanMove($player_char) = [email protected] = 0                                  00BA: text_styled 'LRTY01' 6000 ms 2    //Titlewait 500003E5: text_box 'LRTY02'                 //Instructions Y/N:LRTYBUY_150wait 0 if 05EE:  key_pressed 78  //VK_...         //Player said Nothenjump @LRTYBUY_200endif 05EE:  key_pressed 89  //VK_...         //Player said Yesjf @LRTYBUY_15003E5: text_box 'LRTY03'                 //Instructionswait 500003E5: text_box 'LRTY04'                 //Instructionswait 500003E5: text_box 'LRTY05'                 //Instructionswait 500003E5: text_box 'LRTY06'                 //Instructionswait 500003E5: text_box 'LRTY07'                 //Instructionswait 500003E5: text_box 'LRTY08'                 //Instructions:LRTYBUY_200wait 100                                //long delay for keypress timingif and0019:   [email protected] > 0 05EE:  key_pressed 65  //VK_...then   [email protected] -=1   0109: player $PLAYER_CHAR money += 1   //Decrease Betendif and001D:   [email protected] > [email protected]:  key_pressed 68  //VK_...then   [email protected] +=1   0109: player $PLAYER_CHAR money += -1  //Increase Betendif and 0019:   [email protected] > 9 05EE:  key_pressed 81  //VK_...then   [email protected] -=10   0109: player $PLAYER_CHAR money += 10  //Decrease Bet [email protected] -= 10 //Adjustment for checkif and001D:   [email protected] > [email protected] 05EE:  key_pressed 69  //VK_...then   [email protected] +=10   0109: player $PLAYER_CHAR money += -10  //Increase Bet [email protected] += 10 //Undo Adjustment01E5: text_1number_highpriority 'G_COST' [email protected] 1000 ms 1 if 05EE:  key_pressed 83  //VK_...             //Final Amout to bet on ticketjf @LRTYBUY_200//Ask for Ticket type Instant or Daily 3?03E5: text_box 'LRTY09':LRTYBUY_250wait 0 if 05EE:  key_pressed 68  //VK_...             //Player buys Daily 3thenjump @LRTYBUY_400endif 05EE:  key_pressed 73  //VK_...             //Player buys Instantjf @LRTYBUY_250//Instant Tickets :LRTYBUY_300wait 0  0209: [email protected] = random_int 0 6                   //Odds are 1 in 6 - generates a number betwee 0 and 5if        [email protected] == 1  then       0010: [email protected] *= 2 // integer values    0109: player $PLAYER_CHAR money += [email protected]      01E5: text_1number_highpriority 'LRTY14' [email protected] 4000 ms 1   wait 5000else   00BC: text_highpriority 'LRTY15' 4000 ms 1     wait 5000end//Leave Storegosub @LRTYBUY_900jump @LRTYBUY_100//Daily 3:LRTYBUY_400wait 0  03E5: text_box 'LRTY10'         //Pick a number [email protected] = 0:LRTYBUY_410wait 0if 05EE:  key_pressed 49 //VK_... [email protected] = 1endif 05EE:  key_pressed 50 //VK_... [email protected] = 2endif 05EE:  key_pressed 51 //VK_... [email protected] = [email protected] > 0jf @LRTYBUY_41003E5: text_box 'LRTY11'         //Pick a number [email protected] = 0:LRTYBUY_420wait 0if 05EE:  key_pressed 52 //VK_... [email protected] = 4endif 05EE:  key_pressed 53 //VK_... [email protected] = 5endif 05EE:  key_pressed 54 //VK_... [email protected] = [email protected] > 0jf @LRTYBUY_42003E5: text_box 'LRTY12'         //Pick a number [email protected] = 0:LRTYBUY_430wait 0if 05EE:  key_pressed 55 //VK_... [email protected] = 4endif 05EE:  key_pressed 56 //VK_... [email protected] = 5endif 05EE:  key_pressed 57 //VK_... [email protected] = [email protected] > 0jf @LRTYBUY_430//Leave Storegosub @LRTYBUY_90000BC: text_highpriority 'LRTY16' 4000 ms 1  wait 5000//Drawing time is 7:30 pm 19:30, Wait in loop until drawing:LRTYBUY_440wait 000BF: [email protected] = current_time_hours, [email protected] = current_time_minutes  //For Daily Drawingif [email protected] == [email protected] == 30jf @LRTYBUY_440// Odds are 1 in 27 - 3*3*3 = 270209: [email protected] = random_int 0 3            [email protected] += 10209: [email protected] = random_int 0 3           [email protected] += 40209: [email protected] = random_int 0 3  [email protected] += 702FF: text_3numbers 'LRTY13' [email protected] [email protected] [email protected] time 4000 ms 1  wait 5000if and    003A:    [email protected] == [email protected]:    [email protected] == [email protected]:    [email protected] == [email protected]      then       0010: [email protected] *= 15 // integer values    0109: player $PLAYER_CHAR money += [email protected]      01E5: text_1number_highpriority 'LRTY14' [email protected] 4000 ms 1   wait 5000else   00BC: text_highpriority 'LRTY15' 4000 ms 1     wait 5000endjump @LRTYBUY_100:LRTYBUY_900fade 0 500 wait 500  Actor.PutAt($player_actor, -830.1718, 749.1267, -100.0):LRTYBUY_910wait 0 if   Player.Defined($player_char)jf @LRTYBUY_910wait 1000 fade 1 500 Player.CanMove($player_char) = Truereturn

 

 

Save this in CLEO\CLEO_TEXT

as Lotto.fxt

 

 

LRTY01 Lottery TicketsLRTY02 Do you need instructions? Y/NLRTY03 Use ~h~~k~~GO_LEFT~~w~ to decrease the bet, and the ~h~~k~~GO_RIGHT~~w~ to increase your wager.LRTY04 Bet by $10's using the ~h~~k~~VEHICLE_LOOKLEFT~~w~ or the ~h~~k~~VEHICLE_LOOKRIGHT~.LRTY05 We sell 2 types of tickets, Instant tickets and Daily 3.LRTY06 Instant tickets Odds in winning are 1 in 6 and pays out double your wager.LRTY07 Odds of winning the Daily are 1 in 27, the winning ticket pays out 15 times the total wager.LRTY08 When ready press the ~h~~k~~VEHICLE_BRAKE~ ~w~button to buy a ticket from the clerk.LRTY09 Do you want a Daily 3 or an Instant? D/I LRTY10 Please choose your first digit 1,2,or 3.LRTY11 Please choose your next digit 4,5,or 6.LRTY12 Please choose your last digit 7,8,or 9.LRTY13 Today's winning Daily number is ~1~ - ~1~ - ~1~.LRTY14 Looks like you won $~1~!LRTY15 That ticket was a loser.LRTY16 The results announced at 7:30 pm.

 

 

Don't gamble and drive! lol.gif

 

Ok here below is a fresh code for this with several locations on both East and West side to buy tickets. Most of them drugstores and robbery locations.

Link to new code and files added 07.17.13

Edited by toonskull

Share this post


Link to post
Share on other sites
toonskull

I am still living, so is my brother. Just haven't been doing this stuff for a very long time now. Dusted off GTA and I was playing the horses OTB. Got to thinking how the horses are just all the same. Sure the odds are all different but the chance in winning is all about the speed. If you use the Sanny Builder ... do you guys still use the Sanny Build, it has been 5 years. Sorry, I was off on Mars. I decompiled the Main.SCM and found this code;

:OTB_9527if   5 > [email protected] jf @OTB_9975 if 001E:   $Current_Time_in_ms2 > [email protected]([email protected],5i) // (int) jf @OTB_9633 0208: [email protected]([email protected],5f) = random_float_in_ranges -0.8 1.0 0209: [email protected] = random_int_in_ranges 1500 2500 008B: [email protected]([email protected],5i) = $Current_Time_in_ms2 // (int) 005A: [email protected]([email protected],5i) += [email protected] // (int) [email protected]([email protected],5i) = 1 

The op code 0208 is the key for all 5 horses speed. So I decided to make mine more in line with the odds of winning.

:OTB_9527if   5 > [email protected] jf @OTB_9975 if 001E:   $Current_Time_in_ms2 > [email protected]([email protected],5i) // (int) jf @OTB_9633 0208: [email protected] = random_float_in_ranges -0.5 1.0   //Horse 1 Speed0208: [email protected] = random_float_in_ranges -0.6 1.0   //Horse 2 Speed0208: [email protected] = random_float_in_ranges -0.7 1.0   //Horse 3 Speed0208: [email protected] = random_float_in_ranges -0.8 1.0   //Horse 4 Speed0208: [email protected] = random_float_in_ranges -0.9 1.0   //Horse 5 Speed0209: [email protected] = random_int_in_ranges 1500 2500 008B: [email protected]([email protected],5i) = $Current_Time_in_ms2 // (int) 005A: [email protected]([email protected],5i) += [email protected] // (int) [email protected]([email protected],5i) = 1 

I broke the [email protected] array down into the individual horse speeds. The values mean that horse #5 is going to need a lot more luck winning. The negative value is the jump backwards on the track while all horses have the same possible forward motion. Unfortunately to make this a Cleo Mod would be a lot harder. Remember to make a back up of your original Main.SCM and copy the new one in its place.

Share this post


Link to post
Share on other sites
DK22Pac

Uh... Maybe you're still using a toothbrush to clean your teeth, are you, an ancient human?
Ofcourse we don't use SannyBuilder.

Share this post


Link to post
Share on other sites
gts.

Uh... Maybe you're still using a toothbrush to clean your teeth, are you, an ancient human?

Ofcourse we don't use SannyBuilder.

Do not generalize DK. ;)

Share this post


Link to post
Share on other sites
toonskull

Uh... Maybe you're still using a toothbrush to clean your teeth, are you, an ancient human?

Ofcourse we don't use SannyBuilder.

Toothbrush? OMG! I am using the toilet brush, no wonder the ladies tell me to wipe off that sh*tty grin. lol

 

After running the code through some trials, it seems that #1 wins more often but not by much. I was surprise by both numbers 2 and 3 beating him. Over all the negative values in the loop just adds more "drag" to the horse. If the number is zero he will creep across the screen from left to right never falling back. What I wanted to do originally was make a mission about horse doping, at the end of the mission you go place a bet on the horse and it just sails across the screen. I might still do it, it just means I would have to remake the whole OTB script within the Cleo script.

 

This mission starts with the mob asking you to find a vet who dopes horses. Gets into a lot of chasing people down and double dealing.

 

A lot of work to do it. I am still lacking the proper set for the stables but I was planning to use an empty barn in Blueberry. Just show CJ walking into the barn holding the stupid dildo from the game. <Fade to Black> <play audio clip> "I don't want a nightstick up the ass." (then I am digging through the sound banks for a horse whinny but don't think it exists) <Fade from Black> CJ walks out and places the bet. You don't keep the winnings but get paid for the mission.

Share this post


Link to post
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
Sign in to follow this  

×

Important Information

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