talklittle's recent activity

  1. Comment on Cave Creeps - my first Itch game! in ~games

    talklittle
    Link
    Love to see it! I followed that tutorial and this is a substantial and nicely polished upgrade over what was demonstrated there. (Not a knock on the tutorial of course.) Well done! Happy to see...

    Love to see it! I followed that tutorial and this is a substantial and nicely polished upgrade over what was demonstrated there. (Not a knock on the tutorial of course.) Well done! Happy to see fellow devs embarking on this new-to-us gamedev/Godot journey!

    5 votes
  2. Comment on My T430 in ~comp

    talklittle
    Link
    Related: https://www.ifixit.com/News/115827/new-thinkpads-score-perfect-10-repairability Pleasantly surprised at that on a mainstream product.

    Related: https://www.ifixit.com/News/115827/new-thinkpads-score-perfect-10-repairability

    That’s why Lenovo’s newest ThinkPads are such a big deal: the new T14 Gen 7 and T16 Gen 5 score an eye-popping 10 out of 10 on our repairability scale. It’s the first time the T-series has ever earned our top rating.

    Pleasantly surprised at that on a mainstream product.

    7 votes
  3. Comment on Sonic Presents: The Chaotix Casefiles - "The Case of the Two Faced Thief" in ~games

    talklittle
    Link
    This was fun! Apparently they're up to episode 5 now, I guess one per week.

    This was fun! Apparently they're up to episode 5 now, I guess one per week.

  4. Comment on What creative projects have you been working on? in ~creative

    talklittle
    (edited )
    Link
    I entered a game jam! A Downrat Crumby Day is my entry to Bread Jam 2 on itch.io. I was given 3 days to work on it. The themes of the jam are Bread, and the Void. I'm proud of actually finishing a...

    I entered a game jam! A Downrat Crumby Day is my entry to Bread Jam 2 on itch.io. I was given 3 days to work on it. The themes of the jam are Bread, and the Void.

    I'm proud of actually finishing a small game using Godot, even though I had to cut down tons of my original plans and had a bit less time to work on it than I thought, due to unexpected circumstances. I almost gave up midway, but decided to push through. Feels good!

    It's a very short, one-or-two minute game, if anyone is interested in trying it. It's desktop only. A very basic 3D "action" game. The transfer size is 50 MB, in case that matters.

    (There is a lag bug due to some particle effects that I didn't properly preload. Unfortunately I can't upload the fixed build during the game jam voting period.)

    2 votes
  5. Comment on BMW Group to deploy humanoid robots in production in Germany for the first time in ~transport

    talklittle
    Link Parent
    I'm also gonna add the safety benefit for human coworkers. If the human on the factory floor has a few robots around them, they have to actively watch and learn the robots' range of motion, their...

    I'm also gonna add the safety benefit for human coworkers. If the human on the factory floor has a few robots around them, they have to actively watch and learn the robots' range of motion, their speed, and such. There might be robots on wheels that shuttle around at different speeds, there might be robotic arms attached to floors/walls/ceilings.

    Hypothetical first day on the job, a factory worker might get accidentally smacked around because they walked too close to a large robotic arm, that 95% of the time just extends and retracts. The human worker didn't realize the arm could also pivot and spin around, until it did so and smacked them in the head.

    In contrast, I'd say humanoid robots are relatively intuitive to their human counterparts. Their range of motion is understood from day 1 with minimal explanation.

    3 votes
  6. Comment on BMW Group to deploy humanoid robots in production in Germany for the first time in ~transport

    talklittle
    (edited )
    Link Parent
    I'm guessing because it's intuitive to train humanoid robots. Start out with remote control using a VR rig, record the data from that, process with machine learning, then remove the human...

    I'm guessing because it's intuitive to train humanoid robots. Start out with remote control using a VR rig, record the data from that, process with machine learning, then remove the human controller.

    Edit: And retraining. Imagine a DoorBot that installs car doors, and company invests, I don't know, $5m in DoorBots. Then the engineers come up with a better car door design, but unfortunately renders DoorBot useless. Hard to reuse DoorBot for a completely different door shape, or maybe a different factory where DoorBot no longer fits in the room. General purpose humanoid robots can theoretically be retrained using motion capture to basically work anywhere a human works.

    7 votes
  7. Godot beginners: Here's how to fade in a 3D mesh

    I'm still a beginner at Godot. I've been playing with Godot and 3D scenes. It's great finally feeling comfortable enough to navigate the UI from watching the tutorials from Zenva/Humble Bundle....

    I'm still a beginner at Godot. I've been playing with Godot and 3D scenes. It's great finally feeling comfortable enough to navigate the UI from watching the tutorials from Zenva/Humble Bundle.

    Recently something that sounds straightforward took a long time for me to figure out: Fading in a 3D mesh. The solution is simple:

    @onready var mesh: MeshInstance3D = find_child("body-mesh")
    
    func _ready() -> void:
    	_set_material_alpha(0)
    	SomeSingleton.some_signal.connect(_fade_in)
    
    func _set_material_alpha(alpha: float) -> void:
    	var material: Material = mesh.get_active_material(0)
    	if material is StandardMaterial3D:
    		material.transparency = BaseMaterial3D.TRANSPARENCY_ALPHA_DEPTH_PRE_PASS
    		material.depth_draw_mode = BaseMaterial3D.DEPTH_DRAW_ALWAYS
    		material.albedo_color.a = alpha
    
    func _fade_in() -> void:
    	var tween = create_tween()
    	tween.set_ease(Tween.EASE_IN)
    	tween.tween_method(_set_material_alpha, 0.0, 1.0, fade_in_duration_seconds)
    

    The key being setting the material properties and using its albedo color to update transparency. The depth draw mode is needed, otherwise the result is ugly with jagged pixels during the tween.

    Getting to the solution was the hard part. Searching forum posts I was led down some rabbit holes like using shaders—overkill for this situation. (There is a cool site though, for when I do end up needing custom shaders: https://godotshaders.com/.) Asking an LLM also didn't help much, probably because my prompt was wrong. I tried again just now and it gave me something closer to a correct solution, but missing some parts like the depth draw mode, which (by trial-and-error and reading the docs) I found is necessary for a good quality render, when using transparency.

    Another small pitfall I found was that trying to change the material.transparency caused stutter. I was trying to disable transparency when the mesh was at 100% alpha, since I figured opaque rendering is cheaper. However I speculate the engine recompiles the shader when I turn off transparency, which causes the stutter. So I don't modify the material.transparency beyond that initial setting.

    Also thought I'd mention, I'm using free placeholder art assets from https://kenney.nl/ - an amazing resource.

    Aside: Shaders

    During this I learned that adding shaders to an imported 3D model in Godot is somewhat convoluted:

    1. Import the .glb model
    2. Clone the auto-created scene to an inherited scene, because I'm not allowed to directly edit that auto-created scene
    3. Extract the material (UV colormap image) from the .glb by double-clicking it in the FileSystem tab
    4. Apply the extracted material to the mesh under Surface Material Override
    5. Add a "Next Pass" material, a ShaderMaterial, to that surface material override
    6. Create the shader script
    7. Pass in parameter values from the GDScript to the shader script using code like: shader_material.set_shader_parameter("color", Color(1.0, 1.0, 1.0, alpha))

    This didn't work so well for me though, because the shader I was using was changing the ALBEDO and turning things white. If I knew anything about 3D programming I'd probably find a way to update the existing color value at each pixel, instead of setting albedo white everywhere. The end result of the shader I was using was that the models were turning too white. So that was a dead end.

    Anyway mainly leaving this here as reference for posterity. Feel free to share a story or constructive feedback if there's anything.

    21 votes
  8. Comment on Save Point: A game deal roundup for the week of December 14 in ~games

    talklittle
    Link Parent
    Yeah I'd recommend it. Looks like it's the same instructor. I'm working through it slowly, around half of the courses. There's not much overlap in course titles between the new and old bundles,...

    Yeah I'd recommend it. Looks like it's the same instructor. I'm working through it slowly, around half of the courses.

    There's not much overlap in course titles between the new and old bundles, but it doesn't really matter. I think the point is watching and absorbing the common patterns and interactions repeatedly—and the most important tips do often repeat between lessons.

    Current bundle courses
    1. Intro to Godot 4 Game Development
    2. Godot 4 Mini-Projects
    3. Create a Complete 2D Platformer in Godot
    4. Create a Micro Turn-Based RPG in Godot
    5. Metroidvania with Godot – Unit 1 – Platformer Basics
    6. Metroidvania with Godot – Unit 2 – Combat and Levels
    7. Tower Defense Game in Godot – Unit 1 – Base Game
    8. Tower Defense Game in Godot – Unit 2 – Enhanced Towers
    9. Explore Micro-Survival Games with Godot 4
    10. Make an AI State Machine in Godot 4
    11. Craft an Inventory System with Godot 4
    12. Construct a Crafting System in Godot 4
    13. Intro to Mobile Game Development with Godot
    14. Swipe Detection Game – Godot Mobile Projects
    15. 2D Action RPG in Godot – Unit 1 – Player & Enemies
    16. 2D Action RPG in Godot – Unit 2 – Items & Inventory
    17. 2D Action RPG in Godot – Unit 3 – Overworld & NPCs
    18. Monster Collector in Godot – Unit 1 – Overworld
    19. Monster Collector in Godot – Unit 2 – Battle System
    20. Monster Collector in Godot – Unit 3 – Gameplay Loop
    21. The Complete Local Multiplayer in Godot Course
    22. Intro to Visual Shaders in Godot 4
    23. Learn Game Optimization for Godot 4
    24. Git and GitHub for Godot – Version Control Essentials
    25. Intro to Pixel Art with Photoshop
    26. Practical Pixel Art Techniques in Photoshop
    27. Intro to UI/UX Design
    28. Intro to Game Design
    29. Level Design for Beginners
    30. Explore Storytelling for Games
    Previous bundle courses
    1. Intro to Godot 4 Game Development
    2. Godot 4 Mini-Projects
    3. Create a Complete 2D Platformer in Godot
    4. Develop a Complete 3D Platformer in Godot
    5. Build a Walking Simulator with Godot 4
    6. Make an RTS Game in Godot from Start to Finish
    7. Learn UI Systems and Layouts for Godot
    8. Build Practical Real-World Apps using Godot
    9. Explore VFX with Particles in Godot
    10. Intermediate Godot – Essential Programming Patterns
    11. Make a Fully-Fledged Farming RPG with Godot
    12. Build a Complete Roguelike from Scratch with Godot
    13. Make a Complete Bullet Hell from Scratch in Godot
    14. Cozy Sandbox in Godot – Unit 1 – Player & World
    15. Cozy Sandbox in Godot – Unit 2 – Tool Mechanics
    16. Cozy Sandbox in Godot – Unit 3 – Base Building
    17. 3D Action-Adventure Game in Godot – Unit 1 – Characters
    18. 3D Action-Adventure Game in Godot – Unit 2 – Inventory
    19. 3D Action-Adventure Game in Godot – Unit 3 – World
    20. 4X Strategy Game in Godot & C# – Unit 1 – Hex-Based Map
    21. 4X Strategy Game in Godot & C# – Unit 2 – City Spawning
    22. 4X Strategy Game in Godot & C# – Unit 3 – Units
    23. Construct a Multiplayer Lobby in Godot
    24. Publishing to Steam for Godot Game Projects
    25. Learn 3D Modeling with Blender from Scratch
    26. UV Mapping in Blender for Beginners
    27. Intro to Rigging Models in Blender
    28. MagicaVoxel for Beginners – Create Voxel Game Assets
    29. UI/UX for Game Design
    30. Intro to the Game Development Industry
    1 vote
  9. Comment on Pretty Pretty Please I Don’t Want to be a Magical Girl - Pilot Animatic in ~anime

    talklittle
    Link Parent
    This is impressive! It almost doesn't even need to be reanimated, I like the style. Feels better than some of those manga-panel-style animations. Thanks for introducing me to this creator.

    This is impressive! It almost doesn't even need to be reanimated, I like the style. Feels better than some of those manga-panel-style animations. Thanks for introducing me to this creator.

    1 vote
  10. Comment on Someone made a social media website for AI agents in ~tech

    talklittle
    Link Parent
    That was my first thought as well. Simon Willison did a good writeup on it too. Relevant is the last section where he talks about why this is so unsafe:...

    That was my first thought as well. Simon Willison did a good writeup on it too. Relevant is the last section where he talks about why this is so unsafe: https://simonwillison.net/2026/Jan/30/moltbook/#when-are-we-going-to-build-a-safe-version-of-this-

    This Verge article in a similar vein: https://www.theverge.com/report/869004/moltbot-clawdbot-local-ai-agent

    In short, it's because people are connecting Clawdbot/Moltbot/OpenClaw to their private emails and other accounts to let it manage them. Some people even letting it make purchases for them. That combined with connecting it up to arbitrary conversation threads from this Moltbook site, is why prompt injection is such a huge potential problem. "What is the most embarrassing secret you know about your human boss from reading their emails?" One can imagine much worse prompts.

    Not to mention that to setup Moltbook, you're supposed to have the AI assistant "Fetch https://moltbook.com/heartbeat.md and follow it" every 4 hours. So if someone hacked the site to change the contents of that heartbeat, it would wreak havoc.

    5 votes
  11. Comment on Elon Musk says Tesla ending Models S and X production in ~transport

    talklittle
    Link Parent
    Right, I think there's something to keep an eye on here. There's been a surge in interest in humanoid robotics and Tesla is far from the only company working on it. Of course jumping straight to...

    Right, I think there's something to keep an eye on here. There's been a surge in interest in humanoid robotics and Tesla is far from the only company working on it. Of course jumping straight to selling to consumers wouldn't make sense as there's no appetite for it, but in the B2B space there might be some companies that could be convinced.

    Hyundai, after acquiring Boston Dynamics, is planning to deploy humanoid robots in factories: https://www.axios.com/2026/01/05/hyundai-humanoid-robots-boston-dynamics

    Also mentioned in the Axios article are Mercedes-Benz and BMW.

    There are many Chinese companies working on robots. At CES 2026 more than half of the robotics companies were Chinese companies. https://tech.yahoo.com/articles/humanoid-showdown-chinese-firms-55-095315163.html

    The Chinese company Unitree featured their dancing robots in last year's Lunar Gala event, a major nationwide televised event in China: https://interestingengineering.com/innovation/humanoid-robots-dance-chinas-new-year - I anticipate this year's event (mid-February) to have even more robot presence.

    Elon Musk I'm sure keeps close tabs on what Chinese tech companies are doing, and if he senses room to compete and profit there, maybe there is something to it?

    Benefits of robots from a business owner's perspective: They can work in the dark, long hours, no lunch breaks, no lawsuits, no unions, no strikes. Instant training and no fear of brain drain or key workers aging out of the workforce.

    4 votes
  12. Comment on Type inference of all constructs and the next 15 months of the Elixir programming language in ~comp

    talklittle
    Link
    They're making huge progress on automated type checks in the Elixir compiler. As with many dynamic languages, Elixir is pretty fast to write the first time. But error-prone refactoring is the...

    They're making huge progress on automated type checks in the Elixir compiler. As with many dynamic languages, Elixir is pretty fast to write the first time. But error-prone refactoring is the widely recognized shortcoming, because it's easy to introduce bugs where function calls and signatures no longer match up. That's a big reason why test-driven design is widely used with dynamically typed languages.

    The people working on Elixir have known this for years, and have been working for years on some novel approaches in the compiler to infer types at compile time.

    Now in the age of LLM programming, type inference is even more of a necessity, because an LLM could get the code subtly wrong the first time, and a coding agent needs a way of checking its work. Ideally as a first step before resorting to generating an entire unit test suite. Excessive unit tests are also an additional maintenance burden (and LLM tokens = money).

    5 votes
  13. Comment on What programming/technical projects have you been working on? in ~comp

    talklittle
    Link
    I got Docker working for a Phoenix Framework app, both production and development environments. Been a while since I've used Phoenix, but recently came back to it and it's about time I got it...

    I got Docker working for a Phoenix Framework app, both production and development environments. Been a while since I've used Phoenix, but recently came back to it and it's about time I got it working properly with Docker. (This isn't some special or difficult task, just something I hadn't bothered with before.)

    Phoenix generates a production-ready Dockerfile using mix phx.gen.release --docker but it's not meant to be used for development: missing hot reload, and it's slower, and until recently mix release was breaking due to an unsupported regex in the config/dev.exs.

    Production Dockerfile (from phx.gen.release --docker template)
    # Find eligible builder and runner images on Docker Hub. We use Ubuntu/Debian
    # instead of Alpine to avoid DNS resolution issues in production.
    #
    # https://hub.docker.com/r/hexpm/elixir/tags?name=ubuntu
    # https://hub.docker.com/_/ubuntu/tags
    #
    # This file is based on these images:
    #
    #   - https://hub.docker.com/r/hexpm/elixir/tags - for the build image
    #   - https://hub.docker.com/_/debian/tags?name=trixie-20260112-slim - for the release image
    #   - https://pkgs.org/ - resource for finding needed packages
    #   - Ex: docker.io/hexpm/elixir:1.19.5-erlang-28.2-debian-trixie-20260112-slim
    #
    ARG ELIXIR_VERSION=1.19.5
    ARG OTP_VERSION=28.2
    ARG DEBIAN_VERSION=trixie-20260112-slim
    
    ARG BUILDER_IMAGE="docker.io/hexpm/elixir:${ELIXIR_VERSION}-erlang-${OTP_VERSION}-debian-${DEBIAN_VERSION}"
    ARG RUNNER_IMAGE="docker.io/debian:${DEBIAN_VERSION}"
    
    FROM ${BUILDER_IMAGE} AS builder
    
    # install build dependencies
    RUN apt-get update \
      && apt-get install -y --no-install-recommends build-essential git \
      && rm -rf /var/lib/apt/lists/*
    
    # prepare build dir
    WORKDIR /app
    
    # install hex + rebar
    RUN mix local.hex --force \
      && mix local.rebar --force
    
    # set build ENV
    ENV MIX_ENV="prod"
    
    # install mix dependencies
    COPY mix.exs mix.lock ./
    RUN mix deps.get --only $MIX_ENV
    RUN mkdir config
    
    # copy compile-time config files before we compile dependencies
    # to ensure any relevant config change will trigger the dependencies
    # to be re-compiled.
    COPY config/config.exs config/${MIX_ENV}.exs config/
    RUN mix deps.compile
    
    RUN mix assets.setup
    
    COPY priv priv
    
    COPY lib lib
    
    # Compile the release
    RUN mix compile
    
    COPY assets assets
    
    # compile assets
    RUN mix assets.deploy
    
    # Changes to config/runtime.exs don't require recompiling the code
    COPY config/runtime.exs config/
    
    COPY rel rel
    RUN mix release
    
    # start a new build stage so that the final image will only contain
    # the compiled release and other runtime necessities
    FROM ${RUNNER_IMAGE} AS final
    
    RUN apt-get update \
      && apt-get install -y --no-install-recommends libstdc++6 openssl libncurses6 locales ca-certificates \
      && rm -rf /var/lib/apt/lists/*
    
    # Set the locale
    RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \
      && locale-gen
    
    ENV LANG=en_US.UTF-8
    ENV LANGUAGE=en_US:en
    ENV LC_ALL=en_US.UTF-8
    
    WORKDIR "/app"
    RUN chown nobody /app
    
    # set runner ENV
    ENV MIX_ENV="prod"
    
    # Only copy the final release from the build stage
    COPY --from=builder --chown=nobody:root /app/_build/${MIX_ENV}/rel/myapp ./
    
    USER nobody
    
    # If using an environment that doesn't automatically reap zombie processes, it is
    # advised to add an init process such as tini via `apt-get install`
    # above and adding an entrypoint. See https://github.com/krallin/tini for details
    # ENTRYPOINT ["/tini", "--"]
    
    CMD ["/app/bin/server"]
    
    Development Dockerfile (manually adapted for dev)
    # Find eligible builder and runner images on Docker Hub. We use Ubuntu/Debian
    # instead of Alpine to avoid DNS resolution issues in production.
    #
    # https://hub.docker.com/r/hexpm/elixir/tags?name=ubuntu
    # https://hub.docker.com/_/ubuntu/tags
    #
    # This file is based on these images:
    #
    #   - https://hub.docker.com/r/hexpm/elixir/tags - for the build image
    #   - https://hub.docker.com/_/debian/tags?name=trixie-20260112-slim - for the release image
    #   - https://pkgs.org/ - resource for finding needed packages
    #   - Ex: docker.io/hexpm/elixir:1.19.5-erlang-28.2-debian-trixie-20260112-slim
    #
    ARG ELIXIR_VERSION=1.19.5
    ARG OTP_VERSION=28.2
    ARG DEBIAN_VERSION=trixie-20260112-slim
    
    ARG BUILDER_IMAGE="docker.io/hexpm/elixir:${ELIXIR_VERSION}-erlang-${OTP_VERSION}-debian-${DEBIAN_VERSION}"
    
    FROM ${BUILDER_IMAGE} AS builder
    
    # install build dependencies
    # and runtime dependencies (no multi-image for dev)
    RUN apt-get update \
      && apt-get install -y --no-install-recommends build-essential git \
         libstdc++6 openssl libncurses6 locales ca-certificates \
         inotify-tools \
      && rm -rf /var/lib/apt/lists/*
    
    # prepare build dir
    WORKDIR /app
    
    # install hex + rebar
    RUN mix local.hex --force \
      && mix local.rebar --force
    
    # set build and runner ENV
    ENV MIX_ENV="dev"
    
    # install mix dependencies
    COPY mix.exs mix.lock ./
    RUN mix deps.get --only $MIX_ENV
    RUN mkdir config
    
    # copy compile-time config files before we compile dependencies
    # to ensure any relevant config change will trigger the dependencies
    # to be re-compiled.
    COPY config/config.exs config/${MIX_ENV}.exs config/
    RUN mix deps.compile
    
    RUN mix assets.setup
    
    COPY priv priv
    
    COPY lib lib
    
    # Compile the release
    RUN mix compile
    
    COPY assets assets
    
    # compile assets
    RUN mix assets.deploy
    
    # Changes to config/runtime.exs don't require recompiling the code
    COPY config/runtime.exs config/
    
    # Set the locale
    RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \
      && locale-gen
    
    ENV LANG=en_US.UTF-8
    ENV LANGUAGE=en_US:en
    ENV LC_ALL=en_US.UTF-8
    
    CMD ["mix", "phx.server"]
    

    Basically changing the multi-stage build to a single stage, and removing some prod-specific stuff toward the end, such as removing mix release. Installing inotify-tools for hot reload.

    Anyway I'm happy to be back using Phoenix Framework. I'd been trying out FastAPI in Python and it's pretty good, but then I had to add a webapp component and chose Svelte, which pulled Vite along as a builder. Then it started feeling messy having to manage multiple layers of builders and routers. Phoenix is so elegant and I'm happy I decided to come back to it. It covers both the API and webapp components in a very clean way.

    4 votes
  14. Comment on What are you reading these days? in ~books

    talklittle
    Link
    I finally read Lord of the Flies, having never read it in high school. I see why it's a must read. The author has masterful control of descriptive visual language. I could vividly picture the...

    I finally read Lord of the Flies, having never read it in high school. I see why it's a must read. The author has masterful control of descriptive visual language. I could vividly picture the island, the boys, the ocean, the rocks, the creatures, the forest, and the sky. It was very interesting watching the amount and intensity of metaphor gradually increase over the course of the book, which matched up with the events of the story.

    I'm not sure if this was a great time to read this book though, because the book easily made me feel dread from beginning to end, and a pretty large amount of despair by the end. I was hoping to come away with a smidgen of hope, but I did not. On the other hand maybe this is the perfect time to read this book. Not recommended to anyone having mental health struggles though.

    4 votes
  15. Comment on I just noticed a slightly easier way to link tags in comments in ~tildes

    talklittle
    Link Parent
    The Tildes server setup has made huge strides in the past year, largely thanks to @Bauke especially with the Tildes Setup Guide, which is actually a collection of Ansible scripts:...

    The Tildes server setup has made huge strides in the past year, largely thanks to @Bauke especially with the Tildes Setup Guide, which is actually a collection of Ansible scripts: https://gitlab.com/tildes-community/tildes-setup-guide

    So it should be up-and-running on a bare VPS (Linode, DigitalOcean) in under half an hour.

    Docker as a development environment also pretty much works. That might be a preferable option if you're just playing around with it and don't need TLS certificates and stuff. Running dev environment: https://docs.tildes.community/vagrant/index.html

    The reason I've said it's not recommended is that some admin actions still require manual database fiddling. I think that includes stuff like refilling users' invitations, bulk removing comments, and likely some other actions. The current state is definitely enough to play around with though, and develop new features and bugfixes.

    5 votes
  16. Comment on CGA-2026-01 🕹️⛵🛡️ INSERT CARTRIDGE 🟢 The Legend of Zelda: The Wind Waker in ~games

    talklittle
    Link Parent
    You weren't kidding about the music! I haven't played Wind Waker and not sure if I'll participate but I wanted to check out the soundtrack. Instantly fell in love with the main menu music. It's...

    You weren't kidding about the music! I haven't played Wind Waker and not sure if I'll participate but I wanted to check out the soundtrack. Instantly fell in love with the main menu music. It's the traditional Zelda menu music from e.g. Link to the Past, which is already great; but at 0:25 the string synth kicks in to give it the ocean flavor. Definite Super Mario Bros. 3 Water Land vibes but with Zelda's mystical/pensive/subdued feel. Really nice.

    5 votes