stk_config.xml 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586
  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="3"/>
  6. <!-- Minimum and maximum track versions that be be read by this binary.
  7. Older versions will be ignored. -->
  8. <track-version min="6" max="7"/>
  9. <!-- Minimum and maximum server versions that be be read by this binary.
  10. Older versions will be ignored. -->
  11. <server-version min="6" max="6"/>
  12. <!-- Maximum number of karts to be used at the same time. This limit
  13. can easily be increased, but some tracks might not have valid start
  14. positions for those additional karts. -->
  15. <karts max-number="20"/>
  16. <!-- Everything related to hardware configuration.
  17. url : The server used for reporting statistics to. -->
  18. <HardwareReportServer url="https://stats.supertuxkart.net" />
  19. <!-- Everything related to online play.
  20. url: The server used for online multiplayer.
  21. server-version : Version of the server API to use. -->
  22. <OnlineServer
  23. url="https://online.supertuxkart.net/api/"
  24. server-version="2"
  25. />
  26. <!-- Addon and news related settings
  27. url : The server used for addon.
  28. allow-news-redirects : If true we allow all the server urls to be redirected by the addons news.xml file-->
  29. <AddonServer
  30. url="https://online.supertuxkart.net/dl/xml"
  31. allow-news-redirects="true"
  32. />
  33. <!-- Scores are the number of points given when the race ends. -->
  34. <grand-prix>
  35. <!-- Establish the distribution of points in GP.
  36. For a race of N karts ; the N-first point values are taken.
  37. Then, they are sorted. E.g. ; 0 1 2 1 3 2 becomes 0 1 1 2 2 3.
  38. Then these numbers are used to establish the DIFFERENCE of points
  39. between consecutive karts.
  40. The smaller of the numbers is used to establish the score for the
  41. last kart and not the difference between 2 karts.
  42. In the above example, the last kart will have 0 point, the one before
  43. before 1 (0+1) ; the one before 2 (0+1+1), the one before 4 (0+1+1+2),
  44. etc. until the 1st which have 9 (0+1+1+2+2+3)
  45. There shall be at least as much points nodes as max-numbers kart -->
  46. <points points="0" /> <!-- added with 1 kart, score for the last kart -->
  47. <points points="1" /> <!-- added with 2 karts -->
  48. <points points="1" /> <!-- added with 3 karts -->
  49. <points points="2" /> <!-- added with 4 karts -->
  50. <points points="2" /> <!-- added with 5 karts -->
  51. <points points="1" /> <!-- added with 6 karts -->
  52. <points points="3" /> <!-- added with 7 karts -->
  53. <points points="1" /> <!-- added with 8 karts -->
  54. <points points="3" /> <!-- added with 9 karts -->
  55. <points points="4" /> <!-- added with 10 karts -->
  56. <points points="1" /> <!-- added with 11 karts -->
  57. <points points="2" /> <!-- added with 12 karts -->
  58. <points points="5" /> <!-- added with 13 karts -->
  59. <points points="1" /> <!-- added with 14 karts -->
  60. <points points="3" /> <!-- added with 15 karts -->
  61. <points points="6" /> <!-- added with 16 karts -->
  62. <points points="4" /> <!-- added with 17 karts -->
  63. <points points="2" /> <!-- added with 18 karts -->
  64. <points points="7" /> <!-- added with 19 karts -->
  65. <points points="1" /> <!-- added with 20 karts -->
  66. <points points="8" /> <!-- added with 21 karts -->
  67. <points points="1" /> <!-- added with 22 karts -->
  68. <points points="2" /> <!-- added with 23 karts -->
  69. <points points="1" /> <!-- added with 24 karts -->
  70. <points points="9" /> <!-- added with 25 karts -->
  71. <points points="4" /> <!-- added with 26 karts -->
  72. <points points="1" /> <!-- added with 27 karts -->
  73. <points points="10" /><!-- added with 28 karts -->
  74. <points points="2" /> <!-- added with 29 karts -->
  75. <points points="12" /><!-- added with 30 karts -->
  76. </grand-prix>
  77. <!-- Time in follow-the-leader after which karts are removed.
  78. The last values applies for all remaining karts.
  79. time-per-kart Additional time added to the interval
  80. for each kart in the race. -->
  81. <follow-the-leader intervals="30 20 10"
  82. time-per-kart="0" />
  83. <!-- Startup information.
  84. Penalty: Penalty time if a kart accelerates before SET. -->
  85. <startup penalty="1" />
  86. <!-- How often a news message is going to be displayed before
  87. it will be ignored. -->
  88. <news max-display="10"/>
  89. <!-- Physics
  90. smooth-normals: If the normals (for wheel raycasts) should be smoothened.
  91. This is a global setting, it still needs to be activated for each
  92. track individually.
  93. smooth-angle-limits: If the angle between the normal of a vertex and
  94. the normal of a triangle are larger than this value, the normal
  95. of the triangle will be used in interpolating the normals. This
  96. has the effect of an edge split modifier - if the flat track and (say)
  97. a wall at a 90 egree angle are not separated, the normal at that
  98. vertex will be 45 degrees, resulting in completely wrong physics.
  99. The angle limit in this case will discard the 45 degrees, and use
  100. the normal of the flat triangle (pointing upwards). In the worst
  101. case (all three normals discarded, the interpolation will just
  102. return the normal of the triangle (i.e. de facto no interpolation),
  103. but it helps making smoothing much more useful without fixing tracks.
  104. fps: The physics timestep size
  105. default-track-friction: Default friction to be used for the track and
  106. any track/library pbject.
  107. default-moveable-friction: Default friction to be used for any moveable,
  108. e.g. karts, bowling balls, ...
  109. solver-iteation: Number of solver iterations. A lower number reduces
  110. the quality, but can reduce bouncing effect.
  111. solver-split-impulse:: by default bullet solves for velocity and
  112. position at the same time, which can introduce bounce. Setting
  113. this to 1 can reduce bounce.
  114. solver-split-impulse-threshold: Penetration threshold for using split
  115. impulse (ignored if solver-split-impulse is false).
  116. solver-mode: Bullet's solver mode is a bit mask, which can be modified.
  117. This entry contains a space-separated list of mode-names to either
  118. set or unset in this bit mask. Any name starting with a '-' indicate
  119. that the bit is to be set to 0, otherwise the bit will be set.
  120. This field takes two
  121. values: the first value is 'and'ed with bullet's default values
  122. (i.e. it can be used to unset bullet defaults), the second value
  123. is 'or'ed (i.e. is used to set a bit). A value of -1 for 'and'
  124. means to keep all bits. The valid names are listed in stk_config.cpp
  125. and correspond to the definitions in btContactSolverInfo.h, e.g.:
  126. 'randomized_order' corresponds to the bit SOLVER_RANDMIZE_ORDER.
  127. -->
  128. <physics smooth-normals="true"
  129. smooth-angle-limit="0.65"
  130. fps="120"
  131. default-track-friction="0.5"
  132. default-moveable-friction="0.5"
  133. solver-iterations="4"
  134. solver-split-impulse="true"
  135. solver-split-impulse-threshold="-0.00001"
  136. solver-mode=""/>
  137. <!-- Various replaceable music tracks that play during certain events.
  138. title: Plays on the main menu.
  139. default: Plays if a track's music was not found.
  140. race-win: Plays when a player finishes in 1st place.
  141. race-neutral: Plays when a player finishes anywhere in the top half
  142. of the total karts but 1st place.
  143. race-lose: Plays when a player finishes in the bottom half of the
  144. total karts.
  145. gp-win: Plays when a player finishes a grand prix in one of the top
  146. three positions.
  147. gp-lose: Plays when a player fails a grand prix.
  148. unlock: Plays when a kart, track, or other content is unlocked.
  149. -->
  150. <music title="main_theme.music"
  151. default="kart_grand_prix.music"
  152. race-win="race_win_theme.music"
  153. race-neutral="race_summary.music"
  154. race-lose="lose_theme.music"
  155. gp-win="win_theme.music"
  156. gp-lose="lose_theme.music"
  157. unlock="win_theme.music"/>
  158. <!-- Replay related values, mostly concerned with saving less data
  159. and using interpolation instead.
  160. max-frames: Maximum number of transform events that can be saved
  161. in a replay/history file. With normal play, 900 are
  162. enough to store at least one minute, usually more.
  163. delta-t Maximum time between saving consecutive transform events.
  164. The recording will do more transform events when some kart data
  165. changes significantly.
  166. delta-speed If the speed difference exceeds this delta, a
  167. new transform event is generated before maximum time.
  168. delta-steering If the steering angle difference exceeds this delta,
  169. new transform event is generated before maximum time. -->
  170. <replay max-frames="12000" delta-t="0.100" delta-speed="0.6"
  171. delta-steering="0.26" />
  172. <!-- Special urls -->
  173. <urls donate="https://supertuxkart.net/Donate"
  174. password-reset="https://online.supertuxkart.net/password-reset.php"
  175. assets-download="https://github.com/supertuxkart/stk-assets-mobile/releases/download/"/>
  176. <!-- STK will use dns query of the SRV records with these domains to get the list of
  177. stun servers to use for IPv4 and IPv6. -->
  178. <stun ipv4="_stunv4._udp.supertuxkart.net"
  179. ipv6="_stunv6._udp.supertuxkart.net"/>
  180. <!-- Skidmark data: maximum number of skid marks, and
  181. time for skidmarks to fade out. Maximum number will over
  182. current number of karts, so the more karts, the less
  183. skidmark is on track. -->
  184. <skid-marks max-number="500" fadeout-time="60"/>
  185. <!-- Defines when the upright constraint should be active, it's
  186. disabled when the kart is more than this value from the track. -->
  187. <near-ground distance="2"/>
  188. <!-- How long the end animation will be shown. -->
  189. <delay-finish time="1.0"/>
  190. <!-- How long the music credits are shown. -->
  191. <credits music="8"/>
  192. <!-- time is the time till a bomb explodes. time-increase is the time added
  193. to timer when bomb is passed on. -->
  194. <bomb time="30.0" time-increase="0.0"/>
  195. <!-- Item return times.
  196. Time until an item that has been collected returns. Can be set
  197. differently for bonus (gift) boxes, nitro, bananas and bubble gums -->
  198. <item-return-time bonusbox="2.0" nitro="2.0" banana="2.0" bubblegum="2.0"/>
  199. <!-- Powerup
  200. collect-mode : decides what is collected if a kart has already an
  201. same: get one more item of the same type.
  202. new: always get a new item.
  203. only-if-same: if the random item is the same one as the
  204. one currently owned, increase the number, otherwise
  205. no more/new item s are given to the kart.
  206. no-explosive-items-timeout determines if world time is less than this value
  207. then no cake or basketball is given by bonus boxes. -->
  208. <powerup collect-mode="new" no-explosive-items-timeout="15.0"/>
  209. <!-- time: How long a switch is being effective.
  210. items for each item list the index of the item it is switched with.
  211. Order: giftbox, banana, big-nitro, small-nitro, bubble-gum, nolok-bubble-gum,
  212. easter egg-->
  213. <switch time="5" items="1 0 4 4 2 2 6"/>
  214. <!-- Bubblegum
  215. disappear-counter: How often bubblegum gets driven over before it disappears.
  216. shield-time: How long the bubblegum shield lasts
  217. restrict-weapons: If true, using weapons will destroy the user's shield -->
  218. <bubblegum disappear-counter="1" shield-time="10.0" restrict-weapons="false"/>
  219. <!-- explosion-impulse-objects is the impulse that pushes physical objects
  220. away if there is an explosion. -->
  221. <explosion impulse-objects="500.0" />
  222. <!-- Networking
  223. steering-reduction: Reduce a remote kart's steering by this factor
  224. each frame. This helps reduces oversteering by high latency
  225. clients when they only do minor steering adjustments.
  226. max-moveable-objects: Maximum number of moveable objects in a track
  227. when networking is on. Objects will be hidden if total count is
  228. larger than this value.
  229. -->
  230. <networking steering-reduction="1.0"
  231. max-moveable-objects="15"/>
  232. <!-- Camera
  233. The field of views for 1-4 player split screen. fov-3 is
  234. actually not used (since 3 player split screen uses the
  235. same layout as 4 player split screen) -->
  236. <camera fov-1="80" fov-2="65" fov-3="50" fov-4="75" cutscene-fov="0.61" />
  237. <!-- Steer
  238. disable-while-unskid: Disable steering when stop skidding during
  239. the time it takes to adjust the physical body with the graphics.
  240. camera-follow-skid: If true the camera will stay behind the kart,
  241. potentially making it easier to see where the kart is going to
  242. after a skid. -->
  243. <steer disable-while-unskid="false"
  244. camera-follow-skid="true" />
  245. <!-- Default values for all karts
  246. ============================ -->
  247. <general-kart-defaults>
  248. <!-- Kart-specific settings used by the AI.
  249. use-slipstream: if the AI should try to overtake karts using slipstream.
  250. disable-slipstream-usage: even if the AI is not trying to use slipstream,
  251. it can get a lot of bonus, esp. on easy since the AI creates trains.
  252. Set this to true to make sure AI does not get any slipstream bonus.
  253. shield-incoming-radius: Radius at which projectiles will be detected and
  254. trigger a shield usage.
  255. false-start-probability: Probability of a false start.
  256. min/max-start-delay: Minimum and maximum start delay.
  257. See http://www.humanbenchmark.com/tests/reactiontime/stats.php
  258. Average reaction time is around 0.215 s.
  259. nitro-usage: Integer determining how well the AI uses nitro, from 0 to 4
  260. 0 corresponds to no use ; while 1 to 4 corresponds to various degrees
  261. of quality use (using it immediately for 1 to more context-aware strategies)
  262. item-skill: Integer determining how well the AI use items, from 0 to 5
  263. 0 corresponds to no use ; 1 to use after a random time ; while 2 to 5 use
  264. more advanced tactics
  265. collect-avoid-items: if the AI should collect and avoid items,
  266. or just ignore them.
  267. handle-bomb: If the AI should actively try to pass on a bomb.
  268. skidding-threshold: only for old-style skidding: when sharp turn
  269. should be triggered. Smaller values means it will sharp turn
  270. earlier, resulting in better driving in thight curves.
  271. max-item-angle: Items that would need more than this change in
  272. direction are not considered for collection.
  273. time-full-steer is the time for the AI to go from neutral steering to
  274. extreme left (or right). This can be used to reduce
  275. 'shaking' of AI karts caused by changing steering direction
  276. too often. It also helps with making it easier to push the
  277. AI karts (otherwise micro-corrections make this nearly
  278. impossible). A value of 1/maxFPS / 2 will guarantee that
  279. the wheel can go from -1 to +1 steering in one frame,
  280. basically disabling this mechanism.
  281. bad-item-closeness is the maximum distance between a good and a
  282. bad item which can force the AI to abandon a good item in order
  283. to avoid hitting a bad item. If the distance is larger, it is
  284. assumed that there will be enough time to change steering
  285. direction.
  286. straight-length-for-zipper is the minimum length a straight
  287. section of the track should have in order to activate a zipper.
  288. competitive when ahead of the player, or more competitive
  289. when behind the player.
  290. skid-probability: Since the AI is usually very good at using
  291. skidding, this is used to implement some rubber-banding for
  292. the AI: depending on distance to the player, the AI will
  293. change the probability of skidding. This attributes takes
  294. a space-separated list of "distance:probability" pairs
  295. (negative distances meaning the kart is behind the player,
  296. a positive number that the AI is ahead of the player).
  297. Then list should have at least 2 entries. Depending on
  298. the actualy distance the kart has the probability is then
  299. linearly interpolated (if the AI is more than the largest
  300. distance ahead, the value for the largest distance is used,
  301. and similarly if the kart is more than the minimum value
  302. behind).
  303. first-speed-cap: Fraction of maximum speed the first AI kart
  304. should drive at. Used to slow down karts that are ahead of
  305. the player. Note that setting this to a value >1 does NOT
  306. increase the speed the kart can drive at!
  307. last-speed-cap: same as first-speed-cap, but for last AI kart.
  308. AI karts in-between use an average of it with first-speed-cap.
  309. collect-item-probability: Probability of the AI actually
  310. trying to collect an item (if an item is selected for
  311. collection in the first place).
  312. -->
  313. <ai>
  314. <easy time-full-steer="0.1"
  315. straight-length-for-zipper="35"
  316. use-slipstream="false"
  317. disable-slipstream-usage="true"
  318. shield-incoming-radius="0"
  319. false-start-probability="0.08"
  320. min-start-delay="0.3" max-start-delay="0.5"
  321. nitro-usage="0"
  322. item-skill="1"
  323. collect-avoid-items="false"
  324. handle-bomb="false"
  325. first-speed-cap="-100:1.0 -50:0.9 0:0.85 100:0.65"
  326. last-speed-cap="-150:0.92 -50:0.75 50:0.6"
  327. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  328. bad-item-closeness="6"
  329. collect-item-probability="0:0"
  330. rb-skid-probability="0:0.0"
  331. skidding-threshold="4.0"
  332. />
  333. <medium time-full-steer="0.1"
  334. straight-length-for-zipper="35"
  335. use-slipstream="false"
  336. disable-slipstream-usage="false"
  337. shield-incoming-radius="10"
  338. false-start-probability="0.04"
  339. min-start-delay="0.25" max-start-delay="0.4"
  340. nitro-usage="1"
  341. item-skill="2"
  342. collect-avoid-items="true"
  343. handle-bomb="false"
  344. first-speed-cap="20:1.0 60:0.9 100:0.85"
  345. last-speed-cap="-50:0.94 0:0.85 100:0.75"
  346. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  347. bad-item-closeness="6"
  348. collect-item-probability="-10:1.0 0:0"
  349. rb-skid-probability="0:0.0"
  350. skidding-threshold="3.0"
  351. />
  352. <hard time-full-steer="0.1"
  353. straight-length-for-zipper="35"
  354. use-slipstream="true"
  355. disable-slipstream-usage="false"
  356. shield-incoming-radius="8"
  357. false-start-probability="0.01"
  358. min-start-delay="0.15" max-start-delay="0.28"
  359. nitro-usage="2"
  360. item-skill="3"
  361. collect-avoid-items="true"
  362. handle-bomb="true"
  363. first-speed-cap="50:1.0 150:0.9"
  364. last-speed-cap="0:0.96 80:0.8"
  365. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  366. bad-item-closeness="6"
  367. collect-item-probability="10:1.0 20:0"
  368. rb-skid-probability="-50:1.0 -20:0.7 20:0.2 50:0.0"
  369. skidding-threshold="2.0"
  370. />
  371. <best time-full-steer="0.1"
  372. straight-length-for-zipper="35"
  373. use-slipstream="true"
  374. disable-slipstream-usage="false"
  375. shield-incoming-radius="6"
  376. false-start-probability="0.0"
  377. min-start-delay="0.15" max-start-delay="0.2"
  378. nitro-usage="3"
  379. item-skill="4"
  380. collect-avoid-items="true"
  381. handle-bomb="true"
  382. first-speed-cap="0:1.0"
  383. last-speed-cap="0:1.0"
  384. max-item-angle="0.7" max-item-angle-high-speed="0.3"
  385. bad-item-closeness="6"
  386. collect-item-probability="0:1.0"
  387. rb-skid-probability="0:1.0"
  388. skidding-threshold="2.0"
  389. />
  390. </ai>
  391. <!-- Parameters for the speed-weighted objects:
  392. a bigger value for strength-factor leads to the speed of the kart more quickly affecting
  393. the strength of the animation (up to a maximum value that corresponds to the original animation) -->
  394. <speed-weighted-objects strength-factor="0.05" speed-factor="1.0" texture-speed-x="0.0" texture-speed-y="0.0"/>
  395. <!-- friction: slip used for bullet skidding. A high value
  396. (like 10000000) disables bullet skidding. -->
  397. <friction slip="10000000"/>
  398. <!-- collision
  399. impulse-type: STK can apply an additional impulse in case of
  400. kart-track collision:
  401. 'none' : no additional impulse
  402. 'normal': impulse along the normal
  403. 'driveline': impulse towards the nearest driveline.
  404. An impulse towards the driveline works nice when the kart is
  405. driving more or less correctly on the track - it pushes the
  406. kart in the right direction. But if the kart is significanlty
  407. off track, it has severe problems (since an incorrect
  408. driveline point can be selected, pusing the kart in the
  409. wrong direction, sometimes even causing a 'zip-along-obstacle'
  410. effect.
  411. impulse: an additional impulse to be applied in a non-frontal
  412. collision to push two karts away from each other.
  413. impulse-time: The impulse will be applied over a certain time
  414. period, which results in less abrupt changes. If set to 0,
  415. the impulse is only applied once.
  416. resitution: restitution value to be used for the kart rigid bodies.
  417. The restitution used depends on the speed to avoid physics issues
  418. (a collision with high speed and high restitution will push the
  419. kart high up into the air). The values specified are
  420. speed:restitution pairs, the actual restitution will be
  421. interpolated based on the points specified here.
  422. bevel-factor: for each point of the chassis collision box one
  423. additional point is added, resulting in a bevelled box shape.
  424. The original Z coordinate of the chassis is multiplied by
  425. 1-bevelZ (i.e. the main box part of the shape is shortened).
  426. The bevel point has the original Z coordinate, and the X and
  427. Y coordinates of the box are multiplied with (1-bevelX) and
  428. (1-bevelY). A value of 0 for all bevel coordinates disables
  429. bevelling, and uses a simple box shape.
  430. As an example, a value of 1 for x and z will result in a
  431. sharp 'arrow' like shape.
  432. physical-wheel-position: Defines where the 'physical' (raycast)
  433. wheel will be located. It's a weight factor with 0 = being
  434. at the widest side of the bevel, 1 = at the front and
  435. narrowest part of the kart. If the value is less than 0, the old
  436. physics settings are used which places the raycast wheels
  437. outside of the chassis and results in more stable physical
  438. behaviour of the karts. -->
  439. <collision impulse-type="normal"
  440. impulse="3000" impulse-time="0.1" terrain-impulse="160"
  441. restitution="0:1.0 5:1.0 20:0.2" bevel-factor="0.5 0.0 0.3"
  442. physical-wheel-position="0" />
  443. <!-- Skidding
  444. increase: multiplicative increase of skidding factor in each frame.
  445. decrease: multiplicative decrease of skidding factor in each frame.
  446. max: maximum skidding factor = maximum increase of steering angle.
  447. time-till-max: Time till maximum skidding is reached.
  448. visual: Additional graphical rotation of kart. The graphical rotation
  449. of the kart also determines the direction the kart is driving to
  450. when skidding is stopped.
  451. visual-time: How long it takes for the visual skid to reach maximum.
  452. revert-visual-time: how long it takes when stopping a skid to revert
  453. the visual skid and bring visuals and physics in sync again.
  454. min-speed: Minimum speed a kart must have before it can skid. Must be
  455. >0, otherwise the kart can skid at the start of the race.
  456. time-till-bonus: How long a kart needs to skid in order to get a bonus.
  457. bonus-speed: A speedup applied to the kart whick skidded for a while.
  458. bonus-time: How long the bonus-force is applied.
  459. bonus-force: Additional engine force (this is used to offset the fact
  460. that turning after skidding (e.g. to correct direction) often uses
  461. up the skid bonus).
  462. post-skid-rotate-factor: a factor to be used to determine how much
  463. the chassis of a kart should rotate to match the graphical view.
  464. A factor of 1 is identical, a smaller factor will rotate the kart
  465. less (which might feel better).
  466. physical-jump-time: Time for a physical jump at the beginning of a skid.
  467. graphical-jump-time: Time for a graphics-only jump at the beginning
  468. of a skid.
  469. reduce-turn-min/max: The steering done by the controller (which is in
  470. [-1,1]) is mapped to [reduce-turn-min, reduce-turn-max] when skidding
  471. is active (for left turn, right turn will use [-max, -min]). The
  472. effect is that while you skid (say left) you can adjust the direction
  473. of the turn the kart is doing somewhat by steering to the left and right,
  474. but you will always keep on doing a left turn, just more or less. -->
  475. <skid increase="1.05" decrease="0.95" max="2.5" time-till-max="0.5"
  476. visual="1.25" visual-time="0.7" revert-visual-time="0.7"
  477. min-speed="10" time-till-bonus="1.0 3.0"
  478. bonus-speed="4.5 6.5" bonus-time="3.0 4.0"
  479. bonus-force="250 350"
  480. physical-jump-time="0" graphical-jump-time="0.4"
  481. post-skid-rotate-factor="1"
  482. reduce-turn-min="0.2" reduce-turn-max="0.8"/>
  483. <kart-type>
  484. <light />
  485. <medium />
  486. <heavy />
  487. </kart-type>
  488. </general-kart-defaults>
  489. <!-- Here are the default fonts file names for STK.
  490. Please DO NOT report bugs if there're crashes when using your custom font.
  491. This usually happen because the character map of the font is not in unicode mode
  492. (let's take Chinese for example, some fonts of it store the characters in BIG5 mode,
  493. which leads to crash with STK), but the fonts are to blame, what's the point of not
  494. using industry standard nowadays...
  495. -->
  496. <fonts-list normal-ttf="Cantarell-Regular.otf wqy-microhei.ttf NotoSansThai-Regular.ttf NotoSansHebrew-Regular.ttf NotoNaskhArabicUI-Regular.ttf NotoSansMalayalam-Regular.ttf"
  497. digit-ttf="SigmarOne.otf"
  498. color-emoji-ttf="NotoColorEmoji.ttf"/>
  499. <!-- Maximum bones from all animated meshes in each frame to be uploaded for
  500. hardware skinning, For gles 3.0 the specification guarantees at least 2048, for
  501. TBO in desktop at least 65536 (max buffer size) / 64, SSBO at least 2^24 / 64,
  502. so 1024 will work everywhere. -->
  503. <skinning max-bones="1024"/>
  504. <!-- For users with libsquish:
  505. Use a slow but high quality colour compressor.
  506. kColourClusterFit = (32),
  507. Use a fast but low quality colour compressor.
  508. kColourRangeFit = (64),
  509. Use a very slow but very high quality colour compressor.
  510. kColourIterativeClusterFit = (256),
  511. STK default the low quality.
  512. -->
  513. <texture-compression quality="64"/>
  514. <!-- List of default ports used, by default STK use random ports for client.
  515. The server discovery port has to be the same across all clients and servers.
  516. -->
  517. <network-ports server-discovery-port="2757" client-port="2758" server-port="2759"/>
  518. <!-- Configurable values used in SmoothNetworkBody class:
  519. min-adjust-length and max-adjust-length: Error in length smaller or larger
  520. than this value will be ignored (ie show the real position).
  521. min-adjust-speed: Minimum linear velocity required by a body to have smoothing.
  522. max-adjust-time: Maximum time spent in each smoothing stage.
  523. adjust-length-threshold: The higher this value, the larger the correction curve.
  524. -->
  525. <network-smoothing min-adjust-length="0.05"
  526. max-adjust-length="4.0"
  527. min-adjust-speed="0.3"
  528. max-adjust-time="2.0"
  529. adjust-length-threshold="4.0"/>
  530. <!-- List of network capabilities to handle different servers with same version.
  531. -->
  532. <network-capabilities>
  533. <capabilities name="report_player"/>
  534. <capabilities name="soccer_fixes"/>
  535. <capabilities name="ranking_changes"/>
  536. <capabilities name="real_addon_karts"/>
  537. </network-capabilities>
  538. </config>