#はじめに
このボットはDiscordの招待リンクをランダムに生成できます。
生成したリンクは全部有効な招待であるわけではなく、大体無効な招待です。
これを使えば、誰かのサーバーに入ることができるかもしれません。
*免責事項:これはただ教育のためのサンプルです。
コード
パラメータ | 意味 |
---|---|
l | リンクの長さ |
c | リンクの字母の構成元素 |
l は生成するリンクの長さ、今Discordの招待リンクは8桁です(昔は6桁です)。
c はリンクの生成の条件、これを変えると、リンクの生成するモードは変わる。
例えば、
var c1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
と
var c2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz012345678901234567890123456789";
c1を使えば生成したリンクは数字がありません。
c2を使えば生成したリンクは数字が含む確率は高くなります。
ですから、もしDisocrdの招待リンクの生成するモードが見つけたら、生成したリンクが有効な招待である確率は高くなります。
//main.js
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on('message', message => {
const args = message.content.slice('').split(' ');
if(message.content.startsWith('生成')){
if(args[1] === undefined){
message.channel.send("Pleace enter a munber.");
}
else{
for(let i=0;i<args[1];i++){
var l = 8;
var c = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
var cl = c.length;
var r = "";
for(var ii=0;ii<l;ii++){
r += c[Math.floor(Math.random()*cl)];
}
message.channel.send(`https://discord.gg/${r}`);
}
message.reply(`${args[1]} invite link generated.`);
}
}
});
client.login('BOT_TOKEN');
使い方
以下のコマンドを入力します。
生成 (数字;生成するリンクの数量)