(39) 's Extra Blueprint Nodes for You as a Plugin, No C++ Required!

Yes that is what you need to do, I am glad it worked! I don’t compile for linux in the build that I send out to everyone. But for anyone else wanting to compile for linux, open up the .uplugin file and and Linux to the whitelisted platforms list :slight_smile:



"Modules" :

	{
		"Name" : "VictoryBPLibrary",
		"Type" : "Runtime",
		"LoadingPhase" : "PreDefault",
		"WhitelistPlatforms" :
		
			"Win64",
			"Win32"
		]
	}
]


What engine version? Someone reported that matter I think and fixed it, but thanks for mentioning

I will need to investigate that at my nearest opportunity, but I am currently pushing toward first announcements about my game so I am really busy :slight_smile:

How to Use the Same Basic Materila Many Times but Just Change a Texture

Great question!

What you want are called Material Instances!

Material Instance Dynamic = change during runtime
Material Instance Constant = make many of them in-editor

Sounds like what you want is Dynamic

  1. Make base material
  2. where you are changing that texture, right click on the texture node and say Convert to Parameter
  3. Rename the long name of the parameter to something simple like “T2D”
  4. In your BP graph type “Dynamic Material” and you will see option to create a dynamic material from a base material
  5. now you can set your dynamic “T2D” parameter

and how you don’t have to create so many materials!

Further reading:
.unrealengine.com/latest/INT/Engine/Rendering/Materials/MaterialInstances/

Extend the player controller class and use my custom VictoryPC class (“File->Reparent”)

then you will have the functionality you need, click on the function button in BP and override the events I’ve setup.

Once I release the kickstarter for my game that will be a great place to donate :slight_smile:

:heart:

Cross-Platform Create Process BP Node

  • node was first added several engine versions ago, you should have it as far back as 4.13 version of my plugin.*

Continuing with my wish of empowering of you in Blueprints via my Victory BP library, these new nodes are VERY powerful!

With these nodes you can launch other applications of your choosing, with commandline arguments, right from BP!

You can even choose whether the application you launch should be detached and/or hidden.

  1. Detached ~ Your UE4 app can close itself if Detached is true. If false, your UE4 app considers itself the parent of the created process and will wait until that child process finishes running before closing itself.

  2. Hidden ~ If hidden, the process will run silently and undetectable to the user. Useful for background tasks that are not meant to distract from gameplay.

Software Design Consideration
Please use Detached + Hidden with consideration for your end user’s computer resources, as they wont be able to close the app if it is detached AND hidden.

I could not locate a way to end a process via process ID, only handles which are not BP exposeable. If people enjoy these nodes and would like it, I can make a BlueprintType exposed Process handle to enable additional features. So let me know if you are using these nodes!


**Get Application Name**

When you create a process through my BP node, you should save the resulting ProcessID as a var so that you can then verify it was created, and you can use  node to get the name back from the OS.

Is Application Running

If you launch a process and want to wait to perform other logic until you know that process has finished running, you can save to variable the Process ID from CreateProcess and use node to find out when your other app finishes running!


**More Power For You in BP**

Victory to You!

♥



Download Links

4.16 Build (win32, win64, editor, dev packaged, and shipping)

:heart: Please note I now use the UE4 Marketplace C++ Plugin Standard when packaging Victory plugin for you :heart:

  1. Win64 Development
  2. Win64 Shipping <~~~~~~ NEW!
  3. Win32 Development
  4. Win32 Shipping

Please see my instructions for Packaging UE4 Plugins With Your Game.


**Prior Engine Versions**

**4.12: **http://www.mediafire.com/download/g441k2815r5b045/VictoryPlugin12.zip

**4.11: **http://www.mediafire.com/download/jp91b9atphm2obt/VictoryPlugin11.zip

**4.13: **https://www.mediafire.com/?7kt9fepwa1pgs0y

**4.14: ** http://www.mediafire.com/file/7915cuk19c3nbfw/VictoryPlugin14.zip

**4.15: ** https://www.mediafire.com/?6nne04gd74emnzu

Donations can be sent to me via:

:heart:

I did create a dynamic material with an array with the textures which sets the texture randomly and also duplicates…what I did was created a BP with a mesh and made 52 copies of the BP to make a deck but I end up with duplicates of textures which I don’t want…how can you assist me…THANK YOU!!!

Hi everyone,

Im getting warning vrom the vi tory plugin in 4.16 can anyone give me some direction on how to fix it.

CompilerResultsLog: Info C:\Program Files\Epic Games\UE_4.16\Engine\Plugins\Runtime\VictoryPlugin\Source\VictoryBPLibrary\VictoryBPLibrary.Build.cs: warning: Module constructors should take a ReadOnlyTargetRules argument (rather than a TargetInfo argument) and pass it to the base class constructor from 4.15 onwards. Please update the method signature.

Hi,

I’m trying to install the Victory plugin to UE4.16.2 but as soon as I get to the config editing step, the editor crashes at 79% with the message:

