Decided to design a BP structure for my game

Did some thinking and decided to design a structure in which to code my BPies for my game.
See what you guys think :slight_smile:

I am not sure if the actor class BP would be the best choice for saving and loading BPies I am thinking of only using their event graphs.
And then if I need to do any casting I am thinking of breaking the sections of the station up into individual pawn class BPies so that the
casting would not be so heavy ???
So by designing it this way I avoid using the level BP.
I want to use Event Dispatchers too in stead of forlooping or casting as much as possible.

[USER=“30716”]Etienne Andlau[/USER]

I Have a weird complex system too,
And i am trying to keep all elements of my system “self-building”
Because i plan to have different Compositions of actors but all under a Master.
All my actors get spawn by a Master-controller and all they share reference to talk him back.

So i place in the lever only 1 Master, and call a customevent to add actors and parts to his control.
He store an array of parts made of actors and meshes.
So when the actors are changed or destoyed , they say to the master themself that Actor_24 is broken, and so on.
Having all reference of all actors already in the master, i made a Structure to save the Full-Master project.
The structure is full of array for actors, locations, materials.
So, The whole stuff dont use game instance or levelblueprint , or pawn , just my blueprint and saveslot.

My saveslot contain the whole project needed for the Master to create the actors,
and all the info the actors need to set up their things.
All packed in one.

I think we are doing something similar but i am a little lost watching your graph
I didnt used almost any dispatcher or gameinstance or pawn at all XD
There is a master problem to solve i dont see?

O.k. thanks no worries I think your setup is more complex than mine.
I only have 2 actors in my game a station and a player pawn.

I say just get a prototype built as quickly as you can however you can.
As obsessing about structure can be as crippling as not caring at all…
So, accept that you’ll have to rework or refactor code anyway later on.
(Ofc this applies more so when you’re a lone indie vs a bigger team).:wink:

O.k. got it. I was thinking the opposite actually. :slight_smile:
Getting the architecture right or more or less right from the start rather than making big Uturns later.
I dont think getting a working prototype up and running as soon as possible is right.
I was thinking its better to design it right from the start and get it working when you get there.
Just like optimization you keep that in mind right from the start and while your building not right at the end.

Well the first rule of gamedev fight club is there are no rules (history shows lots of breakout games ignored all the rules anyway). So do whatever works for you. But accept that your chances of getting all the design right first time around are low anyway, as indie games tend to morph from what the original concept was (same as corporate work where requirements tend to change). So instead encapsulation is key. Try and compartmentalize functionality, rather than have gameplay logic or features cross over into lots of other classes. Then, if you have to change top level design later it wont hurt as much… Overall it helps to dissect or take apart as many projects as possible first, to see what works and what doesn’t…:wink:

I have to do stupid things first today before I get it right of course.
Its learning Friday …
I tried to cast and forloop to my SAVING actor class BP at eventbeginplay and of course it wouldn’t work.
Duh … because even if you dont have a mesh in it you still have to drag the actor BP into the world LOL
More coffee please.
That was 20 minutes wasted.


It working pretty well so far though.
Done with level BP I cleared that out.

I already redesigned the structure 4 or 5 times.
And I barely started the game. :slight_smile:
I think the most import thing is dialing up the garbage collector’s tick rate :slight_smile:
Thats the first thing I am going to do on future projects.
Have the fix redirectors race the garbage collector :slight_smile:
In fact that would be a great theme for future game jams. :rolleyes:

Well the actor class BP for all the saving code seems to work well.
I dont notice any difference between using that and the level BP.
All my event dispatchers are working aiming at it and its getting all the variable info it needs to write out to the save game object.

If there is another class BP which is better to use for saving out and loading in logic someone please tell me :slight_smile:
( I know CPP would be the best )