Open-source web player for Rublox games, dual-licensed under AGPL-3.0 + Commercial. Highlights: - Babylon.js 7 + React 18 + Vite 5 stack - Self-contained engine (~46k lines): BlockManager, ModelManager, PlayerController, ScriptSandboxWorker, MultiplayerSync, 30+ GD gamemodes - Configurable backend via VITE_API_BASE and friends — works against staging (dev-api.rublox.pro) out of the box - Standalone mode (VITE_STANDALONE=true) loads a bundled sample game for first-run without any backend - Full docs: README, ARCHITECTURE, CONTRIBUTING, SECURITY, CHANGELOG - Lint + format scaffolding (ESLint + Prettier + EditorConfig) - Legal: LICENSE (AGPL-3.0), LICENSE-COMMERCIAL.md, CLA.md, COPYRIGHT.md - Issue templates: bug_report, feature_request, security_disclosure Removed before public release: - frontend_deploy.py (contained production SSH credentials) - ~27 admin endpoints (kept in private repo) - Hard-coded internal URLs and IPs - All previous git history (clean repo init)
36 lines
1.5 KiB
HTML
36 lines
1.5 KiB
HTML
<!doctype html>
|
||
<html lang="ru">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<link rel="icon" type="image/png" href="/A02.png" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
|
||
<meta name="theme-color" content="#2841C8" />
|
||
<title>Рублокс — Плеер</title>
|
||
<style>
|
||
html, body, #root { height: 100%; margin: 0; padding: 0; background: #2841C8; color: #fff; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; overflow: hidden; }
|
||
</style>
|
||
<script>
|
||
// Тег источника для DevLog (на localhost). Подбирается в devlog/devlog.js.
|
||
window.__DEVLOG_SOURCE = 'player';
|
||
</script>
|
||
<!--
|
||
Самописная Метрика (см. memory: project_metrika_system).
|
||
data-site="player" — отдельный тег источника, чтобы плеер не
|
||
путался в статистике с rublox.pro/Майнкрафтией. На локалке
|
||
запрос в metrika.js падает (нет домена), это безопасно молча.
|
||
На проде (player.rublox.pro) уходит на основной API:
|
||
https://minecraftia-school.ru/api-user/metrika.js
|
||
-->
|
||
<script
|
||
async
|
||
defer
|
||
data-site="player"
|
||
src="https://minecraftia-school.ru/api-user/metrika.js"
|
||
></script>
|
||
</head>
|
||
<body>
|
||
<div id="root"></div>
|
||
<script type="module" src="/src/main.jsx"></script>
|
||
</body>
|
||
</html>
|