#pygame

Lord Doctor Olle Wollej@hachyderm.io
2026-01-30

I just bought the book Code the Classics volume 2. It’s a book with chapters on the history of different classic arcade games, each with the full source code for a version of the game implemented in Pygame Zero for Python with nice graphics. It also has chapters on coding Python and PyGame Zero. I’ve already read two history chapters and it’s just as good as the first one. The book is pretty cheap, considering it’s a full color hardback.

I implemented the Frogger clone Infinite Bunner from Code the Classics volume 1 in Rust and Macroquad. I can highly recommend the books, and doing an implementation of your own. I’ll probably not do a port of my own this time, but I’ll certainly take some inspiration from the games.

The games included are Breakout, Double Dragon, Defender, Dizzy, and Pole Position.

github.com/ollej/rust-bunner-m

#GameDev #Python #Rust #RustLang #PyGame #PyGameZero

Photo of the cover of a book. The book has a dark border, and across the top is the title in gold: Code the Classics volume II. 
In the middle of the book are multiple cartoon drawings of characters from the games included in the book.

AI Brain Demo For Fun

I Built a Game Where You Can Watch AI Think (And It's Weirdly Satisfying) You know that feeling when you're trying to learn something new and the teacher just says "trust me, it works"? Yeah, I hate that too. So I built a game that does the opposite. It's a little AI agent learning to navigate a grid, and you can see exactly what's going through its digital brain at every single moment. No black boxes. No "just trust the algorithm." Just pure, transparent learning happening right in front […]

kemal.yaylali.uk/ai-brain-demo

Teckids-GemeinschaftTeckids@bildung.social
2026-01-23

:linux: Unsere Workshop-Angebote "Mini-FrogLabs" bei den diesjährigen Linux-Tagen in #Graz und #Tübingen sind online!

teckids.org/blog/2026/01/frogl

Die verschiedenen Workshops zu #Python, #Pygame, #Luanti werden vielleicht noch um weitere Themen ergänzt, und auch eigene Vorschläge sind willkommen.

🐸 Jetzt anmelden und weitersagen (in euren Hackspaces, Schulen, Freundeskreisen, usw.)!

Cc @linuxtage @tuebix

#Coding #Jugend #Kinder #FediEltern #FediLZ #BaWüEdu #DigitaleBildung

2026-01-23

I am right good at writing comments, luh. In other news refactoring GearHead Caramel to have a stack-based unblocking UI has reminded me how easy it is to mess up your stack. #GameDev #Python #PyGame #SoloDev store.steampowered.com/app/1565090/...

# Widgets may have "on_activate" and "on_freeze" methods that get called when the widget is either popped or
    # pushed.
    # 
    #       ****************************
    #    ***                           ***
    #  ***   GOLDEN  RULE  OF  POPPING   ***
    #    ***                           ***
    #       ****************************
    #
    # If you are going to pop a current widget and open a new widget, make sure that
    # you do in fact pop the widget-to-be-popped first and activate the second widget
    # second. Doing this in opposite order will in fact pop the second widget's frozen
    # state when you pop the first widget, leaving a corrupted stack and a UI from
    # the nightmares of Hieronymous Bosch. I know I am given to long winded comments
    # but I've messed this up at least twice so far in the unblocking refactoring project
    # and want to make sure I remember it for next time.
    #
    # >>> THOSE WHO DISOBEY THE GOLDEN RULE OF POPPING SHALL BE POOPED UPON!!! <<<
    #
2026-01-04

Use Pygame to visualize bubble sort in Python, Part 2

This part explains how the program creates its sprites and runs its event loop.

rodstephensbooks.com/bubble_so
#Python #Algorithms #Pygame #Animation

This program uses Pygame to animate item swapping for bubble sort in PythonMy book "Build Your Own Python Action Arcade!" available at https://amzn.to/4sc6ZHq
2026-01-03

Use Pygame to visualize bubble sort in Python, Part 1
rodstephensbooks.com/bubble_so
#Python #Algorithms #Pygame #Animation

This program uses Pygame to animate item swapping for bubble sort in PythonMy book "Build Your Own Python Action Arcade!" available at https://amzn.to/4sc6ZHq
2025-12-31

kitfucoda.medium.com/actor-mod

My attempt to build a prototype recreating the Matrix rain effect last week forced a hard look at my mini Pygame framework. The implementation yielded a mixed result that I’d previously overlooked—not due to the Actor model itself, but a misjudgment in where the "Physical" meets the "Semantic." Extracting a portable framework through refactoring was the goal, yet I was still facing inefficiencies in state management and event dispatch lookups.

In a search for order, I decided to overengineer the project for the sake of learning. My plan was to split the application into three independent processes: the state actor, the display loop, and the event dispatcher. If a little isolation is good, then I figured more processes in parallel must mean faster execution. I wanted to bypass the Global Interpreter Lock and find true independence for each component.

Then I hit the waterfall. The code eventually ran, but the realization of a "Transparency Tax" came an hour later. Instead of hitting a 60 FPS target, my frame rate plummeted into the 30s. Between the serialization overhead of sending callables through cross-process queues and the blocking nature of Pygame’s clock, the Actor process was left with little room for concurrency. The added complexity of message passing became the very bottleneck I sought to avoid.

I failed the mission to cleanly separate components into independent processes, but the expedition pushed me far enough from my comfort zone that the insights were worth the crash. If experience is a painting, the trail of footsteps is exactly how lines are formed in an image. I’m moving back to a single-process model for the next revision, keeping the clean Actor API but losing the performance tax.

#Python #Pygame #SoftwareArchitecture #ActorModel #Concurrency #KitFuCoda #Fediverse

2025-12-30

Auch im Zug wird weiter gespielt.
Vielen Dank an alle Betatester*innen auf dem #39c3.
Wer das Projekt nachbauen will oder die Software via #PyGame auf dem Computer probieren möchte, hier entlang: github.com/SimonWaldherr/DIY-A

2025-12-28

To work properly, each widget layer would need to replicate the quit handler. Or... I could just nuke everything above the level of the main menu and not worry about it. Which is what I'm going to do tomorrow. #GameDev #PyGame

2025-12-28

Progress! Combat is starting. The player's turn is starting. input is somehow getting redirected to the wrong widget. The player's turn does not end, even after spending all action points. More work is needed. #ghrpg #GameDev #PyGame store.steampowered.com/app/1565090/...

A combat scene in GearHead Caramel. Not quite working yet.
2025-12-27
@pygame@mastodon.social, you may want to replace s/fart animations/fast animations/ on your profile 😉

#pygame

A different kind of #gamedev. I built a music box for my daughter. It's using the #raspberrypi zero 2 and #pygame in the background.

2025-12-25

Making good progress on the refactoring of the invocations widget for GearHead Caramel. Found and hopefully fixed a serious problem with widget scheduling. I think I need to add more assertions, since silent failure isn't always the best. #GameDev #PyGame

The opening scene of GearHead Caramel's Winter Mocha scenario. A group of mecha pilots are standing around a barrel fire in the middle of a snowstorm.
Teckids-GemeinschaftTeckids@bildung.social
2025-12-23

Sneak Peak unserer Angebote für #Kinder und #Jugendliche auf dem #39c3:

🐍 #Python und #Pygame, 🧊 #Luanti-Mods, 🚀 Fairydust-Türöffner-Tag

Und dieses Jahr erstmalig: Wir verleihen Laptops an alle #Junghacker*innen, die eins für ihre Aktivitäten auf dem Congress brauchen!

events.ccc.de/congress/2025/hu

2025-12-23

I just found out that the InvokerUI for GearHead Caramel is not a widget- it's an object that replicates a lot of widget behaviour. Past Joe, you were an idiot, and now I have to clean up your mess. The refactoring continues. #GameDev #PyGame gearhead.itch.io/gearhead-car...

GearHead Caramel by GearHead

2025-12-20

kitfucoda.medium.com/recreatin

Earlier in the year, a simple Tic-Tac-Toe project unexpectedly yielded a reusable mini Pygame framework. While it started as a joke, I’m finally diving back into the source to recreate the iconic Matrix rain effect. It is a "baby-steps" approach necessitated by full-time work, but even a small-scale experiment reveals plenty about the stability of our initial design.

In this installment, the focus is on deconstructing the "magic" of jQuery’s .fadeOut() for a low-level setting. Implementing a gradual alpha decrease manually—associating the change with the frame rate rather than a black-box abstraction—takes a fair bit of planning. It really makes you appreciate the work done to provide such functionality through a simple method call.

However, moving toward the full "rain" effect is starting to reveal cracks in the framework. While the current consolidated queue system is performing reliably for now, scalability will eventually become an issue when drawing hundreds of elements. Wasting time on needless lookup operations during every cycle is a performance hit we can't ignore.

So, where are we headed? The recent refactoring somewhat resembles the Actor model, offering a cleaner separation of data storage and retrieval logic. The next installment will likely pivot toward optimization and exploring how this model enables parallel execution in a Pygame environment that isn't naturally thread-safe.

#Python #Pygame #SoftwareArchitecture #GameDev #codinglife

Lord Doctor Olle Wollej@hachyderm.io
2025-12-04

About three years ago I ported the game Infinite Bunner from python to Rust and Macroquad. It is a modern remake of the old Frogger arcade game that was published in the book Code the Classics vol. 1.

github.com/ollej/rust-bunner-m

I can highly recommend the book, it has several games with full source code, graphics and sound. Each game has a short description on the history of it as well.

amazon.com/Code-Classics-I-Dav

#GameDev #Rust #RustLang #Macroquad #RetroGame #python #PyGame

Screenshot of the title screen of the game Infinite Bunner. It has a small rabbit in the middle, and it says ”Start” ar the bottom. Slightly darkened in the background is an image from the game with a street woth cars, a railway with a train, and a river with logs.

📅 Progress Report — November 28, 2025
Friday:

Day 334
Day 334

📖 Daily Reading
• ✅ freeCodeCamp News: 1 article
• ✅ Daily.dev: 1 article

💻 Learning Platforms / Project Work
• Game Off 2025: Submitted my game entry ZIP package! 🚀🎮

📅 Progress Report — November 27, 2025
Thursday:

Day 333
Day 333

📖 Daily Reading
• ✅ freeCodeCamp News: 1 article
• ✅ Daily.dev: 1 article

💻 Learning Platforms / Project Work
• Game Off 2025: Continued refining the energy system for gameplay balance ⚡🎮

🔥 Every tweak brings the game closer to a solid MVP!

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst