So, I have a city that is procedurally generated (very basically right now), and what I want to do is when a park spawns, I want to also spawn my enemy spawner BP. The enemy spawner BP has 2 sphere colliders, the big one allows enemies to spawn and the inner one stops spawning upon entering it. If you leave the small one then it allows spawning again until you leave the big one. Now, the problem. The spawner works as intended if I just drag it into my level. It works perfect. But if I have it attached to my park, which gets procedurally placed at the beginning of the level, it wont spawn the enemies. It is recognizing that my player is entering and leaving spawn zones though. I’ve even tried just recreating the spawn enemy BP in the park actor. I’m sure there is some simple solution. This is kind of just a side hobby so I’m learning kind of slow. Can anyone help me?
how much are you working with dynamism in this project (where does the spawner get enemies to be spawned)
if the enemies are DataTable indexes or DataAssets is different then if the Enemies are specific Class references specifically set in the Spawner.
is the class/Type of enemy to be spawned being set in the spawner, for example if the Spawner is supposed to Spawn Goblins does the Spawner have a reference to the Goblin Class (more specifically the BP_GoblinEnemy)?
if the spawner works without being a member/component of the zone, then make sure the Spawner that is being instantiated is one that has the class references set.
after your level/world is generated in the Outliner go to the Spawner, and see if the Spawner has the reference to the class/Type to be spawned.
After reading your reply, I think I might have taken on a project way over my head haha. But to try to answer the best I can, I only have one enemy right now, so I don’t have a DataTable or DataAsset for the enemy. I’m just using a spawn actor from class and selecting that enemy. I do have another BP that is just a counter and increases their health and speed as time goes on which you’ll see the counter in the image I will upload. I also only have one spawner created so I know I’m choosing the correct one.
This is the enemy spawn blueprint.
This is the actor that is being spawned with the spawner attached. I also tried attaching the spawner to this piece after the park was generated. Same result.
Please forgive my ignorance on the subject, and if there are things you think I should go read up on before continuing please let me know. Thank you.
Nevermind. I figured it out. I apparently just needed to lift the spawner up a little bit…
Thank you for the help!
don’t be discouraged by my questions that I was asking; they came down to "where does the Pawn Class
on your Spawn AIFrom Class
come from.
to increase molecularity/re-usability instead of having a spawner per class/type (“Goblin
Spawner” and “Orc
Spawner” is "Elite Orc
a different Blueprint-Class because now that would be a different spawner) you could have “Enemy Spawner” and have the class reference (the thing in the Pawn Class
on your Spawn AIFrom Class
) be given to the Spawner.
this could be passed in by your level/world generator as a Class Reference (in blueprints this could get heavy because every class reference in an object means that skeleton of that class is in memory as long as the holding object is in memory), or an index into a DataTable
/DataAsset
which is just a Name
(specific type of String which ‘technically’ doesn’t need to be a string per say)