Skip to main content

New Horizons

· One min read

Happy New Year to everyone tuning in! We have found the Jam of the Month, or rather two different jams: the first which starts tomorrow night, 1-bit Jam. The second is another Bezi Jam, which is towards the end of this month. The premise of 1-Bit Jam is pretty simple, you can only use two colors, on and off, black and white. While it started of as black and white they allow any two colours red and blue for instance. Some entries go so far as to use 1-bit audio.

I haven't decided which one to take part in yet, Bezi has very juicy prizes, cash and also a chance to showcase at GDC. However, 1-Bit is a very fun challenge. I am going to wait for the theme to drop and decide then. Also, might see if there are keen team members for Bezi to have a better shot.

~sailboat642

New Years

· One min read

This week I focused on sharing my latest jam entry. snowmanic turned out to be a very fun project, both to playtest and make. This enthesuiasm encouraged me to make a short gameplay video to showcase the game. The editing took me about 5-6 hours, however now that I am more comfortable with Premier Pro and the workflow, I think the next showcase will be easier to make.

I also managed to port the game to my steam deck. Still haven't figured out remote deployment, but I transferred it using a hard drive. The game worked smoothly, and as intended. I did forget to program some navigation for the menu's but since the deck has touch I was able to navigate and play it. The handover and gameplay was pretty smooth, and I will definitely try and integrate it in my workflow in the future.

This is a pretty short post, so enjoy the reel.

Happy New Years!

~sailboat642

Christmas Chaos

· 3 min read

This week I participated in Secret Santa Jam. Like I explained last time, this was a Secret Santa Jam. Credits to @sheepolution from discord for organising such a kick ass jam. There were no prizes this was game jam made for the christmas spirit of giving. It was organised beautifully. In secret santa, every participant get's assigned a giftee who they are supposed to gift. Which means everyone gets a gift, normally the person gifting knows the giftee (if they want to prepare a personal gift) while the giftee has no idea who their secret santa is. The system placed by sheepolution through the discord bot worked beautifully.

I received the profile of Snax McGee. There were many things in his profile but I focused on his love for synth music, legos, and shooter games. As added bonus I incorporated a picture of his cat and a guitar, as he has a cat and plays the guitar.

The Design

For the game, I decided to make a top-down shooter as the animations would be fairly simple and I enjoyed playing a similar mini-game in Stardew Valley. The person would turn enemies into blocks and snap them together to form different patterns that emerged to be 8-bit images. I decided to stick to the theme of christmas and made everything frosty. He fired a snow canon, the enemies were snowmen who got frozen into blocks of ice. Originally, I planned to make it feel like the main character of the game was ice-skating (improvement for later?).

I decided to use Godot as a game engine as my next big project will be on Godot. I really enjoyed the editor, it's modular design allows you to drag, drop, and jump to different related objects on the editor. This feature was very powerful and made design intuitive.

The Effort

I had been designing and brainstorming the game for weeks. I decided to start development on the 18th Thursday(The Jam ended on the 21st) with Art. I spent the whole day making different assets I was done with all the essentials the next morning. Throughout the weekend I worked on mechanics. I managed to incorporate all the mechanics by Sunday night however, I had not included any sound effects, the game was too plain and was missing audio cues. However, the deadline was 30 minutes away so I decided to make a Web Build.

The Terror

I was developing on my mac. Which meant Apple had to get in the way. I was not able to run the web build locally and did not want to upload it without testing. So I decided to finish adding sound effects and polishing the game a bit more, before I upload it.

The Success

I managed to complete it 24 hrs from the deadline, I hope my giftee did not mind. I am very happy with how it turned out as it included everything that was planned, plus a bit extra. I have not heard back from the giftee but I hope too soon!

Game Link: https://sailboat642.itch.io/snowman-apocalypse

With the end of the jam, I get to go back to my video project.

~sailboat642

Content Creation 30 hours to 1 min

· 2 min read

This week I started curating all the content I had from Bezi Jam. I had recorded and streamed most of the Jam so that I could get started on content creation. It was a daunting task. To start with I have zero experience with Premiere Pro which was the reccomended tool that Gemini came up with. I had over 30 hours of content that need to be sized down to less than a minute - because who will give more than that.

