Feature

Speed Dreams General Feature Ideas List

This page lists our feature ideas in general. Normal work method:

  1. Got an idea? Put a feature, an idea here
  2. If it gets picked for the next planned release (by dev group decision), it gets a ticket in Trac
  3. The ticket's number is put in here and also the version number the feature will be released. like #65535 -> 2.4 Vanilla scent leather wheels
  4. When the feature is ready-to-test state or when it is approved, it is removed from this list

(for the features that already have tickets assigned, I did not change them but they may need thorough revision - kilo)

Feature Ideas

Cars

  • Visible and more complex damage. Easily configurable visual damage system for the cars (mesh deformation). Must be easy to setup for a car designer through some parameters.
  • Racing numbers on cars dynamically mapped
  • The name of the player as a car number plate or at the rear at the car (using a mono-spaced font and limit the length of player names)

  • Optimize existing, not released and additional cars: Optimize Cars For Release 3
  • Projected shadows for cars
  • Split wheel texture in some general tyre textures (street, race, rally, gp36, f1) and custom rim textures by carv- this would save much file space
  • Make various shapes of wheels available
  • Split the car mesh into separate parts like: base car shape, driver, interior, wheels and addons (wings, spoiler etc.)
    • This way we have just one mesh per car that can be modified by addons, driver, wheels and physics to fit to another class
    • If some of us creates one great skin texture it will be easy to reuse it for a modified car
    • Not every driver must wear a helmet
    • We can have various wheel shapes
    • We can mix reflective (.acc) parts with diffuse (.ac) parts
    • We can remove the driver from the car when it is out of race
    • Maybe helps for visual damages?
  • Support for 3D cockpit model. Each car can have its own 3D interior design, or use a category default as fall-back. This is a two-step process, we need to enable this feature first, artists will fill it up with content (just like skinnable cars)

Dashboard/ Cockpit

  • Create a special RPM / Speedometer per car category
  • Working meters / screens in cars
  • Improved map display using > for the direction instead of a simple point

  • #210 Side mirrors. We have one mirror, it only needs to be enhanced further. Use the recently added F2 rear view instead of current mirror code.
  • add an indicator of tire slip, say to the G-force indicator, 4 rectangle in the 4 corners to represent each tire, the colour could start for example from yellow, and reach red when the tire starts to slip.

Robots

  • Fatigue. On endurance races robots should make small errors, in an increasing amount as time elapses. Fatigue could be set to zero on pit stops?

Tracks

  • Again reworking older tracks and more details
  • Allow driving tracks in both directions. The most problematic area is the pit lane (especially for the robots) so this should imply close collaboration with robot developers
  • Using GNU Zip to compress *.acc track files would save over 75% of file size
  • Allow track 'segment width' to change
  • Allow 'border' width to change
  • Allow about 3 'side' components for each segment
  • Animated objects. Enable the use of animated objects (buoys, flags, track side objects), with an interface that makes it easy to use for a track designer
  • Separate paths for pits / alternative routes

Graphic effects in general

  • Modern graphics engine. The graphics modules should be swapped easily, just like Simu modules. The new, modern graphics engine should be decided on first after running a comparison of the existing open source ones (OSG, Ogre 3D, SFML, etc)
  • #201 Blending modes for multi texture layers as supported by OpenGL
  • #130 More effects: Cars getting dirty (dirt by driving) depending on environment and race length. The amount of dirt on cars should be adjustable, for later it can be connected to weather. However it should be already connected to driving on sand, mud or grass.
  • #131 More effects: Add a framework of particles systems for sparks, smoke, dirt, weather, etc.
  • #532 Better multi-monitor support, with bezel compensation
  • #529 Stereoscopic renderings for 3D displays/anaglyphs
  • Add support for pixel/vertex shaders and normal maps
  • #263 Robots should turn on lights at night -> define lights around a track (static light sources) and make cars' lights work (moving light sources)
  • #149 Free view camera: we only support points of view (POV) moving with a car. We should add the possibility to define more types of cameras, like Fixed camera location + fixed POV (just like stationery track-side cameras often used in TV), or hovering/chasing cameras following a car + user can change the camera position in relation to the car

Sound

  • #118 Horn sound is missing

Content in general

  • #464 In-game content manager/updater/remover
  • Countdown damage counter from actual value to zero while on repair in the pits, so the player can see how much time is left still
  • Force feedback. Decide if we use SDL or OIS or some other library by the means of a comparison test. Then develop the appropriate handler code for the chosen library. In the future it may also imply moving all input device code to the chosen library. NB: the chosen library should be available as a real cross-platform one
  • External GUI for telemetry data. The simulator can produce logs of telemetry data and we need an interface to visualize that.
  • Track editor. Mart has already started work on a new editor, but work has paused. Some calculations are better expressible in a functional language like GLPK than in C++. Changes in one track section might affect other (nearby) segments, but there are also many parameters of other segments which do not need to be recalculated. Test and demonstrate how a functional language can be used to solve and ease these problems and speed up the development of new track features. Examine how we could make the track editor much better backwards compatible, to create a track based on an older version by loading a different base file only. This would also allow us to change many details of the track structure without releasing a new version of the track editor itself in the future.
  • Better artwork footprint/maintainability. Deliver source material, get rid of RGB, move to JPEG when relevant (otherwise to PNG), clean-up useless files
  • Network racing - race again human friends and robots over the internet

