Welcome to the PokéCommunity!

Hi there! Thanks for visiting PokéCommunity. We’re a group of Pokémon fans dedicated to providing the best place on the Internet for discussing ideas and sharing fan-made content. Welcome! We’re glad you’re here.

In order to join our community we need you to create an account with us. Doing so will allow you to make posts, submit and view fan art and fan fiction, download fan-made games, and much more. It’s quick and easy; just click here and follow the instructions.

PGM is all set for February. This month, we're playing through a game known as Eevee's Tile Trial. If you wish to earn rewards, please head over to our event thread by clicking on the provided link and give yourself a shot at the game!

Hey Unregistered! How fast can you game? The Marathon II is up and running in Video Game's - compete against your friends to see how quickly you can complete sixty intense in-game challenges. See you there!

Why not implement online features in Pokémon Essentials?
I mean online trades, online battles and online multiplayer things (like the entralink in BW, in which is it possibile to see each player on maps).
That would be something you can switch on or off, so if you would use something online (eg: the chat system, which change the screen height) you will find a setting in the script section "Settings" that allows this. Otherwise nothing, you will have the actual Pokémon Essentials.

Why not implement online features in Pokémon Essentials?
I mean online trades, online battles and online multiplayer things (like the entralink in BW, in which is it possibile to see each player on maps).
That would be something you can switch on or off, so if you would use something online (eg: the chat system, which change the screen height) you will find a setting in the script section "Settings" that allows this. Otherwise nothing, you will have the actual Pokémon Essentials.

That was the first thing I though to do an online based Pokémon Essentials.
But I don't want a separate project like Pokémon Essentials: Online, online features should be joined to the "official" starter kit.
I'll try to do something, like Alexandre did.. but I'm not sure alone I'll be able to do all. XD

