If a virtual machine with save states of whole system is used (which I personally used for some expreiments), system time is also restored upon reload. I am, however, not making any claims on whether it was indeed used or not.
For those wondering, the link in question is a meaningless discussion of whether it's possible to enter base in Black Project unnoticed.
Interesting vehicles in SA are on 3 minute timer, unlike III and VC where they can stay forever.
Saving immunities for player can't work because player is deliberately made full immune during save routine and therefore he always loses them on regaining control.
Besides, all immunities for player are removed during mission cleanup, after cutscenes and with 01B4 opcode with parameter 1.
Game crashes because Stallion in garage has NaNs instead of position coordinates, but finding why game stored it this way - or even stored it at all - is almost impossible.
Oh I see, should have had a look before posting, yeah, that's definitely a building :D
Here is a link to an image from post: #
Huge bump but maybe some people will find this interesting. I analysed pathfinding during this missions and can confirm that touching grass affects patterns.
Game keeps track of last 'building' player's vehicle collided with. If last 'building' happens to be classified as 'treadable' (essentially part of road system), all vehicles that have missions MISSION_RAMPLAYER_FARAWAY (which they happen to have in Bait if player is not close to him) use this 'treadable' as target. If it is not, they use node closest to player as their target. In fact it means that if player touched Staunton road last, colombians will drive to Staunton (using tunnels) until player touches ground again.
It should be also noted that determining closest node is glitched. Game uses only X and Y coordinates and use 0 instead of Z, which may cause weird pathfinding. (ie this leads to inablity to leave car while in bait yard as they can't use treadable as target since player is not in vehicle, so they use closest node, which happens to be near dam).
By the way, vehicles are not 'buildings' so in fact colliding with barracks only shouldn't make their patterns good. However, maybe someone will test it using address mentioned below to check if game only registeres collision with vehicle.
If anybody is wondering what is a 'building' and what is 'treadable', use this address in cheat engine as reference:
It should be universal for all versions of the game. If this byte is 1, last touched building is treadable. If it's 192, it's not. For 'better' patterns this value should be 192 during flight.
Thanks to blacklev for a lot of testing that allowed me to find reasons of pattern differences. :)
If player has wanted level and at least one cop on foot is after him, gangsters will not attack player, even if they are hostile to him by default, if it's a rampage etc, but flee instead. Thanks to CasterTM for asking to investigate it. Works the same in VC.
Technically husho's definition is the only one that whould define what any% has been among what was suggested. Also instapassing is arbitrary code execution and difference is just in what "arbitrary code" we execute. Even with forbidding returns on empty stack there is a chance something similar exists and can be exploited by usual instapasses if we manage to hit "jump somewhere" opcode.
Seriously, though, "old any%" would be absolutely arbitrary making zero sense. You either forbid everything or nothing. I can only see adding misc categories "any% no replays" or "any% intended OMF", the latter being a rule that when you are on a mission your on mission flag must be 1 [and it would be forbidden to start missions during other missions]. However, I choose B because my opinion is that categories are defined by goals and not on how you play.
A few additions:
- what is shown in the video is just an example what can happen, of course I used memory editing to get it; however the trick should be achievable without it.
- setup is indeed crazy for this, KZ has already posted the initial idea, however after all it's 60 threads, not 66 (my mistake)
- number of milliseconds doesn't have to be precise. Values between 53475 and 53716 are acceptable. Best of them will start KYFC immediately (like 53656, 53649, 53625...), some of them will create trigger for the mission (as if a phonecall from Lance has been answered) (like 53475, 53526, 53716...), some will crash the game.
- it doesn't have to be Hyman Condo, any property works as long as game doesn't crash on starting Vigilante
I've thought about approximate setup for how to make this work, probably this (ofc now quickest but may work):
- start a new game, complete An Old Friend
- dupe The Party 10 times (starting new instance after pier cutscene, otherwise game crashes) [any mission that immediately unlocks next one works]
- complete them all
- do Cone Crazy for money
- (not necessarily but for safety): buy some property with garage to store a copcar in
- enter shopkeeper area, kill him, leave his spawn area for 53.5-53.7 seconds, enter it then [watch video below]
- if game crashed, reset or reload game if it was saved
- if nothing happened, try going to mansion, maybe trigger is there (you need 1000$ for mission to start btw)
- if mission has started, hooray
Obviously, all this lacks testing and I guess nobody except for me managed to do something like this, so there is a chance that I have made a mistake somewhere. However if this is true, in theory this trick allows to remotely start any mission and do a lot of stuff, depending on how much we waited for hardware shopkeeper. This would also allow instapassing vigilante since we can also jump into its script but, again, this is a very precice timing.
Update: for item 6 there is easy setup: This also shows "alternative" version, when mission doesn't start immediately but doesn't crash.
There are no other impacts of severity of crimes other than time until wanted level is decreased (in case of WL = 1 or being in desert/badlands) or number of new crimes until wanted level is increased. This article is fairly accurate: http://www.gtamodding.com/wiki/Wanted_level
As for whether game should spawn police bike or police car, post that Patrick linked describes exact conditions. There are rare circumstances when game intentionally loads cop car when it should spawn cop bike (i.e. set pieces), but they are irrelevant since these cases aren't really random cop vehicle spawns.
Patrick, let me correct you a little bit. Topic you linked is not about why people should reenter heli after Death Row. The reason for it is because game marks vehicle Lance entered as mission vehicle, which removes it from interesting vehicles list, and it is set to despawn after mission ends - unless player enters it after mission again. The topic you linked is about why heli may despawn during mission when player is rescuing Lance. This weird mechanic removes vehicle from said list if any ped wants to pull Tommy out of his car but driver door is blocked.
Anyway, to add to the topic: I understand it this way: helicopter despawns between after "The Chase" and after "Supply and Demand". I see these reasons of despawn:
- Heli parked too close to Diaz mission marker. Check location in PB runs to compare locations, game may clear some area that removes all vehicles in it and make sure you park it in safe zone.
- You entered Squalo after "The Fastest Boat". Unlikely but possible - there is no need to do so and it despawns heli.
- You use more than one car during "The Fastest Boat" to get to boatyard. In runs, only Infernus is used to get there, and even if you destroy it in the process, getting in any other car (not counting boat itself) despawns heli.
As far as I know, if you look down during "Phnom Pehn '86" and see that heli is alright, it should not despawn because of reason 1).
Additional note on similar topic: to keep heli at the mall before Cop Land, you have to use only Infernus from the mall used for teleport until "Bar Brawl" bikers cutscene. If you want to use PCJ from the mission, you have to force game to despawn Infernus is said cutscene. If you leave it too far so that it isn't despawned, or destroy it yourself, getting into any car other than this Infernus will despawn heli. After "Bar Brawl" until detonation cutscene in "Cop Land" you can only use PCJ (or Infernus if it wasn't despawned in "Bar Brawl").
Video:
Formally, it's enough to start the mission while on taxi mission with passanger in cab. However, unfortunately game crashes if some special models (like Joey's) are not loaded. Guaranteed way to avoid crash is to start Salvatore's Called A Meeting and end it and then immediately instapass (like shown in the video, mission is aborted by firefighter). If I remember correctly, it was tested that starting Dead Skunk In the Trunk after attempting and failing mission doesn't lead to a crash of instapass. However, trying this instapass without starting mission first with current any% route leads to a crash.
Edit: you don't actually require a passanger, you can keep caps without picking one up.
Nice find! However, it takes 3 shots to blow up.
It happens because Voodoo's gas tank location (at least in game's view) is right where number plate is. Each gas tank shot inflicts 1100 damage to a car and since Voodoo has 3000 health in this mission, it takes 3 shots to blow it up (which is seen in the video).
Unfortunalely, following LV missions will set wanted level back to normal: Interdiction, Verdant Meadows, The Meat Business, Freefall, Saint Mark's Bistro
Here is a video: Pay attention to "CCarCtrl::ListOfInterestingVehicles[0]" and "CCarCtrl::ListOfInterestingVehicles[1]" in Cheat Engine window. As you can see, taxi is removed from the list if taxi driver, who hasn't despawned yet, tries to enter it back, but driver door is blocked. This means that it turns into usual traffic car which despawns if player gets too far away from it.
Therefore to avoid despawn:
- you can steal taxi in Luigi's girl, as you will safely reenter it in Don't Spank Ma Bitch Up
- you can drive safely making sure you don't have left door blocked while driver still hasn't despawned
- you can reenter taxi near Stallion to add it back to player's vehicles list.
I tried to write a big post with some explainations, but it was becoming pretty complex and there were too many things that I don't fully understand :)
However, I will still reply with basic info on spawning.
"Rare" vehicles (actually, class "big": Trashmaster, Flatbed, Coach, Bus, Securicar and Linerunner) spawn in Portland only if player is on Callahan Bridge or here:
Does probability of spawn depend on time? Yes, but not really for these vehicles. Just there are 33% more vehicles during the day than in the night. People reading SCM may want to have a look on opcode 0152, which sets probability of vehicle spawn in different areas. Class big is the last one in the list of arguments, and the second one is density of vehicles in the area. Argument one means day (1) or night (0).
Does mission affect spawns? Not really. However, if game forces model to be loaded during mission, it is much more likely to spawn on the streets (i.e. Securicars during Van Heist).
Does your vehicle affect spawns? Again, I would say no. I didn't find any references to player vehicle's model while loading new model or while choosing vehicle to spawn. However, of course, if you are driving Securicar, spawning one more is more likely (model is in memory).
However, I am pretty sure that starting/ending replay forces to load more models, but I didn't get tons of Securicars when I was trying this to manipulate spawns.
Here is a modified save: http://gtasnp.com/JCAkYj The time is 19:10. Exit savehouse, get copbike in garage, start vigilante and finish it before 19:31. If you now start Grove 4 Life between 19:34 and ~19:46, OMF will be set to 0.
Edit: 19:35 is more consistent, also sometimes Grove 4 Life starts twice. Edit2: Grove 4 Life is actually the only storyline mission that can be used for this glitch. The other one with a structure allowing such a trick is Black Project, but there is not girlfriend's house nearby to get a possible phonecall.