30/07/2019 – New Project And Rebuilt Streaming Setup

I have begun a new project!

But this time I’ve decided to stream every time I work on it to help motivate me to finish it, as well as get immediate feedback.

So as you may know by the widget on the side of every page, I have a Twitch Channel. I haven’t streamed on it for a number of years, but now I’m back and streaming as often as I can. Most of the time it’s going to be games, but several times a week it will be this new project or something game dev related. Either way, you should follow me and maybe spread the link out so that more people can watch it, meaning I get more feedback.

I would appreciate it.

Watch Making A Space Game I Think, Kinda Just Goofing Around In Unity & Aseprite. from SGTADMAN on www.twitch.tv Watch Making A Space Game I Think, Kinda Just Goofing Around In Unity & Aseprite. from SGTADMAN on www.twitch.tv

Additionally, I haven’t made an itch.io page for this project yet, but I will update the blog when I do.

I will have a new Den post at some point in the future as well. Later.

-Adam

08/04/2019 – Bullet Hell Lane Shooter Has Been Shelved

You’ll find more information on this post.

So after the last post I made; I decided to rebuild most of my PC, do a fresh install of Windows, and reinstall a bunch of stuff. I’m now generally back up and running again and haven’t had too many issues with the upgrade (Except for Metro Exodus, which I’ll get to later).

But looking at BHLS, I decided that it would need to be rebuilt. And then I lost all motivation to rebuild it because frankly, Unity is a pain to deal with.

So today I’ve decided to completely wipe my whiteboard clean and start something new… Or get back to finishing my “Gaming Backlog Sorter” that I was working on at one point. Either way, Visual Studio is gonna get reinstalled. And maybe I’ll fiddle around with Godot. Maybe.

Getting back to Metro Exodus; it runs like shit. Even though I’m getting above 60FPS most of the time, the stuttering is insufferable. It makes playing the game really difficult. I managed to help it by moving the game to my SSD, but the issue still persists. The only real solution is to set the graphics settings on low. So I’m thinking it’s a texture streaming issue or something. Either way, it’s very annoying.

It also doesn’t help that the game really isn’t grabbing me at all. The stealth is awful, the AI is awful, the enemies are irritating to fight most of the time because the visual feedback and bullet sponginess is terrible, and the gunplay is crap. It’s desperately trying to be STALKER-like, but ends up eating it’s own identity to do so. Throw that in with the performance problems and the game just ends up being a real pain.

At least the gun customisation is neat. Pulling up to a encounter, pulling out the backpack, and then switching out parts to take advantage of the situation is one of the few parts I like.

And to end on a happy note: Resident Evil 2 and Devil May Cry 5 are really good games. Thank you Capcom for finally digging yourself out of that hole and making games people actually want.

That’s it for now. Don’t know when the next post will be, but I’m sure it’ll be a happier one.
I hope.

-Adam

26/09/2018 – Not Much Going On, Continuing On.

For the sake of having something to post, I guess I’ll talk about how things are progressing development wise.

So after some turmoil with trying to get custom inspectors to display the data I wanted, I’ve finally gotten back to actual development. This week I’ve added new artwork to the game in the form of sprite work for item pickups, and changed the colour scheme for the game to make it more uniform.

I’ve also added a few new enemy types which are actually just altered versions of existing enemy types.

So yeah, stuff. Have some images to look at:

As you can see, it’s not the greatest piece of artwork, but it is finally starting to take some shape.

A new demo is slated to come out in the first week of November provided things go well.

That’s all for now. Feel free to continue following development at itch.io page.

Later.

-Adam

“Paddles, Ball, & Pegs” Now Back Up

“Paddles, Ball, & Pegs” was temporarily removed from the Play Store due to some very sudden changes in the developer’s Terms Of Service. It’s back up now, but if you were wondering why it was missing, there you go.

Additionally, I will be making the APK available to download separately from the Play Store sometime in the near future, on the off-chance this happens again or if it gets removed permanently.

