All Projects → Jisagi → Discord Guild Copy

Jisagi / Discord Guild Copy

Licence: gpl-3.0
A script to copy a discord guild/server

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Discord Guild Copy

Discord Backup
📦 Complete framework to facilitate server backup using discord.js v12
Stars: ✭ 172 (+35.43%)
Mutual labels:  clone, backup, discord
copy-anything
An optimised way to copy'ing (cloning) an Object or Array. A small and simple integration
Stars: ✭ 19 (-85.04%)
Mutual labels:  clone, copy
Weresync
Clones Linux hard drives incrementally or to a smaller drive
Stars: ✭ 180 (+41.73%)
Mutual labels:  clone, backup
Gitlabber
Gitlabber - clones or pulls entire groups tree from gitlab
Stars: ✭ 176 (+38.58%)
Mutual labels:  clone, backup
React Discord Clone
Discord Clone using React, Node, Express, Socket-IO and Mysql
Stars: ✭ 198 (+55.91%)
Mutual labels:  clone, discord
Clone Deep
Recursively (deep) clone JavaScript native types, like Object, Array, RegExp, Date as well as primitives. Used by superstruct, merge-deep, and many others!
Stars: ✭ 229 (+80.31%)
Mutual labels:  clone, copy
cloner
A deep copy algorithm for haxe
Stars: ✭ 24 (-81.1%)
Mutual labels:  clone, copy
Xenon
Create backups of your discord server
Stars: ✭ 90 (-29.13%)
Mutual labels:  backup, discord
Aws Faq
Stars: ✭ 122 (-3.94%)
Mutual labels:  discord
Soundux
🔊 A cross-platform soundboard
Stars: ✭ 119 (-6.3%)
Mutual labels:  discord
Sqift
Powerful Swift wrapper for SQLite
Stars: ✭ 119 (-6.3%)
Mutual labels:  backup
Arikawa
A Golang library and framework for the Discord API.
Stars: ✭ 123 (-3.15%)
Mutual labels:  discord
Openage
Free (as in freedom) open source clone of the Age of Empires II engine 🚀
Stars: ✭ 10,712 (+8334.65%)
Mutual labels:  clone
Cylon
A CLI TUI menu driven bash shell script supporting updates, maintenance, backups and system checks for an Arch based Linux distro
Stars: ✭ 121 (-4.72%)
Mutual labels:  backup
Assent
Multi-provider framework in Elixir
Stars: ✭ 126 (-0.79%)
Mutual labels:  discord
Discord Portable
🚀 Discord portable for Windows
Stars: ✭ 118 (-7.09%)
Mutual labels:  discord
Switchrpc
Discord Rich Presence integration for Nintendo Switch.
Stars: ✭ 116 (-8.66%)
Mutual labels:  discord
Sharpbot
A Discord.js selfbot written by Rayzr - 60 second installation!
Stars: ✭ 127 (+0%)
Mutual labels:  discord
Discordsharp
A .Net API for Discord written in C#
Stars: ✭ 126 (-0.79%)
Mutual labels:  discord
Betterdiscordplugins
Stars: ✭ 123 (-3.15%)
Mutual labels:  discord

Discord guild copy

Information

Did you ever want to create a copy of a guild? Now you can! There is no need to manually create roles, channels and permissions, which can take very long depending on the original guilds size. The script does everything for you. It backs up a guild into a single file and lets you create a new guild from it. You can share your file with others, too.

What will be copied

  • Categories
  • Text & Voice channels
  • Roles (also managed ones)
  • Role permissions for categories and text/voice channels (no user specific ones)
  • Emojis
  • Bans

What will not be copied

  • Chat history
  • Invites
  • Webhooks
  • Audit Logs
  • Third party integrations (Twitch/Youtube)

What do I need

  • Node.js any version >= 14.0.0 should work
  • Git
  • A Discord account with a bot user
    • Discord Developer page link to create a bot
    • On the Developer page in the "Bot" tab, enable both Intents below "Privileged Gateway Intents"
  • (Optional) A preferably empty guild which can be overwritten

