- Перенос: Net→net, Player→player, World/*→maps/{hub,sandbox,backrooms}, core, objects,
models/*→chasers/{rock,verity} и maps/*/models. Имена внутри папок с .glb не менялись
(рядом лежат извлечённые текстуры). Все пути, пресеты экспорта и автолоады обновлены.
- Преследователи: rock-follow.gd → chasers/chaser.gd; камень в песочнице теперь инстанс
chasers/rock/rock.tscn (как Верити).
- Удалён мусор: неиспользуемое небо sunflowers, Tree_01.glb, rock-path.gd, старая
модель Верити, unwrap_cache (теперь в .gitignore).
- Основной пакет игры 70 КБ (камень и Верити уехали в пакеты карт).
- tools/: export_all.sh, serve_web.py (nginx-подобный dev-сервер), deploy_server.sh,
test/ (боты, временный проект и сервер). Net: флаг --client для headless-клиента.
- deploy/: боевые nginx.conf и my-world.service, project.godot выделенного сервера.
- README переписан: что есть и чего нет, структура, карты, преследователи, сеть, пакеты,
деплой, грабли, дорожная карта (телефон).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
15 lines
1015 B
Bash
Executable File
15 lines
1015 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Делает ВРЕМЕННУЮ копию проекта с ботом-автозагрузкой для тестов без окна.
|
|
# tools/test/make_test_project.sh /tmp/test-world
|
|
# Дальше: godot --headless --path /tmp/test-world res://maps/hub/hub.tscn -- --client --name=A
|
|
# (сервер для сетевых тестов — отдельный headless-запуск папки из tools/test/make_test_server.sh)
|
|
set -euo pipefail
|
|
SRC="$(cd "$(dirname "$0")/../.." && pwd)"
|
|
DST="${1:?укажи папку}"
|
|
mkdir -p "$DST"
|
|
rsync -a --exclude .git --exclude deploy "$SRC/" "$DST/"
|
|
sed -i 's#^MapLoader="\*res://core/map_loader.gd"#MapLoader="*res://core/map_loader.gd"\nBot="*res://tools/test/bot.gd"#' "$DST/project.godot"
|
|
# В боевом экспорте tools/* исключён; в тестовой копии бот должен попасть в пакет
|
|
sed -i 's#exclude_filter="tools/\*, #exclude_filter="#' "$DST/export_presets.cfg"
|
|
echo "готово: $DST"
|