# Hyperfy Discord - 2025-04-01

## Overall Discussion Highlights

### Platform Updates & Features
- **Major Release v0.10.0** released with over 80 additions, improvements, and bug fixes implemented over a two-and-a-half-week period, including a redesigned interface based on community feedback to streamline world building
- **Skinned Mesh Support** added, enabling non-humanoid animations for pets, mounts, and bosses with bone transforms and animation crossfading capabilities
- **Gizmos** functionality implemented for precise object manipulation
- **Builder Drone X501** received updates fixing synchronization issues and a bug where refreshing during drone flight would not release the drone
- **World Menu for Administrators** introduced, allowing changes to default environment, avatar, and spawn point
- **Technical improvements** include controller support for various apps, support for interleaved buffer geometry, geometry handles, Math globals, and new player properties

### Development & Building
- **First-person building** capabilities discussed, with ash sharing a drone solution for first-person flying mode
- **Devbyte** created a quick edit with cursor configuration for keybinds without needing proximity to the drone
- **Asset placement** discussions noted smooth drag-and-drop functionality but mentioned size optimization issues for larger assets
- **Imported assets** included a Shell gas station ripped from GTA5
- **Community praised** Dappcraft's work for its quality

### Movement Mechanics
- **TheMattEmpire** proposed a comprehensive list of player movement options that could be toggled on/off via an app, including walk, run, jump, slide, wall run, and more
- **Peezy** demonstrated implementing a dash mechanic allowing for double-dashing and dash-jump combinations
- **Mobile jump button** interface featuring a prominent red button was showcased

### Permission Systems
- Discussion on **zone-based permissions** for building in virtual spaces, with concerns about performance impacts
- Alternative approach of **grouping objects under collections** with assigned permissions was mentioned
- Potential exploits identified, including the ability to stand at the edge of a plot and interact with objects outside it
- Comparison to existing games like **Rust and Minecraft**, noting their restriction to approved assets and server-controlled plugins

### AI & Agents
- **Maximus** described using multiple LLMs to refine prompts, where one LLM generates content, then presents that content to other LLMs for critique
- Discussion of **Jin's "jintern" project**, which aims to embed organizational best practices into an AI service
- **Ricky** emphasized the need for LLMs to validate scripts themselves to create truly autonomous agent workflows

### Community Projects
- **Hyper camera switch app** developed by Dr.Dogie based on previous work by Shiffty and Howie
- Progress on **PvP avatars and pets** functionality
- **Cru's development** of a mesh color changer and interactive code updates
- **Saori's FPS arena** development
- **Devil's ROM apps** in development
- **DAPPCRAFT's demo** using the Hyperfy engine

## Key Questions & Answers

### Building & Development
- **Q: How do I go first person?** (CheddarQueso 🧀)  
  **A:** Drop this in your world and you can build in first-person flying mode. (ash)

- **Q: How do I create and subscribe to a custom event?** (smickelbeard)  
  **A:** Use app.emit() to create events and world.on() to subscribe to them (ash)

- **Q: How do I properly traverse into an avatar node?** (.hyp shaman)  
  **A:** The avatar node is abstracted; you can only read bone transforms with avatar.getBoneTransform and toggle emotes (ash)

- **Q: Does anyone have experience hosting Hyperfy on Digital Ocean?** (mio)  
  **A:** Yes, follow the guide at https://github.com/hyperfy-xyz/hyperfy/wiki/Deploy-a-world-(Digital-Ocean) (ash)

- **Q: Why can't we import objects permanently in our Digital Ocean hosted world?** (mio)  
  **A:** Non-HTTPS websites can't use the file hashing required for uploads (ash)

- **Q: Is blending between animations on the table?** (TheMattEmpire)  
  **A:** Skinned mesh animations have a fade number for crossfading, and emotes have a hard-coded 0.15s fade (ash)

- **Q: Shouldn't a single mesh with vertex colors be one draw call even if it's 2 colors?** (HowieDuhzit)  
  **A:** Yes, vertex colors are just geometry attributes, but Blender requires specific export settings (ash)

- **Q: What is the ideal size/dimensions for an image in the app UI?** (Valiant)  
  **A:** Square, 256 or 512 pixels (ash)

### Mechanics & Features
- **Q: Is slide going into core?** (TheMattEmpire)  
  **A:** Not likely for core, but could be an app that adds that ability (ash)

