00:00hello my name is Thomas and I quit my
00:01job to make indie games and I have been
00:04extremely busy lately so let me catch
00:06you up with some of the stuff that I've
00:08been working on and how I have been so
00:10productive in the last month or so okay
00:12so I've already talked about all the
00:14business stuff that I went into to form
00:16a proper LLC business entity so that I
00:19could Port video games to consoles and
00:21I'll link that video right there if
00:22you're interested in the logistics of
00:24like all that business stuff but right
00:27now I'm going to be talking about the
00:28actual development work that I've been
00:30working on and boy let me tell you I
00:32have made a lot of changes to my game so
00:35let's get over let's let's get over it
00:37with Bennett foddy so let's get to it so
00:40since the last time that we spoke I
00:41spoke you listened not a great
00:43relationship actually so since the last
00:45time that we spoke I got a PlayStation
00:47dev kit in the mail I also drove 500
00:49miles in one day there and back to Ikea
00:52so that I could get a bunch of furniture
00:53for my newborn baby that's coming here
00:55pretty soon and I have written a lot of
00:57code but let me tell you I've made some
00:59incredible progress with my tanks game
01:01okay so let's jump back to a couple
01:03videos ago where the last thing that I
01:05updated you guys with were the power-ups
01:07that I added to my game so the tanks
01:09could get different upgrades but I kind
01:11of left on a cliffhanger because I
01:12didn't really talk about how the players
01:15would get those upgrades so let me show
01:16you how that works now so at first I
01:18wasn't really sure how I wanted to do it
01:19but I knew that I wanted there to be a
01:22purchasing mechanic so I grabbed my
01:23whiteboard and I started sketching out
01:25some possibilities that I could use to
01:28give upgrades to the player so I'll
01:30probably post a picture here of my
01:32whiteboard sketch and some ideas that I
01:34had for the store and I'll put that side
01:36by side with how it actually looks now
01:38and you can kind of compare and see my
01:40process for that I think it's actually
01:42pretty fun so what I ended up with are
01:43these treasure chests that act as
01:45storefronts that players can go up to
01:48and they can see what's for sale and if
01:50they have enough money to buy it and
01:51then they can buy those upgrades so this
01:53required me to make some info panels and
01:56figure out pricing and Rarity for each
01:59item so I put put each power up into its
02:01own Rarity category and I made a base
02:04price so a certain amount of coins for
02:06each Rarity of item and then I added
02:08some Randomness in there so it's like
02:09plus or minus three coins or whatever so
02:11that you get a little variability in the
02:13pricing and I like this because it
02:15actually gives the player something else
02:17to do besides focusing on killing other
02:20tanks so when you're in the middle of a
02:22battle you need to watch your back make
02:24sure that you're not going to get killed
02:25you need to be looking at your opponents
02:27and trying to shoot them but you also
02:28need to be on the lookout for coins
02:30because if all you do is attack other
02:32enemies and you don't get any coins then
02:34other players are going to be collecting
02:36coins and they will be better off in the
02:38long game because they'll have better
02:39upgrades and they'll be able to kill you
02:41more easily so I designed these little
02:42icons for each upgrade in Photoshop and
02:45you can see me as I go through here and
02:46I'm trying to figure out because these
02:48icons are going to be like tiny on the
02:50screen so you want them to be able to
02:51stand out even if they're very small on
02:53the screen so I was trying to figure out
02:55how to convey the general effect of each
02:57upgrade through just a little symbol a
02:59quick little Rabbit Trail that I went on
03:00here is that as I was designing these I
03:02realized that I didn't want the text to
03:05be hard coded for these info panels
03:07because if I wanted to translate the
03:09game then it was going to be a pain to
03:11go back and update all these text
03:12objects so I ended up actually making a
03:15quick little localization script you can
03:17see what I did here I just set up a
03:18Google sheet where I have my
03:20localization key and then right now just
03:22an English option and I made a quick
03:25little CSV parser in c-sharp so that it
03:28reads in the localization sheet and I
03:30can just put in a localization ID and it
03:32can quickly look up what the English
03:33translation of that localization key is
03:36so I got that in there so now all of the
03:38text is localized actually as a tangent
03:40I should also talk about the debug
03:42feature that I put in okay setting aside
03:44the store and power ups for a second
03:45let's go into localization land so in
03:48localization land you want to make sure
03:50that every text in your game is
03:52localized because if you switch from
03:53English to Spanish or German or whatever
03:55you don't want to miss anything you
03:58don't want anything left out I may made
04:00a debug feature that will translate each
04:03piece of text in the game that is
04:06localized into a specific string that
04:08way if anything isn't this specific
04:10string I know that it's not localized
04:12and I need to go update it so I was
04:14trying to figure out what would be kind
04:16of a fun thing to do and since I have
04:18the sense of humor of a three-year-old I
04:20decided to go with poop so now I have a
04:22poop mode in my game so if I turn it on
04:24all of the text in the game becomes poop
04:26which is hilarious it gets me every time
04:29and it's a really hilarious thing seeing
04:32the countdown sequence come on with poop
04:34it gets me every time oh yeah I added a
04:37countdown sequence to add some more
04:38anticipation into the gameplay side
04:40tangent over let's jump back into the
04:42upgrades okay so with these upgrades I
04:44also had to figure out how I wanted to
04:46display which upgrades the players had
04:49purchased so I redesigned some of the
04:51HUD I made some rounded UI elements in
04:53Photoshop so all of the upgrades are
04:55split into two categories there's active
04:57upgrades and passive upgrades and
04:59passive upgrade grids do things like
05:00increase your speed or some other stuff
05:03that you don't need to do anything for
05:05it to take effect but the active
05:06upgrades have a specific button that
05:09when you press it they activate so the
05:11active upgrades got their own little
05:12slot in the UI where they have a big
05:15icon and you can only have one of those
05:16at a time and then I put below that are
05:19all of your passive upgrades and there's
05:22like four or five slots for that I think
05:24it worked out pretty well you can kind
05:25of glance at somebody's HUD and see what
05:27icons they have and kind of get an idea
05:29of what upgrades they have in their
05:30possession so once I had all that the
05:32game was looking way different than it
05:33used to because it had a bunch of
05:35upgrades and the store and everything
05:36and new levels so I decided to update
05:39the steam page which took kind of a long
05:41time because I had to redo the trailer
05:43put in some new footage and update the
05:46screenshots and all of that so now the
05:47steam page is updated well yeah okay
05:49it's outdated now but at the time it was
05:52updated so yes confirmed this game will
05:55ship on Steam and PlayStation and I'm
05:57still waiting to hear back on other
05:58consoles but uh those two for sure so if
06:01you want to wish list the game on Steam
06:03it will definitely be coming out pretty
06:06soon okay so from there I transferred to
06:08some of the meta game stuff and I'm
06:10talking like the title screen and the
06:12lobby and the pause menu and all of this
06:15stuff that isn't the actual gameplay but
06:17it's the infrastructure of the game and
06:19so I redid All of the UI I redid All of
06:21the input systems so that in the code I
06:24could keep track of what the player
06:25controls are doing which controllers can
06:28use which menus and who they select and
06:30all of that so I redid the title screen
06:32I'll probably change it again but I just
06:33threw my key art in the background with
06:35a very simple title options menu but I
06:38wanted to do something cool for the
06:39lobby because I wanted a good space
06:40where you could hang out listen to some
06:42chill music join some players edit the
06:45configuration of the game mode choose
06:47different colors and all this stuff so
06:49you can see what I did for the lobby
06:51screen here and and I think it turned
06:53out pretty good there's still some stuff
06:55that I need to fix with it there's some
06:57more customizations that I want to add
06:58but I think that it's it's definitely
07:00given me the right Vibes and tone that I
07:03was going for so pretty happy with that
07:04oh yeah another thing that I had to do
07:06with the lobby was I had to give
07:08instructions for what buttons to press
07:10what button do I press to join the game
07:11what button do I press to add a bot what
07:13button do I press to change the gameplay
07:16mode and these are things that I hadn't
07:18really thought about before but uh
07:19depending on if you're using a keyboard
07:21or a PlayStation controller or an Xbox
07:23controller or whatever else those are
07:25going to be different things so I had to
07:27set up kind of an interesting system
07:29where I can figure out what kind of
07:31input the player is using and then
07:33figure out what character best
07:35represents the button that I want to
07:37choose here I'll show you like these
07:39buttons you know a b y x and then here
07:43you have X circle triangle square but in
07:47the code they're just referred to as
07:49like X and A would both be South and
07:51then you have east north west and that
07:56just is a universal way to refer to them
07:58but I had to figure out a way to map
08:00North South East and West to different
08:03gameplay controller types um so that's
08:04something that I worked on as well what
08:06else did I do I drank a lot of coffee
08:08that's what I did then I did some more
08:10work on the results screen to show how
08:12the players are doing and who's winning
08:13and made some nice animations for those
08:15to come in then I added a loading screen
08:17which I'm really happy with I have this
08:19setup where in unity everything is based
08:22off of scenes and I have a bass scene
08:24that's always loaded because you always
08:26need at least one scene loaded in unity
08:28I have my bassing and then I can take
08:30like level one and dynamically load it
08:33in and then when it comes time to go to
08:35level two then I can unload level one
08:37load in level two and then put a loading
08:40screen in front of that so I made this
08:41real fun loading screen that animates in
08:44and I made the letters jump up and down
08:46so it has some good dynamism and then
08:48behind the loading screen is all of the
08:50heavy lifting of properly unloading the
08:52previous scene and loading the next
08:54scene and so on uh let's see I also
08:56updated the pause screen and made sure
08:57that it actually paused the gameplay now
08:59and I added an option for enabling
09:01cheats which makes it much easier to
09:03debug stuff so then I decided to add
09:06different difficulty settings to the
09:07Bots and this was actually really easy
09:09to do because I already had a bunch of
09:11the necessary configurations pulled into
09:13a scriptable object so I could just
09:15create a new scriptable object for the
09:17new tank behaviors for each difficulty
09:19and then I can change the speed the line
09:21of sight the distance the turn speed Etc
09:23I also made it so Bots that are set to
09:26hard or very hard we'll start with a
09:29random upgrade so they will be laying
09:31down mines or shooting out special
09:33projectiles or whatever it makes them a
09:35lot more fun to battle against so before
09:37the options menu had a toggle to turn
09:40music and sound effects on or off but I
09:42knew that I had to have volume sliders
09:44but I realized that I could make it way
09:46easier on myself if instead of having an
09:49actual slider I just made a button that
09:52would increment the volume by 10 percent
09:55so now you can just scroll in hit a
09:57button and it just goes is up up 10 20
10:0030 40 50 all the way up to 100 then it
10:02goes back down to zero and that was like
10:04a major win because it saved me a ton of
10:06time and I don't think that it hinders
10:08the user experience at all then came a
10:10very grueling part of the project I had
10:13to update the unity version because you
10:15see prior to this I was using Unity 20 I
10:19was either on 2019 or 2020 and so I
10:21updated to 2023 which broke a lot of
10:25stuff yeah and I don't see why I only
10:27skipped like three years of the editor's
10:29development yeah so that's it I have
10:31been just grinding away I've been
10:33clocking in early hours and late nights
10:35and just doing my thing coding a bunch
10:37I'm making a tremendous amount of
10:38progress I'm really happy with where the
10:40game's going I think I'm getting fairly
10:42close to where I want it to be before I
10:44can release it I'm going to add a few
10:46more features and a lot more bug fixes
10:48but it's looking pretty good and it's
10:49really fun to play I just got it running
10:51on the PlayStation so everything seems
10:54to be working pretty much flawlessly
10:56right now it took me a while to get
10:57everything set up but the porting
10:59process for that is going great hoping
11:01to get it on other consoles as well but
11:03right now I'm going to be focusing on
11:04Steam and Playstation those are my two
11:06places that you'll be able to pick it up
11:07here pretty soon to be honest I was
11:09dragging my feet to make this video
11:10because I have just been on a roll
11:12making really good improvements to my
11:14game and I didn't want to take the time
11:16today to record this video so sorry but
11:19my schedule has kind of been all over
11:20the place because I actually made
11:22another video like a week or two ago but
11:24I haven't been able to post it because
11:25I'm waiting for someone else to post a
11:27video and launch it in tandem with that
11:28I've just been making all this progress
11:30but I wanted to keep you all updated
11:32things are going good let me know if you
11:34have any recommendations for things that
11:37I can add or improve to the game in the
11:39comments below subscribe if you want to
11:41hear more about this crazy journey of
11:44trying to make games and sell them to
11:45make a living hopefully I won't be
11:47eating Top Ramen for the rest of my life
11:49and I think that's all she wrote if you
11:52want early access to the beta build of
11:54this game then you can join my patreon
11:55community and I'm going to be passing
11:57out links so that people can play best
11:58before this thing goes live yeah thanks
12:00for sticking around thanks for all of
12:02the encouragement and I'll see you guys