Updates links to docs, updated windows guide, added from source guide

This commit is contained in:
Master Kwoth 2017-06-11 13:42:48 +02:00
parent ab6c3a7408
commit 2bc6052a5b
8 changed files with 86 additions and 163 deletions

View File

@ -25,7 +25,7 @@ Commands and aliases | Description | Usage
`removeallroles` `rar` | Removes all roles from a mentioned user. **Requires ManageRoles server permission.** | `.rar @User`
`createrole` `cr` | Creates a role with a given name. **Requires ManageRoles server permission.** | `.cr Awesome Role`
`rolehoist` `rh` | Toggles whether this role is displayed in the sidebar or not. **Requires ManageRoles server permission.** | `.rh Guests` or `.rh "Space Wizards"`
`rolecolor` `rc` | Set a role's color to the hex or 0-255 rgb color value provided. **Requires ManageRoles server permission.** | `.rc Admin 255 200 100` or `.rc Admin ffba55`
`rolecolor` `roleclr` | Set a role's color to the hex or 0-255 rgb color value provided. **Requires ManageRoles server permission.** | `.roleclr Admin 255 200 100` or `.roleclr Admin ffba55`
`deafen` `deaf` | Deafens mentioned user or users. **Requires DeafenMembers server permission.** | `.deaf "@Someguy"` or `.deaf "@Someguy" "@Someguy"`
`undeafen` `undef` | Undeafens mentioned user or users. **Requires DeafenMembers server permission.** | `.undef "@Someguy"` or `.undef "@Someguy" "@Someguy"`
`delvoichanl` `dvch` | Deletes a voice channel with a given name. **Requires ManageChannels server permission.** | `.dvch VoiceChannelName`
@ -34,7 +34,7 @@ Commands and aliases | Description | Usage
`creatxtchanl` `ctch` | Creates a new text channel with a given name. **Requires ManageChannels server permission.** | `.ctch TextChannelName`
`settopic` `st` | Sets a topic on the current channel. **Requires ManageChannels server permission.** | `.st My new topic`
`setchanlname` `schn` | Changes the name of the current channel. **Requires ManageChannels server permission.** | `.schn NewName`
`prune` `clr` | `.prune` removes all Nadeko's messages in the last 100 messages. `.prune X` removes last `X` number of messages from the channel (up to 100). `.prune @Someone` removes all Someone's messages in the last 100 messages. `.prune @Someone X` removes last `X` number of 'Someone's' messages in the channel. | `.prune` or `.prune 5` or `.prune @Someone` or `.prune @Someone X`
`prune` `clear` | `.prune` removes all Nadeko's messages in the last 100 messages. `.prune X` removes last `X` number of messages from the channel (up to 100). `.prune @Someone` removes all Someone's messages in the last 100 messages. `.prune @Someone X` removes last `X` number of 'Someone's' messages in the channel. | `.prune` or `.prune 5` or `.prune @Someone` or `.prune @Someone X`
`mentionrole` `menro` | Mentions every person from the provided role or roles (separated by a ',') on this server. **Requires MentionEveryone server permission.** | `.menro RoleName`
`donators` | List of the lovely people who donated to keep this project alive. | `.donators`
`donadd` | Add a donator to the database. **Bot owner only** | `.donadd Donate Amount`
@ -122,12 +122,12 @@ Commands and aliases | Description | Usage
`createwar` `cw` | Creates a new war by specifying a size (>10 and multiple of 5) and enemy clan name. **Requires ManageMessages server permission.** | `.cw 15 The Enemy Clan`
`startwar` `sw` | Starts a war with a given number. | `.sw 15`
`listwar` `lw` | Shows the active war claims by a number. Shows all wars in a short way if no number is specified. | `.lw [war_number]` or `.lw`
`claim` `call` `c` | Claims a certain base from a certain war. You can supply a name in the third optional argument to claim in someone else's place. | `.call [war_number] [base_number] [optional_other_name]`
`claimfinish1` `cf1` | Finish your claim with 1 star if you destroyed a base. First argument is the war number, optional second argument is a base number if you want to finish for someone else. | `.cf1 1` or `.cf1 1 5`
`claimfinish2` `cf2` | Finish your claim with 2 stars if you destroyed a base. First argument is the war number, optional second argument is a base number if you want to finish for someone else. | `.cf2 1` or `.cf2 1 5`
`claimfinish` `cf` | Finish your claim with 3 stars if you destroyed a base. First argument is the war number, optional second argument is a base number if you want to finish for someone else. | `.cf 1` or `.cf 1 5`
`basecall` | Claims a certain base from a certain war. You can supply a name in the third optional argument to claim in someone else's place. | `.basecall [war_number] [base_number] [optional_other_name]`
`callfinish1` `cf1` | Finish your claim with 1 star if you destroyed a base. First argument is the war number, optional second argument is a base number if you want to finish for someone else. | `.cf1 1` or `.cf1 1 5`
`callfinish2` `cf2` | Finish your claim with 2 stars if you destroyed a base. First argument is the war number, optional second argument is a base number if you want to finish for someone else. | `.cf2 1` or `.cf2 1 5`
`callfinish` `cf` | Finish your claim with 3 stars if you destroyed a base. First argument is the war number, optional second argument is a base number if you want to finish for someone else. | `.cf 1` or `.cf 1 5`
`endwar` `ew` | Ends the war with a given index. | `.ew [war_number]`
`unclaim` `ucall` `uc` | Removes your claim from a certain war. Optional second argument denotes a person in whose place to unclaim | `.uc [war_number] [optional_other_name]`
`uncall` | Removes your claim from a certain war. Optional second argument denotes a person in whose place to unclaim | `.uc [war_number] [optional_other_name]`
###### [Back to ToC](#table-of-contents)
@ -150,10 +150,10 @@ Commands and aliases | Description | Usage
Commands and aliases | Description | Usage
----------------|--------------|-------
`raffle` | Prints a name and ID of a random user from the online list from the (optional) role. | `.raffle` or `.raffle RoleName`
`cash` `$$` | Check how much currency a person has. (Defaults to yourself) | `.$$` or `.$$ @SomeGuy`
`give` | Give someone a certain amount of currency. | `.give 1 "@SomeGuy"`
`$` `currency` `$$` `$$$` `cash` `cur` | Check how much currency a person has. (Defaults to yourself) | `.$` or `.$ @SomeGuy`
`give` | Give someone a certain amount of currency. | `.give 1 @SomeGuy`
`award` | Awards someone a certain amount of currency. You can also specify a role name to award currency to all users in a role. **Bot owner only** | `.award 100 @person` or `.award 5 Role Of Gamblers`
`take` | Takes a certain amount of currency from someone. **Bot owner only** | `.take 1 "@someguy"`
`take` | Takes a certain amount of currency from someone. **Bot owner only** | `.take 1 @SomeGuy`
`betroll` `br` | Bets a certain amount of currency and rolls a dice. Rolling over 66 yields x2 of your currency, over 90 - x4 and 100 x10. | `.br 5`
`leaderboard` `lb` | Displays the bot's currency leaderboard. | `.lb`
`race` | Starts a new animal race. | `.race`
@ -163,7 +163,7 @@ Commands and aliases | Description | Usage
`rolluo` | Rolls `X` normal dice (up to 30) unordered. If you split 2 numbers with letter `d` (`xdy`) it will roll `X` dice from 1 to `y`. | `.rolluo` or `.rolluo 7` or `.rolluo 3d5`
`nroll` | Rolls in a given range. | `.nroll 5` (rolls 0-5) or `.nroll 5-15`
`draw` | Draws a card from the deck.If you supply number X, she draws up to 5 cards from the deck. | `.draw` or `.draw 5`
`shuffle` `sh` | Reshuffles all cards back into the deck. | `.sh`
`deckshuffle` `dsh` | Reshuffles all cards back into the deck. | `.dsh`
`flip` | Flips coin(s) - heads or tails, and shows an image. | `.flip` or `.flip 3`
`betflip` `bf` | Bet to guess will the result be heads or tails. Guessing awards you 1.95x the currency you've bet (rounded up). Multiplier can be changed by the bot owner. | `.bf 5 heads` or `.bf 3 t`
`shop` | Lists this server's administrators' shop. Paginated. | `.shop` or `.shop 2`
@ -240,12 +240,13 @@ Commands and aliases | Description | Usage
`nowplaying` `np` | Shows the song that the bot is currently playing. | `.np`
`volume` `vol` | Sets the music playback volume (0-100%) | `.vol 50`
`defvol` `dv` | Sets the default music volume when music playback is started (0-100). Persists through restarts. | `.dv 80`
`playlistshuffle` `plsh` | Shuffles the current playlist. | `.plsh`
`playlist` `pl` | Queues up to 500 songs from a youtube playlist specified by a link, or keywords. | `.pl playlist link or name`
`soundcloudpl` `scpl` | Queue a Soundcloud playlist using a link. | `.scpl soundcloudseturl`
`localplaylst` `lopl` | Queues all songs from a directory. **Bot owner only** | `.lopl C:/music/classical`
`radio` `ra` | Queues a radio stream from a link. It can be a direct mp3 radio stream, .m3u, .pls .asx or .xspf (Usage Video: <https://streamable.com/al54>) | `.ra radio link here`
`local` `lo` | Queues a local file by specifying a full path. **Bot owner only** | `.lo C:/music/mysong.mp3`
`remove` `rm` | Remove a song by its # in the queue, or 'all' to remove whole queue. | `.rm 5`
`songremove` `srm` | songremove_desc | songremove_usage
`movesong` `ms` | Moves a song from one position to another. | `.ms 5>3`
`setmaxqueue` `smq` | Sets a maximum queue size. Supply 0 or no argument to have no limit. | `.smq 50` or `.smq`
`setmaxplaytime` `smp` | Sets a maximum number of seconds (>14) a song can run before being skipped automatically. Set 0 to have no limit. | `.smp 0` or `.smp 270`
@ -348,13 +349,13 @@ Commands and aliases | Description | Usage
`define` `def` | Finds a definition of a word. | `.def heresy`
`#` | Searches Tagdef.com for a hashtag. | `.# ff`
`catfact` | Shows a random catfact from <http://catfacts-api.appspot.com/api/facts> | `.catfact`
`revav` | Returns a Google reverse image search for someone's avatar. | `.revav "@SomeGuy"`
`revav` | Returns a Google reverse image search for someone's avatar. | `.revav @SomeGuy`
`revimg` | Returns a Google reverse image search for an image from a link. | `.revimg Image link`
`safebooru` | Shows a random image from safebooru with a given tag. Tag is optional but preferred. (multiple tags are appended with +) | `.safebooru yuri+kissing`
`wikipedia` `wiki` | Gives you back a wikipedia link | `.wiki query`
`color` `clr` | Shows you what color corresponds to that hex. | `.clr 00ff00`
`videocall` | Creates a private <http://www.appear.in> video call link for you and other mentioned people. The link is sent to mentioned people via a private message. | `.videocall "@SomeGuy"`
`avatar` `av` | Shows a mentioned person's avatar. | `.av "@SomeGuy"`
`color` | Shows you what color corresponds to that hex. | `.color 00ff00`
`videocall` | Creates a private <http://www.appear.in> video call link for you and other mentioned people. The link is sent to mentioned people via a private message. | `.videocall "@the First" "@Xyz"`
`avatar` `av` | Shows a mentioned person's avatar. | `.av @SomeGuy`
`wikia` | Gives you back a wikia link | `.wikia mtg Vigilance` or `.wikia mlp Dashy`
`mal` | Shows basic info from a MyAnimeList profile. | `.mal straysocks`
`anime` `ani` `aq` | Queries anilist for an anime and shows the first result. | `.ani aquarion evol`
@ -396,7 +397,7 @@ Commands and aliases | Description | Usage
`whosplaying` `whpl` | Shows a list of users who are playing the specified game. | `.whpl Overwatch`
`inrole` | Lists every person from the specified role on this server. You can use role ID, role name. | `.inrole Some Role`
`checkmyperms` | Checks your user-specific permissions on this channel. | `.checkmyperms`
`userid` `uid` | Shows user ID. | `.uid` or `.uid "@SomeGuy"`
`userid` `uid` | Shows user ID. | `.uid` or `.uid @SomeGuy`
`channelid` `cid` | Shows current channel ID. | `.cid`
`serverid` `sid` | Shows current server ID. | `.sid`
`roles` | List roles on this server or a roles of a specific user if specified. Paginated, 20 roles per page. | `.roles 2` or `.roles @Someone`
@ -431,7 +432,7 @@ Commands and aliases | Description | Usage
`qsearch` | Shows a random quote for a keyword that contains any text specified in the search. | `.qsearch keyword text`
`quoteid` `qid` | Displays the quote with the specified ID number. Quote ID numbers can be found by typing `.liqu [num]` where `[num]` is a number of a page which contains 15 quotes. | `.qid 123456`
`.` | Adds a new quote with the specified name and message. | `.. sayhi Hi`
`deletequote` `delq` | Deletes a quote with the specified ID. You have to be either server Administrator or the creator of the quote to delete it. | `.delq 123456`
`deletequote_cmd` | deletequote_desc | deletequote_usage
`delallq` `daq` | Deletes all quotes on a specified keyword. **Requires Administrator server permission.** | `.delallq kek`
`remind` | Sends a message to you or a channel after certain amount of time. First argument is `me`/`here`/'channelname'. Second argument is time in a descending order (mo>w>d>h>m) example: 1w5d3h10m. Third argument is a (multiword) message. | `.remind me 1d5h Do something` or `.remind #general 1m Start now!`
`remindtemplate` | Sets message for when the remind is triggered. Available placeholders are `%user%` - user who ran the command, `%message%` - Message specified in the remind, `%target%` - target channel of the remind. **Bot owner only** | `.remindtemplate %user%, do %message%!`

View File

@ -3,19 +3,19 @@
###Question 1: How do I get Nadeko to join my server?
----
**Answer:** Simply send Nadeko a Direct Message with `-h` and follow the link. **Only People with the Manage Server permission can add the bot to the server**
**Answer:** Simply send Nadeko a Direct Message with `.h` and follow the link. **Only People with the Manage Server permission can add the bot to the server**
###Question 2: I want to change permissions, but it isn't working!
----
**Answer:** You must have the `;permrole` (by default this is the `Nadeko` role, for more details on permissions check [here](http://nadekobot.readthedocs.io/en/latest/Permissions%20System/ "Permissions"). If you have a role called `Nadeko` but can't assign it it's probably the Bot Role so, just create a **New Role** called `Nadeko` and assign that to yourself instead.)
**Answer:** You must have the `.permrole` (by default this is the `Nadeko` role, for more details on permissions check [here](http://nadekobot.readthedocs.io/en/latest/Permissions%20System/ "Permissions"). If you have a role called `Nadeko` but can't assign it it's probably the Bot Role so, just create a **New Role** called `Nadeko` and assign that to yourself instead.)
###Question 3: I want to disable NSFW on my server.
----
**Answer:** To disable the NSFW Module for your server type, `;sm NSFW disable`. If this does not work refer to Question 2.
**Answer:** To disable the NSFW Module for your server type, `.sm NSFW disable`. If this does not work refer to Question 2.
###Question 4: How do I get NadekoFlowers/Currency?
----
**Answer:** You can get NadekoFlowers by picking them up after they have been generated with `>gc`, which you can then either plant (give away to a channel so that someone can pick it), or gamble with for potentinal profit with `$betflip`, `$betroll` and `$jr`
**Answer:** You can get NadekoFlowers by picking them up after they have been generated with `.gc`, which you can then either plant (give away to a channel so that someone can pick it), or gamble with for potentinal profit with `.betflip`, `.betroll` and `.jr`
###Question 5: I have an issue/bug/suggestion, where do I put it so it gets noticed?
-----------
@ -25,7 +25,7 @@ If your problem or suggestion is not there, feel free to request/notify us about
###Question 6: How do I use this command?
--------
**Answer:** You can see the description and usage of certain commands by using `-h command` **i.e** `-h ;sm`.
**Answer:** You can see the description and usage of certain commands by using `.h command` **i.e** `.h .sm`.
The whole list of commands can be found [here](http://nadekobot.readthedocs.io/en/latest/Commands%20List/ "Command List")
@ -38,7 +38,7 @@ The whole list of commands can be found [here](http://nadekobot.readthedocs.io/e
###Question 8: My music is still not working/very laggy?
----
**Answer:** Try changing your discord [location][1], if this doesn't work be sure you have enabled the correct permissions for Nadeko and rebooted since installing FFMPEG.
[1]: https://support.discordapp.com/hc/en-us/articles/216661717-How-do-I-change-my-Voice-Server-Region-
[1]: https://support.discordapp.com/hc/en-us/articles/216661717.how-do-I-change-my-Voice-Server-Region-
###Question 9: I want to change data in the database like NadekoFlowers or something else but how?
----

View File

@ -57,13 +57,9 @@ Additional options
[//]: # ( - Leave this with the `null` value for standard operation - change this to `examples` to [This is only a comment so doesn't need proper detail])
Config.json
===========
`config.json` is now removed with the addition of `NadekoBot.db` so if you have Nadeko 0.9x follow the [upgrading guide](http://nadekobot.readthedocs.io/en/latest/guides/Upgrading%20Guide/) to upgrade your bot.
DB files
========
Nadeko uses few db files in order to open these database files `NadekoBot\src\NadekoBot\bin\Release\netcoreapp1.0\data\NadekoBot.db` (1.0) or `data\NadekoBot.sqlite` (0.9x) you will need [DB Browser for SQLite](http://sqlitebrowser.org/).
Nadeko uses few db files in order to open these database files `NadekoBot\src\NadekoBot\bin\Release\netcoreapp1.0\data\NadekoBot.db` (1.X) you will need [DB Browser for SQLite](http://sqlitebrowser.org/).
To make changes

View File

@ -17,11 +17,11 @@ First Time Setup
------------------
To change permissions you **must** meet the following requirement:
**Have the role specified by `;permrole` (By default, this is Nadeko)**
**Have the role specified by `.permrole` (By default, this is Nadeko)**
If you have an existing role called `Nadeko` but can't assign it to yourself, create a new role called `Nadeko` and assign that to yourself.
If you would like to set a different role, such as `Admins`, to be the role required to edit permissions, do `;permrole Admins` (you must have the current permission role to be able to do this).
If you would like to set a different role, such as `Admins`, to be the role required to edit permissions, do `.permrole Admins` (you must have the current permission role to be able to do this).
Basics & Hierarchy
-----
@ -30,14 +30,14 @@ The [Commands List](http://nadekobot.readthedocs.io/en/1.0/Commands%20List/#perm
Firstly, let's explain how the permissions system works - It's simple once you figure out how each command works!
The permissions system works as a chain, everytime a command is used, the permissions chain is checked. Starting from the top of the chain, the command is compared to a rule, if it isn't either allowed or disallowed by that rule it proceeds to check the next rule all the way till it reaches the bottom rule, which allows all commands.
To view this permissions chain, do `;listperms`, with the top of the chain being rule number 1, shown at the top of the message.
To view this permissions chain, do `.listperms`, with the top of the chain being rule number 1, shown at the top of the message.
If you want to remove a permission from the chain of permissions, do `;removeperm X` to remove rule number X and similarly, do `;moveperm X Y` to move rule number X to number Y (moving, not swapping!).
If you want to remove a permission from the chain of permissions, do `.removeperm X` to remove rule number X and similarly, do `.moveperm X Y` to move rule number X to number Y (moving, not swapping!).
As an example, if you wanted to enable NSFW for a certain role, say "Lewd", you could do `;rolemdl NSFW enable Lewd`.
This adds the rule to the top of the permissions chain so even if the default `;sm NSFW disabled` rule exists, the "Lewd" role will be able to use the NSFW module.
As an example, if you wanted to enable NSFW for a certain role, say "Lewd", you could do `.rolemdl NSFW enable Lewd`.
This adds the rule to the top of the permissions chain so even if the default `.sm NSFW disabled` rule exists, the "Lewd" role will be able to use the NSFW module.
If you want the bot to notify users why they can't use a command or module, use `;verbose true` and Nadeko will tell you what rule is preventing the command.
If you want the bot to notify users why they can't use a command or module, use `.verbose true` and Nadeko will tell you what rule is preventing the command.
Commonly Asked Questions
---------------
@ -45,19 +45,19 @@ Commonly Asked Questions
###How do I create a music DJ?
To allow users to only see the current song and have a DJ role for queuing follow these steps:
1. `;sm Music disable`
1. `.sm Music disable`
* Disables music commands for everybody
2. `;sc !!nowplaying enable`
2. `.sc !!nowplaying enable`
* Enables the "nowplaying" command for everyone
3. `;sc !!listqueue enable`
3. `.sc !!listqueue enable`
* Enables the "listqueue" command for everyone
4. `;rm Music enable DJ`
4. `.rm Music enable DJ`
* Enables all music commands only for the DJ role
@ -65,10 +65,10 @@ To allow users to only see the current song and have a DJ role for queuing follo
###How do I create a NSFW channel?
Say you want to only enable NSFW commands in the #NSFW channel, just do the following two steps.
1. `;sm NSFW disable`
1. `.sm NSFW disable`
* Disables the NSFW module from being used
2. `;cm NSFW enable #NSFW`
2. `.cm NSFW enable #NSFW`
* Enables the NSFW module for use in the #NSFW channel
###I've broken permissions and am stuck, can I reset permissions?

View File

@ -1,28 +1,7 @@
## Terms of Use
Copyright 2017 Kwoth
**The Unlicense License**
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
This is free and unencumbered software released into the public domain.
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means.
In jurisdictions that recognize copyright laws, the author or authors
of this software dedicate any and all copyright interest in the
software to the public domain. We make this dedication for the benefit
of the public at large and to the detriment of our heirs and
successors. We intend this dedication to be an overt act of
relinquishment in perpetuity of all present and future rights to this
software under copyright law.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
For more information, please refer to <http://unlicense.org/>
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -0,0 +1,23 @@
Prerequisites
- [.net core 1.1.X][.netcore]
- [ffmpeg][ffmpeg] (and added to path) either download or install using your distro's package manager
- [git][git]
*Clone the repo*
`git clone -b 1.4 https://github.com/Kwoth/NadekoBot`
`cd NadekoBot/src/NadekoBot`
Edit `credentials.json.` Read the JSON Exaplanations guide on the left if you don't know how to set it up
*run*
`dotnet restore`
`dotnet run -c Release`
*when you decide to updatein the future (might not work if you've made custom edits to the source, make sure you know how git works)*
`git pull`
`dotnet restore`
`dotnet run -c Release`
[.netcore]: https://www.microsoft.com/net/download/core#/sdk
[ffmpeg]: http://ffmpeg.zeranoe.com/builds/
[git]: https://git-scm.com/downloads

View File

@ -1,30 +1,17 @@
________________________________________________________________________________
*Thanks to @Flatbread and @Mirai for making this guide*
________________________________________________________________________________
## Setting Up NadekoBot on Windows
#### Prerequisites
- 1) [.NET Core SDK][.NET Core SDK]
- 2) [Git][Git]
- 3) Google Account
- 4) Soundcloud Account (if you want soundcloud support)
- 5) [7zip][7zip] (or whatever you are using, WinRar)
- 6) [Notepad++][Notepad++]
- 7) Windows 8 or later
- 1) [Notepad++][Notepad++] (or some other decent text editor)
- 2) Windows 8 or later
#### Guide
- Make sure you have installed both [Git][Git] and the [.NET Core SDK][.NET Core SDK].
- Create a **new folder** anywhere you like and name it `Nadeko`.
- Next, [Right-Click on this link](https://github.com/Kwoth/NadekoBotInstallerWin/raw/master/NadekoInstaller.bat) and select **Save link as** and save the file `NadekoInstaller.bat` inside the `Nadeko` folder that we created earlier. (Please **DO NOT** rename the file `NadekoInstaller.bat`.)
- Once that's done, right-click on `NadekoInstaller.bat` to run it as Administrator.
- From the options,
- Choose `1` to get the **most recent build**.
- Choose `2` to get the **stable build**.
- Wait a while for the file to finish installing, it'll display it's progress in the command prompt.
- You should now have a new folder named `NadekoBot` inside the `Nadeko` folder we previously created.
- Once Installation is completed, press any key to close the command prompt.
![img1](http://i.imgur.com/O1dY9eW.gif)
- Download and run the [NadekoBot Updater][Updater]
- Press 'Install ffmpeg' button if you want music features
*note: RESTART YOUR PC IF YOU DO*
- Press `Update` and go through the installation wizard
*note: If you're upgrading from 1.3, DO NOT select your old nadekobot folder. Install it in a separate directory and read the upgrading guide*
- When installation is finished, make sure 'open credentials.json' is checked.
*note: Make sure to open it with Notepad++ or some other decent text editor.*
#### Creating DiscordBot application
- Go to [the Discord developer application page][DiscordApp].
@ -37,18 +24,14 @@ ________________________________________________________________________________
![img2](http://i.imgur.com/x3jWudH.gif)
#### Setting up credentials.json file
- In our `NadekoBot` folder you should see a `src` folder, then *another* `NadekoBot` folder, in this final folder, you should see a `.json` file named `credentials.json`. (Note: If you do not see a `.json` after `credentials.json`, do not add the `.json`. You most likely have **"Hide file extensions"** enabled.)
- If you mess up the setup of `credentials.json`, rename `credentials_example.json` to `credentials.json`.
- Open the file with [Notepad++][Notepad++].
- In there you will see fields such as `Token`, `ClientId`, `BotId` and `OwnerIDs`.
- In there you will see fields such as `Token`, `ClientId`, and `OwnerIDs`.
- In your [applications page][DiscordApp] (the window you were asked to keep open earlier), under the `Bot User` section, you will see `Token:click to reveal`, click to reveal the token. (Note: Make sure that you actually use a Token and not a Client Secret! It is in the **App Bot User** tab.)
- Copy your bot's token, and on the `"Token"` line of your `credentials.json`, paste your bot token between the quotation marks.
- Copy your bot's token, and on the `"Token"` line of your `credentials.json`, paste your bot token **between** the quotation marks.
- Copy the `Client ID` on the page and replace the `12312123` part of the `ClientId` line with it.
- Again, copy the same `Client ID` and replace the `null` part of the `BotId` line with it.
- Go to a server on discord and attempt to mention yourself, but put a backslash at the start like shown below
- So the message `\@fearnlj01#3535` will appears as `<@145521851676884992>` after you send the message (to make it slightly easier, add the backslash after you type the mention out)
- So the message `\@fearnlj01#3535` will appear as `<@145521851676884992>` after you send the message (to make it slightly easier, add the backslash after you type the mention out)
- The message will appear as a mention if done correctly, copy the numbers from the message you sent (`145521851676884992`) and replace the ID (By default, the ID is `105635576866156544`) on the `OwnerIds` section with your user ID shown earlier.
- Save `credentials.json` (make sure you aren't saving it as `credentials.json.txt`)
- Save `credentials.json`
- If done correctly, you are now the bot owner. You can add multiple owners by seperating each owner ID with a comma within the square brackets.
![img3](http://i.imgur.com/QwKMnTG.gif)
@ -62,76 +45,17 @@ ________________________________________________________________________________
![img4](http://i.imgur.com/aFK7InR.gif)
#### Starting the bot
- Go to the `Nadeko` folder that we have created earlier, and run the `NadekoInstaller.bat` file as Administrator.
- From the options,
- Choose `3` to **run the bot normally**.
(with normal-run the bot will shutdown and will stay offline if it disconnects by the use of `.die` command until you manually run it again. Useful if you want to test the bot.)
- Choose `4` to **run the bot with auto restart**.
(with auto restart the bot will restart itself if it disconnects by the use of `.die` command. Useful if you want to have restart function for any reason.)
- Either press "Start" Button in the updater, or run the bot via it's desktop shortcut.
#### Updating NadekoBot
- Make sure the bot is closed and is not running (Run `.die` in a connected server to ensure it's not running).
- Once that's checked, go to the `Nadeko` folder.
- Run the `NadekoInstaller.bat` file.
- From the options,
- Choose `1` to get the **most recent build**.
- Choose `2` to get the **stable build**.
- Follow the messages and press any key to continue.
- Wait for it to finish.
- Press any key to close the window when it shows **Installation complete.**
- [Start the bot again.](http://nadekobot.readthedocs.io/en/latest/guides/Windows%20Guide/#starting-the-bot)
- Open NadekoBot Updater
- If updates are available, you will be able to click on the Update button
- Start the bot
- You've updated and are running again, easy as that!
________________________________________________________________________________
### Setting Up NadekoBot For Music
In order to have a functioning music module, you need to install ffmpeg and setup api keys.
#### Setting up `ffmpeg` using NadekoBot Client!
- Go to the `Nadeko` folder that we have created earlier, and run the `NadekoInstaller.bat` file as Administrator.
- From the options select `6` Install ffmpeg (for music)
- Next, **Press Any Key** if you are running as Administrator or just close and relaunch it as Administrator using mouse right-click.
- Wait for it to finish installing and backing up existing.
- Once done, you should see "ffmpeg Installation complete!".
- Next, **Press Any Key** to go back to NadekoBot Client.
- Press `3` to run the bot normally just to test music. (optional)
- `ffmpeg` installation for Music is now complete.
#### Manual `ffmpeg` setup
- Create a folder named `ffmpeg` in your main Windows directory. We will use **C:\ffmpeg** (for our guide)
- Download FFMPEG through the link https://ffmpeg.zeranoe.com/builds/ (download static build)
- EXTRACT it using `7zip` and place the FOLDER `ffmpeg-xxxxx-git-xxxxx-xxxx-static` inside **C:\ffmpeg**
- Before proceeding, check out this gif to set up `ffmpeg` PATH correctly ![LINK TO gif](http://i.imgur.com/aR5l1Hn.gif) *(thanks to PooPeePants#7135)*
- Go to My Computer, right click and select Properties. On the left tab, select Advanced System Settings. Under the Advanced tab, select Environmental Variables near the bottom. One of the variables should be called "Path". Add a semi-colon (;) to the end followed by your FFMPEG's **bin** install location (**for example C:\ffmpeg\ffmpeg-xxxxx-git-xxxxx-xxxx-static\bin**). Save and close.
- Setup your API keys as explained above.
- **Restart your computer**
#### Api keys setup
- Follow these steps on how to setup Google API keys:
- Go to [Google Console][Google Console] and log in.
- Create a new project (name does not matter). Once the project is created, go into "Enable and manage APIs."
- Under the "Other Popular APIs" section, enable `URL Shortener API` and `Custom Search API`. Under the `YouTube APIs` section, enable `YouTube Data API`.
- Under the "Google Maps APIs" section, enable `Google Maps Geocoding API` and `Google Maps Time Zone API`.
- On the left tab, access `Credentials`. Click `Create Credentials` button. Click on `API Key`. A new window will appear with your `Google API key`.
- Copy the key.
- Open up `credentials.json`.
- For `"GoogleAPIKey"`, paste your API key inbetween the quotation marks, like how the `Token` and `ClientId` should be set up.
- Follow these steps on how to setup Soundcloud API key:
- Go to [Soundcloud][Soundcloud].
- Enter a name for the app and create it.
- You will need to fill out an application form to request access to the Soundcloud API.
- All requests for an API key must go through the review process, where applications will be reviewed on a case by case basis, in line with Soundcloud API Terms of Use. If your application is successful, you will receive an API key.
- **Restart your computer**
[.NET Core SDK]: https://github.com/dotnet/core/blob/master/release-notes/download-archives/1.1-preview2.1-download.md
[Git]: https://git-scm.com/download/win
[7zip]: http://www.7-zip.org/download.html
[Updater]: https://download.nadekobot.me/
[DiscordApp]: https://discordapp.com/developers/applications/me
[Notepad++]: https://notepad-plus-plus.org/
[Invite Guide]: http://discord.kongslien.net/guide.html
[Google Console]: https://console.developers.google.com
[Soundcloud]: https://soundcloud.com/you/apps/new

View File

@ -166,8 +166,8 @@ namespace NadekoBot.Modules.Help
public async Task Guide()
{
await ConfirmLocalized("guide",
"http://nadekobot.readthedocs.io/en/latest/Commands%20List/",
"http://nadekobot.readthedocs.io/en/latest/").ConfigureAwait(false);
"http://nadekobot.readthedocs.io/en/1.4/Commands%20List/",
"http://nadekobot.readthedocs.io/en/1.4/").ConfigureAwait(false);
}
[NadekoCommand, Usage, Description, Aliases]