Dev Log

Uncategorized Jeremy Wolf Uncategorized Jeremy Wolf

A Growing Channel and a New Tutorial Series

Work on my current game project continues, but I’ve also been busy creating a new set of videos and tutorials for the game development class that I teach. This year I made the decision to drop Playmaker, the visual scripting tool I’ve used for the last three years, in favor of Bolt. I’m three months into the class and I’m very glad I made the switch.

If your curious why, I put most of my reasoning into a video that looks at the pros and cons of each platform.

I’ve had great fun learning the new platform and creating videos to support my students. Since Bolt is fairly new its a bit short on tutorials, especially compared to Playmaker.

This shortage of tutorials made it pretty easy to push my way into the scene and start to create my own little niche in the larger YouTube community.

Let’s be clear! My channel is tiny. My channel started as a place to host a game trailer and evolved into an attempt to support my class.

When looking at the analytics it’s pretty clear there’s an inflection point in the traffic stats when I released the first few Bolt videos.

I leave out the actual very small numbers…

I leave out the actual very small numbers…

And again! My channel is tiny. The view count is laughable. I gain fewer subscribers per month than many sites gain in a day or an hour…

But still.

It’s fun to watch. It’s fun to create. And it’s fun to think about how far this trend might go. The question that keeps nagging me is whether the graph is linear? Or could it be curving upwards? Can the channel sustain the recent 25-30% month on month growth? Can the subscriber growth continue at 40% per month? Can I continue to create weekly content that’s engaging?

I’ve seen spikes in the channel stats before, but this time feels a bit different. And this time I’ve started asking a different question.

Two years worth of data. The trend becomes a little more clear.

Two years worth of data. The trend becomes a little more clear.

Could my channel help support my game development?

I don’t mean that next month I quit my job, but if that graph is curving maybe in 2-3 months the channel can cover my Unity subscription? If it continues to curve in 6 months could it pay my monthly internet bill as well? And then…?

And if the graph isn’t curving? If it’s straight as an arrow? Or if starts to curve towards horizontal? What then?

Then I’ve had fun and given back to a community that taught me how to make games.


So… If you’ve made it this far then why not go one link further? Come check out the channel? Maybe hit that subscribe button? And check out some of the videos and the coolness that is Bolt visual scripting…

Screenshots from the next handful of tutorial videos.

Read More
Jeremy Wolf Jeremy Wolf

Procedural Spaceship Generator

I find myself short these days. Short on patience. Short on time. Short on words. Just short… So here’s a short post and a quick video.

All the same I’ve been finding an hour here and 30 minutes there to slowly make more progress on my game. Yes this is the new game. The next game. If you missed it, you can read all about why I had to shelve my last game. This game is strongly influenced and inspired by the class BBS game Trade Wars 2002. I’ve been coding up a procedurally generated universe, fleshing out an inventory system and scripting the backbone of an economy.

With those pieces working, I sat back and looked at what I had. It’s not bad. It’s rough. But doable. The problem is still that to get something “shippable” or at least in the hands of testers and there’s a lot of content to create. So I had an idea…

What if I could produce a mini-game? What if I could take chunk of the big game, polish it, refine it and publish that? This would cut the immediate project size down significantly, result in quicker feedback from players and give me a second published game. So that’s what I’m doing.

The “game loop” will consist of building a ship, battling an AI ship, earn/collecting a reward and then starting the process over again. It’s simple but seems like it has potential.

I had the basics of a combat system already working so the next big piece was to develop a procedural generation script that could produce the AI ships. And that’s what I’ve been working on the last few weeks. I put together a short video showing the work.

Hope you enjoy and I’d love to hear your thoughts. You can play with the ship generator here - it’s an html build nothing to download just run it in your browser.


Read More
Jeremy Wolf Jeremy Wolf

Implementing SFX in Unity

Every year I have to work and work to convince my students to add SFX them to their games. They resist and see it as a waste of time. They value graphics over audio. But when they finally add the SFX - it's magic! The "plunk" of an object being placed or the "click" of a button adds so much to the game!

Implementing SFX can be a messy process. I'm pretty confident that I DO NOT have the best solution, but it's a better solution that I had a few years ago. So I thought I'd toss out some info out to the winds of the interwebs on my approach to adding SFX within Unity.

SFX options in the Unity Inspector

I'm not procedurally generating sounds or anything half that interesting. I'm just playing clips but doing so with some variation in the clip, volume, and pitch. I do this with a custom class (not a monobehavior) that allows easy and quick adjustments in the Unity inspector. 

The image of the inspector is from my current project and uses Odin Inspector - which is why the list looks different.

The code for the clip options is pretty sort and sweet. I've added two functions to clean up the implementation for when a clip needs to be played.

SFX options code.

The "PlaySFX" function has two parameters, the first is the AudioSource of where the clip will be played and the second is a boolean that prevents or allows the current clip (if any) to end and the new clip to be played. UI sounds interrupting other UI sounds is generally okay but sounds such as explosions getting clipped by another explosion tends to breaks player immersion.

In some cases, I have created or cloned AudioSources to allow as many concurrent SFX as needed - but that's a whole other post. It's actually not too hard either.

Defining SFX classes

Within the function the volume and pitch are both varied randomly. So no two button clicks (or other SFX) are identical, but if the variation is kept small they also sound similar avoiding possible confusion by the user that a new event has occurred. 

New instances of the SFX can then be created for different actions. I keep mine private and call them via event, but allowing them to be public could work as well.

Calling the "PlaySFX" function for different actions.

Next, I create a private function for each type of action.  This private function will get called by an event. 

Each of these functions can then subscribe to events that are called on other objects.

While this does require a bit more coding, it makes for a very clean and non-spaghetti like code base.

You can check out my full script on PasteBin.

Subscribing and Unsubscribing functions

Read More

Older Posts