Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Suggestion] Allow placement in survival mode #6

Open
Sirmentio opened this issue Aug 19, 2022 · 10 comments
Open

[Suggestion] Allow placement in survival mode #6

Sirmentio opened this issue Aug 19, 2022 · 10 comments
Labels
enhancement New feature or request

Comments

@Sirmentio
Copy link

Hello.
I run a small 1.18.2 modded server and added a crafting recipe for this to be crafted in survival. However, to my bewilderment, it couldn't be placed anywhere. I think that instead of locking out placement to solely creative mode, it should be an option for those in survival to place and break them on the chance something like this were to happen.

@mindstorm38 mindstorm38 added the question Further information is requested label Aug 19, 2022
@mindstorm38
Copy link
Owner

mindstorm38 commented Aug 19, 2022

Hi! You're right, and the availability in non-creative mode of this block is a question since the beginning of the project.

Let me explain: each different source (live stream or raw images) present near a player (and rendered) are potentially using the network. This is a problem with live streams in particular, a player entering an area with too many different sources might get DDOS-ed just by the fact that the game will try to play all streams concurrently. This is why I didn't allow the block to be placed for non-op/non-creative players. Note that sources are not directly display blocks, for example the same source can be used on many displays and this won't cause much network lag, because the source is downloaded once, processed and then rendered at multiple locations.

To allow it in survival, I'll need to add either a permission system (to allow trusted players to place it) or a rate-limit, the best would be to implement both. The rate-limit is a lot harder to implement.

@Sirmentio
Copy link
Author

Sirmentio commented Aug 29, 2022

Honestly, my players would probably just make use of the static image feature before going ahead with full streams, which I assume wouldn't be nearly as taxing on one's network. Maybe streams of that nature could only work when changed via creative mode?
Alternatively, it could be a config option with a clear warning.

@Jacobwasbeast
Copy link

I have made a fork that allows placement and uses and added a recipe as well. Its not very secure all I did was allow placement in survival and for it to be crafted nothing more nothing less. Go to the actions tab and either get the 1.19.2 version, which is master, or 1.18.2 from my fork.

@mindstorm38
Copy link
Owner

@Jacobwasbeast I'm really interested in the workflow you introduced together with the craft (which is fair), could you open a pull request (with all changes to gradle.yml squashed)? However, I'm not sure to keep the 1.18 version because I don't know how I can manage and release multiple MC versions at the same time, if you have any suggestion for this I'm interested.

@mindstorm38 mindstorm38 added enhancement New feature or request and removed question Further information is requested labels Sep 15, 2022
@Jacobwasbeast
Copy link

Alright, I created a pull request.

@ajh123
Copy link
Contributor

ajh123 commented Feb 25, 2024

Permissions with LuckPerms could be added to allow none-oped players place a web display, a permission like webstreamer.display.place could be used.

Many servers already use LuckPerms so this would be helpful for them to.

@mindstorm38
Copy link
Owner

I wonder if there is a more standard way of managing per-block permission in vanilla Minecraft? Or maybe with a fabric api?

@mindstorm38
Copy link
Owner

Looks like LuckPerms have a sub library that does exactly that https://github.com/lucko/fabric-permissions-api/

@ajh123
Copy link
Contributor

ajh123 commented Feb 25, 2024

However, that API has had its last update 7 months ago.

@mindstorm38
Copy link
Owner

LuckPerms keep advertising it as the standard way to interoperate with permissions... I agree that 7 months is a lot for an open source project, but there are no recent issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants