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

Multiple homes on a per world basis #2393

Open
JadenDevon opened this issue Jan 24, 2019 · 8 comments · May be fixed by #5601
Open

Multiple homes on a per world basis #2393

JadenDevon opened this issue Jan 24, 2019 · 8 comments · May be fixed by #5601
Labels
status: open to PR Low priority enhancements that anyone is welcome to contribute. type: enhancement Features and feature requests.

Comments

@JadenDevon
Copy link

Feature request

Feature description
Multiple homes on a per world basis

How the feature is useful
If you have a server that consists of multiple worlds all with different play styles, you can set up multiple homes accessible only from that world/group of worlds(world, nether, end, or whatever worlds you want to group together).
For example: I have a survival/PvE world on my server and I want to allow players to have 3 homes they can set and access from that world set(including connected nether and end worlds). I also have a anarchy/PvP world that I want players to only have 1 home available to set and access from that world.
This should be scalable to how many worlds/world groups you have on your server.

@mdcfe mdcfe added type: enhancement Features and feature requests. status: open to PR Low priority enhancements that anyone is welcome to contribute. labels Mar 7, 2019
@caojohnny
Copy link
Contributor

To clarify, you want something like sethome-multiple, except instead of having a different number of homes that a user can set based on their rank, it would be based on the world instead, correct?

@mdcfe
Copy link
Member

mdcfe commented Mar 9, 2019

This could also be implemented as an option to choose between having limits apply globally or per world, without changing how the limits are defined (which is how I initially interpreted the feature request).

It also seems @JadenDevon wants a way to prevent users teleporting into particular worlds using /home, which could be achieved in a similar way to how elwe currently implement essentials.back.into.<world>.

@JadenDevon
Copy link
Author

JadenDevon commented Mar 9, 2019

@AgentTroll Exactly, although having options for both world based and rank based would be preferable. Permissions would have to be world based and rank based. ie: essentials.sethome.[world] and essentials.sethome-multiple.[world].[rank]. The ranks could easily use the same config options for multiple homes that currently exist.

@md678685 Indeed. A configurable option preventing players from teleporting between worlds using /home would be ideal. But it would have to work so that you could still use /home from the worlds respective nether and end.

@mdcfe
Copy link
Member

mdcfe commented Mar 9, 2019

@JadenDevon The essentials.sethome.<world> permission would be redundant, since any recent/supported permissions plugin already lets you define per-world permissions, so you can just block essentials.sethome.

I'd also be wary of changing the existing permissions to include a world name - this will break lots of people's existing setups.

What I described regarding preventing cross-world teleportation already exists - see world-home-permissions:

# Set to true to enable per-world permissions for using homes to teleport between worlds.
# This applies to the /home only.
# Give someone permission to teleport to a world with essentials.worlds.<worldname>
world-home-permissions: false


To elaborate on my previous suggestion, I was proposing that we add a config option that controls whether the home limit is based on all of the user's homes or just the ones in that world.

For example, let's say user A has essentials.sethome.multiple.three and sethome-multiple.three: 3 is set in the config. When home-limit-per-world: true is set, that user can set 3 homes in the overworld, 3 homes in the Nether, 3 homes in the End etc. However, when home-limit-per-world: false is set, it acts as it currently does (the user can only have 3 homes and EssentialsX doesn't care what world they're in). You could use per-world permissions to then set different levels for each world - perhaps give them essentials.sethome.multiple.seven in creative but only essentials.sethome.multiple.two in a survival world.

This implementation would mean we can keep existing behaviour when people update without anyone having to re-learn the feature or reset their config files, while allowing people to turn on the more advanced features if they want to.

@JadenDevon
Copy link
Author

JadenDevon commented Mar 9, 2019

@md678685 That type of implementation would be ideal. The only issue that I have with it, if someone wanted to take up this project, is that world groups would have to be possible. I would like to have it so that a player with essentials.sethome.multiple.three would have access to creating and teleporting to those 3 homes in world, world_nether, and world_the_end and have separate homes for a different world group that are accessible only in anarchy, anarchy_nether, and anarchy_the_end.(example world names)

@tadeas-drab
Copy link

If this is still relevant I would like to work on this issue. Please assign me if possible. Thanks

@mdcfe
Copy link
Member

mdcfe commented Oct 8, 2023

This issue is open to PR and I'm not aware of anyone else currently working on a PR. We don't typically assign issues to new contributors. However, you're welcome to create a PR for this and we'll review it when we have time.

Could you provide a rough outline of what you would be aiming to implement?

@tadeas-drab
Copy link

This issue is open to PR and I'm not aware of anyone else currently working on a PR. We don't typically assign issues to new contributors. However, you're welcome to create a PR for this and we'll review it when we have time.

Could you provide a rough outline of what you would be aiming to implement?

Basically I would go from the discussion in this issue and during the development ask if something is unclear. I would aim to do most of it or all if it will be possible:

  • Adding more home locations possibility meaning per world or per group of worlds, etc.
  • Default use of /home would be assignable, per world or for a group of worlds, etc.
  • Everything configurable of course

Aim to finish this would be around December this year

@tadeas-drab tadeas-drab linked a pull request Dec 16, 2023 that will close this issue
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: open to PR Low priority enhancements that anyone is welcome to contribute. type: enhancement Features and feature requests.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants