ModProfile Profiling Lib
Simple header-only lib to allow simple profiling of C++ methods within your mod
I wasn't really happy with Unreal Insights or Jetbrains profiling tools as they tend to take more time to get the information I need in a modding context. This is much simpler and straightforwards.
This library simply outputs the method name and the execution time into your log:...
benui docs on UCLASS/UPROPERTY/UFUNCTION/USTRUCT/UINTERFACE/UPARAM/UENUM/UMETA
The
ben🌱ui
website has a bunch of well-made Unreal tutorials and documentation, especially on the behavior of the Unreal specifiers with examples. Check them out here: https://benui.ca/Helpful UE5 Plugins
If you have any that you use, please post them here as well!
Graph Formatter (to automatically format Blueprint Nodes) - Thanks to SirDigby for finding this
https://www.fab.com/listings/45218c70-1d87-4d34-ae71-4f575395af64 if you want to support that dev, but it's also open-source and hosted on github at https://github.com/howaajin/graphformatter...
Deantendo's icon template.
Here's my PSD template for icons and some general instructions.
The PSD is for CreativeCloud versions of Photoshop only, though it may work in Affinity Photo (great app) or other software. Your experience may vary. File presented as-is with no support.
No need to credit if you use it.
...
TObjectIterators the speedy-er way
So as best I understand, in general using
is bad - it's not a good idea to iterate all the UStaticMeshComponents (in a fresh save there's about 10k of them) or whatever other component you want to iterate over, but sometimes it seems somewhat unavoidable for whatever reason. I just wanted to share the results of my profiling in case it helps...
for (TObjectIterator<UStaticMeshComponent> It; It; ++It)
for (TObjectIterator<UStaticMeshComponent> It; It; ++It)
Draw Abstract Instances in Editor
Hey I found a new way to draw the Abstract Instances in the Editor. Since the provided code is broken in AFGBuildable.
Also this way doesn't need to edit the Header of CSS:
AccessTransformers.ini:
```ini...
How to make your own Factory Tick ish group
This might be valuable for anyone needing to make their own factory tick ish thing. Yes I know I am not following some C++ / Unreal style guides. I've been writing javascript for way to many years and your standards are ick to me lol.
You should look at using Factory Tick first. This is for special situations where what you want to do does not fall into the patterns of Factory Tick like moving items between inventories without using belts.
The Subsystem holds a list of everything we want to tick in this group and calls tick on them....
StreamDeck Actions for Devs
Here's the actions that I'm using for StreamDeck to speed up my development process. While they may or may not work on your machine, they should give you a starting point of how to configure them. They're not yet perfectly "tuned in" as I just made them yesterday and haven't hit all the possible edge cases, but sooner or later I will.
I am using the following Plugins for these:
Window Actions
BarRaider Super Macro...
ModLog Logging Library
I put together a somewhat dirty logging library that allows you to write clean logs to external files. It's got both blueprint and C++ callable methods.
https://github.com/TheRealBeef/Satisfactory-ModLog-Lib
It could certainly use some improvements but may be handy...
Resource Node Related Knowledge (Vanilla and Modded)
AFGResourceNode Classnames
Could be handy for making custom spawners/despawners or randomizing node locations etc
Vanilla Resource types:
```Gas - EResourceForm::RF_GAS:...
debug box
This is how I am drawing debug boxes. I add a component to an actor here but you could just as easily spawn a static mesh actor.
Run UE console commands on dedicated server start
@Panakotta00 figured out a workaround, so cross-posting it in here
Quixel megascans for free
https://www.fab.com/megascans-free
Now that FAB is out, they are giving away Quixel megascans until the end of 2k24, ngl they do be kinda hot and maybe someone will make a good use of them...
Retrieve the name of an input and keep it when it get changed
Just a small screenshot of how i did for one of my mods, hope that may help someday
The event is called after loaded a save, when the player get's the control of the character, then everytime the input settings are edited...
Better Dedicated Server API Documentation
After working on my API interface and finding all the issues I have redone the documentation to answer some of the questions I had to find the hard way.
about 75% complete.
https://github.com/oarko/SF-ToolsPHP/blob/main/API_DOC_EN.md...
PHP API SDK
This is a PHP class designed to make it easier to implement API calls from a web server.
https://github.com/oarko/SF-ToolsPHP/tree/v0.2...
[WIP] Blueprint disassembler
https://github.com/Th3Fanbus/Th3ScriptViewer
This is a Python script that takes in JSON files from FModel and tries to draw a graph of the control flow. The output is extremely verbose and tedious to read, and the ubergraph handling could be better (currently there's function stubs that call into the ubergraph, ideally the ubergraph wouldn't show up as such), but it can still be useful to understand what some Blueprint function is doing....
How to replace in-editor UE icon to CSS icon
If you want to change the icon in your Unreal Editor's top left corner for whatever reason (e.g. to remember this is UE-CSS), replace
UELogo.png
and UELogo.svg
in <UE install dir>\Engine\Content\Slate\Starship\Common\
with the images of your choice. These are nearly white drawings on a transparent background, as UE uses a dark colour scheme by default.Lore guidelines ["???" spoilers]
If you want your creation to feel like it could happen within the confines of the lore hopefully this will help.
There is a consistent and coherent narrative here and I'm digging into it so this will evolve over time.
The way
???
(hereby referred to as the void) talks in certain words have their vague translations...