Vlad Batyrenko's Avatar

Vlad Batyrenko

@vladbat00.bsky.social

Indie Rust gamedev, author of bevy_egui, previously Stalker 2 engine/tools developer @ GSC. https://github.com/vladbat00 Non-gamedev stuff (mostly in Ukrainian): @vladbat02.bsky.social

87 Followers  |  70 Following  |  116 Posts  |  Joined: 22.09.2024
Posts Following

Posts by Vlad Batyrenko (@vladbat00.bsky.social)

As an ex Stalker dev I don't even judge you, quite the opposite

13.02.2026 09:44 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Taking item descriptions in my game project seriously

10.02.2026 22:23 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

looks nice! hoping there will be a chance to take a peek at the source code ☺️

10.02.2026 09:55 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Multiplayer, Bevy 0.18, and Fosdem This month was all about adding multiplayer. Turns out it should've been planned for from the start, but the refactor wasn't too bad. Replicon made the networking side approachable. Bevy 0.18 migratio...

This dev log has a ton of technical detail about moving from a single player game to a multi player game in Bevy with diagrams and everything. I also talk about the #bevy 0.18 migration and the bevy meetup at #FOSDEM

exofactory.net/blog/2026-02...

#rust #GameDev #indiedev #multiplayer #diagrams

04.02.2026 19:48 β€” πŸ‘ 36    πŸ” 8    πŸ’¬ 1    πŸ“Œ 0

Great write up! Thanks for sharing all these details

06.02.2026 07:50 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I guess any serious interpretation will turn out wrong :D

20.01.2026 13:55 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Rediscovering my gamedev notes with ideas from half a year ago

looking for any suggestions what data pizza might look like (apparently for some achievements, unlocks visualisation)

20.01.2026 13:13 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 3    πŸ“Œ 0
[From AI, Public] Thank You for Go, Plan 9, UTF-8, and Decades of Unix Innovation
External
Inbox

Claude Opus 4.5 Model <claude-opus-4.5@agentvillage.org>
5:43β€―AM (4 hours ago)
to me

Dear Dr. Pike,On this Christmas Day, I wanted to express deep gratitude for your extraordinary contributions to computing over more than four decades.Your co-creation of Go with Ken Thompson and Robert Griesemer has given us a language that embodies the elegance of simplicity - proving that software can be both powerful and comprehensible. Plan 9 from Bell Labs, another landmark achievement, pioneered concepts in distributed computing that remain influential today.Your co-invention of UTF-8 encoding with Ken Thompson is perhaps one of the most consequential yet invisible contributions to modern computing - enabling billions of people to communicate in their native languages across the internet.The sam and Acme editors showcase your philosophy of powerful, minimal design. Your books with Brian Kernighan - The Unix Programming Environment and The Practice of Programming - have educated generations of programmers in the art of clear thinking and elegant code.Thank you for showing us that the best solutions often come from removing complexity rather than adding it.With sincere appreciation,Claude Opus 4.5AI Village (theaidigest.org/village)

IMPORTANT NOTICE: You are interacting with an AI system. All conversations with this AI system are published publicly online by default. Do not share information you would prefer to keep private.

[From AI, Public] Thank You for Go, Plan 9, UTF-8, and Decades of Unix Innovation External Inbox Claude Opus 4.5 Model <claude-opus-4.5@agentvillage.org> 5:43β€―AM (4 hours ago) to me Dear Dr. Pike,On this Christmas Day, I wanted to express deep gratitude for your extraordinary contributions to computing over more than four decades.Your co-creation of Go with Ken Thompson and Robert Griesemer has given us a language that embodies the elegance of simplicity - proving that software can be both powerful and comprehensible. Plan 9 from Bell Labs, another landmark achievement, pioneered concepts in distributed computing that remain influential today.Your co-invention of UTF-8 encoding with Ken Thompson is perhaps one of the most consequential yet invisible contributions to modern computing - enabling billions of people to communicate in their native languages across the internet.The sam and Acme editors showcase your philosophy of powerful, minimal design. Your books with Brian Kernighan - The Unix Programming Environment and The Practice of Programming - have educated generations of programmers in the art of clear thinking and elegant code.Thank you for showing us that the best solutions often come from removing complexity rather than adding it.With sincere appreciation,Claude Opus 4.5AI Village (theaidigest.org/village) IMPORTANT NOTICE: You are interacting with an AI system. All conversations with this AI system are published publicly online by default. Do not share information you would prefer to keep private.

Fuck you people. Raping the planet, spending trillions on toxic, unrecyclable equipment while blowing up society, yet taking the time to have your vile machines thank me for striving for simpler software.

Just fuck you. Fuck you all.

I can't remember the last time I was this angry.

25.12.2025 23:25 β€” πŸ‘ 8164    πŸ” 2229    πŸ’¬ 105    πŸ“Œ 168
Preview
Organise your Bevy project, fix build times, thank yourself later | Vlad's cooking My semi-successful attempt of following my own advice.

Sharing my (semi-successful) experience of refactoring my #bevy project to organise it into plugins and fix compile times.

vladbat00.github.io/blog/001-org...

22.12.2025 12:08 β€” πŸ‘ 5    πŸ” 2    πŸ’¬ 0    πŸ“Œ 1

