@, when my game runs my Pawn seems to be instanced as a number. becomes Penguin1,2,3,etc and it causes the Rendered and Not Rendered to see everything except my Pawn. Any ideas?
im having issues with the updated plugin, trying to build the plugin in VS like the video but im getting a error message that the rocket code exists when i build it, i copyed the project file and rebuilt it and updated to 4.7.1 but need to know if was the right method of updating in VS since i got a error of a existing code
@Sanborn and Tea-Rexx
I dont have a lot of spare right now, please see what additional intel you can gather on your respective issues and let us know how it goes.
Sanbordn ~ Not sure, both of the nodes you mention are working great for me in 4.7.1, please investigate further.
Tea-Rexx ~ 4.7.1 plugin is working great for me, you just put in game-project level plugins folder and build your regular project .sln file as normal, please dont put it in the UE4 engine dir
â Suite of Custom Config Section BP Nodes!
Using my new suite of BP nodes, you can create as many of your own custom config file sections as you want!
You can both create and retrieve ini variables with any name and fundamental type that you want!
**Supported Types:**
Bool
Int
Float
Rotator
Vector
Color
String
Why Use a Config Var?
Config vars have several benefits
- Persistent data storage without using a SaveGame struct or GameInstance, store simple quantities of data and player customization way! Data is stored between level loads and even after the current instance of the game is shut down.
So in way config vars have greater persistence than the GameInstance class!
-
Player-Driven Customization, Players of your game can tweak the config vars that you make available for them on their hard disk, by editing the .ini file directly, just like AAA games! is the most significant advantage of using config files, and their real core purpose.
-
Simplicity, simpler to use than the BP SaveSystem (which is quite wonderful by the way), but not quite as powerful in that you can only store basic data types, not UObjects and Actors.
-
**Organization, **you can create as many config header sections as you want using my nodes, organizing your custom settings way!
**Game.ini**
of your custom created config vars and sections are stored in:
**Saved/Config/Windows/Game.ini**
Players can navigate to location on their harddrive to edit your ini files just like any AAA game would allow!
Here's what my **Game.ini** file looks like after running some tests!
```
[DebugWindows]
ConsoleWidth=160
ConsoleHeight=4000
ConsoleX=-32000
ConsoleY=-32000
[/Script/UnrealEd.ProjectPackagingSettings]
BuildConfiguration=PPBC_Development
StagingDirectory=(Path="E:/MYPROJECT_DELETE")
FullRebuild=True
ForDistribution=False
UsePakFile=True
UseOBB_InAPK=False
CulturesToStage=en
[Victory]
BoolVar=True
VectorVar=X=1.000 Y=2.000 Z=9000.123
StrVar=Yay For Custom Config Vars!!!
FloatVar=234.000000
```
**Now you have fully featured ability to use config variables entirely in BP!**
PS: Here's example usage!

