unity-renderer
unity-renderer copied to clipboard
Allow players to set scene as Home
All players enter decentraland through the same coordinates (0,0) on genesis plaza. As a player, I would like to set the current coordinates as my home, so everything I come back to Decentraland, I start at this place.
Acceptance criteria
- [x] Home coordinates are stored locally in ~~player prefs~~ local storage (per computer)
- [x] This action can be executed from the scene actions below the minimap
- [x] Unsetting the scene as home, reset it to 0,0
- [x] This only happens when the url does not contain any coordinate params
Pending design
- [ ] HUD interaction to set scene as home (action button, house icon etc)
- [ ] Mark in the minimap displaying home scene
- [ ] Alternative field in the settings to input or reset the home coordinates
Do we already have on figma the UI for this functionality?
Considerations on this functionality:
- The whole teleport mechanism is handled by kernel, the new function integration will mainly happen in kernel and the unity-renderer will just be responsible to send a message when the point is updated
- The position can be stored in local storage, this means that a user accessing from a different computer with the same wallet will not have the same spawn point
We need to discuss this together to clarify the acceptance criteria
@Alvaro Luque I don't agree on the idea of selecting the home scene from the settings screen. I think we can make it by far more intuitive if we control this from the map or mini map. As default, the home scene pin would be located over the Genesis Plaza. Click and hold over the pin should allow the player to move it. The player should release it over the coords she/he wants to select the new Home Scene.
On a different note, from this feature I have detected the following user stories.
USER STORIES 1- As a player I want to spawn in a specific Scene when I enter Decentraland. 2- As a player I would like to easily edit that Scene (from the nav map, from the world, from the place info card, etc). 3- As a player I would like to see a pin highlighting in the map the "home scene”. 4- As a player a would like to have a button to go directly to my "home scene" from the world.
SOLUTIONS 2- "Home" can be configured by moving the home pin in the nav map (click, drag and drop). Also from the mini map by clicking the scene's menu button. In the menu is a toggle button to set a scene as home. 3- This Home pin should be visible in the nav map. 4- The Home button in the mini map teleports the player to the home scene.
@RominaMarchetti @olavra I have a couple of concerns about this design:
- Are we sure we want the draggable home point in the map with the current map? With the limited movements in the map it would be a bit annoying to move it around expecially if zoomed in.
- If we decide to have the drag and drop how do we handle it on the drag release? center it to the parcel over which the pointer is?
- Isn't having the original spawn point over genesis plaza a bit too much? it means that as soon as you spawn in the genesis you will have your red dot, close-by people and even the home point, it might be visually too dense
- How do we handle scenes that enforce a coordinate? Like if we put the home point in 20,20 and that scene forces the teleport to 22,22 it is a bit annoying to see the home in 20,20 but spawning in 22,22
@davidejensen 1- It feels natural an very interactive to click the home pin and drag and drop it somewhere. If we are too limited we can find a work around. 2- The pin's peak should be centered in the parcel the user is deciding to drop it. 3- In the mini map I won't show the home button plus the compass and players. In the map I'm afraid we are going to have that issue.
Waiting for kernel issue https://github.com/decentraland/kernel/issues/444
After the following initial design:
it has been decided to change the button to a toggle with the following behavior:
- when we toggle on we set the parcel we are in as a home point
- when moving to a parcel that is not home the toggle will appear off
- toggling again will put that parcel as home
- toggling off when in the home parcel will set the home point to 0,0