It's a very big "suggestion". I think the main issue here is "how do we make the games communicate on separate machines". This can be divided into other problems where people either don't want to have their machine as a dedicated server (or can't have them), or don't own an online server, or don't want to buy a dedicated server. I've actually considered this multiple times, and I have an idea on how to do such things (theoretically). I tested out various scripts I wrote, which allowed for the transfer of data, but these things require your own host. There are free ones out there though.

Ok, now onto my ideas:
1. The early skeletal designs involved the use of online FTP folders. This way the game could upload and download certain files. My files were always in .rxdata format, as those were very easy to read and write to. Problem with that is, it's slow, and not very efficient in real-time situations (like the battle system). My workaround for that was, in creating a downloading method which worked in the background. This way I was able to continue and update scenes, while also constantly fetching new online files. I did it by indexing files with trainer IDs, and constantly deleting, uploading and downloading files. In the end, that proved not to be very efficient, as two separate machines wouldn't access the same files if they are constantly replacing them with what's on their machine. So that pretty much makes my initial idea obsolete.

2. However, unlike Pokemon Essentials: Online, which uses NetPlay and a custom made server application which is run on the machine alongside the game, I think the best option we have now is using SQL databases. This doesn't require the creator of the game to have their machine on 24/7 to be able to provide online services. All we need to make these online systems is a way of sharing information. SQL does that...efficiently. Any alteration made on a local machine, gets made immediately to the main online database, so we wouldn't need to worry about the info not syncing. Berka made an SQL module, but I don't really understand it much. I know the basic principles of SQL, how to handle and lay out data, but calling and manipulating it from Essentials still gives me trouble. But I think if there is a way to do it, it will be through the use of SQL databases.

Once we have a way of communicating within the games, implementing that in already existing system should not be a problem. I don't think I'd have any problem with that in particular.

Finally, my argument to why it shouldn't be done for Essentials is the ignorance of the general community here. Something like setting up and managing your databases and servers for your Pokemon game, can get quite complicated here. And with the general majority of the members here, who can't even read simple error messages from Essentials, I would think it would be more of a hassle than anything else. I mean, people after people, come again and again with the same old crap because they couldn't be bothered to read the Wiki, or read the error message, or research it a little. How disrespectful is it to those who make those resources available, and put effort into articulating the information correctly, if it is going to be disregarded anyway. There are just too many users of this particular engine who do not want to inform and educate themselves on the basic principles of making a game with it.

Quote originally posted by Ben.:

I don't actually think it should be added because it'll create a lot size that wont be needed if people don't want their games to have online play.

Alexandre's project only includes being able to see other players walking around. This is a feature I'm definitely not interested in adding to Essentials, even if it was fully working.

If anything of this nature was going to be added, it would be battling and trading. The easier option would be the trading, I think, since the battle scripts would need to be dramatically overhauled in order to allow battles against other people; online trading is simply a new feature. These two things likely would be added into Essentials, if they worked.

However, I'm not going to make them. I'm not interested in making them, and I wouldn't know how to anyway. Someone else can have a go.

There is a lower-tier option, which was discussed in another thread a short time ago, which is to make a Trainer House feature which lets you put other people's teams in a folder and battle them (with the AI controlling them). It's pseudo-multiplayer, since you battle against other players, even if it's just their teams.

Quote originally posted by venom12:

I think there would be needed only online trades and battles, no chat or entra link.

Need? Nothing is needed. Essentials has survived so far without any multiplayer options at all.

Quote originally posted by Luka S.J.:

Finally, my argument to why it shouldn't be done for Essentials is the ignorance of the general community here. Something like setting up and managing your databases and servers for your Pokemon game, can get quite complicated here. And with the general majority of the members here, who can't even read simple error messages from Essentials, I would think it would be more of a hassle than anything else. I mean, people after people, come again and again with the same old crap because they couldn't be bothered to read the Wiki, or read the error message, or research it a little. How disrespectful is it to those who make those resources available, and put effort into articulating the information correctly, if it is going to be disregarded anyway. There are just too many users of this particular engine who do not want to inform and educate themselves on the basic principles of making a game with it.

However, I'm not going to make them. I'm not interested in making them, and I wouldn't know how to anyway. Someone else can have a go.

There is a lower-tier option, which was discussed in another thread a short time ago, which is to make a Trainer House feature which lets you put other people's teams in a folder and battle them (with the AI controlling them). It's pseudo-multiplayer, since you battle against other players, even if it's just their teams.

Trainer Houses are easy to make though. The entire $Trainer variable can easily be exported through .rxdata files and the pbLoadTrainer function can be adjusted to interpret that data accordingly. I've actually already made that :I

In regards to the other real-time online stuff: it has captured my interest. I've already started looking into it, and I'll probably continue to do so. It would be nice to have somebody here to bounce ideas off. I'm not willing to make an online functionality add-on all by myself, and give it away, though. I'm just keeping an open mind for now.

That's true though. The "Essential" online features would be Trading and Battling. Things like the Union Hall, or even a GTS would just be additional items. Though, in all fairness, if you've done the other ones, the things such as chatting, Entralink and so forth would just be derivatives on the same principle of communication in Essentials games. In short: if you've done the one, it would be straight forward to do the other.

You can't just download RMX-OS and go "poof...done". RMX-OS would need to be edited to be compatible with Essentials, so that it can be interpreted in various different scripts, for various different purposes. That also requires work, and it isn't that easy. Also, like I mentioned before, if you use something like that (a server-client communication), your machine would have to be the server. Meaning that other players can only connect to your online services when you're online (not very ideal). I've already looked into RMX-OS, and there are still debates to which option is the best.

There is a lower-tier option, which was discussed in another thread a short time ago, which is to make a Trainer House feature which lets you put other people's teams in a folder and battle them (with the AI controlling them). It's pseudo-multiplayer, since you battle against other players, even if it's just their teams.

You can't just download RMX-OS and go "poof...done". RMX-OS would need to be edited to be compatible with Essentials, so that it can be interpreted in various different scripts, for various different purposes. That also requires work, and it isn't that easy. Also, like I mentioned before, if you use something like that (a server-client communication), your machine would have to be the server. Meaning that other players can only connect to your online services when you're online (not very ideal). I've already looked into RMX-OS, and there are still debates to which option is the best.

Why would you include RMX-OS in a Pokémon game? What could it possibly add to the game and/or experience?

MMO features (namely, seeing other people walking around in the world) are, in my opinion, completely pointless. Pokémon isn't an MMO, and those fangames which want to be can figure it out for themselves.

Personally, if I were to implement it in my game (and I am interested, but humbly admit I have no idea how to do something that complex), I would simply code the ability to trade/battle over a local network connection, and save the online support for those smart enough to learn how to use Hamachi or something like. It would easily be far simpler to code than fully online support, and it would provide an online solution to though with some know-how. I don't think there's really much necessity for a full-fledged online system when a simply 2-Player would do just fine, no server or anything.

I agree with these online features, but why don't use sockets connection for battles/trades? The most basic way of communication! I made a multiplayer game using sockets connection years ago. I believe that trades are easy to do, battles probably needs to rewrite good part of code to works like multiplayer. If you have a server, a GTS may be easy too (only a big pokémon SQL table with their variable with atributes), isn't hard, but take time to do the graphic interfaces.

The main problem is the lack of support of Essentials project. Besides Maruno and rares exceptions, nobody helps, aside for bug reports.

At current time, a MMO is out of plans. We need theses basics features first.

If you had a MySQL database, and you had somewhere to upload it to, you could easily use it for online battles as well as a GTS. Well, you could use it to store information about the battle in progress, is what I meant. Overhauling the battle scripts to get/use/write that information is a whole other nightmare.

Quote originally posted by FL .:

At current time, a MMO is out of plans. We need theses basics features first.

There already is an Online version of Pokemon Essentials. Chat works and such. Only thing that needs to be done (and is currently being developed) is the trading and PVP battle system. So a lot of you are pretty bonkers when you're saying "IT WOULD REQUIRE TONS OF CODING BLABALBLABLBALALBALBA" because 1 user did it by himself and bam, it's online now.

Once/if we get a stable enough method for communicating information between the two machines, I'd have no objection in trying to implement PVP functionality into the Battle System. My mind may change when it comes to doing it, but for now it's open to contribution.

Quote originally posted by Jtspyder:

There already is an Online version of Pokemon Essentials. Chat works and such. Only thing that needs to be done (and is currently being developed) is the trading and PVP battle system. So a lot of you are pretty bonkers when you're saying "IT WOULD REQUIRE TONS OF CODING BLABALBLABLBALALBALBA" because 1 user did it by himself and bam, it's online now.

That one person working on the Online Kit is my close, personal friend from school. He shared the project with me, and at one point I was even contributing to it, so I know exactly how the kit works, what it can and cannot do. The link was posted on this site, and the kit in general hasn't been continued for a few years now. I think it's pretty safe to assume that I currently know more about PE: Online than you. So, unless you have extensive knowledge of both kits (Online and regular) and RGSS coding, your remark isn't constructive/helpful at all. So for future references, think twice before posting please.

If you had a MySQL database, and you had somewhere to upload it to, you could easily use it for online battles as well as a GTS. Well, you could use it to store information about the battle in progress, is what I meant. Overhauling the battle scripts to get/use/write that information is a whole other nightmare.

There already is an Online version of Pokemon Essentials. Chat works and such. Only thing that needs to be done (and is currently being developed) is the trading and PVP battle system. So a lot of you are pretty bonkers when you're saying "IT WOULD REQUIRE TONS OF CODING BLABALBLABLBALALBALBA" because 1 user did it by himself and bam, it's online now.

Something like the GTS (which I assume more people would be interested in) would require a globally established connection. So a dedicated server or something which will allow all games to connect to a centralised "station", rather than just a connection between two machines. The battle system is different though, since it only considers two players. But if we had some global communication with that too, you could have things like player tournaments. It depends what kind of interaction you're trying to have. I think a global one would be better, as that way you'd have a master database which would handle everything automatically, rather than users having to manually establish a connection.

As Luka said. The MySQL database would be a single thing to take care of. It would also let you advertise that you want a battle and match you up with someone automatically, rather than having to find someone via other means (e.g. messaging, posting in a thread) and then set up the connection with them yourself. It'd all be self-contained and convenient.

Quote originally posted by Luka S.J.:

Once/if we get a stable enough method for communicating information between the two machines, I'd have no objection in trying to implement PVP functionality into the Battle System. My mind may change when it comes to doing it, but for now it's open to contribution.

You're a brave man. Making the scripts communicate whether Tri-Attack will poison, burn or paralyse the opponent (for example) would be quite a task - there are so many randomness-based effects that would need to be standardised between the two players.

Hmm, perhaps setting the RNG seed of both players to the same value would help? Theoretically that would make the battle at both ends play out identically given the same inputs, and all you'd need to transmit is the information of which action is taken each round.

The PokéCommunity

Meta

Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, or The Pokémon Company International. We just love Pokémon.