Jump to content

Mission Coding


Craig Kostelecky

Recommended Posts

Craig Kostelecky

spaceeinstein you forget to include debug mode update in latest scm update!

oh and can you fix this bug that on mission "TURISMO" you can race with a bike can you fix this and add text like you need car to this race! or something

 

The debug script now uses the same scm as the regular game. Open the gta-lc.ini and look for this section:

[Debug]SaveLog=1UseDebugSCM=0BetterDebug=1WindowsDebug=1MasterDebug=1MasterExtras2=1MasterPackagesCompleted=0MasterParamedicCompleted=0MasterVigilanteCompleted=0MasterFirefighterCompleted=0MasterIEGaragesCompleted=0Master100Completed=0SkipHelp=0ViceCity=0

And make sure MasterDebug is set to 1.

 

And why would you not allow the player to ride a bike for Turismo? That mission is fun on a PCJ600.

  • Like 1
Link to comment
Share on other sites

Rachel Amber

 

spaceeinstein you forget to include debug mode update in latest scm update!

oh and can you fix this bug that on mission "TURISMO" you can race with a bike can you fix this and add text like you need car to this race! or something

 

The debug script now uses the same scm as the regular game. Open the gta-lc.ini and look for this section:

[Debug]SaveLog=1UseDebugSCM=0BetterDebug=1WindowsDebug=1MasterDebug=1MasterExtras2=1MasterPackagesCompleted=0MasterParamedicCompleted=0MasterVigilanteCompleted=0MasterFirefighterCompleted=0MasterIEGaragesCompleted=0Master100Completed=0SkipHelp=0ViceCity=0

And make sure MasterDebug is set to 1.

 

And why would you not allow the player to ride a bike for Turismo? That mission is fun on a PCJ600.

 

thanks and you know what you're right! this mission is fun on pcj600 ;)

Edited by NOskillx
Link to comment
Share on other sites

spaceeinstein

Thank you for the source. I'm surprised a lot of work was done in assembly.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...
spaceeinstein

Progress update: I have been doing a lot of behind-the-scenes work so that my code looks "clean" and easier to maintain, so much so that I actually used part of it for my Opcodes Restoration Project. I've also managed to recreate most of vcopcode.asi in C++ rather than in assembly -- 34 opcodes including those handling the donkey magazines and platinum pickups. I found out that the platinum pickups in vcopcode.asi did not faithfully recreate GTA III's behavior because Vice City does not have "treadable" objects for the platinum pickups to spawn on. I've set up a file treadables.dat that lists all the useful treadable objects for the platinum pickups to spawn on. vcopcode.asi can be completely removed in the future. Currently I am unhappy with the stability of the update because the changes are many, so I'm not releasing it as a formal update. If you want to help me test it, the download is here (make sure to remove vcopcode.asi).

Edited by spaceeinstein
  • Like 4
Link to comment
Share on other sites

Craig Kostelecky

I've been playing for the past half hour to an hour or so with no noticeable bugs yet. Though I've been trying to get to Big N' Veiny as well as Bullion Run, but I have not been able to pass Trial By Fire or Uzi Money yet. Not because they're difficult, but because the gang members are just not spawning enough. I know the scm is the same (or at least I thought it was) between the two games. Is something else changing how the characters appear?

 

Edit: Played some more. I've now got 61 attempted missions and the only ones I've passed were Turismo and Ice Cream You Scream. I just cannot see enough Nines or Triads in time.

Edited by Craig Kostelecky
  • Like 1
Link to comment
Share on other sites

spaceeinstein

I suspect AK-73's vc_traffic.asi isn't configured properly. Removing the asi file allows enough gang members to spawn during those two missions.

Edited by spaceeinstein
  • Like 1
Link to comment
Share on other sites

Craig Kostelecky

Holy sh*t, that did make a difference. I passed both missions with about a combined 3.5 minutes to spare.

 

First runs of Bullion Run and Big N Veiny looked good. I'll replay them in a bit to check for other things I remember testing way back when.

 

When did the Portland tunnel become flooded with water again? That was one of those things that was fixed very early on that is now broken again.

Link to comment
Share on other sites

spaceeinstein

I readded the water effects. I'm currently working on creating cull zones to locally remove the water effect instead of globally removing it.

  • Like 1
Link to comment
Share on other sites

