March 2024 challenge: “Tube”

In the Pipes of Bureaucracy - In the Pipes of Bureaucracy: Postmortem

Posted by Tee on 2024/04/09 03:45

Thanks to everyone who played my game! This one turned out a bit more complicated than I'd liked, but I hope it was fun, and I enjoyed making it.

Fundamentally, I wanted to create a game where you have to move documents around but they interfere with each other, so you have to do it carefully. The main mechanic for this was the merging mechanism: some documents could be worth merging, while others not so much. There were several ways I tried to make merging a more strategic component: having documents with the same requirements appear together, requiring at least one merge to gain an ability, and having the abilities affect merging only. My hope was that the player would have to make interesting decisions when deciding whether to merge and what abilities to use in that process, but there was definitely room for refinement. In particular, due to the complexity of the rules and because merging feels more like an obstacle, I'm not sure how clear it was for players to realize when merging could be beneficial, especially with the right ability. For example, the ability to remove a random requirement can knock off a pair of documents that have the same single requirement left without having to get there, and it will give you an ability back for completing the merged document.

One of the trickiest parts design-wise was the incoming documents that could randomly mess up your plans. Unfortunately I only realized they were an issue very late in development, so I decided to implement a quick reroll. I could have the incoming documents not merge, but for technical reasons it'd take more time to implement than the reroll, and I thought that rerolling was actually adding a little bit of fun, so I just did that.

Congratulations to the winners and everyone else who finished a game!

Add a comment

Phantasma's Basic Pipe Puzzle - Final Diary Summary: Post-Mortem

Posted by Phantasma on 2024/04/07 23:25

Welp let’s start right away on what went wrong…

I certainly could have done more with this project had I figured out how to set the win conditions for my game. I mentioned in the previous diary entries that this was one of the major hurdles I needed to get through. Unfortunately, that didn’t work out in the end. However, my backup strategy was to just let the player go to the next level or return to previous level which is not something I wanted to do but it was a compromise in order to finish the project in time.

What I've been doing differently this time compared to previous pyweek events?

Actually building a design document with a development timeline and sticking to it. It helped substantially in keeping the project within the scope.

Despite this major setback I think I had a good run this time.

Best wishes to everyone else who participated, and thank you for trying out the game.

Add a comment

Electron - Post-mortem

Posted by mit-mit on 2024/04/07 09:54

Thanks to everyone who played "Electron" and left feedback! Congrats rdb and zwerver for the team win! This was my first pyweek trying to go double-barrel (two games at once): I actually didn't realise it was possible to be in two entries until this comp.

On the team entry I was a part of, I had mostly got everything I needed to do done around Wednesday, so I thought I'd start on a solo entry around this time. This meant I knew I had minimal time to get it done, so I really tried much harder than usual to keep the complexity of the game concept down as much as possible. I think this was actually a really valuable learning experience for me: I am so used to trying to jam in as many features and different mechanics as I can and really pushing up against the deadline trying to fit it all in. For this game I ended up not trying to add too many bells and whistles and that ended up meaning I could spent the last day of the comp really just trying to polish and setup some nice levels and work out a good difficulty curve through the game. I actually slept on the night at the end of the comp, which I think is the first time ever that I didn't just pull an all-nighter right before the deadline for pyweek :).

Thanks again for everyone who helps run pyweek behind the scenes and congrats to everyone who finished a game! See you next comp.

1 comment

Slurp Fantasy - Mechanics and puzzles

Posted by DR0ID on 2024/04/07 08:17

After reading the ratings here a few words:

The relation to the theme is the drinking straw which is like a tube or pipe. The kid in the intro plays with it (slurping and blowing) and thinks of an elephant.

First thing to figure out was that the suck action is triggered by a right click. Left click lets you blow.

Second thing was in the dream world as elephant that one could suck in two things and blow them out in reverse order.

Third thing is the power bar. The tip in the readme was Try to eat some.. If you eat the right things then you power bar gets green. The greener the power bar is, the further you can blow. Eating is done by moving the mouse cursor to the mouth (the tip has to be on the mouth) and blow the fruit you sucked up earlier.

