PLEASE fix the ADK

I’ve been trying to make a TC mod for weeks now. First I tried doing child classes - that turned out to be a horrible mess for dinos and structures and I quickly abandoned that idea. Then I edited the core files directly - that worked fine, but the updates and constant overwriting of files was a real pain.

Finally, I tried a different approach - grab core files, move them to the mod folder, rename them as I see fit, then edit them. The idea was grand: every reference to any item would automatically be changed and updates would not overwrite my files. I wouldn’t have to link everything up by hand, and while it took much longer for the DevKit to process some classes than it would if I copied them, I only had to worry about what I wanted to do, not the annoying technical aspects.

Except it didn’t do its job properly. It arbitrarily decided that renaming some classes should not update references to said classes so that things keep working. “Luckily”, among the classes it decided to disregard for no gorram reason, were all the resources. Best part? Everything seemed to be working fine, all the references appeared to have properly updated when I was editing it.

But then I had to close the DevKit. Upon returning to it, I find that things are no longer fine. It gave me over 2000 errors because of invalid references. At the very least, what broke is EVERY SINGLE REFERENCE to the resources. As of v215, there are 246 engrams and over 40 auto-craft recipes. That means I have around 300 items that need to be fixed. Also HarvestComponents, some InventoryBPs, some Structures and very likely other stuff I can’t remember right now.

I understand the game and DevKit are in early stages of development. But PLEASE at least have the DevKit tell me there is an error when it appears so I can fix it before it reaches a catastrophic scale. If I had known the ADK failed to rename the resource BPs (for whatever reason), I would have returned to their default names and NOT suffered all their references replaced with “None” upon restarting the DevKit.

TL;DR:
A stupid error that shouldn’t have happened in the first place and that didn’t appear to have happened until it was too late to fix it just cost me many hours of work. This is not acceptable.

EDIT: Also, this sort of thing happens:
“Failed to load /Game/Mods/Rebalance/Additions/Structures/Workbench/SInv_C_Workbench.SInv_C_Workbench_C Referenced by SInv_C_Workbench_C Property /Script/ShooterGame.PrimalInventoryComponent:DefaultInventoryItems”
What does that even mean? An inventory trying to reference itself? And why DefaultInventoryItems? They definitely did not contain references to the resources. Or is this caused by the recipes requiring “none” for crafting?

EDIT #2: Just found out it also lost references to all buildable structures inside their respective items. Even though they got built perfectly fine when I tested before closing the ADK. I wonder what other wonders await me.

EDIT #3: Found a bunch of engrams that lost references to their items. I wish there was at least a method to this madness. But there is literally no way to tell what works and what does not until you restart the DevKit and end up with a s***load of errors.

What a provocative title…

So I am not entirly sure whats the issue, but if you want to know about issues with your loaded data without restarting the editor(referenced in the level) you can always do a MapCheck (Build->MapCheck). The errors you see on startup are issues that show up as soon as the editor does a verification on loading files. Which always happens when you restart the editor.

I also would recommend staying with child classes cause everything else could mean that you have to do everything again as soon as an update hits. Modifying directly is ******** as you said already, but copying brings the risk that the original files get extended and you will not get the latest changes into your files. I can imagine that this can be quite complex because of all the referencing but I do not see a way around it. Having this structure makes a lot of sense in the first place but might not be easiest do total convert. :smiley: While you doing that I can recommend the reference viewer(Reference Viewer | Unreal Engine Documentation). Only by using that tool you will know where you have to add a reference to your new replacement of an existing file.
Changing and renaming files will leave redirectors, also something that you have to keep in mind. Without these redirectors (Redirectors | Unreal Engine Documentation) references get lost and you might run in to big *** trouble.

Edit: Srsly Epic, what is up with your language filter? It’s the internet, we have all seens worse…

Thanks for the advice on MapCheck. I already knew about everything else you mentioned though.

The move and rename solution seemed like such an easy fix for all my problems. Unfortunately, it seems like the ADK doesn’t want to properly leave redirectors sometimes.
I’m also not sure why it would need to use redirectors, period. I can make any class reference any other class, so why can’t it just work like that? Why create additional hidden files for said purpose? It only creates redundant data, and also doesn’t properly work a lot of the time, apparently.

Anyway, I have learned my lesson: double-checking everything is not enough, you should go with quadruple. Gonna waste ~2 hours verifying the ADK now, just so I can properly fix my recipes and stuff - trying to switch resource names back resulted in tons of duplicate classes which were sometimes considered one file and other times not. And sometimes they weren’t even considered proper classes as they refused to be referenced.

You wouldn’t happen to know why editing the “master lists” for dyes and resources has no effect, would you Kenturrac?

Also, fun fact: I actually had to take several attempts at writing the opening post so as to avoid making it a feces-fest of how I really feel.

I have no clue about editing the dyes master list, sry.

The redirector thing is necessary or every time you change a referenced item you would need to recompile and save all the files that have a reference to the changed actor. That might now be an issue for you, but in a project with dozens of people working on parts of the game you could not deal with this ****. I mean still can fix them up if you have access to all these files. I do not agree with how referencing in unreal works and I might never get why they do not reference on IDs, but this redirector thing is so important for a multiperson project.

I see. I was pretty sure the core files did not include any redirectors, but I could be wrong.
Still, it would be very nice to see a direct “replace all references to A with references to B” feature. Because that’s what I’m doing, but doing it by hand is a bit of a pain.

stool-without-odor-md.png

Ha Ha! A Feces Fest! Love It!

Turns out that I literally cannot fix my mod.
All references are broken, references to references are broken and yet the ADK insists on creating new redirectors to old redirectors to broken references.
After three hours of trying to salvage something, I have only managed to discover more issues and create more problems.
That’s at least 30 hours of work gone. It wasn’t anything difficult, but it was certainly time consuming. Better yet, this is the third time I lost pretty much everything.

I’m so angry I can’t even curse.