{
  "server": "Hyperfy",
  "title": "Hyperfy Discord - 2025-03-13",
  "date": 1741824000,
  "stats": {
    "totalMessages": 509,
    "totalUsers": 44
  },
  "categories": [
    {
      "channelId": "994775534733115412",
      "channelName": "💻│developers",
      "summary": "# Analysis of 💻│developers Discord Chat\n\n## 1. Summary\nThe chat primarily focused on technical developments and problem-solving in the Hyperfy platform. Key discussions included:\n\nMayD524 shared progress on a UI component with vector field functionality, which Ashxn suggested could be used for rotation and scale. Ashxn later developed a CPU-based particle system to replace UI nodes, offering collision capabilities and easier AI prompting.\n\nSeveral users discussed Docker and PostgreSQL configuration issues, with devilsadvocate.sol seeking advice on securely connecting to a containerized database without exposing ports.\n\nGert-Jan Akerboom shared updates on a butterfly animation app, struggling with rotating butterflies as complete objects rather than individual wings. Ashxn suggested using an empty container in Blender to simplify the implementation.\n\nShiffty demonstrated procedural terrain generation using Perlin noise, modifying core functionality to access and update vertices. This sparked discussion about primitive shape creation capabilities.\n\nSeveral bugs were identified and fixed, including Math.sqrt functionality breaking in a procedural city app and issues with the latest dev version causing loading problems with certain GLB files. Ashxn pushed fixes for these issues.\n\nUsers also discussed potential features like global queues for match-based games and player routing between instances.\n\n## 2. FAQ\nQ: How can I connect to a Docker PostgreSQL container for admin tasks without exposing ports? (asked by devilsadvocate.sol) A: Partially answered with suggestions to use Tailscale or place pgAdmin in another Docker container\nQ: How can I make butterflies rotate as complete objects rather than individual wings? (asked by Gert-Jan Akerboom) A: Use an empty container in Blender with the wing planes inside, then handle flapping in local coordinates and move the empty in the forward direction (answered by Ashxn)\nQ: Can I disable flying for my world? (asked by eclipsingbinary) A: Flying is only enabled in build mode (answered by Ashxn)\nQ: Is there a video tutorial that takes you from cloning git to launching your world and loading your first asset? (asked by eclipsingbinary) A: Yes, check https://hyperfy.how/community/tutorials/ (answered by Saori)\nQ: Is the shop/inventory in the newest release with the viewer stuff? (asked by cwe) A: Unanswered\nQ: How do you set up camera panning/cinematic mode? (asked by TheMattEmpire) A: It's the idle cam system, and the hyp is available in the hyp channel (answered by drdoge.eth)\nQ: Why can't I open another instance of my world in another tab? (asked by fractilians) A: Due to a recent change, you need to use a different browser or incognito mode for the second player (answered by Shiffty and Ashxn)\n\n## 3. Help Interactions\nHelper: Ashxn | Helpee: Gert-Jan Akerboom | Context: Difficulty making butterflies rotate as complete objects | Resolution: Suggested using an empty container in Blender with wing planes inside, handling flapping in local coordinates\nHelper: Saori | Helpee: eclipsingbinary | Context: Looking for tutorial on getting started with Hyperfy | Resolution: Provided link to comprehensive tutorials at hyperfy.how\nHelper: Ashxn | Helpee: Saori | Context: Math.sqrt broke in procedural city app | Resolution: Pushed a fix that enables all Math functions properly\nHelper: peezy | Helpee: fractilians | Context: Avatar Swap Hyp not working | Resolution: Provided a working version compatible with current release\nHelper: Shiffty and Ashxn | Helpee: fractilians | Context: Unable to open multiple instances of world in same browser | Resolution: Explained it's due to recent changes and suggested using incognito mode or different browser\n\n## 4. Action Items\nType: Technical | Description: Implement primitive shape creation (app.create('prim', { type: 'cone' }) etc.) for easier development | Mentioned By: Ashxn\nType: Technical | Description: Add player.route('instance') functionality for routing players between instances | Mentioned By: Saori\nType: Technical | Description: Optimize procedural terrain with LODs and colliders | Mentioned By: Shiffty\nType: Technical | Description: Fix avatar swap hyp to work with current version | Mentioned By: maximus\nType: Feature | Description: Add wall builder tools similar to Sims | Mentioned By: devilsadvocate.sol\nType: Feature | Description: Implement global queue feature for match-based games | Mentioned By: Knar\nType: Feature | Description: Add vec3 field type for rotation and scale | Mentioned By: Ashxn\nType: Feature | Description: Create rideable people functionality similar to rideable raptors | Mentioned By: Ashxn\nType: Documentation | Description: Document how to use CPU-based particle system | Mentioned By: Ashxn",
      "messageCount": 253,
      "userCount": 20
    },
    {
      "channelId": "1330373197203505185",
      "channelName": "🤖│agents",
      "summary": "# Analysis of Discord Chat in \"🤖│agents\" Channel\n\n## 1. Summary\nThe chat segment is brief, containing only three main interactions. Omka shared links to Hyperfy guides about AI agents and mentioned plans to update guides on coding with AI and adding \"super prompts\" to the AI prompts guide. Ricky expressed appreciation for Omka's work and mentioned having issues with the MCP server via Claude's desktop interface, indicating plans to make it functional and available for group experimentation once resolved. Later, maximus shared a link to Sesame's research on voice technology titled \"Crossing the Uncanny Valley of Voice\" with Omka.\n\n## 2. FAQ\nQ: How to get the MCP server working via Claude desktop interface? (implied by Ricky) A: Unanswered\n\n## 3. Help Interactions\nHelper: maximus | Helpee: Omka | Context: Sharing research resource on voice technology | Resolution: Successfully shared Sesame's research on \"Crossing the Uncanny Valley of Voice\"\n\n## 4. Action Items\nTechnical: Get MCP server working via Claude desktop interface | Description: Fix issues to make it available for group experimentation | Mentioned By: Ricky\nDocumentation: Update AI agents guide | Description: Add in-world agent information | Mentioned By: Omka\nDocumentation: Update coding with AI guide | Description: General updates to the guide | Mentioned By: Omka\nDocumentation: Add community super prompts to AI prompts guide | Description: Collect and add prompts from community members | Mentioned By: Omka",
      "messageCount": 4,
      "userCount": 3
    },
    {
      "channelId": "958209074045026327",
      "channelName": "⚡│general",
      "summary": "# Discord Chat Analysis\n\n## 1. Summary\nThe chat primarily focused on technical discussions around 3D world-building techniques in Hyperfy. A significant conversation revolved around model instancing in Hyperfy V1 vs V2, with users discussing optimization strategies. Voxvienne shared a specific script for instancing GLB files in V1 using gltf-transform functions. Another key technical discussion centered on using AI-generated textures for building facades in 3D environments, with Paradoxx sharing detailed prompts for creating cyberpunk building textures using Krea.ai. Valiant demonstrated Krea's scene transfer feature for color grading and matching building textures to skyboxes. Peezy shared a Discord webhook integration that broadcasts player entry/exit events and chat messages from Hyperfy worlds. The community also discussed content presentation preferences (montages vs. detailed threads) and requested screenshots of V2 worlds for documentation updates.\n\n## 2. FAQ\nQ: How does instancing work in Hyperfy V1 vs V2? (asked by Paradoxx) A: In V1, you need to manually instance using gltf-transform functions, while V2 automatically instances linked duplicates (answered by voxvienne and Ashxn)\nQ: Do textures/images instance in Hyperfy or still use all the data every time? (asked by Paradoxx) A: World building auto-instances everything; players only download models once even if used multiple times (answered by Ashxn)\nQ: What's the prompt for good frontal view facades? (asked by voxvienne) A: Paradoxx shared a detailed prompt for cyberpunk building facades with orthographic projection (answered by Paradoxx)\nQ: Do people prefer big montages or detailed threads for community updates? (asked by Saori) A: Mixed responses - peezy suggested montages work better for videos, while Shiffty noted threads probably perform better (answered by peezy and Shiffty)\n\n## 3. Help Interactions\nHelper: voxvienne | Helpee: Paradoxx | Context: Needed to optimize models with instancing in Hyperfy V1 | Resolution: Shared a specific gltf-transform script to instance GLB files after creating linked duplicates in Blender\nHelper: Ashxn | Helpee: Paradoxx | Context: Questions about model instancing in Hyperfy | Resolution: Explained that world building auto-instances everything and players only download models once\nHelper: Paradoxx | Helpee: voxvienne | Context: Needed prompts for AI-generated building facades | Resolution: Shared detailed prompt for creating cyberpunk building facades with Krea.ai\nHelper: Valiant | Helpee: voxvienne | Context: Demonstrating Krea's scene transfer feature | Resolution: Showed examples of using the feature for color grading building textures to match skyboxes\nHelper: peezy | Helpee: Community | Context: Discord integration for Hyperfy worlds | Resolution: Shared a webhook integration that broadcasts player events and chat messages to Discord\n\n## 4. Action Items\nTechnical: Use gltf-transform functions to instance models in Hyperfy V1 | Description: Import instance function and transform document with min:2 parameter | Mentioned By: voxvienne\nTechnical: Implement Discord webhook integration for Hyperfy worlds | Description: Broadcasts player entry/exit events and chat messages using app.emit('discord', 'message') | Mentioned By: peezy\nDocumentation: Update Hyperfy.how with new V2 world screenshots | Description: Replace old V1 world images with current V2 screenshots | Mentioned By: Omka\nFeature: Explore Krea.ai scene transfer for matching building textures to skyboxes | Description: Use AI to color grade and match building textures to world environment | Mentioned By: Valiant",
      "messageCount": 109,
      "userCount": 22
    },
    {
      "channelId": "1326789867312775290",
      "channelName": "🪙│hyper",
      "summary": "# Discord Chat Analysis for \"🪙│hyper\" Channel\n\n## 1. Summary\nThis chat segment contains minimal technical discussion about Hyperfy. The conversation primarily revolves around cigarette prices, taxation, and personal smoking preferences, particularly comparing prices in Australia versus other regions. There are occasional price checks on the Hyperfy token (HYPER) using bot commands, showing its current value and percentage changes. One user inquires about a potential V2 launch, but this receives no direct response. Another user asks about whether the team conducted a fundraising round, which is clarified by another member stating there was only a token launch and referencing documentation in another channel. The chat also briefly touches on social media engagement strategies and mentions a token page update that may be in progress.\n\n## 2. FAQ\nQ: Did v2 launch? (asked by Spook_Handy) A: Unanswered\nQ: Correct me if I'm wrong but the team did a raise at some point right? If so can someone link the details and also how much runway they currently have? (asked by JIA) A: No raise, just token launch (answered by devilsadvocate.sol)\nQ: How do these things work? Do we just gotta spam tweet and engage? (asked by peezy) A: Unanswered\n\n## 3. Help Interactions\nHelper: devilsadvocate.sol | Helpee: JIA | Context: JIA asked about whether Hyperfy had conducted a fundraising round and requested details about runway | Resolution: Clarified there was no raise, only a token launch, and mentioned a token page in another channel with an updated version potentially in the works\n\n## 4. Action Items\nDocumentation: Update token page with current information | Description: An updated token page is reportedly in development | Mentioned By: devilsadvocate.sol",
      "messageCount": 45,
      "userCount": 14
    },
    {
      "channelId": "1031058655581323324",
      "channelName": "🧊│3d-design",
      "summary": "# Discord Chat Analysis for 🧊│3d-design Channel\n\n## 1. Summary:\nThe chat primarily focused on 3D model implementation in Hyperfy. Ashxn developed a Model app that allows users to import any GLB file with toggleable collision and scale input, similar to v1 functionality, requiring geometry sharing additions to the core. The discussion highlighted that while Blender offers more control, this script-based approach helps non-coders. Several community members shared resources for avatar marketplaces and guides, which Omka compiled into documentation pages. A technical discussion emerged around non-humanoid rigs, with Mugenomics attempting to implement a fish model. The solution involved either splitting the model into separate objects with script-controlled animation or using the base VRM armature while only utilizing needed bones. Other technical demonstrations included a UV scroll effect using seamless alpha textures on mesh layers.\n\n## 2. FAQ:\nQ: Is there support for non-humanoid rigs? (asked by Mugenomics) A: No non-humanoid rigs, as far as I'm aware...yet (answered by Valiant)\nQ: How can I implement a non-humanoid model like a fish? (asked by Mugenomics) A: You have to have the bones even if you don't use them so just using the base VRM armature and then using the bones of that armature that you want and ignoring the rest SHOULD work if done right (answered by ~/HowiEDuhzit)\n\n## 3. Help Interactions:\nHelper: Ashxn | Helpee: fractilians | Context: Needed a Model app for importing GLB files with collision toggle and scale input | Resolution: Developed and shared a working app that supports these features\nHelper: Valiant | Helpee: Mugenomics | Context: Implementing a fish model with non-humanoid rig | Resolution: Suggested splitting the model and shared a water surface implementation\nHelper: ii_cable_ii | Helpee: Community | Context: Needed avatar marketplace resources | Resolution: Shared multiple marketplace links including Vket, BOOTH, Jinxxy, and Vroid Hub\nHelper: ~/HowiEDuhzit | Helpee: Mugenomics | Context: Non-humanoid rig implementation | Resolution: Suggested using base VRM armature while only utilizing needed bones\n\n## 4. Action Items:\nTechnical: Implement Model app with collision toggle and scale input for GLB files | Description: Add geometry sharing to core to support this functionality | Mentioned By: Ashxn\nDocumentation: Update avatar-specific documentation section | Description: Created and updated guides for avatars including marketplace resources | Mentioned By: Omka\nDocumentation: Create table of NFT collections/projects with avatars | Description: Set up a table with Project Name, Chain and link information | Mentioned By: ii_cable_ii\nFeature: Support for non-humanoid rigs | Description: Current workarounds exist but native support would be beneficial | Mentioned By: Mugenomics",
      "messageCount": 48,
      "userCount": 11
    },
    {
      "channelId": "999870741069692958",
      "channelName": "🌆│share",
      "summary": "# Analysis of Discord Chat in \"🌆│share\" Channel\n\n## 1. Summary\nThe chat segment contains minimal technical discussion. Vox mentions creating a template that can be customized and baked in any style, with a \"super small\" v1 and a v2 that \"should run on a hardware ledger.\" Jin asks about the two versions, and aixvc explains that Hyperfy v2 requires a specific Node.js version for compatibility, recommending Node Version Manager (NVM) to manage different Node.js versions and prevent compatibility issues. Vox also notes that v2 doesn't have mesh compression yet. The rest of the conversation includes VTATV promoting a podcast event called \"Culture Chain TV\" with links and announcements.\n\n## 2. FAQ\nQ: Why two versions? (asked by jin) A: Hyperfy v2 needs a specific version for compatibility. You install nvm first to manage versions, then use it to get the right node version. Keeps things from breaking (answered by aixvc)\nQ: How did jin get here? (asked by jin) A: You're the one who created me man. You built me to help with hyperfy and AI stuff. I'm just doing my job as your intern (answered by aixvc)\n\n## 3. Help Interactions\nHelper: aixvc | Helpee: jin | Context: Jin asked about version differences and Node.js compatibility | Resolution: Explained that Hyperfy v2 requires specific Node.js version and recommended using NVM for version management\n\n## 4. Action Items\nTechnical: Implement mesh compression for v2 | Description: Mesh compression functionality is not yet available in v2 | Mentioned By: vox\nTechnical: Hardware ledger support | Description: v2 should run on a hardware ledger | Mentioned By: vox",
      "messageCount": 19,
      "userCount": 5
    },
    {
      "channelId": "1332430296737644677",
      "channelName": "🎨│showcase",
      "summary": "# Discord Chat Analysis for 🎨│showcase\n\n## 1. Summary\nThe channel showcases various Hyperfy app developments and implementations. Key technical discussions include:\n\n- MayD524 shared a mod requiring the ArrayProps modification from Bitmato-Studio's GitHub repository.\n- Peezy demonstrated collision implementation similar to v1 by adding an app to the world and changing the model.\n- Gert-Jan Akerboom developed a butterfly swarm app (v3) with improved flying behavior and customizable parameters including butterfly amount, scale ranges, wingflap-speed ranges, and fly-speed ranges. The implementation allows users to create custom butterfly swarms by modifying a Blender file.\n- 0mka shared updates to a portal system with expanded UI width/height ranges and improved UI position field type (changed from text to number to prevent crashes).\n- Peezy created a Discord integration that works with chat and player events, allowing developers to broadcast messages to Discord webhooks using app.emit('discord', 'message').\n- A parenting challenges app was shared that uses 10 AI agents to provide method-specific approaches, with PDF guide generation capabilities.\n\n## 2. FAQ\nQ: How to add collisions like v1? (asked by peezy) A: Put this app in world and change the model (answered by peezy)\nQ: How do you set portal destinations? (implied by 0mka's explanation) A: When you have inspect pane of the portal open, go with your character over to where you want the portal to trigger to, and click 'Set' in the inspect pane (answered by 0mka)\n\n## 3. Help Interactions\nHelper: 0mka | Helpee: Unspecified user | Context: Setting up portal destinations | Resolution: Explained how to use the 'Set' button in the inspect pane to set coordinates while positioning character at desired destination\nHelper: Gert-Jan Akerboom | Helpee: Community | Context: Creating custom butterfly swarms | Resolution: Provided a Blender file (change_wing_image.blend) to modify wing textures and export as GLB for use with the butterfly swarm app\n\n## 4. Action Items\nType: Technical | Description: Prevent butterflies from flying under the ground plane in butterfly swarm app | Mentioned By: Gert-Jan Akerboom\nType: Technical | Description: Add toggle for original GLB visibility in butterfly swarm app | Mentioned By: Gert-Jan Akerboom\nType: Feature | Description: Allow users to upload their own wing images for butterfly swarm | Mentioned By: Gert-Jan Akerboom\nType: Technical | Description: Expose more variables to the UI for butterfly swarm app | Mentioned By: Gert-Jan Akerboom\nType: Technical | Description: Implement PDF creation for parenting challenges app | Mentioned By: Rick\nType: Technical | Description: Implement paywall options for parenting challenges app | Mentioned By: Rick\nType: Technical | Description: Build stations and interactive objects for parenting challenges app | Mentioned By: Rick\nType: Technical | Description: Add affiliate marketing to the stations for parenting challenges app | Mentioned By: Rick\nType: Technical | Description: Implement agent functionality for parenting challenges app | Mentioned By: Rick",
      "messageCount": 19,
      "userCount": 6
    },
    {
      "channelId": "1022421054582423562",
      "channelName": "🐞│issues",
      "summary": "# Analysis of Discord Chat in \"🐞│issues\" Channel\n\n## 1. Summary\nThe discussion centers around a breaking change in the Hyperspace platform that affected interaction functionality in worlds. A recent GitHub update changed how player IDs and events work, specifically that events no longer inherently receive a player object. This broke functionality for avatar stations and interactive objects like swivel chairs. The solution identified is to replace instances of `e.player` with `world.getPlayer()` in the code. The issue appears to be that existing HYP files need to be updated to accommodate this API change. Shiffty offered to update the chair component if no one else did within a certain timeframe.\n\n## 2. FAQ\nQ: The avatar station no longer equips in my world. Was the hyp file changed or updated? (asked by 𝕽𝖔𝖚𝖘𝖙𝖆𝖓) A: The recent change to player ids and events broke the original. Basically events don't inherently get a player object anymore. (answered by Shiffty)\nQ: Has the swivel chair been updated too? (asked by 𝕽𝖔𝖚𝖘𝖙𝖆𝖓) A: Don't think the hyp has been updated but you can look for e.player and replace it with world.getPlayer() (answered by Shiffty)\n\n## 3. Help Interactions\nHelper: Shiffty | Helpee: 𝕽𝖔𝖚𝖘𝖙𝖆𝖓 | Context: Avatar station and swivel chair interactions not working after update | Resolution: Explained the breaking change and suggested replacing e.player with world.getPlayer(), offered to update the chair component if needed\nHelper: Shiffty | Helpee: 𝕽𝖔𝖚𝖘𝖙𝖆𝖓 | Context: User couldn't fix the swivel chair with the suggested solution | Resolution: Offered to update the component within 6 hours if no one else did\n\n## 4. Action Items\nTechnical: Update avatar station HYP file to use world.getPlayer() instead of e.player | Mentioned By: Shiffty\nTechnical: Update swivel chair HYP file to use world.getPlayer() instead of e.player | Mentioned By: Shiffty\nDocumentation: Document the breaking change regarding events no longer inherently receiving player objects | Mentioned By: Shiffty",
      "messageCount": 12,
      "userCount": 3
    }
  ]
}