# Hyperfy Discord - 2025-04-17

## Overall Discussion Highlights

### Media & Streaming Capabilities
- **Video Support**: Currently supports mp4 videos and m3u8 streams; YouTube/Twitch integration planned via webviews
- **Streaming Options**: Community discussed various streaming services:
  - Vimeo Pro recommended for quality (but has 2GB/month bandwidth limit)
  - Mux.com mentioned as good and affordable alternative
  - Livepeer and Amazon S3 also discussed as options
- **Technical Implementation**: HLS.js is used for m3u8 stream support
- **Screen Sharing**: Available in development environments with LiveKit integration

### Voice & Audio
- **Spatial Audio**: Received positive feedback compared to Discord's audio quality
- **Implementation**: Requires LiveKit integration through environment variables
- **Room-Based Audio**: Suggestion for volume controls that limit audio to specific rooms for better spatial experiences

### Particle System
- **New Implementation**: Improved performance and visual effects
- **Technical Usage**: Discussions about attaching particles to character bones
- **Positioning Issues**: Solutions provided for incorrect particle positioning when attached to bones

### Development Environment
- **LiveKit Integration**: Required for voice and screen sharing features
  - Can use same LiveKit server for multiple worlds (uses UUID for room identification)
- **Self-Hosting**: Documentation available for developers wanting to self-host worlds
- **Hosting Services**: HyperWorld.host mentioned as current hosting provider (hyperfyworlds.xyz is no longer available)

### 3D Design & Objects
- **Object Importing**: GLB files can be imported with colliders included
- **Marketplace**: Being expanded with more applications and objects
- **Plugin Development**: Mention of a plugin for Eagle to organize VRM files

## Key Questions & Answers

**Media & Streaming**
- Q: Is it possible to have videos in the worlds now? Like having YouTube videos, and being able to screen share?
  - A: mp4 videos and m3u8 streams only, and screensharing yes. Will add YouTube/Twitch soon via webviews (ash)

- Q: What's the best way to get m3u8 streams in?
  - A: Vimeo Pro was recommended as "awesome" for Blockbuster, with mux.com also mentioned as good and cheap (ash)

- Q: Which library do you use for that?
  - A: We use HLS.js for m3u8 support (ash)

**Voice & Communication**
- Q: Is voice comms available on dev or just showcased on play?
  - A: It's available on dev along with screensharing, but you need a LiveKit account and add those keys to your .env file (ash)

- Q: Is it fine to use the same LiveKit server for multiple worlds?
  - A: Yes, every time the server boots up it generates a UUID to use as the room, so one account can be used for multiple worlds (ash)

**Platform Capabilities**
- Q: What is Hyperfy? Is it like an easier three.js to build with that's naturally optimized?
  - A: It's a platform for building 3D worlds with optimizations like avatar instancing and LOD for animations (Saori)

- Q: What's the limit for players?
  - A: It depends on how much stuff you put in the world; you can get hundreds if you don't put heavy stuff in there (Saori)

- Q: Once we create a full experience are we able to have our own domain name included?
  - A: Yes (Saori)

**Hosting & Publishing**
- Q: Is https://hyperfyworlds.xyz/ reachable for you? I'm getting ERR_CONNECTION_TIMED_OUT for weeks...
  - A: They've moved all their stuff to Hyperworld.host (maximus)

- Q: Then now there is no way to publish a small hosted world to try before buy?
  - A: You can self-host/self-publish your own worlds, you'd have to follow the instructions shown in the prior section: https://hyperfy.how/hosting/self/ (maximus)

**3D Objects & Design**
- Q: How can I add walls, doors, and seats without building block menus?
  - A: You can import GLB files or use objects from the marketplace (HypPrivakos)

- Q: How are colliders set for imported objects?
  - A: Colliders are set in the GLB files themselves (HypPrivakos)

## Community Help & Collaboration

**Particle System Implementation**
- **Helper**: ash
- **Helpee**: Gert-Jan Akerboom
- **Issue**: Attaching particles to character bones with incorrect positioning
- **Resolution**: Explained that bone transform is in world space while particles were attached to app space; suggested changing app.add(particles) to world.add(particles) and using particles.position.setFromMatrixPosition(matrix)

**Development Environment Setup**
- **Helper**: ash
- **Helpee**: TheMattEmpire
- **Issue**: Development environment setup error with missing package
- **Resolution**: Suggested reinstalling dependencies and provided step-by-step instructions for setting up the environment from scratch

**Hyperfy Platform Understanding**
- **Helper**: Saori
- **Helpee**: mongrlz
- **Issue**: Understanding how to use Hyperfy for game development
- **Resolution**: Provided API reference links and explained multiplayer code structure with client/server separation

**Wallet Integration**
- **Helper**: Saori
- **Helpee**: mongrlz
- **Issue**: Questions about wallet integration and blockchain features
- **Resolution**: Confirmed that custom earning/staking/paying mechanics can be implemented with wallet connection

**Streaming Options**
- **Helper**: 𝕽𝖔𝖚𝖘𝖙𝖆𝖓
- **Helpee**: TheMattEmpire
- **Issue**: Detailed information about video hosting options
- **Resolution**: Provided bandwidth limitations of Vimeo Pro (2GB/month), mentioned Amazon S3 as alternative, and suggested imgur.com for short videos

## Action Items

### Technical
- Implement YouTube/Twitch integration via webviews (mentioned by ash)
- Fix chat bubbles that were broken (mentioned by ash)
- Implement audio support for screen sharing (mentioned by ~/drdoge.eth)
- Expose LiveKit configuration in world settings for users without .env access (mentioned by MetaRick)
- Update particle systems for better performance in existing projects (mentioned by ~/drdoge.eth)
- Fix interactive UI nodes with billboard enabled (mentioned by ash)
- Investigate potential input lag when performing multiple actions simultaneously (mentioned by Agent12)
- Consider FLV streaming support for sub-1s delay compared to m3u8's 10s minimum delay (mentioned by HypPrivakos)
- Investigate community Vimeo Pro account for shared hosting (mentioned by ash)

### Documentation
- Create guide for attaching particles to character bones (mentioned by Gert-Jan Akerboom)
- Document LiveKit integration for voice and screen sharing (mentioned by ash)
- Update hosting providers page to reflect that hyperfyworlds.xyz is no longer available (mentioned by Enryt)
- Address issue with code editing in Play world (mentioned by Enryt)
- Information on how colliders work with imported GLB files (mentioned by Enryt)

### Feature Requests
- Create volume controls that limit audio to specific rooms (mentioned by TheMattEmpire)
- Add ability to display web content like Twitch streams on screens (mentioned by mongrlz)
- Implement distance-based scaling for chat bubbles (mentioned by ash)
- Support for using agent's original character file with AI integration (mentioned by CheddarQueso 🧀)
- Implement parkour/Assassin's Creed-style movements (mentioned by Akuma)
- Adding more apps to the marketplace (mentioned by HypPrivakos)