Vehicle Health and Maintenance
archived
- All vehicles has
vehicle conditionthat has a range from0%to100%. Every brand new vehicle starts at100%. - new vehicle starts at
100. - As you use them, their health declines with steady rate.
- You are required to maintain the car at Car Mechanic or Car Dealership after every
2500 kmamount of kilometres. - Every car will have a total lifetime distance of 20,000 km.
- You can drive a car without maintaining it, but its health declines quicker (can make its rate increase the more appointments you miss).
- After vehicle health hits
0.0%:- Car breaks down and gets sent off to scrapyard (removed from player).
Scrapped these:
- Certain factors cause the vehicle health to decline further:
- Hit metal or concrete objects.
- Hit other players.
Vehicle Condition System
Condition Range
- Stored as
condition_value(int):0=100%(brand new),100,000=0%(destroyed). - Display formula:
100 - (condition_value / 1000.0)→ shows as percentage.
Degradation Rate
- Base rate:
100,000 pointsover25,000 km→1 pointper250 meters - Service interval: every
2,500 km - Each properly-maintained
2,500 kmcosts~10,000 points(10%condition) - Missed services increase the degradation rate (each missed appointment stacks further)
Servicing
- Location:
Car Mechaniconly - Cost:
€5,000flat fee.- In the case that a player has missed multiple appointments, the formula will be:
(€5,000 * missed_appointments)
- In the case that a player has missed multiple appointments, the formula will be:
Restores:2.5%condition (2,500points off condition_value)- Resets: missed appointment counter back to
0 - Updates the
last_service_distanceon the vehicle
Car Breakdown (0% condition)
- Player is force-spectated
- Server-wide announcement in chat
- Vehicle removed from player (registration is nulled)
New DB Columns Needed on VehicleRegistration.
Column | Data Type | Purpose |
condition_value | int | Already added, needs migration |
missed_services | int | Tracks skipped |
last_service_distance | double | Odometer at last service |
Still Open
- DB record on scrap: hard delete or keep with a scrapped flag?
- Warning at low condition (e.g. 10%)? Not discussed yet