Hello, Iâd like to use the blueprint code to spawn actors on specific sub-levels. Therefor I would like to use plugin. But on project startup I get error with 4.6.1:
Selecting [Yes] raises an error and tells me to rebuild them manually from source.
Now I know that you included the sourcefiles as well. But is there a tutorial somewhere on how to build a plugin for your project? Just opening the sourcefiles with Visual Studio does not allow me to compile them. I have no C++ knowledge :(. I looked for a tutorial but only found C++ code documentation and no tutorial for people without that knowledge.
I used the file from 01:01, 25 February 2015. I guess that the UE4 engine got updated in the last 5 days or so.
Oh I unzipped them in: ââŚ\Unreal Projects<project name>\Plugins\VictoryPluginâ. Also moving the dll files to the top-level next to the VictoryPlugin.uplugin did not help.
You are correct! 4.7 and 4.7.1 were released last week, so you will need to use an earlier version for 4.6.1.
I would try downloading the Feb 21st version from page, it should be for 4.6.1.
https://wiki.unrealengine.com/File:VictoryPlugin.zip
Oh⌠Iâll just upgrade to 4.7.1 then :). Thank you.
But I just realized, from now on, I have to keep plugin up2date the and hope that it is supported through future Unreal engine updates. And I ONLY need one single function.
Just about any level that is created dynamically basically needs functionality (unless itâs a tiny level). Is there any that functionality will be build-in into the UE4 engine? Because spawning objects from a sub-level-blueprint still spawns them into the original level :(. I tried⌠I found no other way than to resort to C++ or a plugin (and is the only plugin that I could find, with functionality).
Maybe Iâm doing something really silly again. But it does not work properly for me. I tested it in the 3rd person template, added 2 levels and added 2 level-stream-volumes to it and then spawned 3 spheres (one for each level). But right off the bat, they are visible and loaded already even though the other 2 levels are not checked as initially loaded. Note that the meshes that are not spawned by code work properly (not shown on screenshot).
Also unloading the levels has no effect for the spheres. So I fear that they are spawned in the persistent level instead.
And just a minor thingy, the âReturn Value pinâ from âSpawn Actor Into Levelâ must be cast to the actor that I spawned before I can use it, unlike the default build-in âSpawn Actor From Classâ. Is that intended?
Hi - I think it would be handy for built applications to have some kind of handle on where the .exe file is, then you can either build a path relative to that. I tried to make a python script which did that and wrote it to the game.ini file but it didnât seem to write it in a format which your INI reader liked - it couldnât find either the section or the var - I donât know which. Hereâs my python code (which I was going to turn into an exe which ran in a bat)
#!/usr/bin/env python
import os
import ConfigParser
here = os.getcwd()
qDir = here + "\Questions"
inFile = here + "\Tower_A\Saved\Config\WindowsNoEditor\Game.ini"
print qDir
print inFile
config = ConfigParser.SafeConfigParser()
config.add_section('QuestionPath')
config.set('QuestionPath','questionFolder', qDir)
with open (inFile, 'wb') as configfile:
config.write(configfile)
Like i said - it works but the ini reader doesnât like it (I only had a quick go at it)
I completely understand, no worries.
Hereâs the thing, it actually works on everything BUT my player Pawn. Hereâs what I think is the real:
If I use Is Rendered or Is Not Rendered on anything BUT my Pawn it works perfectly fine. If I use it for my Pawn I canât even get the find substring for to work. Thereâs something about the way the engine is naming the Pawn from Player Start that Iâm just not comprehending.
I contacted Epic about a while back and was told by a senior Epic engineer that spawning actors directly into sublevels is not a supported functionality, and so the fact that my nodes are not working correctly does not surprise me.
Spawning into the persistent / main level and then hiding stuff as needed / managing your own level spawn list is the only thing I can recommend given what Iâve been told
I can do quite easily!
Will make a node for you shortly
EDIT: New File Path Nodes For you!
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

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!
UE4 Wiki, Plugin Download Page
is great!
Awesome!
Wow - thanks so much for , itâs really going to help tie together my app which hot-reloads textures a runtime.
CHEERS!!!
I hope youâre getting as much out of these nodes as we are!
That is extremely disappointing⌠Thanks for the info though.
Anyway, for other people, to disable an actor completely:
- set actor hidden in game: true
- set actor enabled collision: false
- set actor tick enabled: false
- add triggerboxes to your level to set/unset the above 3. And donât forget to also disable enemies/AI manually (and projectiles and such!) as well or theyâll fall outside of the level. Very messy.
Yeah I kind of feel bad because I got him to make the nodes, only to have Epic basically say âYeah, we donât advise doing thatâ.
I feel like these nodes are really the only way we can take advantage of level streaming in a procedural way, so it is kind of sad. I am hoping that Epic gives us that ability in a future release.
So I am actually in the process right now of re-working my instancing system so that I can move them around, scale them to 0, etc. I am currently using âAdd Instanceâ node, but you donât have per instance control that way. Trying to use âAdd Instanced Static Meshâ which should fit the bill, but havenât had the or energy lately to figure out why I canât get them working similar to Add Instance.
Hi - should there be a March 3rd build on the end of that link? I can only see a Feb 25th one.
Cheers !
Hi there!
The wiki is having problems right now, system wide, on my screen it lists two Feb 25ths
Do you see two feb 2ths?
EDIT:
I uploaded a second and now I see A March 3rd and a March 4th
So I agree it was wonky before
but you should have two builds to choose from now, March 3rd or March 4th, either will have your new Victory Path nodes in them!
UE4 Wiki, Plugin Download Page
https://wiki.unrealengine.com/File:VictoryPlugin.zip
**Talking about these new nodes!**
**You can use these nodes to get the file path to your project directory in a editor or packaged game!**

Enjoy!
**Load Texture 2D From File!
JPG, PNG, BMP, ICO, EXR, and ICNS are Supported File Formats !**
With node you can load a Texture 2D from a file during runtime!
I output for you the width and height of the loaded image!
Now you can easily create Texture 2Dâs from image files in Blueprints, during runtime!
**Special Note!**
Sweeney [liked node](https://forums.unrealengine.com/showthread.php?3851-(39)--s-Extra-Blueprint-Nodes-for-You-as-a-Plugin-No-C-Required!&p=211685&viewfull=1#post211685)!
Enjoy!
PS: Make sure to include the file extension when you use node!


C++ Code For You
Here is the core C++ function involved, entire source is in the download! I wrote my own Enum for the file formats.
UTexture2D* UVictoryBPFunctionLibrary::Victory_LoadTexture2D_FromFile(const FString& FullFilePath,EJoyImageFormats ImageFormat, bool& IsValid,int32& Width, int32& Height)
{
IsValid = false;
UTexture2D* LoadedT2D = NULL;
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper"));
IImageWrapperPtr ImageWrapper = ImageWrapperModule.CreateImageWrapper(GetJoyImageFormat(ImageFormat));
//Load From File
TArray<uint8> RawFileData;
if (!FFileHelper::LoadFileToArray(RawFileData, * FullFilePath))
{
return NULL;
}
//Create T2D!
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(RawFileData.GetData(), RawFileData.Num()))
{
const TArray<uint8>* UncompressedBGRA = NULL;
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA))
{
LoadedT2D = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8);
//Valid?
if (!LoadedT2D)
{
return NULL;
}
//Out!
Width = ImageWrapper->GetWidth();
Height = ImageWrapper->GetHeight();
//Copy!
void* TextureData = LoadedT2D->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE);
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num());
LoadedT2D->PlatformData->Mips[0].BulkData.Unlock();
//Update!
LoadedT2D->UpdateResource();
}
}
// Success!
IsValid = true;
return LoadedT2D;
}
**Download Link (6.5mb)**
**UE4 Wiki, Plugin Download Page**
https://wiki.unrealengine.com/File:VictoryPlugin.zip
:)