Development Log 10/8/2024
Our First Development Log
Hi folks!! Welcome! Glad to have you!!
I hope you’re doing well and enjoying your day!! I’m not too bad. Just sorta tired. But what else is new? I’m sure we all could use some more sleep, but here I am programming.
But let’s cut to the chase, I wanted to put together this blog/dev log so I have a better record of my development progress on my rogue-lite pirate game, PlunderVerse. I’m hoping to make these dev logs fairly often as I make more progress on the game. But I make no guarantees on dev log frequency at this point in development.
Without too much further context, I’ve done a lot of work on the game already up to this point. The game still has so much further to go, but I’m finally becoming more and more comfortable with showing it off.
That being said, progress is slow since I am a solo developer, but you’ll see it soon enough. I expect to slowly show off the game as I work on things, and then eventually throw together a trailer once I’m happy.
Now for the real treasure, today I worked on:
The Mission Section / Bounty Screen
The design is really rough, and barely even functional, but this is generally what I’m aiming for in early-access, and what I finished up with today.
Generally, 1-6 bounties are generated (based on pre-set mission types and objectives) on the left side of the board. On the right, you’ll get to learn more about your mission as you click on your bounties.
In a general gaming sense, this is fairly simple. It’s a UI to select your mission to play the game. It’s a basic mouse and buttons, so how hard could it be to build?
Would you believe if I said this took me two days to get to this point?
General Process and Hiccups
First, I started with some concept art and basic designs to help guide myself when building the Widget UI in Unreal. It’s nice to have the freedom to make whatever you want, but I can often be REALLY overwhelming without a plan in place.
In my situation, concept art itself was fine, but I really should have considered my data structures as well. We’ll get there later.
With some basic art, I started messing with interacting with widgets in the game world. After following one of Epic’s tutorials, I was able to get a basic proof-of-concept working where the Widget would work with the player’s interaction.
I had some headaches getting it to work. The interacting actor (usually the player) needs a Widget Interaction Component. This component should also be located at the selection point, so in the center of the screen / end of the rifle. It’s up to you what make the most sense, but you’ll likely have to adjust this. Then, you can call input functions pointed at the widget interaction component.
Additionally, the interactive widget itself seems to use a Button component as the root component. I was unable to get this to work without the button being the base content.
As a result, I ended up changing my design to account for this later, but we’ll figure that out when we get there.
The Actual Mission Select Board
Now at this point, I started on a basic implementation the mission board itself, using more finalized, placeholder meshes to get a feel of how it would look.
I don’t have too much to say about the construction of the UI itself because it came together in an hour or two, without needing it to do anything fancy yet.
WARNING GEEK STUFF & TECHNICAL JARGON OVERLOADS
As you may see, this design hasn’t changed as a lot of the work was done in the “backend”.
Each one of the bounties should be created at runtime, so I wrote functions and structures to start automatically creating the bounty cards.
I ran into a mind-pretzel handling the data. Essentially, the board generates the bounty mission cards, but the board has no idea what the cards are when you select them. The bounties contain the mission content, but if they’re being randomly generated, we must ensure the board knows what board is selected by passing that data over with the UI information (titles, descriptions, etc).
After some thinking, I started passing the single mission data to each bounty individually. Then, as you select a bounty, the text on the right will update.
It sounds easy, but then the right side text is generated with variables and Unreal’s bindings, so we had to create temporary variables so the card could tell the board what it each button is when they’re selected.
Upgrade Houses
I’m using houses as the “stations” to upgrade your stuff at, simply.
Again, I’ve had quite a bit of progress prior to this blog so I’m sorry but I figured I’d still mention it.
It’s not far along enough for me a lot of visuals yet, but here is a small sample to provide some context.
AGAIN, SUPER SUPER EARLY SCREEN SHOT, PROJECT IN DEVELOPMENT, NOT REPRESENTATIVE OF FINAL PROJECT
In this case, I am still experiencing some headaches with data structures and handling. Essentially, the buttons on the left the upgrades for this particular building.
In my game, we have many building, each with many upgrades. So if you’ve been following along so far, you can assume how this can be confusing. But following the same logic from the mission selection screen early today, this wasn’t too hard. The UI now knows what upgrade button
Prior to today, the UI for the upgrade station houses was completed but not functional (buttons did nothing, place holder text & images, etc). Today, I was finally able to get the buttons to talk to the rest of the UI. The right side is not working (besides current loot) yet but it’s coming along. TLDR, I got a system set up for handling upgrades and their UI.
At this point, I got tired and wanted a break.
I then started working on a personal music project, trying to solder together a 1/4″ mono to 1/4″ stereo headphone jack. On my recording setup, my mixer only outputs mono but that causes my headphones to only use one ear. I tried making an adapter but it didn’t work for some reason.
I’m sure I wired it wrong but I could not find any information about this sorta thing online whatsoever beyond lost, old audio forums of people being insult about others asking questions. Oh how the internet hasn’t changed but that’s none of my business [kermit drinking tea meme, you know]
OKAY!!!
We’ll that’s enough of my ramble. I still haven’t slept but I wanna play video games before the sun comes up again so can you blame me? Gotta love energy drinks, it’s okay I’m fine, I swear, I’ll sleep later. Just wanted to work on my game all day 🙂
LAST BUT MORE IMPORTANTLY……
Take care of yourself and make sure you eat something you enjoy this week. And, hang in there. I know life can be hard some times, but there’s people out there who love you and want to see the best for you. Nothing in life is perfect, so we don’t have to either. We’re all good enough. I believe in you.
If you read this far, thank you so much. This is my first write up about my game and I’m just super excited to share the fun I’ve been having building it.
See you next time!
~ Mark
10/7/2024 – 10/8/2024
Leave a Reply