Download

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

Can you make efficient append array node, which is not invole modifiing original array. Just like math “+” but for all types of array’s.

In case you were unaware, the Unreal Engine got the following nodes as well :3

9e27db940e1e4481ab7db8b85f784d2d946fa813.png

i know, you can even double click on those…

im asking about this, because my setupdosnt looks efficient.

problem is, i cannot make wildcard as local variable, which means even with this setup i would need custom function for each variable type.

You could make a Macro and use a Wildcard. That’s the kind of thing the Macro is for :slight_smile:

go on, show me how to do this WITHOUT modifying original array.

You asked for the following:

So this macro here should do the trick (No I didn’t test it, so please let me know):

Thats some next level programming skillsa.png

I know right? :wink:

Did it work for you as intended? :slight_smile:

android platforms can be?

Hi Rama,

I have everything put in the correct place. The Plugins folder under my project and the ini file edited. But getting this error when I load up that project. If I leave out the entry in the ini file, the project loads, so I assume there is an issue with that ini setting. My DefaultEngine.ini has this entry. I also removed +ActiveGameNameRedirects=(OldGameName=“TP_ThirdPersonBP”,NewGameName="/Script/gamename")
+ActiveGameNameRedirects=(OldGameName="/Script/TP_ThirdPersonBP",NewGameName="/Script/gamename") so that does not make any difference.

In the error message, it seems to be pointing to drives and folder that do no exist on my computer.

[/Script/Engine.Engine]
+ActiveGameNameRedirects=(OldGameName=“TP_ThirdPersonBP”,NewGameName="/Script/gamename")
+ActiveGameNameRedirects=(OldGameName="/Script/TP_ThirdPersonBP",NewGameName="/Script/gamename")
UnrealEdEngine=/Script/VictoryEdEngine.VictoryEdEngine

Unknown exception - code 00000001 (first/second chance not available)

"Assertion failed: Class [File:d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\coreuobject\public\uobject\UObjectGlobals.h] [Line: 1128]
NewObject called with a nullptr class

UE4Editor_Core!FDebug::AssertFailed() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\core\private\misc\outputdevice.cpp:374]
UE4Editor!NewObject<UUnrealEdEngine>() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\coreuobject\public\uobject\uobjectglobals.h:1130]
UE4Editor!FEngineLoop::Init() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\launchengineloop.cpp:2076]
UE4Editor_UnrealEd!EditorInit() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\editor\unrealed\private\unrealed.cpp:63]
UE4Editor!GuardedMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\launch.cpp:133]
UE4Editor!GuardedMainWrapper() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264]
kernel32
ntdll

Thanks

Hey Rama! I’ve got another idea for a node :rolleyes:

The command “stat unit” is telling you the frame time for game thread, render thread and GPU. As far as I know there is no way yet to access that information from blueprint. A node like “GetLastFrameStatUnitTimes” with 3 float as output (game, render, GPU) would be really helpful since it would allow to easily display to the player whether he is limited by his CPU or GPU.

There are a few games that do this and I always thought its really helpful. Often players experience low fps and turn down graphics settings so that the game is super ugly, but in some games that are CPU limited thats not giving any advantage in fps, it just makes the game ugly.

Being able to tell the player (in the graphics settings) that he is CPU limited would help a lot in these situations. Such a node would also allow to run graphics setting detection scenes that automatically set fitting graphics settings. At the moment you can only access the frame time, so such an automatic routine would set the graphics settings to super low for someone who has an old CPU and a new GPU. Such a routine would only work well if it could access the different frame times.

I first expected the “stat unit” information to not be available in a packaged game with shipping configuration, but it works there too!

That’s a great idea John! I am adding it to my list!

:slight_smile:

Rama

Three New Key Rebinding Nodes, Remove Key Bind, Get All Key Binds For Key

Dear Community,

I’ve added 3 new nodes for your entertainment!

These nodes enhance my key binding BP nodes, by allowing you to remove axis or action mappings, and also get all axis/action mappings that use a particular key!

See pic!

80fb88efaed7bc6ec137e4cf50ad028047bc0bb1.jpeg


**Latest plugin download on the UE4 Wiki: (7.16 mb) **
https://wiki.unrealengine.com/File:VictoryPlugin.zip

Not using the latest engine version? Check out my wiki section on which plugin release dates go with which engine version!

**Plugin Release Dates and UE4 Engine Versions**
https://wiki.unrealengine.com/Rama%27s_Vertex_Snap_Editor_Plugin#Plugin_Release_Dates_and_UE4_Engine_Versions

Victory Plugin Binaries for Packaged Games


**Victory Plugin on Media Fire**

**If your browser is not updating the Wiki download page** to the most recent version, you can use my alternative Media Fire download link!

Please note the mediafire version includes both the editor and packaged game binaries in the same file ♥ Rama

https://www.mediafire.com/?ieovbd5l9d7yub2

Donations

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

Enjoy!

:slight_smile:

Rama

Rama - searching through this huge 33 page cumbersome thread to try and find an answer - can I use “Victory Save Pixels” node with a different file format that .png?

