DSRally - game is finished

Hi everyone!

I finished my next project. :partying_face:
Another car racing game? Yes. In principle it is a further development of DSDrive. DSRally now has cars that adapt to the terrain. The opponents can find the route themselves based on a hight map. The tracks are completely created in CGE using hight maps. The opponents also got an engine sound. There is a local multiplayer mode available. The controls can be freely assigned, depending on personal preferences. It can also be controlled with gamepads. Fake shadows are no longer used, but rather real dynamic shadows. The cars use the TCastleSpotLight on the track “Night” to simulate the car lighting. A check point system is implemented. The laps will only be counted if all check points are passed through in the correct order.

Please let me know what you think and as always, suggestions for improvement are welcome.

https://didisoft.itch.io/dsrally





5 Likes

Wow it looks really great.

1 Like

Fantastic! Congratulations!

It is great to see your projects, you have a lot of content and gamplay there – lots of cars, tracks, multiplayer in this case… I’ll make a news post about your project around next weekend.

Oh, the night looks cool!

I was playing various tracks. It’s fun!

Some suggestions:

  1. The DSRallyV1.0.zip download from DSRally V1.0 by didisoft game development contains also some sources – third_person_camera_standalone.dproj. third_person_camera_standalone.lpr, CastleEngineManifest.xml etc. You likely want to remove them, i.e. they belong only to “source code” ZIP.

    Note: To package a “release” version of your game easily, you can use CGE feature “Run → Package (Release To Users)”, this should automatically include all proper files and only them. You can use CastleEngineManifest.xml rules to include/exclude specific files (like include libeffekseer.dll).

  2. The font of big letters when you start the race (“1”, “2”, “3”, “GO”) is a little blurred.

    You can increase the “OptimalSize” of the TCastleFont component to make it sharper on the edges. See Text and fonts | Manual | Castle Game Engine .

    You can also use distance field fonts, Distance Field Font Rendering – Castle Game Engine , though they are for now only available for UI text (e.g. using TCastleLabel), not 3D text (using TCastleText).

  3. The car is shaking a bit (it seems when going on slight upward / downward slopes). I would say to try to counter-act this (but I don’t know, depending on your physics setup). TCastleRigidBody ( Castle Game Engine: CastleTransform: Class TCastleRigidBody ) and TCastleCollider ( Castle Game Engine: CastleTransform: Class TCastleCollider ) have some properties to play with, like Restitution, Friction, Mass (on colider), AngularVelocityDamp, LinearVelocityDamp (on rigid body). I would play with them and see can I counteract this shaking.

    In case this is specific to my system, I’m attaching a video showing the shaking. Download it here:

    Proton Drive

  4. I would add “going back” option, on the down arrow, to allow to easier “back up” from situations when I crashed myself into a tree etc. :slight_smile: I see you also have a nice automatic solution there (pressing “forward” when facing a tree will actually back up the car a bit), still it seems a standard to have a “back up” key to be able to do this like in a real car.

    Hm, I see the controls actually have a “back” key (down arrow for 1st player, S for 2nd player) but it seems to not work for me?

  5. There is “Z fighting” on the “striped stands” (that show which direction to go) in the “City” track. It seems you have there 2 planes, close to each other, and the Z buffer precision is not good enough to determine which is in front. The solution should be just making them a bit further apart. This screenshot hopefully help to illustrate what I’m talking about :slight_smile:

1 Like