-
Notifications
You must be signed in to change notification settings - Fork 582
Update / Modernise few instalation related pages. #1096
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from 8 commits
5faa58a
a178ba4
095c99c
dafcdb0
4518ca4
f8296cb
3dfeab7
b94132e
3af6a4e
d898c33
b874f71
54b80dc
57efb71
6da3803
827aa11
c068256
b23cb32
db321a5
c792dc9
c78b84a
8998369
91693d3
1e1a216
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -7,32 +7,48 @@ | |
|
|
||
| ## Starting the server | ||
|
|
||
| - Run authserver and worldserver in your build folder. | ||
| 1. Start `authserver`, in the `Build` folder you created, under `\bin\RelWithDebInfo` (for Windows) or `env/dist/bin` (for Linux). | ||
| 2. Start `worldserver` in the same location. | ||
|
|
||
| For detailed information on how to configure a restarter and a debugger go to [how-to-restart-and-debug](how-to-restart-and-debug) page | ||
| For detailed information on how to configure a restarter and a debugger go to [how-to-restart-and-debug](how-to-restart-and-debug) page (For linux environments). | ||
|
|
||
|
|
||
| ## Creating an Account | ||
|
|
||
| Read [creating accounts](creating-accounts). | ||
|
|
||
| {% include warning.html content="NEVER create an account directly into your database unless you are ABSOLUTELY SURE that you know what to do and how to do it!" %} | ||
|
|
||
| - Next, create your Login Account by typing directly into the **worldserver** window the GM Command **account create**. Syntax: (see examples below) | ||
| - Inside of the World of Warcraft Folder (`3.3.5` not `3.4.x` "modern" version), you will see a `Data` folder and a locale folder inside of `Data` example `enUS` or `enGB`, inside of that folder **should exist** a `realmlist.wtf` (in the case it doesn't exist, create it). | ||
|
|
||
| - If you wish to set the account as a GM then type into the worldserver window: **account set gmlevel $account #level #realmid** where **$account** is the account name to change, **#level** can be 0-4 and **#realmid** is the realm ID. Setting a **#level** of "3" is GM account level (higher numbers = more access), and the "-1" is the realm ID that stands for "all realms". | ||
| {% include tip.html content="In the case you created realmlist.wtf file and doesn't work, make sure you've -Hide extensions for known file types- unchecked in your windows folder options." %} | ||
|
|
||
| {% include tip.html content="Open your <b>acore_world</b> database and find the <b>command</b> table. This shows a full list of GM Commands, descriptions, and security levels.<br/>This will always be the most up-to-date list you can find, assuming you keep your DB and Core updated." %} | ||
| - Open `realmlist.wtf` and `set realmlist 127.0.0.1` (or you can change the IP or use a DNS). | ||
|
|
||
| - Minimize your servers and run **WoW** (never run WoW using the Launcher unless you edited the realmlist.wtf's patchlist option above). | ||
| - Open your `wow.exe` not any launcher of any sort. | ||
|
|
||
| - Log in using the user/pass you just created. | ||
| - Login into your account by using your `username` and `password` the e-mail functionality doesn't work (as a login into client) for AzerothCore. | ||
|
|
||
| - The AzerothCore realm should be selectable. Log in, create a character, and you're all done! | ||
|
|
||
| ## Creating an Account | ||
| {% include tip.html content="In the case you're connecting to the server in the same machine as the client, and the realm gets stuck (as you can't do anything after logging in) trying pressing ENTER in the worldserver.exe (this for windows issue), we recommend disabling Windows Terminal -QuickEdit Mode- which tends to hang the CLI applications for Windows 10 and foward." %} | ||
|
|
||
|
|
||
| If you want to see the `GM Commands` in your server, you can check your `acore_world` database and find the `command` table. This shows a full list of GM Commands, descriptions, and security levels.<br/>This will always be the most up-to-date list you can find, assuming you keep your DB and Core updated. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I dont know why we dont keep the tip above?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What do you mean? |
||
|
|
||
| You also may also refer to the wiki [GM Commands](gm-commands). | ||
|
|
||
| Highely recommend also if you want to have a similiar expeirence of wowhead [wowgaming](https://wowgaming.github.io/) provides us with an similiar but focused on Azerothcore, wowgaming's [aowow](https://wowgaming.altervista.org/aowow/) version. | ||
|
|
||
| This similiar version of wowhead, doesn't update with your changes, they use their own `Data` they provided previously in the server setup steps and they keep their website updated every week based on azerothcore's updates to the core. | ||
|
Comment on lines
+39
to
+45
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this has nothing to do with server setup.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's an additional inofrmation on the final steps of the server, would you find any good place to have these? Both the GM commands and aowow are good pages / tools to have at hand related to the core |
||
|
|
||
| Read [creating accounts](creating-accounts). | ||
|
|
||
| ## Setting up Remote Access | ||
| For development purposes, this step is not necessary. However, for increased security when you want other people to make accounts you should set up a registration form, so you don't have to paste their passwords. Check out [Remote Access](remote-access) on how to send commands into the server. | ||
|
|
||
| <br> | ||
| Also refer to [account](account) which provides some `php` examples how do Calculate, Get and Verify `SRP6` protocol, in the addition of trying to make a way to create or access account information related to Azerothcore. | ||
|
|
||
| In addition to it we provide a [catologue](https://www.azerothcore.org/catalogue.html) mainly focused in modules created by the community, but you may find others like a Registration page. | ||
|
TheSCREWEDSoftware marked this conversation as resolved.
|
||
|
|
||
| ## Help | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -7,45 +7,77 @@ | |
|
|
||
| This guide is intended for advanced setups or just to provide more details in setting up your realm for local or internet use. In general, the default setup explained in your particular OS-specific guide should be fine for simple setups. | ||
|
|
||
| ## Worldserver and Authserver configurations | ||
| ## Authserver and Worldserver configurations | ||
|
|
||
| For almost all basic setup scenarios the default localhost (127.0.0.1) IP settings should be left alone. The default bindip (0.0.0.0) should be left alone as well. | ||
| For the majority of the cases the default configuration values for `LoginDatabaseInfo`, `CharacterDatabaseInfo` and `WorldDatabaseInfo` should be left alone as `127.0.0.1` (also known as `localhost`, the current machine hosting/running the `authserver` and `worldserver`), the same goes for `BindIP` should be left alone as well as `0.0.0.0`. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this is unnecessarily wordy.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Would this be better? By default, keep |
||
|
|
||
| ### Setting the auth database realmlist for internet connections | ||
| If you need to connect to your database from one external machine, read [this](https://www.enovision.net/mysql-ssh-tunnel-heidisql) instead open ports to the MySQL server. | ||
|
TheSCREWEDSoftware marked this conversation as resolved.
Outdated
|
||
|
|
||
| This is where you have to use your internet IP so clients from the internet can find your server. You have to have the ports 3724 (authserver) and 8085 (worldserver) forwarded or open from your router/firewall. Using TCP protocol. | ||
| ### Port Forwarding (Incoming / Inbound) | ||
|
|
||
| **Realmlist Table** | ||
| | DST Port | Protocol | Destination | Comment | | ||
| | -------- | -------- | ----------- | ----------- | | ||
| | 3724 | TCP | any | authserver | | ||
| | 8085 | TCP | any | worldserver | | ||
|
|
||
| You need to make sure that your **authserver** application directs incoming connections to your realm. | ||
| This are the ports used by the `authserver` and `worldserver` which you will be required to port foward / open the ports in your router and/or firewall to allow external connections to your server. | ||
|
Comment on lines
17
to
+23
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As default yes, but they can be changed. I would rather refer to the config file.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We haven't to my knowledge every had the file at least visually show the table for the ports. |
||
|
|
||
| - Run your chosen database management tool (ex. SQLYog or HeidiSQL) or with the MySQL command-line interface (CLI). | ||
| How to [port foward](https://portforward.com), this is for majority of routers, not all. | ||
|
|
||
| - If you need to connect to your database from one external machine, read https://www.enovision.net/mysql-ssh-tunnel-heidisql instead open ports to the MySQL server. | ||
| You need to make sure that your **authserver** application directs incoming connections to your server, normally is windows issue under the `UAC` (User Account Control), which will prompt after being executed once, normally. | ||
|
|
||
| - Open the **acore_auth** database and find the **realmlist** table. You need to edit the **address field** according to your needs: | ||
| {% include warning.html content="NEVER open your MYSQL Ports (normally 8085) unless you are ABSOLUTELY SURE that you know what to do, no one but the machine hosting the service should have access to it." %} | ||
|
|
||
| - LAN IP (192.168.x.x) - If you are installing AzerothCore on a different computer from where you run WoW, but all the computers involved are on the same network (router) use that computer's Local Area Network IP. | ||
|
|
||
| - 127.0.0.1 - Also known as "localhost". Leave this setting alone here and in your configs, if you've installed AzerothCore on the same computer you run WoW on, and only you are connecting to it. | ||
| ### Realmlist | ||
|
|
||
| - Public IP address – If you want other people to connect to your server, use your external IP. Visit http://www.whatismyip.com/ to find your external IP address. | ||
| - If you're hosting it from a home network you'll likely need to set up the proper port forwards, which isn't covered within the scope of this guide. https://portforward.com has guides for most routers, and your Internet Service Provider should be able to assist with this. | ||
|
|
||
| - Fully qualified domain name - (mydomain.com or warcraft.mydomain.com) Similar to an external IP address, this would be used if you want other people to connect to your server with the added benefit of not needing to track a potentially dynamic IP address. | ||
| - Similar to the Public IP address, it's likely that you'll need to set up port forwards if you're hosting from a home network. | ||
| - Additionally, you'll need to configure DNS to point to the server's public IP address. Setting up DNS is out of the scope of this guide, though your domain registrar or dynamic DNS provider should have this documentation available. | ||
| Open the `acore_auth` database and find the `realmlist` table. | ||
|
|
||
| {% include note.html content="If you are using HeidiSQL, make sure you are in the Data tab when you edit values." %} | ||
| `acore_auth.realmlist` | ||
| | id | name | address | localAddress | localSubnetMask | port | | ||
| | ---: | --- | --- | --- | --- | ---: | | ||
| | 1 | AzerothCore | 127.0.0.1| 127.0.0.1| 255.255.255.0 | 8085 | | ||
|
|
||
| - MySQL CLI Commands (This step is not needed if you used a MySQL Manager like HeidiSQL) | ||
| - `$ sudo mysql` | ||
| - You should see a prompt change to mysql> | ||
| - `use acore_auth`; | ||
| - **Replace your IP with the one you've chosen to use from above** | ||
| - `UPDATE realmlist SET address = '[your_ip]' WHERE id = 1;` | ||
| - exit | ||
| <br> | ||
| The table above is snippet how `realmlist` under `acore_auth` database looks. | ||
|
|
||
| - `id` - Is a primary key (unique number per row), auto-incrementing (increases automatically when a new entry). | ||
| - `name` - Is a unique key (unique column name), this refers to `Realm` name that appears in-game and `authserver`. | ||
| - `address` - Referes to the machine hosting's [Public IP](http://www.whatismyip.com/), which is the IP people use to connect to your server (outside / externally of your network), for some cases is the **DNS** ("domain name"). | ||
| - `localAddress` - Referes to the machine hosting's **Local** / **LAN IP**, which is the IP you and other people use to connect to your server (within / inside of your network), for some cases where you're using **DNS** as your `address` field, you may use the machine hosting's [Public IP](http://www.whatismyip.com/) in `localAddress` field. | ||
| - `localSubnetMask` - This only should be changed by people who know what they are doing, beginners shoudln't have to care about the correct usage SubnetMask for their IP category, so leave as it is. | ||
| - `port` - This refers to `mysql` service port being used, by default is `8085` which is the default one in `mysql` also. | ||
|
|
||
| If you leave the default values of `127.0.0.1` only the client in the same machine as that's hosting the server will be able to connect, for this cases where you wish to join from another computer in the same network make sure you change `localAddress` to match the **Local IP** of the machine that's hosting the server. | ||
|
|
||
| Same applies for `address` but machine as that's hosting the server's [Public IP](http://www.whatismyip.com/) which is can be used to connect from a computer outside of the network, some routers have `hairpinning` which allow you to use machine's [Public IP](http://www.whatismyip.com/) to connect within the same network. | ||
|
|
||
| `DNS` technical: | ||
| - Fully qualified domain name - (mydomain.com or warcraft.mydomain.com) Similar to an external IP address, this would be used if you want other people to connect to your server with the added benefit of not needing to track a potentially dynamic IP address. | ||
| - Similar to the Public IP address, it's likely that you'll need to set up port forwards if you're hosting from a home network. | ||
| - Additionally, you'll need to configure DNS to point to the server's public IP address. Setting up DNS is out of the scope of this guide, though your domain registrar or dynamic DNS provider should have this documentation available. | ||
|
|
||
|
|
||
| Using any of database client refered in the requirements page (HeidiSQL, MySQL command-line interface [CLI], etc... or others your choice) you may change any of column's values by a simple SQL query. | ||
|
|
||
| ### HeidiSQL (most popular for newer users of MySQL). | ||
| - Click once in `acore_auth` within that database click once in `realmlist` and in the `Query` tab run the query below. | ||
|
|
||
| Alternative you may use the UI by going to `Data` (not `Table: realmlist`) tab and change the values manually (by double clicking in them). | ||
|
|
||
| ### MySQL CLI (most popular for linux users.) | ||
| - In your terminal of choice (example given for `CMD` of Windows, which is recommended to be ran as `Administrator`) | ||
|
|
||
| `mysql -u acore -p -h 127.0.0.1 acore_auth` | ||
|
|
||
| (This will prompt your password after being executed) | ||
|
|
||
| Example: | ||
|
|
||
| ``` | ||
| UPDATE `realmlist` SET `address` = "21.0.1.59", `localAddress` = "192.168.1.50" WHERE `id` = 1; | ||
| ``` | ||
|
|
||
| This will change the [Public IP](http://www.whatismyip.com/) to `21.0.1.59` and the **Local IP** to `192.168.1.50` where the `Realm ID` is `1` (by default is `AzerothCore`). | ||
|
Comment on lines
+36
to
+80
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Just refer to the table's page instead. We dont need to duplicate the information. Also a step by step guide with different softwares is too much in my opinion. But that's just personal opinion
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Avoding users, specially new ones to change to a new page showing all the information that makes no sense to them (the specific table page), is the reason why selected fields are mentioned. I wanted to provide both a CLI and GUI form for the user, at least for GUID Heidi's case, the amount of times people change the information on the wrong place (the table's strucutre not the data structure) |
||
|
|
||
| ## Help | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
email part is not needed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's good to keep there, many users have tried logging in with their email
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just to add to this, the account creation process doesn't ask for an email, so this is strictly a private server player thing