FL

Pokémon Island Creator

Male
Seen 1 Day Ago
Posted 4 Days Ago
2,075 posts
11.7 Years
Introdution

Hi, I'm FL, one of first dev of those who managed to make a full game using Essentials (Pokémon Island). Several times I'm asked how to make a pokémon game, so I here to give tips and recommend guides/sites/resources about making a game. I focus on a game made using Essentials.

Keep in mind that making a full game requires a iron will, a good portion of planning and lots of time, around 200 hours for sample ones but I estimate that I spend more than 2500 hours making my game until now. Knowing about pixel art or script isn't necessary (except the basics), but your game will be very better if you know.

Starting

Keep in mind also that any help to your project is a bonus! Making a team and recruting people probably is the most effective way of making a high quality game, but you should know how to continue the project if no one shows up or if someone quits from your team. Have a B plan or you unlikely will complete a project. Don't try to master all areas (script, pixel art, level desgin, story, audio). Ideally everyone should specialize in what they are best at. I concluded that the best is to make the game and putting placeholder graphics/system where you can. If you find someone to help you, just replace these things, else try to use other resources or sample things.

A very good guide is How to use Essentials. Attention for the first item! I suggest for only starting using Essentials after learning about 90% of event commands do. Make a test project and test these commands.

Remember: As more you train before, better your game will be. Experience is very important in several aspects, even in game design! The more games you do, the better you will be.

Planning and taking decision

Planning is VITAL for big projects. It's VERY easier to correct problems or restruture things in this stage than later on. I suggest you to think about, at least, 90% of bosses (AKA GYM Leaders, Team Leaders and rivals) and their characteristics before start making the game, as well other impactful things like 90% of places/locations/main points to define the game main phases.

There some decisions that you need to take before making the game, otherwise you will have a big rework, like using charsets/tilesets of generation 3 or generation 4/5. Avoid rework because the time that you take to do two times the same thing can be the time that you release you game earlier or that you can make extra features. But some times rework is ineviable, specially when you are making a graphic and it doesn't look good in the game. Analysis is fundamental.

Making the game "playable"

Some people make the game only for himself, some try to be popular/high critically praised and some make for a combination of these two. It's out of scope of this guide about which of these is the right/wrong, but I suggest you to make a game for yourself as if you are other person. Think about a player who thinks in a similar way of you. If you like to everyone enjoys your game, keep in mind the general tastes, example: You love hard games, but the average players doens't like, so make the game (at least in the start) not so hard.

Remember that all players, even the non-so-smart ones and the ones with low patience, will play the beginning part, but not all will play to the final part, so don't make the firsts hours of gameplay too hard or too boring. If the first hours of gameplay aren't too interesting, the majority of players will give up of playing without reaching an ultra-super-cool climax, so make the beginning interesting too.

Also, make sure that these people don't miss important stuff or, worse, became stuck. So, don't make things like "go back to the third city to find the thief" unless you make this very clear to player, and even make someone to repeat it if player overlook this information. This is a very important thing to keep in mind when you are playtesting your game.

Updating

Try to make your game up to date with latest stable Essentials release. I suggest to update 1-3 months after a new Essentials release. Unless the update process take a huge time (like 15 hours or more) or break thing that you can't fix (like an Contest script, only available to Essentials v19 and very important to your specific game), try to stay up to date. Newer Essentials have a lot of bugfix and nice features and being stuck in a old version may be a nuisance if you plan to maintain your project during years. Follow Essentials Update guide, so every time that you change something in the scripts, remember to put some tag (like '#newscript') so you can easily find all changes with Ctrl+Shift+F.

I suggest you to make the custom secondary things with no much impact in the gameplay (like extra Pokédex/Pokégear screens) and visual things (like redone the pictures) after the main game is practically done. So is easier to update before these changes. Other advantage is that the beta testers can play the beta version and give the feedback while you make these things, and if you can't continue making the game there's a full game already done. If you know how to handle with it, the feedback is vital, pointing where you should improve.

Links/tools recommendations

Don't reinvent the wheel! Before making resources, search if them already exist! There some very neat stuff on resource sections you can't even imagine. Sometimes you find them better made that you can done! The reverse also apply, but, at least you have a base to do yours resources. If I take 1 hour to make a resource I prefer to, at least, search for 1 hour this resource. I suggest you to spend at least some hours looking for resources (including scripts). Try also some other places to find resources, like Deviantart, just remember to search in the right section and use the right keywords in the search tools.

A very good way to learn how the things works is to look into the official games, SPECIALLY the graphics. But don't forget that the official games have several flaws, specially in the story. There severals gameplays at Youtube and several database in the internet (look specially at the wiki ones) if you need to check some part like the Pokémon Marts item list screen, the trainer party screen or a visual animation in that is better to watch in videos like the escalator and the doors opening.

There three tools that are indispensable for me:
  1. Turbo/Fast-forward Button debug: You can test thing A LOT faster with this script.
  2. RMXP Event Exporter: With this you can do Ctrl+F in ALL your text and event scripts. Helps a lot when you want to change some trainer/item ball/dialog and forgot where the event is.
  3. Call Event: This is like Call Common Event, but with all events. This helps to avoid duplicate events.

Scripter environment

If you didn't code scripts (small edits don't count), skip this section.

