Brian Kesecker

Husband, father of two young boys, professional software engineer/manager, and independent video game developer.

Devlog

Note: High resolution images available for hyperlinked images.


April 13, 2025

Work In Progress (WIP) Teaser

Thought this was worth sharing and also so there is a visual to go with my ambitious project.

Work in progress (WIP) teaser image.

Sunset in what looks like a tropical location.


August 18, 2024

Godot Game Play Capable

Busy time in my personal and professional life, but I have been slowly chipping away at Slapdash Plank functional parity to the Unity iteration. All the while familarizing myself with Godot and the development cycle. All the controls and their placements are made, but some of the backing code to update them is yet there.

Godot user interface showing gameboard.

The above screenshot is of the gameboard during the human player's turn. Short list of completed elements: functional Itch and Discord buttons from title screen, keyboard controls, game UI, settings dialog, sky shader for moving clouds, music, and some sound effects. I am really enjoying the Godot engine and I would like to complete the port of Slapdash Plank, but I am also trying to work on another much more ambitious project, which is heavily focused on shader work at the moment. Perhaps when I need a break from shader work, I'll switch back to Slapdash Plank porting. Cheers!


December 4, 2023

Engine Reboot

Most players pay no mind to what engine a video game is built with, so I have not focused much attention in my social media posting on that aspect and, for the most part, may keep it that way. However, on September 12 a chain of unfortunate events followed a clearly unvetted pricing plan for Unity, which is the engine in use to create the first version of Slapdash Plank. Skipping a long story, those events lead me to look into other game engines and, after a bit of tinkering, I decided to try porting Slapdash Plank to Godot 4.

Godot user interface showing six sided die.

Efforts began on October 1 and by December (2 months later) the core of the logic and 3D models were successfully ported. Since the Unity code was written in C# and Godot supports it as well, that is what will be continued. The splash, title, and game scenes are implemented, but only some screen buttons, mouse, and keyboard support are working. The player, computer, and physics are all working as intended. I was even able to find acceptable replacements for the ocean and sky shaders. So, with those absolute requirements in place, the rest is basically grunt work.

Game board view.

Perhaps one overlooked item is the responsiveness of the physics collision being able to play the contact sounds quickly and rapidly as the die rolls across the planks. Looking forward to finding out this December!


October 30, 2023

Feedback On Slapdash Plank

I received some unexpected and valuable feedback through a LinkedIn contact regarding Slapdash Plank game play. One piece of feedback, fixing the jarring perspective when throwing, initially seemed a bit challenging, but after a little trial and error a basic solution was simple enough to implement from both the middle and outside edge of the game board. The basic solution came in the form of simply backing away from where the die would be thrown from.

Slapdash Plank Title Thumbnail

The new 2023.10.30.0 version is available from Itch.io and includes credit for the above feedback, as well a suggestion to randomize the computer player's name among famous pirates from history. So, the computer names will rotate randomly between various named pirates. I am almost sure one will become someone's nemesis.

I really would prefer the backing away to happen gradually, but that is more complex to implement and would add another state change that delays game play. In all honesty, I have been porting Slapdash Plank from Unity to Godot since the beginning of October, and, until it reaches parity, development of Slapdash Plank is paused.


August 12, 2023

Slapdash Plank Updated

Recently found out a stolen (not free) sound asset may have been used in my game, so I replaced it. The latest version is available on Itch.

Slapdash Plank Title Screen

I have been busy establishing workflows and building frameworks for future projects. Advents in AI technologies are helping make progress go faster.


May 14, 2023

Slapdash Plank Released

The new release version of Slapdash Plank is available, which uses the latest LTS version of Unity 2021 and files are now signed with my name. Download free from Itch!

Slapdash Plank Title Screen

My next project has actually been on-going for years. No plans at this time to post anything public about it. However, I may be sharing details about a side project.


December 8, 2022

Slapdash Plank Beta Available
Slapdash Plank Itch Thumbnail

Download from Itch.io

Join the Discord

Provide some Feedback

Enjoy!


October 9, 2022

Technical Requirements Complete

All of my technical requirements for a beta release of Slapdash Plank are finished. Switching gears and focusing on YouTube videos and social media plugs while a few testers have the alpha version in-hand to give it a try.

Title Screen
Title Screen

Game Play
Game Play

Controls
Controls

Top-Down View
Top-Down View

I would like to have it on platforms other than Windows, but there are some technological hurdles delivering a similar installation experience on them. In total, 448 changes across 252 days without a single day being a zero-day!


August 21, 2022

