Blueprint writing to data table from within the editor?

I understand that at this point in time, it’s not possible to write to a data table during run time. What I’d actually like to do is use a blueprint actor modify or add to a data table from within the editor. Certain events are triggered by volumes, and these volumes read from a data table to specify an end result and some text; it would be handy to be able to, as I am placing these volumes, specify the data that is entered into the data table from the volume actor.

Is it possible to modify a data table from blueprints from within editor/non-runtime?

Thanks!

The short answer is no. And the changes for 4.16 & 4.17 aren’t too promising either.

Perhaps you could use a map for this - they’re quite similar to the DataTable bar the dedicated editor and some extra features.

DataTables are not meant to be used as database; they exist to store static data instead of hardcoding them in C++ source files.

If you’re looking for a “dynamic” data table, then you might want to just try using a struct array. Within that struct, on each index of it, you can nest other variables and structs. One could be a string or a name even; for the sake of searching through it trying to get an index number. Think about the easy example of a line trace: It will have one struct pin out, which you can break. Within that break, you can then break a result like “hit location,” into it’s smaller pieces (it’s a vector, which is technically a struct of XYZ). There isn’t really a limit to what you can do with structs that way.

This would allow you to add/remove things from your pseudo-table. You could even populate it with info from a data table, at the start of the game, and then alter that information throughout gameplay.

Thanks! That’s an option I hadn’t considered.

I wouldn’t consider what I’m trying to do too different from just that, as the information is intended to be static long term. The only difference is that I’d like to automate some of the processes of adding information to a data table from within a Blueprint prior to runtime. Since you can already add and delete data table information from within the editor, it seemed reasonable that you would be able to use Blueprints to do the same, prior to runtime.

Since it seems like editing Data Tables through BP both in and prior to runtime seems like a no go, does anyone know of a way that you can write to a CSV (or output to a CSV) from within the editor? I know you can export a Data Table as a CSV, so it looks like row and column handling already exists - I just need to figure out how to tap into it :smiley:

3 Likes

Maybe this: Runtime DataTable in Code Plugins - UE Marketplace