spaceeinstein

I've found five places that show the water effects. You can add these lines into the cull.ipl file to disable them when you are inside these zones. Are there anymore locations that you know of?

 

# Portland Porter Tunnel entrance0.0, 0.0, 0.0, 385.0, 155.0, -15.0, 430.0, 190.0, -10.0, 1024, 00.0, 0.0, 0.0, 430.0, 115.0, -15.0, 615.0, 195.0, 50.0, 1024, 00.0, 0.0, 0.0, 615.0, 105.0, -10.0, 640.0, 185.0, 50.0, 1024, 00.0, 0.0, 0.0, 640.0, 95.0, -5.0, 655.0, 175.0, 50.0, 1024, 00.0, 0.0, 0.0, 655.0, 85.0, 0.0, 670.0, 165.0, 50.0, 1024, 00.0, 0.0, 0.0, 670.0, 75.0, 5.0, 685.0, 155.0, 50.0, 1024, 00.0, 0.0, 0.0, 685.0, 75.0, 10.0, 700.0, 145.0, 50.0, 1024, 0# Crusher0.0, 0.0, 0.0, 700.0, 20.0, 0.0, 865.0, 125.0, 50.0, 1024, 00.0, 0.0, 0.0, 780.0, -15.0, 0.0, 890.0, 60.0, 50.0, 1024, 00.0, 0.0, 0.0, 890.0, -15.0, 0.0, 940.0, 45.0, 50.0, 1024, 0# Shoreside Vale Porter Tunnel north entrance0.0, 0.0, 0.0, -1080.0, 30.0, 0.0, -1000.0, 70.0, 14.0, 1024, 0# Shoreside Vale Porter Tunnel south entrance0.0, 0.0, 0.0, -910.0, -615.0, 0.0, -875.0, -470.0, 13.0, 1024, 0# Staunton South Station0.0, 0.0, 0.0, -180.0, -1655.0, -5.0, -125.0, -1615.0, 15.0, 1024, 00.0, 0.0, 0.0, -159.0, -1686.0, -5.0, -105.0, -1655.0, 15.0, 1024, 0
Edited by spaceeinstein
  • Like 1
Link to comment
Share on other sites

Craig Kostelecky

That dos it. There's another spot by the dam where the water is raised.

Link to comment
Share on other sites

spaceeinstein

Opcodes and crane audio update (last updated 2016-08-23)

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

Changes:

  • Crane audio is added! You have to download the latest SFX update to hear this. Something surprising when I was making this is that the EV crane also generates sound when lifting vehicles. The crane is so tall that you normally don't hear it but with helicopters you can fly up to hear it.
  • Water effects have been readded. To deal with the water effects appearing on land, I created zones in the CULL section of the IPL that hides water effects while you are in these zones.
  • All the necessary opcodes from vcopcode.asi have been replaced with improved code; you can delete vcopcode.asi. 015E was buggy and has been omitted (Mss32Hooked.dll already implemented it), and 02C7 has been properly recreated. I don't think the level transition opcodes do anything but I recreated them anyways so that the SCM code can be as close to GTA III as possible.

    [table]

     

    00AC IS_CAR_STILL_ALIVE

     

    0130 HAS_PLAYER_BEEN_ARRESTED

     

    0178 IS_PLAYER_TOUCHING_OBJECT

     

    021D SET_FREE_BOMBS

     

    0228 IS_CAR_ARMED_WITH_BOMB

     

    0240 FLASH_OBJECT

     

    0242 ARM_CAR_WITH_BOMB

     

    0255 RESTART_CRITICAL_MISSION

     

    0299 ACTIVATE_GARAGE

     

    029C IS_BOAT

     

    02A0 IS_CHAR_STOPPED

     

    02B9 DEACTIVATE_GARAGE

     

    02C3 START_PACMAN_RACE

     

    02C5 GET_NUMBER_OF_POWER_PILLS_EATEN

     

    02C6 CLEAR_PACMAN

     

    02C7 START_PACMAN_SCRAMBLE

     

    02C8 GET_NUMBER_OF_POWER_PILLS_CARRIED

     

    02C9 CLEAR_NUMBER_OF_POWER_PILLS_CARRIED

     

    02D9 CLEAR_NUMBER_OF_POWER_PILLS_EATEN

     

    02EE IS_PROJECTILE_IN_AREA

     

    02EF DESTROY_PROJECTILES_IN_AREA

     

    02F0 DROP_MINE

     

    02F1 DROP_NAUTICAL_MINE

     

    032D SET_CAR_BLOCK_CAR

     

    03A5 CHANGE_GARAGE_TYPE_WITH_CAR_MODEL

     

    03C9 IS_CAR_VISIBLY_DAMAGED

     

    03FB SET_CAR_STAYS_IN_CURRENT_LEVEL

     

    03FC SET_CHAR_STAYS_IN_CURRENT_LEVEL

     

    041F OVERRIDE_HOSPITAL_LEVEL

     

    0420 OVERRIDE_POLICE_STATION_LEVEL

     

    0438 SET_CHAR_IGNORE_LEVEL_TRANSITIONS

     

    044E SET_CAR_IGNORE_LEVEL_TRANSITIONS

     

    044F MAKE_CRAIGS_CAR_A_BIT_STRONGER

     

    0452 ENABLE_PLAYER_CONTROL_CAMERA

    [/table]

