View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004696 | The Dark Mod | Sound | public | 12.12.2017 02:45 | 11.11.2023 09:35 |
Reporter | AluminumHaste | Assigned To | stgatilov | ||
Priority | normal | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | X64 | OS | Windows | OS Version | 7 |
Product Version | SVN | ||||
Target Version | TDM 2.06 | Fixed in Version | TDM 2.06 | ||
Summary | 0004696: At high FPS player footsteps don't always play | ||||
Description | I've been playing with FPS uncapped and over 200 fps I noticed that the player footsteps don't play while walking or running except in certain situations. Turning on Vsync fixes the issue. | ||||
Steps To Reproduce | Uncap FPS on a small map so you can get really high FPS, and run and/or walk. You should notice that the footstep sounds either don't play, or only sometimes play. | ||||
Additional Information | I've uploaded a test map, you'll have to DMAP it. | ||||
Tags | No tags attached. | ||||
Attached Files | wtfglass.map (28,930 bytes)
Version 2 // entity 0 { "classname" "worldspawn" "editor_drLastCameraPos" "-465.88 -128.052 466.139" "editor_drLastCameraAngle" "-5.7 85.2 0" // primitive 0 { brushDef3 { ( 0 0 1 -944 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 1 0 -2144 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 1 0 0 -2272 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 -1 0 -1424 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( -1 0 0 -2248 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 0 -1 936 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 } } // primitive 1 { brushDef3 { ( 0 0 1 -936 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 1 0 -2152 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 1 0 0 -2272 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( -1 0 0 -2248 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 -1 0 2144 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 } } // primitive 2 { brushDef3 { ( 0 0 1 -936 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 1 0 -2144 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 1 0 0 -2280 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 -1 0 -1424 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( -1 0 0 2272 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 } } // primitive 3 { brushDef3 { ( 0 1 0 -2144 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 1 0 0 -2272 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 0 -1 -72 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 -1 0 -1424 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( -1 0 0 -2248 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 0 1 64 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 } } // primitive 4 { brushDef3 { ( 0 0 1 -936 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 1 0 0 -2272 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 -1 0 -1432 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( -1 0 0 -2248 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 1 0 1424 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 } } // primitive 5 { brushDef3 { ( 0 0 1 -936 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 1 0 -2144 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 0 -1 0 -1424 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( -1 0 0 -2256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 ( 1 0 0 2248 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0 } } // primitive 6 { brushDef3 { ( 0 0 1 -128 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 1 0 -256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 1 0 0 0 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 -1 0 240 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( -1 0 0 -128 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 0 -1 120 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 } } // primitive 7 { brushDef3 { ( 0 1 0 -256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 1 0 0 0 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 -1 0 240 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 0 1 -120 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( -1 0 0 -8 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 } } // primitive 8 { brushDef3 { ( 0 1 0 -256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 -1 0 240 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( -1 0 0 -128 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 1 0 0 8 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 0 1 56 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 } } // primitive 9 { brushDef3 { ( 0 1 0 -256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 -1 0 240 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( -1 0 0 -128 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 0 1 -120 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 0 0 -1 -56 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 ( 1 0 0 120 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/darkmod/wood/boards/dark_rough" 0 0 0 } } // primitive 10 { patchDef2 { "textures/darkmod/glass/stained_glass_lion_2sided" ( 3 3 0 0 0 ) ( ( ( -120 248 -56 0 0 ) ( -120 248 32 -1.224646799147353e-16 -1 ) ( -120 248 120 -2.449293598294706e-16 -2 ) ) ( ( -64 248 -56 -0.5 6.123233995736766e-17 ) ( -64 248 32 -0.5000000000000002 -1 ) ( -64 248 120 -0.5000000000000002 -2 ) ) ( ( -8 248 -56 -1 1.224646799147353e-16 ) ( -8 248 32 -1 -0.9999999999999998 ) ( -8 248 120 -1 -2 ) ) ) } } // primitive 11 { brushDef3 { ( 0 0 1 -186 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 69.8125 ) ) "textures/common/caulk" 0 0 0 ( 0 1 0 1728 ) ( ( 0.0625 0 122.1875 ) ( 0 0.0625 7.40625 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2736 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 7.40625 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -2048 ) ( ( 0.0625 0 69.8125 ) ( 0 0.0625 7.40625 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2608 ) ( ( 0.0625 0 6.09375 ) ( 0 0.0625 7.40625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 178 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 57.1875 ) ) "textures/common/caulk" 0 0 0 } } // primitive 12 { brushDef3 { ( 0 0 1 -178 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 69.8125 ) ) "textures/common/caulk" 0 0 0 ( 0 1 0 1720 ) ( ( 0.0625 0 122.1875 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2736 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 50 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 122.1875 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2608 ) ( ( 0.0625 0 6.09375 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -1728 ) ( ( 0.0625 0 6.8125 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 } } // primitive 13 { brushDef3 { ( 0 1 0 1728 ) ( ( 0.0625 0 122.1875 ) ( 0 0.0625 70.40625 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2736 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 70.40625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 42 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 122.1875 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -2048 ) ( ( 0.0625 0 69.3125 ) ( 0 0.0625 70.40625 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2608 ) ( ( 0.0625 0 6.09375 ) ( 0 0.0625 70.40625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 1 -50 ) ( ( 0.0625 0 57.90625 ) ( 0 0.0625 6.8125 ) ) "textures/common/caulk" 0 0 0 } } // primitive 14 { brushDef3 { ( 0 0 1 -178 ) ( ( 0.0625 0 7.03125 ) ( 0 0.0625 70 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2736 ) ( ( 0.0625 0 7.03125 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 50 ) ( ( 0.0625 0 7.03125 ) ( 0 0.0625 122 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -2056 ) ( ( 0.0625 0 70 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2608 ) ( ( 0.0625 0 56.96875 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 1 0 2048 ) ( ( 0.0625 0 57 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 } } // primitive 15 { brushDef3 { ( 0 0 1 -178 ) ( ( 0.0625 0 58.5 ) ( 0 0.0625 6.5 ) ) "textures/common/caulk" 0 0 0 ( 0 1 0 1728 ) ( ( 0.0625 0 121.5 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 50 ) ( ( 0.0625 0 58.5 ) ( 0 0.0625 121.5 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -2048 ) ( ( 0.0625 0 6.5 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2600 ) ( ( 0.0625 0 5.5 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2608 ) ( ( 0.0625 0 58.5 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 } } // primitive 16 { brushDef3 { ( 0 0 1 -178 ) ( ( 0.0625 0 58.5 ) ( 0 0.0625 62 ) ) "textures/common/caulk" 0 0 0 ( 0 1 0 1728 ) ( ( 0.0625 0 2 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 50 ) ( ( 0.0625 0 58.5 ) ( 0 0.0625 2 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -2048 ) ( ( 0.0625 0 62 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2736 ) ( ( 0.0625 0 5.5 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2744 ) ( ( 0.0625 0 58.5 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 } } // primitive 17 { brushDef3 { ( 0 0 1 -178 ) ( ( 0.0625 0 63.40625 ) ( 0 0.0625 69.8125 ) ) "textures/common/caulk" 0 0 0 ( 0 1 0 1808 ) ( ( 0.0625 0 122.1875 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2736 ) ( ( 0.0625 0 63.40625 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 50 ) ( ( 0.0625 0 63.40625 ) ( 0 0.0625 122.1875 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2608 ) ( ( 0.0625 0 0.59375 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -1816 ) ( ( 0.0625 0 6.8125 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 } } // primitive 18 { brushDef3 { ( 0 0 1 -178 ) ( ( 0.0625 0 65.90625 ) ( 0 0.0625 69.8125 ) ) "textures/common/caulk" 0 0 0 ( 0 1 0 1848 ) ( ( 0.0625 0 122.1875 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 1 0 0 -2736 ) ( ( 0.0625 0 65.90625 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 0 -1 50 ) ( ( 0.0625 0 65.90625 ) ( 0 0.0625 122.1875 ) ) "textures/common/caulk" 0 0 0 ( -1 0 0 2608 ) ( ( 0.0625 0 126.09375 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 ( 0 -1 0 -1856 ) ( ( 0.0625 0 6.8125 ) ( 0 0.0625 70.90625 ) ) "textures/common/caulk" 0 0 0 } } } // entity 1 { "classname" "info_player_start" "name" "info_player_start_1" "angle" "90" "origin" "-72 64 -64" } // entity 2 { "classname" "atdm:playertools_compass" "name" "CompassEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2617 -1766.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 3 { "classname" "atdm:playertools_lantern" "name" "LanternEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2629 -1766.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 4 { "classname" "atdm:playertools_spyglass" "name" "SpyglassEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2639 -1766.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 5 { "classname" "atdm:playertools_health_potion" "name" "HealthPotionsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2655 -1766.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 6 { "classname" "atdm:weapon_shortsword" "name" "SwordEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2727 -1864.5 109.5" "rotation" "0 1 0 -1 0 0 0 0 1" } // entity 7 { "classname" "atdm:weapon_blackjack" "name" "BlackjackEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2678.63 -1865.25 109.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 8 { "classname" "atdm:playertools_breath_potion" "name" "BreathPotionsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2667 -1766.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 9 { "classname" "atdm:playertools_flashbomb" "name" "FlashbombsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2619 -1864.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 10 { "classname" "atdm:ammo_broadhead" "name" "BroadheadsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2616 -1944 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 11 { "classname" "atdm:ammo_broadhead" "name" "BroadheadsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2616 -1992 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 12 { "classname" "atdm:ammo_broadhead" "name" "BroadheadsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2616 -2040 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 13 { "classname" "atdm:ammo_firearrow" "name" "FireArrowsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2632 -1944 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 14 { "classname" "atdm:ammo_firearrow" "name" "FireArrowsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2632 -1992 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 15 { "classname" "atdm:ammo_firearrow" "name" "FireArrowsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2632 -2040 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 16 { "classname" "atdm:ammo_gasarrow" "name" "GasArrowsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2648 -1944 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 17 { "classname" "atdm:ammo_gasarrow" "name" "GasArrowsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2648 -1992 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 18 { "classname" "atdm:ammo_gasarrow" "name" "GasArrowsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2648 -2040 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 19 { "classname" "atdm:ammo_mossarrow" "name" "MossArrowsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2664 -1944 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 20 { "classname" "atdm:ammo_mossarrow" "name" "MossArrowsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2664 -2040 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 21 { "classname" "atdm:ammo_mossarrow" "name" "MossArrowsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2664 -1992 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 22 { "classname" "atdm:ammo_noisemaker" "name" "NoiseArrowsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2680 -1944 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 23 { "classname" "atdm:ammo_noisemaker" "name" "NoiseArrowsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2680 -1992 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 24 { "classname" "atdm:ammo_noisemaker" "name" "NoiseArrowsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2680 -2040 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 25 { "classname" "atdm:ammo_ropearrow" "name" "RopeArrowsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2696 -1944 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 26 { "classname" "atdm:ammo_ropearrow" "name" "RopeArrowsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2696 -1992 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 27 { "classname" "atdm:ammo_ropearrow" "name" "RopeArrowsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2696 -2040 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 28 { "classname" "atdm:ammo_waterarrow" "name" "WaterArrowsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2728 -1944 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 29 { "classname" "atdm:ammo_waterarrow" "name" "WaterArrowsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2728 -1992 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 30 { "classname" "atdm:ammo_waterarrow" "name" "WaterArrowsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2728 -2040 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 31 { "classname" "atdm:weapon_blackjack" "name" "BlackjackHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2678.63 -1881.25 109.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 32 { "classname" "atdm:weapon_blackjack" "name" "BlackjackExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2678.63 -1897.25 109.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 33 { "classname" "atdm:weapon_shortsword" "name" "SwordHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2727 -1880.5 109.5" "rotation" "0 1 0 -1 0 0 0 0 1" } // entity 34 { "classname" "atdm:weapon_shortsword" "name" "SwordExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2727 -1896.5 109.5" "rotation" "0 1 0 -1 0 0 0 0 1" } // entity 35 { "classname" "atdm:playertools_compass" "name" "CompassHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2617 -1782.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 36 { "classname" "atdm:playertools_compass" "name" "CompassExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_map_start" "1" "origin" "2617 -1798.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 37 { "classname" "atdm:playertools_lantern" "name" "LanternHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2629 -1782.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 38 { "classname" "atdm:playertools_lantern" "name" "LanternExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_map_start" "1" "origin" "2629 -1798.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 39 { "classname" "atdm:playertools_spyglass" "name" "SpyglassHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2639 -1782.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 40 { "classname" "atdm:playertools_spyglass" "name" "SpyglassExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_map_start" "1" "origin" "2639 -1798.5 158.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 41 { "classname" "atdm:playertools_flashbomb" "name" "FlashbombsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2619 -1880.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 42 { "classname" "atdm:playertools_flashbomb" "name" "FlashbombsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_count" "10" "inv_map_start" "1" "origin" "2619 -1896.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 43 { "classname" "atdm:playertools_health_potion" "name" "HealthPotionsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2655 -1782.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 44 { "classname" "atdm:playertools_health_potion" "name" "HealthPotionsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_count" "10" "inv_map_start" "1" "origin" "2655 -1798.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 45 { "classname" "atdm:playertools_breath_potion" "name" "BreathPotionsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2667 -1782.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 46 { "classname" "atdm:playertools_breath_potion" "name" "BreathPotionsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_count" "10" "inv_map_start" "1" "origin" "2667 -1798.5 133.5" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 47 { "classname" "atdm:playertools_lockpick_snake" "name" "LockpickSnakeEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2710 -1766 130" "rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1" } // entity 48 { "classname" "atdm:playertools_lockpick_triangle" "name" "LockpickTriangleEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2726 -1766 130" "rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1" } // entity 49 { "classname" "atdm:playertools_mine" "name" "MinesEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2650 -1864 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 50 { "classname" "atdm:playertools_holywater" "name" "HolyWatersEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2666 -1864 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 51 { "classname" "atdm:playertools_flashmine" "name" "FlashminesEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2634 -1864 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 52 { "classname" "atdm:playertools_lockpick_snake" "name" "LockpickSnakeHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2710 -1782 130" "rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1" } // entity 53 { "classname" "atdm:playertools_lockpick_snake" "name" "LockpickSnakeExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_map_start" "1" "origin" "2710 -1798 130" "rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1" } // entity 54 { "classname" "atdm:playertools_lockpick_triangle" "name" "LockpickTriangleHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_map_start" "1" "origin" "2726 -1782 130" "rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1" } // entity 55 { "classname" "atdm:playertools_lockpick_triangle" "name" "LockpickTriangleExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_map_start" "1" "origin" "2726 -1798 130" "rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1" } // entity 56 { "classname" "atdm:playertools_flashmine" "name" "FlashminesHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2634 -1880 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 57 { "classname" "atdm:playertools_flashmine" "name" "FlashminesExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_count" "10" "inv_map_start" "1" "origin" "2634 -1896 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 58 { "classname" "atdm:playertools_mine" "name" "MinesHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2650 -1880 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 59 { "classname" "atdm:playertools_mine" "name" "MinesExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_count" "10" "inv_map_start" "1" "origin" "2650 -1896 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 60 { "classname" "atdm:playertools_holywater" "name" "HolyWatersHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_count" "10" "inv_map_start" "1" "origin" "2666 -1880 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 61 { "classname" "atdm:playertools_holywater" "name" "HolyWatersExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_count" "10" "inv_map_start" "1" "origin" "2666 -1896 130" "rotation" "1 0 0 0 1 0 0 0 1" } // entity 62 { "classname" "atdm:ammo_vinearrow" "name" "VineArrowsEasy" "diff_0_nospawn" "0" "diff_1_nospawn" "1" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2712 -1943 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 63 { "classname" "atdm:ammo_vinearrow" "name" "VineArrowsHard" "diff_0_nospawn" "1" "diff_1_nospawn" "0" "diff_2_nospawn" "1" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2712 -1991 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 64 { "classname" "atdm:ammo_vinearrow" "name" "VineArrowsExpert" "diff_0_nospawn" "1" "diff_1_nospawn" "1" "diff_2_nospawn" "0" "inv_ammo_amount" "30" "inv_map_start" "1" "inv_no_pickup_message" "1" "origin" "2712 -2039 90" "rotation" "1 0 0 0 0 1 0 -1 0" } // entity 65 { "classname" "light" "name" "light_1" "origin" "-48 672 184" "light_center" "0 0 0" "light_radius" "3648 3000 1144" "_color" "0.220 0.220 0.220" "parallel" "0" "nospecular" "0" "nodiffuse" "0" "noshadows" "0" "texture" "lights/ambientlightnfo" } | ||||
related to | 0004865 | resolved | cabalistic | Improve the way how FPS cap works (uncapped FPS) |
related to | 0004514 | resolved | stgatilov | Game runs sluggish randomly |
related to | 0006333 | resolved | stgatilov | Jumping player sometimes pauses at top on very high FPS |
child of | 0004493 | resolved | duzenko | Some physics events have changed in 2.05 due to faster fps |
1. I still hear my footsteps up to 400 FPS, but at 500 FPS I don't hear them at all. 2. I always hear swings of my blackjack, regardless of FPS. 3. If I jump during running at 500 FPS, then I do not fall down until I release "move forward" button or press movement button (I simply levitate forward at constaint height). If I jump from place, then I get stuck in the air, very slowly going down. I'm pretty sure that there are tons of issues with framerate this high. The most reliable solution is to cap FPS. For instance, a cap of 200 FPS should be: 1) high enough to not want anything higher 2) small enough to avoid physics issues like mentioned above 3) small enough to avoid GPU whining. |
|
My monitor runs at 144hz, new high Hz monitors are 240hz, so 240 would be the max I would suggest. https://www.asus.com/us/Monitors/ROG-SWIFT-PG258Q/ However, users should have the option of syncing their max FPS to monitor refresh, but not V-synced. |
|
Yeah, I was gonna say the 250 or 246 might be better so there is engineering overhead for 244hz monitors. I took a stab at making USERCMD_HZ configurable awhile back but it's too high up in the code hierarchy. The console and all basic UI operations start after this has been initialized. Not that this would be "required" to cap FPS but it would unify the way the current cap works. |
|
Committed in svn rev 7354. I have added a strict condition that 4000 microseconds must pass between frames. This sets FPS cap 250, although I see only 210-220 locally. Please review if this is a plausible way of capping FPS. P.S. To be honest, time handling code is a complete mess now. |
|
Okay will give it a try. | |
Seems to run fine now, but I also can't get it over 235 fps. | |
Yes, you can't. Do you need to? =) |
|
I'm playing The Ravine on the latest code, and I have no footsteps while crouch walking anymore. Every now and then I'll get a footstep sound. | |
This is still happening with uncapped FPS option. Once my FPS reaches close to the max 235 fps, my foot step sounds while crouch walking, disappear. Once FPS dips a bit I start getting some of the foot fall sounds, and once I get to around 150 fps, they're all there. This happens with smp on or off. With com_fixedtic set to 1(ON). With it set to off, fps is capped at 60 fps, so I can't tell if it works because FPS is low, or because fixedtic is off. |
|
To allow 2.06 to get out of the door faster, can we lower the FPS cap to 166 FPS or similar speed, and can look at this later for 2.07? | |
Yes, we can. But I have a feeling that this will not solve the problem for everyone: the good cap depends on the machine. For me sound work well with 400 fps, but for you 250 fps is too high. Someone will still miss sound with 150 fps, so what will we do then? Is there any sense to have "unlocked FPS" with 100 FPS cap? with 120 FPS cap? with 166 FPS cap? Which hard limit on FPS is good enough for the "unlocked FPS" mode to be still considered the "unlocked FPS" mode? |
|
Well, there's been complaints for years on Quake Live at 250fps (game cap), some sounds don't play. The old cap was 400 fps. So it's not just this engine. For me personally, I just would like a cap over my monitors refresh rate (144hz), for a smooth as possible experience. To be clear, the only sounds I'm missing at 250fps, are when I'm crouch walking/running. Every other sound seems to play as normal. Have you checked to see if you hear crouch walking/running sounds at 250fps? |
|
From a cursory review of the current state of refresh rates available to consumers, anything over 144hz is mostly "faked" via some LCD strobing algorithm rather than actually updating the pixel states. There are scant few 240hz capable screens and there are even fewer 480hz screens (and I was unable to find any evidence that the ANY of the 480hz models were doing real pixel updates at that rate). 166hz sounds like a practical limit based on available consumer hardware options. |
|
Game FPS is not only about refresh rate, it is also about reducing game lag. Currently we have something like 2-3 frames of lag, which is probably hardly noticeable even on 150 FPS. But once again: what was the original purpose of doing the "unlocked FPS" mode? Was it only about supporting monitors with high refresh rate? UPDATE: I would like to hear from someone who originally created this "unlocked FPS" mode if he considers 150 FPS hard cap a viable solution 1) in long run 2) temporarily for 2.06. |
|
It was for the VR version, 60 FPS is too low for VR. Once the FPS cap was removed, we started noticing issues. I've been wanting higher FPS for years now, and I could live with 166fps. |
|
http://forums.thedarkmod.com/topic/18999-im-working-on-a-vr-version-early-alpha/ Original thread AFAIK EDIT: That might not be it, there's posts in that thread stating that we had already unlocked FPS. |
|
Actually Duzenko started the uncapped FPS process in 2.05 before Cabalistic broached it. I was in favor of the change because drivers are\were becoming increasingly unfriendly to capped FPS on the PC since the introduction of N-Sync \ Free-Sync tech. Doom 3, in particular, would produce some pretty nasty frame pacing if you didn't specifically tell the engine that the monitor was running at 60hz seta r_displayRefresh "60" because Windows 10 was not reporting the correct refresh rate to the display drivers. Uncapping FPS is a way to side-step some of that mess and modernize things as well as fulfill a longstanding community request. |
|
Yes, com_fixedTic was present in the original Doom 3 code, I think. Well, let's increase the hard pause to 6000 microseconds then (166.6 FPS --- in practice is would be less, smth like 140 or 135 FPS probably). If anyone complains that "unlocked FPS" is not unlocked enough, than we'll see =) |
|
Thank you, we can always revisit it later on, we just need to get 2.06 out the door without this game breaking bug. (AI don't hear your footsteps either). | |
Committed in svn rev 7373. I have honestly tried to reproduce the issue in both "The Ravine" and tavern.map, but in both cases I almost did not hear footsteps at all this time. They were clearly playing, but often at infinitesimal volume level. |
|
Works perfectly now thank you | |
Why is it a problem to make it a cvar? com_maxfps |
|
Requires a rebuild of the binaries right now. I guess it could be exposed as a CVAR, stgatilov? |
|
It is a problem because there are already smth like 3 cvars related to FPS, most of them has more than two meanings, some have quite weird meaning (why fixedTic = true means that duration of tic becomes unfixed?!). If anyone wants to create a cvar, feel free to do it. Although I feel than com_fixedTic becomes redundant after adding com_maxfps, but I guess no one wants to mess with them now. |
|
Leave it for now as is and we'll come around and look again for 2.07. Let Grayman know to include your SVN commit in the 2.06 Beta thread. | |
I suppose I was not entirely correct in what I wrote about cvar. So let me phrase it like this: It is technically trivial to add a cvar, but I'm not sure that it is necessary. The current amount of cvars has freaked me out to the point where I am not eager to add a new one =) But I definitely won't argue. Having a cvar make world more configurable/hackable. P.S. If you are sure that cvar should be added, either directly tell me to do so or simply do it yourself (it is obvious how to do it from the commits I noted here). |
|
I fixed footsteps properly in svn rev 10496. Basically, footsteps are played when headbob changed half-cycle (i.e. changing between left and right feet). But headbob implementation uses 8-bit accumulator, which suffered from radical loss of precision on high FPS. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
12.12.2017 02:45 | AluminumHaste | New Issue | |
12.12.2017 02:45 | AluminumHaste | File Added: wtfglass.map | |
20.12.2017 14:53 | stgatilov | Note Added: 0009855 | |
20.12.2017 15:45 | AluminumHaste | Note Added: 0009856 | |
20.12.2017 15:47 | AluminumHaste | Note Edited: 0009856 | |
20.12.2017 16:03 | nbohr1more | Note Added: 0009857 | |
20.12.2017 16:09 | nbohr1more | Note Edited: 0009857 | |
20.12.2017 16:10 | nbohr1more | Note Edited: 0009857 | |
20.12.2017 17:37 | stgatilov | Assigned To | => stgatilov |
20.12.2017 17:37 | stgatilov | Status | new => assigned |
20.12.2017 17:40 | stgatilov | Note Added: 0009858 | |
20.12.2017 17:40 | stgatilov | Note Edited: 0009858 | |
20.12.2017 17:41 | stgatilov | Note Edited: 0009858 | |
20.12.2017 19:19 | AluminumHaste | Note Added: 0009860 | |
21.12.2017 04:44 | AluminumHaste | Note Added: 0009861 | |
21.12.2017 04:55 | stgatilov | Note Added: 0009862 | |
23.12.2017 10:02 | stgatilov | Status | assigned => resolved |
23.12.2017 10:02 | stgatilov | Fixed in Version | => TDM 2.06 |
23.12.2017 10:02 | stgatilov | Resolution | open => fixed |
24.01.2018 01:18 | AluminumHaste | Note Added: 0010035 | |
24.01.2018 02:06 | Springheel | Status | resolved => assigned |
14.03.2018 00:55 | AluminumHaste | Note Added: 0010053 | |
19.03.2018 12:23 | AluminumHaste | Note Added: 0010073 | |
19.03.2018 12:46 | stgatilov | Note Added: 0010075 | |
19.03.2018 12:54 | AluminumHaste | Note Added: 0010077 | |
19.03.2018 13:54 | nbohr1more | Note Added: 0010084 | |
19.03.2018 13:54 | nbohr1more | Note Edited: 0010084 | |
19.03.2018 14:03 | stgatilov | Note Added: 0010085 | |
19.03.2018 14:05 | stgatilov | Note Edited: 0010085 | |
19.03.2018 14:08 | AluminumHaste | Note Added: 0010086 | |
19.03.2018 14:21 | AluminumHaste | Note Added: 0010087 | |
19.03.2018 14:28 | AluminumHaste | Note Edited: 0010087 | |
19.03.2018 14:43 | nbohr1more | Note Added: 0010088 | |
19.03.2018 14:43 | stgatilov | Note Added: 0010089 | |
19.03.2018 15:01 | nbohr1more | Note Edited: 0010088 | |
19.03.2018 15:01 | AluminumHaste | Note Added: 0010090 | |
19.03.2018 15:02 | nbohr1more | Note Edited: 0010088 | |
19.03.2018 17:20 | stgatilov | Note Added: 0010103 | |
20.03.2018 00:42 | AluminumHaste | Note Added: 0010108 | |
20.03.2018 08:27 | duzenko | Note Added: 0010112 | |
20.03.2018 11:05 | duzenko | Note Edited: 0010112 | |
20.03.2018 11:53 | AluminumHaste | Note Added: 0010115 | |
20.03.2018 13:25 | stgatilov | Note Added: 0010117 | |
20.03.2018 13:30 | AluminumHaste | Note Added: 0010118 | |
20.03.2018 14:10 | stgatilov | Note Added: 0010120 | |
20.03.2018 14:11 | stgatilov | Status | assigned => resolved |
20.03.2018 14:12 | stgatilov | Note Edited: 0010120 | |
15.07.2018 03:57 | stgatilov | Relationship added | related to 0004865 |
01.02.2019 05:46 | nbohr1more | Relationship added | child of 0004409 |
01.02.2019 05:46 | nbohr1more | Relationship added | child of 0004493 |
01.02.2019 05:49 | nbohr1more | Relationship deleted | child of 0004409 |
04.03.2019 16:33 | stgatilov | Relationship added | related to 0004514 |
11.11.2023 08:02 | stgatilov | Note Added: 0016169 | |
11.11.2023 09:35 | stgatilov | Relationship added | related to 0006333 |