Disclaimer

The script must be run with a bot user token. According to discords statement, any kind of user account botting including so called SelfBots are forbidden. The script will therefore block the execution with a user account token.

Installation & Usage

  1. Download the repository from github
  2. Unzip it
  3. Navigate into the extracted folder
  4. Edit the settings.json and fill in all necessary data (see Settings for more information)
  5. Open the console and run npm install (on windows you can shift + right click inside the project folder and select 'open command prompt here'). You can also use yarn install
  6. Run node copy.js in the console to print usage

Settings

To get the id of a guild open your client settings -> Appearance and then enable developer mode. If you now right click on a guild you can select 'Copy ID'.

Variable Explanation
originalGuildId The id of the guild you want to clone. Can be left blank if a guildData.json file already exists.
newGuildId The id of the new guild you want to clone to.
newGuildAdminRoleId The id of a role with administrator permissions. The bot needs to have this role on the new guild! You can manually create a new role called 'guildcopy' and the script will automatically use it. If you do so, just leave this field empty.
cleanup default: true - Set this to false, to skip the cleanup phase on the new guild
copy.General default: true - Set this to false to skip setting general guild data e.g. the guild's name or the icon
copy.RCC default: true - RCC stands for roles & categories & channels. Set this to false to skip creating them altogether
copy.Emojis default: false - Set to true to copy emojis (see also Common Behaviour)
copy.Bans default: false - Set to true to copy banned users. The bot needs to have the BAN_MEMBERS permission on the original guild if you enable this!
language default: en - Set this to any supported language from the translations folder
output default: all - Possible values: all for everything, error for errors only, none for no output at all
djsVersionCheck default: true - Checks the local discord.js version by its commit hash. If you periodically run this script, you might want to disable this
sleepTimeout default: 0 - Sleep timer in milliseconds (>0) to avoid possible ratelimits on very large guilds creations
debug default: false - Set to true for a more detailed general and error output e.g. when creating an issue
token The bot token. The bot does not need any permissions on the original guild (only exception: copy.Bans=true).

Common Behaviour

  • New guild cleanup
    • Emoji Creation/Deletion: This will take time, especially if there are lots of them. Expect a few rateLimits when 'debug' is on. If 'copyEmojis' is disabled, emojis on the new server won't be deleted or new ones added. Emojis can only be created, if the original ones still exist on their respective server, bcause they are not saved locally or the back file
    • Bans Creation/Deletion: see 'Emoji Creation/Deletion' above
    • Channel Deletion: The client might still show deleted channels despite them already being deleted. To fix this, just restart your discord client. You can do this while the script is running.
  • Region
    • Some guilds have VIP regions which cannot be used by normal guilds. Therefore if you copy such a guild the region will be set to us-central.
  • Nitro Boosted Guild
    • If you backup a nitro boosted guild, this backup can still be loaded on any non or lower boosted guild. The script will automatically scale down the voice channel bitrates and the amount of possible emojis. The same goes for the guild splash and banner.
    • The Tier 3 vanity URL will not be backed up or copied to a new guild!

Issues

Most of the common issues are displayed in the console while running the script. If you encounter crashes or any other weird behaviour not listed here feel free to create an issue. The script creates logs in the 'logs' folder. Feel free to upload those to something like pastebin and add them to the created issue to help me find the problem.

Can I suggest new features (or complain about ugly code)

Of course, just create an issue or a pull request.

Translation Guide

If you want to help translate the script, feel free do so so. Just create a copy of the en.json in the translation folder and create a pull request with the new translation. All [@@[email protected]@] statements are dynamic parts of a sentence and need to be in the correct spot for each language numbered with 1,2,3,... Please test your translation at least once before submitting it and don't forget to change the langcode/language/author at the top of the file.

License

This software is licensed under the terms of the GPLv3. For more details see LICENSE.

Credits

  • EmberVulpix for the command line arguments
  • TheLightSpirit for the french README translation (not always up-to-date)
  • Everybody who helps adding new features and finding bugs!
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].