# Hyperfy Discord - 2025-03-09

## Overall Discussion Highlights

### Technical Development
- **Hyperfy 2.0 Development**: The platform is approaching public launch that will open it to non-developers, with worlds already being built on the new version.
- **PVP Game Development**: Hyperfy is developing an internal PVP game requiring Hyper tokens to play, with rewards from kills going back to Hyper. The game will be weapon-based (swords, consumables) without ships.
- **Avatar Systems**: Extensive discussion about VRM format avatars and the debate around runtime wearables vs. character customization approaches that preserve interoperability.
- **Physics & Raycasting**: Multiple developers shared code snippets for raycast direction calculation, with emphasis on proper implementation for object placement and collision detection.
- **Water/Ocean Rendering**: Techniques for UV scrolling to create water animation effects were discussed, with HowiEDuhzit explaining implementation details.
- **Item Systems**: Ashxn described different approaches for item pickup and dispensing mechanics within the platform.

### 3D Design & Optimization
- A 3D model of arms/gloves was critiqued for optimization issues, specifically excessive triangle count (140kb considered too large) and inefficient texture compression.
- Discussion revealed that what appeared to be high-poly ripples in sleeves were actually baked into textures rather than modeled with geometry.
- Consensus that texture resolution (2K) was poorly utilized, with suggestions to reallocate detail to fingers and gloves.

### Market & Token Discussion
- HYPER token market capitalization declined from around 7M to 6.2M (-6.1%).
- Despite broader cryptocurrency market downturn (Bitcoin below $80,000, Solana "taking a beating"), users noted Hyperfy is "performing well through this all things considered."

## Key Questions & Answers

### Development
- **Q**: How are directions derived for raybeams?  
  **A**: Use normalized Vector3 with object quaternion to calculate direction (Ashxn)

- **Q**: How to persist state for an App to the sqlite database on the server?  
  **A**: Use world.get(key) and world.set(key, value) on the server (Saori)

- **Q**: How do collisions work with custom .glb files?  
  **A**: Use the Hyperfy Blender addon to set up collisions (Saori and Ashxn)

- **Q**: Is applyEffect(null) still the way to clear effects?  
  **A**: Use player.cancelEffect() as it's safer and only cancels effects your app added (ash)

- **Q**: Is there any way to play video in the scene?  
  **A**: Not yet officially supported (MayD524)

### Platform & Hardware
- **Q**: What's the best laptop to play hyperfy? Is the new MacBook Air a decent choice?  
  **A**: Yeah the new air would work well (Ashxn)

- **Q**: Would that mean you can't play pvp if you don't have hyper?  
  **A**: Not for this game no, need hyper to play (Ashxn)

- **Q**: Are you guys doing outreach or is the product not ready yet?  
  **A**: This is a multi-sided market. Right now devs are having fun and people are learning about this via word of mouth. Our platform is getting closer to launch which will open it up to non-devs. (Ashxn)

### Tools & Resources
- **Q**: Does anyone recommend a cool free svg logo maker?  
  **A**: recraft.ai (Omka)

- **Q**: Can anyone recommend a YouTuber or documentation for setting up ai agents for social media?  
  **A**: Eliza app here: https://hyperworld.host/marketplace needs to hook up to an eliza server w/ these changes: https://github.com/elizaOS/eliza/compare/develop...hyperfy-xyz:eliza:hyperfy (Saori)

## Community Help & Collaboration

### Onboarding New Developers
- **Transition from Three.js**: Multiple community members (Saori, Ashxn, HowiEDuhzit) provided extensive guidance to mooshu meezy on transitioning from Three.js/Cursor development to Hyperfy, covering workflow, avatar systems, and collision handling.
- **Getting Started Resources**: Ashxn directed mooshu meezy to hyperfy.how for comprehensive resources on Hyperfy development.

### Technical Problem-Solving
- **Raycasting Implementation**: Ashxn helped Saori with calculating direction for raybeams using Vector3 and quaternion, and mentioned using layer mask argument for collision layers to ignore the local player.
- **Server-Side Persistence**: Saori explained world.get/set methods to Cybernetic-O-Cult for server-side data persistence.
- **Cursor Pointing Position**: Saori shared code examples with mattimus for implementing raycasting based on cursor position.
- **Effect Clearing**: ash helped Shiffty fix a bug where players get stuck in blocking state by suggesting player.cancelEffect() instead of applyEffect(null).

### Creative & Design Support
- **Water Animation**: HowiEDuhzit explained UV scrolling technique to mooshu meezy for creating ocean effects.
- **3D Model Optimization**: 𝚟𝚘𝚡𝚟𝚒𝚎𝚗𝚗𝚎 shared images showing how ripples in sleeve textures were implemented, helping Ashxn understand optimization issues.

## Action Items

### Technical
- Implement collision layers for raycasting that can ignore the local player (Saori)
- Make sendTo method only usable on server for security reasons (Ashxn)
- Fix avatar station for compatibility with new player system (Shiffty)
- Add physics debugger for development (Saori)
- Fix bug where player gets stuck in block state by implementing player.cancelEffect() (Shiffty)
- Optimize texture compression to reduce VRAM usage (𝚟𝚘𝚡𝚟𝚒𝚎𝚗𝚗𝚎)
- Reduce triangle count in 3D models (Ashxn)
- Better utilize texture resolution by reallocating 2K texture space (𝚟𝚘𝚡𝚟𝚒𝚎𝚗𝚗𝚎)
- Fix issue with Cursor AI tool not reflecting changes in localhost (mooshu meezy)
- Explore integration of shared technology link (johan)
- Learn about Hypkg mod manager for Hyperfy (Omka)
- Explore App Rollup for external Hyp development (Omka)

### Documentation
- Create documentation for camera control examples (Saori)
- Improve documentation for new users transitioning to Hyperfy (Saori)
- Attend Hyperfy.how Video Tutorial Series for learning about .hyp app format (Omka)

### Feature
- Add support for animated GLB files (Saori)
- Implement swimming mechanics in core (Shiffty)
- Add video playback support (McCoder)
- Develop "Electrify" pack for wireless redstone-style electricity (HowiEDuhzit)
- Consider adding NFT wearables and memecoins to the platform (johan)