I followed the instructions in the wiki and extracted the code in the latest zip into MyProject/Plugins. I started the editor, made sure that the plugin was enabled, then closed it and went into MyProject/Config/DefaultEngine.ini and added UnrealEdEngine=/Script/VictoryEdEngine.VictoryEdEngine under the [/Script/Engine.Engine] header. Is there anything else that needs to be ? Sorry if should be obvious–I searched through the thread and couldn’t find anything.

Thanks for the plugin and your help!

Hi,

Could you tell me how your “Selection Selection Box” node works? Like, can I see the pieces inside it to figure out why it’s not working for me?

At point I have it wired up in my HUD with a hitbox to draw a representation of the box and everything works great in the editor… but as soon as I Package it, the selection starts grabbing everything to the left and above where you select. So if you box around a unit that has nothing to its left or above it, the selection works, but if you select something with units beside it, it selects them too!

I’m trying to figure out why ONLY happens in the Packaged version, not the editor.

Blueprint and picture explanation of the: In Editor vs. Packaged - Album on Imgur

Using UE 4.14

Thanks! :slight_smile:

I have fixed in the next build that will go live :slight_smile:

:slight_smile:



[QUOTE=sgp;730820]
Hi,

I'm trying to install the Victory plugin to UE4.16.2 but as soon as I get to the config editing step, the editor crashes at 79% with the message:



I followed the instructions in the wiki and extracted the code in the latest zip into MyProject/Plugins. I started the editor, made sure that the plugin was enabled, then closed it and went into MyProject/Config/DefaultEngine.ini and added UnrealEdEngine=/Script/VictoryEdEngine.VictoryEdEngine under the [/Script/Engine.Engine] header. Is there anything else that needs to be ? Sorry if  should be obvious--I searched through the thread and couldn't find anything.

Thanks for the plugin and your help!
[/QUOTE]


Sorry those instructions are now only for VictoryEdEngine plugin, which is my Vertex Snap and Instanced Static Mesh Editor Plugin.

For Victory Plugin you do not set anything in your config file, just remove the lines and Victory Plugin will load just fine.

I've updated the wiki accordingly:
https://wiki.unrealengine.com/%27s_Vertex_Snap_Editor_Plugin#Installation_of_VictoryEdEngine_for_Vertex_Snapping

♥



Hiii!

The picture is too low rez for me to see what you are doing, can you post with bigger resolution?

:heart:

Draw Thick Circles Of Any Color in UE4!

Draw Thick Circle With Axis Control

Fun node for you!

With node you can draw circles!

And you can control their thickness, as well as how many points make up the circle!

You can also have axis control!

So you can draw circles horizontally, vertically, at angles, any way you like, with convenient BP node inputs!

See pics!


**Download Links**

**4.16 Build (win32, win64, editor, dev packaged, and shipping)**
https://www.mediafire.com/?ieovbd5l9d7yub2


♥ Please note I now use the UE4 Marketplace C++ Plugin Standard when packaging Victory plugin for you ♥

1. Win64 Development
2. Win64 Shipping  **&lt;~~~~~~ NEW!**
3. Win32 Development
4. Win32 Shipping