The rotating platform: this was the main puzzle and here is the way solve it: you need patience, grab some bananas from the left tree (wait until you can reach them) and eat them until the power bar is full (green). Then grab some more (does not matter if banana or lemon) and shoot the target on the right (should be reachable with the full power bar). Next wait until you can hop on the descending platform on the right and move to the end.

Overall for us it was a fun pyweek and had some other fun ideas for this game. But unfortunately we ran out of time to implement them or to design more levels.

Add a comment

Slurp Fantasy - What I have learned

Posted by DR0ID on 2024/03/31 17:26

Inverse kinematics

This is the first time I have implemented an inverse kinematics system. Surprisingly, the implementation took not much time. But tuning and limiting the angles took longer. At first, I did the flip wrong (when changing look direction from left to right or vice versa). This is a very simple implementation (albeit using 3D vectors) and a full 3D implementation would take probably a bit longer and would need to keep a transformation matrix instead of only basically a point and vector. I have to investigate how constraints could be implemented in 3D.
Playing around with a kinematics system the idea of skeletal animation isn't that far away. It could probably be done pretty easy. Taking key frames would be a matter of an editor and the animation should be pretty straight forward using the vectors slerp and lerp functions to calculate the positions in between the key frames. Maybe next time.

procedural generated images

This time we decided to not use any paint program but to try to generate the art by code. You have seen the result. It was fun. One advantage I see is, that it could easily be parametrized for animations or similar.

scene graph

The game does not use a scene graph, but there is the ability to attach and detach an entity to other objects. The idea was that the attached objects should transform the same way as the object itself, e.g. if a platform moves all objects attached to it like plants or the player standing on it should move too. This is a very basic form of a scene graph. One thing that I probably miss is the mouse pointer. When standing on a moving platform the mouse pointer seems to lag behind the movement. I haven't looked into it but I think the movement of the platform isn't taken into account.

Add a comment

Angiogenesis - It's done!

Posted by rdb on 2024/03/24 23:16

Comment here if you're encountering any issues running the game!

Add a comment

Slurp Fantasy - Readme

Posted by DR0ID on 2024/03/24 18:09


### Slurp Fantasy - Pyweek 37 ###

* Pyweek 37
* Theme: Tube
* [ Multiverse Factory 37 project on](
* Team members ( names): DR0ID, gummbum

### How do I get set up? ###

* Download the final package, unpack the files into a dedicated directory
* No configuration is necessary
* Install dependencies:
  * Install Python 3.10+
  * In the game directory: pip install -r requirements.txt
  * Dependencies: Python 3.10+, pygame-ce 2.4.0 (developed and tested with these; other versions may work, but please do
    not report bugs with other versions)

    **!! if you use pygame please make sure to uninstall it first before installing pygame-ce**

  * Run the game in Python 3.10+:
  * python
  * py3
  * py -3

### Who do I talk to? ###

* @dr0id_ in Python#pyweek-game-jam
* @.mrgumm in Python#pyweek-game-jam

### How to play the game ###

User the mouse and the keys a s d w (or alternatively space to jump)

### Tips ###

Try to eat some!

### Thanks ###

Thank you for playing. And if you made a game for Pyweek 37, thank you and good luck.

Add a comment

The Tube - Saturday

Posted by Master_cheese12 on 2024/03/24 17:00

Added some finishing touches to the game before making the README.  Waited until Sunday to upload the file and even be able to post this cause the site was not loading.


Phantasma's Basic Pipe Puzzle - Day 6-7 Diary Summary: No win conditions :(

Posted by Phantasma on 2024/03/24 15:22

Another diary update.

The one major hurdle of checking if the puzzle has been solved has unfortunately not been implemented in time. Getting the algorithm to check if all the pipes connect from point A to B became a lot more complex than anticipated and lost several hours of time because of this. However, my backup strategy is to just allow users to go to the next level via button select EVEN if the puzzle is not solved. The idea behind that is if the player completes the puzzle they can just move on to the next level.

Despite the major setback I've created a minimally viable product.

Game has been uploaded and ready to play.

Add a comment

Planet Hardscrabble - Entry uploaded

Posted by Cosmologicon on 2024/03/24 14:05

Find it on the entry page. If you find any bugs or issues running the game, post a comment here. Thanks for trying it!

Add a comment