The Blogs

Alright well I went to go work on my game today, and turns out my version of Unity was horrible outdated. I was using Unity 4.x where Unity 2017 has come out. Why they called the version 2017, I don't know, or I guess really care. Anyways, it took a while for that to install and then I had to mess around with some settings to get visual studio hook up to it. Because I'm not using MonoDevelop, I have no idea if it's good or bad, but I'm just so use to visual studio. Oh I guess this would be a good time to mention it. Both Unity and Visual Studio have free versions, as long as you make less then X per year.

Well I don't want to just leave you with that, so let's go over some of the code I've already worked on for this small open source project. First let me explain what it is. A desktop alarm clock app, that's pretty much it. Here is where the code is located if you want to download it and mess around. I wanted a little alarm clock that sat in my system tray and I could set up to pop up and yell at me when it was time to take my medication, or anything else I guess. Now I wanted to use WPF because I like it more then win-forms but I found out it would of been a pain to get it working in the system tray. Luckily I found this library that did exactly what I needed!
09 April 2018
Alright so, it's been a while. Sorry about that, life has been, rough. Things are still a bit rough, but I want to get back into making things. If you have been following what I've been up to, I've started making a web series covering random software engineering topics over on my YouTube channel, and doing some stuff on my github account. But I want to start doing stuff every day, even if it's only for two or three hours.

Saddly, currently, I can't stream, my computer is pretty bad right now. I have some computer parts but I just need some ram and I can start streaming again! Until then I will be doing my programming offline and just be posting development blogs here. Part of the reason I havn't started working on my game again sooner is because of this reason. I've thought about it thought, and while I would like to stream everything, I need to get working on my game again.
08 April 2018
Alright, so I finished up crew combat today, so that's good news. I didn't really work one anyone one big thing today. I guess that means we will have to cover a bunch of tiny things. Before that let's go over a few of the things I did. Show who you are mousing over, show when a crew member dies, fix selecting, and a game over screen. Let's just start in order of that. Oh also, during the stream I talked about design ideas, why I picked patreon, and some other things, so you can watch me ramble over on my youtube.

20 February 2017
So yesterday I went over how I did the pathfinding. Today, I got that all ironed out, added some animations for walking, and tweaked a few other things. So I'll be covering in detail how I got animations working, but let's quickly go over some other things I did. So I got selecting units with function keys to work, I basically copied over the code from before, so nothing new there. Also I got it so instead of having to click the sprite to target, you can also click on the little unit display. Figured it would be nice to be able to also click something that isn't moving.

15 February 2017
Alright, finally got that music licensing, so I don't have to mess around with finding music any more. Granted if you have some music you would like me to use, let me know. So today, I mostly worked on getting pathfinding working for the crew combat stuff. I did some other things, but the bulk of it was pathfinding. I also got some of the crew display stuff working for the crew combat section and got selecting working. selecting here works more or less the same as the ship on ship combat.

Before we jump into code, let's go over how I did it. Pathfinding might be a wrong term. Honestly I didn't want to deal with it. I knew I didn't want a grid system set up, so that limited what I could do in a reasonable time frame. At first I didn't want anyone to overlap anyone else, but I ended up changing my mind. What happens now is when you target something, a dude will walk at them, once they get within range they will circle around the guy till there is no overlapping dudes.
14 February 2017
Alright first time working in a few days, feels good! I didn't get as much done as I wanted because I'm not feeling very good today, but hey, progress is progress. So Mostly what I did today was get some art in place. This art is just temporary, just to help show what things should be instead of squares. I got the little pirate animation from here. For the button and burlap sheet, I just googled something and pulled it off that.

09 February 2017
So started working on a new section today, crew combat. Basically you will board the other ship and try to take it over. I spent the first part of the stream trying to figure out how to pass data from one scene to another, I figured it out after a while. You can keep data by making something static, and you can keep gameobjects by using a DontDestroyOnLoad or something similar. So let's go into how I spawned dudes on the ship.

void Start () {
02 February 2017
Alright so let's talk about movement. It's really annoying and hard to get right. I fiddled with it yesterday and ironed out some issues, but I still had some problems. The bulk of what I did today on stream was fixing the issues with movement, but I'm pretty sure I got everything worked out. I also did some other cleaning up, added numbers to weapon UI, hover over for crew to show skill levels, use function keys to select crew, and added a way to restart the game after it was over. I changed a good chunk of the movement stuff, so let's just jump right in.

public void Move(Queue<Vector2> queue)
01 February 2017
Normally I like to post dev blogs the day of a stream, but yesterday I streamed for 8 hours till 11pm, so I was pretty tired. So I guess we are going to go over what I did yesterday, and that's AI! So if you have only been reading the dev blogs and didn't know, I put out a public build last night! You can check it out by downloading a .zip file on my website, you do have to run an exe file, so if that's unsafe to you, you can instead watch a video of it on my youtube.

So before code, let's go over how I did the AI, I think it was a clever trick. Basically it involves an order list that holds onto priorities of what needs to be done. Every so often the AI will run through this list and check if anything needs to be done. Each priority has two things, a filter of segments, and an order. The filter is for what needs to be done, so like manning a weapon is lower than fixing a broken part. The order is for in what order should crew members do things in, so for repairing, you want someone with a higher repair skill to go at it first.
01 February 2017
Good news guys, I finally finished all the work on weapon systems! Well at least for right now, plus I still need to tweak some numbers. Later on I'll add more weapons that do different things. Figure out how crew damage should be dealt with. But tomorrow I start working on AI, and once that is finished I just need to clean up anything else I need, and than the first public build will be out! So let's go over some of the things I did today. One thing I did was combine some methods from both the connector and segment class into a parent class. There was a lot of code copied between the two plus I needed that whole thing with holding onto a target type, this get's rid of all of those problems.

30 January 2017