PrismarineJS / PrismarineJS/node-minecraft-protocol

Partially connects to 1.7.10 FTB Infinity Evolved Server

Open
#413 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

non-vanilla
Dominant language
JavaScript
Stars
1.4k
Forks
290
Avg merge
4d 8h
Merged PRs (30d)
7

Description

I am attempting to get our custom bot to connect to our FTB Infinity Evolved server.

Server is 1.7.10
Minecraft-Protocol is 1.0.0

I am printing all of the State, Packet and Raw events to the console. This is the order that the events come in (minus the raw events, since they are just redundant copies of the state and packet events).

State: Login/Handshaking
Packet: 0: ServerID, publicKey, verifyToken, 1: encryption_begin login
packet: 0: uuid and username 1: success login
state: 0: play 1: login
packet: 0: channel REGISTER, 1: custom_payload play
packet: 0: channel: FML | HS, 1: custom_payload play

after that, i receive KeepAlive packets every few seconds.

The bot never appears in the user list, nor do we see a "botname has joined" message. If I close out of the NodeJS app, we DO see "botname has left the game".

The "Chat" event does not fire when players post to the chat area either, so it would appear that the bot is partially connecting, but not getting all the way there.

The bot is whitelisted and the whitelist was reloaded.

Any suggestions? The install of the server is a baseline, normal install of FTB Infinity Evolved, latest version running on 1.7.10, no changes to the config except for extending Elevator block distances.

Here is the code I am using, minus the event listeners, as those are just filled with "console.log()" at the moment.

var mc = require('minecraft-protocol');
console.log('Connecting to MC Server');
let mcBot = mc.createClient({
    username: 'username',
    password: 'password',
    host: "localhost",
    port: 25565,
    version: '1.7.10'
});

Its just the most basic connection code, nothing fancy yet.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the createClient configuration and the reported State, Packet, and KeepAlive event sequence for the 1.7.10 connection. Compare the login and FML custom-payload handshake with the FTB Infinity Evolved server behavior. Done means the bot appears in the user list, join and chat events work, and disconnecting still produces the expected leave message.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.