You MUST extract the game scripts if you code, it allows the use of a professional editor with A LOT of features, like tabs, more shortcuts and detecting syntax errors without playing the game. Believe me, you will be more efficient with a good editor. Extracting scripts also make the game work better with a versioning system (like Git on GitHub), system good to make backups and work in a team.

To extract the script, you can use extract/combine from Essentials open source project, they require ruby to be installed but work very well. Alternative tool: Easy Script Importer/Exporter. If you extracted the scripts, I suggest using Visual Studio Code or Atom to edit the scripts.

Take a look at editor extensions! I gonna put here the links for VS Code versions, but there are Atom versions too. For ruby development, use Solargraph and Rubocop.

Solargraph provides several IDE features like an autocomplete (with class/method/variable names), you can check class/method/variable with a mouseover and ctrl+click to instant go into definition.

Rubocop is focused on linting, it display warnings for unused variables on even point syntax errors without running the game. You can configure it to raise warning for things like too long methods.

Besides ruby extensions, currently my favorite extension is Code Runner, so you can select and executes a code, very good to check how some things work on ruby, or even test more secluded methods.

Making the game

Eventually you find an obstacle to do something, but eventually manage to surpass (or bypass) these issues. Anyway, search before asking a question. I strong suggest you to read the related pages at Essentials Wiki. If you wish a character that only appears at one day per week, look at wiki pages related to time. If you wish to make an island to appears in the map after a certain event, look at the pages related with region map! Remember, knowledge is power! If even after you spend a good time searching you didn't found an answer, so it's ok for asking.

With the Essentials kit you can do everything essentials for a pokémon game with pokémon systems. Some non-essentials things like the Player Room or Secret Bases requires eventing/scripting or third party scripts. Keep in mind that is very hard to someone make a complex feature for you, so enjoy the tutorials/scripts already released in the internet.

Keep track that you are doing! A certain level of organization is very important in any complex thing! A good example are the trainers in the areas. If you sort and comment in trainers.txt every trainer area, is much easier to find and edit trainers after.

Frequently test the game or some changes may result in a great rework for you. Example: If you make the trainers for the entire game and, after this, you start testing and conclude that the game is too hard, so you need to rebalance all the trainers. Sometimes you only need to increase a few levels, sometimes you need to redo some teams. Fortunately the pokémon games have a relatively balanced system, including pokémon levels, exp gain, money and item cost, so this part is very easier than a standard RPG game. This apply to test not just trainers but also maps and theirs items, so avoid big/complex maps and strong items in the beginning. Pay attention in some details like the levels of your pokémon/latest boss when some items are avaliable in the marts at the official games.

Backups are INDISPENSABLES. So do a backup schredule.

The time is a very important resource! Very, very, VERY few people can make the same game for more that five years without becaming tired of it, this without talking about raising a chance of someone of you team have a problem that may ruins the game/team. If you can do everything as twice as fast that other people, you can reduce a game that requires 8 years to 4, considerably raising the chance of finish a game! Beware of drop of quality! Some mistakes may backfire a bigger time lose with rework! Haste makes waste.

For my experience, I suggest you to spend some hours making your game every week. If you stop doing this, the chance of you give up greatly increase. Keep the rhythm!

If you do a very simple game and keep around 10 hours per week making the game (without counting the time advertising it and things related), the game will be ready in a few months.

If you wish that everyone plays your game, remeber than advertising a game is even more important than making a good game.

FL

Pokémon Island Creator

Male
Seen 1 Day Ago
Posted 4 Days Ago
2,075 posts
11.7 Years
Thanks for this helpful guide! Would it be possible for you to YouTube tutorials to show others the basics so they can improve?

Cheers, ShiftFG
This guide is strategy/tactical. there's no a easy way to do videos about these concepts. I may focus at some area (script, pixel art, level design, audio) to review good/bad examples or do operational tutorials (there some of these at web).

Anyway, I'm not good at making video tutorials, so I don't intend to do.

FL

Pokémon Island Creator

Male
Seen 1 Day Ago
Posted 4 Days Ago
2,075 posts
11.7 Years
Thanx FL This is a great guide. You've given me a lot to think about and now I realize, I need to do much much much more planning for my Pokemon Game before I even start. I need to write a story and figure out all the little things now that I've got the basic ideas and locations in mind.
I'm happy that this guide helps some devs =)

Would you say it better to make a game maker designed to make Pokemon games or to make things like Essentials which can do the same thing (almost) as a Pokemon Game Maker?
Ideally, an engine with everything. If I going to develop something like this, I probably doing something like Essentials to utilize RPG Maker eventing/mapping tools and similar things.

But if you need to choose making a new engine or use Essentials, I suggest you to, without doubt, use Essentials. A pokémon game already consumes a huge time, making a new engine from scratch consumes a titanic amount of time. I agree with http://www.pokecommunity.com/showthread.php?t=284350

FL

Pokémon Island Creator

Male
Seen 1 Day Ago
Posted 4 Days Ago
2,075 posts
11.7 Years
Exuse me, I actually can't download your cavetiles: can you post it a second time, please?
I updated these three links!

FL

Pokémon Island Creator

Male
Seen 1 Day Ago
Posted 4 Days Ago
2,075 posts
11.7 Years
Major update! I pratically remade some sections, especially "Links", and added a section for tools and other for recomendations for scripters.