#🧩-plugin-development
1 messages · Page 49 of 1
and you're set
just make sure you bundle nodejs libraries, and dont embed them as is
because it's gonna be massive
you also need to re-build NAPI modules to arm64 and arm32
remake discord desktop in react native 
vendroid but real
discordrn but it doesnt suck
Is there a way i can prioritise a plugins loading so that it loads earlier than others/as fast as possible? i'm trying to add a custom loading screen to my theme through code but takes a while to actually show up since the plugin starts a few seconds after the client loads
it has nothing to do with priority
start() is called after discord is ready
use the startAt property to customise when you want your plugin to start
Oh awesome, thanks ;3
/mewing
You're STILL on this?
Yes i am
But im using tenor now
Bc it has more variety
Of mewing gifs
I'm sorry you're dumb too 😭
Is there a way i can get the react component for the sticker and create a custom fake sticker element? I tried using findbyprops but i probably fucked it up in some way, if someone knows lmk :3
This mf does NOT want to render
I have no idea why lmao
The patch is fine, it's just not returning the component or logging at all
Regex?
Wha
Is it regex 😭I don't know what it is lol
🤝
Knew it
Oh my fucking god i am the DUMBEST MF ALIVE

Still struggling on this tho lmao

regular expression
Fr
progaming
gamr

