Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update protocol to 1.8* #45

Open
ElPresidentePro opened this issue Mar 16, 2015 · 34 comments
Open

Update protocol to 1.8* #45

ElPresidentePro opened this issue Mar 16, 2015 · 34 comments

Comments

@ElPresidentePro
Copy link

What protocol supported 1.8? and there are new update?

@Unihedro
Copy link

What you're using isn't even anywhere near English.

@ElPresidentePro
Copy link
Author

sorry men, i am spanish, my english is bad sorry ;(

@ElPresidentePro
Copy link
Author

Is the project is abandoned or being updated?

@t81lal
Copy link

t81lal commented Apr 4, 2015

Long hiatus/better things to do/abandoned.

@LefsFlare
Copy link

I don't like saying this but I'm the brother of the maintainer of this Git. He died as of a week ago when he contracted pneumonia, if any of you want to take over, drop me a message and I will pass along his private details, including the files he was working on before the illness hit.

@Unihedro
Copy link

@LefsFlare: I'm interested in taking over this project. I have extensive experience with software development, a high reputation Stack Overflow profile, and here's my CV. You can get in touch with my public email listed under my GitHub profile.

This response is obsolete.

@LefsFlare
Copy link

@Unihedro It is fine, if you wish to take over the project but as far as my brother's wishes are to be of concerned, he would have wanted someone to update this project to the latest version, of which he didn't manage to do himself.

The biggest question, is if you would be able to do it.

@roblabla
Copy link

I'm willing to give a hand in updating this project to 1.8. I'm the maintainer of node-minecraft-protocol and have a good understanding of how minecraft's protocol works.

I have already forked the project and am currently writing the v47x protocol backend for 1.8.

For a bit of an overview of the changes required :

  1. Update the packet definitions so they match 1.8. This is relatively easy grunt work.
  2. Implement the new packet header (varint CompressedLength, varint UncompressedLength) that is used after packet "SET_COMPRESSION" is received.
  3. At this point, it will be possible to test the bot on server with compression disabled (compression-threshold=0).
  4. Implement the new compression support. Compression is implemented using zlib's Inflate/Deflate algorithms. This will probably require some changes in SocketConnectionHandler.

Once this is all done, the bot will be updated to protocol 1.8, but that's just the start. We will still need to make sure the bot is still working, etc...

@squires
Copy link

squires commented Apr 19, 2015

Ahem. Behave yourself, LefsFlare. People, he has pulled this bullshit before. #31

@squires
Copy link

squires commented Apr 19, 2015

@DarkStorm652 Perhaps you'd like to block him (https://help.github.com/articles/blocking-a-user/)

@LefsFlare
Copy link

Perhaps you would realize how effective this bullshit is in pulling DarkStorm back into the world of Git when no one has heard from him over a couple of months. Not only did you ruin it, you effectively nulled any chance of Dark coming to this issue to rectify the issue that he is not dead.

If anyone asks why Dark is not coming back despite the issues, I will happily point them to you.

@squires
Copy link

squires commented Apr 19, 2015

DarkStorm has no obligation to maintain this project for you. Your attempts to manipulate people are completely inappropriate and childish.

@ElPresidentePro
Copy link
Author

@roblabla let me know if you need help

@LefsFlare
Copy link

@squires I don't think I am attempting to manipulate Dark to maintain this project. The only thing I and to that extend, every one of us want, is simply an answer from him. Whether be it a line claiming he does not want to work on the project anymore or that he was away on an extended leave or whatever the case.

You do realize that even though he has no obligation to maintain this project for anyone, he is the only one that understands most of his own code. For anyone to continue someone else's codes is not easy. From what I see on your GitHub repository, it's clear and obvious to anyone that you obviously have not worked on a project like DarkBot or even Java.

You may find it inappropriate and childish but before you nosed your way in, what I have done clearly worked the first time around, bringing Dark back into the scene and providing comfort and relief for the close followers of this Git project.

Lastly, I am not manipulating anyone. What I did was tell a lie, to which Dark can choose to rectify or continue to leave every single one of us in the dark. Calling my attempt inappropriate and childish is very obviously, on no grounds.

@roblabla
Copy link

@LefsFlare I have taken the torch of node-minecraft-protocol when its maintainer stopped supporting it, without problem. Yes, undertaking maintenance of a foreign project is hard, but it's not impossible. Besides, the code quality of DarkBot is very high from what I've seen, so instead of losing your time in justifying yourself, go learn some java and submit a PR to DarkBot if you want to see it updated. This has more chances of getting Dark back into the project than your pathetic stunt.

Oh, and yes, your attitude is childish and manipulative. Dark might not want to work on the project anymore, and yet you're forcing his hand into updating it. Like it or not, but what you're doing fits very neetly in the definition of Psychological Manipulation, which is "a type of social influence that aims to change the perception or behavior of others through underhanded, deceptive, or even abusive tactics".

Anyway, no use in arguing this further, I'm out. Let's stay on-topic now and see how the community can update this project without Dark around. I'll have some time over the week-end, I'll push my progres in my fork then.

@Unihedro
Copy link

@squires @LefsFlare @roblabla: I don't mean to offend or to be against any of you since I understand that everyone here is only commenting because you respect this repository and the program that Dark has built and helped everyone else for, but for the best interests of DarkBot - help by contributing if you have time, stay out of the pranking or the bickering if you can't otherwise. The same trick won't work twice unless the world is stupid (#31), and if DarkStorm is planning to work on this, they'd be anyway.

Of course, I'm not one to speak since I have my own development projects to work on, but I don't get what the point of this entire discussion is extending into. If you're still wondering if this project is being maintained, just consider otherwise. It's not my loss - or yours - but others, and that you shouldn't be worrying about it and badgering DarkStorm.

I'm unwatching this repository now. It's been a pleasure.

@t81lal
Copy link

t81lal commented Apr 21, 2015

"he is the only one that understands most of his own code" - I am better than Darkstorm, ask him yourself.
"Besides, the code quality of DarkBot is very high from what I've seen" I think dankstorm would agree with me if I said that some large code changes in this project wouldn't be a bad thing.

@roblabla
Copy link

@TheBiblMan every project has its "bad chunk, big rewrite needed" part somewhere. The problem comes when 100% of the code is in that stage ^^.

@DarkStorm652
Copy link
Owner

Me here, hello! Forgot to check notifications on this account. Every time I go to work on 1.8 support I realize I've completely forgotten where I left off and only make a little progress before finding it too tedious and wandering off. I've managed to have bots join 1.8 servers (which is not as much of a milestone as it used to be, considering packets now have lengths), but a decent amount is still missing (the worst part being that I no longer know what is). If anyone is interested in becoming a maintainer, send me a PM and we can talk.

@TheBiblMan pls no troll. I've managed to split apart portions that were too coupled, with the only major changes left to be done being MinecraftBot and protocol structure re-engineering. Aside from that I've realized that the project is actually pretty well structured. I should definitely start documenting things, though.

@Unihedro
Copy link

send me a PM and we can talk.

... what?

@DarkStorm652
Copy link
Owner

Oh, GitHub doesn't have a messaging feature, my bad. My email: marco@vanhil.st

@ElPresidentePro
Copy link
Author

Is there information of their libraries?

Note: I am spanish, my english is bad ;/

@Unihedro
Copy link

Yes. MCP has decompiled builds, or you can reverse-engineer the protocol used by Minecraft clients simply by decompiling the Minecraft jar source. Note that their Minecraft jars are obfuscated, which makes it difficult to decypher.

@DarkStorm652
Copy link
Owner

Alright, I'm almost done with the structural aspect of parsing this intermediate language for protocols:
protocol47x.xml
XML and JSON will be supported. It will work as a utility for representing the protocol structure in a less inane way than a hundred Java files. I'm hoping to include a way to write handler method bodies (Java code) straight in the XML file and have it compiled, but if I get lazy, a companion Protocol class will still have to be written for each protocol. This IL API will be able to compile the XML into Java bytecode for packet processing efficiency. I will commit current changes shortly.

I'm starting to feel like I'm over-engineering it.
This is getting out of hand

@ElPresidentePro
Copy link
Author

I love you @DarkStorm652 <3<3

@DarkStorm652 DarkStorm652 added this to the Protocol Redo milestone Apr 30, 2015
@ElPresidentePro
Copy link
Author

@DarkStorm652 hey men, how is it going?

@ElPresidentePro
Copy link
Author

there is already a date for this over?

@rom1504
Copy link

rom1504 commented Jul 31, 2015

FYI here is a list of files representing the protocol in various project https://gist.github.com/rom1504/7b4c0cc29fb03122b6a5

I think there is room for standardisation, might be useful to think collectively what a format representing the mc protocol need.

@PhanaticD
Copy link
Contributor

Was this abandoned again :/

@tenten8401
Copy link

Check the development branch. There is a 47 protocol xml which is the protocol number for 1.8.x.

I have managed to get a DarkBot.jar to compile from the development branch, although i cant figure out how to use the 47 protocol.

@PhanaticD
Copy link
Contributor

how did you get it to compile

@t81lal
Copy link

t81lal commented Aug 11, 2015

sigh...

@vakkq
Copy link

vakkq commented Sep 24, 2017

Oh hi there, two years later. Now 1.8 is of no concern, but how about 1.12?

@tenten8401
Copy link

At this point, just use PrismarineJS/mineflayer and make something cool with it. There's currently rom1504/rbot which uses it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests