Advertisement
Guest User

Untitled

a guest
Sep 16th, 2017
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 45.63 KB | None | 0 0
  1. // The following are settable by the user. They are assigned to the
  2. // default values, as if this file was empty. Comments above them
  3. // should indicate what possible settings are available.
  4.  
  5. // Note that only things that cannot affect game synchronization are
  6. // in here (views, etc).
  7.  
  8. // Further update: please *DO* *NOT* edit this file. Place your edits
  9. // in LocalPrefs.ini.
  10.  
  11. [UserPrefs]
  12.  
  13. // How long the console remains visible after it's opened via code
  14. // popping up an error. These values are in ms, so that 1000 = 1
  15. // second. A value of 0 should prevent that from appearing; values
  16. // less than 0 are treated as zero.
  17. BZoneLoadConsoleOpenTime = 1000
  18. BZoneIngameConsoleOpenTime = 0
  19. BZ2EditLoadConsoleOpenTime = 3000
  20. BZ2EditIngameConsoleOpenTime = 1000
  21.  
  22.  
  23. // If this is true, then all items printed to the ingame console
  24. // are echoed to the battlezone.log file. This'll let people see
  25. // what's in some of the really huge hierarchies.
  26. EchoConsoleToLogfile = false
  27.  
  28. // If true, the AIP running code will log things to disk, same effect
  29. // as passing /aiplogging on the commandline. There is probably a
  30. // slight performance hit when this is enabled, so I recommend that
  31. // only modders turn this on.
  32. aipLogging = false
  33.  
  34. // If true, when an out-of-sync is needed, it'll spam the AIP log file
  35. // w/ extra info to try and help determine what went wrong. Only
  36. // testers should really have this on; you need logs from both client
  37. // (or client that went out of sync if more than one client) & server
  38. // to begin to dig into this.
  39. aipExtraLoggingOnResync = false
  40.  
  41.  
  42. //
  43. //
  44. //
  45. // -----------------------------------------------------------------------
  46. // Video system stuff.
  47. //
  48. //
  49. //
  50.  
  51. // Show framerate: yes/no. [Adjustable ingame with the vid.framerate
  52. // console command.] 1.2 used 'false' here.
  53. ShowFPS = true
  54.  
  55. // Minimum size for any object being considered for
  56. // lighting. Basically, this is a bit of padding added to object sizes
  57. // when looking at lighting them. If (LightRange +
  58. // LitObjectMinimumSize) < (2D distance between object and light),
  59. // then that light will be considered for applying to that object. If
  60. // this value is too small, then corners of a boxy object may not be
  61. // accurately lit. If this value is too big, then performance may
  62. // suffer as DX9 is told to apply too many lights to an object. Pick
  63. // your poison.
  64. //
  65. // At the default 32m/cluster, this should have a minimum value of
  66. // about 22.6, because that's the distance between the center and a
  67. // corner (16*sqrt(2) ~= 22.6). But, that's the size of an
  68. // ibpgen. Larger buildings, like the recy/factory are a 2x2 cluster
  69. // push this to about 45 (32*sqrt(2) ~= 45.2). This value has a
  70. // minimum value of clustersize * 0.5 * sqrt(2), i.e. 22.6 at default
  71. // cluster size.
  72. LitObjectMinimumSize = 40
  73.  
  74. // Spotlights are the most expensive light, according to DX9 docs.
  75. // So, an extra cull is put on them. If (range of spotlight +
  76. // SpotlightRangePad) < (2D distance between object being lit and the
  77. // spotlight), then a spotlight will be considered for lighting that
  78. // object. If this value is too small, then corners of a boxy object
  79. // may not be accurately lit. If this value is too big, then
  80. // performance may suffer as DX9 is told to apply too many lights to
  81. // an object. Pick your poison.
  82. SpotlightRangePad = 8
  83.  
  84. // Default teamcolors for DM/FFA. These will be pushed from the server
  85. // to clients. If you don't like what the server pushed to you as a
  86. // client, look at the console commands game.setdefaultcolors,
  87. // game.setgameprefscolors, game.setservercolors,
  88. // game.swapteamcolors. There are also network chat commands
  89. // "/setdefaultcolors", "/setgameprefscolors", "/setservercolors", and
  90. // "/swapteamcolors" , which do the same thing.
  91. //
  92. // If a teamcolor is all zeroes for the first 3 values (e.g. red,
  93. // green & blue), then it's treated as not used -- the default skin
  94. // for a unit is used. If any of r/g/b is not zero, then it's used,
  95. // and the alpha value is set to 255.
  96. //
  97. // Further notes on use -- these colors are a *multiplier* on the
  98. // current colors. You should treat them as having an implicit
  99. // divide-by-255 when they're used -- i.e. setting a channel to 255
  100. // means multiplying by 255/255, i.e. multiplying by 1.0. If you set a
  101. // channel to 127, you're multiplying by 127/255, i.e. multiplying by
  102. // 0.5. Thus, there's no way to brighten up the current colors, only
  103. // darken. The 'current color' referred to above is what DX9
  104. // calculated from various things, including the vertex color in the
  105. // model, base texture (skin), and any lighting applied.
  106.  
  107. // FFA & DM colors, one per team.
  108. TeamColorFFA0 = " 0 0 0 0" // no special color
  109. TeamColorFFA1 = "255 31 31 255" // red
  110. TeamColorFFA2 = "255 255 31 255" // yellow
  111. TeamColorFFA3 = " 31 255 31 255" // green
  112. TeamColorFFA4 = " 31 31 255 255" // blue
  113. TeamColorFFA5 = " 31 255 255 255" // cyan
  114. TeamColorFFA6 = "255 31 255 255" // violet
  115. TeamColorFFA7 = "255 255 255 255" // white
  116. TeamColorFFA8 = " 31 31 31 255" // black
  117. TeamColorFFA9 = " 0 0 0 0" // no special color
  118. TeamColorFFA10= " 0 0 0 0" // no special color
  119. TeamColorFFA11= " 0 0 0 0" // no special color
  120. TeamColorFFA12= " 0 0 0 0" // no special color
  121. TeamColorFFA13= " 0 0 0 0" // no special color
  122. TeamColorFFA14= " 0 0 0 0" // no special color
  123. TeamColorFFA15= " 0 0 0 0" // no special color
  124.  
  125. // And, for teamplay (i.e. team strat or MPI) games, the teamcolors.
  126. // TeamA is used for teams 1..5, and TeamB is for teams 6..10
  127. TeamColorTeamA = "255 31 31 255" // red
  128. TeamColorTeamB = "31 31 255 255" // blue
  129.  
  130. // Per-team colors, even w/ teamplay on. The '0' slot is for the
  131. // commander; 1..4 are thugs. Note - if these are not specified
  132. // (i.e. they're commented out w/ the // at the left end of the line),
  133. // then the TeamColorA/TeamColorB is auto-copied into these values
  134.  
  135. //TeamColorTeamA0 = "255 31 31 255" // red
  136. //TeamColorTeamA1 = "255 31 31 255" // red
  137. //TeamColorTeamA2 = "255 31 31 255" // red
  138. //TeamColorTeamA3 = "255 31 31 255" // red
  139. //TeamColorTeamA4 = "255 31 31 255" // red
  140.  
  141. //TeamColorTeamB0 = "31 31 255 255" // blue
  142. //TeamColorTeamB1 = "31 31 255 255" // blue
  143. //TeamColorTeamB2 = "31 31 255 255" // blue
  144. //TeamColorTeamB3 = "31 31 255 255" // blue
  145. //TeamColorTeamB4 = "31 31 255 255" // blue
  146.  
  147.  
  148.  
  149. // Commando says that these values for teamplay team colors look
  150. // pretty close to 1.0-1.3pb4a's P3 optimization colors. To use these,
  151. // copy the lines into localprefs.ini, and remove the two slashes
  152. // (comment) from the start of the line:
  153.  
  154. //TeamColorTeamA = "235 100 121 255" // red
  155. //TeamColorTeamB = "108 108 228 255" // blue
  156.  
  157. // Teamcolors for MP games. 0 means off, 1 is team colors on,
  158. // individual teams, 2 is team colors on, teamplay colors (teams 1-5
  159. // the same, 6-10 the same). Use -1 for default (BZ2 1.0-1.2 behavior,
  160. // which is 0 in SP, 1 or 2 in MP). Invalid values treated as -1
  161. TeamplayColors = -1
  162.  
  163. // If this is true, the Free For All (i.e. non-teamplay) colors will
  164. // be scrambled by each session's server so that there's a little more
  165. // variety in their use. If false, the 1.0-1.2 teamcolor list is used.
  166. ScrambleTeamplayColors = true
  167.  
  168. // Max framerate targeted. Valid values are -1 (no cap), or 30..1000;
  169. // any value specified outside of the 30-1000 range is treated as -1.
  170. // It may help with some stuttering issues while turning if your
  171. // framerate is capped to values in this range. [Note: actual
  172. // framerate may be slightly higher than this limit due to rounding
  173. // issues.] In limited testing on my laptop, I've found that merely
  174. // having this value set to something under the max capable framerate
  175. // produces smoother visuals onscreen, as the clamp allows the
  176. // graphics card's drivers some cycles to process the recently
  177. // submitted frame(s). It seems that if the graphics card is starved
  178. // for time, it'll occasionally grab the CPU for long pauses (approx
  179. // 1/10 of a second). You could possibly also turn on vsync to achieve
  180. // much the same effect, but that usually clamps framerate down a LOT
  181. // more. Experiment around.
  182. MaxFramerate = 60 // 120
  183.  
  184. // Whether extra framerate stats (e.g. # of triangles, bitmap memory
  185. // usage, etc) are displayed when the framerate display is turned on
  186. // or not. Default of false means only show instantaneous & recent
  187. // min/max fps
  188. ExtraFPSInfo = false
  189.  
  190. // Tuning values for letting the system catch up on frames being
  191. // rendered, if desired. If SleepInGame_Frames is 0 or less, this
  192. // will never take effect. If it is 1, it'll take effect every frame,
  193. // 2 is every other frame, 3 every third frame, and so forth. The
  194. // Amount is passed to Sleep(), a call designed to let BZ2 signify
  195. // that it'll take a breather and let any other high-priority tasks
  196. // get CPU time. This is in case your particular video card drivers
  197. // occasionally need to get more CPU time to catch up. If you see very
  198. // regular stuttering, try setting the _Frames param to a value in the
  199. // 5-10 range, and see if that helps any. I really do NOT recommend
  200. // setting the Amount to a value over about 1, as that'll cause its
  201. // own stuttering.
  202.  
  203. // If curious, I'd suggest trying some alternate values in localprefs:
  204. // setting MaxFramerate = -1, and setting all 4 of the SleepInGames*
  205. // values to 1. This may help when framerates drop under MaxFramerate
  206. // value. Basically, it's better to pull down the peak/average fps if
  207. // that helps the minimum fps.
  208. SleepInGameSlow_Frames = 0
  209. SleepInGameSlow_Amount = 0
  210. SleepInGameFast_Frames = 0
  211. SleepInGameFast_Amount = 0
  212.  
  213. // Minimum framerate for it to use the 'fast' values above. Clamped to
  214. // 20.0 if a value less than that is specified. No max.
  215. SleepInGameDivider = 30.0
  216.  
  217.  
  218. // Shows the version at the login screen, if true.
  219. ShowVersion = true
  220.  
  221. // Flag as to whether in SP, framerate is preferred to MW fidelity. If
  222. // true, the exe can read a bunch of moves in at once, which can lead
  223. // to MW pops/mispredicts. If false, it reads in only 1 move at a
  224. // time, which may lead to slower framerates. Slower systems should
  225. // definitely consider setting this to true. This setting is used only
  226. // when not in a network game, and only when multiworld is on. I'm
  227. // defaulting this to false simply because slower systems shouldn't be
  228. // trying to play non-networked games in MW if at all possible.
  229. SPPreferFPS = false
  230.  
  231. // This is a value from -2 .. 2 (default 0). As the value decreases
  232. // (towards -2), there will tend to be more pixel detail, but at the
  233. // chance of slightly more sparkly textures. As the value increases
  234. // (towards 2), it'll tend to be smoother, but at the expense of
  235. // detail. Adjustable ingame with the 'vid.render.mipbias' variable.
  236. ShellMipBias = -1
  237. GameMipBias = -0.5
  238.  
  239. // For screen fills (e.g. the red overlay when taking damage), this
  240. // can clamp how long it shows up. 1.0-1.3pb3 had no maximum on this.
  241. // (This value is in seconds *AND* opacity -- it's a timer, and when
  242. // between 0 and 1, it's also the opacity. When > 1, the opacity
  243. // is clamped at 100%). I personally like a value like 0.8 for this,
  244. // but I'm not willing to make such a drastic change.
  245. MaxColorFade = 2.0
  246.  
  247. // Number of mipmaps that should be autogenerated for loaded
  248. // textures. This ought to improve graphical performance, at the cost
  249. // of a little more memory on the graphics card (and main memory). BZ2
  250. // 1.0-1.2 used 0 for some textures, 3 for others. Valid values are
  251. // 0-16, with illegal values resetting to 4. Using a value of 0 here
  252. // will cause in-game graphics to be REALLY sparkly. You don't want to do
  253. // that. Note: the DXT textures used by 1.3pb3 and higher ignore this
  254. // value.
  255. DesiredMipCount = 8
  256.  
  257. // Forces a desktop refresh (redraw) on exit. Asked for by a beta tester,
  258. // made an option so this can be turned off if it annoys you.
  259. RefreshDesktopOnExit = false
  260.  
  261. // Target framerate, used during MP (and optionally SP). This value is
  262. // used as the framerate below which the game will start dropping
  263. // graphical features. This value can be anywhere from 15-1000, clamped
  264. // on reading. [If you're trying to sustain 1000fps, good luck!]
  265. MinFramerateInSP = false // if true, apply MinFramerate in SP and IA
  266. ShowFramerateTweaks = false // set to true to debug
  267.  
  268. // Shows game histogram (toggleable w/ game.histogram)
  269. ShowHistogram = false
  270.  
  271. // Sort order for which graphical features are dropped. These numbers
  272. // must be between 1 and 100. The values in a sequence (e.g. SkyOff ->
  273. // SkyLow -> SkyHigh) must be in increasing order. Entries in
  274. // different sequences may have the same value. Lowest priority items
  275. // (whose FPS matches) will be disabled. If nothing is disabled for a
  276. // period, then it checks for things to enable, highest priority to
  277. // lowest priority (whose FPS matches)
  278.  
  279. ObjsLow = 28
  280. ObjsMed = 27
  281. ObjsHigh = 26
  282. LightsNone = 25
  283. TerrainLow = 24
  284. SkyNone = 23
  285. PropsNone = 22
  286. ShadowOff = 21
  287. LightsOne = 20
  288. TerrainMed = 19
  289. SkyLow = 18
  290. ShadowMed = 17
  291. PropsMed = 16
  292. SkyHigh = 15
  293. TerrainHigh = 14
  294. LightsNoHeadlights = 13
  295. PropsHigh = 12
  296. ParticleLow = 11
  297. ParticleMed = 10
  298. ParticleHigh = 9
  299. ReflectionsOff = 8
  300. LocalFogOff = 7
  301. WeatherOff = 6
  302. LightsAll = 5
  303. ReflectionsOn = 4
  304. LocalFogOn = 3
  305. WeatherOn = 2
  306. ShadowHigh = 1
  307.  
  308. // Framerate target for the above functions. These values must be
  309. // between 15 and 999. There must be a spacing of at least 6 between
  310. // sequenced values, e.g. SkyOff -> SkyLow -> SkyHigh. If the
  311. // framerate is below than the value, it'll be applied. If above the
  312. // value, and this is the top entry in the sequence, the feature will
  313. // be applied.
  314.  
  315. ObjsLowFPS = 15.0
  316. ObjsMedFPS = 21.0
  317. ObjsHighFPS = 27.0 // People like this, so make it show back up first
  318.  
  319. LightsNoneFPS = 15.0
  320. LightsOneFPS = 20.0
  321. LightsNoHeadlightsFPS = 25
  322. LightsAllFPS = 47.0
  323.  
  324. TerrainLowFPS = 23.0
  325. TerrainMedFPS = 29.0
  326. TerrainHighFPS = 37.0
  327.  
  328. SkyNoneFPS = 24.0
  329. SkyLowFPS = 30.0
  330. SkyHighFPS = 36.0
  331.  
  332. PropsNoneFPS = 25.0
  333. PropsMedFPS = 33.0
  334. PropsHighFPS = 39.0
  335.  
  336. ShadowOffFPS = 26.0
  337. ShadowMedFPS = 32.0
  338. ShadowHighFPS = 260.0 // buggy for most, so never enable (unless you want it to)
  339.  
  340. ParticleLowFPS = 34.0
  341. ParticleMedFPS = 40.0
  342. ParticleHighFPS = 46.0
  343.  
  344. ReflectionsOffFPS = 41.0
  345. ReflectionsOnFPS = 48.0
  346.  
  347. LocalFogOffFPS = 42.0
  348. LocalFogOnFPS = 50.0
  349.  
  350. WeatherOffFPS = 45.0
  351. WeatherOnFPS = 51.0
  352.  
  353. // Values for the LOD layer at level 0, 1 or 2 (low, medium, high,
  354. // respectively). Changing these could cause serious problems, so be
  355. // careful
  356. LOD0_MRM = 3.0
  357. LOD0_SortTransparent = false
  358. LOD0_DoGlowTextures = false
  359. LOD0_FarDist = 400.0
  360. //
  361. LOD1_MRM = 2.0
  362. LOD1_SortTransparent = false
  363. LOD1_DoGlowTextures = true
  364. LOD1_FarDist = 500.0
  365. //
  366. LOD2_MRM = 0.6
  367. LOD2_SortTransparent = true
  368. LOD2_DoGlowTextures = true
  369. LOD2_FarDist = 600.0
  370.  
  371. // Tuning values for the building preview display.
  372.  
  373. // Alpha values for the building preview light & heavy display. Values
  374. // are from 0 (transparent) to 255 (opaque). This is for the color of
  375. // the object as a whole
  376. BuildingPreview_LightAlpha = 31
  377. BuildingPreview_HeavyAlpha = 160
  378. // Alpha of the wireframe in light * heavy mode, values as above
  379. BuildingPreview_WireLightAlpha = 127
  380. BuildingPreview_WireHeavyAlpha = 127
  381.  
  382. // Values used to reposition the mapradar onscreen. Width, Height
  383. // should be self-explanatory. For the positioning, it takes the
  384. // screen size, multiplies that by the multiplier, then adds the
  385. // diff. That is treated as the top-left coord, unless that would push
  386. // it (partly/fully) offscreen, in which case it's treated as bottom
  387. // and/or right, respectively. Experimentation should make this
  388. // clear. Two sets of values exist, one for play and one for the
  389. // editor.
  390.  
  391. // Note: these settings are adjustable with the ingame console, see
  392. // "gameprefs.Play_*" and "gameprefs.Edit_*" variables
  393.  
  394.  
  395. Play_MapRadarHeight = 128
  396. Play_MapRadarWidth = 128
  397. Play_MapRadarXMult = 0.0
  398. Play_MapRadarXDiff = 30.0
  399. Play_MapRadarYMult = 1.0
  400. Play_MapRadarYDiff = -10.0
  401.  
  402. Edit_MapRadarHeight = 128
  403. Edit_MapRadarWidth = 128
  404. Edit_MapRadarXMult = 1.0
  405. Edit_MapRadarXDiff = -30.0
  406. Edit_MapRadarYMult = 1.0
  407. Edit_MapRadarYDiff = -10.0
  408.  
  409. // Same as above, but for the 3D cockpit radar. [applies to play &
  410. // editor, actually] You may need to keep the aspect ratio constant
  411. // here; if not 1.85:1, the XSI may need tweaking
  412. Play_CockpitRadarHeight = 140
  413. Play_CockpitRadarWidth = 260
  414. Play_CockpitRadarXMult = 0.0
  415. Play_CockpitRadarXDiff = 35.0
  416. Play_CockpitRadarYMult = 1.0
  417. Play_CockpitRadarYDiff = 0.0
  418.  
  419. // Scale multiplier, applied to 3D cockpit radar, when reading and
  420. // converting to .msh. Note - mods may need to delete their cached
  421. // .msh file and rebuild to be compatible w/ pb5
  422. Play_CockpitRadarXSIScale = 0.75
  423.  
  424. // Color for the 3D cockpit radar. Adjustable ingame w/ the
  425. // gameprefs.Play_CockpitRadarColorR .. B values
  426. Play_CockpitRadarColorR = 0
  427. Play_CockpitRadarColorG = 120
  428. Play_CockpitRadarColorB = 255
  429.  
  430. // Positioning of the ingame histogram for MP. If these numbers are
  431. // negative, it's treated as a position from the right/bottom edge of
  432. // the screen; positive numbers are from the top/left, respectively.
  433. Play_HistogramPosX = -260
  434. Play_HistogramPosY = 70
  435.  
  436. // Values to allow the user to pull in (but never extend) the
  437. // visibility, fog ranges on maps. If the values below are under the
  438. // values set by a map, they are used. If they are above, they are
  439. // ignored. These settings don't affect the Editor build, where you'd
  440. // want higher draw distances.
  441. // Note: also adjustable with "gameprefs.MaxVisibility", and similar
  442. MaxVisibility = 99999.0
  443. MinFogRange = 99999.0
  444. MaxFogRange = 99999.0
  445.  
  446. // Multiplier applied to default visibility, fog ranges on maps. This
  447. // value must be between 0.1 (can see only 10% as far as normal) and
  448. // 1.0 (normal). This multiplier is applied before the maxes are
  449. // applies above, and may be more useful in trimming view distances.
  450. VisibilityMult = 1.0
  451.  
  452.  
  453. //
  454. //
  455. //
  456. // -----------------------------------------------------------------------
  457. // General game stuff.
  458. //
  459. //
  460. //
  461.  
  462. // What key (when used with the control key) is used to toggle the
  463. // ingame console on/off. See the bottom of this file for what values
  464. // are valid here; this is NOT an ascii code, but rather a DirectInput
  465. // keyboard char. Made editable after so many non-US keyboards had
  466. // issues with this key. For US keyboard, this default key is the one
  467. // with ~ ` on it. For UK keyboards, this default key is the one with
  468. // ` ¬ on it.
  469. ToggleConsoleKey = 0x29
  470.  
  471.  
  472. // Ability to tweak how remote craft are smoothed onscreen. Valid
  473. // values are -1 .. 4; adjustable ingame with game.smoothcodepath :
  474. //
  475. // -1: 1.3 Optional - shows raw data, no smoothing (remote humans + bots)
  476. // 0: 1.3 default
  477. // 1: 1.2 code (fixed max speed, will be very warpy if craft exceeds it) [REMOTE HUMANS ONLY]
  478. // 2: 1.2 code, but uses max speed from craft's ODF [REMOTE HUMANS ONLY]
  479. // 3: 1.2 code (fixed max speed, will be very warpy if craft exceeds it) [REMOTE HUMANS + BOTS]
  480. // 4: 1.2 code, but uses max speed from craft's ODF [REMOTE HUMANS + BOTS]
  481. //
  482. SmoothCodePath = -1
  483.  
  484.  
  485. // Range for a percentage of a craft's normal forward velocity it may
  486. // be smoothed by when multiworld is on. This value should be between
  487. // 0.0 and 5.0, where 1.0 means that the craft is allowed to travel up
  488. // to 100% of its forward velocity per frame.
  489. //
  490. // Setting the min down to 0 is not recommended, as craft rotating in
  491. // place w/o any position changes won't have their changes shown until
  492. // it moves.
  493. //
  494. // Setting the max number higher will be slightly more jumpy, while
  495. // lower numbers will tend to induce warp if remote players maneuver
  496. // really quickly.
  497.  
  498. MinMWSmooth_DTPercentage = 0.5
  499. MaxMWSmooth_DTPercentage = 1.5
  500.  
  501.  
  502. // Some other clamps on the smoothing code ranges. These are in absolute
  503. // dt values, not percentages of current frame. Values less than 0.00001
  504. // mean that this value is ignored. These can be adjusted with the
  505. // game.minsmoothdt and game.maxsmoothdt console commands
  506. MinMWSmooth_dt = 0.01
  507. MaxMWSmooth_dt = 0.5
  508.  
  509.  
  510. // Feedback factors for MW smoothing. Each of these may be between 0.0
  511. // and 1.0, with 0.0 meaning "use 100% of the traditionally-calculated
  512. // value for this, 1.0 meaning "use 100% of the new calculation for
  513. // this", and 0.5 meaning "average the two exactly." In limited
  514. // testing, values closer to 0 than 1 tend to work better.
  515. //
  516. // PositionFactor is used to blend between the just-calculated
  517. // position and the last frame's position. A value of 0 will use only
  518. // the highly-smoothed position, a value of 1 will use the 'best
  519. // guess' position of where they are, and a value of 0.5 will use 50%
  520. // of both values. Values between 0.75 and 0.999 will probably be
  521. // intolerable. This value is applied on a per-frame basis, so as
  522. // your framerate goes up, PositionFactor will seem to get stronger.
  523. //
  524. // VelocityFactor is used to blend between the true (physics)
  525. // velocity (value of 0) and the velocity needed to get it going
  526. // towards its true position (value of 1).
  527.  
  528. MWSmooth_PositionFactor = 0.15
  529. MWSmooth_VelocityFactor = 0.00
  530.  
  531. // The above 4 values can be adjusted at the console with game.minsmooth,
  532. // game.maxsmooth, game.smooth_posfactor, and game.smooth_velfactor . Older
  533. // variables and console commands have been removed.
  534.  
  535.  
  536. // How much the smoothing can change dt by in a frame. A value of 1.0
  537. // means a 100% decrease/increase is allowable, any decrease/increase
  538. // over that is clamped. A value of 0.5 means a 50% change is allowed.
  539. // Valid ranges for these values are 0.01 .. 10.0. Adjustable ingame
  540. // with game.maxsmoothincrease, game.maxsmoothdecrease console varbs.
  541. MaxSmoothDTDecrease = 0.15
  542. MaxSmoothDTIncrease = 0.15
  543.  
  544. // Time, in seconds, at which the smoothing code is allowed to run at.
  545. // 0.01 is approx 100x/second, or 100fps. Setting this to 0 is
  546. // allowed, but seemed to make things appear to stutter at the TPS
  547. // rate once the framerate on my system hit 400+fps.
  548. MWSmooth_MinDT = 0.01
  549.  
  550. // Flag that tunes behavior of what to do when the multiworld
  551. // buildworld is really late. Setting this to true will force it to
  552. // burn a little more CPU in hopes of catching up sooner rather than
  553. // later. Previous builds essentially defaulted this to false.
  554. AggressiveCatchupWhenLate = true
  555.  
  556.  
  557. // Initial setting of the variable adjustable w/ game.altremotepredict.
  558. DefaultAltRemotePredict = false
  559.  
  560.  
  561. // Maximum rate the 2D terrain map can be refreshed at, a fairly
  562. // expensive operation. This is mostly an issue in multiplayer, where
  563. // the multiworld frequency can cause spurious requests to refresh the
  564. // 2D map. This value is in 1/10 seconds, i.e. 10 = 1 second, 25 = 2.5
  565. // seconds. Setting this value too low can hurt your framerate.
  566. // Setting it too high may mean the 2D map lags reality, especially on
  567. // building creation/destruction. Most of the time, I doubt you're
  568. // looking at that map, so an up-to 2.5 second lag isn't a problem
  569. TerrainRefreshRateTicks = 25
  570.  
  571.  
  572.  
  573. // If true, the shell will do a Sleep(1) at the end of the frame. May
  574. // improve performance-- the idea behind this is to tell Windows "if
  575. // there's any other task needing CPU time, let it have some," which
  576. // DirectX and/or the graphics drivers may want right after a frame is
  577. // finished and it's their job to get it onscreen.
  578. SleepInShell = true
  579.  
  580.  
  581. // If true, the shell will do a Sleep(15) while the network thread is
  582. // receiving Gamespy server info packets (i.e. during a refresh). Will
  583. // probably improve accuracy of ping times.
  584. ExtraSleepInShellGamespyScanning = true
  585.  
  586.  
  587.  
  588. // If true, the game will rebuild the cliffs database on loading a
  589. // savegame. Recommended from the beta board.
  590. RecalcCliffsOnLoad = true
  591.  
  592.  
  593. // If true, the game will show debugging info for the currently
  594. // executing AIP plans onscreen. Mainly useful for modmakers.
  595. // The ingame console command game.debugaip will toggle this.
  596. ShowAIPInfo = false
  597.  
  598.  
  599. // Position of the onscreen AIP debugger. Positive values are treated
  600. // as offsets from left/top respectively; negative values measure from
  601. // bottom/right. It's possible for these values to push things
  602. // offscreen, so check your math!
  603. // Note: this is adjustable with the ingame console, see
  604. // "gameprefs.AIPDebug_PosX" and "gameprefs.AIPDebug_PosY"
  605.  
  606.  
  607. // 640 resolution
  608. AIPDebug_PosX = -610
  609. AIPDebug_PosY = -175
  610.  
  611. // 800 resolution
  612. //AIPDebug_PosX = -765
  613. //AIPDebug_PosY = -175
  614.  
  615. // 1024 resolution
  616. //AIPDebug_PosX = -980
  617. //AIPDebug_PosY = -175
  618.  
  619. // 1280 Resolution
  620. //AIPDebug_PosX = -1250
  621. //AIPDebug_PosY = -175
  622.  
  623. // Same coordinate system, for the framerate & audio info strings
  624. Info_FPS_PosX = 0
  625. Info_FPS_PosY = 0
  626. Info_Audio_PosX = 480
  627. Info_Audio_PosY = 0
  628.  
  629.  
  630. // If true, the game will save the post-game statistics to disk, in
  631. // the 'GameStats' folder (which will be created as needed). Stats
  632. // are filenamed with system date and time of writing; do not play
  633. // more than one game per minute or files will be overwritten.
  634. SaveStatsToDisk = true
  635.  
  636.  
  637. // If true, uses 1.0-1.3pb1's method for trying to reassociate
  638. // ordnance across multiworld swaps. 'true' may be faster; 'false'
  639. // may look better visually.
  640. OldOrdnancePath = true
  641.  
  642. // If true, draws particles in the reflected (mirrored)
  643. // view. Definitely has issues when particles clip in/out of
  644. // water. Those would take a very long time to fix, so I'm mostly
  645. // killing the reflected particles code. If you really want to see the
  646. // reflected particles, set this to true. But, I won't listen to bug
  647. // reports for anomalies seen when this is true. 1.0-1.3pb4a treated
  648. // this as false without an option to change it.
  649. AllowReflectedParticles = false
  650.  
  651. // Multiplier on how fast the screen scrolls by in Shift-F9 mode. 1.0
  652. // should be patch1.2's speed, 2.0 = double that speed, 0.5 = one half
  653. // that speed.
  654. ShiftF9ScrollScale = 0.5
  655.  
  656. // Some threading and multi-CPU tuning values. For all priority
  657. // values, they can be one of the following values:
  658. // -2 : THREAD_PRIORITY_LOWEST
  659. // -1 : THREAD_PRIORITY_BELOW_NORMAL
  660. // 0 : THREAD_PRIORITY_NORMAL
  661. // 1 : THREAD_PRIORITY_ABOVE_NORMAL
  662. // 2 : THREAD_PRIORITY_HIGHEST
  663. // Values outside of -2..2 are treated as 0.
  664. MainThreadPriority = 0
  665. NetworkThreadPriority = 1
  666. OggDecodeThreadPriority = 1
  667.  
  668. // Thread affinity masks. These are bitfields, with 1 being the first
  669. // CPU in the system, 2 the second CPU, 4 the third CPU, etc. If a
  670. // mask specified here refers to a CPU that doesn't exist, it is
  671. // treated as 1
  672. MainThreadAffinityMask = 2
  673. NetworkThreadAffinityMask = 2
  674. OggDecodeThreadAffinityMask = 1
  675.  
  676.  
  677. // Memory debugging code. This option is used by the editor build,
  678. // ONLY. If true, each frame, it does a quick check of all memory
  679. // structures, and will die if an inconsistency is noted. Note:
  680. // turning this on WILL slow down your system. Drastically. Turning
  681. // this on may help identify when issues occur, rather than waiting to
  682. // crash when the affected memory is accessed.
  683. CheckMemoryEachFrame = false
  684.  
  685. //
  686. //
  687. //
  688. // -----------------------------------------------------------------------
  689. // Audio system stuff. The sound code has been rewritten for the 1.3
  690. // to support DirectSound/DirectSound3D thru DirectX 8.0 or better.
  691. // [1.2 handled Aureal 1.x/2.x, though that code had a ton of bugs.]
  692. //
  693. //
  694. //
  695.  
  696. // If this setting is true, 3D sounds will be attempted. If false, 3D
  697. // sound will be off. This is possibly perferable to the /nods3d
  698. // commandline flag. If your sound card says it can't do 3D, this
  699. // value will be set to false(disable).
  700. Enable3DAudio = true
  701.  
  702.  
  703. // Audio mixing rate, selected from the following list:
  704. // 0 = 8000 Hz
  705. // 1 = 11025 Hz (BZ2 1.0-1.2 default)
  706. // 2 = 22050 Hz
  707. // 3 = 44100 Hz
  708. // No other values are allowed, and 22050 will be used if an illegal
  709. // value is specified
  710. AudioMixRate = 3
  711.  
  712.  
  713. // Audio mixing bits. Drop this to 8 if your audio board is *really*
  714. // underpowered. Only 8 or 16 is valid here, with 16 being the
  715. // default.
  716. AudioMixBits = 16
  717.  
  718.  
  719. // Size of audio cache. If this is 0, it is autodetermined by the
  720. // following:
  721. // Physical RAM <= 64MB : 4MB . [Upgrade already, dangit!]
  722. // Physical RAM 64-128MB : 8MB
  723. // Physical RAM 128-192MB: 16MB
  724. // Physical RAM 192+MB : 32MB
  725. //
  726. // If this number is not 0, it is taken as a number of MB of memory to
  727. // use (valid values are 1-64MB). If you're running a box with 2GB or
  728. // 4GB ram, this autodetect may give strange results-- see the
  729. // battlezone.log file to see what value it really used.
  730. //
  731. // It may make sense to set this value to 16+MB, even on 64MB boxes.
  732. // The reasoning behind this is as follows: doing so would cause a lot
  733. // of swapping in windows. However, that swapping may well be faster
  734. // than BZ2's reading the disk (for the same amount of data),
  735. // unpacking, and the like. Experiment with this if you want.
  736. //
  737. // (Note: if your soundcard says it's got a particular size of
  738. // ram onboard, that overrides the above)
  739. AudioCacheSize = 0
  740.  
  741.  
  742. // Faders for various parts of audio. This is a multiplier on the rest
  743. // of the volume, so that 0.0f means "off, completely", 0.5f means
  744. // "half of slider volume", 1.0f means "use slider volume", and 2.0f
  745. // means "double slider volume."
  746. //
  747. // Note: maximum value for audio in code is clamped to 1.0, so if any
  748. // of these are over 1.0, then your in-game slider must be under 1.0
  749. // to fully take effect. (i.e. if you set one to 2.0f, your ingame
  750. // volume slider must be 0-50%, so that that category can go from 0-1
  751. // w/o clamping). Valid values are 0 to 2 (double).
  752. AudioMultiplier_UNKNOWN = 1.0f // fallback
  753. AudioMultiplier_UNIT_DLG = 1.0f
  754. AudioMultiplier_MISSION_DLG = 1.0f
  755. AudioMultiplier_INTERFACE = 1.0f
  756. AudioMultiplier_WEAPON = 1.0f
  757. AudioMultiplier_ORDNANCE = 1.0f
  758. AudioMultiplier_EXPLOSION = 1.0f
  759. AudioMultiplier_ENGINE = 1.0f
  760. AudioMultiplier_AMBIENT = 1.1f
  761.  
  762.  
  763. // Distance ranges for various classes. These values must be between
  764. // 2.0f and 250.0f. The values here seem to work well.
  765. vehicleMinDist = 10.0
  766. vehicleMaxDist = 225.0
  767. explosionMinDist = 10.0f
  768. explosionMaxDist = 225.0f
  769. weaponMinDist = 10.0f
  770. weaponMaxDist = 225.0f
  771. ordnanceMinDist = 10.0f
  772. ordnanceMaxDist = 225.0f
  773.  
  774.  
  775. // Various 3D setup flags. These are the defaults, I believe, and
  776. // ought to work. See the DirectX SDK docs for info on what they are.
  777.  
  778. // D3D listener params
  779. flDistanceFactor= 1.0f
  780. flRolloffFactor = 1.0f
  781. flDopplerFactor = 1.0f
  782.  
  783.  
  784. // D3D Buffer Params
  785. dwInsideConeAngle = 360
  786. dwOutsideConeAngle = 360
  787. vConeOrientation_x = 0.0f
  788. vConeOrientation_y = 0.0f
  789. vConeOrientation_z = 1.0f
  790. lConeOutsideVolume = 0
  791. flMinDistance = 10.0f
  792. flMaxDistance = 225.0f
  793.  
  794.  
  795. // Use the new shell background music volume setter. This is
  796. // recommended to be true for my Soundblaster Live and Hercules
  797. // Gamesurround MUSE XL cards at home, but false for my Turtle Beach
  798. // Santa Cruz. Basically, if you alt-tab in the pregame shell and the
  799. // music is very loud on return, try reversing this setting.
  800. NewShellMusicBehavior = false
  801.  
  802.  
  803. // Whether /nobodyhome on the commandline is a 1-time option, or
  804. // persists until you relaunch w/o that option. 1.0-1.3pb3 used a
  805. // value of true for this
  806. NobodyHomeIsPersistent = false
  807.  
  808. //
  809. //
  810. //
  811. // -----------------------------------------------------------------------
  812. // Network stuff
  813. //
  814. //
  815. //
  816.  
  817. // Default name to be in the session name box
  818. DefaultSessionName = ""
  819.  
  820.  
  821. // Default password to be in the password box
  822. DefaultPassword = ""
  823.  
  824.  
  825. // Default server message
  826. DefaultMessage = ""
  827.  
  828.  
  829. // Default Max ping (until edited). Default is 1500
  830. DefaultMaxPing = 1500
  831.  
  832. // If true, sessions in the server list that have no map will
  833. // be hidden. Helps reduce some of the advertising spam.
  834. FilterOutNoMap = true
  835.  
  836. // Controls whether verbose (excessive(?)) info is printed when
  837. // lag is noted.
  838. VerboseLagInfo = false
  839.  
  840. // If this is true, BZ2 will attempt to contact any UPNP-supporting
  841. // devices on the local LAN, and have them open BZ2's network ports
  842. // automatically. This applies only when hosting, and on gamespy
  843. // (i.e. LAN Only is off)
  844. UseUPNP = true
  845.  
  846. // How long UPNP is registered with your local router (if it's enabled
  847. // & working). I think this is in seconds, but could be wrong Use 0 to
  848. // make it 'unlimited' -- i.e. it'll remain registered until you
  849. // manually close out a BZ2 session. (Crashes will leave an
  850. // 'unlimited' session open, which is why this isn't 0)
  851. UPNPTimeout = 0
  852.  
  853.  
  854. // Flag to make UPNP very chatty to console/chatbox. Set to false to
  855. // make it quieter
  856. VerboseUPNPLog = true
  857.  
  858.  
  859. // How many game info queries received that are logged to the
  860. // console/chatbox, per session. This is useful to see if others can
  861. // see your session online. Set to 0 to disable this, or set to a
  862. // really big # to make permanent.
  863. NumGameQueriesLoggedPerSession = 2
  864.  
  865.  
  866. // Flag to start off in LAN only mode (true), or Gamespy (false)
  867. LANOnly = false
  868.  
  869.  
  870. // Flag to start off in 'Power User' mode (true) or normal (false)
  871. PowerUser = false
  872.  
  873. // How long, in seconds, between spamming the console about lagged
  874. // players or MW lag. Larger values == longer delay
  875. LagSpamTimeout = 4
  876.  
  877. // How much, in seconds, MW lag must be present before we complain
  878. // about it.
  879. MinMWLagSeconds = 12
  880. // How long, in seconds, before we show a player is lagged, or player
  881. // is really lagged messages.
  882. MinLaggedPlayerSeconds = 4
  883. MinReallyLaggedPlayerSeconds = 12
  884.  
  885. // Whether the semitransparent background for the ingame score panel
  886. // is used or not.
  887. UseScorepanelBackdrop = false
  888.  
  889. // # of seconds the multiplayer in-game messages window (mid-right
  890. // screen) appears for in normal mode
  891. MessagesWindowTimeoutNormal = 20
  892.  
  893.  
  894. // # of seconds the multiplayer in-game messages window (mid-right
  895. // screen) appears for in poweruser mode
  896. MessagesWindowTimeoutPowerUser = 9999
  897.  
  898.  
  899. // Max # of bots in DM. This can go as high as 256 if you want to
  900. // really crush the system. Note: if your framerate sucks with a large
  901. // number of bots, then the official response is: "don't do that,
  902. // then."
  903. MaxDMBots = 32
  904.  
  905.  
  906. // Ingame score info on by default (control-enter to toggle)
  907. ScoresVisible = true
  908.  
  909.  
  910. // # of seconds between refreshing the Gamespy server list
  911. GamespyServerListRefresh = 120
  912.  
  913.  
  914. // # of seconds between refreshing the LAN server list
  915. LANServerListRefresh = 30
  916.  
  917.  
  918. // Length of LAN scan, in seconds
  919. LANScanLength = 3
  920.  
  921.  
  922. // Shows all games in the server list, regardless of versioning. If
  923. // false, only shows games with the same Gamespy version.
  924. ShowAllGames = true
  925.  
  926.  
  927. // # of machines to query at once in a Gamespy server scan. BZ2
  928. // 1.0-1.2 used 20; this may be too high for a modem. If this is too
  929. // high, a modem user will get congestion and thus higher ping times
  930. // than correct. A user on broadband can probably safely increase
  931. // this.
  932. ServersToQueryAtOnce = 10
  933.  
  934.  
  935. // Default port # for games (LAN & Gamespy) to be hosted on. Changing
  936. // this shouldn't be necessary unless you're trying to host multiple
  937. // games off a machine at once. Valid values for this are 1024 thru
  938. // 65530. Ports N thru N+2 are used for the game. Thus, for the
  939. // default of 17770, ports 17770-17772 are used. Also used in LAN
  940. // scans-- scans base to base +20. Thus, all machines on a LAN must
  941. // have the same base.
  942. GameBasePortNumber = 17770
  943.  
  944.  
  945. // Default amount of time (in seconds) for an opened connection to
  946. // start talking as a BZ2 app. Connections will be dropped if this
  947. // timeout is exceeded. Range of possible values is 1.0 .. 99.0.
  948. InitialJoinTime = 5.0
  949.  
  950. // How long (in seconds) a client can be alt-tabbed before this
  951. // machine (if server) auto-kicks them. Set this value to < 0 to
  952. // disable this feature.
  953. AltTabTolerateTime = 30.0
  954.  
  955.  
  956. // # of concurrent joiners (before they authenticate) to support at
  957. // once. -1 means "up to playerlimit". Setting this value too small
  958. // could block out legit players trying to join
  959. NumConcurrentJoiners = -1
  960.  
  961. // Whether onscreen chat messages have a timestamp or not
  962. TimestampOnscreenChat = false
  963.  
  964. // Flag as to whether IPs are added to an autoblock list after
  965. // multiple bad joins. Note: the /clearautobans chatline command
  966. // should flush this list.
  967. AutoblockBadJoiners = true
  968.  
  969.  
  970. // How many bad joins are needed to be added to the autoblock list
  971. // Note: the /clearautobans chatline command should flush this list.
  972. RejectionsBeforeAutoBan = 3
  973.  
  974. // IRC options. These are used in the chat system.
  975. // Server address and port to connect to.
  976. IRCServerAddr = "irc.gamesurge.net"
  977. IRCPort = 6667
  978.  
  979.  
  980. // Default channel to connect to.
  981. IRCDefaultChannel = "#bz2"
  982.  
  983.  
  984. // If this is true, BZ2 will run a small server on port 113 (identd)
  985. // when irc is started up. This may make joining irc a little faster.
  986. // If you're running a firewall app, you may need to add this port to
  987. // either the 'reject' list (not just silently drop, it must actively
  988. // return a "connection reset" error), or forward this port to the
  989. // machine you run BZ2 on.
  990. RunIdentd = true
  991.  
  992.  
  993. // If this line isn't commented out, it's used as an alternate
  994. // nickname to be used by IRC if your first one is flagged as in use.
  995. // CHANGE THIS BEFORE UNCOMMENTING!
  996.  
  997. // IRCAlternateNick = "SomeNickname"
  998.  
  999. // Setting to use strict usernames (all lowercase, can't start with
  1000. // punctuation) Not all servers require this, but it's probably a
  1001. // good idea to have on by default.
  1002. UseStrictUsername = true
  1003.  
  1004.  
  1005. // userid to tell irc. Please fill this in with correct info. This is
  1006. // not your irc nickname (which is inherited from your BZ2 login name),
  1007. // but what is reported to the irc server.
  1008. IRCUserID = "player"
  1009.  
  1010.  
  1011. // Full, real name to tell irc server. Please fill this in with correct info
  1012. IRCFullName = "Battlezone 2 Player"
  1013.  
  1014.  
  1015. // Flag as to whether the IRC MOTD (Message Of The Day) is shown on
  1016. // startup. This is mostly the same info, so some people may choose
  1017. // to avoid this spammage.
  1018. IRCShowMOTD = true
  1019.  
  1020.  
  1021. // Setting to change the default usage of the NAGLE algorithm. Turning
  1022. // this to true will try and push packets thru with less latency (lag)
  1023. // at the expense of possibly flooding slow connections. 1.2 defaulted
  1024. // this to false.
  1025. DisableNAGLE = true
  1026.  
  1027.  
  1028. // Setting to send KeepAlive packets down the socket
  1029. // connections. BZ2's constant traffic should be sufficient, but just
  1030. // in case, here's another kick. 1.2 defaulted this to false except
  1031. // for when a server was changed.
  1032. UseKeepAlive = true
  1033.  
  1034.  
  1035. // Settings for logging chat to disk. ChatLog is for ingame chat;
  1036. // IRCLog is for the pregame chat. If these settings are true, then a
  1037. // timestamped file will be created in the 'Logs' subfolder from
  1038. // bzone.exe. These files are created on demand, so if you start BZ2
  1039. // and play only SP or IA, no logfile will be created.
  1040. //
  1041. // As shipped, these are off. If you turn these on, please monitor
  1042. // disk space over time if you install BZ2 1.3 to a HD with less than
  1043. // a gig free.
  1044. KeepChatLogFile = false
  1045. KeepIRCLogFile = false
  1046.  
  1047.  
  1048. // If true, chat/irc logs files will have a timestamp added to the
  1049. // start of each line printed
  1050. TimestampChat = false
  1051.  
  1052.  
  1053. // Host name, port a created session will register itself with for
  1054. // matchmaking, and potential clients will use for searching. DON'T
  1055. // CHANGE THIS UNLESS YOU'RE DARN SURE YOU KNOW WHAT YOU'RE DOING!
  1056. HostMasterServerName = "master0.gamespy.com"
  1057. HostMasterServerPort = 27900
  1058. ClientMasterServerName = "master0.gamespy.com"
  1059. ClientMasterServerPort = 28900
  1060.  
  1061.  
  1062.  
  1063. // -----------------------------------------------------------------
  1064.  
  1065. // Possible characters for the ToggleConsoleKey above. Note: the
  1066. // "DIK_" part of each line is the DirectInput name for each possible
  1067. // key, which should help you find a suitable key. DIK_GRAVE is the
  1068. // default, which means that 0x29 is copied to the "ToggleConsoleKey"
  1069. // line well above. These constants come from Microsoft's
  1070. // DirectInput.h
  1071.  
  1072. // DIK_ESCAPE 0x01
  1073. // DIK_1 0x02
  1074. // DIK_2 0x03
  1075. // DIK_3 0x04
  1076. // DIK_4 0x05
  1077. // DIK_5 0x06
  1078. // DIK_6 0x07
  1079. // DIK_7 0x08
  1080. // DIK_8 0x09
  1081. // DIK_9 0x0A
  1082. // DIK_0 0x0B
  1083. // DIK_MINUS 0x0C /* - on main keyboard */
  1084. // DIK_EQUALS 0x0D
  1085. // DIK_BACK 0x0E /* backspace */
  1086. // DIK_TAB 0x0F
  1087. // DIK_Q 0x10
  1088. // DIK_W 0x11
  1089. // DIK_E 0x12
  1090. // DIK_R 0x13
  1091. // DIK_T 0x14
  1092. // DIK_Y 0x15
  1093. // DIK_U 0x16
  1094. // DIK_I 0x17
  1095. // DIK_O 0x18
  1096. // DIK_P 0x19
  1097. // DIK_LBRACKET 0x1A
  1098. // DIK_RBRACKET 0x1B
  1099. // DIK_RETURN 0x1C /* Enter on main keyboard */
  1100. // DIK_LCONTROL 0x1D
  1101. // DIK_A 0x1E
  1102. // DIK_S 0x1F
  1103. // DIK_D 0x20
  1104. // DIK_F 0x21
  1105. // DIK_G 0x22
  1106. // DIK_H 0x23
  1107. // DIK_J 0x24
  1108. // DIK_K 0x25
  1109. // DIK_L 0x26
  1110. // DIK_SEMICOLON 0x27
  1111. // DIK_APOSTROPHE 0x28
  1112. // DIK_GRAVE 0x29 /* accent grave */
  1113. // DIK_LSHIFT 0x2A
  1114. // DIK_BACKSLASH 0x2B
  1115. // DIK_Z 0x2C
  1116. // DIK_X 0x2D
  1117. // DIK_C 0x2E
  1118. // DIK_V 0x2F
  1119. // DIK_B 0x30
  1120. // DIK_N 0x31
  1121. // DIK_M 0x32
  1122. // DIK_COMMA 0x33
  1123. // DIK_PERIOD 0x34 /* . on main keyboard */
  1124. // DIK_SLASH 0x35 /* / on main keyboard */
  1125. // DIK_RSHIFT 0x36
  1126. // DIK_MULTIPLY 0x37 /* * on numeric keypad */
  1127. // DIK_LMENU 0x38 /* left Alt */
  1128. // DIK_SPACE 0x39
  1129. // DIK_CAPITAL 0x3A
  1130. // DIK_F1 0x3B
  1131. // DIK_F2 0x3C
  1132. // DIK_F3 0x3D
  1133. // DIK_F4 0x3E
  1134. // DIK_F5 0x3F
  1135. // DIK_F6 0x40
  1136. // DIK_F7 0x41
  1137. // DIK_F8 0x42
  1138. // DIK_F9 0x43
  1139. // DIK_F10 0x44
  1140. // DIK_NUMLOCK 0x45
  1141. // DIK_SCROLL 0x46 /* Scroll Lock */
  1142. // DIK_NUMPAD7 0x47
  1143. // DIK_NUMPAD8 0x48
  1144. // DIK_NUMPAD9 0x49
  1145. // DIK_SUBTRACT 0x4A /* - on numeric keypad */
  1146. // DIK_NUMPAD4 0x4B
  1147. // DIK_NUMPAD5 0x4C
  1148. // DIK_NUMPAD6 0x4D
  1149. // DIK_ADD 0x4E /* + on numeric keypad */
  1150. // DIK_NUMPAD1 0x4F
  1151. // DIK_NUMPAD2 0x50
  1152. // DIK_NUMPAD3 0x51
  1153. // DIK_NUMPAD0 0x52
  1154. // DIK_DECIMAL 0x53 /* . on numeric keypad */
  1155. // DIK_OEM_102 0x56 /* <> or \| on RT 102-key keyboard (Non-U.S.) */
  1156. // DIK_F11 0x57
  1157. // DIK_F12 0x58
  1158. // DIK_F13 0x64 /* (NEC PC98) */
  1159. // DIK_F14 0x65 /* (NEC PC98) */
  1160. // DIK_F15 0x66 /* (NEC PC98) */
  1161. // DIK_KANA 0x70 /* (Japanese keyboard) */
  1162. // DIK_ABNT_C1 0x73 /* /? on Brazilian keyboard */
  1163. // DIK_CONVERT 0x79 /* (Japanese keyboard) */
  1164. // DIK_NOCONVERT 0x7B /* (Japanese keyboard) */
  1165. // DIK_YEN 0x7D /* (Japanese keyboard) */
  1166. // DIK_ABNT_C2 0x7E /* Numpad . on Brazilian keyboard */
  1167. // DIK_NUMPADEQUALS 0x8D /* = on numeric keypad (NEC PC98) */
  1168. // DIK_PREVTRACK 0x90 /* Previous Track (DIK_CIRCUMFLEX on Japanese keyboard) */
  1169. // DIK_AT 0x91 /* (NEC PC98) */
  1170. // DIK_COLON 0x92 /* (NEC PC98) */
  1171. // DIK_UNDERLINE 0x93 /* (NEC PC98) */
  1172. // DIK_KANJI 0x94 /* (Japanese keyboard) */
  1173. // DIK_STOP 0x95 /* (NEC PC98) */
  1174. // DIK_AX 0x96 /* (Japan AX) */
  1175. // DIK_UNLABELED 0x97 /* (J3100) */
  1176. // DIK_NEXTTRACK 0x99 /* Next Track */
  1177. // DIK_NUMPADENTER 0x9C /* Enter on numeric keypad */
  1178. // DIK_RCONTROL 0x9D
  1179. // DIK_MUTE 0xA0 /* Mute */
  1180. // DIK_CALCULATOR 0xA1 /* Calculator */
  1181. // DIK_PLAYPAUSE 0xA2 /* Play / Pause */
  1182. // DIK_MEDIASTOP 0xA4 /* Media Stop */
  1183. // DIK_VOLUMEDOWN 0xAE /* Volume - */
  1184. // DIK_VOLUMEUP 0xB0 /* Volume + */
  1185. // DIK_WEBHOME 0xB2 /* Web home */
  1186. // DIK_NUMPADCOMMA 0xB3 /* , on numeric keypad (NEC PC98) */
  1187. // DIK_DIVIDE 0xB5 /* / on numeric keypad */
  1188. // DIK_SYSRQ 0xB7
  1189. // DIK_RMENU 0xB8 /* right Alt */
  1190. // DIK_PAUSE 0xC5 /* Pause */
  1191. // DIK_HOME 0xC7 /* Home on arrow keypad */
  1192. // DIK_UP 0xC8 /* UpArrow on arrow keypad */
  1193. // DIK_PRIOR 0xC9 /* PgUp on arrow keypad */
  1194. // DIK_LEFT 0xCB /* LeftArrow on arrow keypad */
  1195. // DIK_RIGHT 0xCD /* RightArrow on arrow keypad */
  1196. // DIK_END 0xCF /* End on arrow keypad */
  1197. // DIK_DOWN 0xD0 /* DownArrow on arrow keypad */
  1198. // DIK_NEXT 0xD1 /* PgDn on arrow keypad */
  1199. // DIK_INSERT 0xD2 /* Insert on arrow keypad */
  1200. // DIK_DELETE 0xD3 /* Delete on arrow keypad */
  1201. // DIK_LWIN 0xDB /* Left Windows key */
  1202. // DIK_RWIN 0xDC /* Right Windows key */
  1203. // DIK_APPS 0xDD /* AppMenu key */
  1204. // DIK_POWER 0xDE /* System Power */
  1205. // DIK_SLEEP 0xDF /* System Sleep */
  1206. // DIK_WAKE 0xE3 /* System Wake */
  1207. // DIK_WEBSEARCH 0xE5 /* Web Search */
  1208. // DIK_WEBFAVORITES 0xE6 /* Web Favorites */
  1209. // DIK_WEBREFRESH 0xE7 /* Web Refresh */
  1210. // DIK_WEBSTOP 0xE8 /* Web Stop */
  1211. // DIK_WEBFORWARD 0xE9 /* Web Forward */
  1212. // DIK_WEBBACK 0xEA /* Web Back */
  1213. // DIK_MYCOMPUTER 0xEB /* My Computer */
  1214. // DIK_MAIL 0xEC /* Mail */
  1215. // DIK_MEDIASELECT 0xED /* Media Select */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement