DIY Cover Art and Trailer

Back when I was still developing Laser Droplets, I was often thinking about what to do after it’s completed. I don’t mean things like where should I go for a small celebration, or what game to create next (ok maybe I did thought about those a little bit). It’s more like, where and how should I launch it? What price should it be? Do I need a website or a Facebook page will do? How to even set up a website and how is the website going to look like? etc.

I have been trying not to think too much about all these, since nothing matters if the game is not done. Now that the first version of the game is finally completed, I decided to put it up on Steam first. And that’s when I realised that there are still so many things left to do, way beyond what I have initially expected.

One of the many requirements to launch on Steam is of course to submit the cover art and trailer video clip. Everyone knows that having a good cover art and video is very important when it comes to first impression. But I have absolutely no experience in creating artwork and videos. As all my game assets are from Unity Asset store, I have avoided the need to create artwork and video all these while.

Initially I was looking at getting help from someone out there via those freelancers platforms. But obviously it’s not as straightforward as Unity Asset Stores. There are literally countless of such platforms out there, none of them I am familiar with. So after a couple of days of exploring and thinking through all options, I ultimately decided that it will be better for me to do it myself. I guess it’s about time for me to start picking up new skills.

Creating Cover Art for Steam

The Steam Store Page actually requires artworks in many different dimensions. Steam calls them “Capsule Images”. These Capsule Images are mostly compulsory and are classified into 2 categories, Store Assets and Library Assets. Below are the official documentation for the guidelines on Store Assets and Library Assets.

  • Documentation on Store Assets (Link)
  • Documentation on Library Assets (Link)

For someone who don’t know how to draw anything, I came up with what I believe is a creative but probably unprofessional idea. That is to create a “Scene” using the Unity Editor, and take a screenshot of that Scene. So the Unity software suddenly becomes a “drawing” software.

Using the Unity Scene, I have full control of the position, the size and rotation of all the objects as well as the lightings. So to create the main artwork, I created a new Scene in Unity and bring in all the stuff that I want from ui text, to game objects, to particle effects, place and arrange them in the Scene, and once I think it’s ok, I just took a screenshot.

To clean up the screenshots, I did use another software to crop or resize it to a specific dimension required by Steam. A simple software that can crop and resize images would be the “Preview” app that comes together as part of macOS. For anyone curious, the command of taking screenshots in Mac is “Command+Shift+3” for a fullscreen screenshot and “Command+Shift+4” for a selected area screenshot. The screenshot will appear on the desktop as a png file after a couple of seconds.

With that, I somehow managed to upload all the required artwork to Steam. Next, the video making.

Creating Promo Video

The trailer video is also a compulsory item when launching a game on Steam. Below is the official documentation on the guideline on trailers.

  • Documentation on Trailers (Link)

And so I went online to search for tutorials on how to make videos in general. While searching, I came to know of 2 softwares that are already installed as part of macOS. QuickTime Player and iMovie. This was a nice surprise because I didn’t realised I already have these tools from the very beginning, so no additional effort is required to install or setup anything.

To get started, I used one of the features found in QuickTime Player to do something called “Screen Recording”. What it does is that it will record everything that happens on the computer screen and converts it into a video file. There are options to record either the entire screen or a specific portion of the screen. Now all I have to do is to go back to Unity Editor, play the game, and click on the “start recording” button in QuickTime Player. (It did took me a while to figure out that the “stop recording” button is actually a small icon at the top menu bar.)

The file size of the recording is something to take note of, because it can really goes up to the range of gigabytes very quickly depending on the screen size and duration. Another point about Screen Recording, is that it does not record the “internal” computer audio, it can only take in audio from “external” sources such as from microphones. A quick Google search shows that there are special ways to achieve internal audio recording, but I didn’t test them out. Because for my use case, the audio is added in via iMovie.

After taken multiple short recordings of the gameplay, the next step is to import them to iMovie for trimming, arranging and adding stuff like audio, special effects or texts. (Maybe I am stating the obvious,) I find that when it comes to trimming and editing, it is easier to work with multiple short clips rather than one super long clip.

For someone like me who has never done any video editing before in my life, iMovie is actually quite complicated (even though it is considered one of the simplest software out there, compared to those used by professionals). Luckily, I found a pretty good tutorial on YouTube.

  • iMovie 2020 ** FULL TUTORIAL **, Tech Talk America (Link).

With the help of that tutorial and a couple of days of playing around, I finally got the video done. I have uploaded it to Steam Store Page as well as my newly created YouTube Channel (Link).

While making the video, one thing that I observed is that, the selected audio track plays a very important role. The selected audio track will become the “framework” of the video that determines a lot of things. What I meant is that I find the process of creating video to be much easier, when I use the rhythm and the pauses in between the audio track to help determine many things, such as when to switch scenes, how many parts should the video have, duration of video, etc.

Some afterthought. Although I did manage to complete and upload all the required artwork to Steam, I probably learnt nothing when it comes to drawing, image editing and creating cover art… Well, at least when it comes to the process of making the promo video it’s pretty fun. Not only I got to use softwares that I have never knew I had all along, more importantly, it is also the first time I upload something to YouTube.

Level Management in Unity

Level Management in Unity, by Wilmer Lin (Link)

This course help me quite a lot in the Laser Droplets game. Not only I learnt a lot of coding stuff, the base code for the menus management is all from this course. Well, I did change and added some extra stuff here and there. For example I added the ability to navigate all the menus using keyboard and controller. The graphics are also replaced with another asset in the Unity Store.

All in all, I am very happy and lucky that I found this course.

Complete C# Unity Game Developer 2D

Complete C# Unity Game Developer 2D, by Ben Tristem, Team, Rick Davidson (Link)

This course is worth mentioning because it’s one of the reason why Laser Droplets was made. It’s actually just a normal course that teaches Unity and C#, but it’s special to me for a reason. There was a period of time in my life, where I was “looking around”, trying to figure out what to do in life. And I happened to find this course. It is this course, that made me decided that if I am to do anything in my life, it will be making games.

Initially when I was thinking about what should I make as my first game, I was ambitious and got really excited dreaming about what I could make. But reality is harsh, I soon realised I have no idea how to write great storyline, I have no idea how to make assets, I have no experience in literally anything and everything related to making a game. So I have to do something simple, something that has a few stages and with no storyline.

Then I remembered one of the mini project in this course, that mini project is called Laser Defender. So I went back and dig through the old project to see what I have done and use it as template. Though it started out as a base for Laser Droplets, as things progress over the months, the original game design and code was completely changed except for a few Classes name in the C# scripts.

So yup, I guess this course does kind of changed my life. (Oh btw, I bought this course at a discounted rate :P)

Laser Droplets Blog Version

Main Page

Some Boring Intro

Laser Droplets is the first game I ever made in my life. If I count from the time I start learning Unity and C#, to the time I think it’s done, this game took me 19 months. Yeah, I know, it’s crazily long for such a short and simple game (furthermore, I didn’t spent any time making assets as they are all from the assets stores).

Now that I think about it, the actual time taken was way lesser. I took about 6 months to learn the basics of Unity and C#, as well as searching through website for tutorials. About 1 month of browsing Unity Asset Store and coming up with ideas of how to make the game better, and the actual 6 months of coding, re-coding, and all other Unity editor related tasks. That total up to roughly 13 months.

So what happened to the remaining 6 months? Well, it was time spent doing nothing. At multiple points along this journey, I was thinking if I should give up, thinking that maybe making a game by myself with no prior experience is impossible after all. A huge pressure comes from the fact that whatever I am making, is too simple and generic. There is an almost guaranteed outcome of not selling a single copy, drowned in the massive ocean of other better games. Perhaps I should just do something else. But luckily, I somehow managed to eventually complete it, at least to a point that I think it’s playable.

Another thing that I remembered clearly was that since I am making this game all by myself, I don’t have anyone else to talk to. And this, is actually the hardest part of this entire journey. That’s because for all the decisions that I made, and for all the things that are done using a particular method, I have no idea if it’s right or wrong or is there a better way to do it. Well, Google search does help a little bit, but for most of the time, there is like this constant debate going on in my mind for every single step I take along the way when creating this game. So don’t ask me why I Choose Unity. In fact, I don’t even really know why I started this journey :)

Almost Everything Was Changed

The completed game was actually changed quite a lot compared to the original design. It was originally designed to be like an endless, survive as long as you can gameplay. It now has 16 individual mini stages. There were supposed to be a lot more skills in the original plan, but now it’s just 3 basic and 2 ultimate skills. There was also no stats points assignment in the original design. Now, there are 4 different stats of attack, defense, energy and health each with 5 sub levels.

A lot of design issues that I never thought of, will suddenly just appear out of no where along the way of making the game, and I have to make a decision on what to do there and then otherwise I cannot proceed. (I am surprised that I didn’t went crazy during this period, or perhaps I already am) Some of the decisions ended up creating even more issues as the development went on. In the worst case, I have to redo a huge portion of it. One example is that in the beginning, a lot of properties are attached to each individual Enemy units, such as the health, damage, movement, projectile types, etc. It work out well in the prototype game with one stage. But when I started adding more stages, it become a nightmare to modify the properties. So ultimately, everything was re coded in the middle of development. Things are made to be modular and some of the properties are shifted around from Enemy to Stage.

Perhaps all these seemingly never-ending changes was the lack of a proper technical design document. But then again, given my lack of knowledge and experience in this field, I don’t think I can make a good design specs to being with. Also, due to the lack of knowledge and experience, some gameplay ideas that were originally planned were either changed or dropped along the way when I tried to implement them, simply because I don’t know how to achieve it. Well, the good news is that at least after all these months, somehow everything is kind of finalised and completed.

So Many Assets Used

I used quite a lot of assets from the Unity Assets Store in this game, from music, to UI, to spaceships, to particle effects and scripts. I figured out that since it’s already taking me forever to learn Unity and C# from scratch, trying to spend more time to learn how to make audio and graphics would literally take me multiple lifetimes.

The huge selection of assets in Unity is really helpful. However, one thing I realised is that I have to code or design my game around the assets. For example, some of the assets comes in 3D format with a particular rotation and size, I have to change my code or game design specifically to suit that particular 3D rotation and resize it. It’s alright to be doing it for a couple of assets, but if I am using a combination of different assets from different creators, it will become very confusing, very quickly.

That being said, it’s still much better for someone in my position to be using assets than try creating them.

Special Mentions

Assets that are used in Laser Droplets are listed on the main page, but here are a few additional special mentions. I have written more about them in their respective posts.

Oh btw, I would also like to add a point about the 2 other libraries that I used, Easy Save and Incontrol. That is, if there are any bugs in my game regarding the controls or saving mechanism, it is 100% due to my own fault. Since I am the one who wrote the code that incorporates those libraries, it must be me who used them wrongly.

What’s Next

I will be figuring out how to get the game on Steam and fixing any reported bugs. And if for some reasons where the reviews are encouraging, I will definitely consider adding more contents to it and maybe make this game to be available on more platforms. However, I am already mentally prepared that not a single copy will be sold :) Regardless of any outcome, I will be forever making more games.

Thank you for reading up to this point. This post is written after finishing the first version of the game, but before launching it on Steam.