Please see my instructions for [Packaging UE4 Plugins With Your Game](https://forums.unrealengine.com/showthread.php?3851-(39)--s-Extra-Blueprint-Nodes-for-You-as-a-Plugin-No-C-Required!&p=476476&viewfull=1#post476476).

Prior Engine Versions

**4.12: **VictoryPlugin12

**4.11: **VictoryPlugin11

**4.13: **VictoryPlugin13

**4.14: ** VictoryPlugin14

**4.15: ** VictoryPlugin15


**Donations can be sent to me via:**
http://lightningfitness.org/donate/

♥

The picture is 1746x920, almost my whole screen(!), it only looks fuzzy when scaled down on Imgur by default. You should be able to see it if you click to expand it to full size, here’s a link to just the picture so you can try. https://i.imgur.com/CCxW7eP.jpg

But just in case, here it is slightly larger at 1920x1080, I cannot make it any higher resolution :slight_smile: . https://i.imgur.com/uyOTMkH.png

Adding the larger one as an attachment too just in case.

Mostly I’m wondering how your node works to see if I can replicate parts of it if I can’t get it working as a whole in my project (or to see what could be breaking it along the way), but double clicking the node won’t expand it so I can’t see what’s in there. :frowning:

help needed!

HI , i am new to Unreal community and i have one question…
Where do i download those plugins
I am specially looking for “BP node for selection box”?

thanx! :slight_smile:

You can download the plugin here: VictoryPlugin16

Also, if you head to the marketplace there are some free as well as paid plugins that are quite handy…

teak

@

The rumor has it I can sample each pixel from a grayscale texture and get pixel’s value using plugin. How would I do that ?

If not possible, do you think you could add such functionality and expose it to BP ?

Thanks

Hi ,

Brilliant work but how would i go about saving a render target texture to be used again when my game is reloaded?

Thanks again!

Victory BP Library Suite of Image / Pixel Loading and Access!!!

Hi there!

Here are the names of the pixel functions in the Victory BP Library that you can look up and check out!

Yes you can indeed read pixel values from grayscale, just make sure it is not compressed if stored in the project. Compressed textures will give weird values. To date no one has shown up with a decompression solution for existing textures. If someone knows solution and wants to share, please do :slight_smile:

However if you load the grayscale texture from hard disk, it won’t be compressed and can be loaded as straight pixels.

I provide you with node to load image from disk :slight_smile:

So I’d recommend

  1. load image from disk into pixel array

  2. access the pixel array

So that means you should use node:



Victory_LoadTexture2D_FromFile_Pixels




/** Load a Texture2D from a JPG,PNG,BMP,ICO,EXR,ICNS file! IsValid tells you if file path was valid or not. Enjoy! - */
static UTexture2D* **Victory_LoadTexture2D_FromFile**(const FString& FullFilePath,EJoyImageFormats ImageFormat,bool& IsValid, int32& Width, int32& Height);

/** Load a Texture2D from a JPG,PNG,BMP,ICO,EXR,ICNS file! IsValid tells you if file path was valid or not. Enjoy! - */
static UTexture2D* **Victory_LoadTexture2D_FromFile_Pixels**(const FString& FullFilePath,EJoyImageFormats ImageFormat,bool& IsValid, int32& Width, int32& Height, TArray<FLinearColor>& OutPixels);
 
/** Retrieve a pixel color value given the pixel array, the image height, and the coordinates. Returns false if the coordinates were not valid. Pixel coordinates start from upper left corner as 0,0. X= horizontal, Y = vertical */
static bool **Victory_Get_Pixel**(const TArray<FLinearColor>& Pixels, int32 ImageHeight, int32 x, int32 y, FLinearColor& FoundColor);

/** Save an array of pixels to disk as a PNG! It is very important that you supply the curret width and height of the image! Returns false if Width * Height != Array length or file could not be saved to the location specified. I return an ErrorString to clarify what the exact was. - */
static bool **Victory_SavePixels**(const FString& FullFilePath,int32 Width, int32 Height, const TArray<FLinearColor>& ImagePixels, bool SaveAsBMP, bool sRGB, FString& ErrorString);
 
/**  will modify the original T2D to remove sRGB and change compression to VectorDisplacementMap to ensure accurate pixel reading. -*/
static bool **Victory_GetPixelFromT2D**(UTexture2D* T2D, int32 X, int32 Y, FLinearColor& PixelColor);

/**  will modify the original T2D to remove sRGB and change compression to VectorDisplacementMap to ensure accurate pixel reading. -*/
static bool **Victory_GetPixelsArrayFromT2D**(UTexture2D* T2D, int32& TextureWidth, int32& TextureHeight,TArray<FLinearColor>& PixelArray);



HUD Get Actors In Selection Rectangle

Hi there!

The only node you need is one, which I contributed to the engine a while back:
.unrealengine.com/latest/INT/BlueprintAPI/HUD/GetActorsinSelectionRectangle/index.html

And you can just use DrawHUD itself.

You should not be using that hitbox code with the node above.

There’s some detailed discussion on the node here:

Use the customization options that I"ve provided to control whether you pick up actors that are only partially intersected, or have to be fully intersected.

The underlying code uses UE4’s bounds rect for that actor, so actors at unusual rotations or shapes may have a very large rectang;e on the screen and therefore be drag selected either unexpected or not at , depending on the settings you picked. The node was intended for things like characters and items with precise bounding boxes, not large mountains and rivers :slight_smile:

If your unit seems to be getting selected when you don’t want, make sure to only include components with collision so that the long flowing cape of your character, or hair, doesn’t abnormally extend the bounding rect.

Enjoy!

:heart:

PS:

Basic Usage

For other readers, node is not part of Victory BP Library, it is in the main engine!

You can use it right now by making a BP of a HUD class and then changing your game mode to use your new HUD BP.

Then create the DrawHUD node and add the node post is focused on.

For drawing of the marquee / selection rect, you can calculate the bounds from the anchor and cursor position and draw lines using one of my other contributes to the engine, the Draw Line With Thickness HUD node.

:heart:

Thanks so much for Plugin -Sama! It really works beautifully.

I have a small problem though:
I need to use the HMD commands VRHeadsetPutOnHead and VRHeadsetRemovedFromHead wich is only being implemented for the Rift in 4.17
so i will have to use your victory plugin(since im lost without it) with UE 4.17 once it is released. Is there a way i can compile the 4.16 version of
victory plugin into 4.17? or will i have to wait for the auther(the mighty -Sama) to compile a working 4.17 version?

Thanks for the help

Thanks so much for your selection help! That worked really well for me!

I can’t believe I didn’t know about that node you mentioned, and the idea to split the selection between Player Controller and HUD was so much better, now I can actually have it go off of left click instead of any mouse button!

Thanks! :slight_smile: