Delete indie_game_roadmap.html
This commit is contained in:
parent
acbc7cc787
commit
fc5965b3b1
|
|
@ -1,185 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Indie Game Roadmap</title>
|
||||
<style>
|
||||
body {
|
||||
font-family: 'Segoe UI', sans-serif;
|
||||
background-color: #121212;
|
||||
color: #ffffff;
|
||||
margin: 0;
|
||||
padding: 2rem;
|
||||
}
|
||||
|
||||
h1, h2 {
|
||||
color: #00bfff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.timeline {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 1.5rem;
|
||||
max-width: 1000px;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.phase {
|
||||
background-color: #1f1f1f;
|
||||
padding: 1rem 1.5rem;
|
||||
border-left: 5px solid #00bfff;
|
||||
border-radius: 6px;
|
||||
box-shadow: 0 0 8px rgba(0, 191, 255, 0.2);
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.phase h3 {
|
||||
margin: 0;
|
||||
font-size: 1.2rem;
|
||||
color: #00e0ff;
|
||||
}
|
||||
|
||||
.dates {
|
||||
font-size: 0.9rem;
|
||||
color: #aaaaaa;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
.description {
|
||||
font-size: 1rem;
|
||||
color: #dddddd;
|
||||
}
|
||||
|
||||
.status {
|
||||
font-size: 0.8rem;
|
||||
padding: 2px 6px;
|
||||
border-radius: 4px;
|
||||
margin-left: 10px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.status.done {
|
||||
background: #28a745;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.status.progress {
|
||||
background: #ffc107;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.status.not-started {
|
||||
background: #dc3545;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.toggle {
|
||||
position: absolute;
|
||||
top: 1rem;
|
||||
right: 1rem;
|
||||
font-size: 0.9rem;
|
||||
cursor: pointer;
|
||||
background-color: #2d2d2d;
|
||||
color: #ffffff;
|
||||
border: none;
|
||||
padding: 0.3rem 0.6rem;
|
||||
border-radius: 4px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
async function login() {
|
||||
const password = document.getElementById('password').value;
|
||||
const res = await fetch('/login', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ password })
|
||||
});
|
||||
const result = await res.json();
|
||||
if (result.success) {
|
||||
document.getElementById('login-status').textContent = '✅ Logged in';
|
||||
document.getElementById('login-form').style.display = 'none';
|
||||
loadRoadmap();
|
||||
} else {
|
||||
document.getElementById('login-status').textContent = '❌ Incorrect password';
|
||||
}
|
||||
}
|
||||
|
||||
async function loadRoadmap() {
|
||||
const res = await fetch('/api/roadmap');
|
||||
const data = await res.json();
|
||||
const container = document.getElementById('roadmap');
|
||||
container.innerHTML = '';
|
||||
data.forEach(phase => {
|
||||
const el = document.createElement('div');
|
||||
el.className = 'phase';
|
||||
el.innerHTML = `
|
||||
<strong>${phase.title}</strong>
|
||||
<span class="status">[${phase.status}]</span>
|
||||
<select onchange="updateStatus(${phase.id}, this.value)">
|
||||
<option value="not started" ${phase.status === 'not started' ? 'selected' : ''}>Not Started</option>
|
||||
<option value="in progress" ${phase.status === 'in progress' ? 'selected' : ''}>In Progress</option>
|
||||
<option value="done" ${phase.status === 'done' ? 'selected' : ''}>Done</option>
|
||||
</select>
|
||||
`;
|
||||
container.appendChild(el);
|
||||
});
|
||||
}
|
||||
|
||||
async function updateStatus(id, newStatus) {
|
||||
await fetch('/api/roadmap', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ id, status: newStatus })
|
||||
});
|
||||
loadRoadmap();
|
||||
}
|
||||
|
||||
// Auto-login check
|
||||
fetch('/check-auth')
|
||||
.then(res => res.json())
|
||||
.then(data => {
|
||||
if (data.authenticated) {
|
||||
document.getElementById('login-form').style.display = 'none';
|
||||
loadRoadmap();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<nav class="navbar">
|
||||
<a href="https://www.oblistudios.com" >Home</a> |
|
||||
<a href="https://www.oblistudios.com/servermanager.html" >Server Manager</a> |
|
||||
<a href="https://www.oblistudios.com/shardwalker.html" >Shardwalker</a>
|
||||
|
||||
|
||||
<a href="http://roadmap.oblistudios.com" class="btn-roadmap" >🛠 View Roadmap</a>
|
||||
</nav>
|
||||
|
||||
<h1>Shardwalker: The Mirror's Edge</h1>
|
||||
<div id="login-panel" style="text-align:center; margin-bottom:2rem;">
|
||||
<input type="password" id="admin-pass" placeholder="Enter admin password" />
|
||||
<button onclick="login()">Login</button>
|
||||
<p id="login-status" style="color:#00bfff;"></p>
|
||||
</div>
|
||||
|
||||
<h2>Indie Dev Production Roadmap</h2>
|
||||
<div class="timeline" id="roadmap">
|
||||
<div class="phase"><h3>Pre-Production <span class="status done">Done</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">Start: [Today] — End: +30 Days</div><div class="description">Design docs, game concept, visual target, core loop</div></div>
|
||||
<div class="phase"><h3>Blockout Maps & Prototypes <span class="status progress">In Progress</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+31 Days — +75 Days</div><div class="description">Build test maps, whitebox environments, establish movement/combat feel</div></div>
|
||||
<div class="phase"><h3>Core Mechanics Development <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+76 Days — +135 Days</div><div class="description">Implement combat, shard-switching, attunement system</div></div>
|
||||
<div class="phase"><h3>First Playable (Vertical Slice) <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+136 Days — +165 Days</div><div class="description">Basic UI, combat, single map, testable state</div></div>
|
||||
<div class="phase"><h3>Story & World Design <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+166 Days — +210 Days</div><div class="description">Write lore, quests, dialogue, map flow</div></div>
|
||||
<div class="phase"><h3>Environment Art & Level Design <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+211 Days — +285 Days</div><div class="description">Model, texture, and populate maps</div></div>
|
||||
<div class="phase"><h3>Multiplayer Networking Setup <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+286 Days — +330 Days</div><div class="description">Mirror or FishNet implementation, lobby & match start logic</div></div>
|
||||
<div class="phase"><h3>UI/UX Polish <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+331 Days — +360 Days</div><div class="description">Final HUD, menus, pause screens</div></div>
|
||||
<div class="phase"><h3>Sound, Music & VFX <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+361 Days — +390 Days</div><div class="description">Placeholders replaced with final effects, transitions</div></div>
|
||||
<div class="phase"><h3>Beta Playtesting <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+391 Days — +420 Days</div><div class="description">Gather feedback on PvP and solo campaign</div></div>
|
||||
<div class="phase"><h3>Final Polish & Optimization <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+421 Days — +450 Days</div><div class="description">Bug fixing, performance, controller support</div></div>
|
||||
<div class="phase"><h3>Marketing & Steam Page Prep <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+451 Days — +471 Days</div><div class="description">Trailer, screenshots, copywriting</div></div>
|
||||
<div class="phase"><h3>Launch <span class="status not-started">Not Started</span><button class="toggle" onclick="toggleStatus(this)">Toggle</button></h3><div class="dates">+472 Days — +479 Days</div><div class="description">Push to Steam, promote, manage release</div></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Reference in New Issue