Add global offset
Adds new settings for controlling the note offset while playing. It can be either an actual offset (it is called "Audio Latency" in the settings) or just the visual offset ("Video Latency").
With higher audio latency it means you have to press the button sooner than what you hear, similarly with higher video latency it is sooner than what you see. By offsetting these events the game would play better, however, the sound effect of you hitting the drum would still play at the wrong time, the code cannot anticipate you to hit the drum in the future so to work around this issue a new option that disables drum sounds is also included.
These settings could be set through trial and error but it would be better to get the correct values through the automated latency calibration, where you can hit the drum as you hear sounds or see a blinking animation. I tried making one by measuring latency from user input, adding all the latency up, and dividing, but that gives unreliable results. I hope someone suggests to me what I should be doing during the calibration to get better results, as I cannot figure what to do on my own.
This commit is contained in:
@@ -126,11 +126,42 @@
|
||||
b: "タイプB",
|
||||
c: "タイプC"
|
||||
},
|
||||
latency: {
|
||||
name: "Latency",
|
||||
value: "Audio: %s, Video: %s",
|
||||
calibration: "Latency Calibration",
|
||||
audio: "Audio",
|
||||
video: "Video",
|
||||
drumSounds: "Drum Sounds"
|
||||
},
|
||||
on: "オン",
|
||||
off: "オフ",
|
||||
default: "既定値にリセット",
|
||||
ok: "OK"
|
||||
}
|
||||
this.calibration = {
|
||||
title: "Latency Calibration",
|
||||
ms: "%sms",
|
||||
back: "Back to Settings",
|
||||
retryPrevious: "Retry Previous",
|
||||
start: "Start",
|
||||
finish: "Finish",
|
||||
audioHelp: {
|
||||
title: "Audio Latency Calibration",
|
||||
content: "Listen to a sound playing in the background.\n\nHit the surface of the drum (%s or %s) as you hear it!",
|
||||
contentAlt: "Listen to a sound playing in the background.\n\nHit the surface of the drum as you hear it!"
|
||||
},
|
||||
audioComplete: "Audio Latency Calibration completed!",
|
||||
videoHelp: {
|
||||
title: "Video Latency Calibration",
|
||||
content: "This time there will be no sounds.\n\nInstead, watch for notes blinking on the circle-shaped frame, hit the drum as they appear!"
|
||||
},
|
||||
videoComplete: "Video Latency Calibration completed!",
|
||||
results: {
|
||||
title: "Latency Calibration Results",
|
||||
content: "Audio latency: %s\nVideo latency: %s\n\nYou can configure these latency values in the settings."
|
||||
}
|
||||
}
|
||||
this.browserSupport = {
|
||||
browserWarning: "サポートされていないブラウザを実行しています (%s)",
|
||||
details: "詳しく",
|
||||
@@ -270,11 +301,42 @@ function StringsEn(){
|
||||
b: "Type B",
|
||||
c: "Type C"
|
||||
},
|
||||
latency: {
|
||||
name: "Latency",
|
||||
value: "Audio: %s, Video: %s",
|
||||
calibration: "Latency Calibration",
|
||||
audio: "Audio",
|
||||
video: "Video",
|
||||
drumSounds: "Drum Sounds"
|
||||
},
|
||||
on: "On",
|
||||
off: "Off",
|
||||
default: "Reset to Defaults",
|
||||
ok: "OK"
|
||||
}
|
||||
this.calibration = {
|
||||
title: "Latency Calibration",
|
||||
ms: "%sms",
|
||||
back: "Back to Settings",
|
||||
retryPrevious: "Retry Previous",
|
||||
start: "Start",
|
||||
finish: "Finish",
|
||||
audioHelp: {
|
||||
title: "Audio Latency Calibration",
|
||||
content: "Listen to a sound playing in the background.\n\nHit the surface of the drum (%s or %s) as you hear it!",
|
||||
contentAlt: "Listen to a sound playing in the background.\n\nHit the surface of the drum as you hear it!"
|
||||
},
|
||||
audioComplete: "Audio Latency Calibration completed!",
|
||||
videoHelp: {
|
||||
title: "Video Latency Calibration",
|
||||
content: "This time there will be no sounds.\n\nInstead, watch for notes blinking on the circle-shaped frame, hit the drum as they appear!"
|
||||
},
|
||||
videoComplete: "Video Latency Calibration completed!",
|
||||
results: {
|
||||
title: "Latency Calibration Results",
|
||||
content: "Audio latency: %s\nVideo latency: %s\n\nYou can configure these latency values in the settings."
|
||||
}
|
||||
}
|
||||
this.browserSupport = {
|
||||
browserWarning: "You are running an unsupported browser (%s)",
|
||||
details: "Details...",
|
||||
@@ -414,11 +476,42 @@ function StringsCn(){
|
||||
b: "类型B",
|
||||
c: "类型C"
|
||||
},
|
||||
latency: {
|
||||
name: "Latency",
|
||||
value: "Audio: %s, Video: %s",
|
||||
calibration: "Latency Calibration",
|
||||
audio: "Audio",
|
||||
video: "Video",
|
||||
drumSounds: "Drum Sounds"
|
||||
},
|
||||
on: "开",
|
||||
off: "关",
|
||||
default: "重置为默认值",
|
||||
ok: "确定"
|
||||
}
|
||||
this.calibration = {
|
||||
title: "Latency Calibration",
|
||||
ms: "%sms",
|
||||
back: "Back to Settings",
|
||||
retryPrevious: "Retry Previous",
|
||||
start: "Start",
|
||||
finish: "Finish",
|
||||
audioHelp: {
|
||||
title: "Audio Latency Calibration",
|
||||
content: "Listen to a sound playing in the background.\n\nHit the surface of the drum (%s or %s) as you hear it!",
|
||||
contentAlt: "Listen to a sound playing in the background.\n\nHit the surface of the drum as you hear it!"
|
||||
},
|
||||
audioComplete: "Audio Latency Calibration completed!",
|
||||
videoHelp: {
|
||||
title: "Video Latency Calibration",
|
||||
content: "This time there will be no sounds.\n\nInstead, watch for notes blinking on the circle-shaped frame, hit the drum as they appear!"
|
||||
},
|
||||
videoComplete: "Video Latency Calibration completed!",
|
||||
results: {
|
||||
title: "Latency Calibration Results",
|
||||
content: "Audio latency: %s\nVideo latency: %s\n\nYou can configure these latency values in the settings."
|
||||
}
|
||||
}
|
||||
this.browserSupport = {
|
||||
browserWarning: "You are running an unsupported browser (%s)",
|
||||
details: "Details...",
|
||||
@@ -558,11 +651,42 @@ function StringsTw(){
|
||||
b: "類型B",
|
||||
c: "類型C"
|
||||
},
|
||||
latency: {
|
||||
name: "Latency",
|
||||
value: "Audio: %s, Video: %s",
|
||||
calibration: "Latency Calibration",
|
||||
audio: "Audio",
|
||||
video: "Video",
|
||||
drumSounds: "Drum Sounds"
|
||||
},
|
||||
on: "開",
|
||||
off: "關",
|
||||
default: "重置為默認值",
|
||||
ok: "確定"
|
||||
}
|
||||
this.calibration = {
|
||||
title: "Latency Calibration",
|
||||
ms: "%sms",
|
||||
back: "Back to Settings",
|
||||
retryPrevious: "Retry Previous",
|
||||
start: "Start",
|
||||
finish: "Finish",
|
||||
audioHelp: {
|
||||
title: "Audio Latency Calibration",
|
||||
content: "Listen to a sound playing in the background.\n\nHit the surface of the drum (%s or %s) as you hear it!",
|
||||
contentAlt: "Listen to a sound playing in the background.\n\nHit the surface of the drum as you hear it!"
|
||||
},
|
||||
audioComplete: "Audio Latency Calibration completed!",
|
||||
videoHelp: {
|
||||
title: "Video Latency Calibration",
|
||||
content: "This time there will be no sounds.\n\nInstead, watch for notes blinking on the circle-shaped frame, hit the drum as they appear!"
|
||||
},
|
||||
videoComplete: "Video Latency Calibration completed!",
|
||||
results: {
|
||||
title: "Latency Calibration Results",
|
||||
content: "Audio latency: %s\nVideo latency: %s\n\nYou can configure these latency values in the settings."
|
||||
}
|
||||
}
|
||||
this.browserSupport = {
|
||||
browserWarning: "You are running an unsupported browser (%s)",
|
||||
details: "Details...",
|
||||
@@ -702,11 +826,42 @@ function StringsKo(){
|
||||
b: "타입 B",
|
||||
c: "타입 C"
|
||||
},
|
||||
latency: {
|
||||
name: "Latency",
|
||||
value: "Audio: %s, Video: %s",
|
||||
calibration: "Latency Calibration",
|
||||
audio: "Audio",
|
||||
video: "Video",
|
||||
drumSounds: "Drum Sounds"
|
||||
},
|
||||
on: "온",
|
||||
off: "오프",
|
||||
default: "기본값으로 재설정",
|
||||
ok: "확인"
|
||||
}
|
||||
this.calibration = {
|
||||
title: "Latency Calibration",
|
||||
ms: "%sms",
|
||||
back: "Back to Settings",
|
||||
retryPrevious: "Retry Previous",
|
||||
start: "Start",
|
||||
finish: "Finish",
|
||||
audioHelp: {
|
||||
title: "Audio Latency Calibration",
|
||||
content: "Listen to a sound playing in the background.\n\nHit the surface of the drum (%s or %s) as you hear it!",
|
||||
contentAlt: "Listen to a sound playing in the background.\n\nHit the surface of the drum as you hear it!"
|
||||
},
|
||||
audioComplete: "Audio Latency Calibration completed!",
|
||||
videoHelp: {
|
||||
title: "Video Latency Calibration",
|
||||
content: "This time there will be no sounds.\n\nInstead, watch for notes blinking on the circle-shaped frame, hit the drum as they appear!"
|
||||
},
|
||||
videoComplete: "Video Latency Calibration completed!",
|
||||
results: {
|
||||
title: "Latency Calibration Results",
|
||||
content: "Audio latency: %s\nVideo latency: %s\n\nYou can configure these latency values in the settings."
|
||||
}
|
||||
}
|
||||
this.browserSupport = {
|
||||
browserWarning: "You are running an unsupported browser (%s)",
|
||||
details: "Details...",
|
||||
|
||||
Reference in New Issue
Block a user