Labels
No Label
#P1 CRITICAL
#P2: HIGH
#P3: elevated
#P4 priority: medium
#P6: low
#Review
annoying
API
bug
code quality
combat
commands
compatibility
configurability
contribution inside
controls
core feature
creative mode
delayed for engine release
documentation
duplicate
enhancement
environment
feature request
gameplay
graphics
ground content conflict
GUI/HUD
help wanted
incomplete feature
invalid / won't fix
items
looking for contributor
mapgen
meta
mineclone2+
Minecraft >= 1.13
Minecraft >= 1.17
missing feature
mobile
mobs
mod support
model needed
multiplayer
Needs adoption
needs discussion
needs engine change
needs more information
needs research
nodes
non-mob entities
performance
player
possible close
redstone
release notes
schematics
Skyblock
sounds
Testing / Retest
tools
translation
unconfirmed
mcl5
mcla
Media missing
No Milestone
No project
No Assignees
15 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: VoxeLibre/VoxeLibre#1543
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
kay27, jordan4ibanez and me have decided to make a final decision about #1371, #1536, #1537, #1523, #1243, #1533 and #1532.
The CONTRIBUTING.md and README.md will be updated soon by a Pull Request.
Then all of these issues can be closed since you have made a decision.
Not all of them, some of them need some work to be done first.
Some of us have spent a lot of time to test and report stuff about mobs, me included. I don't know jordan4ibanez, but it looks like the recent changes he made "downgraded" the mobs.
As far as I'm concerned, it takes some time until I make an opinion about someone. So far, it's sucks to see someone who made the mobs worse forming a majority in a fairly sensitive decision about the project's direction. It almost feels like he showed up out of nowhere for a vote.
I don't even disagree with this decision here. It just feels wrong that someone who downgraded the mobs is allowed to vote on something like this. This sucks, because instead of focusing on new things, now we'll have to test everything again about mobs, to make sure it's reported and it gets fixed. What kind of refactoring doesn't take into account what the code is supposed to do in the first place?
Acutally, we did not vote on this. We discussed it until we found a solution everyone of us was Ok with.
That's a 2:1 voting to me.
We actually discussed it in a private discord group afterwards.
It makes no difference if it was discussed or not. My point was about why would we even take someone's input when his recent changes basically reverted a lot of work. He's probably more than capable to fix every single thing that's currently messed up, but who will do the testing and reporting?
Why? It is significant upgrade what he did.
All reports should be resolved once and he has a big chance to do significant part of this job.
As any really big update this update contains lots of minor issues as well. But it resolves one really important task: how mobs should spawn. This is the basis for everything else, and we hadn't it, that's why Wuzzy continuously planned to change mob API.
If mob API was changed - you would get downgrade like this too.
Currently jordan4ibanez (Oil_boi) writes mob parts directly for MineClone 2.
For me it's the best, nobody can do it better right now, if you compare any mob API with Crafter.
I can't predict what will happen next. But currently he has got lots of negative feedback, from Clamity community, from erlehmann and now from you.
But I'm asking you to support him, giving him a feedback not about him personally but about your expectations from mobs, pointing him to some issues, maybe discord is good place for that.
What I can do myself to resolve "downgrade" issue - if I understand it correctly - I'll think twice which things should be in 'production' branch, which things better to test somewhere else. Production branch can be up to date with whatever you want from the past.
This is not the place for a bug report, so I'll take it to a separate issue. My point is that the recent changes broke stuff that now we'll have to check and report again. It's like whatever changes are the mobs going through, they're done without a close look at the mechanics that we already had implemented - which is why it's a regression/downgrade.
P.S. You don't have to ask me to support him. I'm not against him. I just don't like that we get a new direction and someone (new to many of us) who downgraded the mobs had a say in this. Poor timing, really. And let's not forget about testing a bug on a live server, like the same thing couldn't be tested locally. And then adding code to explode those who try it - disregarding side effects or the fact that that's not a thing in Minecraft. It looks bad to me.
While I support some of this stuff (and ofc reject other things), I wonder why not more than the three people listed had a say in this decision. Many people who will be affected have not had a say in this, especially other developers than @EliasFleckenstein03, @kay27 and @jordan4ibanez who may have created stuff that will now be removed from MineClone2 master branch.
I think it is not appropriate that such a wide reaching decision about project direction, removing existing content and automatically griefing people's builds is made by so few people.
Even if others would ultimately support all of the above and are happy with it, I think it would be way more fair if many more people than those three mentioned had a vote in the matter – and it would be way better for players if there was a public decision instead of private discord channels.
But, as @EliasFleckenstein03 has told he will not approve anyone as a developer who wants to change project direction, I guess the “vote” was not a democratic process, but to assure everyone that the decision was legitimate.
I do not think it is.
Will Mineclone5 be on contentdb? Will it be possible to seamlessly upgrade to it from MineClone2?
The faithful and mineclone5 flavours will be on ContentDB.
I apologize for starting a "vote" in the first place. We made a decision that actually contains a lot of the stuff you wanted, to put an end to the discussion and avoid further bikeshedding. In the end, the maintainers are the ones responsible, so it makes sense that we make the decision.
The discussion is finished. Our decision is final.
I think how project decisions should be made is something that we should have agreed on when Wuzzy was leaving. I tried to start a discussion about that but it did not get replies.
I think the maintainers have taken a role which involves a lot more decision-making for the project than what I had in mind when I suggested creating an organization for MineClone2. I thought maintainers would mostly be responsible for code-review, managing releases and contentdb. But big project-wide decisions like this would be made by the members of the MineClone2 organization.
But in any case. I think it is good that the project has finally arrived in a decision and that it is clear and unambiguous.
I agree that the way things went was unfortunate.
@EliasFleckenstein03 I have one question though. Why not do it the other way around, leave the content in minetest master branch and make a separate 1.12 branch? If you start from a clean slate you will never need compatibility code for mods, can leave out node aliases and no one will have their base accidentally autogriefed through updating mods in the wrong order.
This is not a suggestion, by the way. You have made it very clear you have made up your mind.
I want to know the motivation behind that.
First, let me state that I am not a project maintainer, leader or anything anymore, since I stepped down. It is your project, and you can do whatever you want with it, and I 100% stand with this. So if you disagree with everything in your post, it's fine. It's your baby now, not mine.
However, I still have an opinion on this and I like to chime in here. Since I spent many years in this project, I think I souldn't stay silent.
Because I believe some very bad project decisions are going to get made. It seems there are some sweeping changes that will potentially cause a lot of stress and pain for many players and people involved. Being the original author of MCL2, I will also try to explain my thought process behind the MCL2 development. I hope my thoughts will help you avoiding falling into the same thought traps as me.
I personally think that trying to kill a lot of longstanding features in MCL2 just because they are non-MC features is a really bad idea. Same if they are split off into something external.
I think the problem is being overly religious about following an arbitrary MC version target. Let me explain a bit about MCL2 history. When I started this, my initial Minecraft version target was 1.11. Note this was the current MC version when I started the project back then, so this version number is COMPLETELY arbitrary. It was just so I have a static non-moving target that I could reach at least in theory if I worked long enough. I actually had an idea to increase the number once I got "everything" from 1.11 and I still had energy left. Obviously, this never happened.
My important bit here is, the version goal I initially set IS COMPLETELY ARBITRARY. You do not have to relgiously follow it if you don't want to. You can decide to change the project goal for whatever makes most sense to create a good game.
Initially, I was very religious in trying to be as close to MC as possible. But even in the initial phase, my motto was I want to replicate only gameplay closely. I was way more open about GUI design. Hence the early addition of the help system and the lookup tool. I also always was very liberal about the mapgen and just want to give the general idea. Replicating the exact MC mapgen algorithm would have been WAY too overkill anyway, and I was not interested at all in this.
In general, my actual number 1 priority with MCL2 was always to create a good game in its own right, while still cloning MC as close as reasonably possible. The word "reasonably" is the big one here. So I would never want to jump through massively complicated technical hoops just to get a minor detail working as exactly as in MC, and instead prefer a simpler but functional solution. If an "exact faithfully cloned feature" was in conflict with good gameplay, I decided on the side of good gameplay (I hope ... :D). I knew from the beginning I would never be able to do a perfect clone anyway due to limitations of Minetest, so trying for perfection would have been foolish.
Also, one of my earliest decisions was to not replicate arbitrary restrictions (or even bugs) from MC. Therefore, I never added an arbitrary Overworld height limit.
Early, my strictest rule was to not add any item not in MC. The lookup tool was the only exception since it was GUI-releated.
The first time I really loosened the rules was the addition of river water. For a long time I have heavily resisted the addition of river water because it "was not MC" but eventually paramat told me that Minetest requires it for
valleys
to work and no, you can't actually reuse the default water for rivers, the mapgen will actually hiccup and be buggy if you do that. Besides, using normal water with max flow distance for rivers is bad anyway since they tend to overflow.Therefore, I decided to add river water. The alternative would have been not to support the valley mapgen at all, but I thought that would be dumb.
Fun fact: I also had an idea to add a "reaction" when water and river water touch, just like with lava and water. To make it a bit more interactive. This reactino would have created additional water and/or river water source blocks. But I never finished that idea.
Removing river water is a really dangerous and hazardous decision. Note that many other items had been created or altered by me for compability with river water, like the cauldron for example. River water can only be safely removed if you are OK with dropping support for the valleys mapgen as well. Removing river water basically would be a big step backwards for the project.
Note I also added many stairs and slabs back then before Minecraft had them itself. Like prismarine slab etc. It turned out that these blocks did not exist purely due to technical limitations (they ran out of block IDs, LOL!). Besides, most of the "new" stairs and slabs have found their way into actual Minecraft itself anyway.
Removing the screwdriver isn't nice either in my opinion. Minecraft has been lacking such a tool for a very long time, it's strange. Many players in Minecraft are annoyed especially by glazed terracotta since you always must look a certain way to place it correctly. Screwdriver would ease this thing.
The screwdriver never got "official" under my maintainership btw, because there were some edge cases in which the screwdriver didn't work as I liked to (like for corner stairs). But I planned to eventually make it "official" once that got fixed, but it never got finished. But I can guarantee that all players will LOVE you if you make the screwdrier official and fully functional. Players WILL NOT CARE that the screwdriver isn't part of the original Minecraft. The usefulness of a tool like the screwdriver can not be understated. This is a perfect exaple of where "good gameplay" trumps "religiously cloning MC". :-)
About mobs: Yes, I planned to replace the mob API for a long time, as the current mobs aren't just very good, the behavior isn't good, movement is jaggy and ugly, failing to make mobs really behave like in MC and well enough, and so many other problems. It's based on Mobs Redo which isn't great code IMHO (way too chaotic code and many features added as an afterthought). My plan was to replace the entire mob API/framework, but probably in a way that would be compatible with
mobs_mc
to reduce refactoring. I think replacing the mobs system is ultimately a good idea but it will be a lot of work to come up with a good framework yourself.OK, so this was my little insight into MCL2 history and rationale for why I did the things the way I did. I caution you strongly against hastily mass-removing long-standing features based only on what are apparently "purity" reasons, this is probably not ending up well. Instead, think about what will benefit the gameplay of MCL2 as a game as a whole. I hope this post helps.
EDIT:
I read that some decision was in a private (!) Discord (!!) server. I think that for a FOSS project, this is not OK, especially when you accept contributions from outsiders. It erades trust. While I was maintainer of MCL2, everything I did was always fully in the open. People could always talk to me in the forums and IRC. There was no reason to hide anything, including project decisions.
Additionally, I dislike Discord because it's proprietary. I would never join a Discord server because I'm a FOSS zealot. ;) The IRC server worked just fine but was not popular. BTW, Zughy from the A.E.S. server had success with their Matrix thing. It's another chat system, but in cool and still FOSS. Maybe check out Matrix. You don't have to sacrifice on freedom to enable chatting, and I think it just waters down the message of free software if development collaboration is depending on non-free software.
I think it's time to publicly point out I messed up. I really hope the community will forgive this mistake. I have reverted the removal of the hoey diggroup and stripped logs. The pull request for removing MCLX was closed.
This is mostly my fault, but I think it would have went better if it weren't for the agressive way someone keeps trying to tell us what to do (just to avoid any confusions, I do not refer to Wuzzy or any MCL2 developer). It made me feel like a decision has to be made quickly. However this was decided by all maintainers, but since 6. and 7. were my idea I think we should drop them. Of course only if @kay27 and @jordan4ibanez are ok with that as well.
About discord: I have tried matrix. I have a matrix account, but I rarely use it because discord is just really a few steps ahead. Afaik there is a matrix <-> discord bridge set up for the MineClone2 server so you could just join the MineClone2 matrix room.
Yes, it was just the maintainers, we could have chosen any communication platform bascially.
I think the same as Wuzzy, except discord. We have no alternatives for it. Okay, we have but not as widely used, less integrationable. Children all over the world use discord, I don't know why, but I don't think it's right to discard the progress just because something is proprietary. Isn't PC you use to read this message proprietary? Go on, discard it. I consider discord as a tool, as it given us for free, we can use it. If there will be any libre alternative - let's move onto it.
I also think we better shouldn't make any decisions in closed chats. Maybe it's my big fault when I asked what Elias thinks about adding Jordan into Owners group. It was my first and the only question. I know, if I asked publicly, people would start to discuss him personally, and it would be definitely not what I wanted. I almost sure, if Jordan would be active when here was a discussion about who should be a successer, Wuzzy would definitely chose better him, than me, just because of Crafter. That's how we agreed to include him into project owners. And I think it's right. If you searched his forum posts, youtube videos, github repositories, you would know he's great grandfather of many good stuff, he knows engine architecture and LVM, he just couldn't stay forever on a dead center, but discord community involved him into MCL2 development, and I think it's the best whatever could happen with MCL2. Really. Crossing my fingers to not to spoil this.
What for features. I thought about them so hard. I can enumerate some differences: extra blocks, stackable water buckets, screwdriver and my arbitrary-shaped nether portals. I even created MineClone2/MineClone2#1537 to try to compose some guidelines how we accept/unaccept things. But obviously we will fight further between each other. So maybe I have a big ask for you @Wuzzy. Don't you want to continue to make decisions about the features of MineClone 2?
the only reason we (the annoying people with opinions) were putting pressure on this situation, was because some of your devs were already hacking away at features in quick succession and we wanted to stop this before it irreversibly ruins all mcl2 servers and singleplayer worlds. we wanted to get more people involved in the actions of these devs because otherwise we would soon come back to a completely broken base on our favourite servers, which is basically griefing on a massive scale. decisions had to be made quickly because devs were already doing it without being halted by reviews on how this would break everything! you could have also decided to stop doing all the controversial things temporarily until you've figured out as a group what you are going to do with it. so to be clear: I think it would have gone a lot worse if he hadn't intervened so agressively.
you also keep saying mandatory reviews would halt development too much, but I think what it really does is halt deployment. you need to realize that those are not the same thing. you can develop things all you want unrestricted without deploying it, and having it reviewed before deployment would save you the work of having to backtrack and revert crash inducing commits all the time. however, I will not tell you what to do. I just hope you will one day realize the importance of code reviews at all stages, even if it is just a simple "hey bro does this code look ok?".
from the responses on this thread I also get the feeling that none of you really understand the values of FOSS. I can not explain it to you very well but I can say that all your excuses for using discord are majorly missing the point. for example:
one important value of FOSS is that decisions made about this publicly owned project are open to all of the public. it is important that everyone can see the reasoning behind all of your actions, and a lot of the people that contribute to mcl2 would never ever join a discord server. the reasons for this are complicated but cannot be easily overridden for convenience.
in short, anything that is only accessible through discord is basically considered private and behind closed doors. if you want to keep the trust and help from the FOSS community, make sure to always provide other means of access to your decisionmaking. I am not sure if I speak for everyone on this but I think the difference between using discord vs irc (or other open-source platforms) is like the difference between a dictatorship/oligarcy with decisions coming from the top vs a democracy where everyone has a voice and can contribute to the conversation.
thank you for coming to my ted talk
@Li0n why we ever should contribute a byte for such aggressive and impolite people like you?
And you want to teach hackers how to review the code? Where is the logic?
If you think you still haven't the voice, why bothering yourself? Or you think the something is changed? I’m afraid you just made really good things impossible for a lifetime. I'll explain: YES, I didnt support Fleckenstein too much, because I didn't want just yet another Minecraft. But we agreed to keep all the features in parallel branch. Elias had power and courage to change the everything. Yes he is young and don't know everything in the world well. But you don't too, and what you do - is just egoism. You were lazy to chat with us, comment multiple issues, stand for your opinion, after all just - switch the branch to 'mineclone5' to save your servers from all these terrible things you mentioned above. Sometimes developers need to be free to remove something, to then add something. Its just their vision. You messed up everything, what I think. Wuzzy mentioned Paramat. Where is he? Made many features impossible for minetest and resigned. Does Valleys worth missing clear code, missing new API, other contributions Elias planned?
You just dont know what is FOSS yourself if you think you can force somebody to do/not to do anything with the source code.
Hmm, bummer about river water. There really shouldn't be ways rivers can overflow in a good mapgen, but I guess Minetest has made some silly decisions, so special water there is.
That Minecraft later put in asthetic block variants is a big point IMO. I strongly suspect 1.17 is going to put in stair/slab variants of gold and iron now that they've done it with copper, and that would just leave things in a weird state where something's kept out of Mineclone proper because it's "not Minecraft" when it's actually just from a future Minecraft version.
Also, I must be clear in saying that while it may seem weird to let 1.11 slip into being 1.14, the latter really just feels more complete in gameplay, and you guys should seriously consider adding stuff from 1.16 and 1.17 at reduced priority. The Nether with actual varied biomes and a way to progress from nothing sanely is a feat to behold, and the quality of life stuff 1.17 will bring is nothing to sneeze at either.
As to 1.15, I like bees conceptually and for getting honey and honeycomb (which 1.17 added more uses for), but I really would rather you don't implement them similar to Minecraft, because them as actual mobs is clearly a horrible mistake, as I can attest to from trying to herd bees around last night on a 1.16 server when they were constantly trying to wander off.
The screwdriver is something some Minecraft mods add, and I can tell you from experience it's one of the first things I craft when I'm playing with those mods. The ability to correct block facing is so huge as Minecraft adds more and more blocks that can face different directions.
I wouldn't be surprised if Minecraft eventually gets something with that functionality, although certainly not specifically a "screwdriver" (maybe a wrench). Do note Minecraft has the "debug stick" for creative to mess with block states, which lets you even obtain block states that aren't possible in survival (like stairs acting as if there's a neighboring stair when there isn't).
As for Discord...it's a good tool for fast communication in my experience, but not a good way to make decisions; forget exclusionary effects of it and consider how easy is it is for people to miss things on it compared to a more forum-like approach like we have here and in the Minetest Forums thread.
I recommend you approach Discord more as a way to get people organized to do code reviews and figure out bugs while having some fun sharing things, rather than decide the direction of the project.
What don't you like specifically?
When your support would be suitable, you ignored issues like MineClone2/MineClone2#1243
Now it would be too late if not Wuzzy and if Elias wouldn't accept his opinion.
If you want to take participance further, feel free to write your opinion and thoughts about some of other 400 issues opened still.
@Li0n wrote a post and explained a few things.
You responded with personal attacks and accusations.
But Li0n did not write in an unfriendly or aggressive way.
You attack people personally as response to critcism.
Please stop doing that. It is not helpful at all.
Okay:
What is it if it isn't a personal attack to developers.
We are: griefers, hackers, ruiners, liars, can't realize, don't understand.
Am I missed a something? Oh, yes, you are "putting pressure" because of that.
This explanation was gorgeous, we just needed exactly this.
Indeed - this reads like some children are actively trying to ruin my favorite passtime by shitting on FOSS-principles, proper release planning and minimal quality assurance. I hope someone forks this project soon and steers it back in the right direction.
Btw: You owe me some chicken. Maybe instead of discussing your minecraft-legacy-fundamentalism you better start looking into this despawning bug: MineClone2/MineClone2#1512
I'm sorry if you no longer like the way Mineclone is going, but would you please phrase your comment in a less offensive way next time? Yes, maybe there are some mistakes and bad code but we are always trying to improve stability and performance. But it is also true that we are a non-paid mostly non-professional coders just trying to add to something we like. If you don't like what we are doing then get a previous release and you don't even have to look at what we are doing.
Well, try building a river landscape with normal water – it is pretty much impossible to not flood everything accidentally from time to time unless that river is in a valley or has very sharp edges.
Normal water just flows much too far – so river water is hack, but one that has worked pretty well.
Whoa, that's a little insulting in tone. I think they mean well, and are just having some natural issues with Wuzzy's leadership gone and a lot of people rushing in to work on the project.
Overall, I recommend everyone take a bit to chill and step back and think. I've been noticing that the last week or so, notifications from this project are excessive, and a lot of it seems to be very sudden changes in plans and demands on what to do. MineClone has been going for years, so it sure won't die if people just take a few days off to sleep on things.
Now, on code review, I don't know a lot of what's really going on with bugs, but a cursory glance at things lately seems to suggest code is being rushed into master. Just having a few people well-versed in the codebase to look over things and give necessary approval before a PR is merged will generally help prevent major bugs creeping in, from my experience on GitHub projects.
The only thing I see here: rest of people don't like what we do.
Well, it's fine for me to say bye.
Why? are you leaving!?!?
Some of us, me or erlehmann & company.
It's stupid situation when you read again and again that you should do 'minimal code review' but you actually review all the code all the time.
That's how I perceive our current workflow:
I hope you don't really mean it.
Same
Who says the code needs more checking, they can help mcl2 and check code.
We are all not paid for it, that is the difference to MC: They add 5 new textures in one week; MCL2: adds an elytra in one day.
What I mean with “code review” is saying “no” to code that would introduce bugs – before any merge.
I think you are good at spotting bad code. But you are also against doing it for everyone?
Think of my idea of using
break
instead ofgoto continue
to fix a recent crash.It was a bad idea: I fixed the crash, but not correctly. You noticed it.
And you even created a better patch yourself to fix the problem.
It is good for quality of Mineclone2 that you noticed my code was not correct – before a merge!
Me & others suggest exactly this should be done for everyone.
Why do you want to enforce rules on us that we don't want? We develop in our own style, in a very fast and productive way. We have created a production branch. If you want stable code, just use that branch. Everything else should not matter to you since it does not affect you. Based of the feedback I have gotten so far, I can say the biggest part of the community appreciates the dynamic way things have developed for MineClone2.
What you are doing is Terrorism. We have a project, invest a lot of time into it and work in a way that might not be conventional but works very well for us, and we like how it is. You just come and disturb the peace. You have to understand that there is not just one way to archieve a goal. Your definition of good quality differs from ours. You do not seem to have any experience with making a lot of features in a very short time. YOU are causing major damage to the MineClone2 community.
Some things are done using PRs, others are not. I leave it up to the devs to decide whether they want to make a PR or not.
Many projects do it the way you suggest, but we just like it better the way we're doing it. LET US DEVELOP IN PEACE.
I realized that removing river water is a bad idea, but not because of your insults and agressive ways. Wuzzy was the one who actually was able to flip the switch inside of me. I feel very thankful to you Wuzzy.
In short: You either stop trying to get us to do something we just don't want or get fucked.
Yes, I mean that. How in detail we write our code is none of your bussiness. You can suggest things, but you can also criticize us, but you have to accept a no. You will immediately cut it, or either you or kay27 will have to say bye to MineClone2. Spoiler: I will make sure it is not kay27.
I have actually offered to do code reviews to improve quality. It was not wanted, as I insist that a) everything should be reviewed b) buggy code should not get merged c) regressions should be minimal.
The problem is, if not everything is reviewed, bugs still slip through. A typo can cause a crash!
I do not think code reviews can work as long as feature developers are not ok with their work being criticized in an adversarial way. I tell people who review my code to try to break it, find errors, etc. – try to prove that my code is the worst! If you try that and fail, the code is probably ok.
Elytra is actually one of my favourite new features. I hope it becomes obtainable outside of creative soon-ish.
Some problems I see in those requirements
I don't think anyone would have a problem with you or anyone else doing code review as long as they don't ask for power to decide what others do.
Even if everything is reviewed bugs will slip through, the reviewers aren't perfect either. Doing some review would also reduce the number of bugs.
@EliasFleckenstein03 I am going to stop arguing about code quality. I have understood that this kind of criticism does not change your opinion or improves code quality, but only serves to upset you and drive out @kay27. I do not want @kay27 to stop developing over this conflict.
Btw, the only person where I think criticism has made a noticable difference is @jordan4ibanez, who promised to be more careful in the future. Jordan, I am sorry for appearing so hostile – I was really upset by your initial behaviour. But you apologized and I am looking forward to the stuff you are working on. I will check it out once it is finished (i.e. feature complete and mostly free of bugs).
I am sorry as I have probably been one of those producing code with out checks the most, I have just peen patching a little to hasty, I apologize for this. I do not want anyone like Kay27 to leave, I would loosen the moral of just about every body. I should have put Elytra into a seperate branch. So in short, I'm sorry.
I don't feel too great commenting on this since I've really only been minimally involved with mcl2 dev and a lot of you will probably think who tf is this b. But there are a few things here that kind of annoy me / are plain wrong from where i'm standing. (I do read a lot here though)
You evidently haven't talked to the community of clam recently. I feel this is a filter bubble thing because from where I'm standing the community is kinda pissed at this point. (which is the main reason I'm even saying sth. here).
Terrorism, Really? You get annoyed by being called griefers and think terrorist is a reasonable metaphor to respond with ?
I feel like as long as other people are using your code it is not just your business. I mean yeah sure they're free to .. you know not use it - and indeed if this game hadnt become so important to me recently I would not even bother to say anything. But I do think you need to take some responsibility when you know it is about more than you personally having fun with something (and I mean I doubt you would have much fun with it knowing nobody uses it would you ?)
Why exactly is that ? What did he say that changed your mind? Because it feels like all of those points were made multiple times before. I guess it feels a lot like it was just about who said it and not what was said.
And honestly I want to get you to do something (differently) too: I think your style of communication is unbecoming of an Open Source project, you come out with "executive decisions" that were made behind closed doors and even though you have reverted these now, there was no word about how you want to handle such things in the future (leaving the impression you still think it was ok to do that; you were just wrong about river water!?)
All this is really worrying to me for the future of this project. And honestly if i hadn't grown so attached to that server and it's community I would have said "fuck this" quite a while ago.
Having the responsibility is not (primarily) about making decisions. It means to keep all parties with vested interests in mind and not just be like "Well i'd kinda prefer it this way; fuck the collateral damage it might cause" (thats imo the exact opposite of responsibility).
Finally let me tell you a little story about criticism. A some of you might know i work as a nurse in a psychiatric hospital irl. Today I had a patient scream at me and insult me for like half an hour for a (to me) ridiculous reason: Their spouse couldnt visit today because of a positive sars/cov2 quicktest. Did I tell them "go fuck yourself?" no. I sat there and took it. The fact of the matter is it is not only the professional thing to do; "screaming" back doesn't get you anywhere closer to where you want to be. To make the transfer back to this situation: I think you should have ignored the parts people said you thought were insulting (imo it was all pretty civilized) and focused on the (many) valid points that were in there.
I'm not trying to tell you what to do of course. But you will understand that I will do what I think is best for me and the community I love.
And yeah even though this sounds like more or less directed at @EliasFleckenstein03 personally I mean everyone who is ok with such a way of going about things too. I'm kind of worried that you will think I was impolite too now and like I said in the beginning I feel kind of bad about this but I felt like I had to say something.
Ok this was quite a wall of text. I won't bother you further about this unless there are contentual questions about what I said.
I think it is because he had now heard it from someone who proved themself to be a great brain for this.
Read the description in his profile for a bit of perspective. Now kids or adults, everyone can make mistakes. But when you do make mistakes who are you more inclined to listen to for feedback, people you know and respect, or strangers who come storming their way through to tell you what you should do?
Feedback is important, but not shoved down anyone's throat.
By the way, Elias didn't do anything 'out of rules' asking other mainteiners' opinion through discord. That's why:
Initially MCL2 is Wuzzy's child. I don't know anything about Dave Devil's, maybe 50/50 but last commit by him was almost 6 years ago.
Technically open source has many limitations, e. g. you can't make the code proprietary, can't sell it maybe, etc. But I think Wuzzy realizes well: he can fork MCL2 at any commit at any time and return it to him. Literally in one click.
Usually one-person developers just steps out into the nowhere and people who liked their projects, fork them and continue. But it creates such problems as: 1) invisible forks sometimes - when somebody continues but nobody knows about it for long time (like Nokia sofia-sip in freeswitch repo); 2) multiple forks, when community can't decide who to follow (like ffmpeg and libav); 3) formal 'death' of original project which anyone can state ealisy (like Slackware linux); 4) sometimes forks go to far and you get different incompatible products (like minetest and multicraft maybe, not sure). And etc.
So what Wuzzy made for MineClone 2 before leaving, was more than just 'best', from my point of vew. It allowed so many people to continue developing it together, with all pros and cons of team development.
He have chosen next maintainers and declared giving them full control.
And there is no clear declaration that any decision should be public. Maybe it's a mistake which should be fixed? When you develope as single-person, you don't ask anybody if it's okay for them to remove a something. When you develope in team, you have to ask sometimes if some removal okay for other part of the team.
And Elias did exactly this.
I think the only maybe mistake of @EliasFleckenstein03 is declaring our decision as something final and unchangable. But he had good intentions: make code clear, make good API, make possibilities to add not only old features back but many other stuff in more simpler way.
And he changed his mind after Wuzzy's reply.
Now making some summations, I think the following things are changed pretty obviously:
Elias stops from planning to further stripping MineClone 2 off of non-MC features;
So the process of converting MCL2 to some kind of API core is stopped;
MineClone 2 stays itself a self-sufficient game with its core, API and features out of the box;
Some changes should be made to the documentation;
We still need to decide what to do with many various features, be they MC or not.
That all looks fine, aside of the name "mineclone5", which I think there's been some discussion about. It looks from the diagram that it really is a staging branch, and I'm confused why it's not just called something clear like "staging".
/ Of course this picture was the joke. Hope I haven't hurt anyone... I'm sorry if so. I couldn't represent many good people in limited amount of time for quick answer. There are also public servers, feedback, opening issues, documentatios and many other typef of contributions, not only features, and I see what Wuzzy does for the engine, it can't be overscored. /
Okay. I'm sorry but I'm returning to the features questions.
What's wrong with features:
So, because of that:
I am agains this. I am not agains adding some useful features from mc >1.12 (like #930), but if we don't fix us a clear goal, netherite will be in master soon :-) It's the point. I already explain my primary reason on some older issue.
mc has a very bad design for mods. Players MUST DOWNLOAD mods in order to be able to connect a modded server.
It is why modded mc servers just create custom version of mc including mods code.
I think we must use the power of the good mt design. If server maintainers must modify mcl2 code in order to make their server work properly, it is bad. Really bad.
Also, some mc features are controversial IN THE MC COMMUNITY (like new pvp system, new 1.17 mapgen....)
For these features, mc players have just to download a older version. But mcl players can't.
(there are many controversial features in mc > 1.12...)
@cora, First of all, I appreciate the way your post points out what the actual problems that some people have with this decision is and also providing me feedback (from the Clamity community) that previously didn't reach me. Big thanks to you.
I hope this post will answer most of the questions you asked for the community.
I apologize for not keeping up with clam. I have school and I work really hard on MineClone2 currently, I don't have time to play videogames that much. If people want to complain, they have to contact me on discord, IRC or here, which is exactly what you did. However; the Clamity community is not necessarily representative for players since 1. It attracts a lot of technical players, who often have other interests or see different things critical than other players. 2. It seems like there are some people who like to actively spread rumors about MineClone2 devs, e.g. erlehmann told people that "Fleckenstein will break worlds, do not update your game", which of course made many people upset, but after having explained what I acutally planned to do in my forum post, many of them actually supported the removal of river water etc. The download numbers are also part of why I think the community is relatively happy, and I have recieved mostly positive feedback from the MineClone2 discord, Fleckenstein SMP, and the MineClone2 forum thread. Don't forget there are many players who just play in singleplayer.
I do not consider calling the devs griefers terrorism. The content removal topic (which was the reason we were called griefers) is over. What I was referring to was that erlehmann goes to a developer community and starts attacking the way they write code, calling the project management dysfunctional, telling us to remove tools because they are not unit tested, telling us that we HAVE to do mandatory code review, and making the project management actually dysfunctional by that. This is really just disturbing the peace, but I want to point out that erlehmann has stopped now and I appreciate that.
However, calling the devs griefers is not really ok since we are the reason you are even playing the game. You might say "Well, but Wuzzy did a good job, then you came along and ruined it". Actually, I was the major force behind 0.69 and 0.70, and no one complained back then. Within the last year, I have contributed more to MineClone2 (In terms of commits) than Wuzzy. Wuzzy has created MineClone2, and and therefore made an irreplaceable contribution to the project, I'm not trying to deny that, I just want to point out that me, kay27 and Oilboi played a major role in MineClone2, even before we became the maintainers.
The maintainers are allowed to make decisions. The reason for making this decision without a vote and discussing it privately was the immense chaos that all these issues caused. It was time to stop the bikeshedding and actually make the developers and contributors focus on developing again. Additionally, it's hard to be transparent and discuss things openly and publicly if everytime you say something you are attacked for it. (I am not speaking about your answer here, I mean erlehmann). I will promise to discuss things publicly in the future, if you promise to not attack me and my ideas in such aggressive ways ('you' referring to the people who did things like that). Criticism and discussion, but no personal attacks, spreading rumors etc. However, what we did was technically legit. Wuzzy has transferred the responsibility to us, and we are allowed to make these decisions without consulting anyone. I still think that if possible at all any decision should be discussed and made by the entire community, but there are cases in which the chaos is getting bad enough the maintainers have to step in and end the bikeshedding.
As I said, to me it seemed like that my making a decision the chaos would be stopped, which at least partly worked.
Yes, it does not only matter what is said, but also who sais it and, most importantly, how things are said. Wuzzy has described the process of how he made the decision about adding MCLX to me, which made me realize that I am repeating a mistake Wuzzy had already made and corrected himself.
Yes, my code is not just my bussiness, if I officially deploy it. What I meant was the way the code is made before it is officially deployed. Officially, the master branch was not for production usage, only releases were. You can't run an inoffical branch and complain about crashes or unexpected effects. Clamity has (always?) been running on master, and I appreciate and encourage that. The admins who made this decision never complained about unstable code in master. Sure, they reported any crashes, and of course we always supported them as far as we could (If we don't know how to solve a problem, we can't solve it obviously). BUT, officially complaining about something inoffical causing problems is really not a clever move. We will help you out if you run something inofficial, but you can't complain about it being unstable. I can totally understand that the community wants something both stable and feature-rich tho - that's why we introduced the production branch. However what we do in master, before we officially release it or push it to production, really only matters to the people working on it a lot.
Ok, I get that. I am sorry for not reacting to criticism properly. It's very important to me that I try to not take things personal (which does not mean I always manage to do that), but the criticism that I recieved by some people seemed like it was at least to a certain degree meant personal. kay27 actually wanted to ban erlehmann way earlier, but I said that we have to discuss things properly and listen to him even if we get really pissed by his ways. Turns out I was not able to handle it in the end. This is certainly a point where I need to improve.
My previous post was very rude and that was actually intentional. From kay27's posts it seemed like he was about to quit the project. This made me very upset towards erlehmann and I wanted him to really understand that he has to immediately stop, which is what he did.
As I said at the beginning, I appreciate you took the time to write your post, and I personally want to prevent the creation of a concurrent fork. However, if the workstyle of some people like erlehmann differs so much from our workstyle, then why not be pragmatic and fork it, you work on it your way, we work on in our way, and we regulary merge each other's changes. We will keep production stable and master unstable, with optional feature branches and code review.
@erlehmann, I say it again since I critized you a lot in this post, I am referring to many things that you have stopped to do. I hope we can cooperate better in the future. It will require making steps towards each other on both sides, and as far as I can see it the first steps were already taken, on both sides.
I have decided to start a fork of MineClone2 together with other people who are not satisfied with the recent direction of MineClone2 (currently @cora, @erlehmann and @Li0n). The fork is called Mineclonia and its repository is hosted on Mesehub at https://git.minetest.land/Mineclonia/Mineclonia under the Mineclonia organization. It is forked from the 0.71 release of MineClone2. With this I am also announcing that I will be leaving the MineClone2 organization.
Discussion about forking started when it became clear that the MineClone2 leadership wanted to rip out the in-game help system, mclx and only include features from Minecraft 1.12. We are many who disagreed with those decisions and argued against them. It looks like those decisions have been reverted by the MineClone2 leadership after Wuzzy joined the discussion. I think it is good that the MineClone2 leadership is reconsidering their stance about it, but I think the bigger problem is the general management of the project.
Certain people have an unproportional amount of influence in the project and I would rather be part of an organization were all decisions are made publicly between all active members and not behind closed doors. I also think it is a problem when discussions about development is being performed on Discord, a platform that many FOSS contributors choose to avoid because of it proprietary nature.
The decision to keep having an unstable master branch has also become noticeable for servers were crashes and lag have become more common with recent changes. It is good the value of having a stable master is recognized but I think the decision to have an unstable master branch is an inefficient workflow if one wants to create well functioning and reliable software, even if the plan is to maintain a separate more stable branch.
A funny coincidence is that today it was one year ago I made my first contribution to MineClone2. I have not been the most active contributor but I have enjoyed working on the project. Recently though I have felt quite frustrated with how the project is organized.
I think forking is the best option for all of us. It is obvious we will not find a compromise about these issues. By forking people who disagree with the direction of MineClone2 have their own place to go. The MineClone2 developers will also have their peace when there will be no reason for people to complain about issues like this anymore.
I hope both projects will be able to coexist in a friendly way. We look forward to accepting features from MineClone2 developers as long as they pass code-review and are stable enough to be included. We have not yet figured out exactly how contributing will be done, but there will be more emphasis on stability and code-review.
As for my continued involvement with MineClone2. I have announced that I will be leaving MineClone2 and its organization but if people want I can stay a couple of weeks just to fix my remaining assigned issues in MineClone2 before leaving.
@kay27 I am ok with everything you suggested, except
I think we should not add any new Non-MC stuff.
Never thought I'd say this but screw the version goal.
@ryvnf why not to go directly to multicraft?
You would have saved your time a lot.
Forks are good, but leaving is bad.
This is what I know from my experience in open-source development.
By the way I wonder, did you ask Wuzzy if it's okay for him that you taken the name chosen by him as a future name for MineClone 2?
( MineClone2/MineClone2#670 (comment) )
If not - I think it will better to ask.
Otherwise it's not too much nice.
I do not understand what you mean about going to multicraft.
As for leaving. It is because I think it might be weird for me to be a member of both projects at the same time. It is also that I do not expect to be very involved with MineClone2 anymore because I will work on maintaining the fork together with other people.
Just to be clear, I am not leaving for personal reasons. I have enjoyed working with you all on MineClone2. But at the same time it is frustrating to collaborate with an organization which does not do things the way you expect them to be done. I think it is good that you have found a project structure you feel comfortable to work with, but I have realized it is not for me.
If you want me to formally stay a collaborator of MineClone2 that is fine with me. But I think such a role also means that I should at least be somewhat active in the project which I do not expect to be in the near future.
We thought that name would be suitable when discussing a fork because we thought our fork would be a continuation of Wuzzy's original intentions with the project by not removing the in-game help, mclx and other features not in Minecraft 1.13.
I am quite sure Wuzzy is fine with it.
I'm not comfortable and my first thought was wow, would they take me there... LOL
It's comfortable not to work, it's comfortable to ask myself, if you know what I mean, what I can do better?
Well, if questions are asking, stable branches are wanting, we need to transit to beta and take a look, but the freedom is important as well, etc, etc...
To be honest, I don't think anybody limited you from adding as many branches as you want right here. So if you prefer making a fork and renaming it - it means different way which would be harder to lead in parallel. Any friendship might be ruined. Leaving people => changing projects => sometimes dying. I don't want it. Not in my shift. I don't want you to stay formal. I'd like to use features of both forks for both forks like a native and maybe ask you to take a look why it doesn't work as expected, etc. But as usual I can't dictate what to do. Sad news, bad times, hope erlehmann is happy, someone should be
I just wanted to comment on this:
Hi
Also my second comment:
This is pretty neat, projects are a revolving door, people leave, people come, people come back, then the new people leave and it repeats over and over.
If someone isn't happy with a project changing perhaps they could have some nostalgia and go with the last version that was maintained by Wuzzy.
But you'll be back, just like I always come back to developing minetest stuff.
Also we seem to be in alpha state, let's call it beta state when we can all look at a running server with nice mobs, nice mechanics, non lagginess, no crashes, cool minecarts, (insert random thing that would make it beta here) and all collectively go "Yeah that's looking pretty beta to me"
Also, yes, I liked my own comment, thank you
Why it's still opened? Closing.
Jordan's post took 7 thumbs up - next place after Wuzzy's 10. Doesn't it mean Wuzzy is yet another name of Oil_boi?
Since @Wuzzy has been much nicer than @jordan4ibanez I am pretty sure that those are separate people.
good that you closed it otherwise it would probably get a new baby in 9 months from now lol (after #1944)