Career

  • Make a driver responsible for the car. If he/she damages it, it is harder to advance. See damage model below.
  • Set up teams. For endurance races you could choose a robot player or a network player to swap places.
  • Add an other different Career race mode

Menu

  • Allow to select a music track folder
  • Tracks
    • Allow forward or reverse racing on tracks
    • Compare / submit your own race results to an Internet database and a Twitter channel for the top 2ĂŸ of a track
    • Give the tracks normal names (they are too technical) and a location, combine track previews with flags too

  • Add separate sensitivity for throttle and brake, not only for steering

Race

  • Custom Music:
    • pressing the "M" key will play music files in a specified folder (could be setup in the player settings)
    • press "M" key again will switch to the next music track
    • pressing "M" key after the last music track will turn music off
    • file format could be *.ogg
  • Improved and more advanced assists system instead of grip increases. Not necessarily more realistic (outlined below; 'Magical' implies totally BS magic assist, 'Real' implies it is used everywhere)
    • Skid Recovery Force - Assist designed to keep user from losing control due to grip loss. (Magical; totally unrealistic)
    • Rookie-only assist
    • Increases grip on wheels/tires that are losing grip, also rolling resistance to allow the driver to recover the car more easily
    • Active Steering - Computer controlled assist designed to keep driver on the racing line and in control (Semi-Real; research on this is being done for real cars, but they aren't using it for racing)
    • Rookie-only assist
    • Directs the car to the safest racing line.
    • Auto-magically counter-steers in case of sliding.
    • Pit Lane Assistant - Assist used for those who are clumsy in pit lane. (Magical; race cars only have speed limiters)
    • Allowed in all difficulty levels.
    • Pits in the safest manner possible.
    • Traction Control - Assist used to lower/prevent wheel-spin. Already in SD, but not adjustable. (Real; many higher-end race cars use it and of course 99% of modern cars have this)
    • Assist available in all levels.
    • Needs to be adjustable.
    • Anti-lock Braking System - Assist used to lower/prevent locking of the brakes under... well, braking. Already in SD as well, but not adjustable either. (Real; 99% of road cars have it, although 99% of race series ban its use)
    • Assist available in all levels.
    • Needs to be adjustable.
    • Intelligent Braking System - Assist used in case the driver has forgotten/is learning the braking points. (Magical, although there is research in real-life done on this)
    • Rookie only assist
    • Brakes at curves with the safest line in mind.
  • Timed sessions - enable robots to participate
  • Save race to disk and restore. For long races, be able to save the race state to disk and restore it later in an other new SD session
  • Race flags - blue/yellow/red race flags and rules
  • Safety car for rolling start / neutralizing the race
  • #692 Instant replay and the ability to save and later review them

Simulation engine / Physics

  • revise wing down-force and drag coefficients (loosely base it on thin aero-foil theory)
  • change fuel consumption calculation, instead of engine power base it on engine volume and speed
  • use fuel density when calculating its mass
  • calculate gear efficiency from gear ratio automatically
  • add turbocharger model to the engine
  • fix the small roll and small pitch approximations as we have now highly banked turns
  • improved gear changing model (prev. gear -> neutral -> next gear; clutch and throttle handling by simu, based on gearbox type: manual, synchronized, sequential, auto?)
  • More physical car movement when cars hit a wall, came down from a jump or stop spinning (more decay, see simuV3)
  • A more detailed collision box instead of a simple cube
  • Tires: Super-soft, soft, medium, hard, super-hard, slick, intermediate, rain, dirt, snow
  • Tire wear
  • More elaborate damage model
  • System failures like broken suspension, gearbox, clutch, engine, oil, etc. Can happen randomly, however we can set up a 'probability' for each. Driving on high RPM could raise probability for engine failure, driving off-road -> excess tire wear and suspension breaking earlier, etc

User experience

Here I collect features which were present in basically all commercial racing games released in the last 15 years, but we still miss them. So these are the most missing features from a players point of view.

  • scalable graphics (we have the max. texture size, and a few options in graphics, but lack a sophisticated method to select which details of the tracks are shown, or how detailed car models are used)
  • setup the car from inside the game while in pit
  • start practice and qualifying from the pit, also robots should start from pit then
  • having timed sessions, especially for practice and qualifying - it is now there in race engine, but we still need robots to support it
  • save and reload at least after each session (work was started, see #510), maybe even while on the track
  • add control buttons to change brake balance and at least the front anti-roll bar from the cockpit

Related

Tickets: #118
Tickets: #119
Tickets: #130
Tickets: #131
Tickets: #149
Tickets: #201
Tickets: #210
Tickets: #263
Tickets: #464
Tickets: #510
Tickets: #529
Tickets: #532
Tickets: #692
Wiki: FeatureWishesPost2.0
Wiki: Home
Wiki: IdeaXaviersNewCareer
Wiki: Index
Wiki: OptimizeCarsForRelease3
Wiki: WhatIsSpeedDreams