Edited by spaceeinstein
Link to comment
Share on other sites

Craig Kostelecky

I suspect AK-73's vc_traffic.asi isn't configured properly. Removing the asi file allows enough gang members to spawn during those two missions.

 

I was thinking about this. Should we try to tweak those files so they work correctly or should we scrap them? Along with the weather one. That was something that was done in my hiatus from the mod.

  • Like 1
Link to comment
Share on other sites

spaceeinstein

If it's possible to tweak the settings, I would prefer that over scrapping them for now. I have not done much research on traffic and weather behavior.

  • Like 1
Link to comment
Share on other sites

Craig Kostelecky

If we do keep them, we should probably integrate the asis into our other files. We can leave the ini files out to allow users to tweak them for their own versions.

  • Like 1
Link to comment
Share on other sites

spaceeinstein

Looping sounds update (last updated 2016-08-26)

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

Changes:

  • Many sounds using 018D have been properly converted. You have to download the latest SFX update to hear this.
    • 30: Meeouch Sex Kitten Club
    • 32: Sex Club Seven
    • 41: Mr. Wong's Laundrette
    • 42: Roast Peking Duck
    • 44: Cipriani's Ristorante
    • 60: Salvatore's place
    • 62: Cinema next door to Sex Club Seven
    • 64: Cinema east of Portland Pay 'N' Spray
    • 66: Executive Relief cinema
    • 71: Old school hall
    • 73: Warehouse rave
    • 91: Hepburn Heights BF Injection
  • Pager sound effect has been readded.
  • Debug mode: Passing "Two-Faced Tanner" while in debug mode will set the maximum wanted level to 6 instead of 5.
Craig, what's the limit to your Dropbox? You can delete older versions of the sfx.raw/sdt files. I've discovered a mistake after the recent upload so they're not needed anymore and I didn't want them to take up space. Edited by spaceeinstein
Link to comment
Share on other sites

Craig Kostelecky

 

Craig, what's the limit to your Dropbox? You can delete older versions of the sfx.raw/sdt files. I've discovered a mistake after the recent upload so they're not needed anymore and I didn't want them to take up space.

 

3.7 of 9.25 GB used. We're good for a while.

Link to comment
Share on other sites

 

I suspect AK-73's vc_traffic.asi isn't configured properly. Removing the asi file allows enough gang members to spawn during those two missions.

 

I was thinking about this. Should we try to tweak those files so they work correctly or should we scrap them? Along with the weather one. That was something that was done in my hiatus from the mod.

 

 

The weather module / settings should be non-controversial and working fine.

 

The traffic is quite a bit more difficult to get right. Using AK73's module often leads to less traffic than in a vanilla game, even if you increase the density multipliers by a fair amount.

Unsubstantiated speculation on my part: AK-73 didn't modify all memory areas necessary for traffic density control with his module, or misinterpreted some memory addresses to influence something different than they really do?

If we cannot get the correct density out of the module all of the time (i.e. consistently), we should not include it.

The inconsistency was the biggest issue back when, because sometimes you would get large crowds, but most of the time (especially where it would be actually relevant, during "kill X gang members" missions) we'd see far less people than necessary to be able to pass the mission, as you noticed as well.

 

So, how can I get up to speed with the latest files? - I'm getting a feeling it's quite fragmented, with some stuff in a GitHub repo, some files in Dropbox, some files on space's webspace - help?

Link to comment
Share on other sites

spaceeinstein

The GitHub repo is for dinput8.dll. Dropbox contains the master files, which is essentially the only thing you need. My webspace is for my latest updates.

Link to comment
Share on other sites

Craig Kostelecky

Message me your Dropbox account and I'll add you.

 

Nice seeing you :)

Link to comment
Share on other sites

spaceeinstein

Another looping sounds update (last updated 2016-08-29)

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

Changes:

  • Almost all looping sounds have been added. I couldn't figure out how R* does the randomization to some of the audio loops so I copied the assembly code directly. Again, you have to download the latest SFX update to hear this.
    • 5: Hepburn Heights tower
    • 7: Hepburn Heights tower
    • 37: Sawmills/Bitch N Dog Food
    • 51: Airport
    • 59: Hepburn Heights tower
  • Scrapped the treadables idea; treadables.dat is no longer needed. I implemented a much better way to spawn the platinum pickups by utilizing the IDE flag that denotes which models are roads.
  • drawBackfaces.dat has grown to 113 models.
These updates have become one of the largest thing I've ever done. So many areas of knowledge all packaged into one download. Edited by spaceeinstein
Link to comment
Share on other sites

Craig Kostelecky

These updates have become one of the largest thing I've ever done. So many areas of knowledge all packaged into one download.

 

You can say that again. I am absolutely delighted with what you've done lately.

Edited by Craig Kostelecky
Link to comment
Share on other sites

Scrapped the treadables idea; treadables.dat is no longer needed. I implemented a much better way to spawn the platinum pickups by utilizing the IDE flag that denotes which models are roads.

III paths could be converted to VC IDE paths format (unused in vanilla VC). Then, with one limit changed you'd have both III paths without converting to IPL format and treadables without any external files - because treadables are models with paths.

  • Like 3
Link to comment
Share on other sites

spaceeinstein

Thanks Silent. I didn't think it would be that simple to use III paths. I did a copy-paste with some modifications but some have differences in behavior. It might take some time to get all the paths working.

Edited by spaceeinstein
Link to comment
Share on other sites

Lurk Morrison
Was there an update containing a d3d8.dll? There was a version in my game folder and I accidentally overwrote it with one from the SkyGfx mod and now LC crashes while loading/starting a game. Looked through all my LC downloads and couldn't find a backup. Edited by Kurropt Antagonist
Link to comment
Share on other sites

spaceeinstein

This mod should have no files that share the same filenames with the SkyGFX mod. Did you make sure to delete all SkyGFX files?

Link to comment
Share on other sites

spaceeinstein

There's one issue with III's IDE paths that I can't figure out how to solve. Vice City can read III's format just fine without issue as long as the treadables limit is increased, node types are changed, and industNW paths are reindexed. They behave nearly the same as VC's IPL paths. But roadblocks cannot be added. VC's roadblock system is dependent on the extra flag that III's format doesn't have. When adding the three missing values including the flag to III's format, the game reads them initially but it never stores them. I can't figure out how III's roadblock system works so I am unable to recreate it. Should we keep VC's IPL paths or move onto III's IDE paths?

Edited by spaceeinstein
Link to comment
Share on other sites

There's one issue with III's IDE paths that I can't figure out how to solve. Vice City can read III's format just fine without issue as long as the treadables limit is increased, node types are changed, and industNW paths are reindexed. They behave nearly the same as VC's IPL paths. But roadblocks cannot be added. VC's roadblock system is dependent on the extra flag that III's format doesn't have. When adding the three missing values including the flag to III's format, the game reads them initially but it never stores them. I can't figure out how III's roadblock system works so I am unable to recreate it. Should we keep VC's IPL paths or move onto III's IDE paths?

I dislike III path system for some reasons. There's bad software support for them and they don't work stable when you try to create a new path. VC path system uses world coordinates and they allow you to port them into later RW/RAGE game engines using 3ds max or other software.

Link to comment
Share on other sites

When adding the three missing values including the flag to III's format, the game reads them initially but it never stores them.

Interesting... how did you come to that conclusion? I can't say I noticed it but I also have no reasons not to believe you on that one.

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.