Download

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

As far as i know ParseIntoArray for blueprints does work with a multi-character string and i assume that would be the same for c++, but ofcourse i could be wrong.

I would really really like to see a MoveTo-Node for any Actor.

No, you are right. There are two version of ParseIntoArray, which I did not notice. I was working on C++ to break up strings, and I tried to use the wrong version. I thought the Bp version was similar. But looks like I was wrong and what I wanted was already there. Anyway I needed to set a limit and trim on the elements, so I guess it was not a complete waste of time.

**New BP Node

Explode String!!!**

Node Description:



	/**
	*
	* Contributed by: Mindfane
	*
	* Split a string into an array of substrings based on the given delimitter.
	* Unlike ParseIntoArray() function which expects single character delimitters, this function can accept a delimitter that is also a string.
	*
	* @param InputString - The string that is to be exploded.
	* @param Separator - The delimitter that is used for splitting (multi character strings are allowed)
	* @param limit - If greater than zero, returns only the first x strings. Otherwsie returns all the substrings
	* @param bTrimElelements - If True, then each subsctring is processed and any leading or trailing whitespcaes are trimmed.
	*/


Dear MindFane,

Your BP offering is very nice!

Anyone find it funny that I was taking requests to make new nodes and ended up getting a node from Mindfane instead? Hee hee!

I modified the node a little to return the FString array by reference, an important optimization for larger amounts of data.

This node is now live in my Victory BP Library plugin!

Latest version can be downloaded from my original post!

Or here!

This is a great idea, but hard to do without a tick function, not something available to me in static BP library node context.

The incremental move BP nodes that are already available are your best bet at the moment :slight_smile:

Best I could do is an incremental move to location that you have to call every tick, I can check when unit has reached within radius of destination and stop moving it more.

But doing collision detection is bit of issue :slight_smile:

If you really want any actor to follow nav mesh path, well that’s beyond scope of a BP node :slight_smile:

Rama



[QUOTE=mindfane;135909]
Do we have a BP node that can rotate and Actor around a random Pivot? The Pivot should be given as a WorldSpace Location OR could be an Actor. It should also accept a Rotator which specify the rotation needed. What the node will do is Move and rotate the Actor around the given Pivot while keeping the original distance. Could be useful for settings up things that orbit other Actors. However I think there should an additonal parameters to specify Up Vector and Right vector (in world space) to make the rotation unambiguous)

So the general signature could be like this:

RotateActorAroundPivot(Actor/Vector Pivot, Rotator rotation, Vector UP, Vector Right, bMaintainAngleToPivot = true) ---> probably need polymorphic versions (one for Actor Pivot, and another for Vector.)
Pivot - The Actor or Location around which to rotate
Rotation - angles to rotate
Up - The Up vector (given in world space)
Right - The right vector (given in world space)
bMaintainAngleToPivot - If true, rotate the Actor to keep the same angle to Pivot as before the rotation.

We could implement this in BP itself (I did actually), but I think if you can do it in C++, it would be faster.
[/QUOTE]


This is a great idea! will work on this when I get time :)

meantime, see the just-higher post about your string node!!!

Rama

Get Screen Resolutions Now Works in Packaged Game

My Get Screen Resolution Nodes works in packaged games now!

In 4.3 the core function in C++ was not working in BP, but now it is! Epic fixed it!

Enjoy getting the screen resolutions of the end user’s hardware in your game now!

It is obtained from the user’s display adapter directly! No guessing or preset values!

:slight_smile:

d4117a7a04ee5f316cbeae35c6e681739e2c00f8.jpeg

Rama

Get OS Platform

Platforms you can check for:

**Windows
Mac
Linux

PS4
XBoxOne

iOS
Android

HTML5

WIN RT
WIN RT ARM**

Enjoy!

Rama

isn’t possible to just use the time graph thingy in blueprints and just set actor location with some animation xd

As Mentioned in Hourence’s Twitch Stream Today!

This is the same node you could see in the Epic twitch stream today!

I told Hourences I could give him the real system time and he did wonders with it!

Get Current Operating System Time

annnnd

Get Milliseconds/Seconds/Minutes/Hours Passed Since Previous Recorded Time!

