Wednesday, April 1, 2026
c1a56429-09a8-46f2-8e4a-9cb0043bcfe5
| Summary | ⛅️ Light rain starting in the afternoon. |
|---|---|
| Temperature Range | 12°C to 19°C (53°F to 65°F) |
| Feels Like | Low: 48°F | High: 64°F |
| Humidity | 73% |
| Wind | 12 km/h (7 mph), Direction: 84° |
| Precipitation | Probability: 99%, Type: rain |
| Sunrise / Sunset | 🌅 06:35 AM / 🌇 07:08 PM |
| Moon Phase | Waxing Gibbous (48%) |
| Cloud Cover | 75% |
| Pressure | 1013.23 hPa |
| Dew Point | 50.47°F |
| Visibility | 5.53 miles |
I made a small physics simulation with just balls as practice. I had used a basic velocity system (dedicated velocity variable), and while it worked, I had clipping problems with balls moving against each other. No matter what I did, be it doing Fixed Updates with sub steps, adding more collision checks, adjusting my FixOverlap function, the problem persisted...Until I simply switched to Verlet Integration and it all worked perfectly. I've been trying to understand this but I genuinely just can't, and I don't like plugging in a solution and not understanding it.
Should i send full version keys instead of demo to content creators 1 month before full release? I don’t know if it makes sense but i need some suggestions and i need your experience about marketing guys!
Heyy
So, I’m a game artist who graduated with a degree in digital games and multimedia in 2024, and I’ve been searching intensively for any job opportunities over the past 18 months, but without success. We all know what the industry is like right now, right?
I’ve wanted to work in game development since I was 12, and I’m not willing to give up now. That’s why I’ve decided to become a freelancer.
My question is: is there any platform you’d recommend where I can showcase and try to sell my work? I know about Fiverr, but I don’t like the fact that I can’t charge by the hour, because it’s unfair to both me and the client, and Upwork seems like a scam to me… like, why do I have to pay to MAYBE get paid, and then a big chunk of my pay goes to the platform anyway??
I’d really appreciate some advice on this!
I have no plan, no game design document just a bunch of systems I've built.
Everyday I think "what do I feel like adding today" and I do it.
The project is loosely based on another game so I'm not completely flying with no direction but it sure bloody feels like it.
I'm just hoping that the next "system" that I add will make it fun.
Might have to buy a pen and one piece of paper 🤣 write something down.
I've noticed a lot of posts recently about looking to join/start co-op game dev studios. I've always wondered how feasible it'd be in the game industry and just watched some speakers from GDC on it as well. Which was interesting because in the presentation was Motion Twin, a co-op known for Dead Cells; but in the same presentation was The Glory Society who unfortunately cancelled their game and never got off the ground. What's your take? Is this just anecdotal? Is there any real data that supports the legitimacy of co-op game dev studio?
Hi all,
I have started developing a little Godot game and was wondering what people use to create sound effects?
I know there are royalty free packs and stuff like eleven labs (meh) but I would like try to generate some of my own. I am not trying to be the next Hans Zimmer, just have it in my hands how my beep boops should sound.
I am aware of LMMS but it appears most videos on Youtube regarding game tutorials are more geared towards game music. I feel effects should be simpler.
So my question is. How do you guys handle it? And do you maybe have some good tutorials?
Thank you!
So I have recently created plushies named that simply after scanning either their NFC tag or the QR code on them, you will get a virtual version of them, which at same time serves as key to access the game. The game is location based, so you can fight plushies of your locals virtually if they own one too. However my issue is I do not get much view on my promotion videos and edited videos. What would you suggest?
Hey folks!
We're a 2-person studio: me as dev, my partner as artist. Self-funded by building software for other companies so we can pay the bills while we try to make our own games.
March 17th we launched the Steam page of our first game: Commitment. Today is the 2-week mark, and we managed to reach 120 wishlists during that time.
Here you can see the daily wishlists and the lifetime wishlists.
The first day was basically us sending the Steam page link to friends & family via WhatsApp, and creating a post on Bluesky. Since we don't have followers and not a lot of friends have a Steam account, we didn't achieve much.
Second day, a freelance artist we worked with to help us with the pixel art (DenPixelArt) was streaming on Twitch and talked about the game & showed some of the work he did, so that explains the first "big spike".
The following week I wrote a couple of posts on Reddit, without much impact on wishlists. Also shared the game in a couple of Discords servers related to gamedev.
March 27th my partner created a post on her Instagram art account. Since she has more followers there than I have on Bluesky, that caused the second "big spike" on the wishlists.
I know that by market standards (source), we are in the "Underperforming" bucket and we don't have enough numbers to even think about making a profit.
However, I was expecting much less. It's our first game, we don't have an audience or many followers, there's no demo to show, and we haven't done even 10 posts across all social platforms. And yet, 120 people have seen the game, watched our trailer, looked at the screenshots, decided they were somewhat interested, and added it to their wishlists.
Remove 20 of them for family & friends. That's still 100 (one hundred!) people in two weeks. For me, that's a lot and more than I expected.
Also, I've been receiving amazing comments from people outside my inner circle: devs I've never met who say they see their own experience reflected in the world I'm building, people asking to be notified once we have a demo ready, non-gamers saying they love the art syle and wanna play as soon as it releases... I don't know if it'll ever sell enough to cover the art, music & localization we've commissioned, but I'm genuinely happy with the launch and very motivated to keep working on the game.
The focus right now is building a demo and seeing how that goes.
I know these are not very impactful numbers, but these are the numbers we have. I hope it can help other indie devs that are starting their journey. Not everyone can achieve +10k wishlists the first week after release, but that does not mean your game is bad. Or maybe it is! But for me the important thing is to enjoy the process of building something that didn't exist before, that people can play, and keep making games and improving in the process!
Hiya! We are working on a game called Whack-A-Monster. We released the demo to the public about 2 months ago and it went quite well! We got about 7k plays in the first week and ~500 wishlists(sitting at about 1100 currently).
We just released our second major update to the game and are surprised by how well it is doing. Usually you wont get a bigger spike than your launch spike without any big youtubers playing the game or other outside traffic inflow. We got onto New & Popular though and have already surpassed our initial spike when traffic started picking up today!
The initial launch had about 1.9k plays on the first day. We have 8h left of today and are already at 2.1k currently.
We're not super sure what caused it but my guess is Major update launch + Reddit posts?
I think the small bump that the reddit posts along with the mails itch sent out might have made the algorithm pick us up again?
Anyway wanted to share a takeaway from this: Even after periods of super low traffic ~5 plays a day. If you had any kind of initial success, keep going!
Don't drop your demo and expect magic to happen. Keep pushing out cool stuff and do some soft marketing on the side. It appears to really be able help out!
Curious how you guys think about mouse support? My game has a terminal-based loop where you type commands to start certain actions/sequences (although some parts of the game happen in the terminal but have more basic choices between boxes). Anyways, I have a little bit of noise on my playtest with some players asking quite prominently for mouse support.
In some cases its about the main menu, and I'm working on adding that. However, when it comes to the main gameplay I'm a bit on the edge. On the one hand, I can see why some folks would prefer that, on the other its quite a bit of work on my end + it would create this weird game flow where you type commands on the keyboard in some parts and then break out of it to click stuff with the mouse.
One thing I'm tempted to do is to create a setting where you can switch between the terminal (most immersive experience) and a "mouse-assisted" play where you can do everything with the mouse (terminal becomes a list of choices instead), this would also make the game accessible on steamdeck & console if I decide to go there one day
Anyway, I know there is no right answer, but curious if anyone faced a similar problem in their game? Any advice?
They automatically add all of their tracks to Youtube content ID, so as soon as someone is going to upload your game and it contains one of these tracks, the uploader won't be able to monetize the video.
I've learnt this the hard way :(
Same goes for your trailer; if you hope to have it reposted by IGN or whatever, make sure it doesn't contain any track that could prevent them from monetizing it or it's less likely that they will repost it.
If you work with a video editor, enquire where they source their tracks. You can also upload a video with the track privately on your channel and wait 24h to see if you get a notice that the video can't be monetized.
I've used tracks from pond5 in the past that seemed Youtube safe. Do you know of other places to source quality tracks that Youtube safe?
For context, I’ve been working for ~6 months in my first studio role in the UK (joined through a graduate scheme straight out of uni). I was originally due to be offered a junior programmer role at the end of the scheme, but about a month ago the company announced major restructuring and layoffs, putting most of our roles (including mine) at risk.
Because of that, we were encouraged to update our CVs and apply elsewhere, which I’ve been doing. I’m currently in interview processes with a few other studios.
At the same time, some senior team members advocated strongly for me internally, and the company essentially created a role for me to stay on. I’ve now been offered that position, which I’m really grateful for.
Here’s the dilemma:
• Two of the other studios I’m interviewing with would require relocation, so I’m less interested in those now (though I’ll likely continue for interview practice)
• One of the studios, however, is a highly respected AAA studio in London (where I already live), and the studio is a big aspirational one for me and offers better pay
• I’ve just completed the first interview with them and have been told I’m progressing, but it’s still early (likely 2 more stages)
The issue is that my current company needs my decision on their offer by tomorrow.
I know it would be risky to turn down a guaranteed offer for something uncertain, so I’m leaning toward accepting. But I’m worried about what happens if I do receive an offer from the AAA studio a few weeks later.
Given that:
• The UK games industry is relatively small and reputation matters
• My current company has gone out of their way to support me and keep me on
Would it be considered burning bridges to accept the role, then leave shortly after if a better opportunity comes through?
I want to prioritise my long-term career growth (especially this early in my career), but not at the cost of damaging relationships or my reputation.
Would really appreciate any insight from people in the industry, especially from a UK perspective.
Hello! I've been working in game dev since 2014, with many shipped titles under my belt on multiple platforms. For the past 7 years, I've been teaching postsecondary and thought it was my forever career. Turns out I'm pretty good at it: no negative reviews ever, tons of course opportunities, etc.
However, it has become obvious lately that I am nothing more than a contractor at these schools, and a full time/tenure position is never coming. So, I am looking to go back to working on games.
Here's the thing: I've been working in games for a long time, but I haven't worked on an actual commercially released game in 4 years.
I have applied to jobs I am qualified for, but no bites at all. The reason I'm posting is to see if there is anyone else in here with a similar story, and if they have any advice for me. It would be very appreciated.
https://reddit.com/link/1s97dah/video/ox18lmxbkhsg1/player
Just wanted to share my first rust game dev experience. I am making an incremental crypto trading game where you mine edgecoin by guessing hashes and playing the market. Hashes are easy to find with some wordle mechanics and or brute force. Once you sell enough you buy autominers, which as you can see slowly search for a hash. Eventually I will be adding things like upgrades for the autominers and whatever else scope creep demands. This is just suppose to be a small experimental project though.
Obviously not even an alpha, but I thought it was fun making what I have so far without the help of a game engine, and can't wait to continue working on it.
| submitted by /u/tilde35 [link] [comments] |
Hey r/rust! I built buzz because Windows has no built-in caffeinate command.
I've been annoyed that Windows has no built-in `caffeinate` command like macOS.
So I built one.
**buzz** — a single-binary CLI tool (~200 KB) that prevents Windows from sleeping.
What it does:
- Keep system awake: `buzz -i`
- Keep screen on: `buzz -s`
- Human-readable timers: `buzz -s -t 2h`
- Run a command while awake: `buzz -s cargo build --release`
- Watch an existing process: `buzz -w <pid>`
- Defeat corporate screen lock: `buzz -s -u`
- Process-tree kill via Win32 Job Objects
- Instant exit detection via WaitForSingleObject
Technical details:
- Uses SetThreadExecutionState + SendInput
- Hand-rolled arg parser (no clap), 2 crate dependencies
- 67 tests (45 unit + 22 integration)
- ~200 KB single binary
Install: `scoop bucket add buzz https://github.com/mahajandhruv26/buzz && scoop install buzz`
Would love feedback on the code and architecture.
just open-sourced orellius-orchestration, a desktop orchestrator for parallel AI coding agents: github.com/Orellius/orellius-orchestration
built the backend in Rust via Tauri 2.0. want to share why that mattered, because it wasn't performance.
the app coordinates up to 120+ agents running in parallel. each agent has a worktree, a file ownership claim set, a cost counter, and phase state. all of this lives in shared state that gets mutated constantly, agent spawns, completions, failures, ownership transfers, cost accumulation per token stream. in a Node or Python backend you'd probably reach for a global object with a mutex and call it done. in Rust, the borrow checker won't let you be sloppy.
during dev it caught three real races before they ever ran. one was a classic TOCTOU on the ownership registry, we'd check if a path was owned, then assign it, with a window where another agent could claim it in between. another was a cost counter that was being read for the budget check and written from the token stream handler without proper sync. the third was messier, a phase lock that could be released before all agents in the phase had actually flushed their state.
none of these would've crashed immediately in a GC'd language. they'd have shown up as occasional wrong behavior under load, the kind of bug that's annoying to reproduce and annoying to fix.
Tauri 2.0 specifically: the command system (Tauri commands bridging Rust to the frontend) is cleaner than v1 was. state management via Tauri's managed state + Arc<Mutex<>> works fine for this use case. the IPC overhead is negligible compared to agent execution time.
what Rust didn't help with: the merge logic for git worktrees. that's just a hard problem regardless of language.
AGPL-3.0, feedback welcome.
After seeing some posts regarding struggles with verbose winit setup, I wanted to share some code I put together for single-window applications: winit_single
This should work for desktop devices as well as web. If your browser supports WASM, you can try it out here: WGPU Boids Example
Hopefully this is useful to others! Next up will be my 3D graphics API.
Hey everyone!!! :)
I made a small Windows app called MoonTranslator and wanted to share it here.
The idea came from how stupid DeepL became :sob:
With this, you just highlight text anywhere ( Discord, browser, Word, etc. ), press Ctrl+C twice, and popup shows the translation right there.
You can also edit the translated text and press "Replace" to put it back into whatever you were typing in.
It's built with Rust and Tauri so it stays pretty lightweight. By default it uses Google and Bing so no setup is needed, but you can add DeepL / LaraTranslate or your own API if you want.
It's free and open source: https://github.com/noxygalaxy/MoonTranslator
Run benchmarks anywhere in your codebase and integrate performance checks directly into your cargo test pipeline.
Highlights
Feature
POSIX clearly states that malloc realloc and free are not async-signal-safe meaning they must not be called from signal handlers because they may use internal locks or inconsistent global state
Rust’s core dynamic containers such as Vec and String allocate memory through the global allocator which on most Unix systems ultimately calls malloc and free
If these allocation functions are not signal-safe why does Rust rely on them underneath Vec and String even though this means those types cannot be safely used in signal handlers?
https://github.com/museslabs/stochos
Stochos is an OSS alternative to mouseless.click that lets you control your mouse entirely from the keyboard.
The way it works: trigger the overlay, type a two-key combo to jump to a grid cell, optionally refine with a sub-grid key, then act (click, scroll, drag, etc).
What makes it different from similar tools
Most keyboard-mouse tools run as long-lived daemons. Stochos is a one-shot app, you bind it to a key, it runs, you act, it exits. No background process.
It currently supports Wayland via wayland-client and X11 via x11rb crates. If you want to add support for other platforms, contributions are welcome.
Live demos (run in your browser): canvas_waves | exabind
I've been working on beamterm, a Rust library for rendering terminal grids on the GPU. It targets both OpenGL 3.3 and WebGL2 from a single codebase via glow. The 1.0 release has now been published.
beamterm is a rendering library; it started out as the basis for Ratzilla's WebGL2 backend with the goal of consuming as little CPU time as possible, even for full-screen refreshes on very large terminals. You feed it cell data (glyph, styling + fg/bg colors), beamterm renders it on the GPU. Pair it with whatever VT parser or data source you want; vt100, Ratatui, your own game UI, etc. There's also a TypeScript API for browser integration.
How it works:
u64 bitmask tracks dirty regions so only changed chunks get uploaded each frameHow fast:
On a 2019-era i9-9900K / RTX 2070, a full 45,000-cell grid (426x106) renders in under 1ms. The included terminal-emulator example (PTY + vt100) holds its own against established terminals in vtebench and kitten __benchmark__ --render, leading on cell rendering throughput and raw data processing.
MIT licensed. Happy to answer questions about the rendering approach, architecture, or anything else.
Article discussing rust in OSDev, why it might be superior to C in many aspects.
I personally think we will see a lot more interest in Rust especially in the kernel space and hobby operating systems using it.
Would also really suggest this one if you're interesting in rust osdev:
https://os.phil-opp.com/
Hi everyone,
I’m curious about the design philosophy behind Rust’s struct update syntax. While I understand the current rules, the syntactic restriction feels counter-intuitive to the logical flow of data.
When we use ..Default::default(), the logical intent is often:
"Start with a default base, then apply my specific overrides."
I have a few specific questions regarding the current design and its future:
Logical Consistency: If the "base" (Default) is technically the first step in constructing the full state, why is it syntactically forbidden to put it at the beginning? Even if we dropped the .. prefix for the first position, wouldn't { Default::default().., a: 1 } be more intuitive?
Addressing the Root Cause: Other patterns (like the builder pattern) feel like they are just "avoiding" this syntax limitation rather than "solving" it. If the current style is meant to be this restrictive, is there any talk of deprecating it or making it more flexible?
Reverse Evaluation & Future Possibility: This is my main curiosity—is there any chance the language could change to allow the .. syntax to be placed at the end but act as a fallback? Meaning, could it be possible to have the explicit fields evaluated first, and then have ..Default::default() fill in ONLY the remaining gaps without overriding what was already set?
Roadmap: Is the current "end-only" rule considered a permanent fixture of Rust’s syntax with zero chance of changing in future editions?
To me, the current restriction feels like it contradicts the way we mentally model object construction. I’d love to know if this is a hard technical limitation (like parsing ambiguity) or a deliberate choice that the lang team doesn't intend to revisit.
Thanks for your insights!
Note: I used an AI tool to help translate my thoughts from Korean to English to make sure the technical nuances are clear.
TL;DR: Why is ..Default::default() syntactically forced to the end when it's logically the first step? Is there any chance this will change or allow "fallback" behavior in future editions?
hi folks!
A year ago I made a chrome extension that adds syntax highlighting to Go docs.
After publishing it, I made a post on this subreddit. The extension got a lot of users and nice warm feedback, and it’s still being used to this day. So I figured i'd share it again after a year in case anyone wants to try it :)
https://chromewebstore.google.com/detail/gnjbljgafdodjjghebkhamgcikmkkhej?utm_source=item-share-cb
Hello guys, i was wondering apart from the documentation is there any other great resource to learn echo ?
| I kept joining projects where the architecture diagram was either outdated or didn't exist. I always wondered how do you keep diagrams in sync with actual code? So I tried building a VS Code extension that scans your Go code and detects your Gin, Echo, Chi, Fiber routes, gRPC service definitions, Kafka and RabbitMQ producers/consumers, and WebSocket handlers. It also supports .NET, Node.js, Python, Spring Boot, and Rust — so if your Go services talk to non-Go services, it maps those connections too. Just open your workspace and build your architecture map on a canvas. Free, local, no data collection. I named it MeshGraph — would love feedback from Go devs :) [link] [comments] |
| submitted by /u/der_gopher [link] [comments] |
was trying to mimic something like Claude Code, using Go, but I hit a huge wall. I didn't think about the unreliable outputs of LLMs. You define a specific JSON schema, and the LLM hallucinates and outputs corrupt or irrelevant JSON that will make the CLI crash or stop. I forgot how strict Go is when it comes to data types.
I'm curious to ask if there any solution for this or any theories or plans to solve this issue.
I generated a small go playground space to experiment with a BWT Burrows-Wheeler transform driven text obfuscation technique. The BWT is a reversible transformation, for our purposes you can just imagine as something that shuffles each letter in a string around to a produce a unique string that can transform back into the original. To simplify, "abc" going into BWT can only produce those characters in the return (abc, acb, bac, bca, cab, cba). Whatever the resulting string, the reverse BTW transform will reproduce "abc". It can be considered a letter-positional transformation cipher.
I've chosen my favorite English test phrase:
The quick brown fox jumps over the lazy dog.
For my approach, I wanted to preserve whitespace and punctuation of the sentence, while transforming the rest. I printed the encoded string in the playground:
glk iyhhv notTu xce uwdsr fmeb epr qjoo oza.
As you see, all the characters of the original string are preserved, in their case, and punctuation is here to give us help with decoding this string. For fun you can think of reversing the encoding as some kind of letter based sudoku.
T first,The,As the return is not trivially reversible, it takes a little bit of time for the human to solve this particular sudoku.
ChatGPT (gpt-5.2 mini) solved it with some re-prompting. It first hallucinated 4-5x before given more hints (BWT hint, spacing preserved, punctuation placement preserved, word lengths preserved) that basically state how the text is encoded from the original.
Given enough context, it finally arrived at the correct result and explained the phrase is a classic pangram.
It's one of the strange examples, reverse-BWT is possible with LLM models without needing to write or evaluate code. The LLM can be a great big dictionary lookup if you want to use "reasoning" to work against problems. I did not expect it to successfully decode the text without an execution sandbox. Definitely did it faster than I would have by hand or code.
I'm creating multiformat format converter to one format, let says all used in user system graphic formats to JPG. I can use switch based on extension to choose how convert file. Is it better more idiomatic way to construct code or switch is preferable at this kind of problem? What construct can be more optimal to maintain, extend and use in long term based on your experience in place switch (number of formats up to 20)?
| Hello, I wanted to share a small Go cache library I’ve been working on for the last couple of months. At work we had a case where we wanted to cache some particular objects, but we really did not want to end up serving stale data just because requests overlapped in the wrong order. The main problem we had was typical invalidation and races problem.
I ended up build something myself in my spare time. The library is called CasCache. What it basically does is instead of treating cache writes as unconditional, it keeps authoritative per-key version state. You snapshot the version before doing work and when you try to write, the cache checks whether that version is still current. If yes, the write lands. If not, it gets rejected. Reads also recheck freshness before serving a cached value. This cache does not state “you will never get a stale value ever” so couple of points worth pointing out:
What it does instead is more like:
CasCache supports both in-memory caches like Ristretto, BigCache and also Redis if you want to share the same store between multiple containers, pods, services. You can have in-memory cache and share versions via redis or just use redis for both storing versions and values. There is also batch support, but freshness is still checked per member. Simple example: In v3 I switched the versioning model from generation counters to fence tokens, which I think made the whole thing cleaner. A cached value is valid only if its fence still matches the authoritative fence for that key. [link] [comments] |
Playable via https://kennyhoang-cs.itch.io/bullet-hell-demo
Let me know your thoughts!
Keyboard required, mobile friendly UI not implemented yet.
I made a terminal pager in Go and wrote up some of my learnings. The core functionality is embedded in a reusable `viewport` component suitable for use in any Bubble Tea TUI - I use it in my Kubernetes log viewer https://github.com/robinovitch61/kl as well.