This is a tool that allows you to join servers on console.

Overview

Friend Connect

WARNING

BEFORE YOU USE THIS TOOL, PLEASE READ THE FOLLOWING: WE AS CONTRIBUTORS ARE NOT RESPONSIBLE FOR ANY DAMAGE OR LOSS CAUSED BY THIS APP. USE AN ALT ACCOUNT, JUST IN CASE THERE IS AN ISSUE WITH THIS METHOD.

About

This is a project for minecraft bedrock that allows you to join servers via the in game friends tab. Allowing console players to connect to servers. This project is still in development, so please be patient if there are issues.

The best way to use this tool at the moment is as a node module. Read the tutorial below for more information of how to set this up.

How it works in game

A New Realms Replacement, A new method for joining servers on console.

How to use it:

You can use any tool to get the token, for this tutorial I will use prismarine-auth.

$ npm install friend-connect prismarine-auth

Create a file and name it whatever you want. Then paste this example into it:

import { Session } from "friend-connect";
import auth from "prismarine-auth";
const { Authflow, Titles } = auth;

const token = await new Authflow("TailvileMC", "./auth", {
	authTitle: Titles.MinecraftNintendoSwitch,
	deviceType: "Nintendo",
}).getXboxToken();

new Session(
	{
		hostName: "Server Name", // The hostname of the server
		worldName: "Message of the Day: Hello World", // Use as a MOTD

		version: "1.19.10", //The client of the server you are connecting to.

		protocol: 534, //The protocol of the server you are connecting to.

		players: 0, // Used as a fallback if pinging the server fails.
		maxPlayers: 20, // Used as a fallback if pinging the server fails.

		ip: "example.com", // The ip of the server you are using.
		port: 19132,
		log: true,
		connectionType: 6, // I don't recommend changing this.
		keepVersionAndProtocolConstant: true, // Set this to true if you want to set a constant protocol version. Otherwise it will ping the server to get the protocol version and use the one above if the server has an error on ping.
		autoFriending: true, // Set this to true if you want to automatically add people who follow you
	},
	token
);

Set type to module in the package.json file.

You can run the file with node --es-module-specifier-resolution=node ./path/to/file.js.

To Do List

  • Add a way to fetch the version and protocol of the server on session Update.
  • Add automatically querying the player numbers from the server on session Update.
  • Add the ability to provide an array of strings to be chosen from for the hostName and worldName that is rotated through on session Update.
  • Check if the user owns any games if so send an error telling them to use an alt account.
  • Add an option to disable auto friending.
  • Make a user friendly way to use this tool like a discord bot or something.
  • Add a cli tool maybe.

Credit

This project is a js port of the rtm516/MCXboxBroadcast from java.

Friend Connect adds a key feature that makes the friending automated.

I worked with rtm516 to figure out the uri and headers for finding the followers of an xbox profile.

