[(Client)Mod] Client Side Protection [csm_protection]
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
[(Client)Mod] Client Side Protection [csm_protection]
Client Side Protection
The player can't cheat anymore through walls, doors or roofs with this.
This mod can be used as mod and as clientmod.
The server and the client have to have it to make it work.
It would be really nice if servers install this mod. They can force their players to use this mod by kicking them on violate.
Depends: csm_com
License: CC0
Download: https://codeberg.org/Desour/csm_protect ... master.zip
Git repo: https://codeberg.org/Desour/csm_protection
The player can't cheat anymore through walls, doors or roofs with this.
This mod can be used as mod and as clientmod.
The server and the client have to have it to make it work.
It would be really nice if servers install this mod. They can force their players to use this mod by kicking them on violate.
Depends: csm_com
License: CC0
Download: https://codeberg.org/Desour/csm_protect ... master.zip
Git repo: https://codeberg.org/Desour/csm_protection
Last edited by Desour on Mon Oct 16, 2023 21:38, edited 1 time in total.
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
- ExeterDad
- Member
- Posts: 1717
- Joined: Sun Jun 01, 2014 20:00
- In-game: ExeterDad
- Location: New Hampshire U.S.A
Re: [(Client)Mod] Client Side Protection [csm_protection]
Could you possibly give some more details about this mod? Sounds interesting even though I'm not sure exactly what it's capable of.
HOMETOWN -Our little server. Keep the HOMETOWN chatter @ http://hometownserver.com - Our server map: http://media.hometownserver.com
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
Re: [(Client)Mod] Client Side Protection [csm_protection]
When the player tries to dig a protected node, normally the node is away for some time. Until it's back the player can walk through walls, doors and roofs. If this client- and server-side mod is installed (on both, client and server), the client is stopped client-side from digging the node. => It will never disappear.
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
- duane
- Member
- Posts: 1715
- Joined: Wed Aug 19, 2015 19:11
- GitHub: duane-r
- Location: Oklahoma City
- Contact:
Re: [(Client)Mod] Client Side Protection [csm_protection]
So how do you stop them from just changing the client mod?
Believe in people and you don't need to believe anything else.
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
Re: [(Client)Mod] Client Side Protection [csm_protection]
If a player has this mod, he will never violate protection (so, trigger the event). This means you can simply add very hard punishment (like kicking).duane wrote:So how do you stop them from just changing the client mod?
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
- duane
- Member
- Posts: 1715
- Joined: Wed Aug 19, 2015 19:11
- GitHub: duane-r
- Location: Oklahoma City
- Contact:
Re: [(Client)Mod] Client Side Protection [csm_protection]
But if he wants to violate protection, all he has to do is modify (or just remove) the client mod, or am I missing something? If you're going to punish him based on easily modifiable code that he has to install, he's got a strong motivation to change that code to something he won't get punished for.DS-minetest wrote:If a player has this mod, he will never violate protection (so, trigger the event). This means you can simply add very hard punishment (like kicking).
Believe in people and you don't need to believe anything else.
- ExeterDad
- Member
- Posts: 1717
- Joined: Sun Jun 01, 2014 20:00
- In-game: ExeterDad
- Location: New Hampshire U.S.A
Re: [(Client)Mod] Client Side Protection [csm_protection]
I'm not understanding the logic of this either. I'm trying to though :)duane wrote:But if he wants to violate protection, all he has to do is modify (or just remove) the client mod, or am I missing something? If you're going to punish him based on easily modifiable code that he has to install, he's got a strong motivation to change that code to something he won't get punished for.DS-minetest wrote:If a player has this mod, he will never violate protection (so, trigger the event). This means you can simply add very hard punishment (like kicking).
HOMETOWN -Our little server. Keep the HOMETOWN chatter @ http://hometownserver.com - Our server map: http://media.hometownserver.com
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
Re: [(Client)Mod] Client Side Protection [csm_protection]
I found a problem, this only prevents from digging yet, not placing. But it's currently not really possible, I think.
There's a server-side function that is called when a player digs/places a protected node. On_punchnode the client mod asks the server mod via csm_com (which uses chat) if the punched node is protected. If it is protected, the server mod tells the client mod the position. The client mod saves this position. On_dignode the client mod checks if the position is the last position of that is told, that it's protected, if so, it returns true (the node is not digged). The server-side protection_violate function isn't called.
If the client mod is changed, that it doesn't return true, the node disappears but also the server-side protection_violate function is called. If the server kicks on this event the player, the one who has the mod (unmodified) doesn't get kicked, the one who hasn't gets kicked.
There's a server-side function that is called when a player digs/places a protected node. On_punchnode the client mod asks the server mod via csm_com (which uses chat) if the punched node is protected. If it is protected, the server mod tells the client mod the position. The client mod saves this position. On_dignode the client mod checks if the position is the last position of that is told, that it's protected, if so, it returns true (the node is not digged). The server-side protection_violate function isn't called.
If the client mod is changed, that it doesn't return true, the node disappears but also the server-side protection_violate function is called. If the server kicks on this event the player, the one who has the mod (unmodified) doesn't get kicked, the one who hasn't gets kicked.
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
- ExeterDad
- Member
- Posts: 1717
- Joined: Sun Jun 01, 2014 20:00
- In-game: ExeterDad
- Location: New Hampshire U.S.A
Re: [(Client)Mod] Client Side Protection [csm_protection]
^^ Thanks for explaining :) That's actually pretty clever.
Another question. Almost nobody uses CSM currently as it involves manually installing and configuring. Especially mobile users. How will this affect players that aren't using your mod at this time?
Another question. Almost nobody uses CSM currently as it involves manually installing and configuring. Especially mobile users. How will this affect players that aren't using your mod at this time?
HOMETOWN -Our little server. Keep the HOMETOWN chatter @ http://hometownserver.com - Our server map: http://media.hometownserver.com
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
Re: [(Client)Mod] Client Side Protection [csm_protection]
It won't do anything. The only thing, that is different is that they see a chatmessage because of csm_com ("Psst, don't let your master hear this! Do you have csm_com?" I think).ExeterDad wrote:^^ Thanks for explaining :) That's actually pretty clever.
Another question. Almost nobody uses CSM currently as it involves manually installing and configuring. Especially mobile users. How will this affect players that aren't using your mod at this time?
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
- AntumDeluge
- Member
- Posts: 213
- Joined: Sun Aug 07, 2016 05:42
- GitHub: AntumDeluge
- IRC: AntumDeluge
- Contact:
Re: [(Client)Mod] Client Side Protection [csm_protection]
I've been looking for a way to do this. Thank you.
Personally, I'd like to see this functionality built into the server code.
Personally, I'd like to see this functionality built into the server code.
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
Re: [(Client)Mod] Client Side Protection [csm_protection]
It could work much more reliable, also on place and without server mod if csm had something like an is_protected(pos) function.
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
- ManElevation
- Member
- Posts: 896
- Joined: Tue Aug 02, 2016 22:04
- GitHub: ManElevation
- IRC: ManElevation
- In-game: ManElevation
- Location: Madrid,Spain
Re: [(Client)Mod] Client Side Protection [csm_protection]
Added "ManElevation World"
My Public Mods! Discord: Rottweiler Games#3368
- azekill_DIABLO
- Member
- Posts: 7507
- Joined: Wed Oct 29, 2014 20:05
- GitHub: azekillDIABLO
- In-game: azekill_DIABLO
- Location: OMICRON
- Contact:
Re: [(Client)Mod] Client Side Protection [csm_protection]
hey looks interesting!
Gone, but not dead. Contact me on discord: azekill_DIABLO#6565
DMs are always open if you want to get in touch!
DMs are always open if you want to get in touch!
Re: [(Client)Mod] Client Side Protection [csm_protection]
I couldn't agree more. Protected blocks have no reason to even be crack-able clientside, the server simply never attempts to actually communicate where protection areas exist until a block is broken, and minetest_game doesn't use the entire feature at all (even locked chests are just a different block type with an overwritten can_dig definition) so there are tons of mods which don't even respect it, and so on... I think it needs some love.AntumDeluge wrote:Personally, I'd like to see this functionality built into the server code.
Who is online
Users browsing this forum: No registered users and 1 guest