Skip to content
Merged

SEO #32

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
94 changes: 94 additions & 0 deletions docs/about.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="description" content="Learn how to play SpyFall online. Discover the rules, game mechanics, and strategy tips for this exciting multiplayer social deduction game." />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="keywords" content="spyfall rules, how to play spyfall, spyfall game instructions, social deduction game rules, spyfall strategy" />
<meta name="author" content="Danny Oppenheimer" />
<meta name="google-site-verification" content="5QeZihxewmHstlIDiKAnSg65UERNIXkJN8227_qpAIk" />
<meta property="og:title" content="How to Play SpyFall — Game Rules & Instructions" />
<meta property="og:description" content="Learn how to play SpyFall online. Discover the rules, game mechanics, and strategy tips for this exciting multiplayer social deduction game." />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://spyfall.dannyoppenheimer.com/about.html" />
<meta property="og:image" content="https://spyfall.dannyoppenheimer.com/Spy.png" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="How to Play SpyFall — Game Rules & Instructions" />
<meta name="twitter:description" content="Learn the rules and strategies for SpyFall online multiplayer game." />

<title>How to Play SpyFall — Game Rules & Instructions</title>
<link rel="icon" href="Spy.png" type="image/png" sizes="16x16" />

<link href="https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap" rel="stylesheet" />
<link rel="stylesheet" type="text/css" href="about.css" />

<link rel="canonical" href="https://spyfall.dannyoppenheimer.com/about.html" />

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebPage",
"name": "How to Play SpyFall",
"description": "Game rules and instructions for SpyFall online multiplayer game",
"url": "https://spyfall.dannyoppenheimer.com/about.html",
"author": {
"@type": "Person",
"name": "Danny Oppenheimer"
}
}
</script>

<script src="about.js"></script>
</head>

<body>
<header>
<button id="back" type="button" value="Back" onclick="backToMain()">Back</button>
</header>

<main>
<article id="text">
<h1 class="title">How to Play SpyFall</h1>

<section>
<h2>About SpyFall</h2>
<p>Spyfall is a group-style social deduction game created in 2016. It combines simple rules with engaging gameplay that works great for parties and gatherings.</p>
</section>

<section>
<h2>Main Idea</h2>
<p>
When the round begins, a single location will be randomly selected. All players will be assigned the same location, but will have
different roles. One player knows neither the location nor the roles assigned to other players. This player is the spy, and their goal is to
find out the location. If the spy discovers the location, the spy wins. If the players figure out who the spy is, the players win.
This is achieved by asking other players questions. The players should ask questions that they think will reveal the spy, and the spy should
ask questions that they think will reveal the location.
</p>
</section>

<section>
<h2>How to Play</h2>
<ol>
<li>One player creates a room and others join using the provided 5-letter code.</li>
<li>Once everyone has joined, one player clicks "Start Game" to reveal roles and location to each player.</li>
<li>Players take turns asking questions during the specified time period. The spy can guess the location at any time. After you answer a question, it becomes your turn to ask another player.</li>
<li>After the time limit ends (and the spy hasn't guessed the location), all players may vote on who they think the spy is.</li>
<li>If the players vote correctly, they win. Otherwise, the spy wins.</li>
</ol>
</section>

<section>
<h2>Tips for Success</h2>
<p><strong>For Regular Players:</strong> Ask questions that confirm your knowledge of the location. Watch how others answer—their responses reveal whether they know the location.</p>
<p><strong>For the Spy:</strong> Listen carefully to questions and answers. Ask open-ended questions that might reveal the location without seeming suspicious.</p>
</section>

<p><strong>Have Fun!</strong></p>
</article>
</main>

<footer>
<p><a href="/">Back to Game</a></p>
</footer>
</body>
</html>
File renamed without changes.
102 changes: 65 additions & 37 deletions docs/create_room.html
Original file line number Diff line number Diff line change
@@ -1,59 +1,87 @@
<!DOCTYPE html>
<html>
<html lang="en">
<head>
<meta charset="utf-8" lang="en" />
<meta charset="utf-8" />
<meta name="description" content="Create a new SpyFall game room. Set your location pack and match timer, then invite your friends to join using the room code." />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="keywords" content="SpyFall,SpyFall 1, SpyFall 2" />
<meta name="keywords" content="create spyfall room, start spyfall game, spyfall location pack, game settings" />
<meta name="author" content="Danny Oppenheimer" />
<meta name="google-site-verification" content="5QeZihxewmHstlIDiKAnSg65UERNIXkJN8227_qpAIk" />
<meta property="og:title" content="Create a SpyFall Game Room" />
<meta property="og:description" content="Create a new SpyFall game room and invite friends to play." />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://spyfall.dannyoppenheimer.com/create_room.html" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="Create a SpyFall Game Room" />
<meta name="twitter:description" content="Create a new SpyFall game room and invite friends to play." />

<title>SpyFall</title>
<link rel="icon" href="Spy.png" type="image/gif" sizes="16x16" alt="spy_icon" />
<title>Create SpyFall Game Room — Set Locations & Timer</title>
<link rel="icon" href="Spy.png" type="image/png" sizes="16x16" />

<link href="https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap" rel="stylesheet" />
<link rel="stylesheet" type="text/css" href="create_room.css" />
<script src="https://spyfall-production-5f2b.up.railway.app/socket.io/socket.io.js"></script>

<link rel="canonical" href="https://spyfall.dannyoppenheimer.com/create_room" />
<link rel="canonical" href="https://spyfall.dannyoppenheimer.com/create_room.html" />

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebPage",
"name": "Create SpyFall Game Room",
"description": "Create a new multiplayer SpyFall game room",
"url": "https://spyfall.dannyoppenheimer.com/create_room.html"
}
</script>