Comments
  • Not an issue but how do I get this setup?

    Not an issue but how do I get this setup?

    I’d like to get this setup on a raspberry pi (arch Linux) but I haven’t used JavaScript before, could I have some newbie instructions on how to do this?

    opened by BuddyDogYT 3
  • Friendconnect sometimes just stops working

    Friendconnect sometimes just stops working

    [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] 79 profile(s) have this account friended.

    opened by jameshackerbond 1
  • Fix type-o & add CodeQL

    Fix type-o & add CodeQL

    Via https://github.com/minerj101/FriendConnect/commit/30c6cc050f075c71ec6b5ddeefd60e2364711ea8 https://github.com/minerj101/FriendConnect/commit/9608e33a3a954c230aae2a842959c29176e2383b

    opened by DJStompZone 0
  • Server Advertisement Error

    Server Advertisement Error

    Not sure if this is a bug or if I am doing something wrong, but when I run "node --es-module-specifier-resolution=node ./start.js" (./start.js is the file path) I get the following error. It begins by initializing the accounts listed in the start.js file (which it should), but then immediately throws a "Server Advertisement Error). I tested this on two different computers and got the same results. I also reinstalled Node JS and FriendConnect and restarted my computer and still got the same error. I copied the error from the friend-connect-error.log file.

    OS: Windows 10 (10.0.19044 Build 19044) Node JS version: 18.12.1

    [1670742559799] Server Advertisement Error:

    	Name: TypeError
    
    	Message: Wrong arguments
    
    	Stack: TypeError: Wrong arguments
    at new Client (C:\Users\Tyler\Desktop\XboxConnect\node_modules\raknet-native\lib\RakNet.js:8:19)
    at new RakNativeClient (C:\Users\Tyler\Desktop\XboxConnect\node_modules\bedrock-protocol\src\rak.js:35:19)
    at ping (C:\Users\Tyler\Desktop\XboxConnect\node_modules\bedrock-protocol\src\createClient.js:87:15)
    at Session.getAdvertisement (file:///C:/Users/Tyler/Desktop/XboxConnect/node_modules/friend-connect/dist/index.js:419:30)
    at new Session (file:///C:/Users/Tyler/Desktop/XboxConnect/node_modules/friend-connect/dist/index.js:76:14)
    at file:///C:/Users/Tyler/Desktop/XboxConnect/start.js:3:1
    at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
    at async Promise.all (index 0)
    at async ESMLoader.import (node:internal/modules/esm/loader:530:24)
    at async loadESM (node:internal/process/esm_loader:91:5)
    
    	Error: TypeError: Wrong arguments
    
    opened by TylerJohnson177 1
  • Friendconnect sometimes just stops working

    Friendconnect sometimes just stops working

    [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] AutoFriend Interval [FriendConnect [email protected]] 79 profile(s) have this account friended. [FriendConnect [email protected]] 79 profile(s) have this account friended.

    This happens randomly depending of how many players are connecting through friendconnect.

    opened by jameshackerbond 1
  • random crash and not auto restarting

    random crash and not auto restarting

    Hello, I managed to get this setup up and running on my server and it works pretty darn good for the most part. However I ran into an issue where the friend-connect disconnected for some reason and after attempting to reconnect, it just gets stuck on this step and doesn't progress any further. I know I can just restart it manually, but that's not a good long term solution. Any ideas?

    Screenshot 2022-09-01 133444

    opened by DzXAnt22 7
"Space-Travelers-Hub" is a website that allows users to book rockets and join selected space missions by using data from the SpaceX API.

Space-Travelers-Hub This project was bootstrapped with Create React App. Description "Space-Travelers-Hub" is a website that allows users to book rock

Tresor Sawasawa 4 Mar 13, 2022
This web application provides commercial and scientific space travel services. The application allows users to book rockets and join selected space missions.

space-hub About Project "Space Traveler's Hub" is A web application that provides commercial and scientific space travelling services, We are working

Nicholas Emmanuel 7 Nov 2, 2022
In this project we built a web application that consumes an SpaceX API. It provides commercial and scientific space travel services that allows users to book rockets and join selected space missions.

Space Travelers' Hub In this project we built a web application that consumes an SpaceX API. It provides commercial and scientific space travel servic

Diego Yon 7 Sep 30, 2022
This web application provides commercial and scientific space travel services. The application allows users to book rockets and join selected space missions.

Space Traveler's Hub This web application provides commercial and scientific space travel services. The application allows users to book rockets and j

Michael Mesfin 6 Oct 4, 2022
🔐 A Privacy-first Diff tool for everyone. ✅ Your data never hits our servers.

Features ?? Privacy-first developer tool. ?? Run on your Web Browser, Your data is sent nowhere. ?? Find a Difference between two text input for Side

Proxyman 41 Dec 5, 2022
Chris Siku 13 Aug 22, 2022
A Web application that showcases Rockets and Missions from the SpaceX API, you can reserve Rockets and join Missions to your profile.

Space Travelers' Hub Project that showcases Rockets and missions from the SpaceX API, the user can reserve Rockets and join Missions, and save them in

David Vergaray 9 Apr 17, 2022
A tool to install ubuntu mainline kernels from the console.

Ubuntu Kernel Tool A tool to list, download, and install mainline kernels from the Ubuntu mainline repository. ULTIMATE DISCLAIMER: DO NOT USE THIS TO

Abdullah A. Hassan 9 Jan 21, 2022
Space Travelers' Hub - a web application that facilitates booking rockets and join selected space missions

This is a web application that facilitates booking rockets and join selected space missions. It is built for a company that offers both commercial and scientific space travel services. The application also works with real live data from the SpaceX API.

Mong'are 6 Mar 29, 2022
A web application for a company that provides commercial and scientific space travel services. The application will allow users to book rockets and join selected space missions.

Space Travelers A web application for a company that provides commercial and scientific space travel services. The application will allow users to boo

Hector Torres 2 Apr 6, 2022
Join the GitHub Graduation Yearbook and "walk the stage" on June 11.

GitHub Graduation-2022 Available Translations ?? Pt-BR zh-CN 中文 日本 Русский Korean Indonesian Español (España) Español (México) Polski Filipino Türkçe

GitHub Education 1.5k Dec 26, 2022
Place your Bob-ombs so they surround opposing Bob-ombs. Captured Bob-ombs change color and join your team. The player uith the most Bob-ombs at the end is the Hinner.

Bob-omb Reverse with Arduino MKR 1010 Wifi ?? @cbarange & @j-peguet | 5th January 2022 Intro Docs MQTT with Arduino ?? https://docs.arduino.cc/tutoria

Clement 3 Jan 13, 2022
A javascript written program that can be used to automatically join BloxFlip Rains.

Toxic Rainer Auto-BloxFlip Rain Joiner Toxic Rainer is a web-socket based background running program used to automatically join BloxFlip Rains to get

null 4 Jul 10, 2022
This a web application for a company that provides commercial and scientific space travel services. The application will allow users to book rockets, dragons and join selected space missions.

Space Travelers' Hub In this project, we have worked with the real live data from the SpaceX API. Our task was to build a web application for a compan

Apuabi Titilope 4 Oct 31, 2022
A simple dashboard to keep track of all your active devices/servers

Slashboard Pulsar A lightweight node js app designed to work with the Slashboard desktop client Built using Node.js Installation Clone this repository

Philippe Négrel-Jerzy 25 Dec 21, 2022