# Hyperfy Discord - 2025-02-12

## Overall Discussion Highlights

### Building & Design
- **House Building Competition**: Ashxn announced a competition with 15,000 HYPER prizes for creating pre-fab snappable houses
- **LOD Implementation**: Detailed discussions on implementing Level of Detail for performance optimization, with specific distance thresholds (30m for high-poly, 500m for low-poly)
- **Texture Optimization**: Users reported significant memory usage reduction (5-6GB to 2.3GB) by downscaling textures from 2-4K to 1K
- **Build Mode Improvements**: Ongoing discussions about enhancing the build mode with features like pinning objects, hierarchy views, and preventing accidental deletion
- **Shadow Casting**: Technical discovery that flipping normals in Blender (red side up) allows flat objects to cast shadows properly in Hyperfy

### Development Tools & Infrastructure
- **Scene Inspector Tool**: ToxSam developed and shared a scene inspector tool that allows viewing and modifying object properties in the world
- **Hucow CLI Tool**: Peezy introduced a proof-of-concept tool called "hucow" (Hyperfy User Core OverWrites) to help users share core changes to the Hyperfy platform
- **Animation Processing**: Peezy created scripts to convert Mixamo animations to Hyperfy-compatible formats
- **Hosting Requirements**: Discussion clarified that Hyperfy worlds require Node.js capabilities beyond typical shared hosting offerings

### Technical Features
- **AI Agents**: Discussions about integrating Venice AI agents into Hyperfy, with MetaMike confirming it would be possible by pointing chat endpoints to Venice
- **Security Concerns**: Community raised issues about potential griefing in shared spaces, with suggestions for role-based and model-based security solutions
- **Avatar Systems**: Debate on maintaining compatibility with existing standards (VRM) versus creating custom formats for enhanced functionality and wearables
- **Space Trading Simulation**: Maximus shared a prototype created by remixing existing applications and assets

### Platform Updates
- **VR and AR Implementation**: Announcement of ongoing development for virtual and augmented reality support
- **UI Revamp**: Interface improvements based on community feedback are in progress
- **Vehicle Development**: Continued work on vehicle features
- **Documentation Migration**: Builder documentation is being moved to hyperfy.how

## Key Questions & Answers

### Development & Technical
- **Q**: What data is networked, and what data is local?  
  **A**: Currently sending updates at 8Hz, but could reduce to 4Hz or lower with 50+ players to manage bandwidth (Ashxn)

- **Q**: How do I start developing locally?  
  **A**: Install nvm, clone repo, nvm install, nvm use, npm i, npm run dev (Saori)

- **Q**: How can I implement triggers in Hyperfy?  
  **A**: Use onTriggerEnter and onTriggerLeave on the rigidbody parent, not the collider (Ashxn)

- **Q**: How do I convert Mixamo emotes to Hyperfy compatible format?  
  **A**: Import in Blender and add a root bone (𝚟𝚘𝚡𝚟𝚒𝚎𝚗𝚗𝚎 and 𝕽𝖔𝖚𝖘𝖙𝖆𝖓)

- **Q**: How do flat GLB files cast shadows in Hyperfy?  
  **A**: Flip the normals in Blender so the red side is facing up and the blue side is facing down (Gert-Jan Akerboom, confirmed by TheMattEmpire)

- **Q**: Can I use Math.random in scripts?  
  **A**: No, for security reasons, but you can use the global `num` method instead (ash)

### Building & Competition
- **Q**: How do snaps work in Hyperfy?  
  **A**: If a snap point comes within 1m of another snap point they snap (Ashxn)

- **Q**: How can we prevent users from editing others' creations in shared spaces?  
  **A**: Role-based + model-based security is needed, limiting people to roles and models would be a good step (maximus)

- **Q**: How do we tag our houses for the competition?  
  **A**: Ashxn will make a sign post that people can place out front (Ashxn)

- **Q**: Are we supposed to use custom GLBs or just what's provided on play hyperfy?  
  **A**: Both, but house should be mostly build kit (fishai)

- **Q**: Would there be a way to kind of auto LOD if desired?  
  **A**: Ashxn provided detailed manual LOD setup instructions using custom properties (Ashxn)

## Community Help & Collaboration

