l-eugene / searchndroch_bot Goto Github PK
View Code? Open in Web Editor NEWTelegram bot to hold the quest games
License: MIT License
Telegram bot to hold the quest games
License: MIT License
Show time left till level up in /task and /status command output.
Make codes case insensitive
Print help message
Store all codes user sent (code, level, timestamp). Do not store in plain text.
Add possibility to create messages, displayed to user when bonus complete.
Add inline menu for output of /list command (Add next and prev buttons). Paginate command output.
Show most recent games first (Sort by status and game start time)
Create game menu with buttons for major activities: /task, /stat, /status, /info, etc.
Menu should appear on game start and disappear on game over.
Add hints on level
"Game started" message and keyboard are not sent to user if he is joining the game after it's started.
Both message and keyboard expected to be sent.
Same keys in different sectors makes level impossible to complete. Only first sector is closed by key.
Expected to close all levels at once with correct key.
Do not use NULL as game status. "Future" should be used for freshly created game.
Status value should be validated to be one of allowed values (Future, Running, Over).
Set timezone in options.
Game start/end time should be displayed in bot timezone, not UTC.
Print closed sectors count, disclosed sectors list and level bonus and total bonus.
Need possibility to define several correct values for same code.
If level's code limit reached by player, level should be ended and player should proceed to next level.
Start date is not validated on yml-file game creation.
Actual: chat name is taken as name of first user, who sent command to bot.
Expected: group title is used if available.
Add performance logs with execution time for all chat commands.
In output of /stat command print time of last correct code for user (level start time if no codes accepted).
Import games in YAML format.
Warn user about level-up. Warn 5 and 1 minutes before up.
Show "Game is over" message in answer to /info command if game status is 'Over'. Now start time is shown.
Automatically enable this mode after /join command for own game.
/level command to move to defined level.
/reset command to remove all bonuses for tester.
Add /name command for player to change his display name (name, shown in stat).
Add possibility to define timezone for single player.
Add possibility to make level infinite (no deadline)
Level task is trunkated on game creation if it is ending with link.
Show number of sectors left to level up in /status command output.
Do not store invalid records in database.
If game import failed because of exception, orphaned records are still stored in database. Transaction or cleanup should be used.
In single-player mode (personal chat) add warning if player is sending text without valid command or # sign.
Add command to export game scenario as json file.
Keyboard should be visible only if player has active game running.
SUBJ
Preferred order:
Add commands to list games that are not finished (future games and active).
Mark finished and running games in game list.
Only first player who sends correct code achieves bonus. Other players get "Code already entered" errors.
Invalid game number displayed when game finished.
Show game info by given number (if number is not given, show current active game if any).
Add possibility to enable bonus-to-time conversion to sort teams by time. Bonuses should be multiplied to K (coefficient, defined in scenario file) seconds before decreasing finish time.
Remove game links to players when game is removed
Print results in game finish message.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.