Game Dev: What Is The Objective?

Big update today and, in my opinion, long overdue! Skipping the boring reasons why. Official title has been selected "Slapdash Plank"! Slapdash is another way to say the word 'random' and plank should be thematically pirate, but please decide for yourself. So, obviously bad, don't fall off the plank, matey.

Title Screen
Title Screen

Slapdash Plank's objective is to use your physics knowledge, skills, and abilities to overcome your opponent. At the start of your turn, you have to analyze the board for a good place to generate a high score, understand the physics expectation of the die about to be thrown, use the controls to set the horizontal velocity, player vertical position, and vertical velocity, and then hope you get the roll you want. For example, if you see a plank with a 20, that is a good target unless it is surrounded by holes. The further you have to throw the die, the greater the chance of deviation. Anyway, I don't want to spoil all the strategies to win. Fair warning, the computer feels like a total cheater on the hardest difficulty setting.

Game Play A
Game Play A

Since the beginning of June the following features have been implemented (a total of 143 changes):

Game Play B
Game Play B

Slapdash Plank development is purposely kept quiet because I want to attempt to generate buzz about it when I am ready to consume such buzz. That basically means little social media content until a demo is ready. Feedback about the game so far has been positive among people I personally know and I plan to keep it that way until a beta that targets a few different platforms is available.

Top-Down View
Top-Down View

Should the beta/demo receive enough attention, I will probably focus my attention on multi-player capabilities and extend the look-and-feel to bring variety in that aspect. Could speculate on a timeline, but since I work on this in between things, committing to such a timeline puts too much pressure on family things.

As for challenges these past few months, getting the code to calculate the shortest path around an arc limited from -180 to 180 degrees and actually take it was the most challenging. What I had to do was determine which path was shortest, which was the easy part, but then needed to solve crossing over the zero boundary along the circular path with the same algorithm. In the end, the arc calculation just needed 360 added or subtracted from it as a starting point.


May 29, 2022

Game Dev: User Interface (And More)

Progress is going well since April 3 (84 commits) with the following features added: controls for vertical force, horizontal force, and game settings, feedback icons for remaining throws, die forces, and camera position, and entire game play loop with introduction screen (and theme). Furthermore, I have done a lot of refactoring of the code, so that it will be scalable when creating new game board scenes. Found a great use for Unity's ScriptableObject too!

Game Play
Game play user interface.

TOP: Left is the next die to be thrown, along with the remaining platforms. Center is the player's score. Right the game settings.

BOTTOM: Left the horizontal force with the slider control. Center is the camera's vertical position. Right the vertical force with the slider control. All of these change color from green to red, weak to strong, respectively.

Setting Dialog
Settings dialog with the available options shown.

Title Screen
Title screen user interface (working title blurred), which has the computer playing in the background on a generic themed scene.

I have been building up the necessary skills to make quality YouTube videos (not just showing game play only). My thoughts are centered around a style of content I do not see much of, which are those that show game progress and how the progress was made. I want to focus the content on providing value to those wanting to learn about game development with an actual game being developed.

To close out this entry, even though I am still planning out new audio, the more important missing element is a way to play competitively. Playing against the computer will be first, followed by local multiplayer (not going to speculate yet on Internet play). Finally, getting the game in the hands of some testers.


April 3, 2022

Game Dev: Dice Numbers

Busy last couple of weeks, but I did manage to make some progress adding numbers to some of the dice and update the next die to be thrown indicator in a wheel formation. Adding numbers to the sides of the dice has been the most challenging aspect of the project so far. The face up calculation was quite easy, as well as which platform was most closely landed on, but it had a bug with three-point distance and I had to switch to two-point. In the video, you may notice that die faces are not necessarily arranged in the standard pattern, which is due to vertex winding since the code iterates through them linearly. Minor annoyance, so may address it later if someone feels strongly about it (and can probably prove it matters?).

Hopefully the crosshair is a little help. There were so many ways to implement this feature, but I landed on drawing on the canvas point-by-point. This method gave the greatest precision and flexibility to toggle on and off.

The camera is following the die, but not eagerly. I found the closer the camera was allowed to approach the die as it rolled, the more jitter in the players' view. Also, very excited to get more game mechanics implemented, which is that platforms fall after landed on. This is how I think the game loop will be completed in single player mode, with score tracking between play sessions.

Starting to think about sound, music, and visual effects to jazz up the fun factor!

Finally, to speed up my workflow creating content, I added a way to screenshot YouTube thumbnails from within the game (still working on screenshot functionality for Instagram).


March 12, 2022