### Development Support
- **Saori** helped **ToxSam** set up a local development environment with step-by-step instructions
- **Ashxn** assisted **Shiffty** with implementing trigger events for objects, providing code examples
- **𝚟𝚘𝚡𝚟𝚒𝚎𝚗𝚗𝚎** and **𝕽𝖔𝖚𝖘𝖙𝖆𝖓** shared tutorial videos with **peezy** on adding root bones in Blender for animations
- **peezy** created and shared scripts to help **Saori** process Mixamo animations for Hyperfy
- **ToxSam** shared a SceneInspector.js tool with the community for viewing and modifying scene objects

### Building & Design Help
- **Saori** helped **fishai** fix angle snapping issues by rotating a rail 180 degrees with the scroll wheel
- **Gert-Jan Akerboom** discovered and shared knowledge about making flat objects cast shadows by flipping normals in Blender
- **maximus** helped **Tom | Big Yellow Fishes** by removing spam objects causing lag on the build server
- **Ashxn** provided **TheMattEmpire** with detailed instructions for manual LOD setup using empty nodes and custom properties
- **drdoge.eth** shared texture optimization techniques that significantly reduced memory usage

### Infrastructure Support
- **HypPrivakos** advised **Tim / TC** on whether shared hosting could run a Hyperfy world, explaining Node.js requirements
- **0mka** helped **Gert-Jan Akerboom** with instructions on updating a local V2 installation using git commands
- **ash** provided **Gert-Jan Akerboom** with the global `num` method as an alternative to Math.random()
- **0mka** documented the num method at hyperfy.how/docs/num-method/ and added it to the FAQ

## Action Items

### Technical
- Implement position/rotation/scale inputs for fine-tuning object placement (Ashxn)
- Fix build mode to prevent accidental deletion/movement of objects (Ashxn)
- Add ability to hide/delete grass plane (MetaRick)
- Create hierarchy of assets in scene (MetaRick)
- Add lockable hierarchy items to prevent accidental selection (MetaRick)
- Fix app.control functionality which broke with XR and build mode upgrades (peezy)
- Improve drag and drop in new build mode (Ashxn)
- Fix issue with code editor window becoming extremely small (Ashxn)
- Implement role-based and model-based security for multi-user builder worlds (maximus)
- Fix angle snapping issues in the building system (fishai)
- Implement authentication (ETH & Solana login) to prevent griefing (Saori)
- Create a 'Volume' tool for build permissions, swimming areas, and different HDR reflections (TheMattEmpire)
- Implement LOD support in Blender Hyperfy tools (~/HowiEDuhzit)
- Explore VRM compatibility while adding wearable support (TheMattEmpire)
- Investigate mesh fence optimization using textures instead of geometry (𝚟𝚘𝚡𝚟𝚒𝚎𝚗𝚗𝚎)
- Fix crash when attempting to duplicate a person (Agent12)
- Improve reticle visibility with better contrast (vox)
- Add highlighting when reticle hovers over an object in build mode (Saori)
- Implement CSS filter to adjust reticle to negative colors under it (ash)
- Fix signpost app to prevent updating all signposts when one is changed (TheMattEmpire)
- Fix wallet connection issues on mobile in Version 1 (𝕽𝖔𝖚𝖘𝖙𝖆𝖓)
- Implement merge conflict handling in hucow tool (peezy)
- Continue development of VR and AR functionality (maximus)
- Complete UI revamp based on community feedback (maximus)
- Further development of vehicle features (maximus)

### Documentation
- Update installation documentation for clarity on node version requirements (patmacs)
- Create low poly optimization documentation (scoe)
- Develop optimization flows/docs based on references from Monaverse and existing Hyperfy guides (Omka)
- Complete migration of builder documentation to hyperfy.how (maximus)
- Post community meeting notes and recordings to HackMD (maximus)

### Feature
- Add springbone support for VRMs to enable wobbly parts (MetaRick)
- Create Twitter NPC that follows specific accounts and notifies users of new tweets (MetaRick)
- Implement auto-scaler on asset drop to handle different scale imports (MetaRick)
- Add apps folder to repo for community submissions (jin)
- Add a max filesize/'resource' number setting for hosts to limit polycount/drawcalls/materials (TheMattEmpire)
- Create a dedicated Challenges or Contests channel to better organize community competitions (TheMattEmpire)
- Enable collision on Sketchfab models (Ashxn)
- Consider custom Hyperfy avatar format for equippable wearables and clothing (Ashxn)
- Add setting to make certain apps auto-unlink when duplicated (ash)
- Add PRNG for randomization that persists between app rebuilds (ash)
- Open hucow CLI for public publishing (peezy)
- Continue development of space trading simulation (maximus)
- Add world settings management for non-developers (Ashxn)