• The Eevee Expo Game Jam #10 has concluded, congratulations to all participants! Now it's time for the judges to play through the games, and you can play along to vote who deserves the community choice spotlight.
    You can check out the submitted games here!
    Play through the games and provide some feedback to the devs while you're at it!
  • Hi, Guest!
    Some images might be missing as we move away from using embedded images, sorry for the mess!
    From now on, you'll be required to use a third party to host images. You can learn how to add images here, and if your thread is missing images you can request them here.
    Do not use Discord to host any images you post, these links expire quickly!

Questions about contributing to Pokemon Essentials main project

dantesmatena

Rookie
Member
Joined
Dec 27, 2023
Posts
1
Hey everyone !

I'm pretty new to the Pokemon Essentials community, so I have some questions and I need some clarifications about contributing to Pokemon Essentials main project :)

To introduce myself a little :

I am a web developer with 6 years of experience, and I have always been a fan of Pokémon games. In November 2023, a friend asked me if I wanted to help develop a way to play Pokémon Reborn together (a game I was unaware of before that), which I accepted. This was because I wanted to venture into game development and I thought it would be motivating to work on a universe I enjoy. Modding a Pokémon fan-game to include online features, I believe, is a great first step.

Since November 2023, I've been working on a Pokémon Reborn mod that allows players to cooperate in the main story (this involves synchronizing events for both players, for instance). This is currently functioning quite well in Pokémon Reborn, and I plan to adapt it for broader use with Pokémon Essentials, if possible. I am also developing a system that automatically scales the levels of NPC trainers' Pokémon based on your Pokémon's level, as well as several automatic difficulty modes. For example, in a hard difficulty setting, the system would automatically evolve the NPC trainers' Pokémon. However, this is currently specific to Pokémon Reborn, and I need to refine it a bit more before releasing it to the Pokémon Reborn community.

With this experience as "modder", my curiosity led me here and I discovered Pokemon Essentials community with all the talented people that are part of it and the wonderful games you are creating. But I'm still a little confused about how the community work on the Pokemon Essentials project.

My thoughts/questions :

As a web developer, I contribute and use open-source projects that are maintained by several talented developers in the Javascript/Typescript community. So, it seems that Pokemon Essentials adopt the same way of development (the open source way). According to Nathan MV topic on How to contribute to Pokemon Essentials, everyone is welcome to contribute to the project if they can provide good enhancements to the game engine and good scripts. Until here, everything looks cool !

But then begin my misunderstanding of the situation. I clone the repository of pokemon essentials to see the git tree and the commits just to have an idea of the work done previously. And I saw this :
1705490899144.png
1705491076116.png
1705491157439.png
1705491305867.png

This screenshots represent who is making changes on the git repository of pokemon essentials (that contains the code of pokemon essentials engine that everyone use). We can clearly see that only Maruno17 working actively on the main project. So until here, I just said to myself "Ok maybe the others developers didn't have the time to contribute", you know with studies, work, family, children, etc... because they use to work on it back to 2022 and early 2023 (according to this contribution graph)


Then, I saw a lot of developers/modders/scripters shared their new plugins in the Ressources threads of the forum. And a lot of plugins seems to be cool and popular enough to be integrated directly in the main project, I'm thinking about Deluxe Battle Kit by Lucidious89, or others great plugins from Voltseon, Luka SJ, ENLS, -FL-, Golisopod user etc...
And I was thinking, "If they have the time to develop their own plugins or maintain them, why don't they integrate their plugin code directly into the main project?" I've noticed that some plugins are essential for every Pokémon fan game developer. They are extremely useful and would help fan game developers to develop their games more easily. So, why aren't they included directly in the main engine?

As I wanted to find an answer to my questions, I continued to read threads in the forum but didn't find anything else about the contribution rules. So, I came back to the post of Nathan MV concerning the main project contribution and open the document of Maruno Roadmap for Pokemon Essentials and found this :

1705493900541.png

Why "get inspiration from third-party plugins"? Can't the developers of these plugins implement the plugins themselves in the main project? I'm really confused about the current situation. ^^'

I think it would be better if some plugins could be natively implemented in the main project. Doing so could help avoid potential breaking changes in plugins with key features like Mega Evolutions or Teracristalization when a new version of Essentials is released, right?

Wouldn't a better option for this implementation be to allow fan-game developers to choose whether to use these features or not? Perhaps the features from the implemented plugins could be activated using variables in Settings.rb and BattleSettings.rb?

Can anyone from the dev team clearly explain the situation about all of this to me, please? :)


Thanks ! ;)
 

-FL-

Pokémon Island Creator
Member
Joined
Aug 28, 2022
Posts
305
Besides this roadmap, Maruno goal is to only implement "Essentials" things to kit, otherwise it is harder to maintain, to test and make everything work as intended even with frequent changes at codebase. So, no Pokémon Follower at base kit, besides being at roadmap (yeah, this roadmap isn't clear). These ones are listed by completeness. Some non-essentials things already in the kit, like Shadow pokémon or duel minigame are in the project only due to being legacy, before Maruno took over. I personally think that Essentials could implement some more things, but essentials features should come first.

I allowed to integrate my scripts at Essentials if Maruno feels so (I even have some suggestions).

To help with Essentials development, the best way is to ask Maruno what you can do. Still, I think that things that are missing in Essentials, but present at several games, like multi-pokémon selection in boxes, have no reason to be rejected, barring some exceptions, but I strongly suggest to ask Maruno before start developing extra features.
 
Last edited:
Back
Top