Skip to content

Latest commit

 

History

28 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FLAPPY BIRD BATTLE 🔥

Phiên bản nhiều người chơi phát triển từ Flappy Bird gốc — với combat nảy lửa, cửa hàng, cấp độ, huy hiệu và bảng vàng.

Cách chơi: mở index.html bằng trình duyệt là chơi được ngay (không cần cài đặt, không cần server).

CHẾ ĐỘ CHƠI

Chế độ Mô tả
🐤 Chơi đơn Flappy Bird cổ điển, tính xu & XP
🤖 Chơi với máy Đấu với AI bot (Dễ / Thường / Khó), thắng được thưởng 20 xu
👥 Chơi đôi 2 người cùng bàn phím, điểm đội cộng dồn
🌐 Chơi qua mạng 2 người trên 2 máy khác nhau qua WebSocket, điểm đội cộng dồn

Chế độ máy, đôi & qua mạng có 2 kiểu màn chơi: ∞ Vô tận (khó dần) hoặc 🚩 Theo màn (mỗi màn 10 ống, qua màn tăng tốc & hẹp khe).

CHƠI QUA MẠNG 🌐 (2 máy khác nhau)

  1. Chạy server (1 lần, trên 1 máy bất kỳ trong mạng LAN):
    cd server
    npm install   # lần đầu
    npm start     # server in ra địa chỉ ws://<IP>:8080
  2. Cả 2 máy mở game → 🌐 Chơi qua mạng → nhập địa chỉ server (máy chạy server dùng ws://localhost:8080, máy khác dùng ws://<IP-máy-chạy-server>:8080) → Kết nối
  3. Máy 1 bấm 🏠 Tạo phòng → nhận mã 4 ký tự → đọc cho bạn
  4. Máy 2 nhập mã → Vào phòng → chủ phòng chọn kiểu màn và ▶ Bắt đầu
  5. Mỗi máy điều khiển chim của mình: Space/Click để bay, F để bắn 🔥. Ai gục có thể xem tiếp hoặc bỏ xu hồi sinh (xu của máy mình). Chủ phòng bấm Chơi lại để tái đấu.

Kỹ thuật: server (server/server.js) chỉ ghép phòng & chuyển tiếp tin nhắn. Máy chủ phòng chạy toàn bộ mô phỏng và phát snapshot ~20 lần/giây; máy khách gửi thao tác và dự đoán chuyển động giữa các snapshot.

Chơi qua Internet (không cần chung mạng LAN)

  • Game: mở https://vivutech.github.io/flappybird/ (GitHub Pages)
  • Server: deploy 1-click lên Render (miễn phí): Deploy to Render
  • Sau khi deploy, cả 2 máy nhập địa chỉ server dạng wss://flappy-battle-server.onrender.com (chú ý wss://, không có :8080)
  • Lưu ý gói miễn phí Render: server "ngủ" sau ~15 phút không dùng, lần kết nối đầu có thể chờ ~50 giây khởi động lại.

ĐIỀU KHIỂN

  • Người chơi 1: Space / Click / Chạm để bay · F để bắn cầu lửa
  • Người chơi 2: W hoặc ↑ để bay · L để bắn cầu lửa

COMBAT NẢY LỬA 🔥

  • Nhặt vật phẩm lửa xuất hiện giữa khe ống để tích đạn (tối đa 3)
  • Bắn cầu lửa vào đối thủ → đối thủ bị choáng ~0.75 giây, rơi tự do không búng được
  • Khiên 🛡 chặn được 1 cầu lửa hoặc 1 va chạm ống

HỒI SINH BẰNG XU 💰

Trong chế độ máy/đôi, khi 1 người gục mà đồng đội còn bay:

  • 👀 Xem tiếp — theo dõi đồng đội chơi, điểm vẫn cộng dồn
  • 💰 Hồi sinh — bỏ xu mua lượt chơi tiếp (10 → 20 → 40 xu, tăng theo số lần)
  • Cả 2 cùng gục → kết thúc, tổng điểm ghi vào bảng vàng

CỬA HÀNG 🛒 (1 điểm = 1 xu = 1 XP)

  • 6 loại chim: Vàng (mặc định) · Đỏ, Xanh (100 xu) · Tím, Cam, Hồng (200 xu)
  • Vật phẩm tiêu hao mỗi ván: Khiên (15), Búng cao (20), Thu nhỏ (25), Nam châm (30), Hồi sinh sẵn (50)

HUY HIỆU THEO CẤP

🥉 Đồng (1–4) → 🥈 Bạc (5–9) → 🥇 Vàng (10–19) → 💎 Kim cương (20–34) → 👑 Huyền thoại (35+)

BẢNG VÀNG 🏆

Top 10 mỗi chế độ, lưu tên + chim + huy hiệu + ngày lập kỷ lục (localStorage).

CÔNG NGHỆ

  • HTML/CSS + Canvas, JavaScript thuần — không framework, không build tool
  • Lưu tiến trình bằng localStorage
  • Mã nguồn tách module trong thư mục js/: constants · storage · progression · leaderboard · bird · pipes · combat · ai · shop · ui · main

ASSETS

IMAGES

flappy bird theme (src: google images) flappy bird theme v2 (src: https://www.spriters-resource.com/fullview/59894/)

AUDIO

(src: https://www.sounds-resource.com/mobile/flappybird/sound/5309/)


Dựa trên mã nguồn Flappy Bird gốc: https://github.com/noanonoa/flappy-bird

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages