Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!   (92,665 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  
spaceeinstein

Havana Outfit Fix

Recommended Posts

spaceeinstein

Introduction

Havana Outfit Fix is a modification for Grand Theft Auto: Vice City utilizing the CLEO Library. It checks for the misplacement of the Havana outfit pickup and repositions it to the correct location. After completing "Two Bit Hit", the Havana outfit pickup is created in a clothing shop in Little Havana. But doing "Cop Land" or "No Escape?" afterwards causes the game to misplace the pickup behind an invisible barrier. This can normally be avoided if those missions are completed before "Two Bit Hit" but with this mod you can complete the missions in whatever order you want without the pickup being misplaced.

 

Installation

  • Download the mod at GTAGarage. If you are unable to open SEHavana.rar, rename the file to SEHavana.zip. Download the mod from my website.
  • Download CLEO for Vice City at http://cleo.li/.
  • From the CLEO download, copy VC.CLEO.asi into Vice City's folder.
  • If CLEO.asi already exists in the folder, you must delete that file.
  • From this mod download, place the CLEO folder containing SEHavana.cs into Vice City's folder.

This mod has been tested only on VC v1.00 US.

 

Source

 

Sanny Builder

const
STRUCT_BEGIN = 0x945D30
STRUCT_SIZE = 0x34
INDEX = [email protected]
TEMP_VAR = [email protected]
PICKUP_LOCATION = [email protected]
STRUCT_ELEMENT = [email protected]
PICKUP_AMMO = [email protected]
TEMP_FVAR = [email protected]
end

var
INDEX : int
PICKUP_LOCATION : int
STRUCT_ELEMENT : int
PICKUP_AMMO : int
end

0000:
while true
    wait 250
    if
        048C:   pickup_at -1024.5 -433.9 10.9 available_or_will_respawn
    then
        INDEX = 0
        while if INDEX < 335
            STRUCT_ELEMENT = INDEX
            STRUCT_ELEMENT *= STRUCT_SIZE
            STRUCT_ELEMENT += STRUCT_BEGIN
            // get pickup location
            PICKUP_LOCATION = STRUCT_ELEMENT
            0A8D: TEMP_FVAR = read_memory PICKUP_LOCATION size 4 virtual_protect 0
            if and
                TEMP_FVAR > -1025.0
                TEMP_FVAR < -1024.0
            then
                PICKUP_LOCATION += 4
                0A8D: TEMP_FVAR = read_memory PICKUP_LOCATION size 4 virtual_protect 0
                if and
                    TEMP_FVAR > -434.0
                    TEMP_FVAR < -433.0
                then
                    PICKUP_LOCATION += 4
                    0A8D: TEMP_FVAR = read_memory PICKUP_LOCATION size 4 virtual_protect 0
                    if and
                        TEMP_FVAR > 10.0
                        TEMP_FVAR < 11.0
                    then
                        // get pickup ammo
                        PICKUP_AMMO = STRUCT_ELEMENT
                        PICKUP_AMMO += 0x18
                        0A8D: TEMP_VAR = read_memory PICKUP_AMMO size 4 virtual_protect 0
                        if
                            TEMP_VAR == 5
                        then
                            // set location
                            PICKUP_LOCATION = STRUCT_ELEMENT
                            0A8C: write_memory PICKUP_LOCATION size 4 val -1025.2 virtual_protect 0
                            PICKUP_LOCATION += 4
                            0A8C: write_memory PICKUP_LOCATION size 4 val -429.2 virtual_protect 0
                            PICKUP_LOCATION += 4
                            0A8C: write_memory PICKUP_LOCATION size 4 val 10.8 virtual_protect 0
                        end
                    end
                end
            end
            INDEX += 1
        end
    end
end

GTA3Script

LVAR_INT index, temp_var, pickup_location, struct_element, pickup_ammo
LVAR_FLOAT temp_fvar

NOP
havana_loop:
    WAIT 250
    IF IS_ANY_PICKUP_AT_COORDS -1024.5 -433.9 10.9
        index = 0
        WHILE index < 335
            struct_element = index * 0x34
            struct_element += 0x945D30
            // get pickup location
            pickup_location = struct_element
            READ_MEMORY pickup_location 4 0 temp_fvar
            IF temp_fvar > -1025.0
            AND temp_fvar < -1024.0
                pickup_location += 4
                READ_MEMORY pickup_location 4 0 temp_fvar
                IF temp_fvar > -434.0
                AND temp_fvar < -433.0
                    pickup_location += 4
                    READ_MEMORY pickup_location 4 0 temp_fvar
                    IF temp_fvar > 10.0
                    AND temp_fvar < 11.0
                        // get pickup ammo
                        pickup_ammo = struct_element + 0x18
                        READ_MEMORY pickup_ammo 4 0 temp_var
                        IF temp_var = 5
                            // set location
                            pickup_location = struct_element
                            WRITE_MEMORY pickup_location 4 -1025.2 0
                            pickup_location += 4
                            WRITE_MEMORY pickup_location 4 -429.2 0
                            pickup_location += 4
                            WRITE_MEMORY pickup_location 4 10.8 0
                        ENDIF
                    ENDIF
                ENDIF
            ENDIF
            index += 1
        ENDWHILE
    ENDIF
    GOTO havana_loop

 

 

Edited by spaceeinstein

Share this post


Link to post
Share on other sites
Blackbird88

Wow it actually works on existing save games! I guess you keep forcing the coords or something. Source please? Curious to see what you did.

Share this post


Link to post
Share on other sites
Crspy

Wow it actually works on existing save games! I guess you keep forcing the coords or something. Source please? Curious to see what you did.

I guess it checks if the player passed these two missions then if Pickup was created then Destroy it and create another one in the correct position. ( since it's stored in one global variable after all )

Edited by Crspy

Share this post


Link to post
Share on other sites
spaceeinstein

That wouldn't work if you failed the missions, which also cause the pickups to be misplaced. Want to make another guess? Blackbird88's guess is closer.

Edited by spaceeinstein

Share this post


Link to post
Share on other sites
Crspy

That wouldn't work if you failed the missions, which also cause the pickups to be misplaced. Want to make another guess? Blackbird88's guess is closer.

Okay another guess , Check if the pickup at the wrong position is available or will respawn (048C) , then destroy the pickup and create it in the correct position...... i presume that should work correctly ?

Share this post


Link to post
Share on other sites
George Costanza

is it done the same way as silent moved save in amdd dogg's house?

Share this post


Link to post
Share on other sites
gts.

Source please? Curious to see what you did.

Yes. Sanny Builder and GTA3script, please.

Share this post


Link to post
Share on other sites
spaceeinstein

I did use 048C to check for the pickup's existence at the location but I didn't delete and recreate the pickup. I went through all the pickups in the game to find the matching pickup and just changed its coordinates. I've updated my post with the source code.

Edited by spaceeinstein

Share this post


Link to post
Share on other sites
Savannahpaige

I just went threw over half the game, and did copland first before the others.. And i got the glitch! I was so glad to find a real fix.. Then i realized GTA Garage is still down after over a week.. Is there anywhere else to download this?

Share this post


Link to post
Share on other sites
spartaque12
8 hours ago, spaceeinstein said:

Oh hey, I didn't give them permission to mirror my mod. Here's a link for the mod direct from me: http://spaceeinstein.altervista.org/mods/SEHavana.zip

they doesnt care about any permissions , its libertycity 

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.