You are browsing as a guest. Sign up (or log in) to start making projects!

vidur_thammineni

@vidur_thammineni

Joined June 3rd, 2026

  • 7Devlogs
  • 3Projects
  • 1Ships
  • 15Votes
I'm just a silly human who likes Rust :3. Also a recovering Python user.
Open comments for this post

3h 2m 22s logged

End Screens, Colours, and Paddle Collisions

This devlog marks the nearing of the end of this project. I made these changes a week ago, but was unable to find time to write a devlog before I went off-grid.

Here are the main changes:

  1. End Screen

I added an end screen with a randomised end message based off of who won (9 messages each) and a Restart button that uses a lot of the same code as the start screen. I also realised that 10 goals was a lot and quite slow, so I dropped it down to 5.

  1. Colours

I fixed the colour palette by finally swapping the background colour to something within the grand palette.

  1. Collisions

Hopefully, this is the last collision issue. If the ball hit the top/bottom of a paddle while the paddle had the same v_y direction as the ball, the ball would still swap v_y direction and go DOWN/UP, so this is hopefully taken care of. It doesn’t matter how fast the ball goes because if it hits the top/bottom of a paddle, the point is already lost.

The next devlog will probably be with all the build files and such.

0
0
6
Open comments for this post

1h 49m 43s logged

Time Delay, Adaptive AI, and Bevy Update
Here’s what I’ve done:

  • The AI previously would only move if the ball was a minimum distance away, and it would outpace the ball, stop, the ball would get away, it would outpace it again, and so on because the adaptive AI was increasing speeds. Now it only changes it’s velocity every 0.1s

  • The adaptive AI was also mediocre, so I dropped it and raised the paddle speed. It was really just an AI nerf.

  • I upgraded from Bevy 0.18.1 to 0.19.0
    This came with some changes to text and layouts

0.18.1:

    let font = asset_server.load("fonts/PixelifySans-Regular.ttf");
    let label = (
        Text::new("Start"),
        TextFont {
            font,
            font_size: 40.,
            ..default()
        },
        TextColor(Color::BLACK),
    );

0.19.0:

    let font = asset_server.load("fonts/PixelifySans-Regular.ttf");
    let label = (
        Text::new("Start"),
        TextFont {
            font: FontSource::Handle(font),
            font_size: FontSize::Px(40.),
            ..default()
        },
        TextColor(Color::BLACK),
    );

among others.

0
0
4
Open comments for this post

7h 6m 32s logged

Added a Start Screen and did some Debugging!
So I’ve continued improving pong, and here’s what I’ve done since the last devlog.

  • Fine-Tuned Adaptivity
  • Added a Start Screen!!!
  • Fixed Ball Velocity Magnitude Issues (annoying Pythagorean theorem math, and I like math)
  • Made the font Pixelify Sans for the new start button and the scoreboard.

There are only two more things I need to do before shipping!
[] Make the AI a time delay instead of a space delay

  • Right now the AI moves when the ball is a certain distance from the paddle.
  • This makes it jittery when it is fast due to adaptivity
  • I want to make it only check the ball’s position every second of half-second or so.
    -This will hopefully eliminate jitter

[] Make an end and restart screen

  • The game should end at 10 points
  • It will probably have “Game Over” for a loss and “You Win” for a, you guessed it, a win.
0
0
2
Open comments for this post

3h 16m 58s logged

Finished the tutorial and working on my own mods!

I started this as a way to learn how to use the basics of 2D game dev with Bevy before I make my Chrome Dino clone Gleebo Run (I know, so original). Continuing this project will help me grasp more of the basics.

I Added:

  • AI nerfs
  • Randomness to collisions and ball respawns
  • Ball respawns towards the scoring player
  • Adaptive difficulty AI

To Add

  • Game Finish (10 points I think)
  • Start and end screens

To Fix

  • New clipping & collision issues
  • Jittery AI paddle
  • Ball velocity magnitude non-consistency issues
0
0
6
Open comments for this post

2h 29m 39s logged

I just finished Bevy’s little quickstart tutorial
Bevy is a modular game engine for Rust, and I figured a good way to get better at Rust was to build a game using it. Now I’m going to actually start building the game, which will probably be a Chrome Dino clone.

0
0
6

Followers

Loading…