News:

Herr Otto Partz says you're all nothing but pipsqueaks!

Main Menu

SimCar laps on Stunts tracks

Started by Duplode, August 04, 2025, 03:49:39 AM

Previous topic - Next topic

Duplode

Here is a 2:17.xx lap driven with SimCar car #4 on ZCT289, the current ZakStunts track. It was driven OWOOT almost to the end (I made a concession at the final pair of ramps).

You cannot view this attachment.

The rocket feature is an interesting addition. Besides being useful for Stunts tracks (as the readme suggests), it fits the setting pretty well.  (The mechanics may be very different, but jump boosts in Stunts 1.1 are a form of boost that's crucial to the gameplay. One might even draw parallels to the special modes of the Speedgate and the KITT.) Oh, and the loops feel nice to go around!

Matei

#1
You drive quite well, but I don't know how you drove through the corkscrew at 1:55 like that, i.e. like people usually do in Stunts. I only do it like this (0:57, 3.03, 4:51):

 https://matei.one/idxscr.html#videos

[edit] Actually it seems easy to do with all 4 cars, I don't know why I didn't do it until now. [/edit]

QuoteIt was driven OWOOT almost to the end

That is impossible with some tracks and with physics, unless I also put a rocket for braking. I would just jump normally over the ramps and return from the grass, or the water. As can be noticed, the water is not deep and the car doesn't sink in it as it also shouldn't in Stunts, where the ships can also be put on land and they look the same. Some tracks also have buildings on water and people must be able to get to them, obviously.

Duplode

Quote from: Matei on August 04, 2025, 09:02:44 AMhow you drove through the corkscrew at 1:55 like that, i.e. like people usually do in Stunts.

Taking care to enter at a low angle, in order to use the whole length of the cork, plus a dab of rocket boost to make sure there's enough speed. Took me a while to figure out, too!

Matei

Car 4 - 2:28, car 3 - 2:35, car 2 - 2:22, car 1 - 1:57. I drove as I mentioned and took the longer version of the track, I don't know why you did. I attached the replays from Stunts, with both versions and "Porsche 962", because I couldn't jump over the last ramps with any slower car. Long version of the track - 1:41:40, short version - 1:39.70. Length of the track is ~2.18 km, so average speed in Stunts ~93 km/h. How did you take the video?

You cannot view this attachment.

You cannot view this attachment. 

Matei


Duplode

Quote from: Matei on August 05, 2025, 01:15:42 AMI drove as I mentioned and took the longer version of the track, I don't know why you did.

Because I was still figuring out how to do the l/r corks, and one cork seemed easier than two  :D

Quote from: Matei on August 05, 2025, 01:15:42 AMHow did you take the video?

I recorded the game window with vokoscreenNG, then scaled down the video with ffmpeg so that it would be small enough to attach here.

Matei

Ok, I'll just keep using the camera.

Matei

Second video, short version of the track, car 1, 1:47, a little outside of the road after the last jump.

https://www.youtube-nocookie.com/embed/sDFCu-F47Qg

or

https://www.youtube.com/watch?v=sDFCu-F47Qg

Duplode

2:10.xx with car 4 using the short path. More so than going around the cork, the trickiest bit in using the short path is keeping control exiting the cork towards the loop, not unlike doing loops at full speed under GAR on Stunts. There's a cute little slide catch after the second loop.

You cannot view this attachment.

Also attached is a Stunts P962 ride. This one happens to be a GAR lap, so I have posted it as such at ZakStunts.

Matei

Game updated, see attached screenshot and the documentation.

https://matei.one/idxscr.html

Banked curves fixed. Stunts (1990) uses 3D models with more or fewer details. The models with fewer details were used in the rendering until Mr. Herrnove fixed it and are used in modelling the contact between the car and the terrain. I also used them for that purpose in my game, but for banked curves it wasn't the best choice, so I replaced the model with fewer details with the model with more details there, after removing the dashed yellow line, of course.

Duplode

#10
1:46.xx at ZCT241 (inner path, car 4). The improved banked corners are very much noticeable; I feel far more confident on them now!

You cannot view this attachment.

Quote from: Matei on August 17, 2025, 08:00:58 AMStunts (1990) uses 3D models with more or fewer details. The models with fewer details were used in the rendering until Mr. Herrnove fixed it and are used in modelling the contact between the car and the terrain.

In Stunts, the contact models of the track elements are separate from the graphical models, though they were of course made to correspond to each other. The contact models closely match the high-detail graphical models (btur rather than zbtu, pipe rather than zpip, vcor rather than zvco, etc.), which are the ones seen in-game while driving. (In contrast, the low-detail graphical models are used in the bird's eye render in the track selection menu.)

(Why have I added the "closely match" caveat? The graphical models of the u/d corks have glitchy non-planar quads, which don't make sense in a contact model. That led to a minor mismatch in those specific elements.)

Matei

Quote from: Duplode on August 19, 2025, 07:08:14 AMThe contact models closely match the high-detail graphical models

No, see first attached screenshot.

Quote(btur rather than zbtu,

The car in Stunts moves like on zbtu*, not like on btur.

* the original zbtu

Quotevcor rather than zvco, etc.)

zvco is just like vcor except for the yellow dashed line, see 2nd and 3rd attached screenshots.

Quotethe high-detail graphical models [...] which are the ones seen in-game while driving.

Since Mr. Hernove fixed the rendering, because the low detail models were also seen in-game while driving, at larger distances.

QuoteThe graphical models of the u/d corks have glitchy non-planar quads, which don't make sense in a contact model.

Non-planar quad means 2 triangles, so no glitch.

Duplode

#12
Quote from: Matei on August 19, 2025, 09:36:43 AMThe car in Stunts moves like on zbtu*, not like on btur.

* the original zbtu

To find out which of the graphical models the car moves along, we can hex-edit the plane definitions in GAME.RES so that every other segment of the banked corner is flattened. btur has 18 segments, and zbtu has 9. Therefore, if the contact model followed btur, a car moving along the full length of a banked corner would bounce nine times, while if the contact model followed zbtu, we'd instead see either four or five bounces. The result of doing this test can be seen in the video below. The car bounces nine times, thus showing that the contact model follows btur and not zbtu. (If you want to reproduce the experiment, move the original GAME.PRE file out of your Stunts folder and replace it with the GAME.RES attached here.)

You cannot view this attachment.   

Quote from: Matei on August 19, 2025, 09:36:43 AM
Quote from: Duplode on August 19, 2025, 07:08:14 AMThe contact models closely match the high-detail graphical models

No, see first attached screenshot.

While it's true that the pumps of the gas station only exist in the high-detail graphical model, that does not generalise to all other track elements. In particular, it's worth noting that the gas station and other scenery elements are pure obstacles, which the game handles differently than elements with drivable surfaces like banked corners. (It is these drivable surfaces that are in part defined by the GAME.RES planes.)

Quote from: Matei on August 19, 2025, 09:36:43 AMSince Mr. Hernove fixed the rendering, because the low detail models were also seen in-game while driving, at larger distances.

Indeed; in the unmodified game the low-detail models are used for distant objects while driving. I blame my failure to mention that yesterday on the lateness of the hour. In any case, if our expectation is that the graphical models match the contact models while driving, our concern will mostly be with the high-detail models, as they are the ones used for the track element you are driving on at any given moment.

Quote from: Matei on August 19, 2025, 09:36:43 AM
QuoteThe graphical models of the u/d corks have glitchy non-planar quads, which don't make sense in a contact model.

Non-planar quad means 2 triangles, so no glitch.

This would be a sensible way to solve it, but it is not what Stunts does for the u/d cork contact models. That's an interesting topic in its own right; later (in the weekend, maybe) I'll post a separate thread about it.

Matei

Quote from: Duplode on Yesterday at 02:36:22 AMIn any case, if our expectation is that the graphical models match the contact models while driving, our concern will mostly be with the high-detail models, as they are the ones used for the track element you are driving on at any given moment.

The low detail models are close enough to the high detail models and in my game they were better for the contact model, with one exception. Another observation:

 https://wiki.stunts.hu/wiki/Track_element_building

QuoteThe graphical model, however, only controls the looks of the element. Actual physical behaviour is determined by a physical model. The physical model is only partly stored in resource files.

Indeed, the low detail element for the road on the hill has kerbs, but the car doesn't interact with them in any way. That's really annoying. Can GAME.RES/PRE be modified to fix that? Just asking.

QuoteThis would be a sensible way to solve it, but it is not what Stunts does for the u/d cork contact models.

Anyway, for those "u/d corks"/spirals, the low detail models were better for the physics in my game. You can replace the z***.geo and z***.col models with the high detail models to check it out. Program "elrdline.c" in directory "src" is for eliminating the dashed yellow lines.

Duplode

Quote from: Matei on Yesterday at 08:45:30 AMIndeed, the low detail element for the road on the hill has kerbs, but the car doesn't interact with them in any way. That's really annoying. Can GAME.RES/PRE be modified to fix that? Just asking.

Modifying GAME.RES wouldn't be enough on its own. Giving a contact model to the hill slope kerbs amounts to adding a new kind of obstacle for slope roads (something analogous that already exists in the game are the slalom blocks). For that, we'd need to extend the relevant functions in seg004, most likely after analysing and porting them to C in the context of Restunts. We roughly know what it'd take, but there's still a fair amount of work to do until we get to that point.