Fresh start: replace with naxIO/netfox-cs-sample foundation

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>
This commit is contained in:
2026-07-02 20:55:20 -04:00
parent ce39b237c3
commit b0c83af092
4416 changed files with 57418 additions and 902676 deletions
+50
View File
@@ -0,0 +1,50 @@
# Upgrading netfox
Improvements are fixes are added to netfox with time, based on user feedback,
resulting in newer versions. This page is inteded to help you with upgrading
your game to a newer netfox version.
## General advice
### Have a backup
**Make sure to have a backup** of your project before upgrading. While most
often an addon update should be harmless, it is a good practice to backup your
project regularly, and specifically before risky changes.
### Disable the addon(s)
Before upgrading, disable the netfox addon(s) in your project, in Project
Settings. After the upgrade, enable the addon(s) again.
This helps with cases where an autoload or a project setting is changed.
## Version-specific steps
This section has version-specific entries where extra actions might be
necessary. Versions where the general advice holds are left out.
Make sure to apply all the steps between the versions, e.g. if you're updating
from 1.0.0 to 1.3.0, refer to the sections between the two versions, in this
case v1.1.1. If there are no sections here for your version range, that means
that the upgrade should need no extra action, aside from replacing the old
netfox addon(s) with the new one(s).
### Unreleased
* `StateSynchronizer.full_state_interval` is deprecated - use project settings
* `StateSynchronizer.diff_ack_interval` is deprecated and is ignored
* `RollbackSynchronizer.full_state_interval` is deprecated - use project
settings
* `RollbackSynchronizer.diff_ack_interval` is deprecated and is ignored
* `RollbackSynchronizer.enable_input_broadcast` is deprecated - use project
settings
* `NetworkRollback.register_rollback_input_submission()` is deprecated and does
nothing
* `NetworkRollback.free_input_submission_data_for()` is deprecated and does
nothing
### v1.1.1
* Remove `Interpolators` from the project autoloads, it's a static class now.