Element-0 / ElementZero

Run windows version of BDS in linux with Mod support
GNU General Public License v3.0
271 stars 51 forks source link

[Question] Help wanted? + some ideas #89

Open Weissnix4711 opened 4 years ago

Weissnix4711 commented 4 years ago

Hey there. I would like to help out the project in any way I can. What should I do? I'm not the greatest with C++, but I can definitely help out with wikis, docs, that sort of thing.

Anyway, this project is probably going to get pretty big, pretty soon. Compared to the other server options out there right now, because this is still running BDS at its core, we have access to everything in the vanilla game. PMMP doesn't eve have mob spawning right now. Nukkit's terrain generation is honestly terrible. The only upper hand those options have is more mods, because they have been around for longer. So here's some ideas:

  1. We will eventually need something like Poggit, to keep track of plugin releases. The current always-open issue is not exactly the best. PMMP also has Poggit-CI which is kinda fancy, but that's probably not top priority right now. Just a website where people can upload their plugins to is going to be fine. In the future maybe. I'm happy to help out on some of the frontend web stuff. I might see if I can help out backend, but you probably don't want me there. :laughing:

  2. The current wiki is a mess. I would like to add some more detail to my mod documentation page. Also, the landing page isn't great. I mean, it works, but it's just a few links in a list. Ain't pretty.

  3. Oh, and a few plugin request / ideas. First off, a factions plugin would be cool, with land claiming, wars and more. Similar to the spawn-protection plugin we ave right now, but players can claim areas as their own, and only they will be allowed to break / place in that area. It wouldn't exactly be easy to do, but I feel like all other server software just aren't ideal for a factions server. They are all missing certain parts of vanilla minecraft.

  4. Second plugin suggestion, an anti-dupe glitch plugin. I'm not sure how viable it would be, but if it were possible to stop pistons from pushing chests, that would be a good start. Obviously, other dupes exist, such as the dispenser dupe, but the chest dupe is probably the easiest, and most well-known.

Would a collaboration be possible? Looking forward to hearing back from you.

Extollite commented 4 years ago

Hi man, All this is great ideas. But to make it came true we need more committed developers. We can't rely on CodeHZ to make all this stuff alone. Making more complex mods for eZ needs some good C++ knowledge and a bit of RE too and there is no many ppl in this community that can do that. And in my case I would rather charge few bucks for my work and knowledge than give it for free.

Weissnix4711 commented 4 years ago

Yeah man. I understand. This community is tiny, you're right. And most people here (me included) don't have a great understanding of c++. I know a bit. But I wouldn't have enough to make any complex plugins.

Yeah. Great job, @codehz you are doing incredible. And all you get is through donations.

I was just offering what I can. Mostly wiki editing, and some front-end web dev. I'm afraid that's about all I can offer though.

Weissnix4711 commented 4 years ago

@Bluebotlaboratories it doesn't take that much knowledge to look through some source code and gain a basic understanding of what it does. I'll have another look at the mod template, and built in mods, and I'll see if I figure them out.

As for making some sort of scraper, it'll definitely be doable, but it does seem like a very "hacky" solution. Not a long term solution, by any means. I'll see what I can make.

ambiennt commented 4 years ago

It seems like codehz is taking a small break from the server development given by the slower pace of updates, or perhaps he is waiting on 1.16 to release as it is right around the corner. In any case, I think he and the server software could only benefit from a greater pool of knowledge and some assistance with documentation and development.

Weissnix4711 commented 4 years ago

Sorry, my bad for closing the issue. Damn mobile :laughing:

I don't blame him. He's basically been doing all the work here. I'm trying to understand some of it myself. Just looking through the code and trying to make sense of it.

As I said, I ain't great at c++, but I can use this opportunity to learn some more. I got plenty of free time now anyway, so may as well put it to some use.

elijahr2411 commented 4 years ago

Yeah, I agree that this'll get big. With Mojang removing debug symbols from clients (Making custom server software development harder/closer to impossible) I feel like people will be looking for a modded BDS in the masses.

Weissnix4711 commented 4 years ago

Yeah. So far I believe this is the best software out there. It may not have as many mods, or be fully updated to the new version (yet), but aside from that it has the potential to do everything you see in (all the other major software options). And much more efficiently. Just look at NukkitX.. I'm surprised that code even runs.

CvldYT commented 4 years ago

Another issue is the fact that the devs that make plugins for EZ, make them paid. There are tons of plugins, but greedy devs want money.

CvldYT commented 4 years ago

An easy way to make money would be to release free plugins, then let the community hire you to make custom plugins.

elijahr2411 commented 4 years ago

I couldnt find any other modded software (Pocketmine, NukkitX, etc) that is as close to updated as we are.

Extollite commented 4 years ago

I couldnt find any other modded software (Pocketmine, NukkitX, etc) that is as close to updated as we are.

that can't be compered.

elijahr2411 commented 4 years ago

Another issue is the fact that the devs that make plugins for EZ, make them paid. There are tons of plugins, but greedy devs want money.

I couldn't find any custom plugins for the life of me, paid or not. Where did you find these?

Extollite commented 4 years ago

I think I'm this greedy dev XD

Weissnix4711 commented 4 years ago

Another issue is the fact that the devs that make plugins for EZ, make them paid. There are tons of plugins, but greedy devs want money.

Not true. They aren't greedy. You have to understand that people need money to live. If they are software devs and spend most of their time working on paid projects, do you really expect them to sit down in their spare time and write free plugins? The harsh reality for all software devs is that donations won't pay the bills.

Besides..

I couldn't find any custom plugins for the life of me, paid or not. Where did you find these?

This is also very true. This project is quite small. There aren't enough people who even use EZ (let alone donate to plugin devs), for donations to be viable in any way.

ghost commented 4 years ago

Another issue is the fact that the devs that make plugins for EZ, make them paid. There are tons of plugins, but greedy devs want money.

It takes much time to develop a mod.There is no API docs,few examples.If you just do not like paid mods,dont blame dev.You can become a free software dev or make this community bigger enough to meet the requirements of everyone.

DevilLord41 commented 4 years ago

Another issue is the fact that the devs that make plugins for EZ, make them paid. There are tons of plugins, but greedy devs want money.

Kind of idiot people who think developing plugins is easy and doesn't take time/any effort.

lyndsysimon commented 4 years ago

Another issue is the fact that the devs that make plugins for EZ, make them paid. There are tons of plugins, but greedy devs want money.

I strongly disagree with this.

I’m a developer, and am here mostly because I’m interested in getting a modded server set up for my daughters and their friends. I fully intend to jump in and help where I can, but if there were a polished commercial solution for what I want at anything resembling a reasonable price point - say, less than $250, or $30 / month - I’d jump at it.

I’ve not found any paid mods for EZ. If you’re aware of them I’d love to see them.

As it is, EZ lets me run a Bedrock server on a machine at my home, which I expose to the Internet. It’s whitelist-based so only my kids and their friends can join. Using EZ instead of vanilla means I have /tpa and /warp commands - basically “quality of life” stuff. I’d love to be able to allow a basic economy, but I’ve not been able to get that working yet under 1.16.

Weissnix4711 commented 4 years ago

I’ve not found any paid mods for EZ. If you’re aware of them I’d love to see them.

Extollite's Anticheat is paid. That's the only mod I can think of right now. There may be more.

I’d love to be able to allow a basic economy, but I’ve not been able to get that working yet under 1.16.

Economy works fine on 1.16. What exactly is it that doesn't work?

lyndsysimon commented 4 years ago

It may be that I just don't know how economy works. :)

I didn't realize that it only provides an API for other plugins to us. I saw that Essentials referenced Bukkit's version, and saw that Bukkit's version included "shop signs". I tried to get those to work and failed, and haven't yet gotten back to it.

Weissnix4711 commented 4 years ago

Yeah, Economy here is just the API. Well, you have commands to update balance and such, but that's it.

If you can't be bothered to write a plugin in C++, you could also use the built in scripting feature. See the ScriptingAPI.

And example could be HongyiMC's mobReward script.

lyndsysimon commented 4 years ago

Oh, awesome - the ScriptingAPI looks like it will do pretty much everything I need it to. I should be able to use that to flesh out the overall economy for my server :).

Weissnix4711 commented 4 years ago

Oh, awesome - the ScriptingAPI looks like it will do pretty much everything I need it to. I should be able to use that to flesh out the overall economy for my server :).

If you would like to use them as reference, or wish to edit them, you can use my own scripts.

https://github.com/Weissnix4711/ElementZero-scripts

I recently made almost all my scripts available on there. Also, if you have any questions regarding the scripting feature, I will try my best to answer.

lyndsysimon commented 4 years ago

Thanks :)

I haven’t had much time in the past couple of weeks to work on this, but I will. I found the Minecraft docs for events, which is helpful - I have at least what I need to design the script-based “mods” I’d like, but haven’t figure out how to debug them yet.

If you have any pointers on how I can set up my environment, that would be great. It would be ideal if I could somehow get a REPL where I could edit things “live” and see the result - something like the console in modern browsers. Failing that, I at least need to figure out where script output and errors are logged.

Weissnix4711 commented 4 years ago

Syntax errors are logged to EZ's console. They are also stored in the log.db database, if you want to look for them after. If you want to log other errors then you'll have to set up a basic form of error handling. Try and catch are your friends here.

As for documentation, check out this site. It's got a lot more detail and accuracy than the official documentation.

For you environment, I have heard good things about bridge. It is meant for all sorts of add-on work, including scripting.

I have never used it though, I personally use Visual Studio Code. It works great for checking JavaScript syntax. Another reason I like it is for its great integration with git. I use git to keep track of changes. VS Code shows me all the changes I've made since the last commit, directly in the editor. This helps out of sticky situations where your code doesn't work, and you can't remember what you've done. Trust me, I've been there a lot. ;)

lyndsysimon commented 4 years ago

My default is to use Vim (well, technically Neovim). I have a fairly extensive configuration set up that integrates a language server and source control, among many other things.

I tend to use JetBrains products for new languages that I don't know well and I either have trouble getting set up properly in Vim or I don't plan to use much.

Thanks for the links, I'll check them out!