Blueprint: Helpful BP Functions

Drop an instance on the field and go to the details panel. Go to the mesh array and add elements.

Casting Help

How did you do the “Cast to AIMob”? Is that a class you made?

Great list! It’s difficult to maintain with a Forum thread format, this stuff would be great on a Wiki or something similar. I’ve approved the link on the ZEEF page as well.

I do not know how to add anything to a wiki is there a guide?

Bump for new people.

Awesome Works Shoiko.
here you can find guid for adding page to wiki:

I’m going to try to add these to the wiki this week.

You would really be my hero forever if you could:

It would be so great to have that page growing with plenty of new BP use cases, organized in categories (Player control, rendering, tools, UI, weapons, etc…), and filled by people like you or Rama ! :slight_smile:

Do you have a pic of the event graph for the draw radar? I’ve got every function down perfect but dont know how I should be using the materials and calling these functions. Also the mob_ai I skipped that cast, any tips on that?

I set isDetectedActorInRange macro to print “No enemy on radar” if not in range, and it continously prints that. My enemies are just primitive pawns placed around my first person controller with default cubes placed on them so I can see them They Auto possess: player 1, auto possess AI: placed in world or spawned and AI controler class is stock AI controller and they auto receive input: player 1

My event graph just calls goes EventReceiveDrawHud -> DrawRadar() and it draws the radar just fine, but nothing else, well it does draw a small black square in the very corner of the image which is odd I never placed that there in PS.

For “enemies” I get all actors of class ‘Enemy_BP’ which are just pawns turned into blueprints with a cube attached.

I can send you the project in a PM or email.

I compared to Dropbox - Error and its exactly the same, I was just misssing the construction script part, but added it in to no new effect.

I also re-added in a cast to ‘Enemy_BP’ which is just the standard pawn with a cube mesh attached as I was saying above. That cast works… but I still get “no enemies in range” printed constantly even with 'Enemy_BP’s placed near the player, far away from the player etc.

Heres something interesting though. Under “isDetectedActorInRange” macro, if I set the default value for the EnemyRadarDisantance (what you called MonsterRadarDisntace I think) to around 14000.0f, then It is is range until I move away, and if I move close, then it starts saying out of ranger again. Interesting but not working perfectly.

CurrentEnemyScanDistance (I think you called it CurrentMonsterScanDistance) is set by getting the distance between all enemy of the class you choose to the player pawn. So basically If I set MonsterRadarDistance to 13900.0f then it reads in range “inrange” [thus CompareFloat(currentMonsterScanDistance) is < CompareFloat(monsterRadarDistance). But when I walk back (so I assume then im further from the nearest enemy(monster) its greater than or == 13900 and thus reads not in range.

Thats interesting, but it still doesnt draw the dots. For draw smart texture the ‘Material’ input is of type ‘material instance’ so I have a material thats a green transparent (0.1 value for opaque) material set to ‘Translucent, defaultLit’ for my “base material” then I create a material instance called ‘PlayerID’ using that green translucent material as the parent, I override the blend mode to ‘Opaqe’ so its just a opaque green material.
I do the same for the MonsterID, except red and the same for the radar screen overlay except the parent material for the radar overlay is a texture and then radarover_instanced overrided the blend mode to translucent so we get a instanced material of a radar circle with a transparent background.

Those three materials are plugged in where needed for the draw smart textures.

Actually I can post the project cause its just a test project doesnt have any of our game code, just the public community ocean plugin. 200MB sorry, even with autosaves and backup deleted just the textures from the ocean.

your main issue may be the fact that your scan is fining nothing. When you use Find all actors of class it should find every enemy you have on the field. After that you do a distance detection to see if any are in range. So to break this down in small peices first make sure that you are detecting your NPC actor by making sure that the “Find all actors” actually is finding the right class type, this scan is also why i use a cast to verify that the actor found is the correct type.

Once you verify that, just test to see if u can draw a point on the screen. to make sure the draw function works.

I take that back it looks like it is working for your detection BUTT ur enemy matria is not created so u are drawing NONE materia if you debug and step through then right before the enemies are drawn you have a material for EnemyDotInstanceMat this needs to be set just like you set RadarDynamicInstancedMat When i make my own and set the matreial for enemy to it i now get dots on my screen. But they draw black. It is black because you cant use lit material settings for GUIs you have to change them to unlit and use the emmisive or you could use emmisive of the default lit but otherwise yeah everything is gonna be black.

Pic or it didnt happen.

Thank you for the quick response. I didnt spend too long on it, couple hours last night building the BP, comparing and tuning this morning for a couple, and then mothballed it for a bit. Will try playing with the materials I was wondering why it was drawing one dot in the corner but nothing else. Thanks again, but let you know if I run into any othre problems.

Will add some pics of my useful BP pictures I’ve been collecting for our project on our private repo when I have time, been toying with a sonar system that finds the distance (range) and bearing (direction, based off an ‘anchor’ to north or 0 degrees) to a sound of a pawn; would complement the little radar well.

Got it working thanks! I have to figure out the technicalities of it (for example when I change the isActorInRange variable you called “MonsterDectionRange” or something to the 14000 i had it makes the radar very very tiny and pick up all enemy pawns. If I make it 500 it only picks up very very close ones, but they are drawn way out on the edges of the screen. Then I gotta figure out how to draw shapes other than just a small square and I will have a perfect starter system for my world map that shows the ships and what direction htey are heading in.

Hey Shoiko, on the (Multiline Message Box) when you (Cast to RPG_StateSystem), to whom are you cast to? Is it a BP actor,character? And is there something on that BP?
And thank you for share, much apreciated!

Just started Maya LT and needed an exporter similar kinda to the Batch Exporter for MAX that will export the meshes and associated UCX collision to separated FBX files Using the naming convention of the object itself. Finally, I reposition the objects back to a programmed spacing. (You can remove that if you want I just used that to reorganize my scene). Also I am assuming that the Pivot of the UCX shares the same offset as the pivot from the base mesh to keep everything aligned properly:

Please note you only have to select the base mesh and none of the UCX meshes associated with the mesh.

Hope it helps some ppl.

Download Mel Script: KM_ExportEachToFBX.mel

Modified the ucx_box_collision_tool_00 for 3DS Max to get the name of the mesh that you are making UCX’s from:

Line 94 change it to look like this. Now your Col boxes wont be UCX_Collision Hul every tiem you generate one.

UCX BOX Collision Tool for 3DS Max

Also to adapt the pivot location.

the_box.pivot = selection[1].pos --< Used to adapt the pivot to the source object
the_box.wireColor = (color 255 0 255 )

Unreal Engine 4 : Follow Spline Path and Detect Point Interaction :

Project here:

4.8 Terrain To Spline Alignment


I’ll have to take a look at that.