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

When is Epic just going to hire you so you can amazing plugin integrated into the engine?

Hee hee!

Very nice to hear from you @Osok!

:heart:

Happy July 4th!

Happy July 4th everyone!

If is not a holiday where you live, well you can still celebrate the day anyway!

Have fun today!

Hey, Iā€™m trying to use your plugin for making some rag dolls in a multiplayer game. I have it working to create the rag dolls that every client can see, the problem is when I tell them to stop being ragdolls the meshes disappear for everyone(using a dedicated server.) The player can still walk around after but nobody can see them anymore.

I am doing in the GameMode on the server

That even is being called from the character blueprint, in a server only event.

The 2 Multicast events are in the character bp

InitLocation and InitRotation are correct and return the correct values. The character capsule does move to the location of the rag doll which is one of the things I was trying to figure out until I found your wonderful plugin also the camera following.
I just donā€™t get why it disappears. I have tried a few different ways and nothing seems to work.

Anyways your help is greatly appreciated even if you canā€™t help me, I think what you do is just awesome for the community we need more people like you around.

Awww, thanks! Hee hee!

Well to clarify, what happens when you run your code in single player? Does the mesh work properly then?

I assume you are saying that

  1. works well in single player PIE or commandline game tests (right click uproject, launch game)
  2. only dedicated not working
  3. what about listen server game, does a listen server see things correct?

Let me know!

:slight_smile:

Just tested and got the same results. Single Player, multiplayer dedicated or not they do the same.

I have also been trying to get a weapon that gets attached to drop as well. The behavior is weird, If I detach it with the transform rules set to keep relative the weapon disappears. If I set it to keep world its like it stays attached and keeps moving with the player(not sure how to debug as I am relatively new to UE.)

I tried in a new project to test and see that it works, and it does just fine. I even set it up multiplayer some what and it works. Maybe it has to do with a blueprint project having code added to it, not sure if I am doing something that is causing it to not work. Iā€™m going to try it in a code project and see if that helps.

Iā€™ve setup a C++ project, and now the mesh is not disappearing, its moving itself to the center of the level and not attaching back to the capsule. The mesh is animating like its attached, yet only the capsule moves around and the mesh stays stuck in the ground. I have no idea what is going on.

Question about using ā€œVictory Load Level Instanceā€

Greetings !

Weā€™re trying to do dynamic level loading and thought to try your LoadLevelInstance before rolling our own.

When I load the second instance, a bunch of warnings pop up (added below) - can these be safely ignored or must landscape components be treated differently?

   (BTW - thanks for  your contributions!)

Hereā€™s part of the output.


LogUObjectGlobals:Warning: Guid referenced by Landscape /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_2.sDefault40:PersistentLevel.Landscape40 is already used by Landscape /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_1.sDefault40:PersistentLevel.Landscape40, which should never happen in the editor but coul
d happen at runtime with duplicate level loading or PIE
LogUObjectGlobals:Warning: Guid referenced by LandscapeComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_2.sDefault40:PersistentLevel.Landscape40.LandscapeComponent_0 is already used by LandscapeComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_1.sDefault40:PersistentLevel.Landscape40.LandscapeC
omponent_0, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE
LogUObjectGlobals:Warning: Guid referenced by LandscapeComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_2.sDefault40:PersistentLevel.Landscape40.LandscapeComponent_1 is already used by LandscapeComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_1.sDefault40:PersistentLevel.Landscape40.LandscapeC
omponent_1, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE

Which repeats for the LandscapeComponents and



LogUObjectGlobals:Warning: Guid referenced by LandscapeHeightfieldCollisionComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_2.sDefault40:PersistentLevel.Landscape40.LandscapeHeightfieldCollisionComponent_0 is already used by LandscapeHeightfieldCollisionComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_Victory
Instance_1.sDefault40:PersistentLevel.Landscape40.LandscapeHeightfieldCollisionComponent_0, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE


Wrapping up with:



LogUObjectGlobals:Warning: Guid referenced by SceneComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_2.sDefault40:PersistentLevel.Landscape40.RootComponent0 is already used by SceneComponent /Game/Prototype/levels/gameworld_1k/UEDPIE_0_sDefault40_VictoryInstance_1.sDefault40:PersistentLevel.Landscape40.RootComponent0, which sh
ould never happen in the editor but could happen at runtime with duplicate level loading or PIE


I will check it out, I am happy to notice that 100% of your forum posts have been in my thread so far, welcome to the UE4 forums!

:slight_smile:

Victory Ragdoll Updated to 4.12!

Iā€™ve now fixed my Victory Ragdoll system to work in 4.12!

If you are not familiar set of BP nodes, they allow you to:

  1. Have a character, including player character, enter ragdoll at any
  2. exit at any , with capsule updated to new ragdoll position
  3. optionally have the camera follow the ragdoll while simulating!

Here is my very very original video demoing which includes the now famous Naked (mostly) Man

https://www./e-3irWhYzMU


**New Download for UE4 4.12 (55mb, Media Fire)**
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  **<~~~~~~ NEW!**
3. Win32 Development
4. Win32 Shipping
4. HTML5 Development
5. HTML5 Shipping **<~~~~~~ NEW!**

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.11: **VictoryPlugin11


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

ā™„

I have to say WOW. Thank you so much for the update. A nice surprise and so fast. Iā€™m speechless.

Hey , sorry for the late response - until now weā€™ve been pretty busy to upgrade the engine.

Unfortunately I cannot manage to make it work with UE 4.12: the launcher keeps complaining that itā€™s incompatible with that version. No issues with the Victory BP Library, the problems persist with VictoryEdEngine only.

