Sahan Dulanjaya

QA Automation Engineer

API Tester

ISTQB Certified

Web3 Enthusiast

Freelancer

Sahan Dulanjaya

QA Automation Engineer

API Tester

ISTQB Certified

Web3 Enthusiast

Freelancer

Just a Flappy Pulse Guy

  • Date: October 2025
  • Categories: Games
  • Stack: HTML, CSS, JavaScript, PHP, MySQL, WordPress
Play on pulseguy.com

Just a Flappy Pulse Guy is a Flappy Bird style game I made for the Pulse Guy community. Pulse Guy straps on a jetpack, and you tap, click or press space to keep him in the air between the pipes. Easy to pick up, very hard to put down.

Making the flying feel right was the part I enjoyed most. The pull of gravity, the boost on every tap and the spacing between pipes all had to be tuned until it felt fair, because that feeling is the whole game. The gaps are randomised every run and the pipe speed scales with the size of the screen, so it plays the same on a phone or a big monitor. Around that I added a start screen video, sound effects and music, a toggle for visual effects, mute, full screen, and a username that’s remembered between visits.

The leaderboard

The leaderboard was a bonus on top, and it turned into a fun little security exercise. Scores go to a small PHP API backed by MySQL, which keeps every player’s best score and shows the top 50 along with your own rank. A public leaderboard is an open invitation to cheat, so the server never takes a score on trust:

  • Every run starts by asking the server for a random, single-use play token tied to that player’s name.
  • A score only counts with a valid, unused token from the same player, and the token is spent the moment it’s used.
  • Runs that end in under two seconds or drag on for over an hour are rejected, and so are impossible scores.
  • Each player can submit once every ten seconds at most.
  • Names and scores are validated before anything touches the database, and old tokens are cleared out daily.

Tech stack

The game itself is HTML, CSS and vanilla JavaScript, with no game engine or framework. The leaderboard API is PHP with a MySQL database, and the game runs inside an Elementor HTML widget on the WordPress site at pulseguy.com.

Play it right here. Click the card below to load the game. This copy saves to its own separate leaderboard, so scores set here won’t mix with the real one on pulseguy.com. For the best experience, use the Full Screen button inside the game.