On an unrelated note, if you wish to stay up to date with progress on my new game, please go to my Itch.io page. I will try and get a new demo out before October.

15/11/2017 – UI Design and Flashcarts

Hello again.

I’ve been busy working on the new game, so I haven’t really had much to discuss for this blog. Again, if you want to keep up to date (Or mostly up to date) with that you can check out the itch.io page. But the last couple of weeks I’ve been working on a sort of content creator which lets me make stuff for the game without having the code everything. Unity’s UI is decent enough for the job even with a few weird bugs and specifics. It does remind me how much I hate Unity’s hierarchy system because it doesn’t let you access the children of an object without jumping through some hoops.

Anyway, UI design is difficult when you only have so many tools to work with. You have to jerry-rig it a bit and try and mash different UI components in a way that kind of makes sense. In the system I have, there’s a thing where I define what happens on each specific lane, and to do that I originally had the idea of using tabs, which Unity doesn’t natively support so I had to build my own version of it. Then I realised that for later parts of the game, there would be so many damn tabs that you wouldn’t be able to navigate it. So I settled on a drop down menu instead.

Persistent data was another thing I thought about. One issue was keeping data contained in input fields to stay, which I solved by just toggling which containers of game objects that contained all the additional menu stuff would be enabled at a given time. The other issue I made for myself was whenever I generate new waves, lanes, or lane sequences; it would delete all the information that was there, and put fresh new objects there. I’m not sure if I’ll ever get around to fixing this issue though.

In the grand scheme of things, pretty small stuff, but surprising in what it does to the user experience especially considering how convenient everything is nowadays. Stuff really needs to work and be presentable. You can’t just do one or the other.

Moving on, I got a GBA Flashcart. This one.

I haven’t given it too much of a test drive because I’ve been busy with other things, but I can at least say it works. I have a 4GB Micro SD loaded into it, and considering how small most GBA games are, I don’t think I’ll be replacing it. The good news is that I can now play Castlevania: Harmony of Dissonance without the game deleting my save because the battery on the cartridge died.

There’s other stuff to talk about but it’s mostly anime and games, and I should probably save that for The Den. Whenever I get around to a new one of those. I will say (And I sure hope I didn’t previously talk about this) that I read the book Masters of DOOM. And if you haven’t read that book, you should. I found it very difficult to put it down. Excellent read.

That’s all for now, till next time.

-Adam

04/07/2016 – Happy America Day!

Although being in Northern Ireland, there’s not really much reason to care.

Not a long post today, mostly just gonna talk about my project. Progress is going well, albeit a bit slowly at the moment. The itch.io page has links to the development long if you’re looking for specifics. That said, I want to talk about feature creep and individual systems taking more time than they should.

The latter first. So a system I’ve been working on a sub-system that picks that an enemy distribution pattern in the game based on the player’s progress. This has taken me a good two weeks to get to the point where I can get something to work, and that mostly comes down to me overthinking its implementation. When I first thought about it, I wanted to build a system that read in from a text file and would generate all the waves of enemies in the game from that. There were two problems with this system:

  1. Each spawner in the game world can take a variety of arguments that defines speed, timing, and what object is spawning. Because of that, if I was to get them, each spawner on screen could require a minimum of 3 arguments. Which considering there could be a dozen or so on screen at anytime, that ends up being a lot of overhead, which Unity is terrible at handling.
  2. In relation to the first issue, I thought a good way to negate it would be to use asynchronous game objects to handle it. However, Unity being Unity, didn’t make that particularly easy. Specially, the more recent versions of .NET allow for Async reading of text files. But Unity, being .NET 3.0, doesn’t have this option. So I had to abandon that idea. The alternative was to use threading, but I’ve never really had much experience with it, and at that point I figured it was more effort than it was worth.

So in the end, I made a hard coded variant that just told the spawners in game what to do. Currently I’m altering that version to take the update cycle into consideration.

Feature creep is something I’ve commented on before, and I’m not gonna say too much on it. But basically, I went from have two notes on my whiteboard to having 5 of them, all filled with additions I want to add to the game. My notebook is also full of them. What’s happened is that I’ve come up better ways with how I want to game to play, but without noting anything technical of how I want to build it.

To be fair, the biggest set of notes is just a list of game modifiers. Regardless, there’s probably stuff I’m either going to cut, or this game is going to take longer than I would like to make. Guess we’ll find out.

Right, that’ll do for now.

-Adam

P.S. Gaming Den post soon.

08/05/2017 – Project Update and Itch.io Dev Log

Hey there folks.

I will probably be using itch.io’s new dev log page for my game to distribute news updates on it. You can view it here. Note that the page is using a secret URL because it isn’t public yet. I’ll probably make it public once I have some useable art assets. You can now view the page publically, but it’ll be generally unlisted if you search for it on the site.

As for the first dev log post, you can view that here freely.

24/04/2017 – Working On A New Project

As I decided to write this, the date changed from the 23rd to the 24th. I am currently starting to write this just past midnight, whether or not I finish writing this tonight is yet to be seen (Somewhat likely, I don’t write much for these).

I can’t remember if I mentioned in my last post that I started a new project. If I did, then my apologies; if not, well guess what? I started a new project.

It’s a game, this time a 3D one that focuses more on traditional control methods (PC/Console friendly), and as such has opened the door to a slew of bullshit wondrous new avenues in Unity’s development tools. Well, sort of. The difference between the 2D and 3D tools from a programming perspective is negligible at best. But, I do feel the development toolset lends itself better to this perspective.

So what is the game? I can’t talk too specifically yet, but it’s a bullet-hell game. Which considering it’s a genre I am terrible at, is pretty surprising that I’m actually doing somewhat well in constructing it.

Now, I’m not quite ready to show any gameplay yet, but I assure you it’s coming along well now. I’m gonna talk about how the progress has been so far, and I am deeply sorry that I cannot go into specific detail about certain scene, scripts, or game objects. It’ll make more sense once I start showing the game I assure you.

When I first started it, I ended up over-thinking a lot of the base principals that would construct the game. Everything was very singular and separated, but still required to communicate with each other. This way of development continued for several weeks, and became harder and harder to work with, and made progress incredibly slow. I didn’t get player movement working on that system until maybe late February or early March.

Sometime after doing the player movement stuff, I got sick and had to take a couple weeks off (I may or may not have also been playing the crap out of Nier Automata by this point, but lets ignore that detail). And after I came back to work on the game, I realised something; Everything I was doing was very convoluted and difficult to manage, especially considering how Unity manages hierarchy of objects in the game scene.

Once I realised this, I broke down all of my previous code and bundled up a lot of the objects that I was generating separately into two slightly different objects (And then made another two based on those), and then generated the game scene based on those. This amendment caused a significant increase in my efficiency and made the other tasks for myself considerably easier.

For example, the player movement code that had taken me several days to make and work properly, now worked within a matter of hours and was much easier to obtain the components I needed from certain game objects.

One of the other issues I had was a little more specific to Unity. I found a need to destroy game objects in a scene, but said objects were being collected in a list. However, Unity’s GameObject.Destroy() function only operates at the end of the frame and not immediately. Which meant that the list I was storing these objects in said there were more of them than there were, which actually broke the player movement system.

Unfortunately, the WaitForEndOfFrame() function didn’t work as I had intended, so I had to resort to rebuilding said lists in the Update() method which is expensive. It’s kind of been nagging me, so I’ll likely end up fixing it at some point in the future. Additionally, the bug can still occur if the player is positioned in a specific way, but that’s also something I’ll fix.

That’s about as specific as I can currently get. Hopefully by the time I write my next blog post I’ll have some images and video to post. Although my next post will likely be a Den post.

That’s kinda all for now.

-Adam

P.S. Persona 5 is hella rad.
P.P.S. Nier Automata is also hella rad.