Is there a utility i can use to store data values that isn't just a settings option?
I request your aid in debugging this, i have an api key i just hid it bc last time people got mad at me for leaking it
The error is whenever i type /mewing i get /mewing and not a mewing git and i also get the error (first image)
Here are the docs (sorry that im asking for help ik the error is going to be smth stupid
Wait tenor is google?
Apparently yes
Add a .catch at the end of the fetch call so you can see the error
Real
i was about to ask a html variable question
but then i realized i was using :root and not body
Why?
Thanks
O will do thanks
Its really specific and its kinda stupid
If you pr this it will not get merged
I dont wanna merge it i just wanna make smth stupid
Ok then go for it
Btw im sry that im interupting ur day but can i send you the script cause now after tweaking it it wont even display the command and / is typed
hi all
Yo wsp
well first, use the commandsapi if you haven’t been already
I am, is it this dependencies: ["CommandsAPI"],?
pretty sure iirc
Ye im using that already
Ik the issue lo.
lol
@jagged matrix sry for ping. What is this?
that doesnt rly say much
Whenever i /mewing this pops up. In another plugin of mine where i pull sunset it does work, but this one just gives me a type error
Idk what do
_ _
take after the morekaomoji plugin if you’re struggling adding commands in general
commands: [
{ name: "dissatisfaction", description: " >﹏<" },
{ name: "smug", description: " ಠ_ಠ" },
{ name: "happy", description: " ヽ(´▽`)/" },
{ name: "crying", description: " ಥ_ಥ" },
{ name: "angry", description: " ヽ(`Д´)ノ" },
{ name: "anger", description: " ヽ(o`皿′o)ノ" },
{ name: "joy", description: " <( ̄︶ ̄)>" },
{ name: "blush", description: "૮ ˶ᵔ ᵕ ᵔ˶ ა" },
{ name: "confused", description: "(•ิ_•ิ)?" },
{ name: "sleeping", description: "(ᴗ_ᴗ)" },
{ name: "laughing", description: "o(≧▽≦)o" },
name: name of command
description: what will send
simplest it can get really
Im doing that
and what’s your “getMewingGif” set to
Wdym?
what do you have in ‘getMewingGif’
async function getMewingGif(): Promise<string> {
const res = await fetch(`http://api.giphy.com/v1/gifs/search?q=mewing&api_key=lXMTofVxIbhMIJDU82dS8KwK3SWPtyDx&limit=5
`);
const data = await res.json();
const gifUrl = data.results[0]?.media[0]?.gif.url;
return gifUrl;
}```
That
just use the api endpoint Ven sent

why is this your epic plugin idea
meowing gif better
@polar cave
fr
const getMewingGif = async (): Promise<string> => {
const res = await fetch("https://discord.com/api/v10/gifs/search?q=mewing&media_format=gif&provider=tenor");
const data = await res.json();
return data[0].url;
};
@worldly summit i apprecite it fr do. But how do i solve so that when i use it it doesnt use the same gif
Will do sorry for my carelessness
why would you want it to use the same gif
just hardcode the url
if you want the same gif
I want a different gif
why do you want this gif
TheKodeTode
why do you want a mewing gif
that's an unusual form of shitposting
Bc i want to and my friends send a lot of mewing gifs
oka...ay
lol but how do i fix it lol
i suggest new friends /j
you're basically asking to be spoonfed
try to debug yourself
look at the actual error
figure it out
I dont have an error, the code works with the api you have given but the gif is always the same whenever i use it. How do i make it to display a different gif everytime i use it?
^works
do you understand at all how javascript works
No lol
lmfao
then go learn Javascript
don't ask for people here to spoonfeed you JavaScript help
there are other servers for that
ok mb
just hardcode it then
gdamn
you want random gif? or what
Trying
Yes random mewing gif
😩 okay wait
i will only provide help if it's a cat gif 🐱
lols thanks so much
do u know what hardcoding means
but nobody will spoonfeed you
hopefully
const getMewingGif = async () => {
const res = await fetch("https://discord.com/api/v10/gifs/search?q=mewing&media_format=gif&provider=tenor");
const data = await res.json();
const gif = data[Math.floor(Math.random() * data.length)]
return gif.url;
};
Yes its when you put it in the physical code i think
Thank you so much
yeah lol
Just the code file
^
this
do you understand other languages well
💀
Ik a bit of python
thats like saying "hey whats up how was your day" to a chinese person
that doesnt know english
javascript is just python with {}
O
yo
for commandAPI, whats the thingie for selecting a user?
as in like
cause i know this doesnt work
alr
Sends a random cat gif
fuck
also any idea why my minky command isnt naturally showing up when i type it? i have to go to the / command menu
/minky
heres the minky code incase somebody needs it
okay fine dont embed
this took so long pls applause me
(express api to auth spotify and get what user playing rn)
idk about contributor but I gave programming
that works 
is this about specifically coding plugins for vencord or is it for programming in general
because i have a question about vencord's api
my question is: Are logger#debug calls shown by default in the discord console?
Nevermind i skill issued myself
you need to turn on verbose iirc
I love this, it's so nice
I figured that out, thanks though :)
^
Btw, is this channel for making vencord plugins or programing in general?
both
Is #1028106323113545841 for developing vencord itself or plugins as well?
yeah for both too
I can grant you programming role
I opened a ticket for access there because I wanted to discuss plugin development, it would have been the wrong move if it was only for vencord internals
as long as you are not allowed it's fine
wdym by "not allowed"
lmao no idea how that happened
right now i'm trying to port plugins i used to use on replugged over to vencord
which one?
uh we are have one like that
i made a couple plugins for vencord myself but they're all either themes or already in vencord
EmoteCloner
I couldn't find it
Ah interesting, thanks
you can steal emojis using it
Btw, I might have a PR for NoMosaic to fix a minor issue i have with it, but only maybe
gimme a sec
i wrote the replugged version of that plugin
copy emoji id isn't that useful tbh, you can just copy the link and take the id from the link
idc about copy emoji id, i just want to steal emojis lol
it's slightly more effort but like how often do u need to copy emoji ids
yeah we got that lol
does vencord let you import a css file into a plugin
true need to fix flashbang 
I have no idea how to honestly
yes you just import "./styles.css"
in replugged you could just
ah thanks 
well you're stopping discord from rendering their fallback, no?
next time why not just https://tryitands.ee
fair

we only stop when we force update the component to "regen" discord
either way the issue is I'm using dates and stuff to handle when it crash loops too fast
and that's horrible
to dev a plugin that's already in the main fork do i copy it into userplugins
modify it directly
The pnpm watch doesn't watch that directory but oh well
yes it does
saving doesn't seem to do anything
I checked if all of these have vencord equivs but didn't find any. Please correct me if there are vencord versions of any of these
https://github.com/asportnoy/tone-indicators
https://github.com/lexisother/replugged-plugins/tree/master/plugins/noInlineLinks
https://github.com/FedeIlLeone/replugged-plugins/tree/main/plugins/EditMessageAttachments
https://github.com/Puyodead1/replugged-stafftags (I know that MoreUserTags is similar but it really bugs me that they don't follow the role color)
https://github.com/GriefMoDz/replace-google-search
If there aren't i'm interested in porting them
Nvm it works now sry
tone indicators won't be merged?
whatever you don't like about moreusertags you can turn into a setting for the plugin
correct
ah that
i was just grabbing screenshots of my quibble with it
it's very niche and not very useful even for people in that niche imo
if you are in a community that uses tone tags you'd know them already wouldn't you
Nice opinion, I respect it, but personally I find it helpful
people who would use that plugin would likely already be well versed with tags
I don't have enough space in my head for vim controls, let alone tone indicators
and there are some weird ones that people use rarely and i'd rather just hover over it than have to look it up
i think that's better, you can add it as a setting to the vencord plugin. how do you determine which colour to use for the text to make sure it has sufficient contrast?
I'd look at the replugged-stafftags code. Idk what solution the original dev came up with but it seems to work well.
But I respect that. If you don't want to merge it, I can leave it as a #1032200195582197831
Unrelated to that specific plugin but i made the STATIC type for NoMosaic responsive with css
Is that valid
Because it should fix both issues that you have to choose between
wait nvm i lied
rip
it doesn't work
sorry for the ping
doesn’t work
someone forgot to run code.fix() when developing code.fix()
lemme speak to their manager

class Code {
fix () {
this.fix();
return this;
}
}```
like componentDidCatch isnt even being run when I render again and it errors
i mean you're not really supposed to be doing what we do lol
They have a function
export function getContrastYIQ(hexcolor: string | undefined): "#000000" | "#ffffff" | undefined {
if (!hexcolor) return;
const r = parseInt(hexcolor.substring(1, 3), 16);
const g = parseInt(hexcolor.substring(3, 5), 16);
const b = parseInt(hexcolor.substring(5, 7), 16);
const yiq = (r * 299 + g * 587 + b * 114) / 1000;
return yiq >= 128 ? "#000000" : "#ffffff";
}
i'll credit the original source in my pr
check the license
but also that's probably not theirs
it should at least call componentDidCatch if react worked correctly

lmao
i'll credit this one
bc its older
it is already solved but ven hasnt merged
aha I got an idea
I'm gonna try abusing setImmediate tomorrow again
maybe react won't shit itself now
alr now the question is how to display the tag color
the way it works, idk if i'll be able to go in and specify the color of the tag at creation
I fixed crash handler
@dull magnet this is horrible https://github.com/Nuckyz/Vencord/commit/2d54b1b4ecc3d73528026e3e8cf790fa4c8b0e09
no flash bang anymore though
this best map for roblox >:) -- Define the map size
local mapWidth = 100
local mapHeight = 100
-- Function to create the terrain
local function createTerrain()
for x = 1, mapWidth do
for z = 1, mapHeight do
-- Place grass on the ground
game.Workspace.Terrain:FillBlock(CFrame.new(x, 0, z), Vector3.new(1, 1, 1), Enum.Material.Grass)
end
end
end
-- Function to create buildings
local function createBuildings()
-- Example building
local buildingSize = Vector3.new(5, 10, 5)
local buildingPosition = Vector3.new(25, buildingSize.Y / 2, 25) -- Position the building in the center
local building = Instance.new("Part")
building.Size = buildingSize
building.Position = buildingPosition
building.Anchored = true
building.BrickColor = BrickColor.new("Medium stone grey")
building.Material = Enum.Material.Metal
building.Parent = game.Workspace
end
-- Function to create trees
local function createTrees()
-- Example tree
local treePosition = Vector3.new(10, 5, 10)
local tree = Instance.new("Part")
tree.Size = Vector3.new(1, 5, 1)
tree.Position = treePosition
tree.Anchored = true
tree.BrickColor = BrickColor.new("Bright green")
tree.Material = Enum.Material.Wood
tree.Parent = game.Workspace
end
-- Call the functions to generate the map elements
createTerrain()
createBuildings()
createTrees()
lol
What is \i as it's used in so many regexes and match functions here
It's not a real regex and it's not a js char escape sequence
Oh huh
What's patch helper
Oh intreguing
ew vencord companion isn't available on vscodium
smh my patch keeps not replacing anything
Does anyone have an idea as to why substrings and slices get rid of formatting wruf in a message?
I'm trying to tidy up this randomize function but the way I wruf have it set woof up rn completely guts formatting. I tried using substrings instead of slicing and re-stitching but that didn't work either
cause like, obviously restitching bark the words back together would gut formatting, but if I preserve, essentially, all of the string, wouldn't that woof also preserve the enter key presses?
what do you mean by formatting
having multiple paragraphs
the way the stuff works right now, it makes it all a text wall
of awrf course, turning it off means that I can avoid the issue since it doesn['t slice it up
it basically deletes new lines
can you send the relevant piece of code?
yea one moment wruf
// Splits up the replace field into an array which it then randomly selects to replace according to the regex used. Uses ';' to denote splitting of options.
let options:Array<String> = rule.replace.split(";");
let randContent = content.split(regex);
//console.log("This is the hell that is split content: " + splitContent);
let newContent = "";
for(let i = 0; i < randContent.length; i++){
let rand:number = Math.floor(Math.random() * (options.length - 1));
//console.log("This is the random number chosen: " + rand + "\nAnd this is the random Option chosen: " + options[rand]);
//console.log("Here's the new content word for word: " + newContent);
newContent = newContent.concat(randContent[i] + options[rand]);
}
//console.log("Here is the new content: " + newContent);
content = newContent;
continue;
Done with this, submitting as a pr now
Should i add myself to the dev list for moreusertags
since i spent 3 hours working on it
Oh ok
Thanks for all the help and I'm happy to be here writing code on vencord
Tbh it was more intuitive than replugged and that's saying something
fwiw it is real https://www.regular-expressions.info/shorthand.html#xml
it's just that it has a different meaning in vencord patches
In a regular expression, shorthand character classes match a single character from a predefined set of characters.
probably the best theme for vencord
"probably the best theme for vencord" shows an ugly and painfully laggy theme
There is no "best theme for vencord" because everyone has their own preferences, when in doubt just make your own ~~and make it simplistic ~~ 
this
You can only say that because I never finished Discorb. Some day, there will be a brave soul who realises Chloe's dream though
Very underrated theme
Unironically this would be really complex in css
I gave it a go but ended up giving up. This was my first go at it, I managed to get it a bit more random looking, but I just didn't think I could make it work as something that was actually usable while still maintaining the hand drawn effect
I think you could get it less regular if you use some nth-child(3n+1) at well chosen places
Very minimalist
How do you manage to have different colors for each message

nth-child probably
One of the attributes ends in the message id, so you can just select each message id that ends in 0-9. It's not quite random, but it was a lot less homogeneous than any effect I was able to get with nth-child selectors
has anyone encountered or tried tackling the bug where clicking on a message reply link which references an old message (a day or two old), doesn't scroll your screen all the way to the message itself?
might try to figure out how to fix that annoying reply scroll bug on discord
Unironically
It's about the reaction profile viewer thing plugin
ah, thanks!
Are you saying that that causes the bug?
yep, i can reproduce it, scroll works perfectly fine without that plugin
Wtf that's so weird
ah it can also be worked around by enabling Reduced Motion
im guessing we need to wait for the scrolling animation to be done before we call forceUpdate(), might look into this tmr
I was messing with themes, awrf and bark I found one that I really really like! But, it seems to conflict the the awrf Horizontal bark server list theme I have. Would there be an easy-ish way to use css trickery to get the unread dots to appear over the servers? or should I just use another theme (image is what i mean) awrf
apologies
#🏥-vencord-support-🏥 message
is this bannable? definitely seems like selfbotting but i just thought i'd check because it's sick asf
it's fine
nah its not doing any actions
other than updating the rich presence but thats like the point of a rich presence in the first place
This shit is so useful
I made a script to make plugin templates because it took a while 💀
Does anyone know how the Discord UI determines your timezone? (Potential XY: I use resistFingerprinting, which also changes my timezone to UTC 🙈 I'm trying to change it back to my local timezone using either a Vencord plugin or a userscript)
link for that theme?
too much text
^^i believe it's quite different from status
it's meant to be used by games
why do you want everyone to see how chronically online you are though /lh
true
I once made a userstyle for a website using border-images that had a crayon type of drawn look
via browser apis
make resistFingerprinting not change your timezone
Got it. So I'm either stuck with that or overwriting the object that Discord uses to get the localized time?
it's likely not possible
it's just browser apis to get time
you'd have to monkey patch browser apis but at that point you should just disable the timezone changing
love this, would like a dark theme of this
I'm trying to edit the hideAttachments plugin to hide all the attachments in specific channels
How do I select all messages in a channel?
I don't now TypeScript that well but I know programming so the syntax shouldn't be that much of a jump
Here is basically what I'm trying to do (this doesn't work, obviously):
flux: {
async CHANNEL_SELECT({ guildId, channelId }: ChannelSelectEvent) {
if (channelId === "(specific channel)") {
for (message of getAllMessages()) {
toggleHide(message.id);
}
}
}
},
what are getAllMessages and toggleHide
I made up getAllMessages and toggleHide is this:
async toggleHide(id: string) {
const ids = await getHiddenMessages();
if (!ids.delete(id))
ids.add(id);
await saveHiddenMessages(ids);
await this.buildCss();
}
It's in the exports
Not sure if I can use it or not
getAllMessages is probs MessageStore.getMessages
Just used it as a placeholder
Thanks
so basically you want to "hide" all messages in a certain channel?
Hide the attachments from them
you can do that by just patching Message probably
Is this way not easier?
I'm just piggybacking off the hideAttachments plugin
Also it will let me unhide them if I want
Which is important
the issue with that is you're calling toggleHide on every message which is a database write on every message
you should probably make a bulk toggleHide
need to look at how hideattachments currently works brb
Oh thank you so much
css lookd like
yeah, so calling toggleHide on every individual message would write to the database a lot of times, you should make a separate function which takes all ids, adds all of them to the id list, and then writes to the database once
Okay that makes sense
Are you willing to help me understand how to do that or is should I look somewhere else?
looks as simple as ```ts
async toggleHideBulk(newIds: string[]) {
const ids = await getHiddenMessages();
for(const id of newIds) {
if (!ids.delete(id))
ids.add(id);
}
await saveHiddenMessages(ids);
await this.buildCss();
}
I think I might not even make that a function since I can't access this
(also you'd probably need to subscribe to MESSAGE_CREATE to automatically hide attachments on new messages while already in the channel)
see how other plugins do it ig
before i leave just wanted to say if youre fine with only using the channel name for identification you can also just ```css
.chatContent__5dca8[aria-label="channel-name (channel)"] .embedWrapper_c143d9 {
display: none;
}
Got it, thanks for your input
How do I use this?
getMessages(channelId)
Oh I see
looks like it returns the 60 most recent messages in the channel
Sorry for the dump but this is what I ended up with (I did not do your suggestion on updating it all at once because I couldn't figure out how):
Is there anything blatantly wrong about what I am doing?
It doesn't work
anyone can tell me how i can get these emojis as an normal ones?
I can do #include <ionstream>
Replace the spritesheet
you think i know whitch ones this is?
and how to do this

yes
The emoji images are loaded from a spritesheet, you can use css (maybe)? or it might be easier to just patch the code to load the old or a custom one
car
No lmao

please
Dawg
No one is gonna spoonfeed you a plugin or theme, if you want something then learn how to make it 
now?
you do it for me or this is you
please
NO 😭
For every gif you send i blow up a school
swapping out normal emojis onto that spritesheet would be quite the boring task
if u rly want it u would hav to figure out how urself
😭
see @balmy sky people want you to help me
Dawg
Take my word for it when i say literally nobody is gonna help you skid your way out of this 😭
dang fine
i will just try to wait till discord will make it avaible to use
is there a new utility for extracting webpack module src
i havent touched anything since like oct 2022
wp.extract still exists
no but like for all modules
so i can browse src
i was relying on this but discord.sale is dead guh
guhhhhhh
if you really want you can clone https://github.com/Dziurwa14/discord-scraping with --depth 1 --branch canary
remove depth 1 to download two morbillion zettabytes
I have a plugin for it that I'm pretty happy with https://github.com/Kyuuhachi/VencordPlugins/tree/main/WebpackTarball
We need an E2EE plugin
yeah
there was one made for aliu but the setup was so convoluted it's basically unusable
theres no way you went into the programming channel to ask for someone to do something FOR you
especially for a task as easy as that
for shame,,,
Fr
giving me the urge to make a neocities page
✅ obnoxious background
✅ programming font
✅ oneko.js
✅ centered div
yep seems good
progaming
progaming
progayming
floated image in the middle of copy
It's ruined
Hello, not sure if its the right channel, I just wanted to know if it was "easy" to make my own plugin to have the message input with a red outline when matching a list of server ID. The main goal is to avoid sending shitpost in my work/serious related channels by accident. I have basic knowledge in html/css/js and already made some chrome extensions
.container__037ed:has(nav[aria-label="Vendor (server)"]) .scrollableContainer__33e06.themedBackground__6b1b6.webkit__8d35a{
outline: 2px solid #F10000;
}```
ohh wow thank you, so it was even possible only with css
And if someone wants, to do the same but for the DMs :
.container__037ed:has(h1 > div[aria-label="write_user_id_here"]) .scrollableContainer__33e06.themedBackground__6b1b6.webkit__8d35a {
outline: 2px solid #F10000;
}```
made my pi-hole contain a image of my cat when given a specific url
Hey guys! im wondering how one would make a plugin that makes every user/webcam pop out, as of right now you can only pop out all of discord, thanks! any help would be appreciated!
Edit: This would be for having different users webcams on a different monitor, whilst also watching a screenshare
is there a plugin that gives you all soundeffects
Discord started sending get requests when I listen to Spotify playlists, but the api returns me a 403 due to geographical location, but if listen to the tracks from "liked songs" Discord doesn't send any get requests in this case and SpotifyControls is displayed, so is it possible to make Discord get track information from playlists just like from liked songs?
And no

const Patch: NavContextMenuPatchCallback = (children, { channel }: { channel: Channel; }) => () => {
const group = findGroupChildrenByChildId("channel-copy-link", children);
group?.push(
<Menu.MenuItem id="jumptofirst" label="Jump To First Message" action={() => jumpToFirstMessage(channel)}></Menu.MenuItem>
);
};
function jumpToFirstMessage(props)
{
let guildid = props.guild_id;
let channelid = props.id;
let url = `https://discord.com/channels/${guildid}/${channelid}/0`;
var link = document.createElement("a");
link.href = url;
document.body.appendChild(link);
link.click();
link.parentNode?.removeChild(link);
}
this is the code i made for the "jump to first message" plugin request. It works, but when you try to jump to it, the client temporarily reloads before it jumps to the message. Is there anything i can do to fix that? no errors in console or anything
It might just be taking a while to load because it's going through a shit ton of messages
Not sure
I totally knew that existed 
Well i'll try that, thanks
Amazing
Oh yippee it works
thanks @austere mauve for this #🗳-plugin-requests message
trying it out and seems promising, just need to figure out how to tweak it a little bit
yeah its kind of weird to use as it is so i never really bothered PRing it
yeah I've been using css to cut off the 'today at' text using direction:rtl and max-width but that makes the timestamp all jumbled with this xd
for the most part this works well but need to have a way to have a custom time format while also having customization for the relative dates like today and yesterday and then I'd say it's pr ready
and adding a link in the settings to the moment docs obv
this might do it
yeah I saw that but brain smooth
also would be cool if it applied also to the timestamp that shows up when you hover on a message 
nvm it already does with the compact mode timestamp option
does anyone here use AWS S3 for storage in nodejs
I just want to get my credentials from aws and start using the s3 client but amazon 'guides' are SO FUCKING BAD and unclear I simply can't understand what to do. More specifically, I already have an IAM identity center profile and group registered, but I can't find anywhere to set 'administrative permissions' and guides are like "go to this tab" but "the tab" doesnt fucking exist and they make 5 different guide pages just to do 1 simple thing
uhh use an alternative
way cheaper and probably better documented
(and fuck amazon)

interesting. i jsut managed to setup access keys though. do you think those are better than amazon? it says its cheaper too
i just wonder about access speed from south america on both
and aws is so unnecessarily fucking complicated its funny
ill probably try one of those 2
ok that was easier than I thought, I now have perfect timestamps :hypershiggy:
it bothers me that i have to learn AWS
it should just be like. a server i can ssh into and do things on
you don't need aws
I like Hetzner VPS, but OVH is good too
hetzner's awesome
everything in aws is stupid and requires 100 steps
(my friend works for hetnzer)
hehe
i was about to use aws SES email service but they simply denied me for no reason. i won't even use marketing emails i explicitly stated it would only be used for password recovery. now i'll use sendgrid
i think ill use cloudflare r2 seems way better than s3
I tried to make rini's customtimestamp plugin have better settings and stuff but I guess I failed this iq test
screw it
we already have that it's called vps
true..
wsgg
was curious but how long does it normally take for a pull request to go through?
real
its almost been 1 month i have had to rebuild every time to makea fukin cat go faster 😭😭https://github.com/Vendicated/Vencord/pull/2126
Vencord kinda has a maintenance issue
ohh icic
and how does someone become a maintaner?
BAHAHAH
alrr
no it doesn't?
I'm feeling retarded trying to implement cloudflare r2 (media bucket) in my existing nodejs project :/ why is this shit so complex
asking for help in their server
hope i dont get bullied
if maintainers aren't busy then why does stuff take forever to merge 🤔
bugs are fixed / bugfix prs are merged within less than a day
these sorts of prs to oneko were rejected already, and its super low priority
low priority features not being merged timely != maintenance issues
ideally they would be, no? I'm not saying the project isn't actively worked on lol just that it could use some help
Maintenance includes deciding and enforcing project direction
most older prs are either unmergeable because the code is awful or there's little interest in them
#🤖-bot-commands
Is there a way that i can toggle deafen from a plugin
I couldn't find and utils/times that other plugins do it
im aware that this answer isnt helpful but there has to be
Yeah there definitely is
actually I will post this here as well, as not everyone can write in #👾-core-development: #👾-core-development message
l.default.toggleSelfDeaf()
idk if this has been said but cloud setting sync fails when you update your client you have to disable and enable it again :p
says enabled on another client :p
ME
There is a pr
Ohh wait
That was your pr
I remember a feature request
cursed
I hate being dumb, I've been trying to improve rini's customtimestamps https://gist.github.com/rniii/2dcedb15142f25683f855311ecd3abb6 but I have no idea what I'm doing
I have no idea how I would add a plugin setting for calendar formatting
I have hardcoded calendar formatting here and I added an about component thing for fun but that's all I was able to do with my zero amount of skill
iam going to nuke the nuke off the nuke nukers
shhhh
lmaooo i thought this channel name was "programming"
27 years
🇹 🇸
Pretty sure it was coding before
yeah it was
Best devilbro code
I don't know much about js but I know css and their css is just pure horror
devilbro
wtf is that
the Array.from in question:
he has 3 billion polyfills that assume the user is using chromium from 2016 and betterdiscord from 2018
damn just as i was gonna commit the changes i made to fix all the plugins nuckyz and ven did it :Cry:
im not even kidding btw
he has so many workarounds for 'legacy' bdapi that is literally like 4 years old at this point
did the permission viewer get patched???
v+ needy 1169675542505730071
just thought about a scenario
a new developer comes to betterdiscord and to get a idea how to make plugins developer looks at devilbro code
that cant end well
devilbro is threat to society
but vennn what if someone uses 5 year old discord version with devilbro plugins
you have to be backwards compatible
i hate devilbro
Geniunely that could end really badly 💀
Like people could get so intimidated out of coding just by looking at devilbros code 
Trueee
Eitherway its a disaster
соск
why is the text so small 😭
Ftfy
lgtm 👍
ugh what has the alphabet mafia come up with this time
its lgtmqwertyuia++ 🙄
looks gay to me
wokecord...
what languge is vencord programmed in?
Mostly typescript
oh wow intresting thanks
which isnt really a language afaik
yeah
its kinda like typescript in the sense of adding more stuff on top of js syntax
they use wokescript
oh okay lmao
(/s)
it's ok we all make mistakes
(/rly?)
what's that one mean
really
what are the other two letters
new indicator just dropped..
nuih uh
someone pr to that new plugin
^
omg i just googled it and it's totally real
you can tell it's real because it's impossible to edit webpages with devtools
there was no way i could have doctored this photo in any way
ngl i fully believed u
there's so much old web standards bs
well of course you did wokescript is real
It's real in our hearts
I WILL SKIN YOUR ENTIRE BLOODLINE
Good luck with that

🥺
Are you fr
Anyway, nsfw content above ^
I love how devtools just randomly fucking decides to pause my client for no apparent reason
vban 7 @quasi cove bad quality porn
Done! 
Homie wanted 4k 🙏 💀
I got real videos I won't show them here cuz I get ban
as opposed to fake ones?
I don't even know 💀
Yapping
porn sucks dont post anything get a fucking life
thats not very hard considering he's unemployed
my dad is dead
Then I make more then ur whole family
btw u gotta be 13 to be on discord
Am older as 13
Thanks for Watching ❤️
Subscribe and Like to support❤️
.
.
.
.
.
.
.
coldest moments,emotional damage,coldest moments tiktok compilation,badass movie moments,coldest moments tiktok,badass,badass movie moments tiktok,badass moments tiktok,sigma moments,sigma,coldest moments on tiktok,coldest moments compilation,tiktok coldest moments,badass mov...
Military edit 4k 🔥 🔥 🔥 🔥 🔥 🔥 🔥
Nah
vban @pallid cradle 12 years old
Done! 

he deleted the images lmao
Is there a way i can stop the message create flux calling multiple times when only one message is sent?
can someone help me?
i want to modify one of the plugins called messageclick actions
@dull magnet

could u possibly help pls
line 101-102 moyai plugin ig
could u help me modify vee's plugin pls
its just super quick

#rules 5
also you aren't gonna get help you if you keep asking random people
just say "i need help doing x, can someone help me?" and wait paitiently
its not random, its the owner of the plugin
you are pinging people for them to help you though
yeah, thanks for telling me
so can anyone help me modify a plugin (its really short)
ye
also is it possible to modify plugins for personal use?
scary problems
Please read https://dontasktoask.com/ like 5930843294 times until it clicks
here let me fix it then
so can anyone help me modify a plugin? i am trying to modify a plugin from vee/vending.machine called "messageclickactions", its a good plugin but i want it to delete my message when i click on the message, not when im holding backspace and clicking. that takes an entire hand repositioning.
That's a fairly simple modification, if you don't have the means to do it yourself then you shouldn't go on a dev build
yeah but i don't know how to code unfortunately, i hope to start but as of this time i need someone to assist me with my problem stated above
whats that for?
If you don't already know what you're doing you're gonna run into alot of issues and not get any support for it. But it's your issues, not mine i guess lmao
Dev build
If you want to modify a plugin or any other source code you need to build vencord from source
is there any tutorial on doing that? sorry for being slow in the head, im just eager to modify this
The link i sent you is the tutorial
These instructions are only for advanced users. If you're not a Developer, you should use our graphical installer instead.
No support will be provided for installing in this fashion. If you cannot figure it out, you should just stick to a regular install.
Yup
I just have a question on how I would go about modifying message content from other users from a plugin. The way I am doing it right now is extremely sketchy and I just want a guide on where I should go.
Are you talking about client side?
Yes, not server side (dont even think thats possible)
If you modify a plugin there's a big chance you could fuck it up. Best case, a small bug, worst case you get banned for api abuse. All plugins built into the vencord client are verified safe to use, that's why dev builds are only for devs
oh wow.......
Your best bet would be to patch the react component for the message
good thing u told me that
The way I am doing it right now is just getting the selected channel and then getting the messages, iterating through and regexing the content. But I have a feeling this is extremely bad way to do it.
so do i get a dev to do it for me?
Oof yeah that's uhhh
Not good
💀
my intuition actually helped me for once lets goo
Even if you got a dev to do it for you, you'd need a dev build to actually load the changes. You're probably better off just forgetting about it
or actually learn js for a while, come back, then make it yourself
Is there any resources I can use to learn creating patches? I tried looking through discord's javascript in the dev tools but it's really giving me cancer
damn, so scratch the idea. its impossible to do safely for a freshie like me?
If you want i can walk you through it in dms
Yup, sadly. It's better this way overall though
yes pls I have been trying at this for 4 hours now 🙏
even for the smallest change of changing 2 lines of code, its that bad
where should i start learning js?
hey guys! i asked for a plugin request, i might wanna take it down if its not possible. Anyone willing to tell me if a plugin is even possible to do? (Popout Screens for individual users and screenshares)
someone dmed me, saying that if it was possible it would have been done already 😢
yes it's possible
plugins are sort of javascript (typescript)
so if you know js you can probably make a plugin
but plugins work differently in vencord than other mods or what you might be used to
https://github.com/Vendicated/Vencord/tree/main/docs or https://gist.github.com/sunnniee/28bd595f8c07992f6d03289911289ba8 to get started, https://github.com/Vendicated/Vencord/tree/main/src/plugins to see how other plugins work
vban 1 755320203453136897 self-harm image in pfp
Done! 
【Dont dox me :scared: 】
I regret my message logger 😭
he fucking sucks at programming
is there a way to set profile effects client side? The user Object only has avatar decoration data, but not profile effects.
do u guys know a way to reorganise roles faster than drag and drop one by one ?
i have to move 40 roles rn, its gonna be long af
i trid to hold ctrl, shift, alt, caps lock etc etc etc 😔
Probably not
How do i get the chosen value of a select option type? 
I defined this setting, and i'm trying to use it as an index
But i get this error
Am i stupid 
try adding a default
like value: 1, default: true
Oh it works now
Thanks :3
Makes sense lmao
Is there a way that i can actually pass the value that the setting has been changed to into the onchange? right now the loadpreset function is just getting the settings.store value of the setting, which doesn't update until the modal closes so it doesn't work
OH YEAHHH IT WORKS
Sick
onChange gets the value as argument, doesn't it?
Yee i realised that lmao
This will come in handy whenever I decide to revisit one of my scrapped ideas
Can I get confirmation that VOICE_STATE_UPDATES ONLY fires on join/leave/(move) events?
and is there any clean way to get last channel before channel move events in that case oldChannelId
or do i need to track that myself
You could just add logging and check
thanks @gritty swan i appreciate your assistance in my testing
if (state.oldChannelId === state.channelId) return;
should solve this issue anyway?
Probably yeah
this is something
Do not hack over Discord's existing message types it will result in whatever the fuck this is
okay this is Strange:tm but
I am trying to send client-sided messages into a voice channel text-chat, and they won't be registered unless I have opened the voice channel previously?
This only happens if they aren't flagged as ephemeral
Self move between channel events aren't sent through voice state updates
hmm
**index.tsx: **Lines 88-102
// For every user, channelId and oldChannelId will differ when moving channel.
// Only for the local user, channelId and oldChannelId will be the same when moving channel,
// for some ungodly reason
let myLastChannelId: string | undefined;
function getTypeAndChannelId({ channelId, oldChannelId }: VoiceState, isMe: boolean) {
if (isMe && channelId !== myLastChannelId) {
oldChannelId = myLastChannelId;
myLastChannelId = channelId;
}
if (channelId !== oldChannelId) {
if (channelId) return [oldChannelId ? "move" : "join", channelId];
if (oldChannelId) return ["leave", oldChannelId];
}
it's probably me overriding ephemeral states which I probably shouldn't do
I think that's it

yeah this is The Problem
is there a way to set profile effects client side? The user Object only has avatarDecorationData, but not profile effects. Other plugins don't work.
Pretty sure there's a pr for it server side, you could try see how it does that
pull request?
Yeah
tried this but didn't work
looks like discord changed this
Things breaking doesn't always mean discord broke it on purpose
They do have some stuff in the error reporter to ignore stuff if some known mods are installed
Yeah that's react
Since you're not employed I think there's little risk of firing
Now exploding, on the other hand
if unemployed and you use it, do you get hired instead?
No you get a null pointer exception
damn
it never means that
i think there has only been one single time in discord history where they deliberately changed something to break client mod functionality
and that was them making it harder to enable experiments because people kept shutting up their support channel with experiment help
which is understandable
yep
?ban hmtici
You need to provide an image/GIF to add a Bandicam watermark! (Tip: try right-clicking/holding on a message and press Apps -> Select Image, then try again.)
vban @green vessel really weird, constantly harassing people unprovoked
Done! 
maybe this?
as in programatically
from user id
in vencord
I don't think any existing plugin has done this yet (as most cases of doing this are self-bot related, I am trying to inject ephemeral messages into there instead)
i dont think that's how ephemeral messages work
So far i've looked at how Vencord plugins send clyde notifications and adapted that to my needs
hmm i want to hack over the added/removed member messages
somehow
oh
how can i make a space in TSX?
this is what i currently have, works when i put any text but still overlaps with the time
use css margins
is there any way to cancel out certain flux events fired while the client is loading
okay
in that case
i will explain
i don't want to recieve the voice state updates of existing voice channel sessions when the client loads, so the user doesnt get notified about ongoing voice channel sessions that haven't just started, but instead have been going for a while
as I intend to send a message into those users who joined DMs (on the client side) it will move them to the top and that can be confusing
i'll do that later blehhh
is it possible to connect to a TCP socket from the frontend side in electron
ex: vencord in discord
that is my usecase
i want to write an IRC client that creates a fake discord server for each irc network im in and creates fake channels for the irc channels ive joined in it
Hey guys! question! does anyone know if the plugin requests that are made on github and looked at in order? they are numbered, so i wanted to know if its randomly checked or not!
There is no particular way they are looked at
ah okay!
look at the XSOverlay plugin
aight
i can vouch for looking at XSOverlay
I tried to make a pin icon and accidentally made some shit from blair witch 
Are you making a pinned plugins thing?


