Hello! I’m sorry, while I have been programming for a while, but I’m fairly new to ‘game programming’ as such, I find myself unsure about certain design choices as I’m tempted to apply the logic I’ve used outside of game programming.
One of the things I’ve been struggling with is Blueprint Libraries. I use a mix of C++ and Blueprints in my project - I mostly use the Blueprints to handle visual aspects, and core logic C++ side.
One of the things I most frequently do in my projects is separate the data and logic. As such most of my data for players or monsters are basically just objects with properties, and decidedly moved the ‘game’ logic associated with them to ‘services’ (which my GameMode calls). To make the bridge between C++ and the services easier for me, I’ve been putting them all in Blueprint Libraries, as the result, I have more than a few Blueprint Libraries. The issue is, all these Libraries are basically collections of static functions- (I usually pass the data object in as the first parameter- I am not using any static variables, just wanted to put that out there), and my gut tells me this is bad as I usually rarely use static functions and I shouldn’t be using static functions all over the place like this. Is my gut wrong? Should I be doing this differently? If so, what should Blueprint Libraries be ‘reserved’ for?