<script src="create_room.js" defer></script>
</head>

<body>
<script src="create_room.js" defer></script>
<header>
<button id="back" type="button" value="Back">Back</button>
</header>

<input id="back" type="button" value="Back" />
<div class="title">
<h1>Create Room</h1>
</div>
<main>
<div class="title">
<h1>Create Game Room</h1>
</div>

<div class="checkbox">
<label id="spyfall1label">Spyfall 1 Locations</label>
<br />
<label id="spyfall2label">Spyfall 2 Locations</label>
<br />
<label id="custom1label"><del>Extra Spyfall Pack</del></label>
<br />
<div id="custom_addition"></div>
<br />
<form id="minute_form">
<section class="checkbox">
<h2>Game Settings</h2>
<fieldset>
<legend style="font-size: 1em;">Matchtime Minutes:</legend>
<p>
<legend>Location Pack</legend>
<label id="spyfall1label"><input type="radio" name="location_pack"> Spyfall 1 Locations</label>
<br />
<label id="spyfall2label"><input type="radio" name="location_pack"> Spyfall 2 Locations</label>
<br />
<label id="custom1label"><del>Extra Spyfall Pack</del></label>
<br />
<div id="custom_addition"></div>
</fieldset>

<br />

<form id="minute_form">
<fieldset>
<legend>Match Timer (minutes)</legend>
<label for="list">Select duration:</label>
<select id="list">
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
<option value="5">5 minutes</option>
<option value="6">6 minutes</option>
<option value="7">7 minutes</option>
<option value="8">8 minutes</option>
<option value="9">9 minutes</option>
<option value="10">10 minutes</option>
<option value="15">15 minutes</option>
<option value="20">20 minutes</option>
</select>
</p>
</fieldset>
</form>
</div>
</fieldset>
</form>
</section>

<br />
<button id="create_room_button">Create</button>
<br />
<button id="create_room_button" type="button">Create Room</button>
</main>
</body>
</html>
175 changes: 175 additions & 0 deletions docs/faq.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="description" content="Frequently asked questions about SpyFall online game. Get answers to common questions about rules, gameplay, and troubleshooting." />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="keywords" content="spyfall faq, spyfall questions, spyfall help, how to play spyfall, spyfall tips" />
<meta name="author" content="Danny Oppenheimer" />
<meta name="google-site-verification" content="5QeZihxewmHstlIDiKAnSg65UERNIXkJN8227_qpAIk" />
<meta property="og:title" content="SpyFall FAQ — Frequently Asked Questions" />
<meta property="og:description" content="Get answers to common questions about SpyFall online game, rules, and gameplay." />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://spyfall.dannyoppenheimer.com/faq.html" />
<meta property="og:image" content="https://spyfall.dannyoppenheimer.com/Spy.png" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="SpyFall FAQ — Frequently Asked Questions" />
<meta name="twitter:description" content="Get answers to common questions about SpyFall online game." />

<title>SpyFall FAQ — Frequently Asked Questions About The Game</title>
<link rel="icon" href="Spy.png" type="image/png" sizes="16x16" />

<link href="https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap" rel="stylesheet" />
<link rel="stylesheet" type="text/css" href="about.css" />