7e2b06bb38dca92aa25b0c60a5cca3903c2a373f.jpeg

@Sahkan,@Rama

android platform play Sound system crash58c3ca8293fbed2580716c724682008597bea914.png

why?
Thanks?

So using the “Victory Save/Get Custom Var TYPE” nodes seem to haphazardly stick in memory… only half as much? I’m using these in blueprint only at the moment… and when I save the variables on action - they write to the game.ini file successfully and accurately. . . . if I stop gameplay, change STRING types inside the .ini - and replay in editor… the old values stay the same.

HOWEVER - if I use a bool and do the same methods above - the values update when playing new sessions. I can flop between false/true and they update. . . it seems the strings are getting stuck in memory, never releasing and updating ont he file load/call to read the variables… just a hunch.

Anyone else noticing this, or am I doing something wrong?

ac7f657e483caf05027f13e39418df7ee12eed71.jpeg

The ini file is loaded when editor loads, you have to run the game from commandline (right click uproject and say launch game), and then close and relaunch game, if you want to see those ini values changing.

Otherwise you can close editor and restart editor.

ini files are meant for 1 time initial loading

You may want to write out your data to a string array instead of an ini file, I provide nodes to do this :slight_smile:

just look up “save string” in context menu :slight_smile:

you should verify that returned sound cue is valid before using it! Let us know if an IsValid check returns true/false correctly and then prevents crash.

[QUOTE=walldiv;430717]
Rama - searching through this huge 33 page cumbersome thread to try and find an answer - can I use “Victory Save Pixels” node with a different file format that .png?

I can write that functionality, why do you need a different format?

:slight_smile:

Rama

BP Node To Retrieve Your Computer’s IP Address!

BP Node to Get Your Computer’s IP Address!

Dear Community,

I’ve finally succeeded at implementing a node that many have been trying to implement since the Beta!

This is a BP node that gets the IP address of your computer!

My node relies on http://api.ipify.org, a free and easy way to get your current IP address.

Because this node involves an HTTP request I can’t make it a static library node, so I instead made a VictoryPC class that contains only this functionality.

You can easily re-parent your current player controller blueprint to use my plugin VictoryPC class!

File->Reparent

and if you are not using a PC already, make sure to go to World Settings and use my VictoryPC as your player controller!

As long as my Victory BP Library is an active plugin for you, then this VictoryPC class will show up!

Download:


**Celebration!**

Yay!

Now we can all get the IP address of the local computer for use with multiplayer games or webserver activities!

Enjoy!

Rama

Pic

Here’s the setup you should create in your Blueprinted version of my VictoryPC!

2902549c08d489d31bb43f8a7049793370d4801e.jpeg


**C++ Source Code For You**

Here is the C++ source code I wrote just earlier today!



```


bool AVictoryPC::VictoryPC_GetMyIP_SendRequest()
{
	FHttpModule* Http = &FHttpModule::Get();
	
	if(!Http)
	{
		return false;
	}
	 
	if(!Http->IsHttpEnabled()) 
	{
		return false;
	} 
	//~~~~~~~~~~~~~~~~~~~
	
	FString TargetHost = "http://api.ipify.org";
	TSharedRef < IHttpRequest > Request = Http->CreateRequest(); 
	Request->SetVerb("GET");
	Request->SetURL(TargetHost);
	Request->SetHeader("User-Agent", "VictoryBPLibrary/1.0");
	Request->SetHeader("Content-Type" ,"text/html");
 
	Request->OnProcessRequestComplete().BindUObject(this, &AVictoryPC::HTTPOnResponseReceived);
	if (!Request->ProcessRequest())
	{
		return false;
	}
	  
	return true;
}
	
void AVictoryPC::HTTPOnResponseReceived(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful)
{
	this->VictoryPC_GetMyIP_DataReceived(Response->GetContentAsString());
}
 


```



♥

Rama

Two Nodes to Copy and Paste From the Operating System Clipboard!

Dear Community,

I present to you today 2 new nodes that allow you to copy and paste from the OS clipboard!

Please note this has different implementations for different platforms:

Windows,
Linux,
Mac,
IOS
and Android

are definitively supported!


**Video of Usage**

Here's a video demonstrating how this node really does work with the OS clipboard!

https://youtube.com/watch?v=ZkjEhirAlIk

**Latest plugin download on the UE4 Wiki: (7.16 mb) **

Not using the latest engine version? Check out my wiki section on which plugin release dates go with which engine version!

Plugin Release Dates and UE4 Engine Versions


**Victory Plugin Binaries for Packaged Games**

https://wiki.unrealengine.com/File:VictoryPluginPackaged.zip

Victory Plugin on Media Fire

If your browser is not updating the Wiki download page to the most recent version, you can use my alternative Media Fire download link!

Please note the mediafire version includes both the editor and packaged game binaries in the same file :heart: Rama


**Donations**

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

Enjoy!

:)

Rama

Hi Rama - great clipboard node, did you read my post on this? I managed to fudge one like this together - I was wondering, should it be possible to copy other things to the clipboard like images and stuff?

Hope you’re well!

Dan