FreakinaBox
FreakinaBox
SMSatisfactory Modding
Created by FreakinaBox on 11/18/2024 in #help-using-mods
Ficsit Farming Crash
Crash To Desktop after after several hours running 1 farm and the seed building
Assertion failed: itemClass [File:C:\BuildAgent\work\b731a33f2a691e17\UE4\FactoryGame\Source\FactoryGame\Private\FGInventoryComponent.cpp] [Line: 1410]

FactoryGameSteam_FactoryGame_Win64_Shipping!UFGInventoryComponent::OnItemsAdded() [C:\BuildAgent\work\b731a33f2a691e17\UE4\FactoryGame\Source\FactoryGame\Private\FGInventoryComponent.cpp:1410]
FactoryGameSteam_FactoryGame_Win64_Shipping!UFGInventoryComponent::AddStack() [C:\BuildAgent\work\b731a33f2a691e17\UE4\FactoryGame\Source\FactoryGame\Private\FGInventoryComponent.cpp:582]
FactoryGameSteam_FicsitFarming_Win64_Shipping!AFFFarmingPlot::RP_ProductionCycleEnds_Implementation() [S:\SF\SML\Mods\FicsitFarming\Source\FicsitFarming\Private\Buildables\FFFarmingPlot.cpp:230]
FactoryGameSteam_CoreUObject_Win64_Shipping!UFunction::Invoke() [C:\BuildAgent\work\b731a33f2a691e17\UE4\Engine\Source\Runtime\CoreUObject\Private\UObject\Class.cpp:6666]
FactoryGameSteam_CoreUObject_Win64_Shipping!UObject::ProcessEvent() [C:\BuildAgent\work\b731a33f2a691e17\UE4\Engine\Source\Runtime\CoreUObject\Private\UObject\ScriptCore.cpp:2161]
FactoryGameSteam_Engine_Win64_Shipping!AActor::ProcessEvent() [C:\BuildAgent\work\b731a33f2a691e17\UE4\Engine\Source\Runtime\Engine\Private\Actor.cpp:1175]
FactoryGameSteam_RefinedRDLib_Win64_Shipping!ARRDLBuildableTaskBase::Factory_Tick() [S:\SF\SML\Mods\RefinedRDLib\Source\RefinedRDLib\Private\Buildables\RRDLBuildableTaskBase.cpp:183]
FactoryGameSteam_RefinedRDLib_Win64_Shipping!ARRDLModularBuildingBase::Factory_Tick()
...
Assertion failed: itemClass [File:C:\BuildAgent\work\b731a33f2a691e17\UE4\FactoryGame\Source\FactoryGame\Private\FGInventoryComponent.cpp] [Line: 1410]