<link rel="canonical" href="https://spyfall.dannyoppenheimer.com/faq.html" />

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is SpyFall?",
"acceptedAnswer": {
"@type": "Answer",
"text": "SpyFall is a free online multiplayer social deduction game where one player is secretly the spy. The spy must figure out the secret location while other players try to identify who the spy is."
}
},
{
"@type": "Question",
"name": "How many players can play SpyFall?",
"acceptedAnswer": {
"@type": "Answer",
"text": "SpyFall is designed for 3-8 players, though it works best with 4-6 players."
}
},
{
"@type": "Question",
"name": "How long does a game last?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Each game round lasts 5-20 minutes depending on the timer you select when creating the room."
}
},
{
"@type": "Question",
"name": "Do I need to download anything to play?",
"acceptedAnswer": {
"@type": "Answer",
"text": "No, SpyFall is played entirely in your browser. Just visit the website and you're ready to play."
}
},
{
"@type": "Question",
"name": "Is SpyFall free to play?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, SpyFall is completely free to play. There are no ads or in-app purchases."
}
},
{
"@type": "Question",
"name": "What location packs are available?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We offer Spyfall 1 and Spyfall 2 location packs. Select your preferred pack when creating a room."
}
},
{
"@type": "Question",
"name": "Can I play with friends online?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes! Create a room, share the 5-letter room code with your friends, and they can join your game from anywhere."
}
},
{
"@type": "Question",
"name": "What if I disconnect during a game?",
"acceptedAnswer": {
"@type": "Answer",
"text": "If you disconnect, you'll be removed from the game. Other players can continue playing, and you'll need to create or join a new room to play again."
}
}
]
}
</script>

<script src="about.js"></script>
</head>

<body>
<header>
<button id="back" type="button" value="Back" onclick="backToMain()">Back</button>
</header>

<main>
<article id="text">
<h1 class="title">Frequently Asked Questions</h1>

<section>
<h2>General Questions</h2>

<h3>What is SpyFall?</h3>
<p>SpyFall is a free online multiplayer social deduction game where one player is secretly the spy. The spy must figure out the secret location while other players try to identify who the spy is through strategic questioning.</p>

<h3>Is SpyFall free to play?</h3>
<p>Yes, SpyFall is completely free to play. There are no ads, subscriptions, or in-app purchases. Simply visit the website and start playing.</p>

<h3>Do I need to download anything?</h3>
<p>No, SpyFall is played entirely in your web browser. Just visit the website and you're ready to play immediately.</p>
</section>

<section>
<h2>Gameplay Questions</h2>

<h3>How many players can play SpyFall?</h3>
<p>SpyFall is designed for 3-8 players, though it works best with 4-6 players for balanced gameplay.</p>

<h3>How long does each game last?</h3>
<p>Each round lasts 5-20 minutes depending on the timer you select when creating the room. Choose based on how much time your group has.</p>

<h3>Can I play with friends online?</h3>
<p>Yes! Create a room and share the 5-letter room code with your friends. They can join your game from anywhere in the world using that code.</p>

<h3>What location packs are available?</h3>
<p>We currently offer Spyfall 1 and Spyfall 2 location packs. Select your preferred pack when creating a room.</p>
</section>

<section>
<h2>Technical Questions</h2>

<h3>What if I disconnect during a game?</h3>
<p>If you accidentally disconnect, you'll be removed from the game. The other players can continue playing. You can join or create a new room to play again.</p>

<h3>What browsers are supported?</h3>
<p>SpyFall works on all modern browsers including Chrome, Firefox, Safari, and Edge.</p>

<h3>Can I play on mobile?</h3>
<p>Yes, SpyFall is fully playable on mobile devices, tablets, and desktops.</p>
</section>

<section>
<h2>Rules Questions</h2>

<h3>Can the spy guess the location at any time?</h3>
<p>Yes, the spy can guess the location at any point during the game. If they guess correctly, they win immediately.</p>

<h3>What happens if everyone votes for different people?</h3>
<p>If there's no majority vote on a single player, the spy wins by default.</p>

<h3>Can the spy vote?</h3>
<p>Yes, the spy participates in voting just like any other player to avoid revealing themselves.</p>
</section>

<p><strong>Have more questions?</strong> <a href="https://github.com/DannyOppenheimer/SpyFall/issues">Open an issue on GitHub</a> and we'll help!</p>
</article>
</main>

<footer>
<p><a href="/">Back to Game</a></p>
</footer>
</body>
</html>
Loading