Jump to content

Mission Coding


Recommended Posts

Miscellaneous update (last updated 2016-09-20)

Important! Delete vcopcode.asi and IIItoVC.asi if they exist!

Changes:

  • Fixed incorrect coordinates for zones in the navig.zon file. They were CHINA, EASTBAY, IND_ZON, YAKUSA, and COM_ZON. This also fixes all the zones in east Staunton Island having issues with zone names display and police scanner reports.
  • Fixed my mistake with the looping moaning sounds at Redlight District not playing at the correct pitch.
  • Added looping sound 77 (police cell beating). There is support for looping sound 102 (fire on Callahan Bridge) but III's particle opcode hasn't been implemented yet.
  • The FBI Car and FBI Rancher have the correct pitch for their secondary siren.
Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069088870
Share on other sites

@EddoWilliams2016, you should look at the source code here and here. They're all documented and labeled.

I don't understand the codes you gave me (they are very complicated! :panic: ), I hate to repeat and\or spam. But still, can you give me the memory addresses you used to change the colors/glows/halos of the pickups? I need 'em for my mod.

Edited by EddoWilliams2016
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069096732
Share on other sites

It's not complicated at all if you look for the comments referencing colors. Look for the comment in my code -- "pickup colors, blue-green-red". This tells you that this is where I change the pickup colors for the adrenaline/health/info/etc. pickups. The next line has two numbers -- 0x006881C0 and 0x80FF80. The first number is the memory address. The second number is the value at the memory address to set to. Silent's code is in a similar way. Just look for the comments "corona color".

Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069098375
Share on other sites

It's not complicated at all if you look for the comments referencing colors. Look for the comment in my code -- "pickup colors, blue-green-red". This tells you that this is where I change the pickup colors for the adrenaline/health/info/etc. pickups. The next line has two numbers -- 0x006881C0 and 0x80FF80. The first number is the memory address. The second number is the value at the memory address to set to. Silent's code is in a similar way. Just look for the comments "corona color".

Thanks for your help, now I understand it. But the second source code link doesn't work for me, can you send me the source code from that second link you gave me?

Edited by EddoWilliams2016
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069100106
Share on other sites

It sounds like you are using a really old browser. Here's a copy of the file on a different website.

Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069106644
Share on other sites

It sounds like you are using a really old browser. Here's a copy of the file on a different website.

Thank you very much! But I have a question:

 

Will you make a mod which makes the VC markers work like in LCS?

 

I mean, look at this screenshot:

 

http://www.grandthef...ips-GTALCS3.jpg

 

As you can PLAINLY see, the color of the arrows match the color of the bilps on the radar. So is it possible to implement something like this in VC? If yes, then please make them work like in LCS.

 

Sorry if I spammed\bumped\posted in wrong place etc...

Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069110432
Share on other sites

spaceeinstein

I'll think about it. I've my own projects to work on first. All requests should go in the Requests topic. I'm not the only one who can look through the game code.

Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069110464
Share on other sites

spaceeinstein

Script update (last updated 2016-10-04)