- **Q: Can you add snaps in code too?** (general hyper)  
  **A:** Yes, with `const snap = app.create('snap')` (ash)

- **Q: What might be causing the z-fighting issue with the UI plane and model?** (general hyper)  
  **A:** It could be fixed by adding a small gap or removing the extra face where the label is placed (ash)

## Community Help & Collaboration

### Technical Assistance
- **ash** helped **CheddarQueso 🧀** with first-person building capability by providing a drone solution for first-person flying mode building
- **devbyte** assisted **CheddarQueso 🧀** by creating a quick edit with cursor that allows configuring a keybind without needing proximity to the drone
- **ash** helped **Valiant** implement a sit emote on a raptor mount by providing code to apply emote effect to player when mounting
- **ash** assisted **mio** with Digital Ocean deployment issues, identifying that .env needed to use IP address instead of localhost
- **peezy** helped **Gert-Jan Akerboom** with confusion about switching to dev branch by providing git commands to check status, switch branches, and pull updates
- **HowieDuhzit** assisted **TheMattEmpire** with exporting vertex colors from Blender by identifying the "set vertex color to active" setting needed

### Collaborative Development
- **general hyper** offered to swap in an updated cart model with fixed textures for **peezy** and mentioned plans to shorten depth and add snaps for peripherals
- **ash** fixed syncing issues with an implementation that benefited the entire community
- **maximus** shared an approach to improve AI outputs using multiple LLMs for prompt refinement and critique to find gaps

## Action Items

### Technical
- Optimize larger assets for placement (Mentioned by CheddarQueso 🧀)
- Fix syncing issues (Mentioned by ash)
- Add scaling functionality to the platform (Mentioned by CheddarQueso 🧀)
- Implement colliders for VIPE houses (Mentioned by CheddarQueso 🧀)
- Add snap points to the top of racks (Mentioned by peezy)
- Shorten depth of cart model (Mentioned by general hyper)
- Add snaps in the back for peripherals (Mentioned by general hyper)
- Explore alternatives to zone-based permissions that don't impact performance (Mentioned by maximus)
- Investigate secure building systems that prevent exploits (Mentioned by general hyper)
- Investigate z-fighting between UI plane and 3D model (Mentioned by general hyper)
- Share 3D models for further troubleshooting (Mentioned by general hyper)
- Need a better way to organize showcased items (Mentioned by ash)
- Implement new mod/plugin hooks (currently experimental) (Mentioned by ash)
- Address remaining UI gap size issues (Mentioned by ash)
- Continue improving octree performance for small objects (Mentioned by ash)
- Complete the feedback loop for LLMs to validate scripts without human intervention (Mentioned by Ricky)
- Implement skinned mesh support for non-humanoid animations (Mentioned by ash)
- Add gizmos functionality (Mentioned by .hyp shaman)
- Implement fullscreen button in UI (Mentioned by ash)
- Improve vertex color export from Blender (Mentioned by HowieDuhzit)

### Documentation
- Community call scheduled for Wednesday (Mentioned by CheddarQueso 🧀)
- Update Digital Ocean deployment guide to clarify environment variable requirements (Mentioned by mio)
- Add guide for forking Hyperfy to documentation (Mentioned by CheddarQueso 🧀)
- Improve dev branch setup instructions in quickstart guide (Mentioned by Gert-Jan Akerboom)
- Update documentation for uiimage node (Mentioned by ash)

### Feature
- Add trees to the environment (Mentioned by CheddarQueso 🧀)
- Create toggleable movement mechanics app (Mentioned by TheMattEmpire)
- Consider implementing a Minecraft/Rust-like building system with approved assets (Mentioned by general hyper)
- Implement texture variants (simple, tron, rainbow road) for road/track system (Mentioned by TheMattEmpire)
- Consider adding dirt sections for motocross ramps (Mentioned by TheMattEmpire)
- Mobile jump button interface (Mentioned by .hyp shaman)
- Expand world menu functionality for admins (Mentioned by ash)
- Implement "Hyper-jintern" service (Mentioned by maximus)
- Implement "glue" concept similar to neos/resonite (Mentioned by .hyp shaman)
- Add LOD hooks to disable far away behavior for performance (Mentioned by Shiffty)
- Add customizable fade support to emotes (Mentioned by ash)