Thanks to AI and modern tools, in 7 short hours I managed to take 30 hours of footage that got chunked down to 1 hour and 50 minutes. Still a lot of footage but I managed to make two different tracks. The first one has 30 hours of footage, but with key breaks that help me find the most visually appealling elements. The second track has 1 hour 50 minutes of me talking, which is hard for me to listen through.

Thanks to these tools I feel a storyline comming into place, and regular content seems like a realistic goal. Speaking of which, there is another Jam in production.

I am taking part in a Secret Santa Jam, there are no prizes but the premise is appealling. I write a letter to Santa with my personality and interests, and a Secret Santa might make a game for me. And ofcourse I will be a Secret Santa for someone else. I have drawn up the plans and am excited to see how this game turns out. I have incorporated a mechanic I hope to use in Pal's Burger Dash, but more on this later.

Ofcourse due to this my video project is on pause, so bear with me.

Waves and Boards

· 2 min read

I wanted to write this blog earlier, but in the last few months I have been caught up with the waves. I picked up surfing this year, and I am thrilled by the sport. After my first trip to Thailand in June, I got a taste of surfing at Kamala Beach, Phuket. I cannot remember much of that experience, I caught 2 waves and the instructor took me to try some bigger waves deeper in the ocean. I was in Phuket at the beginning of the season so it was perfect to dip my toes in.

I was hungry for more and I took my cousin Amartya's advice and made a trip to Udupi in Karnataka to join the Shaka Surf Club. This was a place that had taken on the culture of surfing in India. The camp had a skate park where residents and friends could surf-skate and skateboard. The atmosphere was friendly just like any other camp environment with activities like kayaking, board games, skating,frisbees, and of course surfing. Everyone once in a while a musician would pop up and everyone would sing along.

Over the next six days I learned a lot about ocean waves. How waves come in sets, searching for the peak, how coastlines and beaches create all this fun. I had developed an appreciation for fluid dynamics and waves, with so many forces in play that create a beautiful swell that breaks evenly or a giant that crashes with a roar. Maybe I might start a project that dwells more deeply into fluid dynamics and waves.

I learnt a lot of safety lessons from surfing as well, in fact my first lesson was taught by a bloody lip on the very first day! I had surfed my second wave of the day, I felt ecstatic, I had forgotten all about the board that was tied to my ankle. In that moment the board had sneaked back between me and the next crashing wave. I turned around and immediately remembered thinking oh shit! The board was flat on the wave and was falling flat on my face. Now my first instinct after wiping out is to cocoon and surrender to the waves force and let them pass and then hang on to my board.

Thanks for tuning in.

Morning Brew - Bezi Jam

· 7 min read

I took part in a monthly game jam held by the people at Bezi. Bezi is an agentic AI tool made specifically for Unity. The platform reads your entire project folder structure, including the Unity files, which means it has access to your object heirarchy and the way things are setup in your scene. Further, it can interact directly with Unity to get logs from the console and see what you have selected in the editor. I joined this jam as I thought it would be a great integration to my workflow.

This was a monthly Jam that lasted 5 days (Thursday 8pm to Tuesday 12:30pm). There are three requirements, use Unity, use Bezi (somewhere in the development -even to test it out), and build for the web. This month's theme was Cozy Games with a twist revealed at the begining of the Jam.

Before the Jam I thought of different cozy things that could be part of the game. Finally I stuck with a game about coffee. Holding a cup of hot coffee on a cold rainy morning is the coziness I wanted the player to experience. But just sipping coffee is not enough, I wanted to lead the player to fix their own cozy cup of coffee and get to enjoy it.

I was thinking of mechanics I could add in these short 5 days empowered by bezi. I was always satisfied by the latte art that came on an occasional latte. This mechanic satisfied my curiousity, I had never integrated drawing into any of my projects.

Thursday

