Giter Club home page Giter Club logo

blackmail's Introduction

Hi , I'm Evan


Self taught Systems engineer






Resume

blackmail's People

Contributors

elightcap avatar

Watchers

 avatar  avatar

blackmail's Issues

Automate channel creation

Is your feature request related to a problem? Please describe.
Channels currently need to be created by Owen manually, and there is no way to track ownership

Describe the solution you'd like
Automate creation of channels, store the group id and owner in database, allow for role assignment if channel is nuked

Describe alternatives you've considered
N/A

Additional context
N/A

Channel creation flow

!build "name" - creates a text channel with name, assigns user as the owner of the channel in database
!privatization - checks for users to see what channel they are the owner of, sets @everyone role in users channel to No View access, creates a new server role called "@username's channel", gives "@username's channel" role the View access to the channel. Assigns role to user who used !privatization. Logs @ROLE name to database under that channels entry
!userinvite @name - Checks database for user to see if they own a channel, if they do pull the @ROLE name from the database listed under their channel and add role to the @name invited

Refactor codebase

**Is your feature request related to a problem? Please describe.
Code is pretty unreadable in its current state. A sync operations are also a bit difficult

**Describe the solution you'd like.
Rewrite codebase using cogs. Split each command into its own class and file, as opposed to a giant if/else statement.

Describe alternatives you've considered
N/A

Additional context
N/A

Make !nuke, !strike, and !robinhood say the name of the user using the command

Nuke currently only pings @everyone when it posts to #degen-alley, so it's still hidden who is using the nuke and I'm not positive but I believe it's the same for !robinhood and !strike

Example of message in italics, would want !robinhood and !strike to say something similar
[11:13 PM]
BOT
cashier: @everyone NORAD has detected a nuclear warhead launched by @player! Take cover!
[11:13 PM]
BOT
cashier: 10
[11:13 PM]
BOT
cashier: 9
[11:13 PM]
BOT
cashier: 8
[11:13 PM]
BOT
cashier: 7
[11:13 PM]
BOT
cashier: 6
[11:14 PM]
BOT
cashier: 5
[11:14 PM]
BOT
cashier: 4
[11:14 PM]
BOT
cashier: 3
[11:14 PM]
BOT
cashier: 2
[11:14 PM]
BOT
cashier: 1
[11:14 PM]
BOT
cashier: 0
[11:14 PM]
BOT
cashier: Tactical nuke deployed! https://giphy.com/gifs/HhTXt43pk1I1W

Manage roles in a more dynamic manner

Is your feature request related to a problem? Please describe.
Move role management away from static time

Describe the solution you'd like
remove roles after a certian period of time, as opposed to on a set schedule

Describe alternatives you've considered
N/A

Additional context
N/A

Spaces in channel name

Describe the bug
If someone uses "!build" with spaces in the name of the channel, discord replaces the spaces with "-". The bot is looking for the channel name with spaces, which causes issues.

To Reproduce
Steps to reproduce the behavior:

  1. With "Home Builder" role, type "!build this is a test"
  2. the channel will be created and a role assigned, but it will not be added to database, and home owner will not be rebuilt

Expected behavior
Channel creation, role addition, database entry added, homebuilder role removed

Additional context
Easy fix. will just have bot replace spaces with dashes.

Priority 5 - !robinhood not being stopped on multiple attempts, looks like @robbery victim isn't applied to the person who got robbed currently

[5:40 PM] Ascian: !use silver
[5:40 PM]
BOT
Fuckface: Uh oh. Achilles called on that FUCKING robin hood guy again.
[5:40 PM] Ascian: !robinhood
[5:40 PM]
BOT
Casino Cashier: I steal from the rich and give to the needy! My name is Robinhood and i am very greedy! I took 216394 from @PrismaticJapan to distribute amongst my Merry People.
[5:40 PM] Ascian: !use silver
[5:40 PM]
BOT
Fuckface: Uh oh. Achilles called on that FUCKING robin hood guy again.
[5:40 PM] Ascian: !robinhood
[5:40 PM]
BOT
Casino Cashier: I steal from the rich and give to the needy! My name is Robinhood and i am very greedy! I took 197459 from @PrismaticJapan to distribute amongst my Merry People.

Possible bug needs testing - !build breaks with spaces

If you do !build channel-name-like-this
it works fine, home builder role removed and !privatize works if they have home owner
If you do !build channel name like this
it breaks, does not remove my home builder role and does not allow !privatize even with home owner role

Critical Request

I would like a !whosthebest command to be made and when somone uses it for it to say @elightcap12 because you are the best thank you for being the best

Potential nuke automation

] EffinOwen: also, potential idea for later or maybe if you want to link the git hub I could ask prismatic to take a look at doing it if you want to not worry about it etc since he codes as well
I was thinking we could automate the nuke pretty easily since the hacking is automated now to view the channel names, so once someone hacks and gets the channel name and they buy the nuke it could assign a @USAUSAUSAUSA role, and give them the !nuke "channelname" command
POTENTIALLY you could make it a 10 second count down before the nuke goes through and then it can put either "target not found" or a tenor nuke gif, that way in those 10 seconds when a nuke is initiated if the person is around and notices they are being nuked they can quickly try to change their channel name as a way to counter it

