---
title: "PENALTY"
url: "https://aigamehub.app/ja/games/hack-united-penalty-shootout-fdd79f"
source: "https://github.com/aarifmahdi/hack-united-penalty-shootout"
source_type: "github"
play_url: "https://aarifmahdi.github.io/hack-united-penalty-shootout/"
platform: "unknown"
login_required: false
pricing: "free"
origin: "original"
ai_tools: []
game_languages: ["en"]
author: "aarifmahdi"
author_handle: "aarifmahdi"
category: "カジュアル"
categories: ["casual", "simulation"]
tags: ["browser-game", "football", "hackathon", "penalty-shootout", "sports", "vanilla-js"]
added: "2026-11-06T06:09:42.264Z"
updated: "2026-11-06T06:09:42.264Z"
locale: "ja"
content_locale: "ja"
---

# PENALTY

コンソール風のブラウザPK戦：代表チームを選び、ランダムに反応するキーパーを相手に左・中央・右から蹴る方向を選んで5本のPKを蹴り、同点ならサドンデスで決着を付ける。

## Description

PENALTY は、素の HTML、CSS、JavaScript で作られた小さなブラウザゲームです。チーム選択画面ではフランス、スペイン、アルゼンチン、ノルウェーから選べます。アルゼンチンはフランスと対戦し、それ以外の選択肢はアルゼンチンと対戦します。その後、5本のPKを蹴り、各キックで方向（左・中央・右）を選びます。相手キーパーはランダムに反応するため、決まったパターンを覚えることはできません。5本終了時に同点なら、サドンデスに突入します。見た目は単色のコンソール風で、緑のアクセントが1色だけ使われています。ゲームは GitHub Pages から直接、またはローカルの静的サーバーから実行でき、ビルド手順やインストールは不要です。

## Original post

1st INTERNATIONAL HACKATHON PARTICIPATION: This vibe-coded project is built for and submitted to HACKATHON "Hack United V7" hosted @ devpost. Play the game here: https://aarifmahdi.github.io/hack-united-penalty-shootout/

Topics: game, hackathon, vibecoding

# PENALTY — Hack United Submission A console-styled penalty shootout built for the **Sports** track. ## The idea Pick a team — France, Spain, Argentina, or Norway. Argentina fans face off against France; everyone else faces Argentina. Take 5 penalties, pick a direction (left / straight / right), and try to beat the keeper — who reacts randomly, so no pattern to learn, every match plays differently. If it's tied after 5, it goes to sudden death, just like a real shootout. ## Why it's built this way - **No frameworks** Pure HTML/CSS/JS so it loads instantly and runs anywhere, including directly off GitHub Pages. ## Run it Just open `index.html` in a browser — no install needed. Or serve it locally: ```bash python3 -m http.server 8000 # then visit http://localhost:8000 ``` ## Project structure ``` index.html — markup / screens (select, game, result) style.css — monochrome console look, single green accent script.js — game state + logic, plain vanilla JS assets/ — reserved for sound effects (see below) ``` ## What's next (stretch goals, not yet built) - Sound design: rising crowd tension before each kick, goal roar, save groan - Live/upcoming World Cup match ticker at the top of the game screen - Special "taunt" celebration animation when Argentina's keeper saves a shot - Difficulty tiers via adjustable opponent accuracy
