How can I get into Client Modding ?

Post Reply
infinity
New member
Posts: 4
Joined: Thu Nov 29, 2018 12:54

How can I get into Client Modding ?

by infinity » Post

I need to get into Client Modding, I most want to know the priv stuff, the basic things and how I can modify things. For people who don't know anything about Client Modding.

Any tutorials aout there?

Anything I should know?

parasite
Member
Posts: 186
Joined: Sat May 06, 2017 17:45
GitHub: Parasitoid

Re: How can I get into Client Modding ?

by parasite » Post

infinity wrote:I need to get into Client Modding,
Did you mean hacking?
infinity wrote:I most want to know the priv stuff,
Well, definitely you mean hacking. Client hacking :D
infinity wrote: Any tutorials aout there? Anything I should know?
Yes, sure. You can start here and here, and then you could back to the client (aslo called engine) to see if you've learned enough to understand how it works and how you can apply your "modding" changes. What if I was wrong and you mean making mods? Then you can start here. Good luck!
;-)

infinity
New member
Posts: 4
Joined: Thu Nov 29, 2018 12:54

Re: How can I get into Client Modding ?

by infinity » Post

parasite wrote:
infinity wrote:I need to get into Client Modding,
Did you mean hacking?
infinity wrote:I most want to know the priv stuff,
Well, definitely you mean hacking. Client hacking :D
No. Just client modding. This is an open source game/engine, there's no hacking involved, also there is an entire section for these in this forum.

User avatar
rubenwardy
Moderator
Posts: 6978
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

Re: How can I get into Client Modding ?

by rubenwardy » Post

The client modding API is very limited currently. The best route into it is by learning Server modding first, there's a handy resource for that https://rubenwardy.com/minetest_modding_book/
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

parasite
Member
Posts: 186
Joined: Sat May 06, 2017 17:45
GitHub: Parasitoid

Re: How can I get into Client Modding ?

by parasite » Post

infinity wrote:No. Just client modding. This is an open source game/engine, there's no hacking involved, also there is an entire section for these in this forum.
So you mean CSM? Well, as you mentioned, there is entire section in this forum where evrybody can ask anything about that ;) As far as I understand this idea, the current form of CSM is a total misunderstanding. Devs wrote the code, implemented it, merged but nobody uses it. No serious admin lets you use CSM on his or her server. And that is becouse this is an incomplete solution. CSM is only the half of what devs wanted to make. We still do not have that missing half. But I guess devs should explained it much better, and in simpler way.

Whatever, all modding in minetest come with Lua programming language. You do not need to be master in Lua, but you need to know some basics, like variables, strings, numerical values, tables, conditional statements, loops and functions. That should be enough to understand how minetest mods code works. This site contain all about Lua, there you can find some old textbook, reference manual (skip "basic concepts" if you are new to programming), and some tutorials. You can test your code online with server-side interpreter and web editor here. There is no difference between mods and CSM in that - both need Lua. Anyway, you'll find out quickly about that when you will study what I proposed to you in my last link and what rubenwardy suggested (this is the same thing).

Good luck with that, and of course, do not be shy asking when you start learning and experimenting.

infinity
New member
Posts: 4
Joined: Thu Nov 29, 2018 12:54

Re: How can I get into Client Modding ?

by infinity » Post

parasite wrote:
infinity wrote:No. Just client modding. This is an open source game/engine, there's no hacking involved, also there is an entire section for these in this forum.
So you mean CSM? Well, as you mentioned, there is entire section in this forum where evrybody can ask anything about that ;) As far as I understand this idea, the current form of CSM is a total misunderstanding. Devs wrote the code, implemented it, merged but nobody uses it. No serious admin lets you use CSM on his or her server. And that is becouse this is an incomplete solution. CSM is only the half of what devs wanted to make. We still do not have that missing half. But I guess devs should explained it much better, and in simpler way.

Whatever, all modding in minetest come with Lua programming language. You do not need to be master in Lua, but you need to know some basics, like variables, strings, numerical values, tables, conditional statements, loops and functions. That should be enough to understand how minetest mods code works. This site contain all about Lua, there you can find some old textbook, reference manual (skip "basic concepts" if you are new to programming), and some tutorials. You can test your code online with server-side interpreter and web editor here. There is no difference between mods and CSM in that - both need Lua. Anyway, you'll find out quickly about that when you will study what I proposed to you in my last link and what rubenwardy suggested (this is the same thing).

Good luck with that, and of course, do not be shy asking when you start learning and experimenting.