Poker Bribe automation

Not sure if this is possible~~
User buys Poker Boss Bribe item -> grants "@poker Bribe" role
!pokerbribe @enemyname -> checks chip amount of named user, if above 1million chips, cashes out any amount above 1mil to named users cash stack, leaving it vulnerable to rob

A way to potentially attack people money laundering through poker chips

Set 10000 minimum for !buyin command

Currently users can !buyin at any amount meaning users can use this as a makeshift bank to completely avoid the need of the degen city bank role to use deposit and withdraw, this takes away from early game chaos of money not being deposited and getting robbed that I was going for

Priority 4 - Limit !nuke, !strike, !robinhood to #degen-alley

Just to stop people from secretly nuking a channel, I think this command should be only usable in public as to allow people that 10 second chance to change channel name. Alongside this we could maybe make !robinhood and !strike only usable in the public channels so that people see exactly who is using them against them

Priority 2 - !channelhack command to interact with custom channels

Ability to !channelhack #channel-name-here to get added to view/chat access for a private channel after playing the hacking minigame

bottom part seems done
Ability to !kick @user to remove someone from the channels custom role if you find someone that you no longer want to be able to view/chat ie a hacker

Dark Web role isnt removed

Describe the bug
Dark web role isnt removed after using ransomware

To Reproduce

  1. Purchase ransomware
  2. Use ransomware
  3. send '!ransomware'
  4. Role remains

Expected behavior
Role should be removed after single use

Can be ignored, maybe 2 months in the future revisit - Potential Automated Minigame

Every 4 hours bot would check both poker bot and unbelievabot for money, would remove money from both bots and combine the total together as a prize pool
if prize pool is greater than 0, run the minigame
Message to degen-alley @everyone Time for a minigame! Everyone !roll 1000 now for a chance to win! Only first !roll counts!
Wait 5 minutes, gather if user !roll 1000 the number displayed once, ignore all additional rolls from same user or any rolls not based on !roll 1000
Message to degen-alley @everyone Game is closed, time to pick the winner! Winner is the closest one to my roll!
Bot does !roll 1000
Bot takes number and does "Biggest number - smallest number" based on Users roll and Bots roll
Lowest number closest to 0 wins
Message to degen-alley @everyone @player is the winner!
Bot gives prizepool to user

Robbery Victim counter to Robin hood

EffinOwen: since SOME people dont like the silver whistle currently, would it be possible to add a 10 minute role removal on the @robbery Victim role and assign it to people who are the target of robin hood?
[4:20 PM] EffinOwen: LMAO i dont know if its possible but maybe if you use the silver whistle and first place already has a robbery victim role, default to second place and do theirs instead, etc to third place and so on?

!ransomware automation

!buy Ransomware item
!use Ransomware -> grants "@dark web" to enable !ransomware command
!ransomware -> remove all members of the "@dc Bank Member" role
done

Broke robinhood

Describe the bug
Robinhood is broken, missing a ctx in format str

To Reproduce
Steps to reproduce the behavior:

  1. Buy silver whistle
  2. use silver whistle
  3. try to call !robinhood
  4. See error

Expected behavior
robinhood function to work and role to be removed

Priority 3 - !rename channel command to send a message to the #zion hacker channel with an update message about a channel name and owner

Currently when a channel name gets changed I go into the #Zion channel where the list of channels and owners are and update it manually, if a user uses !rename and it sent an automated message in a format of :
@user renamed their channel to #this-name-now
That way when users rename their channels, it's not on me to manually update that hacking channel, and if users notice someones hacked into the channel they can just wait till theyre done hacking and then rename to avoid being nuked

!rename channel-name

I'm guessing because I deleted and remade a channel on here that the database has a record of my old channels name and so it's locked to that channel name and I cannot privatize my new one, if there was a way to force an update of what the channel name is supposed to be in the database, could probably do something like !updatename #new-name-here -> checks database for existing name and if it exists errors out, otherwise proceeds to takes user who requested it, finds their name in the database and selects that table line, uses that name as the old name -> new name variable for setting a channel name in the discord, or something similar to this?

I'm hoping something like this would allow a channel to be renamed while keeping all other command functionality intact, could use similar whitelisting that the nuke currently uses to check for eligable channel names maybe? Or only make it rename the channel that the command was originally run in? This wouldn't even need to be checked by the owner, would just have to check it against that channels user group, so anyone in that group could rename a private chanel, including hackers which could be a fun little fuck you, hack into someones channel and rename it to "bunch-of-losers" or something

Priority 1 - Cleanup automation

~~ What the bot needs to do ~~
When channel gets nuked, owner of channel would have the @Home Destroyed role added

When users have the @Home Destroyed role, they cannot use !invite (not sure if this is setup yet)

~~ What the player needs to then do ~~
To remove @Home Destroyed user buys the Cleanup Crew item

User is now able to !invite people back into their channels custom role, user must !invite @Themself to regain access to the channel, this will be part of the cleanup items description to !invite themselves and all their friends back to the channel

NO !CLEANUP COMMAND NEEDED

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.