A fantastic multiplayer action browser game http://chuck-game.tumblr.com
Find a file
Jeena d39a55e20e Remove server reconciliation in favor of pure client prediction
The reconciliation system caused visible teleportation at high latency
(e.g. 250ms Germany→Korea): position corrections snapped the local
player and thrown items back to stale server states.

- Drop the inputAck/seq tracking, InputBuffer, and applyReconciliation.
  The client predicts locally and the server stays authoritative via
  the existing worldUpdate broadcast; own-doll updates remain ignored.
- Override Item.setUpdateData on the client so in-flight items run free
  on local Box2D physics (client and server share the same throw
  impulse) and only sync when stationary or far out of sync. This keeps
  grab-sensor contact accurate while eliminating mid-flight snapping.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-28 23:35:22 +00:00
app Remove server reconciliation in favor of pure client prediction 2026-05-28 23:35:22 +00:00
config implemented rubedoll level item (not after dying yet) 2015-05-11 11:10:30 +02:00
lab Makes singleton variable name of NotificationCenter lowercase 2016-10-10 22:11:55 +02:00
poc-webrtc Add standalone POC comparing WebRTC DataChannel vs Socket.IO 2026-05-11 00:38:01 +00:00
scripts Route gameCommand traffic through WebRTC unreliable DataChannel 2026-05-11 00:38:18 +00:00
snippets added semicolon because of jslint 2015-03-15 13:39:51 +01:00
static 2025 update! 2025-07-15 20:05:12 +02:00
.floo changed modes 2014-01-12 16:59:16 +01:00
.gitignore Replace cheat-detection teleport with server reconciliation 2026-05-11 00:37:42 +00:00
channel.js implemented rubedoll level item (not after dying yet) 2015-05-11 11:10:30 +02:00
client.js 2025 update! 2025-07-15 20:05:12 +02:00
package-lock.json Route gameCommand traffic through WebRTC unreliable DataChannel 2026-05-11 00:38:18 +00:00
package.json Route gameCommand traffic through WebRTC unreliable DataChannel 2026-05-11 00:38:18 +00:00
README.md adds video image 2015-06-28 17:06:52 +02:00
server.js adds warning too many recordings. fixes #132 2015-06-22 11:58:13 +02:00

chuck.js

Physical JavaScript Action Browser Multiplayer Game - it will be awesome!

Follow the development at http://chuck-game.tumblr.com/

How to run:

  • git clone https://github.com/logsol/chuck.js.git
  • cd chuck.js
  • npm install
  • node server.js [port] [log level]

Open in browser http://localhost:1234

This game is licensed under the GPLv3 licence http://www.gnu.org/licenses/gpl-3.0.html