ga-fmp-year-2
ga-fmp-year-2
GA FMP Year 2
154 posts
Don't wanna be here? Send us removal request.
ga-fmp-year-2 · 24 days ago
Text
Systems explanation video
youtube
The edited down gameplay video on the previous post covered just the gameplay, but my focus on this project was less about the built game itself, and more about the systems that went into making it, so I put together a significantly longer video covering all of that too.
0 notes
ga-fmp-year-2 · 24 days ago
Text
Editing a gameplay video
youtube
As part of my outcome for this project, I put together a video showcasing the gameplay of Metal 'N' Magic. (shown above)
This was edited using Davinci Resolve, which is a powerful video editing software which I've become accustomed to over the years
Tumblr media
(screenshot of me editing in Davinci Resolve)
I used OBS Studio to actually record the footage, and I made sure to play the game in full-screen mode while recording. I did this in order to make the video feel cleaner without any distractions from the operating system or other programs.
OBS Studio:
I unfortunately lost the footage I'd recorded of the inner systems (code/blueprints) for the game, so I plan to put together a quick video explaining that today. I may have to save myself the time of editing in a bunch of text and instead record a voiceover for that one though, since the systems being covered will actually need to be explained properly.
0 notes
ga-fmp-year-2 · 2 months ago
Text
HUD
The last thing I want to add to the game is a gameplay HUD for displaying player & enemy health, as well as visual indicators for dashing & shooting cooldowns. This is the final thing I intend to add to this project before submission.
I created a progress bar, set it to rounded edges, and gave it the following colours:
Tumblr media
This will be the enemy health.
I then duplicated this and made a smaller version in the top right:
Tumblr media
This will be the player health.
I then duplicated it a couple more times, made some smaller ones in the bottom left, and gave them different colours:
Tumblr media
These will be the cooldown indicators.
I added text to each of these, and organised them into canvas panels:
Tumblr media
Finally, I added some code to the level blueprint to display the widget on the viewport and now it's ready to be given functionality:
Tumblr media
The functionality should be relatively simple to add using the bind option on the percent part of each bar:
Tumblr media
Or at least I thought it would be. I seem to have messed something up here as it is not working how I expected:
Tumblr media Tumblr media
It shows as empty even though the enemy clearly still has HP remaining.
I decided to attempt a less janky approach, and simply add a "max health" variable to the enemy which sets itself once the game starts:
Tumblr media
And then reference that instead:
Tumblr media
This still doesn't really seem to be working though. I need to somehow make the calculation work out the max hp as equal to 1, and the current hp equal to a fraction based on a percentage of that. (If max hp is 2, and current hp is 1, the output should be 0.5). I'm not sure what I'm messing up here so I'm going to have to look it up for a refresher.
I've done this multiple times before which makes it annoying that I need to look this up but sometimes you just need a reminder on these things I suppose.
youtube
Referencing this, I took the approach here using the set percent function and tried adapting it to my needs:
Tumblr media Tumblr media
However the health bar is still acting weird. I have no idea what to do. It's now the end of the day and I haven't handed in the project or written my evaluation. I think I'm going to have to scrap this unfortunately.
0 notes
ga-fmp-year-2 · 2 months ago
Text
Player health in custom mode
I added this entry to the health section of the custom mode UI:
Tumblr media
And then I added this to the event graph:
Tumblr media
And that's quite literally all that needs to be done! This is now fully functional!
0 notes
ga-fmp-year-2 · 2 months ago
Text
Difficulty options failing to load level
I'm not sure why, but selecting the difficulty options on the main menu (easy, normal, and hard) do not successfully load the level. This issue does not effect custom mode though, that mode works fine.
I set some debug print nodes to help diagnose the issue, and I've concluded the issue must be in my Set Level Variables macro, as the print before it works fine, but the one after it does not:
Tumblr media Tumblr media Tumblr media
Opening up the SetLevelVariables macro, i don't see anything wrong. I added a debug print node to the cast failed pin just in case, and it turns out that's where the issue originates!
Tumblr media Tumblr media
My issue is I have absolutely no idea why this is happening. I've deleted and remade the node in case it was referencing an old version of the blueprint or something (as BP_GameValues has been renamed twice now), but this doesn't seem to have helped.
I asked my tutor for advice as I was completely stumped on this, and the issue turned out to be due to me renaming the gameinstance recently and for some reason unreal engine didn't update the game instance class and instead just removed it entirely, so the game instance was never loaded.
Tumblr media
As soon as I put it back, the issue was resolved.
0 notes
ga-fmp-year-2 · 2 months ago
Text
Player health in each mode
Easy:
Tumblr media
Normal:
Tumblr media
Hard:
Tumblr media
(I also increased the enemy health in each mode as I felt the values were too low before)
0 notes
ga-fmp-year-2 · 2 months ago
Text
Player Health System
I scrapped the code in the enemy projectile, and moved most of it to a death function in the player, which is called in the damage function if the health variable reaches 0 or lower.
New projectile code:
Tumblr media
New damage function:
Tumblr media
New death function:
Tumblr media
I've set the enemy projectile's damage value as 1, and I don't see much reason to change this since the game is build around "health = number of times actor can be hurt before dying". It wouldn't add anything new to be able to change the damage value in custom mode, since the exact same effect can be achieved by altering the actor's health.
Tumblr media
And then I simply made the player set their health from the GameValues Game Instance at beginplay:
Tumblr media Tumblr media
Upon testing this works as expected, the game feels identical to how it did before, but now I will be able to edit the player's health in each difficulty mode, and add an entry in custom mode to edit it too.
0 notes
ga-fmp-year-2 · 2 months ago
Text
Final(?) additions before submission
Before submitting my project, I need to compensate for the lack of tutorial. I think the way I'm going to do this is by adding a help menu to the main menu with information on the game and controls, and I will also have a small indicator for the dash and shoot buttons in the UI, next to a cooldown indicator for each.
My plan is to have a progress bar at the top of the screen to display the enemy's health, and then in the bottom left there will be 2 smaller progress bars to display the cooldown for the dash and shoot mechanics.
The other thing I want to do is add a health system for the player, so multiple attacks can be taken before losing. And when losing I want the player character to turn invisible (I can't destroy the actor entirely, as the camera is a component of it and I do not want to set up a whole new camera system at this point).
After these have been finished, I will consider the project done, and I will finally submit it.
0 notes
ga-fmp-year-2 · 2 months ago
Text
Updated all widget buttons to match main menu style
Tumblr media Tumblr media Tumblr media
0 notes
ga-fmp-year-2 · 2 months ago
Text
Making enemy face player
I quickly added this to make the enemy constantly rotate to face the player. I'm not sure why I didn't add this earlier:
Tumblr media Tumblr media
0 notes
ga-fmp-year-2 · 2 months ago
Text
Getting music and sounds
I want some sounds for my game, nothing super fancy, just need something to get the job done that somewhat fits the game's theme.
I need to make sure I respect the licences of sounds and audio I use, so I've gone with ones which seem to have licences that allow me to use them in my project without needing to do anything extra. From what I can tell, the Youtube Audio Library's music has this type of permission:
Tumblr media
I took the following pieces of music from the youtube audio library:
Main Menu Theme:
youtube
Gameplay Music:
youtube
For the sound effects, I used freesound.org. And I used these sounds for the UI:
Button Click:
Game Start:
And I took these sounds for the gameplay:
Player shoot:
Enemy single shot:
Enemy spread shot:
Enemy circle shot:
Using these sounds, the game now feels a bit more alive:
0 notes
ga-fmp-year-2 · 2 months ago
Text
Scrapped tutorial
I'm simply not going to have the time to create a full tutorial so I've removed the button from the main menu:
Tumblr media
0 notes
ga-fmp-year-2 · 2 months ago
Text
Minor UI colour changes:
Tumblr media Tumblr media
I incorporated some more purple colours into the UI to fit the magic theme a bit more.
0 notes
ga-fmp-year-2 · 2 months ago
Text
Menu background
I created this in Krita to use as the background of the main menu:
Tumblr media
I created a version with a dark transparent overlay so that it's easier to see the ui elements in the foreground:
Tumblr media
This is how it looks:
Tumblr media Tumblr media
0 notes
ga-fmp-year-2 · 2 months ago
Text
Player Projectile Model
Tumblr media
Went with a slight transparency as i felt that made it look a bit more like magic. I think this would look even better if in-game I give it some kind of particle trail effect, but as for the actual model honestly this should be plenty.
It seems the transparency didn't carry over. I'd look into this but it's such a small detail it really doesn't matter. If I have time to spare at all I'll have a look, but I probably won't.
0 notes
ga-fmp-year-2 · 2 months ago
Text
Enemy projectile model
I've decided to make the model for the enemy projectiles a bullet, since the enemy is a robotic cowboy. Whilst the enemy doesn't visually hold a gun, the implication should be there.
Tumblr media
I based the bullet on this image:
Tumblr media
I added some silver at the back because i felt it looked a bit bare without it, but after reconsideration i think it does actually look better without the silver:
Tumblr media
Then I imported this model into the game and put it over the enemy's current projectile:
0 notes
ga-fmp-year-2 · 2 months ago
Text
Title Art
I've opened Krita and started trying to draw some art for the title. I wrote the word metal out in all caps using the line tool to make it look as rigid as possible:
Tumblr media
Honestly I'm already happy with this. I might make some adjustments like squishing the M and making the L a bit thicker, but at the same time I kind of like how uneven it looks, so I might keep it as it is instead of trying to make it symmetrical.
Next I need to draw the 'n'. I think this part should be the least interesting, just making it look as generic as possible without standing out too much. I want it to be flowier than the word metal, but not as much as the word magic will be. I just went ahead and drew one with my mouse and it came out like this:
Tumblr media
and to be honest I like this. Usually I'd be all for iteration and trying multiple styles but considering I have lots I want to get done and I'm already happy with this one, I'm just gonna go with it.
The word magic is probably going to be the hardest one to do. I'm not good with super styalised writing, so this is probably going to require some trial and error. For now I'm just going to focus on one letter at a time, starting with M.
Here's my first attempt:
Tumblr media
I think I like the idea of having the letter have a kind of brush off near the ends, but I feel like the rest of the letter looks pretty bad. I might need to look up some inspiration here.
Looking through google images I found a few ones I liked the look of:
Tumblr media Tumblr media Tumblr media Tumblr media
I like how the M curves off at it's edges, like what I attempted to do. I also do think the word looks better if only the M is capitalised.
Using these images as reference, I far prefer the look of this one:
Tumblr media
Next is the a, and I think think I'll go with the lowercase variant as I mentioned:
Tumblr media
This looks a bit off, I think i made the ends too thick.
Tumblr media
Nevermind I think this looks worse.
Tumblr media
I'm really not sure what else I can do here to be honest. Maybe lowercase a isn't the way?
I tried drawing a capital A but i cannot for the life of me see it as anything other than an among us character:
Tumblr media
Looking at the full image so far, I realised I actually really don't mind the lowercase a at all, I think I was overthinking it when looking up close:
Tumblr media
Not having much luck with the g though..
Tumblr media Tumblr media
Though i tried a different style g and I think this looks better:
Tumblr media
I went through similar processes for the rest of the letters, and I finally landed on this:
Tumblr media
Making use of Krita's gradient tool, I coloured it like this:
Tumblr media
Finally I imported this into Unreal and put it on the main menu widget:
Tumblr media
0 notes