Spook Name Rate Game#509
Conversation
|
Thank you for contributing to Python Discord! Please check out the following documents:
|
thomaspet
left a comment
There was a problem hiding this comment.
Can't fully review it at the moment, but most of the things I found now are done multiple places in the code. One comment counts for all the instances.
I'm also not a fan of all the # comments around the code, most of them don't add any value, just noise. For instance
if final: # if it is the final
The code here is self explanatory, and dont need the comment.
While this is a good comment, since I was about to question why you're sleeping there for 1 sec.
await asyncio.sleep(1) # give the drum roll feel
|
I ran |
thomaspet
left a comment
There was a problem hiding this comment.
Here's a few more suggestions
|
It's only fine if out linter passes it, as you can see in the tests under, it doens't pass. |
@Vthechamp22 you should run |
@thomaspet Before I run (This one change is by me) |
|
And, I don't have any |
|
@Akarys42 |
|
So anything yet @thomaspet ? |
|
Have a look at |
|
Okay @thomaspet ! |
ks129
left a comment
There was a problem hiding this comment.
Actually, some more comments.
ks129
left a comment
There was a problem hiding this comment.
This shouldn't add reaction to add command invoke message, but bot response instead to avoid cases when user deletes message and then this is impossible to vote for this name, but name still exists in cache.
|
|
tagptroll1
left a comment
There was a problem hiding this comment.
Mainly just the use of temporary lists, that could be generators or have it's values calculated on the fly.
thomaspet
left a comment
There was a problem hiding this comment.
As long as you don't make any more bigger changes, I believe we're getting very close now.
|
I'll try to give this a review some time today. |
|
Okay thank you! |
thomaspet
left a comment
There was a problem hiding this comment.
I'd say this looks good now.
Renaming is done.
removed commented code
added the delete command
Changed the name from ratethespook to spooknamerate
renamed file too
rename ratethespook.json to spooknamerate.json
Added more names from mockaroo
added one user one reaction
removed print statements
fixed flake8 comments and prevented the user from
deleting the word while polling
fixed typo, added random messages, made each
entry unique, fixed one user one reaction,
made it for one day. I think I am done
commented some code
autopep8ed
edited few lines of code
added comments
added some comments
edited code
edited code
edited
fixed syntax error
fixed flake8 complaints
fixed flake8 complaint
fixed small error
added a `word` command and informed user if
they don't have a registered word
fixed a small error where the first and last names
weren't separated
removed unecessary code
changed word to name
remove slash in multiline strings and remove
unecessary comments. Also, lock the background loop
to `OCTOBER` and make emojis into discord
emoij form (:emoij_name:)
fixed an accidental tab
removed another unecessary comment
remove more unecessary comments
remove `.keys()` for dictionaries
removed `len() > 0` for lists and dicts and
changed emojis to '\N{}' form
Fixed code so that return value is that specified
and added fail-safes instead of `if` and `else`s
f-stringify
fixed borderline api abuse and missing space in
defining word
lint code
multiple imports on one line and fix typo
remove unecessary return, shorten var typehint
remove 'Just' in suggestion and add extra line
in json file.
- unecessary comment and replace on with for in
help embed description
shorten emoij_message
remove check in delete command
use defaultdict
sort imports
group imports, add typehinting, remove unnecessary
comments and docstring, remove redundant elses
and returns
sort imports
refactor var wrds, use generator instead of list
use typing.Dict[str, str] instead of dict and use
.items() instead of get()
add a comment
remove reduntant comment
Renamed variable to avoid conflicts
add asyncio locking to prevent Runtime error
add some comments
lock all commands to OCTOBER
enhance looping in checking messages
add `cog_check` instead of limiting each command
remove unused import
remove test code and comments
use fail fast
rename function
Make storage persistent and make sure announce_word
does not go off everytime the bot restarts
fixed typo
make data persist, rename everything that has word
in it to 'name' and make sure announce_name doesn't
start off everytime the bot restarts.
remove testing code which would cause a real mess
if commited. Which I did commit.
use a separate file for the name and first_time
becuase re-dumping such a long file might take time
make var for repetitive paths and change .day to .hour
change scheduling logic
lint code
add cog_unload
fix error in spooknamerate_names.json and fix
the before_loop in spooknamerate.py
revert accidental changes and remove commented code
remove unused code
refactor vars to caps and make emojis_val global
edit docstring and make seasonalbot_commands to
community_bot_commands
make annotation correct and add check when channel is
None for get_channel
Add fullstop
Loop directly over data
Add a proper dash and fix linting
Fix linting
reverted to making EMOJIS_VAL global and fixed capitalization
fix small error
verify it is working and simplify import
remove data files
Use redis caching instead of JSON and rename
remove empty title and description in embed and use
discord's red color
remove var typehint
add Client.month_override for dev
move ping function
rename seasonalbot to sir-lancebot
remove unnecessary newline
fix line formatting
move added_messages to global
Add more info on the caches
remove + alias
improve formatting
use str.format instead of func
fix error
directly used Channels.community_bot_commands
get user from cache instead of actively
fetching the user
move help messages to constant
add more info in err msg
Apply suggestions from review
Co-authored-by: ks129 <45097959+ks129@users.noreply.github.com>
remove unnecessary comments
remove another redundant comment
improve formatting and use better var
names
hard-code a var
Use get or fetch format
Remove redundant commit
Fix in_allowed_month for debugging
remove extra space
make channel name link to channel
simplify uteration
use msg.reactions directly
rename r to reaction and directly use variable
reformat code
use from_dict instead of manually creating the
Embed
Remove commented code
fix channel linking
add some debugging support
add some more info to the debug mode
Directly use getLogger
sort imports
Remove (name) in function doctype
Use SpookNameRate.debug everywhere
Shrink function call to one line and remove extra info in comment
Use fail fast in on_reaction_add
use environment var for debug mode
Set debug val to False by default
Fix some line breaks that formatting with black had made and use fail fast
Use custom environment variable instead of the global bot env var
make bot reply and store info from the bot's reply instead of the user's message
remove an accidental swp file
fix the reaction not getting removed
remove extra brackets
use generators instead of lists
fix logging statement
simplify loop
rename spooknamerate to spookynamerate
Correct docstring
Improve the name announcing code
Ignore reaction of all bots
rearrange or
send "Name deleted" instead of "Message deleted"
Add client prefix
Relevant Issues
Closes #277
Description
We have added a file called
spooknamerate.pywhich contains relevant code for the game.Everyday, a random name is generated from a list of first and last names. (The data was downloaded from mockaroo). This name is sent in
#seasonalbot-commandsand the users need to spookify the name and register it using the command.spooknamerate add the name.Two hours before the game ends, a poll is sent out, and users cannot add anymore words. The users can add a reaction on each entry on a scale of 1 - 5 (in the form of emojis) and two hours later the results are given out. After this, another name is given out and the game starts again.
Screenshots
It starts off like this:

Basic help is provided when you do

.spooknamerateThis is what you get when you add a word

Using the command

.spooknamerate list, you can see a list of all the added wordsClicking a link takes you that word.
You can delete your entry using

.spooknamerate delete:You can see the

wordname using.spooknamerate word:At the end, the winner is announced:

Did you:
pipenv lock?pipenv run lint)?