These two nodes can be used to

  1. obtain the current local Operating System Time for your computer.

  2. obtain the amount of milliseconds/seconds/minutes/hours that have passed since the time you recorded for the first node! You can stores as many times as you want! They are simply stored as a string!

You can use these two nodes to record down to the sub-millisecond the amount of time passing between game events!

**The milliseconds portion is a float, so you can record far smaller than 1 millisecond!
**

In the attached picture I record the amount of real-world time between two key presses :slight_smile:

Enjoy!

Rama

Get Difference Between Any Two Times

This node calculates the difference in Milliseconds/Seconds/Minutes/Hours between any two times that you record using my node above!

Again you can save as many nodes as you want for use with this node, I record the times as strings!

c154f48c6121bd778934ca788ed32f5797d283e3.jpeg

Enjoy!

Rama

Hi Rama,

How simple would it be to create a function that lets you get the current screenmode. There are 3 screen modes that I believe exist 0 - 1 and 2. It would be nice to check the screen mode against a function grabbing the correct info, because the current fullscreen command seems to get lost and sometimes cycles through the 3 options. Maybe an enum so you can check against it and toggle to the next mode.

Isaac

@Rama, do you happen to know if it’s possible to output a .uasset for a UTexture2D in a packaged game? If so, I think a node for that would be extremely nice. Combined with the Texture from Disk node, it’d be quite useful for loading mods and caching out the .uassets.

I already have a node that does this that I made for the Solus options menu, I will work getting a version for my Victory Plugin soon as I can!

:slight_smile:

I’m pretty sure it is against the rules /illegal to do this, as you would need access to editor code in the packaged game, which we are not allowed to use in a packaged game.

I was told info similar to this when I asked about including the FBX importer/exporter in a packaged game :slight_smile:


**My Solution**

I save T2D to binary array and the load it back in!

That's how I created a screenshot-based save/load file browser for Solus!

My tutorial and code for binary save systems is in my signature!

Rama

Do you take requests?

**Two New BP Nodes

Get and set Full Screen Mode Using Convenient Enum!**

This node lets you choose between regular full screen, which involves that brief black screen and then the switch to absolute fullscreem,

and windowed full screen, which most people prefer these days!

There’s a slightly mysterious third option in this list because it is still in Epic’s code base, which is Windowed Full Screen High Quality. The only comment in Epic’s code base is that HQ windowed full screen can cause some performance issues while switching, or something like that.

In any case, I am providing you with all 3 options to experiment with as you wish!

After setting the Full Screen type you will still have to use console command -> “setres 1920x1080f” where f means fullscreen, if your window is not full screen already!


**Rama's Joy Graphics Library**

This node is a sneak peak at the Graphics Library I prepared for Solus and would like to post on the marketplace as soon as plugins are being accepted by Epic for the marketplace.

Enjoy!

Rama

PS: This node brought to you by Isaac's request:


[QUOTE=Isaac Nichols;140821]
Hi Rama,

How simple would it be to create a function that lets you get the current screenmode. There are 3 screen modes that I believe exist 0 - 1 and 2. It would be nice to check the screen mode against a function grabbing the correct info, because the current fullscreen command seems to get lost and sometimes cycles through the 3 options. Maybe an enum so you can check against it and toggle to the next mode.

Isaac
[/QUOTE]

Epic, Hire Rama already, (before he is snap by rival company) !

Anyway, I have download & try some of the nodes. Thanks.

However, a question, do the

~ Change Hue

~ Change Saturation

suppose to work in the Material editior. I cannot seems to pull out these nodes.

Awesome thanks. I can’t wait to see your marketplace store.

:slight_smile:

I thought that too but wasn’t really sure.

I’ll use the binary save - didn’t even think of that :stuck_out_tongue: Good idea.

Haha no rival company is getting me!

UE4 for me for always!

These nodes are for Texture2D, not for the material editor :slight_smile:

They are also not very efficient, you’re better off making a material and spawning a Dynamic Material Instance instead :slight_smile:

Two New Nodes As Of 7/28/14

**Set Max Frame Rate

Set Frame Rate To Be Unbound!**

These two nodes can be run at any time during game time!

Can be part of your options menu or for testing how game behaves at low frame rates, or what the max frame rate possible is with only your hardware limits!

:slight_smile:

framerateunbound.jpg

Enjoy!