stk_config.xml 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770
  1. <?xml version="1.0"?>
  2. <config>
  3. <!-- Minimum and maximum kart versions that can be used by this binary.
  4. Older version will be ignored. -->
  5. <kart-version min="2" max="2"/>
  6. <!-- Minimum and maxium track versions that be be read by this binary.
  7. Older versions will be ignored. -->
  8. <track-version min="6" max="6"/>
  9. <!-- Maximum number of karts to be used at the same time. This limit
  10. can easily be increased, but some tracks might not have valid start
  11. positions for those additional karts. -->
  12. <karts max-number="20"/>
  13. <!-- Scores are the number of points given when the race ends. -->
  14. <grand-prix>
  15. <!-- Karts on position 1 and 2 will have 3 more points than the next kart;
  16. a kart on position 3 and 4 will have two more points than the next;
  17. and all remaining karts will have one more point than the next. -->
  18. <points from="1" to="2" points="3"/>
  19. <points from="3" to="4" points="2"/>
  20. <points from="5" points="1"/>
  21. </grand-prix>
  22. <!-- Time in follow-the-leader after which karts are removed.
  23. The last values applies for all remaining karts.
  24. time-per-kart Additional time added to the interval
  25. for each kart in the race. -->
  26. <follow-the-leader intervals="30 20 10"
  27. time-per-kart="0" />
  28. <!-- Startup information.
  29. Penalty: Penalty time if a kart accelerates before GO. -->
  30. <startup penalty="1" />
  31. <!-- How often a news message is going to be displayed before
  32. it will be ignored. -->
  33. <news max-display="10"/>
  34. <!-- smooth-normals: If the normals (for wheel raycasts) should be smoothened.
  35. This is a global setting, it still needs to be activated for each
  36. track individually.
  37. smooth-angle-limits: If the angle between the normal of a vertex and
  38. the normal of a triangle are larger than this value, the normal
  39. of the triangle will be used in interpolating the normals. This
  40. has the effect of an edge split modifier - if the flat track and (say)
  41. a wall at a 90 egree angle are not separated, the normal at that
  42. vertex will be 45 degrees, resulting in completely wrong physics.
  43. The angle limit in this case will discard the 45 degrees, and use
  44. the normal of the flat triangle (pointing upwards). In the worst
  45. case (all three normals discarded, the interpolation will just
  46. return the normal of the triangle (i.e. de facto no interpolation),
  47. but it helps making smoothing much more useful without fixing tracks.
  48. -->
  49. <physics smooth-normals="true"
  50. smooth-angle-limit="0.65"/>
  51. <!-- The title music. -->
  52. <music title="main_theme.music"/>
  53. <!-- Replay related values, mostly concerned with saving less data
  54. and using interpolation instead.
  55. max-time: Maximum race time that can be saved in a replay/history file.
  56. delta-t Minumum time between saving consecutive transform events.
  57. delta-pos If the interpolated position is within this delta, a
  58. transform event is not generated.
  59. delta-angle If the interpolated angle is within this delta,
  60. a transform event is not generated. -->
  61. <replay max-time="600" delta-t="0.05" delta-pos="0.1"
  62. delta-angle="0.5" />
  63. <!-- Skidmark data: maximum number of skid marks, and
  64. time for skidmarks to fade out. -->
  65. <skid-marks max-number="100" fadeout-time="60"/>
  66. <!-- Defines when the upright constraint should be active, it's
  67. disabled when the kart is more than this value from the track. -->
  68. <near-ground distance="2"/>
  69. <!-- How long the end animation will be shown. -->
  70. <delay-finish time="0.5"/>
  71. <!-- How long the music credits are shown. -->
  72. <credits music="10"/>
  73. <!-- weight is the additional weight an anvil adds to a kart.
  74. speed-factor is the additional slowdown caused by the anvil.
  75. time is the time an anvil is active. -->
  76. <anvil time="2.0" weight="150" speed-factor="0.2"/>
  77. <!-- friction is the friction increase when a parachute is attached.
  78. time is the time an attached parachute is active
  79. time-other is the time a parachute attached from other kart works
  80. lbound-fraction is the lower bound fraction of speed when lost will
  81. detach parachute. E.g. at nearly 0 speed, only 5% of speed
  82. need to be lost.
  83. ubound-fraction is the upper bound fraction of speed when lost will
  84. detach parachute. E.g. at max-speed 30% of speed must be lost.
  85. max-speed is a factor that decides the impact of rate of speed
  86. (distance between bounds) -->
  87. <parachute friction="2.0" time="4.0" time-other="8.0"
  88. lbound-fraction="0.95" ubound-fraction="0.7" max-speed="23"/>
  89. <!-- time is the time till a bomb explodes. time-increase is the time added
  90. to timer when bomb is passed on. -->
  91. <bomb time="30.0" time-increase="-5.0"/>
  92. <!-- Powerup collect-mode decides what is collected if a kart has already an
  93. powerup: same: get one more item of the same type.
  94. new: always get a new item.
  95. only-if-same: if the random item is the same one as the
  96. one currently owned, increase the number, otherwise
  97. no more/new item s are given to the kart. -->
  98. <powerup collect-mode="new"/>
  99. <!-- time: How long a switch is being effective.
  100. items for each item list the index of the item it is switched with.
  101. Order: giftbox, banana, big-nitro, small-nitro, bubble-gum, trigger,
  102. nolok-bubble-gum, easter egg -->
  103. <switch time="5" items="1 0 4 4 2 5 2 7"/>
  104. <!-- disappear-counter: How often bubblegum gets driven over before it disappears.
  105. shield-time: How long the bubblegum shield lasts
  106. restrict-weapons: If true, using weapons will destroy the user's shield -->
  107. <bubblegum disappear-counter="1" shield-time="10.0" restrict-weapons="false"/>
  108. <!-- explosion-impulse-objects is the impulse that pushes physical objects
  109. away if there is an explosion. -->
  110. <explosion impulse-objects="500.0" />
  111. <!-- Networking - the current networking code is outdated and will not
  112. work anymore - so for now don't enable this. -->
  113. <networking enable="false"/>
  114. <!-- The field od views for 1-4 player split screen. fov-3 is
  115. actually not used (since 3 player split screen uses the
  116. same layout as 4 player split screen) -->
  117. <camera fov-1="80" fov-2="65" fov-3="50" fov-4="75" />
  118. <!-- disable-while-unskid: Disable steering when stop skidding during
  119. the time it takes to adjust the physical body with the graphics.
  120. camera-follow-skid: If true the camera will stay behind the kart,
  121. potentially making it easier to see where the kart is going to
  122. after a skid. -->
  123. <steer disable-while-unskid="false"
  124. camera-follow-skid="true" />
  125. <!-- Default values for all karts
  126. ============================ -->
  127. <general-kart-defaults>
  128. <!-- Camera: Distance between kart and camera.
  129. forward-up-angle: Angle between camera and plane of kart (pitch)
  130. when the camera is pointing forward
  131. backward-up-angle: Angle between camera and plane of kart (pitch)
  132. when the camera is pointing backwards. This is usually
  133. larger than the forward-up-angle, since the kart itself
  134. otherwise obstricts too much of the view. -->
  135. <camera distance="1.0" forward-up-angle="15"
  136. backward-up-angle="5"/>
  137. <!-- Jump animation related values:
  138. animation-time: only if the estimated time for a jump is larger
  139. than this value will the jump animation being
  140. shown. -->
  141. <jump animation-time="0.5" />
  142. <!-- Skidding: increase: multiplicative increase of skidding factor in each frame.
  143. decrease: multiplicative decrease of skidding factor in each frame.
  144. max: maximum skidding factor = maximum increase of steering angle.
  145. time-till-max: Time till maximum skidding is reached.
  146. visual: Additional graphical rotation of kart. The graphical rotation
  147. of the kart also determines the direction the kart is driving to
  148. when skidding is stopped.
  149. visual-time: How long it takes for the visual skid to reach maximum.
  150. revert-visual-time: how long it takes when stopping a skid to revert
  151. the visual skid and bring visuals and physics in sync again.
  152. angular-velocity: Angular velocity to be used for the kart when skidding.
  153. min-speed: Minimum speed a kart must have before it can skid. Must be
  154. >0, otherwise the kart can skid at the start of the race.
  155. time-till-bonus: How long a kart needs to skid in order to get a bonus.
  156. bonus-force: A speedup applied to the kart whick skidded for a while.
  157. bonus-time: How long the bonus-force is applied.
  158. bonus-force: Additional engine force (this is used to offset the fact
  159. that turning after skidding (e.g. to correct direction) often uses
  160. up the skid bonus).
  161. post-skid-rotate-factor: a factor to be used to determine how much
  162. the chassis of a kart should rotate to match the graphical view.
  163. A factor of 1 is identical, a smaller factor will rotate the kart
  164. less (which might feel better).
  165. physical-jump-time: Time for a physical jump at the beginning of a skid.
  166. graphical-jump-time: Time for a graphics-only jump at the beginning
  167. of a skid.
  168. reduce-turn-min/max: The steering done by the controller (which is in
  169. [-1,1]) is mapped to [reduce-turn-min, reduce-turn-max] when skidding
  170. is active (for left turn, right turn will use [-max, -min]). The
  171. effect is that while you skid (say left) you can adjust the direction
  172. of the turn the kart is doing somewhat by steering to the left and right,
  173. but you will always keep on doing a left turn, just more or less. -->
  174. <!-- Kart-specific settings used by the AI.
  175. use-slipstream: if the AI should try to overtake karts using slipstream.
  176. disable-slipstream-usage: even if the AI is not trying to use slipstream,
  177. it can get a lot of bonus, esp. on easy since the AI creates trains.
  178. Set this to true to make sure AI does not get any slipstream bonus.
  179. shield-incoming-radius: Radius at which projectiles will be detected and
  180. trigger a shield usage.
  181. false-start-probability: Probability of a false start.
  182. min/max-start-delay: Minimum and maximum start delay.
  183. See http://www.humanbenchmark.com/tests/reactiontime/stats.php
  184. Average reaction time is around 0.215 s.
  185. nitro-usage: "none", "some", "all": if nitro should be used, and
  186. how much the AI should try to use it good.
  187. non-random-item-usage: If true, use items in a sophisticated way,
  188. otherwise use items randomly.
  189. collect-avoid-items: if the AI should collect and avoid items,
  190. or just ignore them.
  191. handle-bomb: If the AI should actively try to pass on a bomb.
  192. skidding-threshold: only for old-style skidding: when sharp turn
  193. should be triggered. Smaller values means it will sharp turn
  194. earlier, resulting in better driving in thight curves.
  195. max-item-angle: Items that would need more than this change in
  196. direction are not considered for collection.
  197. time-full-steer is the time for the AI to go from neutral steering to
  198. extreme left (or right). This can be used to reduce
  199. 'shaking' of AI karts caused by changing steering direction
  200. too often. It also helps with making it easier to push the
  201. AI karts (otherwise micro-corrections make this nearly
  202. impossible). A value of 1/maxFPS / 2 will guarantee that
  203. the wheel can go from -1 to +1 steering in one frame,
  204. basically disabling this mechanism.
  205. bad-item-closeness is the maximum distance between a good and a
  206. bad item which can force the AI to abandon a good item in order
  207. to avoid hitting a bad item. If the distance is larger, it is
  208. assumed that there will be enough time to change steering
  209. direction.
  210. straight-length-for-zipper is the minimum length a straight
  211. section of the track should have in order to activate a zipper.
  212. competitive when ahead of the player, or more competitive
  213. when behind the player.
  214. skid-probability: Since the AI is usually very good at using
  215. skidding, this is used to implement some rubber-banding for
  216. the AI: depending on distance to the player, the AI will
  217. change the probability of skidding. This attributes takes
  218. a space-separated list of "distance:probability" pairs
  219. (negative distances meaning the kart is behind the player,
  220. a positive number that the AI is ahead of the player).
  221. Then list should have at least 2 entries. Depending on
  222. the actualy distance the kart has the probability is then
  223. linearly interpolated (if the AI is more than the largest
  224. distance ahead, the value for the largest distance is used,
  225. and similarly if the kart is more than the minimum value
  226. behind).
  227. speed-cap: Fraction of maximum speed the kart should drive
  228. at. Used to slow down karts that are ahead of the player.
  229. Note that setting this to a value >1 does NOT increase
  230. the speed the kart can drive at!
  231. collect-item-probability: Probability of the AI actually
  232. trying to collect an item (if an item is selected for
  233. collection in the first place).
  234. -->
  235. <ai>
  236. <easy time-full-steer="0.1"
  237. straight-length-for-zipper="35"
  238. use-slipstream="false"
  239. disable-slipstream-usage="true"
  240. shield-incoming-radius="0"
  241. false-start-probability="0.08"
  242. min-start-delay="0.3" max-start-delay="0.5"
  243. nitro-usage="none"
  244. non-random-item-usage="false"
  245. collect-avoid-items="false"
  246. handle-bomb="false"
  247. speed-cap="-10:1.0 -5:0.9 5:0.8 20:0.7 50:0.6"
  248. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  249. bad-item-closeness="6"
  250. collect-item-probability="0:0"
  251. rb-skid-probability="0:0.0"
  252. skidding-threshold="4.0"
  253. />
  254. <medium time-full-steer="0.1"
  255. straight-length-for-zipper="35"
  256. use-slipstream="false"
  257. disable-slipstream-usage="false"
  258. shield-incoming-radius="10"
  259. false-start-probability="0.04"
  260. min-start-delay="0.25" max-start-delay="0.4"
  261. nitro-usage="some"
  262. non-random-item-usage="true"
  263. collect-avoid-items="true"
  264. handle-bomb="false"
  265. speed-cap="10:1.0 50:0.8"
  266. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  267. bad-item-closeness="6"
  268. collect-item-probability="-10:1.0 0:0"
  269. rb-skid-probability="0:0.0"
  270. skidding-threshold="3.0"
  271. />
  272. <hard time-full-steer="0.1"
  273. straight-length-for-zipper="35"
  274. use-slipstream="true"
  275. disable-slipstream-usage="false"
  276. shield-incoming-radius="10"
  277. false-start-probability="0.01"
  278. min-start-delay="0.15" max-start-delay="0.28"
  279. nitro-usage="all"
  280. non-random-item-usage="true"
  281. collect-avoid-items="true"
  282. handle-bomb="true"
  283. speed-cap="20:1.0 50:0.8"
  284. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  285. bad-item-closeness="6"
  286. collect-item-probability="10:1.0 20:0"
  287. rb-skid-probability="-50:1.0 -20:0.7 20:0.2 50:0.0"
  288. skidding-threshold="2.0"
  289. />
  290. <best time-full-steer="0.1"
  291. straight-length-for-zipper="35"
  292. use-slipstream="true"
  293. disable-slipstream-usage="false"
  294. shield-incoming-radius="10"
  295. false-start-probability="0.0"
  296. min-start-delay="0.15" max-start-delay="0.2"
  297. nitro-usage="all"
  298. non-random-item-usage="true"
  299. collect-avoid-items="true"
  300. handle-bomb="true"
  301. speed-cap="0:1.0"
  302. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  303. bad-item-closeness="6"
  304. collect-item-probability="0:1.0"
  305. rb-skid-probability="0:1.0"
  306. skidding-threshold="2.0"
  307. />
  308. </ai>
  309. <!-- The per-player difficulties in multiplayer games.
  310. These values are multiplied with the current values of a car
  311. so 1 means that nothing changes.
  312. The meaning of the different values is explained below this tag. -->
  313. <difficulties>
  314. <normal>
  315. <mass value="1.0"/>
  316. <engine brake-factor="1.0" brake-time-increase="1.0" max-speed-reverse-ratio="1.0" power="1.0" max-speed="1.0"/>
  317. <nitro consumption="1.0" max-speed-increase="1.0" duration="1.0" fade-out-time="1.0"/>
  318. <bubblegum time="1.0" speed-fraction="1.0" torque="1.0" fade-in-time="1.0"/>
  319. <rescue time="1.0"/>
  320. <explosion time="1.0" radius="1.0" invulnerability-time="1.0"/>
  321. <slipstream length="1.0" width="1.0" collect-time="1.0" use-time="1.0"
  322. add-power="1.0" min-speed="1.0" max-speed-increase="1.0" duration="1.0"
  323. fade-out-time="1.0"/>
  324. <plunger band-max-length="1.0" band-force="1.0" band-duration="1.0"
  325. band-speed-increase="1.0" band-fade-out-time="1.0" in-face-time="1.0"/>
  326. <zipper time="1.0" force="1.0" speed-gain="1.0" max-speed-increase="1.0"
  327. fade-out-time="1.0"/>
  328. <swatter duration="1.0" squash-duration="1.0" squash-slowdown="1.0"/>
  329. <startup time="1.0 1.0" boost="1.0 1.0"/>
  330. </normal>
  331. <handicap>
  332. <mass value="1.0"/>
  333. <engine brake-factor="0.8" brake-time-increase="0.85" max-speed-reverse-ratio="0.8" power="0.8" max-speed="0.8"/>
  334. <nitro consumption="1.1" max-speed-increase="0.9" duration="1.0" fade-out-time="1.0"/>
  335. <bubblegum time="1.5" speed-fraction="1.5" torque="1.5" fade-in-time="1.0"/>
  336. <rescue time="1.5"/>
  337. <explosion time="1.3" invulnerability-time="0.7"/>
  338. <slipstream length="0.8" width="0.8" collect-time="1.5" use-time="0.8"
  339. add-power="0.8" min-speed="0.8" max-speed-increase="0.9" duration="0.8"
  340. fade-out-time="1.0"/>
  341. <plunger band-max-length="0.8" band-force="1.0" band-duration="1.0"
  342. band-speed-increase="0.8" band-fade-out-time="1.0" in-face-time="1.3"/>
  343. <zipper time="0.8" force="0.8" speed-gain="0.8" max-speed-increase="0.8"
  344. fade-out-time="1.0"/>
  345. <swatter duration="0.8" squash-duration="1.5" squash-slowdown="1.8"/>
  346. <startup time="0.8 0.8" boost="0.8 0.8"/>
  347. </handicap>
  348. </difficulties>
  349. <!-- Suspension related values. stiffness: kart's suspension stiffness.
  350. rest: Length of suspension when at rest.
  351. travel: maximum movement of suspension!!
  352. exp-string-response: dampen the suspension spring reaction
  353. exponentially.
  354. max-force: Maximum suspension force -->
  355. <suspension stiffness="140" rest="0.3" travel="0.29"
  356. exp-spring-response="false" max-force="12000"/>
  357. <!-- Wheel related parameters: damping-relaxation/compression: for
  358. bullet, damping parameters.
  359. front-right, front-left, rear-right and rear-left give the
  360. position of the physics raycast wheels relative to the center of
  361. gravity. Default is to use the corners of the chassis to attach
  362. the wheels to. -->
  363. <wheels damping-relaxation="35" damping-compression="5">
  364. <front-right position="0.38 0 0.6" />
  365. <front-left position="-0.38 0 0.6" />
  366. <rear-right position="0.38 0 -0.6" />
  367. <rear-left position="-0.38 0 -0.6"/>
  368. </wheels>
  369. <!-- Parameters for the speed-weighted objects:
  370. a bigger value for strength-factor leads to the speed of the kart more quickly affecting
  371. the strength of the animation (up to a maximum value that corresponds to the original animation) -->
  372. <speed-weighted-objects strength-factor="0.05" speed-factor="1.0" texture-speed-x="0.0" texture-speed-y="0.0"/>
  373. <!-- friction: slip used for bullet skidding. A high value
  374. (like 10000000) disables bullet skidding. -->
  375. <friction slip="10000000"/>
  376. <!-- Values related to stability of the chassis: damping, and reduced
  377. impact of roll.
  378. downward-impulse-factor: A speed proportional impulse applied each
  379. frame that pushes the vehicle onto the ground.
  380. track-connection-accel: An artificial force that pulls a wheel to
  381. the ground if its off ground. Reduces the affect if a kart loses
  382. contact with the ground (i.e. it then can't steer or accelerate
  383. anymore).
  384. smooth-flying-impulse: apply a torque impulse to flying kart to keep
  385. them parallel to the ground.-->
  386. <stability roll-influence="0.3"
  387. chassis-linear-damping="0.2"
  388. chassis-angular-damping="0"
  389. downward-impulse-factor="5"
  390. track-connection-accel="2"
  391. smooth-flying-impulse="250"/>
  392. <!-- collision
  393. impulse-type: STK can apply an additional impulse in case of
  394. kart-track collision:
  395. 'none' : no additional impulse
  396. 'normal': impulse along the normal
  397. 'driveline': impulse towards the nearest driveline.
  398. An impulse towards the driveline works nice when the kart is
  399. driving more or less correctly on the track - it pushes the
  400. kart in the right direction. But if the kart is significanlty
  401. off track, it has severe problems (since an incorrect
  402. driveline point can be selected, pusing the kart in the
  403. wrong direction, sometimes even causing a 'zip-along-obstacle'
  404. effect.
  405. impulse: an additional impulse to be applied in a non-frontal
  406. collision to push two karts away from each other.
  407. impulse-time: The impulse will be applied over a certain time
  408. period, which results in less abrupt changes. If set to 0,
  409. the impulse is only applied once.
  410. resitution: restitution value to be used for the kart rigid bodies.
  411. bevel-factor: for each point of the chassis collision box one
  412. additional point is added, resulting in a bevelled box shape.
  413. The original Z coordinate of the chassis is multiplied by
  414. 1-bevelZ (i.e. the main box part of the shape is shortened).
  415. The bevel point has the original Z coordinate, and the X and
  416. Y coordinates of the box are multiplied with (1-bevelX) and
  417. (1-bevelY). A value of 0 for all bevel coordinates disables
  418. bevelling, and uses a simple box shape.
  419. As an example, a value of 1 for x and z will result in a
  420. sharp 'arrow' like shape.
  421. physical-wheel-position: Defines where the 'physical' (raycast)
  422. wheel will be located. It's a weight factor with 0 = being
  423. at the widest side of the bevel, 1 = at the front and
  424. narrowest part of the kart. If the value is less than 0, the old
  425. physics settings are used which places the raycast wheels
  426. outside of the chassis and results in more stable physical
  427. behaviour of the karts. -->
  428. <collision impulse-type="normal"
  429. impulse="3000" impulse-time="0.1" terrain-impulse="1600"
  430. restitution="1.0" bevel-factor="0.5 0.0 0.7"
  431. physical-wheel-position="-1" />
  432. <!-- If a kart starts within the specified time after 'go',
  433. it receives the corresponding bonus from 'boost'. Those
  434. fields must have the same size, and must be sorted by
  435. increasing times. -->
  436. <startup time = "0.3 0.5"
  437. boost = "6 3" />
  438. <!-- Rescue: time: How long it takes the kart to be raised.
  439. height: how height the kart will be raised before it is
  440. dropped back onto the track.
  441. vert rescue offset: used to raise karts a bit higher before
  442. releasing them on the ground after a rescue. Used to avoid
  443. resetting karts into the track. Not sure if this is still
  444. necessary. -->
  445. <rescue vert-offset="0.0" time="1.2" height="2"/>
  446. <!-- Nitro: engine-force: additional engine power
  447. consumption: nitro consumption - heavier characters can be set
  448. to need more nitro than lighter character.
  449. small-container: how much energy a small container gives.
  450. big-container: how much energy a big container gives.
  451. max-speed-increase: How much the speed of a kart might exceed
  452. its maximum speed (in m/s).
  453. duration: How long the increased speed will be valid after
  454. the kart stops using nitro (and the fade-out-time starts).
  455. fade-out-time: Duration during which the increased maximum
  456. speed due to nitro fades out.
  457. max: How much nitro a kart can store.
  458. -->
  459. <nitro engine-force="500" consumption="1" small-container="1" big-container="3"
  460. max-speed-increase="5" duration="1" fade-out-time="2" max="20"/>
  461. <!-- Bubble gum data:
  462. time: How long the bubblegum lasts.
  463. speed-fraction: To what fraction of top-speed the speed is reduced.
  464. torque: To rotate the kart somewhat.
  465. fade-in-time: How quick the slowdown takes effect.
  466. -->
  467. <bubblegum time="1" speed-fraction="0.3" torque="500" fade-in-time="0.01"/>
  468. <!-- time: Time a zipper is active.
  469. force: Additional zipper force.
  470. speed-gain: One time additional speed.
  471. max-speed-increase: Additional speed allowed on top of the
  472. kart-specific maximum kart speed.
  473. fade-out-time: determines how long it takes for a zipper
  474. to fade out (after 'time').
  475. -->
  476. <zipper time="3.5" force="250.0" speed-gain="4.5" max-speed-increase="15"
  477. fade-out-time="1.0" />
  478. <!-- Skidding: increase: multiplicative increase of skidding factor in each frame.
  479. decrease: multiplicative decrease of skidding factor in each frame.
  480. max: maximum skidding factor = maximum increase of steering angle.
  481. time-till-max: Time till maximum skidding is reached.
  482. visual: Additional graphical rotation of kart. The graphical rotation
  483. of the kart also determines the direction the kart is driving to
  484. when skidding is stopped.
  485. visual-time: How long it takes for the visual skid to reach maximum.
  486. revert-visual-time: how long it takes when stopping a skid to revert
  487. the visual skid and bring visuals and physics in sync again.
  488. angular-velocity: Angular velocity to be used for the kart when skidding.
  489. min-speed: Minimum speed a kart must have before it can skid. Must be
  490. >0, otherwise the kart can skid at the start of the race.
  491. time-till-bonus: How long a kart needs to skid in order to get a bonus.
  492. bonus-force: A speedup applied to the kart whick skidded for a while.
  493. bonus-time: How long the bonus-force is applied.
  494. bonus-force: Additional engine force (this is used to offset the fact
  495. that turning after skidding (e.g. to correct direction) often uses
  496. up the skid bonus).
  497. post-skid-rotate-factor: a factor to be used to determine how much
  498. the chassis of a kart should rotate to match the graphical view.
  499. A factor of 1 is identical, a smaller factor will rotate the kart
  500. less (which might feel better).
  501. physical-jump-time: Time for a physical jump at the beginning of a skid.
  502. graphical-jump-time: Time for a graphics-only jump at the beginning
  503. of a skid.
  504. reduce-turn-min/max: The steering done by the controller (which is in
  505. [-1,1]) is mapped to [reduce-turn-min, reduce-turn-max] when skidding
  506. is active (for left turn, right turn will use [-max, -min]). The
  507. effect is that while you skid (say left) you can adjust the direction
  508. of the turn the kart is doing somewhat by steering to the left and right,
  509. but you will always keep on doing a left turn, just more or less. -->
  510. <skid increase="1.05" decrease="0.95" max="2.5" time-till-max="0.5"
  511. visual="1.25" visual-time="0.7" revert-visual-time="0.7"
  512. min-speed="10" time-till-bonus="1.0 3.0"
  513. bonus-speed="4.5 6.5" bonus-time="3.0 4.0"
  514. bonus-force="250 350"
  515. physical-jump-time="0" graphical-jump-time="0.4"
  516. post-skid-rotate-factor="1"
  517. reduce-turn-min="0.2" reduce-turn-max="0.8"/>
  518. <!-- Slipstream: length: How far behind a kart slipstream works
  519. width: how wide slipstream works furthest away from the kart.
  520. collect-time: How many seconds of sstream give maximum benefit
  521. use-time: How long the benefit will last.
  522. add-power: Additional power due to sstreaming. 1 = +100%
  523. min-speed: Minimum speed necessary for slipstream to take effect.
  524. max-speed-increase: How much the speed of the kart might exceed
  525. its normal maximum speed.
  526. duration: How long the higher speed lasts after slipstream stopped
  527. working.
  528. fade-out-time: How long the slip stream speed increase will
  529. gradually be reduced. -->
  530. <slipstream length="10" width="2" collect-time="2" use-time="5"
  531. add-power="3" min-speed="10"
  532. max-speed-increase="5" duration="1" fade-out-time="2"/>
  533. <!-- Kart-specific settings for the swatter:
  534. duration: how long can the swatter be active.
  535. distance: How close a kart or an item must be before it can be hit.
  536. squash-duration: How long a kart will remain squashed.
  537. squash-slowdown: percentage of max speed that a kart is
  538. restricted to. -->
  539. <swatter duration="10" distance="3" squash-duration="5"
  540. squash-slowdown="0.5"/>
  541. <!-- Leaning related parameters, i.e. slightly leaning the karts when
  542. driving a fast curve.
  543. max: maximum leaning (i.e. when steering as much as possible at highest
  544. speed), in degrees.
  545. sped: Speed with which the leaning changes (in degree/second). -->
  546. <lean max="8.6" speed="5.0" />
  547. <!-- turn-radius defines the turn radius of the kart at
  548. a given speed. The actual steering angle is dependent on the
  549. wheel base of the kart: radius = wheel_base/sin(steering_angle).
  550. The values below define that at speed 0 the turn radius is 2, at
  551. speed 10 the radius is 7.5 etc.
  552. The actual turn radius is piece-wise linearly interpolated. This
  553. allows for tighter turning at lower speeds, and also avoids that
  554. the kart becomes too hard to control at high speed (speeds of higher
  555. than 23 can only be reached with powerups).
  556. time-full-steer: This is the amount of change in steering depending
  557. on current steering. So if the steering is between 0 and 0.5,
  558. the time-for-steering-change is 0.15. If the current steering is
  559. between 0.5 and 1.0, the time-for-steering-change is 0.25.
  560. The speed is used as dt/time-for-steering-change.
  561. In short: steering at less than halfway is somewhat faster,
  562. which should avoid oversteering (by pressing the key for too long),
  563. but slower when you want to steer more. Overwall with the current
  564. settings the expected time-to-full-steer is:
  565. 0.5 * 0.25 + 0.5 * 0.15 = 0.2 ... which is overall the same
  566. time we had previously.
  567. -->
  568. <turn turn-radius="0:2.0 10:7.5 25:15 45:30"
  569. time-full-steer ="0:0.15 0.5:0.15 0.5:0.25 1.0:0.25"
  570. time-reset-steer="0.1" />
  571. <!-- Speed and acceleration related values: power and max-speed (in m/s)
  572. have 4 values, one for low, medium, hard, and supertux.
  573. brake-factor: Value used when braking.
  574. brake-time-increase: The brake force is multiplied by
  575. (1+brake_time*brake_time_increase - i.e. the longer the brake was
  576. pressed, the harder the kart will brake.
  577. max-speed-reverse-ratio is the percentage of max speed for reverse gear.
  578. -->
  579. <engine power="450 475 500 510" max-speed="17 21 23 25" brake-factor="11.0"
  580. brake-time-increase="6"
  581. max-speed-reverse-ratio="0.3"/>
  582. <!-- Simulated gears: switch-ratio defines at what ratio of the maximum
  583. speed what gear is selected, e.g. 0.25 means that if the speed is
  584. bigger or equal to 0.25 x maxSpeed then use gear 1, 0.5 means if
  585. the speed is bigger or equal to 0.5 x maxSpeed then gear 2.
  586. gear-power-increase contains the increase in max power (to simulate
  587. different gears), e.g. 2.5 as first entry means: 2.5*maxPower in gear 1
  588. | first | second | third | . -->
  589. <gear switch-ratio="0.25 0.7 1.0" power-increase="2.2 1.7 1.3"/>
  590. <!-- mass -->
  591. <mass value="225"/>
  592. <!-- Kart-specific plunger and rubber band handling: max-length is
  593. the maximum length of rubber band before it snaps. force is
  594. the force a plunger/rubber band applies to the kart(s).
  595. duration is the duration a rubber band acts.
  596. in-face-time determines how long it takes before a plunger
  597. in your face is removed. -->
  598. <plunger band-max-length="50" band-force="1500" band-duration="1"
  599. band-speed-increase="7" band-fade-out-time="3"
  600. in-face-time="3 4 4.5 4.5"/>
  601. <!-- Kart-specific explosion parameters.
  602. Time: how long it takes before the kart can drive again (this
  603. determines how height the kart is being thrown).
  604. Invulnerability-time: how long a kart will be invulnerable
  605. after being hit by an explosion.
  606. radius: Kart closer to this value will be affected by
  607. an explosion as well. -->
  608. <explosion time="2" radius="5"
  609. invulnerability-time="6" />
  610. <kart-type>
  611. <light>
  612. <startup time = "0.3 0.5"
  613. boost = "8.5 4.5" />
  614. <nitro engine-force="350" consumption="1" small-container="1" big-container="3"
  615. max-speed-increase="4.5" duration="1.5" fade-out-time="2.5" max="20"/>
  616. <slipstream length="11" width="2" collect-time="1.5" use-time="2.5"
  617. add-power="3.2" min-speed="9"
  618. max-speed-increase="4" duration="1.2" fade-out-time="2.3"/>
  619. <turn turn-radius="0:3.0 10:10.0 25:20.0 45:40.0"
  620. time-full-steer ="0:0.15 0.5:0.15 0.5:0.25 1.0:0.25"
  621. time-reset-steer="0.1"/>
  622. <engine power="250 300 350 400" max-speed="13 18 21 23.0" brake-factor="15.0"
  623. max-speed-reverse-ratio="0.5"/>
  624. <gear switch-ratio="0.20 0.55 1" power-increase="5 4 3"/>
  625. <mass value="195"/>
  626. <explosion time="2.1" radius="5.5"
  627. invulnerability-time="7" />
  628. </light>
  629. <medium>
  630. <startup time = "0.3 0.5"
  631. boost = "4.2 2.6" />
  632. <nitro engine-force="425" consumption="1.4" small-container="1" big-container="3"
  633. max-speed-increase="5" duration="1.2" fade-out-time="2" max="20"/>
  634. <slipstream length="10" width="2" collect-time="2" use-time="3.3"
  635. add-power="2.8" min-speed="10"
  636. max-speed-increase="5" duration="0.9" fade-out-time="1.6"/>
  637. <turn turn-radius="0:4.5 10:16.0 25:30.0 45:60.0"
  638. time-full-steer ="0:0.17 0.5:0.17 0.5:0.28 1.0:0.28"
  639. time-reset-steer="0.1"/>
  640. <engine power="375 450 525 550" max-speed="14 19 22.0 25" brake-factor="11.0"
  641. max-speed-reverse-ratio="0.4"/>
  642. <gear switch-ratio="0.30 0.7 1.0" power-increase="2.2 2.2 2.5"/>
  643. <mass value="250"/>
  644. <explosion time="1.8" radius="5"
  645. invulnerability-time="6" />
  646. </medium>
  647. <heavy>
  648. <startup time = "0.3 0.5"
  649. boost = "3.8 2" />
  650. <nitro engine-force="600" consumption="2" small-container="1" big-container="3"
  651. max-speed-increase="8" duration="0.7" fade-out-time="1.3" max="20"/>
  652. <slipstream length="8.5" width="2" collect-time="2" use-time="4"
  653. add-power="2.7" min-speed="10.5"
  654. max-speed-increase="8" duration="0.7" fade-out-time="1"/>
  655. <swatter duration="10" distance="3" squash-duration="5"
  656. squash-slowdown="0.5"/>
  657. <turn turn-radius="0:4.0 10:18.5 25:43.0 45:72.5"
  658. time-full-steer ="0:0.23 0.5:0.23 0.5:0.41 1.0:0.41"
  659. time-reset-steer="0.1"/>
  660. <engine power="575 675 775 875" max-speed="15 20 23 25" brake-factor="10"
  661. max-speed-reverse-ratio="0.65"/>
  662. <gear switch-ratio="0.45 0.70 1" power-increase="1.5 1.7 2.5"/>
  663. <mass value="350"/>
  664. <explosion time="1.5" radius="4"
  665. invulnerability-time="6" />
  666. </heavy>
  667. </kart-type>
  668. </general-kart-defaults>
  669. <!-- Here are the default fonts file names for STK.
  670. Please DO NOT report bugs if there're crashes when using your custom font.
  671. This usually happen because the character map of the font is not in unicode mode
  672. (let's take Chinese for example, some fonts of it store the characters in BIG5 mode,
  673. which leads to crash with STK), but the fonts are to blame, what's the point of not
  674. using industry standard nowadays...
  675. -->
  676. <font default="Ubuntu-R.ttf"
  677. default_fallback="FreeSans.ttf"
  678. cjk="wqy-microhei.ttf"
  679. ar="NotoNaskhArabicUI-Bold.ttf"
  680. bold="Ubuntu-B.ttf"
  681. bold_fallback="FreeSansBold.ttf"
  682. digit="SigmarOne.otf" />
  683. </config>