I noticed that the last uploaded version on the wiki (A new, community-hosted Unreal Engine Wiki - Announcements - Epic Developer Community Forums) dates back to May 1st, but didnā€™t 4.12 come out in June? Is there something missing or am I doing something wrong?

Thanks for you patience and, as always, for your hard work :slight_smile:

Youā€™re welcome!

I am really not sure why wiki did not update with the newer file, but it is updated now :slight_smile: here is a direct link in case your browser cache takes a while to get used to the update :slight_smile:

https://d26ilriwvtzlb.cloudfront.net/5/51/VictoryEdEngine.zip

I hope you have a lovely day!

:heart:

Hi I have both the latest versions of VictoryPlugin412 and VictoryEdEngine in my Runtime folder with the

line added to my projects config/defaultengine.ini file but Iā€™m getting a crash on startup, any suggestions? thanks

The VictoryEdEngine is a bit unusual because it is not a runtime plugin, it is an editor plugin :slight_smile:



"Modules": 
	{ 
		"Name": "VictoryEdEngine",
		"Type": "**Developer**",
		"LoadingPhase": "Default"
	}
],


Try putting VictoryEdEngine plugin at your project level as an initial confidence-boost that you are doing things right, just YourProject/Plugins

and then make VictoryEdEngine folder and put everything in there.

That should work, and if that works, try putting the VictoryEdEngine plugin at the engine level if you want access to it in projects, but put it in Plugins itself or Plugins/Editor.

:slight_smile:

**Get Vertex Locations of Static Mesh

Works in Packaged Games**


**My C++ Code For You**

See my PhysX wiki for the basic build.cs setup:
https://wiki.unrealengine.com/PhysX,_Integrating_PhysX_Code_into_Your_Project

Here is the code I wrote to get  of the transformed vertex positions using the Body Instance and PhysX code!

I am doing many safety checks to ensure the Body Instance data is valid before utilizing it, and the result is that now you can get accurate vertex locations in packaged games!



```


//~~~ PhysX ~~~
#include "PhysXIncludes.h"
#include "PhysicsPublic.h"		//For the ptou conversions
//~~~~~~~~~~~

//Get Transformed Vertex positions of any static mesh! -
bool UVictoryBPFunctionLibrary::GetStaticMeshVertexLocations(UStaticMeshComponent* Comp, TArray<FVector>& VertexPositions)
{
	
	if(!Comp || !Comp->IsValidLowLevel()) 
	{
		return false;
	}
	//~~~~~~~~~~~~~~~~~~~~~~~
	
	//Component Transform
	FTransform RV_Transform = Comp->GetComponentTransform(); 
	
	//Body Setup valid?
	UBodySetup* BodySetup = Comp->GetBodySetup();
	
	if(!BodySetup || !BodySetup->IsValidLowLevel())
	{
		return false;
	}  
	
	//Get the Px Mesh!
	PxTriangleMesh* TriMesh = BodySetup->TriMesh;
	 
	if(!TriMesh) 
	{
		return false;
	}
	//~~~~~~~~~~~~~~~~
	
	//Number of vertices
	PxU32 VertexCount 			= TriMesh->getNbVertices();
	
	//Vertex array
	const PxVec3* Vertices 	= TriMesh->getVertices();
	
	//For each vertex, transform the position to match the component Transform 
	for(PxU32 v = 0; v < VertexCount; v++)
	{ 
		VertexPositions.Add(RV_Transform.TransformPosition(P2UVector(Vertices[v])));
	}
	
	return true;
} 


```





New Download for UE4 4.12 (55mb, Media Fire)

: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
  5. HTML5 Development
  6. HTML5 Shipping <~~~~~~ NEW!

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


**Prior Engine Versions**

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

Donations can be sent to me via:

:heart:

do you know that youā€™re the patron saint of Unreal? <3 <3 <3 it works if I keep it project level only, but Iā€™m okay with that!

Hee hee!

Sounds good to meee!

Lovely to hear from you MattD!

:heart:

How to get the Relative Path to your project Game Dir in a packaged game, anywhere on device

Dear Community,

A reminder of these extremely powerful nodes to help you access the directory structure of your game after it has been packaged and put wherever by your user!

Victory Absolute Paths!
Live as of March 3rd 2015 build

Get the File Path to your project .exe, your project root directory, and more!

These paths are dynamically updated even if you move the entire project to a new location on your computer!

** these nodes are fully compatible with packaged builds and return absolute paths!**

These nodes also work in Development/Editor builds!


**More Power For You in BP**

Now you can easily create your own folders/files, relative to the project root directory or your project's .exe!

Please note that in editor builds, the .exe returns your UE4Editor.exe location, but in packaged games it returns your game's .exe

![ca6e47c3de4ce0fc029accc855a97ab3b66c7f0f.jpeg|1260x774](upload://sSMIRl140vUkZisnTkYGaDdAz4X.jpeg)

Recommendation:

I recommend using the Project Game directory for most of your relative path needs! works the same in Editor and packaged builds!

You can also get your Saved and Logs folders for your project in both packaged and editor builds!


**New Download for UE4 4.12 (55mb, Media Fire)**
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
4. HTML5 Development
5. HTML5 Shipping **&lt;~~~~~~ NEW!**

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.11: **VictoryPlugin11


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

ā™„

@, I think, thereā€™s a typo in your code on github. See .

Shouldnā€™t it be


Pixel.A = ((Pixel.R == ClearFColour.R) && (Pixel.G == ClearFColour.G) && (Pixel.B == ClearFColour.B)) ? 0 : 255;

instead?

Or simpler:


Pixel.A = Pixel == ClearFColour ? 0 : 255;