So after graduating my life has basically been on a temporary halt. As of 7-1-25 I’m stuck in Savannah because I don’t really have a lot of options for moving anywhere. I have some vacation plans in the coming months but after August I have to figure out what to do.
Why does this matter? Because I’m losing my mind slowly and been picking up the most random projects to keep myself entertained. Also slightly off topic but I happen to have 5 cat children at home and I am slightly obsessed with making cat related projects.
Also this is my blog and I can say whatever I want.
Anywhoosies…
I have always loved simulator games. Life sims, Mil sims, Racing sims and games in general. Rimworld has easily consumed over a thousand hours of my lifetime.
That being said, one of my all time favourites is Faster Than Light. An absolute gem in sim games. While its not your typical simulation game, you’re still managing a crew of units on board a space ship while navigating through space.
FTL was definitely my primary inspiration for this project, and so I set sail to make a split screen selection styled combat system!
My cat crew members have pretty dumbed down logic as I don’t want them to take any actions without the players input. When I go to make enemy NPC characters its going to function off of a blackboard because that's what I’m most familiar with.
These adorable little fellas have some animations I whipped up quickly in Maya and sent over to Unreal. I don’t have an animation blueprint setup yet because I’m still quite inexperienced in those. However I did setup my own sort of semi-functional animation switcher in blueprint.
The controller really just exists to click on things and to check where it should be casting to. Not very complicated.
The complicated part was splitting the two screens into a single player character. Now there are many ways to do this. The method I ended up selecting could cause a lot of issues down the line. But for myself? At this very moment? It works great.
Essentially I spawned two player characters. One controller is bound to the enemy location and one is set to the player’s. When the players mouse hovers to the other side of the screen the game swaps the controllers and pawns.
Are those cats on a boat?
Why yes, they are. How kind of you to notice. They’re pirates btw. Their hats spawn on them randomly. Just so you know before you ask, “Where are the silly pirate hats???”
I gotchu fam. They DO have silly pirate hats.
I started by creating a custom controller with my own inputs. I really love how much control the enhanced input system gives you so I almost always opt to create my own controllers, player blueprints, and gamemodes.
Sometimes I get carried away working with the default code. Later on this can get me in trouble sometimes when trying to add customization or using different levels.
Selecting units in the game is currently just a Left-Click but I plan on adding a drag select style cursor as well.
Roll for Hit
The cannon firing has its own default accuracy stat and can be easily modified in blueprints. Aim modification is setup to be at anytime during combat. So if a crewmans firing skill levels up mid combat the cannon can adapt and receive those bonuses. You can also just add bonuses on spawn. The random modifications are useful for things like shops etc.
You’ll be on a map sort of how Slay the Spire is. The player can select a path and then the game will randomly generate an encounter or event.
Niagara is such a beautiful thing. I created a few different effects just to help convey some gameplay mechanics. The material graph for those explosions is super simple as well.
Pizzazz, Baby.
So, Yes. I’m using split screen. Will the game explode if I plug two controllers into the PC? I’m certain it would. But for now? It’s working great and letting me select into both viewports without having to create a bunch of scene captures and doing a bunch of annoying math (which I might have to do anyways for the drag select mechanic I want to add).
I thought the work around was pretty clever. You may have noticed from the video earlier that the cameras merged into one. Thats a simple node in blueprints called “force disable splitscreen." That function fires off a render check in Viewport 1. “If you see the enemy boat in this camera turn off split screen.”
That just about sums it up for this project. This is where I may leave it for a while. Though I would love to make a fully fledged game around cat pirates on a boat- I don’t even have a design document for this. I just got really, really bored one day.
Oh yeah. My cats are Jimmy, Grey Cat (yes thats her name), Bon Jovi, Rudy, and Aegon.