Hey guys, in the discord server yesterday a couple of members mentioned there isn't a basic github tutorial for people wanting to start recruiting and adding a team.
For this tutorial you will need: A fresh version of Pokemon Essentials (or if you've started development, your game file), Github Desktop, a Github account and for the webhooks a discord account + discord server you can connect the repository too (this isnt needed, it just makes things easier).
Github & Discord are the easiest ways to share resources and graphics as a team. For Pokemon Repudiation we generally share all our artwork and sprites in our discord server, as well as keeping note of credits for all resources etc (Picture below of the dev section of the Repudiation server).
(Picture 1, example of the development sections of the Repudiation server on Discord Desktop).
Now for the tutorial, first you must create a Github Account and download Github desktop. This is done here https://github.com/ Signing up is very simple and only requires your email and a password. I would suggest using a memorable password as some devs in my team have forgotten their passwords (we've all been there). You will also require a small amount of computer space for the download (The setup for desktop is 137mb). You can use github without having github desktop being downloaded but I would highly recommend downloading this as it streamlines what we need to use it for. Note: You can also publish the github for people who want to play your game for the download, this was recently done with Pokemon Myth but we will ignore that for the purposes of this tutorial.
So now you have github desktop downloaded and you have an account, it is time to create a repository. On your dashboard, you will have a screen like this (without the Repud repositories). There is a tutorial repository that is downloaded for some of the basic and in depth information for a repository but this tutorial will show you everything you need for a Pokemon Essentials game.
You will want to click the 'New' section in the 'top repositories' section to create a new repository for your game. It will take you to this next screen.
I would highly suggest making your Github 'Private', this way no one can see it until you add collaborators (Shown later)
For this tutorial, we will name the Repository 'Pokemon Shattered Crystal' and give it a short description.
and then you will click 'Create Repository' at the bottom of the screen, as shown here
(Example 3)
And it will then take us to this screen:
For now we are DONE with the Github on browser. So, we want to head over to Github Desktop.
Opening Github desktop we will find something similar to this:
As you can see we have Pokemon Shattered Crystal on the side, if we click this then we get the option to 'clone' this repository as shown below:
(Example 4)
We want to clone this
.This will clone an empty folder onto wherever you have created the local path (Automatically it goes to your downloads folder).
So we now have an empty repository on the game, we can download and add the Pokemon Essentials to the Repository.
Just download Pokemon essentials, extract the zip file and then you can drag and drop all of the files into the Repository. This will take a little bit of time but it is very much worth it.
(Examples 5 & 6) This is what your file will look like when you have added everything from the Pokemon Essentials download to your local game folder.
The next part is very important.
Here we have a list of changed files, we need to put a name in the summary section and I always add descriptions so other devs know what I have changed. The next image will show an example.
(Example 7)
And then we MUST click Commit to main, this will take a few seconds due to the amount of files changed. And then we can publish the branch which we must do to continue. This will also take a few minutes to load.
When that has published we have a new button 'fetch origin'. This button is VERY important.
Whenever we make any changes to the git, or when anyone else makes a change to the git we will need to press this button. Pressing fetch origin will give you the option to pull origin from other peoples publishes and when we make any changes we get the option to push any changes. I will demonstrate this with adding a simple Credits text file to our exmaple Git.
Since there are no changes we want to ignore the fetch origin and just add a simple file and it will look like this.
(Example 8)
Again we just want to name the commit and click Commit to main. and it will change to show this:
(Example 9)
It is IMPORTANT that we push any changes, this will make sure that the latest version of your game file is up to date and means all your developers will have the most up to dayey whenever they press fetch origin. I cannot stress enough how important it is to do this when you've made any changes, it is a lifesaver for if you find a gamebreaking bug or something doesn't work. If you get to the point where you need to remove something from the game file or you have broken something beyond repair then you can check the history tab of your repository, it will look like this:
(Example 10)
To go back to a previous version where something is not broken you just need to click 'revert' when clicking on a previous commit, as shown below.
That is your basic tutorial for setting up a repository.
Now, you have posted a recruitment thread on relic castle or pokecommunity and you have devs that want to join? How will you add them to the repository? Very simply!
If we go back to the Browser version of github and click settings:
It will give us these options:
The only one we are interested in is Collaborators.
For our example I am going to invite one of my devs to this project.
They have now been sent an email invite to join this repository, I would also recommend clicking the 2 square boxes and sending them the invite link as it makes it very easy for them to just accept your invite. And now you have collaborating developers on your Pokemon Fangame.
As a final stage, if you have a server for development (Or a fangame server with a dev section like we do with Repudiation) you can add a webhook. Webhooks are great for helping you keep track of who is doing what.
We want to click webhooks and then 'add webhook'
It will bring us to this screen, I always choose send me everything so that I get a notification whenever someone pushes any changes or if we add another dev to the game. It is very useful to see when, what and who does things in the server as your role as a lead developer. To add the webhook we just need to create a URL from discord. as shown below:
you need to add '/github' at the end of the URL
This webhook is now set up, I will show some examples of what ours shows in the Pokemon Repudiation webhook channel.
AND THERE WE GO, you are all set to create a dev team and have your Pokemon fangame collaborated on by people all over the world!
I hope this tutorial helps and I would be happy to answer any questions.
For this tutorial you will need: A fresh version of Pokemon Essentials (or if you've started development, your game file), Github Desktop, a Github account and for the webhooks a discord account + discord server you can connect the repository too (this isnt needed, it just makes things easier).
Github & Discord are the easiest ways to share resources and graphics as a team. For Pokemon Repudiation we generally share all our artwork and sprites in our discord server, as well as keeping note of credits for all resources etc (Picture below of the dev section of the Repudiation server).
Now for the tutorial, first you must create a Github Account and download Github desktop. This is done here https://github.com/ Signing up is very simple and only requires your email and a password. I would suggest using a memorable password as some devs in my team have forgotten their passwords (we've all been there). You will also require a small amount of computer space for the download (The setup for desktop is 137mb). You can use github without having github desktop being downloaded but I would highly recommend downloading this as it streamlines what we need to use it for. Note: You can also publish the github for people who want to play your game for the download, this was recently done with Pokemon Myth but we will ignore that for the purposes of this tutorial.
So now you have github desktop downloaded and you have an account, it is time to create a repository. On your dashboard, you will have a screen like this (without the Repud repositories). There is a tutorial repository that is downloaded for some of the basic and in depth information for a repository but this tutorial will show you everything you need for a Pokemon Essentials game.
You will want to click the 'New' section in the 'top repositories' section to create a new repository for your game. It will take you to this next screen.
I would highly suggest making your Github 'Private', this way no one can see it until you add collaborators (Shown later)
For this tutorial, we will name the Repository 'Pokemon Shattered Crystal' and give it a short description.
and then you will click 'Create Repository' at the bottom of the screen, as shown here
And it will then take us to this screen:
For now we are DONE with the Github on browser. So, we want to head over to Github Desktop.
Opening Github desktop we will find something similar to this:
As you can see we have Pokemon Shattered Crystal on the side, if we click this then we get the option to 'clone' this repository as shown below:
We want to clone this
Just download Pokemon essentials, extract the zip file and then you can drag and drop all of the files into the Repository. This will take a little bit of time but it is very much worth it.
(Examples 5 & 6) This is what your file will look like when you have added everything from the Pokemon Essentials download to your local game folder.
The next part is very important.
Here we have a list of changed files, we need to put a name in the summary section and I always add descriptions so other devs know what I have changed. The next image will show an example.
And then we MUST click Commit to main, this will take a few seconds due to the amount of files changed. And then we can publish the branch which we must do to continue. This will also take a few minutes to load.
When that has published we have a new button 'fetch origin'. This button is VERY important.
Since there are no changes we want to ignore the fetch origin and just add a simple file and it will look like this.
Again we just want to name the commit and click Commit to main. and it will change to show this:
It is IMPORTANT that we push any changes, this will make sure that the latest version of your game file is up to date and means all your developers will have the most up to dayey whenever they press fetch origin. I cannot stress enough how important it is to do this when you've made any changes, it is a lifesaver for if you find a gamebreaking bug or something doesn't work. If you get to the point where you need to remove something from the game file or you have broken something beyond repair then you can check the history tab of your repository, it will look like this:
To go back to a previous version where something is not broken you just need to click 'revert' when clicking on a previous commit, as shown below.
That is your basic tutorial for setting up a repository.
Now, you have posted a recruitment thread on relic castle or pokecommunity and you have devs that want to join? How will you add them to the repository? Very simply!
If we go back to the Browser version of github and click settings:
The only one we are interested in is Collaborators.
For our example I am going to invite one of my devs to this project.
They have now been sent an email invite to join this repository, I would also recommend clicking the 2 square boxes and sending them the invite link as it makes it very easy for them to just accept your invite. And now you have collaborating developers on your Pokemon Fangame.
As a final stage, if you have a server for development (Or a fangame server with a dev section like we do with Repudiation) you can add a webhook. Webhooks are great for helping you keep track of who is doing what.
you need to add '/github' at the end of the URL
This webhook is now set up, I will show some examples of what ours shows in the Pokemon Repudiation webhook channel.
AND THERE WE GO, you are all set to create a dev team and have your Pokemon fangame collaborated on by people all over the world!
I hope this tutorial helps and I would be happy to answer any questions.
- Credits
- Tutorial: TheOnlyFelicity
Addendum about the webhook: ENLS
Pokemon Essentials V21.1:
Poccil Flameguru
Maruno FL.
P-Sign
Pokémon Essentials" was created by:
Flameguru
Poccil (Peter O.)
Maruno
With contributions from:
AvatarMonkeyKirby
Marin
Boushy
MiDas Mike
Brother1440
Near Fantastica
FL.
PinkMan
Genzai Kawakami
Popper
Golisopod User
Rataime
help-14
Savordez
IceGod64
SoundSpawn
Jacob O. Wobbrock
the__end
KitsuneKouta
Venom12
Lisa Anthony
Wachunga
Luka S.J.
and everyone else who helped out
"mkxp-z" by:
Roza
Based on "mkxp" by Ancurio et al.