# Hyperfy Discord - 2025-06-07

## Overall Discussion Highlights

### Camera & Navigation Systems
- **Freecam Implementation**: Shiffty developed a freecam system with 6DOF movement and mouse rotation controls using pointer lock and quaternion interpolation for smooth camera movement.
- **Camera Path System**: ~/drdoge.eth demonstrated a system allowing switching between predefined camera positions.
- **Portal Functionality**: Confirmation that users can transport between maps using portals available in the play world. 0mka provided an upgraded portal with label and emissive edges, scaling, and world/URL portal capabilities.

### World Building & Management
- **Collections/Palettes**: Discussions between 0mka and Ashxn about collections management. Collections are currently simple folders in the repo that could be expanded with more UI features.
- **Plot/Parcel Management**: Debate on how to implement plot management where users can only build in designated areas. TheMattEmpire proposed using volumes to define build permissions.
- **Build vs. Play Mode**: Cru mentioned working on separating build/editor mode from play mode to create more focused experiences, potentially mounting the editor on a different URL while maintaining real-time updates.

### User Management & Moderation
- **Meeting Requirements**: Ashxn identified two key requirements for formal events in Hyperfy: voice chat permission controls (everyone vs. admins only) and admin moderation tools (mute, kick, ban).
- **Permissions System**: Discussion about implementing a multi-role permissions system for more granular control over world modifications.

### Technical Issues
- **Teleport Command Problems**: Agent12 reported issues with teleport locations not being saved after world refresh, while emote commands worked properly. Ash verified functionality in the play world and suggested updating to the latest version.
- **Playworlds Lock**: Brief issue with "playworlds" being locked, which Ashxn quickly resolved after acknowledging it was locked during testing.

## Key Questions & Answers

**Q: How are hyp packs/collections currently working?** (asked by 0mka)  
A: They're currently called collections with only one default collection, but designed so the plus button UI could have tabs for each collection. (answered by Ashxn)

**Q: What's the easiest way to share collections?** (asked by 0mka)  
A: You could modify the default folder and make it whatever you want and then share that with people. (answered by Ashxn)

**Q: Can one hyp load another hyp from a URL?** (asked by 0mka)  
A: No, one hyp can't load another hyp. (answered by Ashxn)

**Q: How would plots work in a single world where people can only build on certain plots?** (asked by Ashxn)  
A: One approach would be using volumes, where anything within the volume applies to the permissions granted to users. (answered by TheMattEmpire)

**Q: How did you get the movement with the mouse going for the camera?** (asked by ~/drdoge.eth)  
A: Using pointer lock and handling pointer down events for the right mouse button. (answered by Shiffty)

**Q: Do you have any suggestions for hosting meetings in the Hyperfy-based metaverse?** (asked by ovo)  
A: Right now it's more suitable for casual events. For formal events, you need: 1. voice chat permission switch for "everyone" or "just admins" 2. mute, kick, ban buttons for admins. (answered by Ashxn)

**Q: Is there anyway to add a portal in hyperfy to send users to another map?** (asked by Cayden0207)  
A: Yes! Grab the portal in the play world someone put there. (answered by Ashxn)

**Q: Where can I write feature proposals for HF?** (asked by Enryt)  
A: You can add them to the GitHub repo if you have a GitHub account, but there's no clear location specified. (answered by 0mka)

## Community Help & Collaboration

1. **Camera Implementation Help**
   - Shiffty helped vox by adding a free cam mode with 6DOF movement and sharing the implementation
   - Shiffty assisted ~/drdoge.eth by sharing code showing how to use pointer lock and handle mouse movement for camera rotation

2. **Portal Functionality**
   - 0mka provided portalpackv1 with an upgraded portal featuring label and emissive edges, scaling, and world/URL portal capabilities

3. **Collections Management**
   - Ashxn explained to 0mka the current implementation of collections and potential future directions

4. **Meeting Features Guidance**
   - Ashxn suggested to ovo implementing voice chat permissions and admin moderation tools for formal meetings in Hyperfy

5. **Teleport Troubleshooting**
   - Ash helped Agent12 by verifying teleport functionality in the play world with the "/cake" command and suggesting updates and rebooting

## Action Items

### Technical
- Implement freecam with 6DOF movement and smooth rotation (Mentioned by vox)
- Clean up freecam code implementation (Mentioned by Shiffty)
- Move freecam settings from code to app.configure (Mentioned by Shiffty)
- Implement camera path/spline system (Mentioned by hiroP)
- Update to latest version and reboot to resolve teleport command issues (Mentioned by ash)

### Features
- Add audio to collections (Mentioned by Ashxn)
- Implement multi-role permissions system (Mentioned by 0mka)
- Create ability to group hyps (Mentioned by 0mka)
- Separate build/editor mode from play mode (Mentioned by cru)
- Implement voice chat permission controls (everyone vs. admins only) (Mentioned by Ashxn)
- Add admin moderation tools (mute, kick, ban) (Mentioned by Ashxn)
- Group inworld objects to use edit tools on multiple objects simultaneously (Mentioned by Enryt)
- Make hyperlinks in object metadata clickable in flat mode and visible in VR (Mentioned by Enryt)
- Add menu button to replicate keyboard tab functionality for mobile/VR building (Mentioned by Enryt)
- Add visual indicator when location is set for teleport (Mentioned by Agent12)
- Create a dedicated channel for feature proposals on Hugging Face (Mentioned by Enryt)

### Documentation
- Update thread with more content about professional dev tools (Mentioned by cru)
- Clarify the meaning of "group label" in the inspector (Mentioned by Enryt)
- Create a roadmap or project feature board (Mentioned by 0mka)
- Move detailed troubleshooting to appropriate channel (Mentioned by ash)