Towncivilian

MTA:VC Development Thread

Recommended Posts

GTA3:MTA's SCMs are approaching completion.

Stoku and I have created an .asi file that will do the following in MTA:VC:

- Start the game automatically (no more pressing "start game" twice!)

- Disable replays

And for GTA3:MTA:

- Disable replays

- Disable drive-by

- Disable time advance after wasted

- Disable money earned upon hitting other vehicles while driving

- Disable $25 earned upon entering a taxi vehicle

- Disable trains

Still need to find a few more memory addresses for both games and add detection for MTAClient so that it doesn't interfere with single-player.

SCM changes:

- Radar is no longer visible in the "wasted" screen (the player's blip would rotate 180 degrees every few seconds, looked annoying)

- Wanted stars moved off-screen

- Hospital treatment is now free.

Will probably add code to display the closest Ammunation when you use the car scanner.

Share this post


Link to post

Good to hear the progression as always. I was never much of a GTA3 player for the PC as I was always the old school console gamer back in the early 2000s.

I feel eventually a few of us could perhaps organise a reunion based on both of these games, whether or not these new versions will ever be released (fingers crossed they do). We could spread word around the community. A few hours one afternoon perhaps. Though until that day comes, all the best with the development.

Share this post


Link to post

Thanks for your continued interest, Z3RB1AN.

I'm wondering whether reverse engineering the various no-CRC EXEs will provide any hints about substituting the CRC values in MTAClient with those of updated files instead of disabling the CRC protection outright. If such a loader could be created then it would be possible to release an updated version of MTA 0.5 on the forums, after asking the team of course. While it'd be very hackish, it's not like the rest of MTA 0.x isn't. I have very little experience with reverse engineering though, so hopefully Stoku will be able to help me out here. I have sent an email to [DRuG]NikT asking whether he's got any of the no-CRC loader's sources, and I'm hoping for an answer.

It turns out that some of the memory addresses Stoku found for GTA3 have undesirable side effects. We'll try to track down some that will work fine.

Since both my SCM and our ASI file modify memory addresses, I've had to do some digging in IDA to find the proper memory addresses for VC 1.1. Supposedly, the offset between the 1.0 and 1.1 EXEs is 8 bytes according to GTAForums, but in my experience it wasn't. I don't think there is a constant offset as some 1.0 memory addresses worked fine with 1.1.

For VC, we found memory addresses to disable time advancement after the player is wasted (to prevent a minor visual glitch where it's dark (or bright, depends on when you died) for a second or so in the spawn menu after respawning, then bright (or dark) as time resyncs).

The source to our asi file is available here (sorry for really messy changelog, we had some issues with SVN).

I will throw up the SCM sources for both games sometime, but I don't think anybody will want to wade through the 39912-line (not counting blank lines) block of text that is MTA:VC's DM SCM with no labels and variable names as I've been doing. GTA3:MTA would be more tolerable as it has label names, variable names, and comments by trx and myself, but still, is there much point to making the sources available? Who else is going to do any SCM work for MTA besides myself? SCM does not lend itself to multiple people working on the same file at once. MTA:VC's SCMs are easily decompiled and compiled without issue (in fact that is how I still work on them; no comments, variable, or label names), but GTA3:MTA requires use of GTAMA and the original GSR source files. Maybe I'll just put GTA3:MTA's GSRs up for posterity.

Share this post


Link to post

Some updates:

GTA3 SCMs:

Placed original carscanner code back in since MTA:VC's had issues. I managed to speed it up so it doesn't have that annoying pause when trying to use it initially.

SSV: Fixed Yakuza gang members sometimes spawning on the roof of Ammunation after exiting one.

VC SCMs:

Vice 1.1 compatibility for memory addresses.

Wanted stars are now invisible for any resolution.

Only thing left to do for GTA3:MTA's SCMs is polishing up vehicle placement for all three islands. Vehicle repositioning done! No progress for the asi as of yet, but Stoku and I shall finish that up soon.

MTABrowser will have the capability to download a Welcome Message (mtaclientwelcome.dat) upon startup, with a backup server or servers in place to guarantee availability of the welcome message, as well as graceful handling of unavailability in the event that all servers for the file are down unlike MTAClient which just crashes in that case.

I should have some more significant news soon.

Share this post


Link to post

I got MTAVC executing SCMs of a different filename. This is good in that I may not need team support with fixing up the client/server to have a release, but I need to find a way to run CRC checking for those files now. I also have to get GTA3:MTA doing this, but that's easy. GTA3:MTA now executing other SCMs. Yay.

Also fixed the motorcycle passenger glitch correctly (you can get on as a passenger alone with no crashing). Credit goes to kyeman for that (got it from VCMP 0.1c source).

Here's a funny glitch I had to fix after fixing the motorcycle crash:

After getting off a motorcycle as a passenger with no driver, I was able to control the motorcycle using my sprint and directional keys!

EDIT: Forgot to make the video Public, oops.

Share this post


Link to post

Fixed the bug where a passenger of a motorcycle was able to drive it, despite being a passenger (behavior demonstrated in the video above, but with the passenger actually on the bike instead). I fixed this in the previous post as I said, but that fix wasn't good enough. Credit to kyeman again.

It seems that the motorcycle fix from VC-MP may not be of much use in MTA as there is a constant crash which occurs if a player tries to get on a motorcycle that has a driver. I can't seem to solve this crash. It's probably related to the issues motorcycles have regardless in stock 0.5 where several cycles of both the driver and passenger getting on the same bike would eventually cause a carjack by the passenger and, in turn, a crash. This sometimes rendered the vehicle unusable for the original driver. No idea where these issues stem from, and I may not be able to track them down. I may need to implement the previous workaround for the passenger crash which was to check if a driver is on the motorcycle, and if there isn't, then don't get on.

Initial island loading and inter-island load times have been shortened dramatically by removing the splash screens between them. The entire map is almost completely seamless save for a small stutter at load points. Credit to vice-players team for that patch.

Share this post


Link to post

Actually, motorcycles have several inherent crashes and instances where the vehicles become unusable in stock 0.5 and such situations seem relatively common during gameplay. I think it's best to simply workaround the most prominent crash (passenger with no driver) for now and fix the underlying cause(s), which are almost undoubtedly caused by the SCM, in a later version.

Share this post


Link to post

Need testers tomorrow for MTA 0.5r2, around 2PM EST (7PM GMT). Join #mtavc on IRC (irc.gtanet.com) around the testing time if interested. Please have both GTA3 and Vice (whichever ones you have) installed beforehand!

Share this post


Link to post

For those of you who are unsure, that is 20:00 CET.

Use timezoneconverter.com if you need to convert the time that way.

Share this post


Link to post

Testing went well, with 23 players capping out my home connection! x86 graciously provided a better connection to host with and testing concluded just now at 16:20 EST.

Several bugs were found:

  • Vice DM:
  • Some players had issues with a crash during game loading on Windows 7
  • Spawning as a Sailor then Robber (for example) retains M4 and grenades
  • Grenades/molotovs firing distances is not synced, will have to fix weapon.dat to retain maximum distance but also keep jumping
  • Infinite grenades/molotovs glitch (which was present in 0.5 too)
    GTA3 SSV:
  • Gamemode starting is not synced properly
  • Carjacking produces a crash

All of these issues except the Windows 7 and infinite grenades/molotovs will definitely be fixed before release.

Thanks to everybody who tested, and x86 for providing server hosting!

Share this post


Link to post

Confirmed a new bug:

"Choosing game path results in Suspected Trainer Usage+if you cancel out of the window to choose the .exe, you receive a "You have not specified the path to the correct executable ()", sometimes followed by the "Unable to execute"/wrong executable error."

So far restarting the client seems to temporarily remedy it. I noticed also that from playing VC and then switching to III that the folder the Browse window pops up to is always the last chosen folder for any game path. For example, when switching to III from VC, it popped up and defaulted to the folder for VC. Later when I switched back to VC from III, it defaulted to the III folder.

Edit: Found more for VCDM:

- Seems the infinite ammo bug when holding down the "shoot/attack" button affects other weapons as well. Users do not see the attacker reload their weapon.

- Mexicans' ammo accumulates after death. It doesn't reset. May affect other skins as well.

- Ambulance needs to have health gain removed, same reason as the police car's shotgun

- SWAT Enforcer needs to have armor gain removed, same reason as the police car's shotgun

- When the game is loaded and the user minimizes, they cannot speak into the out-game chat in the client. Typing works, but it won't allow you to send. A generic Windows warning notification sound is given. Sometimes this doesn't happen too.

Share this post


Link to post

Mexican ammo accumulation and other weapon retaining bugs fixed.

File path issue requires client work.

Ambulance HP/Enforcer armor/Golf club from Caddy/Shotgun shells from Police are easy memory fixes already done by vice-players team, I can put them in.

Walking weapon bugs probably requires client work, need to confirm in stock 0.5.

Need to confirm that chat bug.

Share this post


Link to post

Chat bug is brand new. Hasn't reproduced yet since it's happened, and it went away on it's own after occurring several times in a row after re-minimizing. I'll watch for it again. It may have just been a fluke.

Share this post


Link to post

Was it in my laggy server, or did you notice it in x86's server as well? I couldn't even chat in my own server after a bit.

Share this post


Link to post

Just your server. MTA 0.5.x's server wasn't built to handle so many packets at one time on such high speed connections, given it's age, but yes, x86's server handled it much better under the load. Your poor server was committing suicide trying to handle all the data at once lmao.

Share this post


Link to post

Overall I really enjoyed the session last night and it was good to roll with some of the other vets. As I’ve mentioned TC, you deserve all the credit given.

I did come across some issues, though they have already been mentioned so hopefully they will get patched up. The first few rounds in the stubby war was a little insane, not all the shots were completely synced, there were times where I should have been finished, but the bullets just went straight through me. However after the change of server, it actually eased up and it started becoming a fair contest. I say a contest but in general it wasn’t competitive, just fun, the way it should be.

I thought everything else ran smooth, much more than the original version. I remember I crashed once with sugar, though it was when I was reversing. The same situation happened again when a passenger entered my vehicle, I reversed again then crashed. Maybe it was just a coincidence that it happened both at the same time.

The chat was on and off really, I noticed it more ingame rather than the client that my message would appear 2-3 seconds later then it should have been.

Share this post


Link to post

I believe all chat and extreme desync issues were caused by my connection trying to cope with 23 players, so those would hopefully be relatively rare given a good host.

Were the crashes with vehicles in GTA3:MTA only? They may be related to the carjacking issue previously mentioned, or something else entirely. Since they're both when reversing a vehicle, maybe it's reproducible.

Thanks for the feedback!

Share this post


Link to post

Both of these crashes occurred in VC. I personally think it was just a coincidence that they both happened when I was reversing with a passenger as I stated above.

Share this post


Link to post

Yep, most likely coincidence in that case. I'm also glad to hear that sync didn't worsen from 0.5, since there's more stuff running constantly in the SCM now (such as stunting/unique jumps, extra checks for some conditions, etc) which would potentially slow things down for time-critical things such as sync, but then again most of the sync-related code in the SCM is not as time-critical as stuff done by MTAClient and MTAServer, so any effect would likely go unnoticed.

Share this post


Link to post

Everything was really cool for me, except the bloody VC issue.

I don't know if it could be my installation, I'll try a clean one at a later time.

Didn't crash once :D

Share this post


Link to post

There were several people running W7 in the test and only you and LooooP were having any issues with launching Vice with 0.5r2, so I'd lean towards an issue with VC or W7 misconfiguration.

If you still have the beta installer, you can reinstall VC and MTA 0.5r2 and join any MTA 0.5 server to see if it launches.

Share this post


Link to post

Due to significant GTA3:MTA issues necessitating a re-do of all SCM work, a release will have to be pushed to January 31, 2011 (MTA 0.5's 6th birthday). There will be at least one more MTA:VC test sometime after Christmas. Sorry for the delay. :(

Share this post


Link to post

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

  • Recently Browsing   0 members

    No registered users viewing this page.