Suggestions to improve Essentials

kmb

dabbling in game design
Member
Posts
60
#41
I've already added a couple of scripts for this to the next version of Essentials. They do what you describe for "Distance", but the x and y ranges are separate values so you can set them separately. "Range" would be the same as "Distance", I think, so long as the event started off in the middle of it (I don't know why you mentioned a triangle).

Events on water can already only move to other water tiles. This was done because of swimmers.


There's this and this, although I agree that the relevant information (and more) should be gathered in a single place for easier reference.
Since you agree that relevant information should be gathered in a single place. Would it be okay if I made a free PDF tutorial to go along with Essentials? I thought it would be appropriate to ask before just getting to work on it, in case you already have someone else doing that.
 

Maruno

Pokémon Essentials dev
Essentials Developer
Posts
194
#42
Why make something new when the wiki exists? By that I mean you could write a guide and put it on the wiki.
 

Mr. Gela

Elite Trainer
Member
#43
Regarding roaming Pokémon (Bulbapedia article):

Main games behavior:
  • The roaming Pokémon is the same at all times. It is only generated once until defeated or caught.
  • Visible "Nest" area in the Pokédex (Generations 2 to 3) / Visible in the player's device Town Map.

Essentials behavior:
  • The Pokémon isn't the same each time it is encountered. It is generated each time the encounter happens meaning even shininess is lost if it is not caught within that encounter.
  • The player cannot check where the Pokémon might be outside of Debug Mode.
I'd like to see Roaming Pokémon reflect their status in Generation 4, where you can just grab the map and check the Pokémon's current positions. If this were the way you'd like to go about it someday, here are the map graphics used for Latios, Latias, Raikou and Entei, ripped from HGSS. These files could simply be named 'mapPokemonXXX', XXX being the species ID of the Pokémon, for example.


I'd settle with the Pokédex display as well, but the former would be much slicker.

As a small "bug" that I'd drop at the Bugs thread, but since it's related to this: While testing, I rerolled a roaming Pokémon's location until it matched mine, then battled it. Afterwards, I check the Roaming Pokémon menu in the Debug Menu (under Battle), and it said it -still- was in that location, but walking didn't make me encounter it again. I can replicate this 100% of the time.
 

Maruno

Pokémon Essentials dev
Essentials Developer
Posts
194
#44
I have been debating whether to put the roamer's current location information in the Pokédex or the Town Map. I still can't decide - it's a location where you can find the Pokémon so the Pokédex makes more sense, but I can easily imagine you setting loose a roamer but you haven't "seen" it yet (in terms of having an entry for it in your Pokédex) so it'd be a complete fluke to encounter it the first time. It's shown in the Town Map only in Gen 4, which is a minus for that side.

A roamer is supposed to be the exact same Pokémon each time, though. I've just tested it and it remembers how much HP it had between encounters, and there's nothing special about HP to make that remembered but nothing else. Are you sure you weren't knocking it out between encounters? That will cause it to re-generate and be different, I think.

A roamer only changes location when you change maps, and you can't encounter it more than once while on the same map. It's not a bug, it's intentional, although I can see that it should immediately go elsewhere if you're able to see its current location.
 

Buttjuice

happy dev
Member
#45
I think it’d be nice to be able to define a pokemon’s form in the wild encounters text file, so for people who do happen to have alolan forms (or even custom ones) they could do 019_1, or something like that. It’d be more user friendly, especially for newer devs. Sorry if that was already suggested or brought up, something I’ve always thought would be much more convenient instead of having to use a switch, variable or editing it in the scripts. ^^
 
Last edited:

Maruno

Pokémon Essentials dev
Essentials Developer
Posts
194
#46
There are many possible ways to decide the form of a wild Pokémon, and "per map" is just one. I wouldn't want to support that but not the other ways (e.g. random choice for Unown, environment for Burmy/Womadam, season for Deerling, random yet consistent for Vivillon, proportionally random for Pumpkaboo), and I think it's excessive to add support for those, not to mention it would tend to exclude new form decision methods such as depending on the weather or time of day just because I didn't think of them to add support for them - and it'd be harder for people to code new methods because there'd be fewer examples.

There are already examples of how to choose the form depending on the map (Shellos, Giratina) and you can just copy that. The choice of form is consistently a script, usually not a complicated one, and I think that's fine and the most flexible and accessible approach.
 

Mr. Gela

Elite Trainer
Member
#47
A roamer is supposed to be the exact same Pokémon each time, though. I've just tested it and it remembers how much HP it had between encounters, and there's nothing special about HP to make that remembered but nothing else. Are you sure you weren't knocking it out between encounters? That will cause it to re-generate and be different, I think.
Weird. Tried again and it does remember HP. I didn't knock it out before so that's weird. I'll assume I made a mistake at some point.