FactoryGameSteam_FactoryGame_Win64_Shipping!UFGInventoryComponent::OnItemsAdded() [C:\BuildAgent\work\b731a33f2a691e17\UE4\FactoryGame\Source\FactoryGame\Private\FGInventoryComponent.cpp:1410]
FactoryGameSteam_FactoryGame_Win64_Shipping!UFGInventoryComponent::AddStack() [C:\BuildAgent\work\b731a33f2a691e17\UE4\FactoryGame\Source\FactoryGame\Private\FGInventoryComponent.cpp:582]
FactoryGameSteam_FicsitFarming_Win64_Shipping!AFFFarmingPlot::RP_ProductionCycleEnds_Implementation() [S:\SF\SML\Mods\FicsitFarming\Source\FicsitFarming\Private\Buildables\FFFarmingPlot.cpp:230]
FactoryGameSteam_CoreUObject_Win64_Shipping!UFunction::Invoke() [C:\BuildAgent\work\b731a33f2a691e17\UE4\Engine\Source\Runtime\CoreUObject\Private\UObject\Class.cpp:6666]
FactoryGameSteam_CoreUObject_Win64_Shipping!UObject::ProcessEvent() [C:\BuildAgent\work\b731a33f2a691e17\UE4\Engine\Source\Runtime\CoreUObject\Private\UObject\ScriptCore.cpp:2161]
FactoryGameSteam_Engine_Win64_Shipping!AActor::ProcessEvent() [C:\BuildAgent\work\b731a33f2a691e17\UE4\Engine\Source\Runtime\Engine\Private\Actor.cpp:1175]
FactoryGameSteam_RefinedRDLib_Win64_Shipping!ARRDLBuildableTaskBase::Factory_Tick() [S:\SF\SML\Mods\RefinedRDLib\Source\RefinedRDLib\Private\Buildables\RRDLBuildableTaskBase.cpp:183]
FactoryGameSteam_RefinedRDLib_Win64_Shipping!ARRDLModularBuildingBase::Factory_Tick()
...
5 replies
SMSatisfactory Modding
Created by FreakinaBox on 11/10/2024 in #modding-resources
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.
C++
void AAIO_Group::BeginPlay() {
Super::BeginPlay();
const auto Delay = FMath::FRandRange(.0f, 1.0f);
GetWorld()->GetTimerManager().SetTimer(TimerHandle, this, &AAIO_Group::RunAioTick, 1.0f, true, Delay);
}

void AAIO_Group::EndPlay(const EEndPlayReason::Type EndPlayReason) {
Super::EndPlay(EndPlayReason);
GetWorld()->GetTimerManager().ClearTimer(TimerHandle);
}

void AAIO_Group::RunAioTick() {
const auto Workers = 8
const auto Num = Members.Num();
if (Num == 0) {
return;
}
ParallelFor(Workers, [this, Num](int32 ThreadIndex) {
int32 StartIndex = (Num * ThreadIndex) / Workers;
int32 EndIndex = (Num * (ThreadIndex + 1)) / Workers;
for (int32 Index = StartIndex; Index < EndIndex; ++Index) {
if (IsValid(Members[Index])) {
Members[Index]->AioTick();
}
}
}, false);
}
C++
void AAIO_Group::BeginPlay() {
Super::BeginPlay();
const auto Delay = FMath::FRandRange(.0f, 1.0f);
GetWorld()->GetTimerManager().SetTimer(TimerHandle, this, &AAIO_Group::RunAioTick, 1.0f, true, Delay);
}

void AAIO_Group::EndPlay(const EEndPlayReason::Type EndPlayReason) {
Super::EndPlay(EndPlayReason);
GetWorld()->GetTimerManager().ClearTimer(TimerHandle);
}

void AAIO_Group::RunAioTick() {
const auto Workers = 8
const auto Num = Members.Num();
if (Num == 0) {
return;
}
ParallelFor(Workers, [this, Num](int32 ThreadIndex) {
int32 StartIndex = (Num * ThreadIndex) / Workers;
int32 EndIndex = (Num * (ThreadIndex + 1)) / Workers;
for (int32 Index = StartIndex; Index < EndIndex; ++Index) {
if (IsValid(Members[Index])) {
Members[Index]->AioTick();
}
}
}, false);
}
12 replies
SMSatisfactory Modding
Created by FreakinaBox on 11/3/2024 in #modding-resources
debug box
No description
2 replies
SMSatisfactory Modding
Created by FreakinaBox on 10/25/2024 in #help-using-mods
Digby Tool copy/paste filter
No description
3 replies
SMSatisfactory Modding
Created by FreakinaBox on 10/16/2024 in #help-using-mods
Upgradeable Machines includes machine storage in upgrade cost
No description
4 replies
SMSatisfactory Modding
Created by FreakinaBox on 10/15/2024 in #help-using-mods
Loaders mod: unloader connects to loader
No description
16 replies
SMSatisfactory Modding
Created by FreakinaBox on 10/15/2024 in #help-using-mods
Linked Machines not using all machines in line
No description
13 replies