{"id":"4e1ac3d6-6013-44cc-9e95-779d25130dd8","arxiv_id":"1908.06404","paper_version":1,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":6.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":0,"one_line_summary":"A sensor and game-data collection system for eSports that synchronizes heterogeneous streams to within 10 ms, using GPS-disciplined NTP and matching game fire events to mouse clicks.","lead":"Researchers built a system that synchronizes data from wearable sensors, environmental monitors, and a Counter-Strike game recording to within a few milliseconds. It matches in-game shooting events with mouse clicks to line up the game's internal clock with real time.","discovery_kind":"new_application","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Post-sync accuracy is asserted, not measured: the demo-to-UTC shift lacks ground truth, and Equation (4) contains a sign error.","rationale":"The reader's CONDITIONAL verdict is appropriate: the paper describes a plausible system, but the key quantitative claim about post-synchronization accuracy is not validated. My stress-test identifies the same core gap, but formulates it more sharply: the estimated integer shift conflates the mouse-log UTC timeline with the server-tick timeline without accounting for client-to-server latency or tick quantization, and no ground-truth experiment is reported. The sign error in Equation (4) is a separate reproducibility defect, but it is probably a typo and not the central obstacle. The concrete test with a GPS-disciplined pulse generator and visible flash would directly measure the post-sync residual and settle whether the <10 ms claim holds. Because the central claim is not disproven by the paper's own text, only unsupported, the verdict should remain CONDITIONAL rather than ACCEPT or REJECT.","tokens_in":8367,"tokens_out":4330,"duration_ms":50239,"concrete_test":"Run a controlled CS:GO session in which the player fires at moments signaled by a GPS-disciplined pulse generator that also produces a visible screen flash (e.g., a custom HUD element or an LED in view of a camera). For each of 20-50 shots, compare the UTC time predicted by the post-sync algorithm (demo tick index plus estimated shift) with the GPS time of the corresponding flash/pulse. Compute the mean and standard deviation of the residuals; if the absolute residual or its spread exceeds 10 ms, the post-sync accuracy claim fails. Additionally, recompute the shift using only every other fire event and check that the estimate is stable within one tick.","verdict_should_be":"UNCHANGED","load_bearing_attack":"The central claim that game telemetry is synchronized to sensor UTC with <10 ms accuracy rests entirely on the post-synchronization algorithm in Section IV-B.1. Equations (1)-(4) estimate a single integer shift s* between the 128 Hz LMB-press time series and the demo fire-event tick indices. For the mapped game events to be within 10 ms of true UTC, this shift must equal the actual constant delay between local mouse sampling and server-side event processing. That delay includes client input latency, network transmission, and server tick quantization, none of which the paper measures or models. The 2-3 ms accuracy reported in Section IV-A.3 concerns the Windows NTP clock, not the post-sync residual. Figure 6 is a qualitative overlay and does not quantify the residual. Additionally, Equation (4) states s* = arg min, while the derivation from Equations (2)-(3) yields arg max; as written, the algorithm is contradictory. Even if the implementation used arg max, the integer shift resolution is 1/128 s = 7.8125 ms, which alone consumes most of the claimed 10 ms budget. The unverified assumption that every fire event appears as a captured LMB press can also bias the estimated peak. Therefore, the paper does not establish the headline synchronization accuracy for game logs.","agreement_with_reader":"partial"},"referee_report":{"model":"deepseek-v4-flash","summary":"This paper describes a multimodal data collection system for eSports monitoring, integrating physiological, environmental, video, mouse/keyboard, and game telemetry data. The authors use a local GPS/PPS-based NTP server to synchronize Raspberry Pi sensor nodes and the gaming PC, with registry-tuned Windows time service to reach 2-3 ms clock accuracy. For the CS:GO demo file, which has no UTC timestamps, they propose a post-synchronization algorithm that aligns in-game weapon fire events with logged left mouse button presses by maximizing their overlap over an integer tick shift, computed efficiently via discrete convolution. The paper claims system-wide synchronization accuracy below 10 ms and presents qualitative results showing the feasibility of the approach.","tokens_in":8568,"tokens_out":4512,"duration_ms":49505,"significance":"If the synchronization claims are validated, the proposed system would be a low-cost and practical tool for collecting synchronized multimodal data in eSports training and player analysis. The post-synchronization method is simple, parameter-free, and efficient, and it leverages publicly available demo parsing tools; these are notable strengths. However, the central quantitative claim about game-log synchronization accuracy is not currently supported by a ground-truth measurement, and a sign error in the formal derivation needs correction. The paper is more of a systems/experience report than a rigorous algorithm-validation paper, but the underlying idea is sound and likely fixable within the manuscript's scope.","major_comments":[{"comment":"Equation (4) is mathematically inconsistent with the stated objective. Equations (1) and (2) correctly define s* as the arg max of the number of matching fire and LMB-press events, and Eq. (3) rewrites this objective as (f ⋆ g_tilde)_{-s}. Equation (4), however, writes s* = arg min_s (f ⋆ g_tilde)_{-s}, which minimizes the overlap rather than maximizing it. As printed, the derivation is contradictory and would lead to the shift with the fewest, not most, coincidences. Please change Eq. (4) to arg max, or equivalently express the result as arg max_k (f ⋆ g_tilde)_k with k = -s.","section":"Section IV-B.1, Eq. (4)"},{"comment":"The claim that post-synchronization achieves <10 ms accuracy for the game telemetry is not established by the presented evidence. The 2-3 ms figure in Section IV-A.3 concerns the Windows NTP clock on the gaming PC, not the residual error after aligning the demo timeline. Figure 6 is a qualitative overlay with no error bars, no independent reference times, and no quantitative residual analysis. Moreover, because s* is an integer number of 128 Hz ticks, the shift resolution is 1/128 s = 7.8125 ms, which alone nearly exhausts the advertised 10 ms budget; the true residual also includes mouse sampling latency, network transmission, server tick quantization, and demo event logging delays, none of which is measured here. Please provide a ground-truth validation, for example by recording a controlled event whose UTC time is independently known, or by comparing the estimated shift against a second synchronization method, and report the residual distribution.","section":"Section V, Fig. 6"},{"comment":"The post-synchronization algorithm relies on the assumption that every in-game fire event corresponds to a captured left mouse button press and that non-fire LMB presses (e.g., menu clicks) are rare or uncorrelated. If a player binds fire to a different key, uses a mouse whose output is not logged, or if the demo omits certain shots, the correlation peak is degraded; if non-fire clicks are correlated with fire events, the estimated shift can be biased. The authors should state this validity condition explicitly and ideally demonstrate robustness, for instance by randomly removing a fraction of fire events and measuring the stability of the estimated shift.","section":"Section IV-B.1"}],"minor_comments":[{"comment":"There is a typo in the abstract: 'guarantying' should be 'guaranteeing'.","section":"Abstract"},{"comment":"The notation for the time indices is inconsistent: the mouse series is indexed from t = 0 and the fire series from t = 1, without a clear statement of whether the tick index starts at 0 or 1. Please align the index ranges and define N and M explicitly before Equation (1).","section":"Section IV-B.1"},{"comment":"In the sentence beginning 'In [20] audio streams was captured...', the verb should agree with the plural subject; also 'This discussion demonstrates that there are no examples when many sensors are used at the same time' is not strictly supported by the cited literature and could be softened to 'few examples'.","section":"Section II"},{"comment":"Reference [23] appears incomplete: 'C Sidney Burrus and TW Parks. and Convolution Algorithms' seems to be missing the beginning of the title and publisher information. Please correct it.","section":"Reference [23]"},{"comment":"The text states that the measurement period is 10 ms and the synchronization accuracy is <10 ms, but it does not explain why that is sufficient to fill the data-loss gaps shown in the figure. A more precise statement about interpolation or continuity would help the reader assess the claim.","section":"Section V, Fig. 5"}],"recommendation":"major_revision","confidential_remarks":"The paper is best viewed as a systems/experience report. The main substantive issues are the missing ground-truth validation of the post-synchronization residual and the sign error in Eq. (4). Both are addressable within the scope of the manuscript; with a proper quantitative evaluation the paper could become acceptable. The novel contribution is modest, but the practical value for the eSports sensing community is real."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"The paper's new idea is genuinely good: aligning CS:GO demo files to UTC by cross-correlating in-game fire events with logged mouse clicks. I haven't seen that specific trick in the eSports literature, and it is exactly the kind of low-cost, self-contained method that practitioners will want to steal. The rest of the system — GPS/PPS NTP server, registry tweaks for Windows time sync, sensor deployment — is described in enough detail to reproduce, and the authors are honest that game logs lack absolute timestamps.\n\nThe soft spots are real but fixable. First, Equation (4) writes arg min where the derivation from Equations (1)–(3) yields arg max. It is almost certainly a typo, but as written the formal core of the paper is contradictory. Second, the claimed “<10 ms” accuracy for game telemetry is not measured. The 2–3 ms figure in Section V is for the Windows clock sync, not the post-synchronization residual. The algorithm finds an integer shift at 128 Hz, so the resolution is about 7.8 ms, and the actual residual includes client input latency, network transmission, and server tick quantization — none of which are modeled or measured. Figure 6 is a qualitative overlay. The assumption that every fire event appears as a logged LMB press can also degrade if a player rebinds fire or if any shots are missed.\n\nWhat would convince me: a ground-truth experiment, for example playing a scripted sequence of single shots and comparing the estimated shift to the known offset, repeated over several sessions. Or at least a report of the correlation peak height and the shift variance across matches. Releasing the parsing and matching scripts would also help, since the method is simple enough to verify independently.\n\nThis is a solid systems paper for the eSports and applied sensing community. The central idea is novel and useful, the description is clear, and the flaws look correctable rather than fatal. I would send it to peer review and ask for the equation fix and an honest accuracy measurement. For my own work I would not cite it yet, but I would keep it in mind if I ever need to align game logs to physiological data.","headline":"A clever and practical post-synchronization trick for CS:GO demos, but the headline accuracy claim is not backed by ground-truth measurement and Equation (4) has a sign error.","tokens_in":9126,"tokens_out":1673,"would_cite":false,"duration_ms":19300,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"A sensing system can synchronize eSports physiological, video, and telemetry data on a common timeline within 10 ms, with the gaming computer's clock aligned to 2–3 ms in CS:GO.","keywords":["eSports","sensor synchronization","GPS PPS","post-synchronization","CS:GO","wearable sensing","telemetry","convolution"],"falsifier":"Run a controlled CS:GO session in which the player fires a single visible shot at a UTC moment marked by an external electrical pulse recorded by the same sensor network; compare the pulse-tagged UTC time with the demo-mapped time of that shot to measure the true post-synchronization error. A second check is to shift the mouse log by a known number of ticks, run the algorithm, and see whether the recovered shift matches the injected offset within the claimed 2–3 ms accuracy.","tokens_in":1508,"feed_emoji":"🎮","tokens_out":2432,"duration_ms":64166,"temperature":0.7,"pith_summary":"The paper sets out to build a data-collection system for eSports training that unifies physiological, environmental, video, mouse/keyboard, and in-game telemetry data on a single timeline. Its central claim is that such heterogeneous data can be synchronized with better than 10 ms accuracy, and that in the CS:GO discipline the gaming computer's clock can be aligned to a local GPS-disciplined time server within about 2–3 ms. To connect the game demo, which has no real-world timestamp, to the sensor timeline, the authors match in-game weapon-fire events against logged left-mouse-button presses and choose the integer shift that maximizes their overlap. This matters because human reaction times are around 160–190 ms, so a 10 ms grid is fine enough to compare player reactions and to combine complementary sensors such as a mouse logger and an inertial sensor.","feed_headline":"Game logs and body sensors sync under 10 ms for esports","feed_subtitle":"CS:GO shot events line up with mouse-click data by maximizing overlap, reaching 2-3 ms clock accuracy.","key_machinery":"The load-bearing mechanism is the post-synchronization search over integer tick shifts: the binary fire series $f_m$ from the game demo and the binary left-mouse-button series $g_n$ from the mouse logger are aligned by maximizing their overlap, which reduces to $\\operatorname{arg\\,max}_s (f \\star \\tilde{g})_{-s}$ after reversing one series. This discrete-convolution identity turns a one-dimensional search into a near-linear-time computation and is what makes the demo-to-UTC mapping practical on long replays. The second mechanism is the common time base itself: a local GPS/PPS-disciplined NTP server that keeps the gaming PC and the sensor nodes on the same clock within a few milliseconds.","core_discovery":"The paper's discovery is a practical synchronization recipe for truly heterogeneous eSports data: a local Stratum-1 NTP server disciplined by a GPS pulse-per-second signal provides a common time base for sensors and the gaming PC, while a post-synchronization algorithm maps the game demo timeline to real time. The demo records in-game fire events at 128 Hz ticks, and the mouse logger records left-button presses at the same rate with known UTC time. Representing both as binary time series, the algorithm finds the integer shift $s^*$ that maximizes $\\sum_m f_m g_{m+s}$, the number of fire events coinciding with left-button presses; rewriting this sum as a discrete convolution lets it be computed in $O((M+N)\\log(M+N))$ time. The authors report that, in their CS:GO experiments, the gaming computer's clock was synchronized to the time server within 2–3 ms, giving a system that supports sub-reaction-time analysis of player behavior.","pith_inferences":["The paper measures the gaming PC's clock accuracy, but it does not report a ground-truth error for the demo-to-UTC alignment itself; a natural extension is to inject a known artificial time offset into one stream and check that the convolution recovers it within the claimed 3 ms.","Because the correlation uses left-mouse-button presses, the algorithm would degrade for players who bind fire to the keyboard or scroll wheel; a testable variant would replace fire events with other game actions, such as jumps, and the keyboard log.","A further consequence the authors leave implicit is that, once demo events are on the UTC timeline, analysts can compute per-event physiological responses, for example heart-rate or skin-conductance changes around a specific in-game shot, at sub-reaction-time resolution.","The same shift-maximization idea could be applied to other 128 Hz tick-based games with binary event logs, provided a synchronously logged user-input stream exists; this is an extension of the method rather than a result tested in the paper."],"forward_implications":["Sensors, video, and game telemetry from one session can be analyzed as a single timeline with alignment well below one human reaction-time step.","Missing mouse-coordinate intervals, such as during a lift-and-recenter motion, can be filled or corroborated with IMU data because both streams share a 10 ms time grid.","The convolution-based shift search scales almost linearly with replay and mouse-log length, so synchronization remains practical for long competitive matches.","The approach is stated to transfer to other eSports disciplines and to adjacent fields such as medical monitoring, where heterogeneous sensors must share a precise clock."],"supporting_citations":[{"why":"Supplies the human reaction-time baseline for light stimuli that motivates the sub-20 ms synchronization requirement.","marker":"[3]"},{"why":"Supplies the sound-stimulus reaction-time baseline used alongside [3] to justify the required measurement discretization.","marker":"[4]"},{"why":"Provides the earlier technique of using a common detectable event, such as a mouse action visible across logs, as the synchronization fingerprint that this paper adapts to fire-versus-click matching.","marker":"[10]"},{"why":"Provides the fast discrete-convolution algorithm that the post-synchronization method uses to achieve near-linear runtime.","marker":"[23]"}],"fun_headline_variants":["Sensors and game logs sync to 3 ms for esports","Millisecond sync of biosensors and game telemetry","CS:GO player data synchronized to 3 ms accuracy","Synchronizing sensors and demos for esports analysis","Game and sensor clocks agree within 3 ms"],"cache_read_input_tokens":11264,"weakest_assumption_plain":"The post-synchronization algorithm assumes every weapon-fire event in the demo appears as a left-mouse-button press in the mouse log; if a player binds fire to another key, uses an unlogged mouse, or the demo omits shots, the overlap peak weakens, and the paper gives no ground-truth measurement of the post-synchronization alignment error.","fun_headline_variants_meta":{"raw":{"variants":["Sensors and game logs sync to 3 ms for esports","Millisecond sync of biosensors and game telemetry","CS:GO player data synchronized to 3 ms accuracy","Synchronizing sensors and demos for esports analysis","Game and sensor clocks agree within 3 ms"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000578,"raw_usage":{"total_tokens":2685,"prompt_tokens":863,"completion_tokens":1822,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":479,"completion_tokens_details":{"reasoning_tokens":1742}},"tokens_in":479,"tokens_out":1822,"duration_ms":12066,"temperature":1.0,"reasoning_tokens":1742,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-14T12:45:54.706047+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Run a controlled CS:GO session in which the player fires a single visible shot at a UTC moment marked by an external electrical pulse recorded by the same sensor network; compare the pulse-tagged UTC time with the demo-mapped time of that shot to measure the true post-synchronization error. A second check is to shift the mouse log by a known number of ticks, run the algorithm, and see whether the recovered shift matches the injected offset within the claimed 2–3 ms accuracy.","supporting_citations":[{"cited_title":"Choice reaction time: Basic concepts","cited_arxiv_id":null,"evidence_quote":"Supplies the human reaction-time baseline for light stimuli that motivates the sub-20 ms synchronization requirement."},{"cited_title":"Introduction: an historical background sketch","cited_arxiv_id":null,"evidence_quote":"Supplies the sound-stimulus reaction-time baseline used alongside [3] to justify the required measurement discretization."},{"cited_title":"Game analytics","cited_arxiv_id":null,"evidence_quote":"Provides the earlier technique of using a common detectable event, such as a mouse action visible across logs, as the synchronization fingerprint that this paper adapts to fire-versus-click matching."},{"cited_title":"and Convolution Algorithms","cited_arxiv_id":null,"evidence_quote":"Provides the fast discrete-convolution algorithm that the post-synchronization method uses to achieve near-linear runtime."}],"review_version":1}