It's not a bug, it's intentional, although I can see that it should immediately go elsewhere if you're able to see its current location.
In the main series it does roam immediately. I'd dare to say it actually skips to a completely new location instead of only moving to a nearby Route, something that also happens randomly even if at a small chance.

If you want my opinion, allow for both Pokédex and Map locations. No harm in giving some options.

Small inconsistency (unrelated to the above but not worth a new post):
pbOptions (PScreen_Summary) has a command to "View Pokédex" on the selected species. However, this method does not take into account the holder's ownership of the Pokédex. Simple to fix, but worth noting down.

A small QoL request:
A setting that allows me to sort Pokémon, items, etc. by their Internal ID if I so wish. To my knowledge, most of the time it's done alphabetically and this can be easily recoded, but I'd appreciate a setting in SETTINGS so that, when browsing the Debug menus, Pokémon and Items can be sorted in the same way consistently. For example, by default, the Sprite Position Editor uses alphabetical order to sort the Pokémon (Abomasnow, Abra...), but the Wild Battle menu sorts them by Internal ID (Bulbasaur, Ivysaur...). I suggest assigning a number to this setting, 0 being by default, 1 being "all alphabetical" and 2 being "all by Internal ID".
 
Last edited:

Maruno

Pokémon Essentials dev
Essentials Developer
Posts
194
#48
A small QoL request:
A setting that allows me to sort Pokémon, items, etc. by their Internal ID if I so wish. To my knowledge, most of the time it's done alphabetically and this can be easily recoded, but I'd appreciate a setting in SETTINGS so that, when browsing the Debug menus, Pokémon and Items can be sorted in the same way consistently. For example, by default, the Sprite Position Editor uses alphabetical order to sort the Pokémon (Abomasnow, Abra...), but the Wild Battle menu sorts them by Internal ID (Bulbasaur, Ivysaur...). I suggest assigning a number to this setting, 0 being by default, 1 being "all alphabetical" and 2 being "all by Internal ID".
Tap Z while in the list. It should toggle between listing alphabetically and listing by ID number. This doesn't work for all lists (because there are several kinds of debug list), but it will for a few.
 

Wiispeed03

Novice
Member
Posts
33
#49
Would it be possible to make the TM pbs file easier to edit? Especially if a game has fakemon, new TM's, or even just Gen 6 and Gen 7 Pokes, it could be very tedious to edit. Now I know that there's no real easy fix to this, but what I was thinking is have the option to allow "all grass Pokemon" or "all Pokemon" to learn, the latter for moves like toxic, and then maybe to be able to make exceptions after stating that.

I understand this is a more QoL improvement and I don't even know how easy or hard this would be, but it's something that I think a lot of people would like to be improved.
 

MGriffin

Trainer
Member
Posts
90
#50
I was thinking is have the option to allow "all grass Pokemon" or "all Pokemon" to learn, the latter for moves like toxic, and then maybe to be able to make exceptions after stating that.
I wonder if you could build this yourself by having a file where you have a list of all the grass Pokémon (or what have you) and copy and paste onto all the TMs you care about? But I guess it's a bit of a pain to produce that file in the first place...
 

Wiispeed03

Novice
Member
Posts
33
#51
I wonder if you could build this yourself by having a file where you have a list of all the grass Pokémon (or what have you) and copy and paste onto all the TMs you care about? But I guess it's a bit of a pain to produce that file in the first place...
Actually that's not a bad idea, and something I might do, but yeah, it will be a pain to create them haha. It would still be nice to have some sort of that implemented into essentials, but thanks for the idea nonetheless.
 

ExodusCDrake

Rookie
Member
Posts
2
#52
How about adding this script into essentials? This terrain tag staircase script has been rather kind, it has yet to conflict with anything I've put it with. It's definitely better than using events to move the player all the way up and down a staircase, you have full control going up and down. It's incredibly minor, but I'm surprised it's not an option in essentials already.
https://www.pokecommunity.com/showthread.php?t=398998
 

Marina

Trainer
Member
Posts
96
#53
I wish the "Following Pokémon" script would be added into essentials 18 and a option to turn it off, for those who don't want the script. It would be nice, if it worked properly and in a user friendly way, specially for newer devs. Imo the way how you have to code the event where the Pokémon is inside the ball and then where its outside the ball is a pain, because I read you had to make an event before leaving a house and after leaving a house.
 
Posts
2
#54
Would it be possible to code a color editor into the in-game editor? This color editor would be used for basic color changes that would be applied to the battle and overworld event sprites. It would save on file size not having to double up on battle graphics just to have shinies and the likes.
 
Posts
3
#55
A maximum size of 128x128 pixels for the Pokemon and trainers in battles could be handy. I remember that Reshiram and Zekrom are the only Pokemon this size in the games.
Also, a featrure where we can fight enemy Pokemon that can't be fought (think Pokéstar Studios) could be nice.
 
Top