Bezi's twist was to keep the gameplay loop under 6 minutes. This limitation did not have any effect on my plans. I decided to stick with my plan on making a cozy latte art game. I managed to find a team (a composer and an artist) on discord that was on board with my plan. I started out by sketching out some design plans for the coffee game. The loop was simple: pull a shot of coffee, make latte art, and enjoy drinking it. I decide against having any scoring system.

The rest of the day was spent ideating and setting up version control for my project.

Friday

I dove into development, I prioritised the latte art mechanic as that was key ingredient for my game. I discussed the design implementation with Gemini, a tool I was comfortable with. It suggested a few different strategies and I went with the Render Texutre for Drawing on Textures option. This was a completely new area for me.

A render texture can be thought of as a film that is placed upon the image that can change the rendering of the image. The key feature is that it can be changed dynammicaly at runtime. The process for drawing involved detecting inputs, accurately translating them to the texture coordinates and detecting bounds, and then drawing.

I fed this strategy into Bezi, and let it cook! Bezi generated three files including a shader for the brush, the latte art painter component and a scriptable object for to store brush settings. This was a lot to take in and inspect, and suprise suprise it did not work. Since I am no expert at textures and shaders, I figured it was better to clean the slate and go step by step.

I prompted Bezi to do the same, keep the implementation simple start by detecting inputs and testing the coordinate system. This prompt was key! Bezi setup some helpful debugging logs and painted a white dot on the texture. Things were still going wrong, but I could see visible progress and that was motivating.

Bezi was having a hard time translating the coordinate system. There were numerous things that needed to be fixed like the scaling, inverting the Y-coordinate, making sure it painted within the bounds of the circular coffee sprite, etc. I iterated through them and by the end of the day Bezi and I had made it to a point where the input and coordinate systems were working smoothly.

Saturday

I managed to get the rest of the painting mechanic to work in the morning, and decided to spend the rest of the day improving upon the coffee and latte art (make it more realistic add some shaders/post processing) I was excited as this was an entirely new domain. The plan was to use my own custom brush texture to paint and add some bubble and wave effects to the coffee. I spent the entire day tinkering with Bezi, I made sure that Bezi created new scripts so that I would have a fallback.

There were different things I tried like changing the render pipeline, changing the setup, many of which I did not understand the reasons for. There were a lot of issues popping up while rendering and Bezi tried fixing them by making functions that show in the context menu of the component, I was not happy with this as it felt duct taped, also it did not work. The day ended with no progress.

Sunday

I probably should have moved on and completed the gameplay loop at this stage, but I was still eager to improve my latte art scene. I decided to use only Gemini for development. There was this annoying bug where the render texture showed up as a white box in the middle of my scene, that Bezi was not able to resolve. Gemini removed it. But again no significant progress. I could not get into the code and fix it as I had not researched render textures enough. I did see a youtube video that used a second camera, and I was considering doing that but I had had enough.

I ended the day by working on the start scene of the coffee shot being pulled from the espresso machine. I was still using gemini, and managed to add some camera movement and a small transition effect that faded in and out.

Monday-Tuesday

I spent these two days just polishing up the game. I found some sfx online for the coffee machine and sipping. Added the music track to the game. I figured it would be fun and easy to add a sipping mechanic where the player has to hold click to sip their coffee. I managed to add it with Bezi, Bezi even told me the type of art I would need to get it to work well, which I appreciated. I added another transition when the coffee was finished, this one was for a clock ticking.

It turns out that it is not easy adding video files to the scene, so I had to get all the frames from the clock ticking gif (over 300 frames - also found online). Bezi made a gif processing script that worked well, and there I had my second transition.

There were 3 hours left to submit, I decided to submit this. There was not a lot I could do that would have made a significant improvement to the game, mostly because I did not want to mess with the latte art scene.

Comments

I realised later I could have improved the game by introducing new mechanics instead of losing time trying to polish the one latte art mechanic.

I found Bezi to be a helpful tool. It was quick at resolving errors and could pinpoint exactly what went wrong. The code it generates is sometimes overly complicated and I was uncomfortable publishing the final scripts.

I think the key takeaway here is that Bezi will speed up your process but you cannot let it guide into the dark. Next time I would research the mechanics and systems I am implementing before using Bezi or other Agents to code it through.