{"$schema": "https://c3voc.de/schedule/schema.json", "generator": {"name": "pretalx", "version": "2026.1.1"}, "schedule": {"url": "https://talks.godotfest.com/godotfest-26/schedule/", "version": "0.1", "base_url": "https://talks.godotfest.com", "conference": {"acronym": "godotfest-26", "title": "GodotFest 26", "start": "2026-11-03", "end": "2026-11-04", "daysCount": 2, "timeslot_duration": "00:05", "time_zone_name": "Europe/Berlin", "colors": {"primary": "#0071bc"}, "rooms": [{"name": "Ballsaal", "slug": "1-ballsaal", "guid": "052cf660-37ce-5566-87e2-1e29913468a7", "description": null, "capacity": 400}, {"name": "Italien", "slug": "2-italien", "guid": "e928bf26-bc55-5a5d-a26b-eaee1fa07d22", "description": null, "capacity": 150}, {"name": "Foyer", "slug": "3-foyer", "guid": "d715c75f-8274-5fc1-8598-9899d3fc01e3", "description": null, "capacity": 500}], "tracks": [], "days": [{"index": 1, "date": "2026-11-03", "day_start": "2026-11-03T04:00:00+01:00", "day_end": "2026-11-04T03:59:00+01:00", "rooms": {"Ballsaal": [{"guid": "9ff14e37-f433-51ba-a672-6366739d9305", "code": "BBVKBH", "id": 71, "logo": null, "date": "2026-11-03T10:00:00+01:00", "start": "10:00", "duration": "00:25", "room": "Ballsaal", "slug": "godotfest-26-71-keynote-tools-change-craft-remains-reflections-on-godot-ai-and-the-future-of-making-games", "url": "https://talks.godotfest.com/godotfest-26/talk/BBVKBH/", "title": "Keynote: Tools Change, Craft Remains - Reflections on Godot, AI and the Future of Making Games", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Every generation of game developers has seen its tools change, from custom in-house engines to open-source editors like Godot. AI is the newest change, and it is already part of many professional workflows. It also raises real questions about credit, quality and creative ownership, and those questions deserve careful answers rather than quick verdicts. This keynote reflects on where making games is heading, what AI can and can't do for developers, and why the Godot community is well placed to help shape it. Tools will keep changing; the craft remains. Our shared task is to make sure the tools keep serving the craft.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "CFATPN", "name": "Johannes Ebner", "avatar": "https://talks.godotfest.com/media/avatars/SYPF8B_6O2rvFP.webp", "biography": "Johannes Ebner is a Co-Founder of GodotFest. He has spent 18 years building multiplayer games and online services, for studios ranging from indie to AAA.\r\n\r\n\r\nIn his day job he is a Senior Production Partner Manager at XBOX, helping publishers and studios bring their games to the XBOX ecosystem. Before that he was a Gaming Solution Architect at Microsoft, where he helped deploy backend infrastructure for more than 30 high-profile games. One of those was Valheim, which he helped go cross-platform with PlayFab and Azure.\r\n\r\n\r\nHe also runs Structed.me, a consultancy that helps studios plan, build and launch games with online components, covering both the technical and commercial sides. He built godot-playfab, a Godot plugin for PlayFab that games such as Dome Keeper use. He started his games career at Travian Games, first as a game programmer and later as technical lead on online multiplayer titles.\r\n\r\n\r\nIn 2023 Johannes hosted GodotCon Munich, which drew 300 attendees plus an online stream. He went on to found GodotFest with Ben Vehling, Kerstin Pfaffinger, Raffaele Picca and Senad Hrnjadovic.", "public_name": "Johannes Ebner", "guid": "5f2dc8e1-09ae-5959-acd8-1b6c1a99d5e5", "url": "https://talks.godotfest.com/godotfest-26/speaker/CFATPN/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/BBVKBH/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/BBVKBH/", "attachments": []}, {"guid": "0a1ee82a-a2f9-5222-8283-6df596b7df2a", "code": "8BNKRM", "id": 47, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/8BNKRM/image_1Btp3X1.png", "date": "2026-11-03T10:30:00+01:00", "start": "10:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-47-from-alpha-to-z-test-a-trip-through-godot-s-renderer", "url": "https://talks.godotfest.com/godotfest-26/talk/8BNKRM/", "title": "From Alpha to Z-Test: A trip through Godot's renderer", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "In this talk I will break down how Godot's Forward+ renderer works starting from where it fits within the overall game frame to individual choices for major features.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "EC87K3", "name": "Clay John", "avatar": "https://talks.godotfest.com/media/avatars/7VQES8_xBEu38B.webp", "biography": "Clay is a Technical Director at W4 Games where he helps provide best-in-class console ports for Godot and support services for projects in the Godot ecosystem. He has been contributing to Godot since the early days of Godot 3. He is also a board member for the Godot Foundation.", "public_name": "Clay John", "guid": "1705a08c-e4f6-5aba-a8f6-247c66878d3d", "url": "https://talks.godotfest.com/godotfest-26/speaker/EC87K3/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/8BNKRM/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/8BNKRM/", "attachments": []}, {"guid": "e1b91577-3ab9-5f61-afc5-eefd42445902", "code": "3PAYYA", "id": 36, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/3PAYYA/image_ajg1jyZ.webp", "date": "2026-11-03T11:30:00+01:00", "start": "11:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-36-console-development-unlocked-bringing-your-godot-game-to-ps5-xbox-switch", "url": "https://talks.godotfest.com/godotfest-26/talk/3PAYYA/", "title": "Console Development Unlocked: Bringing Your Godot Game to PS5, Xbox & Switch", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Bringing a Godot game to consoles involves much more than getting the engine to run on the hardware.\r\n\r\nIn this talk, I'll walk through what it actually takes to bring a Godot game to PlayStation, Xbox, and Nintendo Switch, from becoming an approved console developer and getting access to development hardware, to choosing a Godot console port, preparing your game, and getting through certification.\r\n\r\nWe'll look at practical lessons for building a console-ready Godot project, including platform-independent architecture, input and controller handling, save games, performance, loading times, platform services, and certification requirements.\r\n\r\nI'll also share real-world experience from console development with Godot, including case studies such as The Dark Queen of Mortholme and Astra Bestiary, and look at other Godot games making their way onto consoles.\r\n\r\nThe goal is to give you a practical understanding of the entire journey, from having a Godot game on PC to actually shipping it on a console.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "A9M8ZE", "name": "Andr\u00e9 Ewald", "avatar": "https://talks.godotfest.com/media/avatars/CERYMV_c8f6Gat.webp", "biography": "Andr\u00e9 Ewald is an Associate Tech Director and software engineer specializing in game engine development, graphics programming, and platform engineering.\r\n\r\nHe works at Ubisoft on titles including Skull and Bones, Anno 1800, and Beyond Good and Evil 2, contributing to engine technology and the systems that power large-scale AAA game development.\r\n\r\nAlongside his work in the games industry, Andr\u00e9 founded Rhine Games, an independent game studio where he developed and released VR titles for Steam, Meta Quest and PlayStation VR2 using Unreal Engine.\r\n\r\nDriven by a passion for open-source technology, Andr\u00e9 later shifted his focus to Godot, contributing and driving the development of its MIT-licensed console ports. His work primarily focused on bringing Godot to PlayStation 5, while also contributing to the Xbox One/Xbox Series X|S and Nintendo Switch ports. His interests include engine architecture, rendering, platform abstraction, performance optimization, and making advanced game technology more accessible to developers.", "public_name": "Andr\u00e9 Ewald", "guid": "47766b93-3aa6-58a9-bb3c-8100b679cccc", "url": "https://talks.godotfest.com/godotfest-26/speaker/A9M8ZE/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/3PAYYA/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/3PAYYA/", "attachments": []}, {"guid": "196fae1f-1337-564a-8940-594b6a68ab75", "code": "EJG9MJ", "id": 19, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/EJG9MJ/image_uHkXZZf.webp", "date": "2026-11-03T12:30:00+01:00", "start": "12:30", "duration": "00:25", "room": "Ballsaal", "slug": "godotfest-26-19-what-our-unity-team-got-wrong-so-you-don-t-have-to", "url": "https://talks.godotfest.com/godotfest-26/talk/EJG9MJ/", "title": "What Our Unity Team Got Wrong (So You Don't Have To)", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "We migrated a team from Unity to Godot - not as beginners, but as experts whose Unity instincts actively worked against us. The habits that made us fast in Unity quietly produced brittle, un-idiomatic Godot code, and the bill came due within weeks.\r\n\r\nThis is the honest post-mortem of our first month: the mental models that collided, the muscle memory that backfired, and the day source control broke. For each, we'll show what we assumed, what actually happened, and the convention that fixed it - so your first month is shorter and less painful than ours.", "description": "Most \"switching to Godot\" talks target newcomers. This one is for teams who already know how to ship - because migrating experienced engineers is a different, harder problem. Your expertise doesn't transfer cleanly; it misleads you. Godot looks enough like Unity that you reach for familiar patterns, and those patterns are exactly what produce fragile code.\r\n\r\nWe'll walk through the specific collisions our team hit, in three buckets:\r\n\r\n**Mental models that don't map 1:1**: \r\n\r\n- GameObjects-and-Components vs. nodes-and-scenes \r\n- Prefabs and variants vs. PackedScenes and scene inheritance (where instancing and overrides genuinely differ)\r\n- ScriptableObjects as Data Containers vs. Resources \r\n- `Update()` vs. `_process`/`_physics_process`.\r\n\r\n**Muscle memory that backfired**: \r\n\r\n- Porting Unity's singleton/manager soup straight onto autoloads\r\n- The `GetComponent<>()` reflex becoming `get_node()` coupling\r\n- And the big one, \"we already know C#, so we'll just use C#\". The honest team tradeoff between GDScript and C# _(iteration speed, export pipeline, community examples)_.\r\n\r\n**The day git broke**:\r\n- Scene and resource files are text now: diffable, but conflict-prone. \r\n- How we kept scenes small and reviewable\r\n- what to commit vs. ignore\r\n\r\nWe're just one team, one project into Godot - so this is what worked for *us*, not a definitive playbook. But if sharing our wrong turns spares you a little of the trouble they cost us, that's a win.\r\n\r\n**Audience:** engineers, tech leads, and studio decision-makers considering or mid-migration.", "recording_license": "", "do_not_record": false, "persons": [{"code": "BD9TYX", "name": "Owen Magri", "avatar": "https://talks.godotfest.com/media/avatars/8YGZHS_xeppfjh.webp", "biography": "A game engineer based in Malta with a background in Unity, now working primarily in Godot.", "public_name": "Owen Magri", "guid": "7bdc9066-bfe3-5267-b08f-61f342be4b31", "url": "https://talks.godotfest.com/godotfest-26/speaker/BD9TYX/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/EJG9MJ/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/EJG9MJ/", "attachments": []}, {"guid": "be9997ee-dbb4-52df-9860-14d1d4042ab5", "code": "QQWXL9", "id": 41, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/QQWXL9/image_Ashla3q.jpg", "date": "2026-11-03T14:30:00+01:00", "start": "14:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-41-why-you-should-develop-and-release-on-console-first", "url": "https://talks.godotfest.com/godotfest-26/talk/QQWXL9/", "title": "Why You Should Develop and Release on Console First", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Traditionally, indie studios and small teams developed for a single console first before porting to PC\u2014a tradition that has since flipped to \"Steam first.\" This talk challenges that modern default. By exploring the technical advantages of a single hardware spec, the business benefits of dedicated console audiences, and the artistic merit of crafting a canonical, intended experience, we will examine why developing for console first might be the smartest strategic decision for your studio.", "description": "In this 50-minute session, we will dive deep into the strategic advantages of developing and releasing your game on a console first. Drawing from my history working on early XBLA titles, PlayStation Strategic Content, and Dreams, this talk unpacks why the \"PC-first\" mentality became the default and why shifting your focus back to console can elevate your game.\r\nWe will break this down into three core pillars: Technical, Business and Artistic.\r\n\r\nThe biggest barrier is often simply knowing you can. In a world of distraction and slop you can always grow and expand in the future. Why not FOCUS, make interesting technical decisions, different business choice and strong artistic choice in developing for one console first.", "recording_license": "", "do_not_record": false, "persons": [{"code": "8SF3ZU", "name": "Claire Blackshaw", "avatar": "https://talks.godotfest.com/media/avatars/7ZD3ZZ_jMYLPiu.webp", "biography": "Claire Blackshaw\r\nTechnical Director at Flammable Penguins Games\r\n\r\nShipping games since PS2 era, queer creative based in London, her perspective spans from assembly to stage plays. Her career working on platform PS4, PS5 and PSVR1/2 at PlayStation, Climax, and Jagex. At Sony as Senior Online Consultant for Europe, she worked closely with Strategic Content helping indies on console, and her own background includes releasing one of the early titles for XBLA. Currently Technical Director at Flammable Penguins Games, she continues leading technical work, contributing to Godot and started PlayStation Community port of Godot.\r\nClaire was recently featured in Kelly Vero\u2019s book Breaking Through Bytes: Women Shaping the Digital World for her ongoing contributions to the games industry and VR.", "public_name": "Claire Blackshaw", "guid": "09420f92-af63-51b0-bec5-7994c246c165", "url": "https://talks.godotfest.com/godotfest-26/speaker/8SF3ZU/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/QQWXL9/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/QQWXL9/", "attachments": []}, {"guid": "03408f63-6950-5a78-bac2-15b89d25dde1", "code": "AZLG7R", "id": 69, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/AZLG7R/image_0Trwsq5.jpg", "date": "2026-11-03T15:30:00+01:00", "start": "15:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-69-building-your-discord-server-through-every-stage-of-game-development", "url": "https://talks.godotfest.com/godotfest-26/talk/AZLG7R/", "title": "Building Your Discord Server Through Every Stage of Game Development", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "This talk runs through setting up a Discord server to help game developers as they build and grow their games. It talks about how to set up moderation, create channels, create roles, get feedback, run events, and interact with the community. It steps through how these things change as a dev's game goes from prototype to beta to release.", "description": "Your Discord server isn't just a community, it's a development tool. This talk walks through building a server that works for you at every stage of your game's development. We'll talk about channels, roles, events, moderation, and how to bring players straight from your game into your community and keep them engaged.", "recording_license": "", "do_not_record": false, "persons": [{"code": "AH9FZW", "name": "Anthony Te\u0161ija", "avatar": "https://talks.godotfest.com/media/avatars/MYKFVM_NKTmgGJ.webp", "biography": "Anthony Te\u0161ija is a Senior Developer Advocate at Discord, passionate about building games and tools for game developers. He has designed and developed over forty indie games focusing on bright, colorful experiences with innovative twists on local multiplayer and exploration. Beyond traditional games, his work spans installation games and art, along with live visual performance.", "public_name": "Anthony Te\u0161ija", "guid": "4df6e606-8e5d-5669-96f0-e027d7a53a4d", "url": "https://talks.godotfest.com/godotfest-26/speaker/AH9FZW/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/AZLG7R/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/AZLG7R/", "attachments": []}, {"guid": "95a1f9a7-83ba-5dd2-ad10-441bdafbcb6f", "code": "7YUGET", "id": 49, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/7YUGET/image_B5yqkQx.webp", "date": "2026-11-03T16:30:00+01:00", "start": "16:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-49-ichor-online-building-a-massive-multiplayer-online-rpg-in-godot", "url": "https://talks.godotfest.com/godotfest-26/talk/7YUGET/", "title": "Ichor Online: Building a Massive Multiplayer Online RPG in Godot", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Building an MMORPG as Indie Devs: workflows, scope management, lessons learned and leveraging the power of SpacetimeDB with Godot.", "description": "Building an MMORPG comes with big challenges across content production, large-world tooling, rendering many entities, connection management, latency, netcode and networked physics. This talk explores how we\u2019re combining Godot, SpacetimeDB, and Blender to approach these problems while building Ichor Online. We\u2019ll share our architecture, workflows, lessons learned, and practical trade-offs.", "recording_license": "", "do_not_record": false, "persons": [{"code": "PZUH9E", "name": "Leonardo Rocha", "avatar": "https://talks.godotfest.com/media/avatars/RFYRQP_srqxuye.webp", "biography": "I've been coding games for nearly a decade, across different genres, and they were all multiplayer titles. \r\n\r\nMy most notable recent work is on the Online Services of ARC Raiders.", "public_name": "Leonardo Rocha", "guid": "75f846d9-092f-53d2-a8a1-feef569fcce9", "url": "https://talks.godotfest.com/godotfest-26/speaker/PZUH9E/"}, {"code": "ZNVKXU", "name": "Francesco Piacenti (FR3NKD)", "avatar": "https://talks.godotfest.com/media/avatars/8LV9ZM_cPwQoNh.webp", "biography": "I'm a 3D artist with a background in game dev, VFX, VR, and freelance work. I'm currently focused on indie game development using open-source tools, helping other indie developers with art, sound, and marketing.", "public_name": "Francesco Piacenti (FR3NKD)", "guid": "35234132-8e18-5cfa-b6b8-ca5caa5819f2", "url": "https://talks.godotfest.com/godotfest-26/speaker/ZNVKXU/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/7YUGET/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/7YUGET/", "attachments": []}, {"guid": "c5435ed9-bd93-5957-b53f-4957b4d1abb0", "code": "QVRYE3", "id": 50, "logo": null, "date": "2026-11-03T17:30:00+01:00", "start": "17:30", "duration": "00:25", "room": "Ballsaal", "slug": "godotfest-26-50-the-basics-of-image-composition", "url": "https://talks.godotfest.com/godotfest-26/talk/QVRYE3/", "title": "The basics of Image Composition", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "How to compose a balanced and strong image is a skill that is relevant for any gamedev, not just artists. I'm hoping to teach you the basics so that your Storefront graphics, Video Thumbnails, Cutscenes, Ui and Leveldesign visuals will improve :)", "description": "We will go over examples of strong compositions and then look at individual \"tools\" that will help you create clearer and better images: Visual hirachy, Colors & Contrast, Shape language, Text and Spacing.", "recording_license": "", "do_not_record": false, "persons": [{"code": "X7B97Z", "name": "Simone M\u00e4ndl", "avatar": "https://talks.godotfest.com/media/avatars/7MXBHC_tFVx3V2.webp", "biography": "I make art here: https://www.instagram.com/simonemaendl/\r\nand games with my partner Josef here: https://store.steampowered.com/developer/duandi/", "public_name": "Simone M\u00e4ndl", "guid": "f5898556-b939-519e-a56b-443f224c0337", "url": "https://talks.godotfest.com/godotfest-26/speaker/X7B97Z/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/QVRYE3/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/QVRYE3/", "attachments": []}], "Italien": [{"guid": "f23b6577-c1c4-5eaf-ac6b-2eb66d490551", "code": "ZFVM3B", "id": 58, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/ZFVM3B/image_KfZe8Fc.webp", "date": "2026-11-03T10:30:00+01:00", "start": "10:30", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-58-no-big-rewrites-incrementally-porting-gdscript-to-c-with-gdextension", "url": "https://talks.godotfest.com/godotfest-26/talk/ZFVM3B/", "title": "No Big Rewrites! Incrementally Porting GDScript to C++ with GDExtension", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Take an example GDScript class and port it to C++ with me! We'll compare the benefits and tradeoffs of multiple approaches. Finally, I'll show my preferred method which allows for moving code to C++ incrementally and safely.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "BBS8KE", "name": "Carter Hinkle", "avatar": "https://talks.godotfest.com/media/avatars/99L77H_QkNf6Eb.webp", "biography": "Hello! I'm a software developer currently working in game development for the upcoming fighting game, _Animation VERSUS_. \r\n\r\nIn my free time, I love music production, drawing, and learning new things! Recently I've been doing random software projects like working on open source software and creating my home server in NixOS.\r\n\r\nLooking forward to meet you!", "public_name": "Carter Hinkle", "guid": "d35b7994-b776-56bf-abec-60ba0db007ae", "url": "https://talks.godotfest.com/godotfest-26/speaker/BBS8KE/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/ZFVM3B/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/ZFVM3B/", "attachments": []}, {"guid": "c58482c8-2cdc-5fae-94c1-c89746532042", "code": "RFNWCH", "id": 6, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/RFNWCH/image_AeYvg9q.webp", "date": "2026-11-03T11:00:00+01:00", "start": "11:00", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-6-love-dogs-robots-net-c-and-godot-everywhere", "url": "https://talks.godotfest.com/godotfest-26/talk/RFNWCH/", "title": "LOVE,DOGS+ROBOTS  .NET, C#, and Godot everywhere!", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Come on a journey where we explore what's possible with Godot 4.7, 4.8, and .NET 10 / 11.\r\n\r\nI'll share findings, fascinations, and funny bits about my love for Godot with .NET; the things many developers long for, and how **Godot** and the **Godot community** helps us find them.\r\n\r\n### Live Demo: [2dog.dev](https://2dog.dev)\r\nWe'll go through the motions of porting a real C# Godot game to HTML5 and WebAssembly for publishing on [itch.io](https://itch.io) ... live on stage. \r\n\r\n**Woof, or oof?** Don't worry, it's really just about as easy as typing:\r\n```\r\ndnx 2dog add\r\ndotnet publish\r\n``` \r\nVoil\u00e0!\r\n\r\n### Treats \ud83e\uddb4\r\nIn version 4.6, `libgodot` became an official part of Godot. Now Godot 4.8 brings .NET 10, but what does that really _mean for us_ developers?\r\n\r\nBoth Godot and 2dog (which really _is still Godot,_ just a little backwards) have much more in store, with the brand new `godot-dotnet` and C# bindings on the horizon. Let's peek at some advancements coming from the .NET ecosystem with .NET 10 and 11.", "description": "## Who is this talk for?\r\n\r\nDevelopers using C# with Godot, for anything from applications, game jams, prototypes, and entire games ready to ship on Steam tomorrow.\r\n\r\n## What to expect?\r\n\r\nAn overview of where Godot and C# is in actual use, in games and application development.\r\n\r\nSee **2dog**, a concrete, free, and easy to apply use case of `libgodot`. It turns out it can do *a whole lot of very useful things* for game developers on every level.\r\n\r\n- Publish Godot C# games to WebAssembly for the browser\r\n- Run xUnit, GdUnit, or NUnit tests from your IDE, the CLI, or CI\r\n- Import resources through MSBuild tasks\r\n- Add another layer of .NET code around an existing game\r\n\r\n## But why?\r\nIn late 2025, I went on a journey to learn the innards of Godot and find a way to write my own importers and unit test runners. I was also still waiting for Godot and the promised C# web exports since version 4.1 ... then I met some amazing folks from the community at GodotCon Berlin and Amsterdam, and the rest was pure magic.\r\n\r\n**Stay a while and listen!** \ud83e\uddb4", "recording_license": "", "do_not_record": false, "persons": [{"code": "NGFYFA", "name": "Moritz Voss", "avatar": "https://talks.godotfest.com/media/avatars/TDGVZA_AdXqRAd.webp", "biography": "**tiger tiger tiger** (Moritz Voss) is a long time game developer passionate about open source, diversity, and creative coding.\r\n\r\nIn over 20 years of professional game dev and tech leadership at Activision-Blizzard-King, 5th Planet Games, Moon Gaming, and HandyGames, they shipped as many commercial games, small and big, for desktop, console, and mobile. \r\n\r\nCurrently it specializes in .NET and C#; building free and open source libraries for Godot and other engines under the label [\u291coutfox\u290f](https://github.com/outfox)\r\n\r\nThey fell in love with Godot at a Game Jam in 2018, is a (very) low-key contributor to the Engine, and maintains its own fork of the engine, which is a part of [2dog.dev](https://2dog.dev). It also recently contributed WASM support to `raylib-cs`, check it out and say hello!", "public_name": "Moritz Voss", "guid": "129b1170-a78b-54a6-b147-dde7b8606258", "url": "https://talks.godotfest.com/godotfest-26/speaker/NGFYFA/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/RFNWCH/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/RFNWCH/", "attachments": []}, {"guid": "e0a775c4-342b-5934-8518-e9f064e7ae83", "code": "DBRFQC", "id": 46, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/DBRFQC/image_W5U44vN.webp", "date": "2026-11-03T11:30:00+01:00", "start": "11:30", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-46-the-price-of-rushing-preproduction-vultures-a-turn-based-resident-evil-postmortem", "url": "https://talks.godotfest.com/godotfest-26/talk/DBRFQC/", "title": "The Price of Rushing Preproduction - Vultures: A \"Turn-Based Resident Evil\" Postmortem", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Preproduction should be the space where you experiment with mechanics and figure out what game you're actually building. But if you never stop throwing out new ideas, you can get stuck exploring forever without ever locking anything down. However, finishing it with a lot of \"we'll figure out later,\" and not measuring the impact of changing mechanics or levels during production, can be risky.\r\n This talk breaks down what rushing preproduction actually cost Vultures - Scavengers of Death.", "description": "Vultures - Scavengers of Death started as a text based roguelike prototype, then a small 3D vertical slice built in Godot 3. That vertical slice became our demo, and it did its job, it proved the core mechanic worked, turn based tactics that played like Resident Evil. \r\n\r\nWe got funded and started working on the game without being aware of how much everything else would actually cost: story, levels, enemy design, even the bosses. We cut preproduction short under the pressure of hitting our release commitments with the publisher. That decision followed us through the rest of production, and it showed up exactly where we couldn't afford it, the final weeks before launch.\r\n\r\nThis talk covers three years of prototyping, pitching, and producing Vultures, told through the real production timeline of a two person studio shipping a commercial game in Godot..", "recording_license": "", "do_not_record": false, "persons": [{"code": "EFRTTA", "name": "Giovanni Beltran", "avatar": "https://talks.godotfest.com/media/avatars/C9A39D_DRrcNTy.webp", "biography": "I'm game developer and co-founder of **Team Vultures**, an indie studio based in Bogot\u00e1, Colombia. \r\nI've been building games independently since 2018, working across custom consoles, experimental projects, and board games before co-founding Team Vultures in 2023. \r\nI co-directed development on **Vultures - Scavengers of Death**, a turn-based tactics and survival horror game built in Godot with a PS1-inspired low-poly style, shipped commercially after several years of production.", "public_name": "Giovanni Beltran", "guid": "7c618629-f727-5190-9106-20ebaf67eb06", "url": "https://talks.godotfest.com/godotfest-26/speaker/EFRTTA/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/DBRFQC/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/DBRFQC/", "attachments": []}, {"guid": "72164531-50e5-52de-a526-f1079b4af543", "code": "JUMP8X", "id": 53, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/JUMP8X/image_sLyVDFI.png", "date": "2026-11-03T12:00:00+01:00", "start": "12:00", "duration": "00:50", "room": "Italien", "slug": "godotfest-26-53-testflight-for-godot-developers-playtesting-games-on-apple-platforms", "url": "https://talks.godotfest.com/godotfest-26/talk/JUMP8X/", "title": "TestFlight for Godot Developers: Playtesting Games on Apple Platforms", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Practical overview of using Apple\u2019s TestFlight to playtest and distribute Godot games. Learn how to set up staged rollout channels to test updates with targeted user groups, configure feedback channels, and structure \"What to Test\" prompts that yield useful player insights. We'll showcase onboarding new playtesters and gathering their feedback in real time. The talk also covers navigating platform constraints, clarifying what TestFlight can measure vs where you must implement custom telemetry, promoting validated builds directly to the App Store, and using the ShipGodot editor plugin for easy cross-platform deployment.", "description": "This talk provides a practical guide to playtesting and releasing Godot games on Apple platforms. No prior Apple developer experience is required.\r\n\r\n**Topics covered:**\r\n\r\n- TestFlight Overview\r\n- Creating staged rollout channels to test updates with targeted user groups.\r\n- A live demo showing how easy it is to onboard new playtesters and receive their feedback.\r\n- Setting up the feedback channel and structuring \"What to Test\" prompts to get honest, and useful insights from playtesters.\r\n- Handling TestFlight constraints, what can be measured with it and where you need to implement your own telemetry\r\n- Promoting validated builds directly to the AppStore\r\n- Using ShipGodot editor plugin for easy cross-platform deployment", "recording_license": "", "do_not_record": false, "persons": [{"code": "ULYCBK", "name": "Micha\u0142 Myczkowski", "avatar": "https://talks.godotfest.com/media/avatars/J3MRVG_UMDu8Tw.webp", "biography": "An open-source enthusiast with professional experience in embedded systems simulation. Currently building ShipGodot, a commercial Godot 4 plugin for cross-platform iOS deployment.\r\n\r\nFormer Software Engineer at Antmicro and CS graduate from the University of Wroc\u0142aw.", "public_name": "Micha\u0142 Myczkowski", "guid": "e8267eab-5eb1-51fb-8620-f09010ed34c3", "url": "https://talks.godotfest.com/godotfest-26/speaker/ULYCBK/"}, {"code": "NPMXQL", "name": "Aleksandra Dulska", "avatar": "https://talks.godotfest.com/media/avatars/ETEMYB_lwBAxRs.webp", "biography": "I'm a designer working on ShipGodot, a plugin for developing iOS games from any platform. I hold a master's degree in Design from the Academy of Art and Design in Wroc\u0142aw, where I used Godot for my thesis project.", "public_name": "Aleksandra Dulska", "guid": "d7fe9c98-2159-55e6-9067-feb70e545232", "url": "https://talks.godotfest.com/godotfest-26/speaker/NPMXQL/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/JUMP8X/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/JUMP8X/", "attachments": []}, {"guid": "58c50f7c-3ca0-562b-b0c4-4beb3aabea03", "code": "FAMRTE", "id": 9, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/FAMRTE/image_OD2Gft6.png", "date": "2026-11-03T14:30:00+01:00", "start": "14:30", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-9-continuous-community-driven-translations-with-gettext-and-weblate", "url": "https://talks.godotfest.com/godotfest-26/talk/FAMRTE/", "title": "Continuous community driven translations with gettext and Weblate", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Using **gettext** and a continuous translation platform like **Weblate** allows translators to use a **simple web view** to translate and gives developers a simple way to **pull the changes through git**. This talk will cover the basic setup and some tricks I learned while developing 99Managers Futsal Edition with over **60 translation contributors and 16 languages** (and counting...).", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "GWJRMW", "name": "Simon Dalvai", "avatar": "https://talks.godotfest.com/media/avatars/DF97MR_KqkjXbI.webp", "biography": "Simon Dalvai is a freelance Software and Game developer based in Bolzano, Italy. He developed several Free and Open Source games since 2018 and his latest game 99Managers Futsal Edition has over 40k downloads on all platforms combined. Free Software is his real passion and he hopes to bring more of that philosophy into the game development world, by inspiring more people to share the source code of their games and tools, just like the Godot Engine does.", "public_name": "Simon Dalvai", "guid": "01fe4027-3043-5f6d-9092-fae7d14933e5", "url": "https://talks.godotfest.com/godotfest-26/speaker/GWJRMW/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/FAMRTE/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/FAMRTE/", "attachments": []}, {"guid": "2e2ad4a8-1aca-5a82-a6cc-21a6b9338fa4", "code": "P3UM83", "id": 37, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/P3UM83/image_mj0skpt.webp", "date": "2026-11-03T15:00:00+01:00", "start": "15:00", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-37-building-a-multiplayer-network-for-digital-twins-in-vr-ar", "url": "https://talks.godotfest.com/godotfest-26/talk/P3UM83/", "title": "Building A Multiplayer Network for Digital Twins in VR/AR", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "The LSU distillation columns is an advanced structure that gives opportunity for students to operate and experience commercial chemical equipment that follows specialized design standards. With the scale and complexity of the LSU distillation columns, creating a digital replication of the towers with a multiplayer system transforms learning, for both professors and students are able to analyze and study the facility without physical attendance. The multiplayer network facilitates real-time collaboration in a 3D digital environment through virtual reality (VR) and augmented reality (AR). To create a collaborative experience, the development between a multiplayer network, digital twin technology, and VR/AR environment enables an interface connecting data, systems, and people. The system will allow multiple people to thoroughly immerse, communicate effectively, and collect information simultaneously through a multitude of devices. Using digital twins in academics is an extension of learning and a different study method before firsthand operations. This presentation aims to share the challenges that arise within a shared virtual reality and multiplayer systems interactions. In addition, it demonstrates how accessible and scalable it is to implement across diverse platforms with open-source software, making it compatible for applications in education, research, and industry.", "description": "This project focuses on creating and implementing digital twins of the LSU distillation columns through open-source software. Open-source software is important because it allows more flexibility to modify and improve designs over time as well as be transparent and accessible. We found that open-source software is highly capable and accessible in our workflow when creating interactive digital twins.\r\n\r\nUsing data from lidar or photogrammetry, a point cloud is generated from an application like CloudCompare for accurate measurement, scale, and location of the environment. This point cloud served as a precise reference when constructing the 3D model on a large-scale system. Blender\u2019s dynamic toolset allowed the team to create a detailed visualization of the data in an efficient manner.\r\n\r\nShifting the 3D model into Godot, interactivity with user movement, object information, and world navigation was added to the application. Blender and Godot are meant to work together and the reason why we chose these specific programs is because they are fully free. Freedom to build, modify, and share what is made. They are made for the user. Finally, for version control, Github was used to track all the changes. \r\n\r\nEach of these open-source tools are adaptable and significantly robust for building both optimal digital twins and high-fidelity digital twins.\r\n\r\nPipeline:\r\n\r\nLidar/Photogrammetry:\r\n- Point cloud generated from images provided accurate scale for models\r\n\r\nBlender: to model the 3D environment \r\n- Create a master file to combine separate 3D parts\r\n- Individual team member files are linked to the master file\r\n- Establish a material legend and asset library for consistency\r\n\r\nGodot: to handle the VR/AR system\r\n- Multiplayer system: backend network\r\n- Toy model mode\r\n- VR/AR mode\r\n- Interactive aspects such as a drawing function and hovering to show information\r\n\r\nGithub: to source control\r\n- Documentation\r\n- Tracking and maintaining files\r\n\r\nThis aims to use Blender to model the 3D environment and Godot to handle the VR/AR system. Important features include multiplayer system, toy model mode, VR/AR mode, and other interactive aspects such as a drawing function and hovering to show information. The main emphasis is the multiplayer network as this allows multiple users to interact with the 3D surroundings and collect necessary information in real-time.", "recording_license": "", "do_not_record": false, "persons": [{"code": "ZER7AX", "name": "Tina Nguyen", "avatar": "https://talks.godotfest.com/media/avatars/BPXJJQ_dYQLMx2.webp", "biography": "I am a graduate student at LSU Digital Media Arts and Engineering.", "public_name": "Tina Nguyen", "guid": "5be0bb63-5aec-5165-91f6-d81100c0141f", "url": "https://talks.godotfest.com/godotfest-26/speaker/ZER7AX/"}, {"code": "EUNYGK", "name": "Darrius Anthony", "avatar": "https://talks.godotfest.com/media/avatars/JNL9AL_2F2mJ0r.webp", "biography": "LSU Graduate Student with Digital Media Arts and Engineering", "public_name": "Darrius Anthony", "guid": "3a01893e-3094-5fcd-ab6f-7c83a2433be9", "url": "https://talks.godotfest.com/godotfest-26/speaker/EUNYGK/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/P3UM83/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/P3UM83/", "attachments": []}, {"guid": "860ce165-6272-5167-bb2f-31fe8a362697", "code": "EALHBY", "id": 27, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/EALHBY/image_EwOTQD7.jpg", "date": "2026-11-03T15:30:00+01:00", "start": "15:30", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-27-crashes-don-t-care-what-language-you-wrote-your-game-in", "url": "https://talks.godotfest.com/godotfest-26/talk/EALHBY/", "title": "Crashes Don't Care What Language You Wrote Your Game In", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "A Godot game is rarely written in just one language. You've got GDScript for gameplay, more and more C#/.NET for the heavier systems, and native C++ through GDExtension underneath. Then you export the whole thing to Windows, Linux, macOS, Android, iOS, the Web, SteamOS/Proton, and - for some of us - consoles.\r\n\r\nEvery one of those languages fails differently. Every one of those platforms reports and symbolicates crashes differently. So when a player hits a bug you can't reproduce, the problem is collapsing that entire grid of languages and platforms into one readable issue, no matter what threw it or where it died.\r\n\r\nThis talk walks through that problem end-to-end, using Sentry's Godot SDK - recently expanded with first-class .NET support - as the example. We'll look at how a GDScript error, a C# exception, and a native crash differ; how the same crash has to survive Android tombstones, WASM in the browser, and the Proton translation layer on SteamOS; and how you can still get all of it back as a single, grouped, source-mapped issue. It's a talk about the messy reality of shipping a Godot game everywhere at once - and how to stay sane while doing it.", "description": "**You write in three languages and ship to eight platforms. A crash can come from any cell in that grid. You need to turn that grid back into one clear answer.**\r\n\r\nMost crash-reporting talks assume one language and one platform. Godot oftenbreaks both assumptions at the same time, which is exactly what makes it relevant for all Godot developers,whether they're all-in on GDScript, betting on C#, or dropping into native code for performance.\r\n\r\n## Axis 1 - The languages: three ways a game can fail\r\nUnder one engine, \"an error\" means three different things:\r\n* **GDScript** - Errors come from the engine's own script VM. You want the script, the line, and the game state around it, captured live as the game runs.\r\n* **C#/.NET - The newest and fastest-growing surface.** These are managed-runtime exceptions with their own stack shape, and the SDK now captures them as first-class events (including script context and variable values on the platforms that support it). Godot's C# community has been waiting on solid tooling here, which is a big part of why this talk is timely. There's even a build-time check that nudges C# developers toward the Godot-aware SDK instead of the raw one, a small thing that prevents a lot of misconfigured setups.\r\n* **Native / GDExtension (C++)** - When your own native module or the engine itself crashes, you don't get an exception at all; you get a full-process minidump from an out-of-process handler. A completely different capture model from the two above.\r\nThe point for the audience: these aren't three flavors of the same thing. They fail differently, they carry different context, and unifying them means agreeing on what an event even is before you can put them together in one list.\r\n\r\n## Axis 2 - The platforms: the same crash, eight hostile environments\r\nNow take any of those failures and ship it across Godot's export targets. Each one has different rules:\r\n* **Desktop** (Windows / Linux / macOS) - the baseline, and even here you're juggling different symbol formats and, on Apple, a separate underlying SDK.\r\n* **Android** - its own crash world: tombstones, ANRs (\"Application Not Responding\"), app hangs, and multiple CPU architectures to build and symbolicate for.\r\n* **iOS** - managed through the platform's native tooling, with its own signing and symbol quirks.\r\n* **Web (WASM)** - your game is now running in a browser sandbox; a crash looks nothing like it does on desktop.\r\n* **SteamOS / Proton** - your Windows build running through a translation layer on Linux. When it crashes, which stack are you even looking at? One example: under Wine the thread's stack bounds can report back wrong, so the crash handler tries to capture a wildly oversized stack - the SDK has to detect that it's running under Proton and rein the capture back in.\r\n* **Consoles** - locked-down platforms where you can't just drop in a standard crash handler at all.\r\nThis axis is where a lot of the complexity lies and it's the part many devs underestimate until they ship.\r\nTurning the grid back into one answer\r\n\r\n## The payoff of the talk is how the two axes come back together:\r\n* **One SDK, many engines underneath.** The Godot SDK is built as a GDExtension that quietly composes several native SDKs (the native/C++ crash backend, plus the Apple, Android, and Web SDKs) and presents a single, clean GDScript and C# API on top. You write against one interface; it fans out to the right machinery per platform.\r\n* **Normalize, then symbolicate.** Events from three different runtimes get normalized into one shape, and then each is mapped back to your source - GDScript line, C# frame, or native symbol - using the right method for that platform.\r\n* **One list, grouped and readable.** A C# exception under Proton and a native crash on Android end up side by side as grouped, source-mapped issues - plus Godot-native context like the scene tree, a screenshot of what the player saw, breadcrumbs, and device info.\r\n* **Where it's heading.** Once every language and platform lands as structured, richly-contextual data, that context becomes the raw material for AI-assisted root cause - a natural, non-salesy closing note.\r\n\r\n## Under the hood: how the layers actually talk (and where it got messy)\r\nThis is the technical spine I'd want to give the talk real weight.  Focus on the handful of design decisions and hard-won bugs that make the \"one clean issue\" illusion hold together. It's the part senior devs in the room will recognize from their own native/managed bridges.\r\n* **One interface, swappable backends.** Everything the public API does - set a tag, add a breadcrumb, capture an event - goes through a single internal C++ interface. Desktop fulfills it with the native/crashpad backend; Apple, Android, and Web each plug a different underlying SDK in behind the exact same interface. The GDScript or C# you write never knows, or cares, which one answered underneath.\r\n* **The C#\u2194native bridge is hand-built**, and it's mostly about strings and structs. Godot's C# layer doesn't get to use a normal SDK.  The managed and native sides talk over a raw function-pointer boundary. Native registers a table of callbacks C# can invoke; C# imports a matching set of native entry points. Every string crosses as a raw UTF-16 pointer + length with explicit handoff, and every struct has to have byte-for-byte identical layout on both sides. Get one field out of order and there's no compiler to catch it - you get a crash while reporting a crash.\r\n* **Keeping scope in sync without an infinite loop.** Set the user, a tag, or a breadcrumb in C#, and it has to also show up on a native crash that C# never sees - so each layer observes the other and mirrors changes across. The obvious trap: native tells managed, managed's own observer tells native, which tells managed\u2026 forever. The fix is a small thread-local re-entrancy guard so a change that arrived from a sync doesn't echo back out.\r\n* **The SDK crashing on its own crash reports.** We hook Godot's error stream to turn engine errors into events - but our own code can log errors, which we'd then capture, which logs more errors. That's a feedback loop, and done naively under a lock, a deadlock. Making it safe took a recursion-depth guard, filtering out our own log output by prefix, and a hard rule to never emit an error from inside the per-frame handler.\r\n* **Error storms.** One bad line in _process() throws the same error every single frame. With no limits you'd ship 60 identical events a second and set the player's machine on fire, so there's per-frame caps, a throttling window, and per-source-line dedup - plus deliberately looser limits for the first few frames of startup, where a burst of errors is normal.\r\n* **\"Is this even a C# error?\"** C# exceptions arrive through the same logger as GDScript errors - sometimes tagged with a .cs file, but on the Mono runtime sometimes with an empty file, so we fall back to sniffing the backtrace's language name to route it to the .NET layer. And then symbolication itself: GDScript source we can pull live from the running script VM, but in an exported .NET game the assemblies live inside Godot's packed, compressed virtual filesystem - no file on disk for the .NET SDK to open, so every managed frame comes back as unknown_image. The workaround is handing the SDK a fake seekable \"file\" that reads those bytes back out through Godot's own filesystem, and only the two small slices it actually needs.\r\nThe theme across all of these: the friendly one-line API is easy; what's hard is the plumbing underneath that keeps three runtimes agreeing on what happened, without deadlocking, looping, or lying about where the crash came from.\r\n\r\n## Key Takeaways\r\n* **\"One language, one platform\"** is a fantasy for Godot devs. Design your error handling for the whole grid from day one.\r\n* **GDScript, C#, and native failures are genuinely different** - knowing how they differ is the first step to unifying them.\r\n* **Your export targets are where reproducibility goes to die** - Proton, Web, Android, and consoles each change what a crash even looks like.\r\n* **GDExtension is a powerful seam for wrapping native capability** behind a friendly GDScript/C# API - crash reporting is one worked example of a general pattern.", "recording_license": "", "do_not_record": false, "persons": [{"code": "DKHK8M", "name": "Amir Mujacic", "avatar": "https://talks.godotfest.com/media/avatars/EAD8PQ_UMgjyio.webp", "biography": "Amir Mujacic is Head of Gaming at Sentry, specializing in game engine SDKs and native debugging tools. He works at the forefront of native and game error monitoring, helping developers navigate the complexities of crash reporting on multiple platforms. Amir is passionate about building robust developer tools that ensure smoother launches and more stable gaming experiences.", "public_name": "Amir Mujacic", "guid": "3d10fe72-600c-519d-9527-c468617c6139", "url": "https://talks.godotfest.com/godotfest-26/speaker/DKHK8M/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/EALHBY/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/EALHBY/", "attachments": []}, {"guid": "5c54f552-363c-5544-92ed-95b7721f18f0", "code": "RJSRWU", "id": 65, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/RJSRWU/image_w4x38pV.jpg", "date": "2026-11-03T16:00:00+01:00", "start": "16:00", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-65-shipping-3d-cross-platform-on-a-shoestring-budget-a-solo-dev-s-postmortem", "url": "https://talks.godotfest.com/godotfest-26/talk/RJSRWU/", "title": "Shipping 3D Cross-Platform on a Shoestring Budget: A Solo Dev's Postmortem", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "How do you ship a 3D educational game for Web, Desktop, and Mobile in Godot 4 on a tight budget? In this postmortem of \"The Masked Particle,\" I will share my survival strategies as a solo dev. Drawing from 1.5 years of building hypercasual mobile prototypes in 2-week sprints, I will show how that \"need for speed\" helped me build momentum in the crucial early stages of this Godot project. You will learn how to manage a mixed asset pipeline without in-house artists, build pragmatic responsive UIs, and discover a massive performance hack: simulating a complex 3D particle detector using lightweight 2D line draw calls for smooth web and mobile exports.", "description": "This session is aimed at indie developers, freelancers, and solo devs who want to build and release cross-platform projects in Godot 4 without burning out or breaking the bank.\r\n\r\n**Talk Outline:**\r\n\r\n- The Setup & Prototyping Mindset: Introducing \"The Masked Particle\" and the constraints of targeting Web/Desktop/Mobile. I will briefly touch on how my background in 2-week hypercasual sprints helped me scope the project and gain speed during the crucial early prototyping phase.\r\n\r\n- The Pragmatic Pipeline: How to build a 3D game without a 3D artist. A look at mixing store assets, outsourcing work, and AI backgrounds to stay on budget.\r\n\r\n- Good Enough UI: Utilizing Godot's Control nodes to build a single UI that works on big desktops as well as small smartphones, prioritizing shipping readiness over perfection.\r\n\r\n- The \"Fake 3D\" Hero Hack: A deep dive into web and mobile performance optimization. I will show how I avoided melting GPUs by simulating a complex 3D view into a particle detector using performance-friendly 2D line draw calls.\r\n\r\n- Q&A", "recording_license": "", "do_not_record": false, "persons": [{"code": "XR7KR8", "name": "Dr. Johannes Mattmann", "avatar": "https://talks.godotfest.com/media/avatars/QVKDMF_OSFulpi.webp", "biography": "Dr. Johannes Mattmann is the founder and CEO of Andarion Games, a Mainz-based studio specializing in high-fidelity serious games for research and education. With a background in experimental particle physics - including a PhD earned while investigating the Higgs boson at CERN\u2019s ATLAS experiment - he brings a unique, data-driven perspective to complex simulations. Johannes previously co-founded flyingshapes, a VR software company for industrial design. Today, he leverages his expertise in physics and VR to bridge the gap between rigorous scientific research and immersive, entertainment-grade gaming experiences.", "public_name": "Dr. Johannes Mattmann", "guid": "56924b9a-fad9-52a6-9a9b-c322f6b795c7", "url": "https://talks.godotfest.com/godotfest-26/speaker/XR7KR8/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/RJSRWU/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/RJSRWU/", "attachments": []}, {"guid": "2f6282ee-19ed-5585-8034-f9a818bce8d9", "code": "GFUZ9L", "id": 35, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/GFUZ9L/image_JBBQaNP.webp", "date": "2026-11-03T16:30:00+01:00", "start": "16:30", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-35-godot-accessibility-creating-the-utmost-freedom", "url": "https://talks.godotfest.com/godotfest-26/talk/GFUZ9L/", "title": "Godot & Accessibility - Creating the Utmost Freedom", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Discover the essentials of accessibility in games and learn how to make your great work enjoyable for so many more users - using incredibly simple methods!", "description": "We might not realize it at first, but accessibility plays a role in virtually **_every_** aspect of our life - whether by wearing glasses or hearing aids, living with physical limitations or sustaining sensory overloads. Even the brightness level of the screen on which you are currently reading this text can be considered an accessibility or quality-of-life feature!\r\n\r\n**In this short talk, I focus on the topic of general accessibility in games, including:**\r\n- An explanation of what accessibility actually is and why it is so important.\r\n- How small and simple (UI) optimizations can make a **_huge positive difference_** for many users.\r\n- An overview of tools available to (indie) developers.\r\n- Why forcing accessibility is a bad idea and why it is (sadly) impossible to optimize games for every single individual.\r\n\r\nSo, join me on this little journey through virtual realms of boundless freedom, and let\u2019s discover new ways of making games as accessible as possible - after all, it enhances **everyone's** enjoyment of your fantastic works! \u2665", "recording_license": "", "do_not_record": false, "persons": [{"code": "TXVWKD", "name": "Thomas Mayer", "avatar": "https://talks.godotfest.com/media/avatars/VYCLUS_5hX1JVb.webp", "biography": "Hi! I'm a concept artist and story writer for games and books, primarily using Godot!\r\n\r\nWhen I started to use Godot in 2020, I discovered my love for open-source software and somehow ended up here through dozens of game jams and collaborations with many other wonderful people, even though I originally just wanted to write books. Well, I\u2019m not complaining - I\u2019m happy to be here!\r\n\r\nLet's make this world better and happier together, step by step!", "public_name": "Thomas Mayer", "guid": "2bdb4f48-d2ba-5e1c-9cde-c5fbc54fc622", "url": "https://talks.godotfest.com/godotfest-26/speaker/TXVWKD/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/GFUZ9L/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/GFUZ9L/", "attachments": []}, {"guid": "537e259a-e510-5a00-85b2-b320e4a22f0d", "code": "WXYKTM", "id": 67, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/WXYKTM/image_aPz5rH5.png", "date": "2026-11-03T17:00:00+01:00", "start": "17:00", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-67-multiplayer-bloopers-common-networking-pitfalls-explained-with-painful-examples", "url": "https://talks.godotfest.com/godotfest-26/talk/WXYKTM/", "title": "Multiplayer Bloopers: Common networking pitfalls explained with painful examples", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Your game works perfectly until other players show up with their own version of reality. This is a light, fast tour of the classic multiplayer bugs: why they happen, how to fix them, and how to fix the fix.", "description": "Networking breaks your game in ways that are hard to explain, easy to laugh at, and even easier to misdiagnose. Players will call all of it lag. You will blame the server. It is usually neither. This talk walks through the common ways multiplayer goes wrong: why each one happens, what the usual fix is, and what that fix quietly breaks in return. No code or netcode background needed. If you are adding multiplayer to your game, or already shipped it and are now reading the reviews, this one is for you.", "recording_license": "", "do_not_record": false, "persons": [{"code": "YKB9TE", "name": "Ji\u0159\u00ed Star\u00fd", "avatar": "https://talks.godotfest.com/media/avatars/MVJSGF_dHDmYeg.webp", "biography": "Jirka is a lead samples developer at Photon Engine, a multiplayer networking solution for Unity, Unreal, Godot and other game engines. He builds example games across genres that show how to approach multiplayer. Before Photon he built multiplayer mobile shooters at Madfinger Games. He is an avid game jammer and keeps a steady stream of side projects going, from games to web apps.", "public_name": "Ji\u0159\u00ed Star\u00fd", "guid": "6f176c67-c4a9-5ed7-81ad-fb335784667b", "url": "https://talks.godotfest.com/godotfest-26/speaker/YKB9TE/"}, {"code": "PPFVH7", "name": "Erick Passos", "avatar": "https://talks.godotfest.com/media/avatars/PXRGNS_uOlmCBW.webp", "biography": "I am Engineering Director at Photon, team head for multiplayer SDKs like Quantum and Fusion, and currently lead developer of Fusion Godot.\r\n\r\nHave 20+ years experience in game development, 10+ years on multiplayer.\r\n\r\nGodot is the best thing to happen in games over the last 2 decades, it brought me back the joy in game development.", "public_name": "Erick Passos", "guid": "ecbae212-30a2-54f7-ab95-002ed210865e", "url": "https://talks.godotfest.com/godotfest-26/speaker/PPFVH7/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/WXYKTM/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/WXYKTM/", "attachments": []}, {"guid": "c2cc82eb-fe69-59d5-92f5-72974191137d", "code": "HSYC8B", "id": 11, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/HSYC8B/image_Ae23Rdq.webp", "date": "2026-11-03T17:30:00+01:00", "start": "17:30", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-11-backstitch-real-time-version-control-for-godot", "url": "https://talks.godotfest.com/godotfest-26/talk/HSYC8B/", "title": "Backstitch: Real-Time Version Control for Godot", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Our open-source version control plugin, [Backstitch](https://backstitch.dev/), enables fast collaboration for dev teams, game jams, and classrooms!", "description": "Are you an artist who struggles with Git merge conflicts, and broken Godot scenes?\r\n\r\nOr perhaps you're a programmer who keeps handling your team's Git problems, instead of writing code?\r\n\r\nMaybe you teach Godot to students, and half your time is spent fixing Git mistakes?\r\n\r\nGame development includes a diversity of roles, and not everyone can be expected to learn or teach Git. Its learning curve is way too steep, and less-technical participants can end up locked out of Godot entirely. Plus, Git was built for code -- games are a lot more than code!\r\n\r\nEnter [Backstitch](https://backstitch.dev). Our open-source Godot plugin allows for real-time collaboration, similar to a Google Doc. You can...\r\n\r\n- See a history of changes, including visual diffs\r\n- Revert to previous versions\r\n- Create and merge branches\r\n\r\n... all without leaving the editor. Most importantly, you're *never* stuck with a broken scene. Everyone's changes are intelligently merged together, automatically.\r\n\r\nBackstitch is great for game jams, or remote, asynchronous work. It is also excellent for classrooms! The plugin grew out of a collaboration with the Endless Foundation, who teach game development with Godot, and needed a better solution for students than Git.\r\n\r\nIn this talk, we'll cover the challenges of version control in game development, what we've learned from students, and what collaboration can look like when everyone on the team can work together. Everyone deserves equal access to version control!", "recording_license": "", "do_not_record": false, "persons": [{"code": "LYDDKE", "name": "Lilith Duncan", "avatar": "https://talks.godotfest.com/media/avatars/ZXH78P_hTjDN0A.webp", "biography": "Hi! I'm Lilith. I'm a game developer, specializing in weird, narrative experiences that never seem to leave my hard drive.\r\n\r\nI also engineer software. Right now, I work at Ink & Switch, where we're creating Backstitch, a real-time version control plugin for Godot.", "public_name": "Lilith Duncan", "guid": "7679f383-4946-562a-9673-738a7d6104b3", "url": "https://talks.godotfest.com/godotfest-26/speaker/LYDDKE/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/HSYC8B/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/HSYC8B/", "attachments": []}]}}, {"index": 2, "date": "2026-11-04", "day_start": "2026-11-04T04:00:00+01:00", "day_end": "2026-11-05T03:59:00+01:00", "rooms": {"Ballsaal": [{"guid": "aa67c44b-6459-5c9b-bc6c-7b063af45c03", "code": "XMEH88", "id": 66, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/XMEH88/image_pX9eWZH.jpg", "date": "2026-11-04T10:00:00+01:00", "start": "10:00", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-66-i-don-t-know-if-this-game-is-good", "url": "https://talks.godotfest.com/godotfest-26/talk/XMEH88/", "title": "I Don't Know If This Game Is Good", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Even after years of making games, I can\u2019t reliably tell if one is \"good\" while we\u2019re building it. Intuition, playtests, retention and wishlists all help - but every signal can mislead you in a different way. It is also hard to judge if the game is just \"not good yet\" or can actually never be good.\r\nIn this talk, I\u2019ll show how we deal with that at Bippinbits, using examples from both our successful games and the ones we chose to cancel.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "TCJTAU", "name": "Ren\u00e9 Habermann", "avatar": "https://talks.godotfest.com/media/avatars/ZWAZLW_rLnkkI4.webp", "biography": "Ren\u00e9 followed his life-long passion in 2022 and started Bippinbits, and indie studio making Dome Keeper and PVKK: Planetenverteidigungskanonenkommandant. Before that he studied computer science and worked many years in IT, developing an substantial aversion to corporate insanity. Bippinbits' approach to making games was shaped by game jams \u2013 swift iteration, smart scope, trusting teams, quick validation and a closeness to the players.", "public_name": "Ren\u00e9 Habermann", "guid": "6e9796fa-7f21-51b7-9254-c78b75338ede", "url": "https://talks.godotfest.com/godotfest-26/speaker/TCJTAU/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/XMEH88/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/XMEH88/", "attachments": []}, {"guid": "19e2028c-0122-51e5-b791-af0600148df1", "code": "UEWVJG", "id": 8, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/UEWVJG/image_L9EI2Jj.jpg", "date": "2026-11-04T11:00:00+01:00", "start": "11:00", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-8-the-return-of-game-programming-patterns-for-godot", "url": "https://talks.godotfest.com/godotfest-26/talk/UEWVJG/", "title": "The Return of Game Programming Patterns for Godot", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "At GodotCon Amsterdam 2026, \"Game Programming Patterns for Godot\" started with a tiny Reddit find, a cached getter and grew into a tour of underexplored patterns for real Godot projects. Then the video went online, and the comment section did what comment sections do: it argued, it questioned, and it asked for more.\r\n\r\nThis sequel answers back. We'll address the most common (and most spicy) objections from the community head-on, with code, and then go further: new patterns that didn't fit in the first talk, each demonstrated in a real, shipping Godot project.\r\n\r\nThe talk has three acts:\r\n\r\nAct I: A New Hope, Recapped. A fast, visual recap of the first talk's core idea.\r\n\r\nAct II: The Comments Strike Back. The top community objections and questions from the YouTube release, each answered with working code\r\n\r\nAct III: Return of the Patterns. Three patterns that didn't make the first talk, each shown in the context of my own released game, Tiny Drift:\r\n\r\n- State machines beyond the basics: pushdown automata for input and UI flows that plain enum-based FSMs handle poorly.\r\n- MVVM for game UI: separating game state from UI scenes using observable custom Resources; why this is underexplored in Godot and what it buys you in practice.\r\n- The Repository pattern with custom Resources:  abstracting save data and content databases behind a data-source interface, and where the classic IRepository approach breaks down in GDScript.", "description": "At GodotCon Amsterdam 2026, \"Game Programming Patterns for Godot\" started with a tiny Reddit find, a cached getter, and grew into a tour of underexplored patterns for real Godot projects. Then the video went online, and the comment section did what comment sections do: it argued, it questioned, and it asked for more.\r\n\r\nThis sequel answers back. We'll address the most common (and most spicy) objections from the community head-on, with code, and then go further: new patterns that didn't fit in the first talk, each demonstrated in a real, shipped Godot project.", "recording_license": "", "do_not_record": false, "persons": [{"code": "BXQQVL", "name": "Inacio Schweller", "avatar": "https://talks.godotfest.com/media/avatars/MTGMFS_3RkGZ1F.webp", "biography": "Writer, artist, programmer. I have been working in software engineering at a global scale for the past 15 years. Working on my first commercial title, Tiny Drift, already available on Steam.", "public_name": "Inacio Schweller", "guid": "a7307ccf-b3e5-5449-8390-9f2a1dac294a", "url": "https://talks.godotfest.com/godotfest-26/speaker/BXQQVL/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/UEWVJG/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/UEWVJG/", "attachments": []}, {"guid": "fd55bed6-ce06-5c6c-8b47-c4d6d414c988", "code": "XRDB8E", "id": 22, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/XRDB8E/image_7qFjbiK.webp", "date": "2026-11-04T12:00:00+01:00", "start": "12:00", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-22-developing-a-humanitarian-video-game-in-godot", "url": "https://talks.godotfest.com/godotfest-26/talk/XRDB8E/", "title": "Developing a humanitarian video game in Godot", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Amnios is a free narrative game about pregnancy, childbirth, and early motherhood during migration, built in Godot and co-created with migrant women, hospital clinicians, and the ICRC. This talk walks through how a research-creation methodology shaped the game's narrative, art direction, and puzzle mechanics \u2014 and what it actually takes, technically and ethically, to turn lived testimony into a playable experience.", "description": "Most \"games for good\" struggle with the same tension: how do you build something emotionally honest without turning real suffering into spectacle, and without the production collapsing under its own good intentions? This talk uses Amnios \u2014 a hand-drawn 2D narrative game developed in Godot \u2014 as a concrete case study for navigating that tension from a technical and production standpoint.\r\nAmnios follows three women navigating pregnancy, childbirth, and early motherhood across three different displacement contexts (the Dari\u00e9n Gap, the DRC\u2013Uganda border, and Geneva). It was developed by a small interdisciplinary team (HEAD \u2013 Gen\u00e8ve, HEdS, HUG, ICRC) on an eight-month seed grant, using real testimonies and a co-creation workshop with twelve migrant women as source material rather than research statistics.\r\n\r\nI'll cover:\r\n- Why Godot was the right engine for a small, cross-disciplinary team mixing artists, clinicians, and researchers with no prior game-dev experience\r\n- Building a hybrid comic/side-scrolling structure \u2014 combining illustrated panel sequences with forced-scroll 2D levels to represent involuntary displacement\r\n- \"Bubble Puzzles\": a symbolic dialogue mechanic (conversation, thought, and violence bubbles) used as both a narrative device and a literal gameplay system, and how we implemented it in Godot's node/signal architecture\r\n- Translating testimony into mechanics \u2014 the practical pipeline from workshop transcripts and field interviews to level design and environmental storytelling, without reproducing individual stories directly\r\n- Production reality on a tiny budget and timeline \u2014 team structure, scope decisions, what got cut, and what we'd do differently\r\n- Ethical representation as a design constraint, not an afterthought: how clinical and humanitarian partners (obstetrics, perinatal psychiatry, ICRC field researchers) were embedded in the actual dev process, not just consulted at the end\r\n\r\nWho this is for: developers and studios considering socially-engaged or research-based projects, anyone scoping a narrative game on a small team/budget, and educators or NGOs curious about games as a serious medium for sensitive topics. Attendees will leave with a concrete production framework for working with external experts and lived testimony without either exploiting the subject matter or diluting the game into something toothless. No prior knowledge of humanitarian work needed \u2014 this is a game-dev talk first, with the social impact angle as the lens.", "recording_license": "", "do_not_record": false, "persons": [{"code": "8THBHN", "name": "Aida Navarro", "avatar": "https://talks.godotfest.com/media/avatars/KJTNL7_hG5x9mu.webp", "biography": "Aida is an architect, having graduated with honours from the School of Architecture of Valencia (ETSAV) in 2012. She earned her Ph.D. in Architecture, awarded Summa Cum Laude, from the School of Architecture of Madrid in 2020 with her thesis on virtual spaces, using video games as a case study. Additionally, she holds a Master of Research (M.Res) in Architecture from the School of Architecture of Madrid (ETSAM, 2014) and a Master in Computer Sciences for Video Games from Complutense University (UCM, 2019).\r\n  \r\nCurrently, she holds a postdoctoral position at HEAD Geneva, teaching spatial and virtual design degree and master subjects. Simultaneously, she is part of the project The future of Humanitarian Design, where she is researching how to use tools for the production of virtual space in humanitarian crises across the world, from an architectural perspective.\r\n\r\nHer professional journey encompasses two interconnected paths. On the one hand, she has contributed to architectural practices such as RCR Arquitectes, IDOM-ACXT, and Foster & Partners. She has also collaborated with various video game studios, including C77 Entertainment, the Bafta-winner Herobeat Studios, and Calathea Game Studio. Notably, her work on Inner Ashes, a game addressing Alzheimer\u2019s Disease, earned a PlayStation Talents Award. Also, as a game and level designer she joined Activision-Microsoft, working with the Maps Team at Digital Legends on Call of Duty.", "public_name": "Aida Navarro", "guid": "2edd572e-6e04-50c1-825c-466244c1b856", "url": "https://talks.godotfest.com/godotfest-26/speaker/8THBHN/"}, {"code": "AUDYBD", "name": "Claire Delhomme", "avatar": "https://talks.godotfest.com/media/avatars/DUFR9W_UsvT5up.webp", "biography": "Claire is a technical artist who worked as Lead programmer on the open-source game Amnios.\r\n\r\nDual wielding educations in Game Design & Graphics and Computer Science, she strives to bridge the artistic and technical. She especially likes to come up with solutions to create compelling visuals with simplified pipelines, adapted to smaller teams. She is also a Godot, FOSS and jam enthusiast.\r\n\r\nShe is currently working on Fly Fishing, a 3D swinging platformer made in Godot by a two-person team.", "public_name": "Claire Delhomme", "guid": "b6b58d7e-991a-5d34-a2c2-2d3de2be5dfb", "url": "https://talks.godotfest.com/godotfest-26/speaker/AUDYBD/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/XRDB8E/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/XRDB8E/", "attachments": []}, {"guid": "01074ffd-90a6-5763-9559-ae84663b38e7", "code": "7QH3NL", "id": 70, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/7QH3NL/image_NMXvGNT.webp", "date": "2026-11-04T14:30:00+01:00", "start": "14:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-70-waiting-for-gdscript-rebuilding-a-dialogue-engine-without-c", "url": "https://talks.godotfest.com/godotfest-26/talk/7QH3NL/", "title": "Waiting for GDScript: Rebuilding a Dialogue Engine Without C#", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Our dialogue tool, Yarn Spinner for Godot, has been built on C#, and we love it. Godot's C# support is fantastic. But we wanted every Godot developer to have great dialogue, so we rebuilt the whole runtime in pure GDScript too. Now the same Yarn script runs identically in both. This talk is a joyful tour of how we did it, what it taught us about GDScript, and everything else we learned along the way.", "description": "Much of the GDScript tutorials, documentation, and advice comes from gameplay code. But we got to take it somewhere new: a bytecode virtual machine, protobut, a stack, a variable store and a localisation system. And it was a blast!\r\n\r\nIn this talk we'll cover\r\n- Bringing a C# runtime across to GDScript, and the surprising places each language shines.\r\n- Making GDScript appropriately fast for a job it isn't usually asked to do.\r\n- How typed GDScript shaped the design for the better.\r\n- Plugging straight into Godot's TranslationServer for localisation.\r\n- Parity testing: how we keep two runtimes in lockstep from shared test scripts.\r\n- Why supporting both Godot languages is worth it, and how to do it for your own plugins.\r\n- And more secrets and tips on using Godot for narrative, and building narrative engines!\r\n\r\nYou'll leave with practical patterns for performance sensitive GDScript, a testing approach you can use on any project with two implementations, and hopefully some excitement about what both of Godot's languages can do.", "recording_license": "", "do_not_record": false, "persons": [{"code": "CWDFAT", "name": "Paris Buttfield-Addison", "avatar": "https://talks.godotfest.com/media/avatars/BBXMSW_RGIVHtb.webp", "biography": "Paris is the Creative Director of Secret Lab, Tasmania's longest-running game studio, and Yarn Spinner, the wildly popular narrative game development tool, and is best known for working on Night in the Woods, the ABC Play School games (a 60+ year old Australian kids TV show), and more. He has written more than 25 books for \"For Dummies\" and O'Reilly Media, has a PhD in Computer Science/Human-Computer Interaction, and a History degree.", "public_name": "Paris Buttfield-Addison", "guid": "e7514678-c57d-5ca5-b73d-1db2d7a5680c", "url": "https://talks.godotfest.com/godotfest-26/speaker/CWDFAT/"}, {"code": "PQAVHU", "name": "Dr. Tim Nugent", "avatar": "https://talks.godotfest.com/media/avatars/DSN7XM_weL4Fyd.webp", "biography": "Dr. Tim Nugent is the co-founder of Yarn Spinner, which builds the world's best narrative tools for games at every possible scale. Tim is the co-author of a huge number of books on Unity, Swift, and machine learning, and holds a PhD on information flow in public spaces.", "public_name": "Dr. Tim Nugent", "guid": "dafdc1ed-2ad8-543c-b849-52cd48a5f95c", "url": "https://talks.godotfest.com/godotfest-26/speaker/PQAVHU/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/7QH3NL/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/7QH3NL/", "attachments": []}, {"guid": "a1ce5263-b625-5da5-a1a9-56e970d54f31", "code": "CYQXPS", "id": 45, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/CYQXPS/image_KOnohd2.webp", "date": "2026-11-04T15:30:00+01:00", "start": "15:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-45-using-godot-for-defence-simulators", "url": "https://talks.godotfest.com/godotfest-26/talk/CYQXPS/", "title": "Using Godot for defence simulators", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "In this talk, we will dive into our experiences switching from Unity to Godot when you have customers where Security, IP, and Continuity are critical priorities. \r\n\r\nOur product is a multiplayer shooting simulator developed on Unity and Photon. We will share our experiences finding and evaluating replacement products for all elements, and offer good advice on how to work with large corporate and government IT and procurement organizations to get such a fundamental technical switch approved and successfully implemented.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "8QHAEK", "name": "Kristian Too Andreasen", "avatar": "https://talks.godotfest.com/media/avatars/ZXHYBG_xHzvqWL.webp", "biography": "Coming from a background in Engineering and Computer Science. Kristian has always been fascinated by what happens when Humans meet new technologies. \r\n\r\nKristian is the founder of Kanda, where he is working to reimagine training in Defence and Critical Infrastructure. His focus is on the application of Virtual Reality, but he is equally fascinated by the emerging fields of Artificial Intelligence, Quantum Computing, and Fusion Energy.  \r\n\r\nHailing from the dark and unexplored western part of Denmark. Kristian explores the field of Extended Reality with a healthy dose of utilitarian skepticism.", "public_name": "Kristian Too Andreasen", "guid": "9248c99c-c651-5ce9-ab50-0d69b070dea2", "url": "https://talks.godotfest.com/godotfest-26/speaker/8QHAEK/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/CYQXPS/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/CYQXPS/", "attachments": []}, {"guid": "3884383c-b84f-5119-9a07-16c1483f1f9a", "code": "KJFJWN", "id": 64, "logo": null, "date": "2026-11-04T16:30:00+01:00", "start": "16:30", "duration": "00:50", "room": "Ballsaal", "slug": "godotfest-26-64-you-want-to-add-shaders-to-your-game-here-is-how-you-start", "url": "https://talks.godotfest.com/godotfest-26/talk/KJFJWN/", "title": "You want to add Shaders to your game? Here is how you start.", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Shaders can be scary, but shaders make many things possible.\r\nDuring the talk I'll show various shaders used in production games. \r\nI'll show how to write from scratch your own effects.\r\nStatic VFX, shader based animation, and even gameplay mechanics.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "7SMKMM", "name": "Leszek Nowak", "avatar": "https://talks.godotfest.com/media/avatars/T8CWLX_v5cAeAF.webp", "biography": "Leszek Nowak, a technical artist who trains young creators at Jagiellonian University and co-founder of the studio 0! Crunch Entertainment,\r\nHas already created over 30 titles in his career and is currently working on several commercial projects at once.\r\nHe is an enthusiast of unconventional solutions in games and a fan of details that the sane person will overlooks.", "public_name": "Leszek Nowak", "guid": "b3643e76-e102-552d-8f36-3d050610325a", "url": "https://talks.godotfest.com/godotfest-26/speaker/7SMKMM/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/KJFJWN/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/KJFJWN/", "attachments": []}], "Italien": [{"guid": "78324792-ae01-5578-affd-e0d9d40bf5e3", "code": "QRCMAP", "id": 39, "logo": null, "date": "2026-11-04T10:00:00+01:00", "start": "10:00", "duration": "00:50", "room": "Italien", "slug": "godotfest-26-39-small-team-big-leverage-using-automation-to-build-games-faster", "url": "https://talks.godotfest.com/godotfest-26/talk/QRCMAP/", "title": "Small Team, Big Leverage: Using Automation to Build Games Faster", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Large companies use automation to reduce repetitive work, improve reliability, and help teams move faster. Many of the same ideas can be just as valuable for solo developers and small indie teams\u2014without bringing along the complexity and bureaucracy of a large organization.\r\n\r\nThis talk explores how automated builds, reusable development environments, continuous integration, testing, packaging, and versioned releases can increase development velocity and make ambitious projects more sustainable.\r\n\r\nUsing the multiple open-source Godot projects I maintain as a real-world case study, I will show how automation makes it possible for one developer to support several platforms, dependencies, and release workflows at a scale that would be unrealistic to manage manually.", "description": "This session looks at how solo developers and small teams can adapt proven engineering practices from large companies to gain more leverage from limited time and resources.\r\n\r\nThe talk will cover practical techniques such as automated cross-platform builds, reusable dependency environments, continuous integration, testing, packaging, and versioned releases. It will also explore how tools such as godot-package can download specific versions of GitHub release artifacts, making dependencies explicit and helping projects reproduce known working configurations without unexpectedly breaking users.\r\n\r\nDrawing from my experience building and maintaining large, complex systems in professional software environments, I will show how I applied the same underlying ideas to the growing collection of open-source Godot extensions I maintain. Without automation, supporting these projects across multiple platforms and releases would be impractical for a solo developer.\r\n\r\nThe focus will be on creating simple, repeatable systems that reduce manual work, prevent regressions, and make an otherwise unsustainable workload manageable.", "recording_license": "", "do_not_record": false, "persons": [{"code": "GHXLAU", "name": "Werner Mendizabal", "avatar": "https://talks.godotfest.com/media/avatars/8DHT8B_hurOxlt.webp", "biography": "Werner Mendizabal is a full-time game developer, software engineer, artist, and musician building open-source audio tools for Godot. He is the creator of **godot-csound**, **godot-synths**, **godot-lv2-host**, **godot-vst3-host**, and **godot-distrho**\u2014projects exploring real-time synthesis, audio plugin integration, and interactive audio for games.", "public_name": "Werner Mendizabal", "guid": "303e58e3-e60c-5af0-a202-3c385249c3ba", "url": "https://talks.godotfest.com/godotfest-26/speaker/GHXLAU/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/QRCMAP/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/QRCMAP/", "attachments": []}, {"guid": "2ba2bd94-54d3-54bc-9649-e3aa21707b5d", "code": "MXVUPL", "id": 21, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/MXVUPL/image_j5g0qGS.webp", "date": "2026-11-04T11:00:00+01:00", "start": "11:00", "duration": "00:50", "room": "Italien", "slug": "godotfest-26-21-the-5-phase-game-jam-framework-bringing-structure-to-chaos", "url": "https://talks.godotfest.com/godotfest-26/talk/MXVUPL/", "title": "The 5-Phase Game Jam Framework: Bringing Structure to Chaos", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Game jams are exciting, but they're also chaotic. Many participants lose valuable time, over-scope their ideas, or spend days polishing features that players never experience.\r\n\r\nOver the past five years, I've completed more than a dozen game jams and developed a simple five-phase framework that brings structure to the entire process, from choosing an idea to publishing the final build.\r\n\r\nThis talk walks through each phase of the framework, covering planning, execution, polishing, submission, and post-jam visibility.\r\nRather than focusing on specific tools or engine features, the framework is built around habits and decision-making that work regardless of experience level.\r\n\r\nWhether you're entering your first game jam or your fifteenth, you'll leave with a repeatable process that helps you finish stronger games with less stress.", "description": "Every game jam begins with ambitious ideas, but finishing a polished game requires a lot of decisions under intense time pressure. This session breaks those decisions down into a practical five-phase framework that attendees can immediately apply in their next jam.\r\n\r\n**Phase 1 - Planning:** Turn the jam theme into a unique, achievable game idea, brainstorm effectively, control the scope, and use a one-page \"Mini GDD\" to organise ideas before opening the engine. \r\n\r\n**Phase 2 - Execution:** Learn how to stay productive under pressure by following a clear plan, prioritising the core gameplay loop, keeping mechanics simple, choosing technology that fits the deadline, and knowing when \"good enough\" is the right decision.\r\n\r\n**Phase 3 - Polishing:** Learn how to make a game feel finished by adding impactful feedback, creating intuitive tutorials, and using game juice to make every player interaction feel satisfying.\r\n\r\n**Phase 4 - Finalising:** Avoid last-minute disasters by testing exported builds, planning around the deadline instead of racing it, and learning why I treat uploading several hours early as a non-negotiable rule.\r\n\r\n**Phase 5 - Post-Jam:** Give your game the first impression it deserves by presenting it effectively with compelling screenshots, GIFs, and descriptions that encourage players to give it a chance.\r\n\r\n\r\nThroughout the session, I'll share real examples from my own game jams, highlighting both successful decisions and mistakes that taught valuable lessons, alongside practical techniques attendees can immediately apply in their next jam using Godot.\r\n\r\nWinning a jam is never guaranteed, but consistently finishing polished, enjoyable games is something you can prepare for. This talk is about building the habits and workflow that help you do exactly that.", "recording_license": "", "do_not_record": false, "persons": [{"code": "SREWBB", "name": "Ahmed Alfiki", "avatar": "https://talks.godotfest.com/media/avatars/7CTHHJ_VLPV57K.webp", "biography": "Ahmed Alfiki \"Fiki\" is a software engineer, indie game developer, and content creator from Egypt. After discovering game development during university, he turned that passion into a career after graduating in 2022, while continuing to explore new ideas through game jams. Over the past five years, he has completed more than a dozen game jams and shares his passion through Arabic game development content.\r\n\r\n**Website:** fiki.fun", "public_name": "Ahmed Alfiki", "guid": "21549d4f-d052-5693-bb89-d7431fc5881e", "url": "https://talks.godotfest.com/godotfest-26/speaker/SREWBB/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/MXVUPL/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/MXVUPL/", "attachments": []}, {"guid": "9d812a23-9bb6-5fa3-98e9-14c75cba3fec", "code": "T78FZV", "id": 43, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/T78FZV/image_IWd44Ia.webp", "date": "2026-11-04T12:00:00+01:00", "start": "12:00", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-43-mobile-games-without-the-slop", "url": "https://talks.godotfest.com/godotfest-26/talk/T78FZV/", "title": "Mobile Games Without the Slop", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Mobile games are often associated with aggressive monetization, dark patterns, and disposable experiences. But does mobile really have to be that way?\r\n\r\nI\u2019m Leon, creator of LOOTFALL, a retro-inspired RPG that has grown into a Top 50 iOS RPG in multiple countries, with thousands of daily players and a community that genuinely loves the game.\r\n\r\nIn this talk, I want to share what I\u2019ve learned building and monetizing a mobile game in Godot without relying on the practices mobile games are often criticized for. I\u2019ll also dive into the technical side of building a fairly complex mobile game with Godot, including the tools, systems, and performance challenges involved in using an engine that isn\u2019t always designed with mobile-first development in mind.", "description": "The talk combines three areas: game design, business, and technology.\r\n\r\nI\u2019ll use LOOTFALL as a real-world case study to discuss how meaningful progression, long-term systems, and player-friendly monetization can coexist with a sustainable mobile business.\r\n\r\nOn the technical side, I\u2019ll cover how I built and shipped LOOTFALL with Godot, including mobile performance optimization, memory and loading considerations, handling large amounts of UI and game data, and some of the challenges of using Godot for a relatively complex mobile game when many parts of the engine and workflow are not specifically mobile-first.\r\n\r\nThe talk is aimed at developers interested in mobile development, Godot, sustainable (and fair) monetization, and building games that players want to keep playing (live service).", "recording_license": "", "do_not_record": false, "persons": [{"code": "D8THP8", "name": "Leon Klostermann", "avatar": "https://talks.godotfest.com/media/avatars/XLRRUD_2qkawY5.webp", "biography": "Leon Klostermann is the founder and developer behind LOOTFALL, a mobile RPG built with Godot. As an indie developer, he has grown the game to the Top 50 iOS RPG charts in multiple countries while building a sustainable business around it. He focuses on game development, technical systems, and building mobile games with Godot.", "public_name": "Leon Klostermann", "guid": "cda0b054-b576-5739-8c32-c8d9baabb635", "url": "https://talks.godotfest.com/godotfest-26/speaker/D8THP8/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/T78FZV/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/T78FZV/", "attachments": []}, {"guid": "dd04ab21-d00c-58ec-9ca8-13788054e459", "code": "SPVYA9", "id": 25, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/SPVYA9/image_yE6d8R1.webp", "date": "2026-11-04T12:30:00+01:00", "start": "12:30", "duration": "00:25", "room": "Italien", "slug": "godotfest-26-25-let-s-hear-it-enabling-true-audio-accessibility-in-godot", "url": "https://talks.godotfest.com/godotfest-26/talk/SPVYA9/", "title": "Let's Hear It! Enabling True Audio Accessibility in Godot", "subtitle": "", "track": null, "type": "Talk (short)", "language": "en", "abstract": "Audio accessibility is often treated as an afterthought - or even reduced to a lonely volume slider -while sound design plays a crucial role in gameplay legibility, inclusion and immersion. \r\nThe good news? Some of the most impactful audio accessibility features in Godot take no time to build and cost little to no CPU overhead. So let's hear what they are!", "description": "In this talk, sound designer and gameplay audio programmer Max de Kroon presents a fast-paced practical approach to building accessible audio systems in Godot. We will move from upgrading our basic single-slider settings to actionable techniques like dynamic bus routing, low-overhead EQ profiles, contrast-complete UI feedback and sound customization for the sensitive ears.\r\n\r\nGrounded in real-world production learnings, this session provides a practical checklist of built-in engine features and an open boilerplate that you can immediately implement in your next project to make it playable, audible and enjoyable for everyone.", "recording_license": "", "do_not_record": false, "persons": [{"code": "BXT8XA", "name": "Max de Kroon", "avatar": "https://talks.godotfest.com/media/avatars/73EVYZ_SIzFUj5.webp", "biography": "**Composer**, **sound designer** and **gameplay audio programmer** making adaptive audio systems for indie studios and solo developers. Their work focuses on creating sonic environments that respond dynamically to unique gameplay mechanics, from concept to implementation.\r\n\r\nCurrently, they are working on a range of projects, including a surrealist puzzle experience in VR, a rhythm-based acrobatics game and a procedural documentary on the colonialist gaze.\r\n\r\nBesides game development, Max teaches Digital Literacy to teenagers and kids, using games to introduce students to design and programming logic.", "public_name": "Max de Kroon", "guid": "e583dac4-d79c-5a91-952e-be0ea8f14fc8", "url": "https://talks.godotfest.com/godotfest-26/speaker/BXT8XA/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/SPVYA9/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/SPVYA9/", "attachments": []}, {"guid": "444f0f25-d083-5d8b-aeae-851a3808436f", "code": "LHKY7Z", "id": 13, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/LHKY7Z/image_2xy5qFi.webp", "date": "2026-11-04T14:30:00+01:00", "start": "14:30", "duration": "00:50", "room": "Italien", "slug": "godotfest-26-13-synthesizing-a-flamethrower-from-a-bathroom-sink-diy-sound-design-for-indie-devs", "url": "https://talks.godotfest.com/godotfest-26/talk/LHKY7Z/", "title": "Synthesizing a Flamethrower from a Bathroom Sink: DIY Sound Design for Indie Devs", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "Your game features a devastating, hyper-realistic flamethrower, but your audio budget only covers a glass of tap water. Is that enough? Absolutely.\r\nIn this 50-minute crash course, we will strip away the mystery of professional sound design and explore the bizarre reality of Foley. You will learn the core theoretical principles of how audio functions in games, the accessible tools required to capture it, and the precise processing tricks used to completely transform mundane household sounds. We will walk through a concrete case study where we turn a basic water tap recording into a roaring weapon of mass destruction - giving you the exact knowledge needed to record and design your own custom sound effects without the massive studio overhead.", "description": "Sound design is fundamentally the art of illusion. This session is designed for solo developers and indie teams who want to stop relying on repetitive asset flips and start taking matters into their own hands\u2026 or ears.\r\n\r\nWe will focus on practical takeaways, essential tools, and processing techniques that developers can immediately apply to their situation.\r\n\r\n**What we will cover in this session:**\r\n\u2022\tThe function of Sound: Understanding exactly why we use sound in games (from providing crucial player feedback to guiding attention and simulating a believable reality). \r\n\u2022\tThe setup: A practical look at the essential software (like Reaper or Cubase) and hardware needed to start recording, including understanding microphone polar patterns, managing levels to avoid clipping, and the golden rule of leaving 12dB of headroom. \r\n\u2022\tThe tools: The core of the talk. We will break down the four pillars of sound manipulation:\r\no\tEqualization (EQ): Removing problematic frequencies and sculpting the sound. \r\no\tCompression: Taming dynamic range to make sounds punchy and energetic. \r\no\tReverb: Simulating physical spaces and creating surreal magic effects. \r\no\tPitching/Stretching: Altering the perceived physical size of an object simply by changing its pitch. \r\n\u2022\tCase Study - The Water Tap Flamethrower: A step-by-step breakdown demonstrating how layering and processing techniques can transform the sound of rushing water from a kitchen sink into an aggressive, dynamic flamethrower effect. \r\n\r\n**Target Audience:** Indie developers, programmers, and generalists looking to build foundational sound design skills and elevate their game\u2019s audio quality on a budget.", "recording_license": "", "do_not_record": false, "persons": [{"code": "W8JJWX", "name": "Chris Kohler", "avatar": "https://talks.godotfest.com/media/avatars/LDE9WU_c6XNGIm.webp", "biography": "Chris Kohler is a game composer and audio designer based in Munich. His first commercial soundtrack was for Mindlock: The Apartment, which went on to receive several awards in different categories and was featured by creators including Gronkh, who described its soundtrack simply as \u201cGeile Mukke\u201d (\u201cAwesome music\u201d). Since then, Chris has contributed music and sound design to a variety of projects, including ASHGARD: Infinity Mask and Atomic Age.\r\nHis work across more than 30 released projects focuses on combining handmade sounds with interactive approaches to storytelling. Alongside his work in games, Chris contributes to film and game music productions as an orchestrator and has worked with live orchestras to bring scores from the studio to the stage.\r\nChris also lectures in game audio at the Technical University of Munich, where he introduces developers to the creative and practical role of sound within the broader game design process.", "public_name": "Chris Kohler", "guid": "475e721f-a348-5f0d-90f2-ee2b2c9bdc12", "url": "https://talks.godotfest.com/godotfest-26/speaker/W8JJWX/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/LHKY7Z/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/LHKY7Z/", "attachments": []}, {"guid": "1a187b19-0794-5cd4-bb24-e218b35fb080", "code": "QMGRMW", "id": 40, "logo": null, "date": "2026-11-04T15:30:00+01:00", "start": "15:30", "duration": "00:50", "room": "Italien", "slug": "godotfest-26-40-putting-voices-in-indie-games-a-guide-for-indies-on-a-budget", "url": "https://talks.godotfest.com/godotfest-26/talk/QMGRMW/", "title": "Putting Voices in Indie Games - A Guide For Indies On A Budget", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "I will introduce an outline of the process for putting voice acting in indie games, how to budget for it, what options are available at each step of the process, and tips for directing and handling voice actors, even if you don't know what you're doing. I'll even do a live demonstration!", "description": "Slides: https://docs.google.com/presentation/d/1QlZX8NmsbFAx0y-b-zmXjR0OKapluPx_Mn2QGktf2DE/edit#slide=id.g8b385fd27f_0_0\r\n\r\nI will invite a guest voice actor to do the demonstration with me.", "recording_license": "", "do_not_record": false, "persons": [{"code": "PNHT7X", "name": "Alec Shea", "avatar": "https://talks.godotfest.com/media/avatars/SCUMLV_GZxt2LI.webp", "biography": "Originally from Tasmania, Australia, now living here in Munich, Alec works with both local and international studios on video games and animation, mostly indie but sometimes AAA. As a voice actor/director, he's voiced everything from chickens and cats to gods and monsters to just like... totally normal dudes, and directed/coordinated actors across an even wider range of characters (and languages!). He loves the magic and uniqueness that comes from spontaneous creation, and he tries to both incorporate this into his own work, and encourage others to use it in theirs.", "public_name": "Alec Shea", "guid": "864f415a-6149-50b6-b336-3eb705d40ef2", "url": "https://talks.godotfest.com/godotfest-26/speaker/PNHT7X/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/QMGRMW/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/QMGRMW/", "attachments": []}, {"guid": "b1442be2-0a39-5761-ac52-8359b8cfb50f", "code": "CHMGZR", "id": 28, "logo": "https://talks.godotfest.com/media/godotfest-26/submissions/CHMGZR/image_7vA9UWR.png", "date": "2026-11-04T16:30:00+01:00", "start": "16:30", "duration": "00:50", "room": "Italien", "slug": "godotfest-26-28-cracking-open-godot-editor-what-it-taught-me-about-godot", "url": "https://talks.godotfest.com/godotfest-26/talk/CHMGZR/", "title": "Cracking open Godot Editor: what it taught me about Godot", "subtitle": "", "track": null, "type": "Talk (long)", "language": "en", "abstract": "I spent months inside Godot Editor's source code, rebuilding it into a multi-scene editor called GDstudio. Along the way the editor taught me a lot about Godot itself, and this talk is that story. What is a singleton, really? Why is the whole 3D editor a panel? What is a Node under the hood, and what does all that machinery cost? I bring Tracy measurements to answer that: instantiating just the editor's GUI takes seconds, and the editor is built from the same nodes, Controls and resources your game is. You will leave with practical performance knowledge for your game, and a few what-ifs about where Godot could go next.", "description": "Godot Editor is a Godot app itself, probably the largest one ever written. I spent months rebuilding it into a multi-scene editor with a profiler running the whole time, and this talk is everything it taught me about Godot.\r\n\r\nWe start with why Godot is genuinely useful for the industry, how GDScript and Godot formats like gdshader quietly form an open set of standards, a precious resource we should make good use of.\r\n\r\nThen we crack the editor open. Why is the whole 3D editor a panel? What is a singleton, really? What is a Node under the hood? Objects created in heap space pointing at other objects, talking through signals, enter tree and exit tree callbacks, script override checks along the way. That is a lot of machinery for a separator line in the GUI. Is it good or bad? Let's find out. Tracy measurements: instantiating just the editor's GUI takes seconds, one theme change walks the entire Control tree, and entering or leaving the tree has a cost of its own.\r\n\r\nThe same costs appear in your game, because gameplay logic runs on the same nodes. So there is a practical section: theme, tree lifecycle, and the resource cache, which will quietly load your resource from disk again if you are not paying attention.\r\n\r\nTo close, some what-ifs. What if Godot's data model became an open specification, and anyone could build their own tooling against it? Where could Godot go from there?", "recording_license": "", "do_not_record": false, "persons": [{"code": "UKFQPM", "name": "Zagir Fabarisov", "avatar": "https://talks.godotfest.com/media/avatars/KBPSUQ_4xYzArl.webp", "biography": "C++ software engineer with long years of writing corporate C++ code, now learning and applying performance oriented practices. Using Godot since 2015. Author of GDstudio, a rework of Godot Editor built for improving gamedev UX, and a personal experiment in the performance oriented practices mentioned before.", "public_name": "Zagir Fabarisov", "guid": "dafcd59c-4b13-5da5-bac8-dfeb27544201", "url": "https://talks.godotfest.com/godotfest-26/speaker/UKFQPM/"}], "links": [], "feedback_url": "https://talks.godotfest.com/godotfest-26/talk/CHMGZR/feedback/", "origin_url": "https://talks.godotfest.com/godotfest-26/talk/CHMGZR/", "attachments": []}]}}]}}}