Allowing Other Platforms To Connect

I think it’d be amazing if a plugin could be created that would allow Minecraft on other platforms to connect to a Sponge server. Now before dismissing this idea and saying how it’s “impossible”, let me explain.

For the first example, let’s assume the plugin is set to only allow connections from MCPE and Minecraft for PC (MCPC). When the plugin is started for the first time, it would only generate blocks/entities that are found in both MCPE and MCPC. The plugin would also prevent the player from crafting items on MCPC that aren’t found in MCPE.

Likewise, if the plugin would allow MCPC, MCPE, and MC Vita Edition (MCVE), blocks and entities would only be generated if it is supported by all three versions of Minecraft for these consoles.

You may be wondering how Minecraft for the Vita, Playstation, and XBox could connect to the server. Well, I believe it could be done with an ad hoc connection. Ad hoc allows you to connect to servers on your network. However, I’m not if Minecraft: Xbox Edition, or Minecraft for Playstation support ad hoc (though I know the Vita supports it). Minecraft pocket edition works the same way with the added benefit of allowing you to type in a custom IP. This would allow your friends to connect to your server from anywhere in the world.

What about for devices that only support ad hoc connections? Well, I believe this could be done with a proxy. Essentially the way it would work, is it would be installed on the users phone or PC. The software would essentially create the server locally (that’s the best way I can think of to explain it). All packets would be sent to the proxy, which would then send the packets to any devices on the network. The proxy would connect to the server, and the ad hoc device to the proxy. This is the way server software was used before MCPE allowed custom IPs to be used.

One of the biggest problems I see with this, is it would have to be constantly updated. It’d have to be updated every time a new version of Minecraft came out on any device, but, I’m still interested to hear everybody’s thoughts of the idea!

1 Like

You would need to rewrite all other versions as they are made by a different studio in a different language.

Wouldn’t it be possible to simply send the appropriate packets for all devices? It’d essentially be using Sponge for the logic, and the plugin for the networking.

There was a similar plugin for Pocket Mine called Big Brother that allows MCPC clients to connect to the Pocket Mine server, however it’s under heavy development.

1 Like

That would be a really great project, however the MCPE network protocol seems to be completely different from the MCPC’s one. As I am not owning a copy of MCPE, I am not sure how usernames and stuff are handled in the MCPE version.
As far as I know, the MCPE servers are written in PHP (or at least there is a PHP version out there), so ‘reverse engineering’ would not be the hardest thing to do

MCPE servers (or most any server for that matter), could be programmed in almost any language as long as the language supports basic networking features. But yes, PocketMine is written in PHP, and is even open source. So you’re correct, it would be fairly easy to reverse engineer.

For managing logins, the player could be required to choose a password when logging into the game. If I log into the server on my PC for the first time, I’d be asked to choose a password. Then every time I’d log into MCPE, I’d be asked for my password. However, I wouldn’t be asked for my password every time I logged into MCPC.

If I logged into MCPE first, I’d again be asked to create a password. Then when I log into MCPC, I’d be asked to type in the password I created in MCPE once, and then my account would be “linked”. I’d still be asked to enter my password every time I logged into MCPE though.

2 Likes

I once started making Proxy software that would allow MC:PE clients to connect to servers, but stopped after the differences became too great. I was originally replacing blocks that weren’t available on MC:PE with similar ones, so it was still a server for the PC edition. It just allowed MC:PE to connect so that people could chat, sit around, etc.

So something like MineChat?

A more achievable project would be to have two servers - one for MC:PE and one for PC - and connect the chat via a bungee-like application. I feel like this has probably already been done, though.

The MCPE thing has been discussed before. Owexz once had a hack for it, too, he discusses it in his reply here:

I remember chatting to MCPE players whilst I was online on the bungee-connected PC servers.

1 Like

Not exactly, the players were still able to move around in game, build, mine, etc. they were just limited in the blocks they were able to see. Blocks that weren’t in MCPE were replaced for those users with similar blocks, but still appeared as the correct block for desktop players.

I tried this a while back @me4502 certainly got much further than I did as I was trying to parse “normal minecraft” packets into ones compatible with MCPE and like he said the differences just get to be too much. I think I got as far as getting a MCPE player to join the server and a chat working before I just gave up on the whole venture. I do wonder though if it would be possible to build a fully featured version of the game with modded controls into a mobile device. It would be a hell of a development project. With some mobile form of java the application itself could be run, the problem would primarily be graphics which an ARM processor probably couldn’t handle for normal MC. But phones / tablets are getting better and better, we may see something like this soon.

3 Likes

Never fear, there is a new proxy in town B)

Download: Releases · DragonetMC/DragonProxy · GitHub

Test server (TheArchon)
IP: hypixel.dragonet.org
PORT: 19133

Or join Hypixel
IP: hypixel.dragonet.org
PORT: 19132

2 Likes

With MCPE You Just Pick Any Name You Want

This Is An Awesome Idea But The Problem Is “How?” :frowning:

Very interesting indeed, there are many folks here who’d love to play with this, I’m sure.

But you might do better to start your own plugin thread than necro-post on a year-old thread.

2 Likes

Thanks @TheDiamondYT, an improved idea on Dragon has been implemented in the MineTunnel app, each MCPE user can set up one of their favourite MCPC servers at http://no1minecraft.com.

Great! Can you at least

A) Download latest RELEASE for github.com/dragonetmc/dragonproxy/releases as it has a lot more features and is kinda stable and

B) give at least 1 line of credit to us :slight_smile:

Make sure you aren’t violating our new license - DragonProxy/LICENSE at master · DragonetMC/DragonProxy · GitHub. You cannot redistribute it and you must give credit to us

That’s not what the license says though. The MIT License explicitly allows others to redistribute the software - see lines 5 to 8:

including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so…

What must be included is the copyright notice, but no other credit is required above this. It is, however, fair to ask for further credit (and most people will be willing to give it!), but you can’t force anything above the copyright notice with the current license.

1 Like

I must’ve copied the wrong license, whoops