Game Dev: HQ Video & Scoring

In this devlog I will cover game updates seen in the video, some things on the roadmap, and a little about what I have learned making a better video. Also, a little context before watching, the objective of this game is to overcome the randomness with skill. Please check out the video and then come back here for the details.

In this update, the players' score is shown in the top left corner, as well as the next die that will be thrown (for example, if the 6 were highlighted, then the cube/hexahedron would be next). The bounce and roll physics of each die behaves differently, so the player may need to throw it a certain way to gain the desired result. The score, at the moment, is a simple 1x multiplier no matter which tile the die lands on, but more on that in the roadmap below. If the die falls off the game board, either in the middle or off the side, the total score is reduced by a percentage. Since I am still tweaking game play, I am not sure what the penalty will end up being, but I think it gives a sense of danger.

In the context of randomness, the player's perspective (from which location they are throwing) is random, the next die to be thrown is random, each tile height between throws is random, tile values are random, and, eventually, the die itself will present a random value.

The roadmap should help clear up how skill will help the player overcome the randomness. First, a crosshair should help a little. Second, I am designing the way the player will supply two pieces of input, the forward velocity and the vertical velocity. I suspect both will be a timing based button press, but not yet sure on the form. Once the mechanics are there, then add some fun sounds, animations, and, uh, jazz it up.

Still on the roadmap, I will implement the die numbers rolled as the multiplier and see how it plays, and adjust the tile values such that there is some difficulty and struggle to keep a high score. Losing a percentage of a high score could feel big. Feels like the original idea is coming together.

For this video, I have learned a bit about OBS Studio (recording) and Shotcut (editing), and then upgraded the thumbnail using a free online text generator and Windows Paint 3D. I am presently researching video cameras and microphones, and hope to be able to have that all setup for when I am ready to name this thing officially.


March 1, 2022

Game Dev: Ships, Torque, and Randomization

I had hoped to post a new devlog this past weekend, but I am learning about how to make more fancy videos with Streamlabs and Shotcut. Furthermore, the video software I am using cannot output with a higher framerate, so that is why the video quality is a bit lacking.

However, I did manage to added some very basic ships in the background, player controlled throws using the spacebar, fixed the die rotation such that it rolls away from the camera, and randomized the tile height between throws.

I won't speculate on what features will be coming, but what I will say is that progress should be steady. So, if you find what you see interesting. Let me know!


February 20, 2022

Game Dev: Last of the Platonic Solids

I have added the last of the remaining platonic solids (hexahedron and tetrahedron) and a spotlight on the die for better visibility, but I am unsure if it will stay (other plans may negate it). The last meaningful update that can be seen are the tiles randomizing between throws.

I am going to try and focus on equal amounts of functional features as well as aesthetic improvements, so that I don't get burned out on either one.


February 18, 2022

Game Dev: Fog and Lighting

I felt the need to impart some ambiance to make the videos and testing a little more enjoyable, so added fog, lights, and some models. Feedback welcome!

I am finding it may be beneficial, motivationally, to alternate between art and code. Also, I am still working out the game mechanics and don't want to put too much effort into perfecting code just to go and change it up because the art style changed drastically. Mistake or not, I am happily and steadily making progress.

An interesting bug, which manifests in this video, makes some collisions not generate any contact sound. I suspect it is a timing issue, but since it is working far more often than not, I'll focus on it later. Also related to the collision sounds, they are fading away after the initial hit, but it is not tied to velocity (yet!).


February 13, 2022

Game Dev: Platonic Solids

Platonic solids make up the majority of a typical set of dice (4, 6, 8, 10, 12, and 20 sides). Ten being the one that is not platonic by definition. Unsure how many of them will end up working with the mechanics of Project SDP, but I plan to test them all (maybe even a zocchihedron). Check out video 3:

I am in the process of testing for limits, such as how much force can be added before the die rolls off, so that a baseline is made to restrict user input. The basic idea is to use button pressing skills, path finding skills, and luck to score a high score.

Obviously, there are lots of elements and visual appeal that need to be added, but right now functionality is where I am focused.


February 10, 2022

Game Dev: Testing Camera Angles

As part of the game play mechanics, I have added some camera control to test out different perspectives. The outer edge view seems disorienting to me while the camera is both tracking and circling the game board. Check out the video to see for yourself.

Have not worked on a user interface yet, but that will soon be a focus because it will make testing all that more easy. I think the music is not the right fit, but it is better than silence for the moment.


February 5, 2022

Game Dev: First Video