Important! Delete vcopcode.asi and IIItoVC.asi if they exist!

  • Blip colors now use GTA III's colors by default. 0165 is no longer needed to force the change.
  • Theoretical support for Steam. gta-lc.asi prevents unrecognized EXEs from executing so this feature can't be tested on this mod. It seems to work on the base Vice City game though.
  • Minor fixes for edge cases for Pac-Man pickups (they don't happen in the default game normally). Several times I thought I was finished with these pickups but several times I still find bugs that need fixing.
  • Fixed my auto-aim texture modification crashing the game if texture for it does not exist.
  • Source code: Renamed opcodes 00AE, 00AF, and 0450.
  • Added new opcodes. Plaster Blaster can now be played just like GTA III!

    [table]

     

     

    Opcode

     

    Command

     

     

    00A2 IS_CHAR_STILL_ALIVE

     

    02A2 ADD_PARTICLE_EFFECT

     

    03DD ADD_SPRITE_BLIP_FOR_PICKUP

     

    03F8 GET_BODY_CAST_HEALTH

    [/table]

bodycast_th.jpg

rave_th.jpg

Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069116052
Share on other sites

  • 2 weeks later...
spaceeinstein

Minor changes update (last updated 2016-10-17)

Important! Delete vcopcode.asi and IIItoVC.asi if they exist!

  • Changed mission audio (03CF/etc.) assignment to 1 instead of 2 for "Decoy" and "Arms Shortage". Why were they assigned to 2?
  • Removed ped roads switches (022A/022B) in "Arms Shortage". Why were they there?
  • "Give Me Liberty" fire particles and fire audio, and "Silence The Sneak" smoke particles use opcodes restored in the previous updates.
  • I have separated options for many VC-related features. They can be controlled through the Misc section in the gta-lc.ini file.

     

    [Misc]AllowHorizonShips=0UseVCCarAlarm=0AllowPlaneTrailsBanners=0UseVCWantedSystem=0UseVCAutoAimTexture=0
    The ViceCity key under the Debug section now only affects features within the script. This includes shortcut taxis, clothes pickups, and Distribution mission.
  • New opcodes added.

    [table]

     

    Opcode Command Mission(s)

     

    0135 CHANGE_CAR_LOCK Don't Spank My Bitch Up, Cutting The Grass, Deal Steal, The Thieves, Rigged To Blow

     

    016F DRAW_SHADOW Chaperone

     

    0250 DRAW_LIGHT Give Me Liberty, Chaperone

     

    02A1 MESSAGE_WAIT Kingdom Come

     

    02CD GOSUB_FILE Restored this for completion but use gosub instead.

     

    037F GIVE_PLAYER_DETONATOR I Scream You Scream

    [/table]

  • "Chaperone" is finally completely converted!

    rave2_th.jpg

I think I'm nearing the limit on what is possible to do for me. I have made many feature restorations attempts and many have been unsuccessful, like the motion blur opcode, boat foam animation opcode, trains, planes, and the crusher. Are there features that you think is possible for me to do? Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069151455
Share on other sites

Craig Kostelecky

I love that you separated those. Does the UseVCWantedSystem refer to the blinking wanted level after respraying, or the 3 or 4 stars after blowing up the planes?

 

If we are nearing the end of what you think you can do, then maybe it'll be a good idea to polish up this and do a formal release with all of the audio bundled with it. I'm even happy to call it the 1.0 final release (no more beta). And if MM ever comes back, he can possibly do the cutscene heads with a future update.

 

Thanks again space for giving this mod new life. My video game time has been spent lately on an awesome Metroid fan project (AM2R). If anyone is a fan of Super Metroid or Zero Mission, you need to check that out! So I am very happy with all you've done.

Edited by Craig Kostelecky
  • Like 1
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069153609
Share on other sites

spaceeinstein

UseVCWantedSystem affects the wanted stars after blowing up the planes and the second police helicopter appearing at >4 wanted level. I would like a packaged release but I don't want it to be final yet. I still want to complete the ped SFX before the final release. I've already laid the foundations to implement them but it's very boring work to transfer the audio over and categorize them correctly.

  • Like 1
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069155001
Share on other sites

spaceeinstein

Minor changes update (last updated 2016-10-21)

Important! Delete vcopcode.asi and IIItoVC.asi if they exist!

  • Scrollbars should now display text correctly all the time. The indices were off by one so sometimes the scrollbars were showing incorrect text. The Porter Tunnel scrollbar can now display different text if it's foggy or rainy. I also added in some PS2-specific text and language-specific behavior. You can check GTAModding for more details on those.
  • Two new settings for the Misc section in the gta-lc.ini file. They are enabled by default.

     

    [Misc]ShowArrowMarkerGlow=1AllowDeadPedInFrontOfCar=1
Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069161134
Share on other sites

  • 3 weeks later...

Awesome work! I'm testing this mod every year to see what has been fixed and implemented. Finally the SFX pitch issue has been fixed, the police sirene always sounded like a toycar with that wrong pitch :D

The only thing that really needs to be fixed are the animations and models, but afaik Forever L is converting the XBOX peds.

Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069195432
Share on other sites

Awesome work! I'm testing this mod every year to see what has been fixed and implemented. Finally the SFX pitch issue has been fixed, the police sirene always sounded like a toycar with that wrong pitch :D

The only thing that really needs to be fixed are the animations and models, but afaik Forever L is converting the XBOX peds.

 

Speaking about it, I've uploaded the first pack, with revised models ... :)

Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069197462
Share on other sites

Russell_Stone

I've finished testing the latest versions of your TC. I gotta say. Work you've put is tremendous. It's almost 90% crash-free now. I've been watching for LC since 2007 and I've been truly amazed by your dedication to this project. Thank you, Craig, Spaceeinstein and your team. Now I wish if there's a new vice-versa TC (VC to III) Which will take another decade (or even two) to develop, but hey. I guess, someone will look into it one day.


EDIT: I would like to have Tommy's SFX quotes back in the game, because sometimes it's boring with mute Claude. What should I change in main.scm? Which opcode?

Edited by Russell_Stone
  • Like 1
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069204441
Share on other sites

  • 1 month later...
spaceeinstein

Thank you for the positive comments! Here's an update that I've always wanted to do for a very long time but couldn't do until now.

 

Ped SFX update (last updated 2016-12-31)

Important! Delete vcopcode.asi and IIItoVC.asi if they exist!

  • Ped SFX from III now works for all gangs and a few peds! Be sure to download the latest SFX update to properly hear this. The following peds have SFX:
    • 0 - player
    • 5 - medic
    • 6 - fireman
    • 7 - normal male
    • 28 - taxi driver
    • 73 - pimp
    • 83/84 - Mafia
    • 85/86 - Triad
    • 87/88 - Diablo
    • 89/90 - Yakuza
    • 91/92 - Yardie
    • 93/94 - Colombian
    • 95/96 - Hood
    • 30 - black criminal
    • 48 - white criminal
    All other peds are muted for now. In the coming weeks I may be able to implement all ped SFX.
  • One new setting for the Misc section in the gta-lc.ini file. It is disabled by default.

     

    [Misc]UseTommySfx=0
  • Opcode 041C (SET_CHAR_SAY) has been partially implemented but there seems to be a bug in Vice City that prevents characters from talking more. There is no change to the main script for now. If you do want to try this out yourself, comment out 041C in joey2.sc and joey3.sc. This bug affects all ped sfx so peds are a lot less chatty in LC than in III.
Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069320932
Share on other sites

spaceeinstein

Ped SFX update (last updated 2016-01-04)

Important! Delete vcopcode.asi and IIItoVC.asi if they exist!

  • Nearly all ped speech SFX have been implemented! This took a lot less time than I had originally thought. Now you can travel around the city and listen to proper speeches from peds. The only ones not yet complete are the law enforcement ones.
  • Opcode 041C (SET_CHAR_SAY) uses a workaround that mostly works and has been implemented only in "Farewell 'Chunky' Lee Chong" and "Van Heist". I can't figure out what's causing ped speech to be delayed. This workaround attempts to bypass any delays that I can find and they're still being delayed. I feel it's good enough that we don't need to play the WAV audio files for those two missions.
  • The bat and pistol models are loaded during "Farewell 'Chunky' Lee Chong" to prevent invisible weapons.
  • The Portland taxi shortcut pick up points no longer block the road.
  • Opcode 058E (SET_SHORTCUT_DROPOFF_POINT_FOR_MISSION) has been modified. Now you can toggle this feature through the Misc section in the gta-lc.ini file.

     

    [Misc]UseShortcutDropoff=0
Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069327455
Share on other sites

Lurk Morrison

Opcode 041C (SET_CHAR_SAY) has been partially implemented but there seems to be a bug in Vice City that prevents characters from talking more. There is no change to the main script for now. If you do want to try this out yourself, comment out 041C in joey2.sc and joey3.sc. This bug affects all ped sfx so peds are a lot less chatty in LC than in III.

Would this plugin be of any help? http://gtaforums.com/topic/817075-ped-speech-patch-gta-vc/ Edited by Kurropt Antagonist
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069330542
Share on other sites

spaceeinstein

Thanks, but it's not enough when using the opcode. Chunky and the bank van driver (and Ammu-Nation worker) should be able to talk without fail each time the opcode is called. Even with the patch, a lot of times they won't talk.

Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069331925
Share on other sites

Thanks, but it's not enough when using the opcode. Chunky and the bank van driver (and Ammu-Nation worker) should be able to talk without fail each time the opcode is called. Even with the patch, a lot of times they won't talk.

Have you tried manipulating array at 0x693800? According to my observations, it contains delay values for every ped sound used in CPed::Say. For example, in GTA III sound 126 used for Chunky and security guard has fixed reuse delay of 1000 ms and random delay of 1000 ms, while sound 143, that is, if I understand correctly, its counterpart in Vice City, has fixed reuse delay of 5000 ms and random delay of 1000 ms. Besides, this array contains info for fixed and random delays after each sound.

Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069332081
Share on other sites

spaceeinstein

Thanks for the help. The delay did come from there but another problem surfaced that I didn't noticed before. I zeroed it out and Chunky went through all his dialogue and stopped talking. I think I found the source of this problem elsewhere. In VC, cPedComments::Process added a loop at 0x5DDB73 that III doesn't have. If I omit the loop, Chunky does not stop talking anymore, but a side effect is that it allowed groups of peds of the same model (especially noticeable in gangs) to say the same dialogue at the same time. I think the loop is to prevent duplicate ped speeches from being played though I dislike the side effect when the loop is omitted.

Edited by spaceeinstein
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069332830
Share on other sites

Thanks for the help. The delay did come from there but another problem surfaced that I didn't noticed before. I zeroed it out and Chunky went through all his dialogue and stopped talking. I think I found the source of this problem elsewhere. In VC, cPedComments::Process added a loop at 0x5DDB73 that III doesn't have. If I omit the loop, Chunky does not stop talking anymore, but a side effect is that it allowed groups of peds of the same model (especially noticeable in gangs) to say the same dialogue at the same time. I think the loop is to prevent duplicate ped speeches from being played though I dislike the side effect when the loop is omitted.

Not sure if zeroing this array is correct way to make delays acceptable. Same delay mechanics was used in GTA III, however, values were different - probably due to actual lengths of audios. I made a table comparing sounds and delay values in III and VC, maybe it might be useful.

https://docs.google.com/spreadsheets/d/1AjLreC7DituCgyXs-gtartkQt1z14DLcFMT88scogYo/edit?usp=sharing

Probably leaving some delay will prevent Chunky from saying all his dialogue too quickly and the problem with that loop will not be too important.

  • Like 3
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069333149
Share on other sites

Trial by Fire seems to have some issues. I tried completing the mission 6 times and it's way too difficult compared to GTA III. Atleast 4 to 6 triads remained while I failed the mission everyone. It's really difficult to spot 25 triads or I don't see 25 triads spawning during the mission. Could you maybe increase the density? If the same opcodes are used as GTA III, then the gameplay was much easier on III Engine.

  • Like 1
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069348832
Share on other sites

Lurk Morrison

Trial by Fire seems to have some issues. I tried completing the mission 6 times and it's way too difficult compared to GTA III. Atleast 4 to 6 triads remained while I failed the mission everyone. It's really difficult to spot 25 triads or I don't see 25 triads spawning during the mission. Could you maybe increase the density? If the same opcodes are used as GTA III, then the gameplay was much easier on III Engine.

Remove the traffic asi from the main directory.
Link to comment
https://gtaforums.com/topic/743524-mission-coding/page/7/#findComment-1069349189
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
  • 0 User Currently Viewing
    0 members, 0 Anonymous, 0 Guests

×
×
  • Create New...

Important Information

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