ChangHoon-Sung / discord-button-game

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Button Game ๐ŸŽฒ

screenshot

Introduction

๊ฐ„๋‹จํ•œ Button Game์„ ๊ตฌํ˜„ํ•œ Discord-Bot์ž…๋‹ˆ๋‹ค.

Button Game์€ ์›๋ฒ„ํŠผ ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค. ๊ฒŒ์ž„์„ ์‹œ์ž‘ํ•˜๋ฉด ํƒ€์ด๋จธ๊ฐ€ ์ž‘๋™ํ•˜๊ณ , ์‹œ์ž‘ํ•œ ์‚ฌ๋žŒ์€ ์ตœ์ดˆ์˜ ์Šน๋ฆฌ ์˜ˆ์ •์ž๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ํƒ€์ด๋จธ๊ฐ€ ์ดˆ๊ธฐํ™”๋˜๊ณ , ์Šน๋ฆฌ ์˜ˆ์ •์ž๊ฐ€ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ ์‚ฌ๋žŒ์œผ๋กœ ๋ฐ”๋€๋‹ˆ๋‹ค. ์• ์„ํ•˜๊ฒŒ๋„, ์Šน๋ฆฌ ์˜ˆ์ •์ž๋Š” ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ฒŒ์ž„์˜ ์‹œ๊ฐ„์ด ํ๋ฆ„์— ๋”ฐ๋ผ ์ ์ˆ˜๋Š” ์ ์  ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ฌด๋„ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด์ง€ ์•Š์•„ ํƒ€์ด๋จธ๊ฐ€ ์ข…๋ฃŒ๋˜๋ฉด ์Šน๋ฆฌ ์˜ˆ์ •์ž๊ฐ€ ์Šน๋ฆฌ๋ฅผ ํ™•์ •์ง“๊ณ , ๋ชจ๋“  ์ ์ˆ˜๋ฅผ ๊ฐ€์ ธ๊ฐ‘๋‹ˆ๋‹ค!

๋ฒ„ํŠผ ๊ฒŒ์ž„์˜ ํŠน์ง•์€ ๋‹จ์ˆœํ•˜๊ณ  ์ฐธ์—ฌ์™€ ๋ณด์ƒ์ด ํ™•์‹คํ•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์œ„ ๊ฒŒ์ž„์˜ ๋ฃฐ๊ณผ ๋ณด์ƒ์„ ์ ์ ˆํžˆ ํ™œ์šฉํ•˜์—ฌ, ์œ ์ €๊ฐ€ ๋””์Šค์ฝ”๋“œ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ์ ‘์†ํ•ด์•ผ ํ•˜๋Š” ๋˜ ํ•˜๋‚˜์˜ ๋™๊ธฐ๋ฅผ ๋ถ€์—ฌํ•ด๋ณด์„ธ์š”.

Command

  • /new-game: ์ƒˆ๋กœ์šด ๊ฒŒ์ž„์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ ์ง„ํ–‰ ์ค‘์ธ ๊ฒŒ์ž„์ด ์žˆ์œผ๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค.
  • /push: ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ํƒ€์ด๋จธ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ณ , ์ž์‹ ์„ ์Šน๋ฆฌ ์˜ˆ์ •์ž๋กœ ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค. ํ˜„ ์Šน๋ฆฌ ์˜ˆ์ •์ž๊ฐ€ ๋ˆ„๋ฅด๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค.

๊ทœ์น™ ๊ด€๋ จ ํ•ต์‹ฌ ๋ณ€์ˆ˜ (game.js)

  • TIMER_AMOUNT_SEC: ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ ์ˆœ๊ฐ„์œผ๋กœ๋ถ€ํ„ฐ ์Šน๋ฆฌ๊นŒ์ง€์˜ ํƒ€์ด๋จธ ์‹œ๊ฐ„ (์ดˆ), ๊ธฐ๋ณธ๊ฐ’: 30
  • REWARD_INCREASE_INTERVAL_SEC: ๋ณด์ƒ์ด ์ฆ๊ฐ€ํ•˜๋Š” ์ฃผ๊ธฐ (์ดˆ), ๊ธฐ๋ณธ๊ฐ’: 5
  • MAX_REWARD: ์ ๋ฆฝ ๊ฐ€๋Šฅํ•œ ์ตœ๋Œ€ ๋ณด์ƒ ํ•œ๊ณ„, ๊ธฐ๋ณธ๊ฐ’: 100

๋‹ค์–‘ํ•œ ๋ณ€ํ˜• ๊ทœ์น™ (๋ฏธ๊ตฌํ˜„)

  • ์ ์ˆ˜ -> ์ฝ”์ธ, ํ† ํฐ, ๊ธฐํ”„ํ‹ฐ์ฝ˜ ๋“ฑ ๋ณด์ƒ ๋‹ค๋ณ€ํ™”
  • ์ตœ๋Œ€ NํšŒ ๊ธฐํšŒ ๋ถ€์—ฌ๋กœ ๋‚œ์ด๋„ ์กฐ์ ˆ ๋ฐ ์‹ฌ๋ฆฌ์  ์š”์†Œ ์ถ”๊ฐ€
  • ํŠน๋ณ„ํ•œ ๋ณด์ƒ ์ฆ๊ฐ€์œจ์ด ์ ์šฉ๋œ ์ด๋ฒคํŠธ ๋งค์น˜

TODO

  • ๋™์‹œ๋‹ค๋ฐœ์ ์œผ๋กœ ๋น ๋ฅด๊ฒŒ ์ปค๋งจ๋“œ ์ž…๋ ฅ ์‹œ ์ง€์—ฐ ๋ฐœ์ƒ ๋ฌธ์ œ
  • ๋ฌดํ•œํžˆ ๊ฒŒ์ž„์ด ์ง„ํ–‰๋˜์ง€ ์•Š๋„๋ก ์กฐ์น˜ ํ•„์š” (๋งคํฌ๋กœ ๋ฐฉ์ง€, ์ฐธ์—ฌ ํšŸ์ˆ˜ ์ œํ•œ ๋“ฑ)

Requirements

Node.js 16+

Install

npm install

Envs (required)

  • sample.env์„ .env๋กœ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜๊ณ , ๊ด€๋ จ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์ ์ ˆํ•˜๊ฒŒ ์ฑ„์›Œ ๋„ฃ์œผ์„ธ์š”.

Run

for production

npm start

for develop

npm run dev

๐Ÿ“ Acknowledgments

This project is based on DiscordBot-Template by Naman Vrati


About

License:Apache License 2.0


Languages

Language:JavaScript 98.5%Language:Shell 1.0%Language:Dockerfile 0.6%