11 ms·
Minosoft: Open-source Minecraft client, written from scratch
- sieabahlpark 3y ago[dead]
- edgarx 3y agoHN hug of death
- zaptrem 3y agoHypixel is a large server/network of mini-game servers. Them working is really impressive because they (and other similar large servers) use many advanced/esoteric features of Minecraft to make their minigames stand out.
- charcircuit 3y agoIt's more impressive that the anticheat doesn't flag you
- zaptrem 3y agoGiven the disclaimer in the repo's README I wouldn't be sure about that.
- nonethewiser 3y agoDo you have any examples of such features? By chance (?) I happened to stumble upon a YouTube video involving a sky islands server by hypixel earlier today. It included some nether portal which seemed to transport people to different servers.
- zaptrem 3y agoWhat you're seeing is BungeeCord, a Minecraft proxy server that lets you run thousands of servers through one domain name. You set up a load balancer that points to a bunch of BungeeCord instances and those in turn point to the actual internal mini-game and lobby servers. I think internally the server transfer process is described to the client as a world change (similar to going to the Nether). If you look it up it likely won't be called BungeeCord anymore (maybe Waterfall now?), as the MC community likes to constantly fork things and change the name. Hypixel constantly uses things like custom sound effects, spawning particles where they don't belong, using player facing direction for ray tracing for projectiles (e.g., QuakeCraft), and manipulation of player inputs (e.g., remapping crouch to flight, right clicking the air to trigger scripted events/abilities). Additionally, they have advanced anticheat heuristics that are quite sensitive to the slight differences in control patterns/packets that would come from an alternative client such as OP.
- KomoD 3y ago> If you look it up it likely won't be called BungeeCord anymore (maybe Waterfall now?) Yes it will be, BungeeCord itself is still a thing but then you also have a bunch of different forks people use (such as Waterfall like you mentioned) And then there's also more proxies such as Velocity (which is now more commonly used)
- unforgivenpasta 3y agoGithub mirror https://github.com/Bixilon/Minosoft https://github.com/Bixilon/Minosoft
- nilsherzig 3y agohttps://github.com/Bixilon/Minosoft https://github.com/Bixilon/Minosoft
- voytec 3y agoWhy the downvotes? Parent linked the mirror as OP's link returns 502.
- nilsherzig 3y agoI think someone posted the mirror in the time between me loading the comments and writing my own one
- IG_Semmelweiss 3y agoFrom the Readme - What does this mean ? >> Notice: I am not responsible for anti cheat banned accounts, this project is heavily in development! ?
- msdrigg 3y agoSome Minecraft servers will attempt to detect modded Minecraft clients, potentially based off of how they handle the protocol or mechanics. If this re-implementation has accidental differences from the main Minecraft client, it could potentially get detected as a malicious cheating client and banned.
- jackwilsdon 3y agoThey're most likely referring to anti-cheat plugins run on servers - they're not responsible if a server's anti-cheat plugins bans you.
- laxd 3y agoFor those wondering, hypixel was an impressive minecraft mod. The devs moved on to create Hytale - a minecraft-like game that is still to be released. At least that's what my fallible memory says. https://hytale.com/ https://hytale.com/ I assume this is an unrelated effort. And just an engine with basic minecraft play. Actual minecraft is too wide and deep for any "reimplementation" to fall from the skys at this point.
- zaptrem 3y agoThe Hypixel Network is a mini-games server.
- csjh 3y agohypixel is an impressive minecraft server, not mod
- laxd 3y agoAllright, no server mod?
- Probiotic6081 3y agoNo, hypixel is a famous minecraft server network abd community and not a mod.
- pests 3y agoHypixel uses server mods of course. It's not just something you can download somewhere and start your own Hypixel. I wouldn't call it a mod. Its a custom experience provided by a specific set of servers.
- laxd 3y agoOk, I hope we can split the wheat from the chaff without haggle. I'm corrected, "Hypixel" is the name of a server, not a mod. So who was the guys that started Hypixel Studios and Hytale? Maintaining a server doesn't seem like the immediate precursor to starting a whole new game.
- manwithkind 3y agoYah, selfhosted gitlab. Can't handle it. https://github.com/bixilon/minosoft https://github.com/bixilon/minosoft
- mdaniel 3y agoUp to you, but I wouldn't recommend volunteering the version of nginx fronting anything, either, since it makes finding exploits so much easier
- mcpackieh 3y agoLooks like it's trying to get some asset files from the bixilon.de server? I can't try this out right now because it crashes with: java.io.IOException: Server returned HTTP response code: 502 for URL: https://gitlab.bixilon.de/bixilon/pixlyzer-data/-/raw/master/hash/ae/ae844d6a7949f9e70a3ce0f7a12d455c4bcb96c4.mbf?inline=false I'll try later, looks like a really cool project.
- vikmals 3y agoI got it running by replacing `https://gitlab.bixilon.de/bixilon/pixlyzer-data https://gitlab.bixilon.de/bixilon/pixlyzer-data` with `https://github.com/Bixilon/pixlyzer-data https://github.com/Bixilon/pixlyzer-data` in src/main/java/de/bixilon/minosoft/config/profile/profiles/resources/source/SourceC.kt
- KomoD 3y ago(turns out you can also edit in "~/.config/minosoft/minosoft/resources/Default.json")
- manwithkind 3y agothe original link is now redirecting to github.com, seems like low on capacity. downloading that single file should work now I guess
- binkHN 3y agoVery cool! Anyone give this spin yet? It's supposed to be more performant per https://github.com/Bixilon/Minosoft/blob/master/doc/Performance.md https://github.com/Bixilon/Minosoft/blob/master/doc/Performa....
- IgorPartola 3y agoWait so this actually implements everything? Like all the features? System recs are quite high, I was hoping to find something that my kids can use on their Chromebooks but even if this isn’t it, this is cool as heck.
- rollcat 3y agoIf you're on a low end system, I can recommend Minetest. It's a similar but different experience - you still mine blocks and craft items but all of the details are quite different. I enjoy both games; while I prefer Minecraft due to community and momentum, Minetest is great if you just want a nice and simple sandbox.
- em-bee 3y agominetest has lots of great mods or extensions that add interesting features, like trains. there are also public servers, some of which have very friendly communities.
- laxd 3y agoMinetest is a prime example of the weakness of the open source community. A bunch of people want to "system dev" you a framework. Very few want, or is capabale of, designing you an actual finished game, at least in the open source context. Op's kid deserve better. The best I can suggest is 0AD. https://play0ad.com/ https://play0ad.com/ It might require an actual computer though.
- jahsome 3y agoI suspect you don't have kids? Either way that is a hilarious recommendation, for a number of reasons. If my kids asked to play Minecraft and I installed that game, it would be a bit like them asking for pancakes and serving them bran flakes and a grapefruit. They're not even remotely similar games, and have wildly different levels of appropriateness for children -- though that obviously depends on parental preference. In any case, there's not even a slight their friends are playing it, and that is probably the most important factor for most kids.
- raptor_jesus 3y agoInvest in Cloudflare for your GitLab server brother.
- manwithkind 3y agoyah, it fired that server
- Covzire 3y agoOne optimization I'm surprised hasn't made it to Minecraft yet is parts of chunks deep below ground will sometimes render before blocks closest to the player or at least closest to the ground that the player should be able to see. I would think if you're at ground level looking around, it should prioritize loading blocks that are most likely to block vision for the player.
- rollcat 3y agoMinecraft is horribly under-optimized, but unfortunately a lot of the deeply architectural things might be impossible to touch without breaking something for the more technical players. (Check out Docm77 or TangoTek, they're really pushing the game to the absolute limits.) If you don't mind clientside mods, there are a few dedicated to optimizations, including rendering: sodium, lithium, phosphor, optifine. I'd recommend PrismLauncher and Fabric for managing/loading the mods.
- ruune 3y agoDefinitely Docm77, I'd also throw Ilmango or just the Scicraft people in general in.
- 63 3y agoSounds like it's only a client. Still very impressive and might be helpful for some people, but not really where the performance bottleneck is most of the time. The same thing done for a survival server implementation would be a lot more interesting and useful.
- KomoD 3y agoClient is more impressive than server in my opinion, so many people have already done tons of implementations for servers
- zyxin 3y agoThe wiki.vg website has a list of quite a few server implementations, even some written in Rust! That site also has extensive documentation of the Minecraft protocol if you want to try writing a server or client yourself. https://wiki.vg/Server_List https://wiki.vg/Server_List https://wiki.vg/Protocol https://wiki.vg/Protocol
- nickelpro 3y agoIndependent client (ie, not a patch on top of the Mojang client) with working physics is actually a sort of holy grail in the third party minecraft development community. Very few implementations ever reach that level of maturity. Everyone and their mom gets the networking/keepalive/inventory stuff working. Mature clients maybe get gravity and basic movement working. A single digit number of implementations have gone farther than that. Physics is the least documented corner of Minecraft. Effectively everything about lighting, entities, the map format, and the network protocol is well documented without having to dig through the decompiled source. Not so with physics. No two physics implementations look alike because: A) The Java Minecraft physics engine is a pretty tangled mess to begin with B) Each implementation represents a unique attempt to research and re-implement that mess
- Kiuhrly1 3y agoWhat's interesting is that the Minecraft netcode is so bad that your client physics doesn't even need to be accurate or even correct for it to work. There is no verification that the client's inputs actually match the player's resulting position (not that they're even sent to the server). The client sends their position to the server, the server does some simple checks for flying, speed hacks, phasing through walls, and that's about it. Which is why there's all sorts of interesting movement cheats, and also why most servers run some kind of third-party anticheat plugin.
- H8crilA 3y agoJust so you know there's a very intense client modding community centered around the so called anarchy servers, in particular 2b2t. Cheating is allowed on such servers and it actually makes the game very interesting. Examples: - Rusherhack: movement, combat, awareness, ... your bread and butter type of a client mod: https://www.youtube.com/watch?v=Dg1BoHX7bJo https://www.youtube.com/watch?v=Dg1BoHX7bJo - Baritone: autonomous actions, including pathing, mining and even autonomous building from schematics: https://www.youtube.com/watch?v=CZkLXWo4Fg4 https://www.youtube.com/watch?v=CZkLXWo4Fg4 Anarchy is something rather unique, I don't think this type of environment/community exists in any other game.
- xcdzvyn 3y agoPerhaps the most impressive feat I've seen out of 2B2T was an exploit called "Nocom". It began with 2B2T being hit with a lag exploit, then that exploit being fixed in a 3-line patch - that patch subtly introduced another exploit that allowed the author to track the position of every player in the server at all times, down to the chunk. I won't explain the whole video[0], but it details a story of gaslighting, 3 years of player data, and some really really impressive technical work, given this is all over a block game. [0] https://youtu.be/elqAh3GWRpA https://youtu.be/elqAh3GWRpA And while certainly not to the scale of Minecraft, Counter-Strike does have a (diminishing) sizeable community of cheaters that majorly play against each other, competing in technique and configuration, called Hack-vs-Hack (HvH).
- leijurv 3y agoHN thread: https://news.ycombinator.com/item?id=29615428 https://news.ycombinator.com/item?id=29615428 :)
- Fire-Dragon-DoL 3y agoUltima online had it
- vikmals 3y agoI think the most impressive thing is that this handles all minecraft versions.
- Pxtl 3y agoThings like this always make me a bit sad when things like mine test exist. Since projects like this depends on decompiled Minecraft source, they're legally still piracy. Meanwhile, it probably would be simpler to implement some thing like hypixel in the open-source Minecraft-workalike minetest, where you'd be in much less legally muddy water. But still nobody would play that. Because brand.
- devwastaken 3y agoAuthor should be aware that Mojang has nuked copy projects before. Now that they have MS lawyers they will C&D anything that carries the "Minecraft" name relationship. Never even mention it, call it by more general technical terms like a "square voxel engine" or something.
- poizan42 3y agoIf that had any ounce of truth clearly they would have tried taking down mineserver and minetest long ago. If projects gets taken down it's because of copyright infringement, not because they are referencing the name. Removing all references to Minecraft won't do anything if the project contains assets or decompiled code from Minecraft either.
- devwastaken 3y agoMinecraft is a trademark. You can't make references to it from your own work. Feel free to research mojangs history and intellectual property laws. You don't have rights, only privledges given temporarily by the corp. They can choose to C&D whenever they like.
- poizan42 3y agoYou can totally reference a trademark without infringing on it, see Nominative Use / Nominative Fair Use[1]. Whether or not a usage falls under Nominative Use is ultimately up to a court to decide. Of course a company can send C&D letters whenever they like, that doesn't mean it's going to hold up in court. With all that said I have never heard about Mojang or Microsoft sending C&D letters over someone giving their project a name vaguely referencing Minecraft. Do you actually have any examples, because when I google Mojang and C&D I only get examples of Mojang receiving C&D letters, not sending them. [1]: https://en.wikipedia.org/wiki/Nominative_use https://en.wikipedia.org/wiki/Nominative_use
- gigel82 3y agoI'm confused how this can exist. It's a blatant ripoff of Minecraft, including fonts, assets, color schemes, etc. Call it a re-implementation all you like (I doubt it given Minecraft is Java and easy to decompile, and this is also JVM) but I don't see how that would fly. If I decompile a commercial game, use GPT to rewrite the decompiled code and maybe change the assets a bit, can I just release that as open source?
- jorams 3y agoI haven't looked into the code much, but the way it uses Minecraft assets is that it downloads a minecraft.jar from Mojang and extracts the files from it.[1] [1]: https://github.com/Bixilon/Minosoft/blob/ae7b15de10be579ca6add2e4078e48b9dfdfb7f3/src/main/java/de/bixilon/minosoft/assets/minecraft/JarAssetsManager.kt#L51 https://github.com/Bixilon/Minosoft/blob/ae7b15de10be579ca6a...
- manwithkind 3y agoIt downloads all the assets from minecraft. afaik it contains no code from vanilla. rewritten everything.
- chrstfer 3y agoOh my lord, this looks like 2010 again. After years of shaders and other mods, this brings me a great joy based on nostalgia. https://github.com/Bixilon/Minosoft/blob/master/doc/img/hypixel_lobby.png https://github.com/Bixilon/Minosoft/blob/master/doc/img/hypi... edit: forgot to add the link