i see , thanks btw

User avatar
paramat
Developer
Posts: 3700
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: How can I get into Client Modding ?

by paramat » Post

This is purely my opinion but ... CSM is a disaster, boring, best avoided and the future of it is uncertain =)
Client-provided CSM being released in 0.4.16 was a big mistake we made, server protections against it were not present, however they will be present in MT 5.0.0, so, it's best you wait for 5.0.0 before using CSM.

wziard
Member
Posts: 127
Joined: Mon Oct 29, 2018 19:12

Re: How can I get into Client Modding ?

by wziard » Post

Of course I'm very new here and I don't know all the ins and outs, but I must say I don't really get the negativism towards CSM. Maybe it has to do with the developers of CSM?

To me it just seems a very useful thing for things like embellishing/customising the user interface/look without bothering the server.

The fact that the server trusted the client in certain things is unfortunate (and a design error imho, though one that's very hard to avoid because of performance reasons.) but it doesn't take away the usefulness of being able to customize your client. For example the screenshot/timelapse CSM I saw was a very useful feature. The client has access to all kinds of rendering state which could be used in effects for eyecandy. Or support for different 3d schemes. All kinds of stuff.

I saw the plans for server-send CSM, of which I understand the usefulness. But I also think that's extremely scary. If a server could send turing complete code to my minetest client to execute I wouldn't trust any server anymore. So I do hope there will be a setting to refuse any server-sent CSM.

Otoh, I've seen some of paramat's and the other dev's work and it's awesome, so I tend to trust their verdict in this matter and I'll just believe there's something fundamentally broken about client loaded CSM. But what that something is is a bit of a mystery to me :-D.

Edit: replaced MS app name with the proper app name.
Last edited by wziard on Fri Nov 30, 2018 10:42, edited 1 time in total.

parasite
Member
Posts: 186
Joined: Sat May 06, 2017 17:45
GitHub: Parasitoid

Re: How can I get into Client Modding ?

by parasite » Post

wziard wrote:But I also think that's extremely scary. If a server could send turing complete code to my minecraft client to execute I wouldn't trust any server anymore.
Do not worry! None of our servers will ever be able to modify your minecraft client. Or any other app you bought from MS :D

When I was writting these words about CSM above, that it is incomplete, I meant this paramat`s post. I understand the benefits of CSM, but I do not understand why the making it is so chaotic. Anyway, I just did not want to recommend to someone who apparently is a novice, dealing with something that causes controversy among server administrators and what the devs themselves have different opinions about. But if we do not mind changing the subject of this thread, we can also talk about something else than answering the OP question.

For example, why we do not have an additional button in minetest interface? When you press that button, a dialog box will open to allow you set the folder of CSM you want to load. Yes, I am talking about loading the given CSM with two clicks ;D

wziard
Member
Posts: 127
Joined: Mon Oct 29, 2018 19:12

Re: How can I get into Client Modding ?

by wziard » Post

parasite wrote: Do not worry! None of our servers will ever be able to modify your minecraft client. Or any other app you bought from MS :D
Whoops, that was a stupid typo. But my point stands. I think a server sending executable code to my minetest client is scary. I'm not sure if I trust the lua VM to be battle hardenend enough to let it run arbitrary code from the internet inside
my client. Of course the same goes for javascript in a browser, but there have been plenty of problems with that as well. And there are a lot more eyeballs on the various js vms than on the lua vm (for this purpose).


Of course you are right to not recommend CSM to a newbie (like I am myself as well). I'm just wondering if there's something I don't understand about (client-loaded) CSM whuich would make it fundamentally bad.

infinity
New member
Posts: 4
Joined: Thu Nov 29, 2018 12:54

Re: How can I get into Client Modding ?

by infinity » Post

paramat wrote:This is purely my opinion but ... CSM is a disaster, boring, best avoided and the future of it is uncertain =)
Client-provided CSM being released in 0.4.16 was a big mistake we made, server protections against it were not present, however they will be present in MT 5.0.0, so, it's best you wait for 5.0.0 before using CSM.

i see, but do you have a release date for 5.0 ?

wziard
Member
Posts: 127
Joined: Mon Oct 29, 2018 19:12

Re: How can I get into Client Modding ?

by wziard » Post

Asking a volunteer coder for a release date is not the most productive thing to do :-). It's done when it's done. People have deadlines in their day job, they don't really need them in their hobbies.

Post Reply

Who is online

Users browsing this forum: No registered users and 29 guests