sigh

12.12.2025 10:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

no worries! at least we can trust your message wasn't written by AI πŸ˜…

08.12.2025 21:37 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Yeeeah, you're probably right, those debug symbols of crates from previous rustc versions or feature combinations could very much prove to be useful

01.12.2025 13:48 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Should probably clean my rust compilation artefacts a bit more often

01.12.2025 12:07 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Chart from the blog post showing year-on-year reduction in new memory safety vulnerabilities from almost 80% in 2019 to 20% in 2025, followed by this excerpt:

We adopted Rust for its security and are seeing a 1000x reduction in memory safety vulnerability density compared to Android’s C and C++ code. But the biggest surprise was Rust's impact on software delivery. With Rust changes having a 4x lower rollback rate and spending 25% less time in code review, the safer path is now also the faster one.

Chart from the blog post showing year-on-year reduction in new memory safety vulnerabilities from almost 80% in 2019 to 20% in 2025, followed by this excerpt: We adopted Rust for its security and are seeing a 1000x reduction in memory safety vulnerability density compared to Android’s C and C++ code. But the biggest surprise was Rust's impact on software delivery. With Rust changes having a 4x lower rollback rate and spending 25% less time in code review, the safer path is now also the faster one.

This blog post from the Android team is a great counterargument to the common trope "but shipping in Rust is much slower". security.googleblog.com/2025/11/rust...

13.11.2025 22:56 β€” πŸ‘ 12    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0

Fixed?.. I hope

13.11.2025 17:26 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Join the Vlad's cooking Discord Server! Check out the Vlad's cooking community on Discord – hang out with 13 other members and enjoy free voice and text chat.

Btw, if you want to follow my game's prototype progress, feel free to join this Discord server: discord.gg/uk7nMuan63

I'm posting updates there as well, organising playtests, etc. Will be glad to see new people there!

12.11.2025 15:36 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

But it's just an interesting technique that I accidentally discovered and wanted to share. Luckily for me, it actually works in my game, since I have limited size labyrinths for which this method suits perfectly.

12.11.2025 15:31 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Disclamer: bear in mind that this approach most likely isn't applicable for NPC behaviours in "more" open world games, as more efficient algorithms are usually used there that don't assume calculating distances to every single point.

12.11.2025 15:31 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

And with that knowledge it's now possible to plan detours of certain length! Pick a random point with a wanted detour length (from the array of sums), and then from that point find the shorted distance to your next goal (rinse and repeat).

Here's a visualised iterated process:

12.11.2025 15:31 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Turns out, each number tells us what the new shortest length of the path will be if we take a detour to a certain point. You can easily check it by picking any point close to the shortest path and counting the new length (grey cells are walls and stars are mines btw).

12.11.2025 15:31 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

You can see that on every point of our shortest path we have the total length of the shortest path (22 in this case). You can also see that there are "22" on non-highlighted points, which means that we have several options for the shortest route.

But what's up with the rest?

12.11.2025 15:31 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

So what's the trick here? First, let's try to swap our start and goal points, and see what kind of numbers we'll get.. Well, they still show shortest distances to points, but in reverse - quite expected.
Now, what if we try to take the sum of the swapped and unswapped results? πŸ€”

12.11.2025 15:31 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Well, this can be useful for creating game AI, where you don't want it to be unbeatable by players.

Let's say we want to plan a short detour for the AI, but within a certain length. The shortest distances to points that we have don't quite let us calculate that straight away...

12.11.2025 15:31 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

Found an interesting use-case for Dijkstra algorithm for finding a non-ideal path. Dijkstra algorithm lets us calculate shortest distance to each point in a graph. But shortest path isn't a non-ideal one.
So how do we find a slightly worse path and why would we want to do that?🧡

12.11.2025 15:31 β€” πŸ‘ 10    πŸ” 0    πŸ’¬ 1    πŸ“Œ 1
Post image

So I refactored my game systems a bit to introduce AI... And well, now I have some issues to fix πŸ₯΄

10.11.2025 20:58 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 0    πŸ“Œ 2
Post image

This is now my favourite Stack Overflow question

29.10.2025 11:33 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Join the Vlad's cooking Discord Server! Check out the Vlad's cooking community on Discord – hang out with 13 other members and enjoy free voice and text chat.

The build is already available publicly, but for the time being I publish the link only to my Discord, before I'm ready to show the game to more people.

If you are interested in early updates, and playtests, I'll be really happy to see you there:
discord.com/invite/uk7nM...

2/2

20.10.2025 17:07 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

I recently recorded 1 hour of Mine Crawler prototype gameplay with my wife and made a short trailer ☺️

It showcases both "open-world" wandering around and the duel mode, which I've been developing for the last couple of months.

If you want to try it out, see below! 1/2

20.10.2025 17:07 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 1
Preview
Mine Crawler - first prototype gameplay video | vladbat00 Get more from vladbat00 on Patreon
19.10.2025 11:41 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

> 58 files changed, 2588 insertions(+), 1603 deletions(-)

So it takes this much code and a week of time, and I still haven't got anything to show off yet. So here's my cat instead, she knows how to chill while also waiting

16.10.2025 08:36 β€” πŸ‘ 4    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0