b0c83af092
Complete replacement of the tactical-shooter project with the netfox-cs-sample (MIT) — a CS 1.6 inspired multiplayer FPS built with Godot 4 and netfox. ## What's new - Full CS-style gameplay: teams (T/CT), rounds, economy, buy menu - 6 weapons: Knife, Glock, USP, AK-47, M4A1, AWP - Bomb plant/defuse with 2 bombsites - Flashbang & smoke grenades - Proper netfox rollback netcode at 64 tick - Network popup UI for host/join - HUD, crosshair, round timer, scoreboard - All netfox singletons registered as autoloads (works in exported builds) ## Architecture - Listen-server (host from client, no dedicated server binary) - Multiplayer-fps game lives at examples/multiplayer-fps/ - Netfox addons registered as autoloads for exported build compat - Godot 4.7 with Forward+ renderer ## Removed - Old headless-server architecture (client_main, server_main, player.gd, etc.) - Custom netfox bootstrap with ENet fallback - Old ChaffGames FPS template (2,420 lines, 844 KB) - SimulationServer GDExtension stub - Godot-jolt physics (netfox sample uses default Godot physics) - Duplicate weapon_data.gd, anti_cheat.gd, round_manager.gd, etc. - Server browser API Python venv (87 MB) - test_range map and modular assets ## Preserved - Git history - Server config at config/default_server_config.cfg - Windows export preset - Build directory (gitignored) Co-authored-by: naxIO <naxIO@users.noreply.github.com>
netfox
The core addon of netfox, providing responsive multiplayer features for the Godot Engine.
Features
- ⏲️ Synchronized time
- Runs game logic at a fixed, configurable tickrate
- Time synchronized to game host
- 🧈 State interpolation
- Render 24fps tickrate at buttery smooth 60fps or more
- Add a
TickInterpolatornode and it just works
- 💨 Lag compensation with CSP
- Implement responsive player motion with little to no extra code
- Just use the
RollbackSynchronizernode for state synchronization
Install
See the root README.
Usage
See the docs.
License
netfox is under the MIT license.
Issues
In case of any issues, comments, or questions, please feel free to open an issue!