I have created my first video of Project SDP (codenamed for now), which I intend to be a mixture of board game meets the infinite possibilities that a digital world can bring to it.

The video shows off the basics of physics, audio, and camera logic. Next, I will be focusing on game play itself to test out the numerous ideas to determine which things are most fun. Perhaps the next update will have some user interface elements.

I should mention that I have been learning Unity and Blender for over a year at this point. This project will be the first I intend to complete and publish to showcase what I can do and build a bit of a portfolio.

For reference, at this time I was using Unity version 2021.2.9f1 and Blender version 3.0.


February 3, 2022

Game Dev: Screenshots

Sharing a few screenshots from a board-like game I am writing in Unity, but all the models were made with Blender 3. Using the Universal Render Pipeline (URP) for this effort.

First, a jagged game board.

Jagged Game Board

Second, a domed game board.

Domed Game Board

These will be some of the boards I start with when testing the concept. Will share more details about the game as it develops and I hope you find a mystery to solve just looking at these images.


January 29, 2022

Drive Rummager Version 2022.1.29.0

After a bit of polish, Drive Rummager is available for download. Drive Rummager enables brute force searching for terms and expressions under any directory structure. Software developers will find this functionality useful if they want to ensure they have changed terminology in multiple source controlled products (yes, some source control products provide this same functionality, but sometimes find things you do not care about too).

Drive Rummager Screenshot

Look for help documentation and a YouTube video in the future. Unfortunately, if you have issues you will need to get in touch with me via social media. The last I checked it was most similar to FileLocator Pro/Lite (or Agent Ransack) by Mythicsoft, if you are looking for a more full-featured product.

Drive Rummager works with .NET 6 already, but I am not listing that as a feature (perhaps UWP and publish on the Windows Store in the future). Once I am ready I would like to open source Drive Rummager, but if you want to decompile or reverse engineer it with JetBrains dotPeek, I will encourage your efforts to make something better!

Requirements
Feature Roadmap (Ordered)
  1. Search within search results.
  2. Ignore files of type.
  3. Save settings as JSON rather than XML.
  4. Output results as a report.
  5. Linux support.
  6. Mac support.
Known Issues
Installation

The installer is not code signed, nor are the executables contained within. This means Windows SmartScreen will block installation, but Administrators may bypass the restriction. While code signing is not that big of an expense, it certainly is not something I can justify since this is freeware, and I have no other software products yet.


January 28, 2022

Developer Tool

Preface to what is written today, it will be vague on purpose.

I have been fixing up a desktop application I wrote many years ago to help me with software development activities. At the time, I was very busy and did not think it worthwhile to share with any audience. When it comes to a new software product, adoption is very difficult if there is already a tool out there that does something similar, which there was back then and still is now. In fact, I wrote and created my version of this application because what was available did not support a specific scenario that I needed and I wanted a different way of displaying the results.

I would like to use the application as an opportunity to go through the publishing process, so that I may learn and grow as a software engineer. "Publishing" in this context just means making it available to a wide audience and free. Once I have the code updated to my liking, perhaps I will open source it.

Check back later to see if a free download becomes available. Be well!


January 22, 2022

Website Updated

Quick update on website progress. I have applied a very basic template from w3schools.com and included some more basic details. Still trying to figure out how to drop the www for apex domains to resolve.

Also, signed up for Instagram, but have not posted any pictures yet. After all this web and social media is setup and linked together, I am sure to post some pictures of my development progress in C#, Unity, and/or Blender.

2022 is off to a great start!


January 17, 2022

Website Is Online

Hello hello!

I have created a landing page for my personal website that may be reached at www.briankesecker.com or www.briankesecker.me.

The design of the future content is going well and I hope to have it published before January 2022 ends. Elements should include links to my social media channels, some stuff about me, and, if all goes well, my first published freeware software product.

Looking forward to so many things! Have a great time everyone.


January 11, 2022

Welcome To My Devlog

What should be obvious? Well... I have started writing this blog. Rather, it should be referred to as a devlog. As I intend to record things here in my game development journey.

According to GitHub history, I began on November 2, 2020. Since then, I have been learning Unity (or Unity 3D), Blender, and all the new features continuously being released in Microsoft's .NET and C# language. I am mostly a backend software engineer with network and performance heavy knowledge.

I have not completed a game yet, but rather building foundations to get there. Learning how far the technologies can be pushed and calculating how much space is reasonable to fit the creations. Focusing on my factories, so that when my skills are sufficient, I can efficiently create.

A humble start.


Ported from https://briankesecker.blogspot.com/ on March 15, 2025.