Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
  • Loading branch information
antihax committed May 30, 2022
1 parent eda7a8a commit f75efe4
Show file tree
Hide file tree
Showing 57 changed files with 9,418 additions and 781 deletions.
6 changes: 6 additions & 0 deletions DumpResources/DumpResources.sln
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DebugTools", "DebugTools\De
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ChangeAnything", "ChangeAnything\ChangeAnything.vcxproj", "{2AC92E8D-1885-4E8B-80EA-4980CE657F66}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MyNoSeamless", "MyNoSeamless\MyNoSeamless.vcxproj", "{24FFF750-9ABA-424E-9231-3D95589B6327}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Expand All @@ -35,6 +37,10 @@ Global
{2AC92E8D-1885-4E8B-80EA-4980CE657F66}.Debug|x64.Build.0 = Debug|x64
{2AC92E8D-1885-4E8B-80EA-4980CE657F66}.Release|x64.ActiveCfg = Release|x64
{2AC92E8D-1885-4E8B-80EA-4980CE657F66}.Release|x64.Build.0 = Release|x64
{24FFF750-9ABA-424E-9231-3D95589B6327}.Debug|x64.ActiveCfg = Debug|x64
{24FFF750-9ABA-424E-9231-3D95589B6327}.Debug|x64.Build.0 = Debug|x64
{24FFF750-9ABA-424E-9231-3D95589B6327}.Release|x64.ActiveCfg = Release|x64
{24FFF750-9ABA-424E-9231-3D95589B6327}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down
47 changes: 21 additions & 26 deletions DumpResources/DumpResources/DumpResources.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -677,13 +677,20 @@ void extract(float a2) {
auto type = static_cast<UNPCSpawnEntriesContainer*> (zoneManager->NPCSpawnEntriesContainerObjectField().uClass->ClassDefaultObjectField());
type->GetFullName(&name, NULL);


FString boss = "Unknown";
if (name.Contains("Dragon")) {
boss = "Drake";
}
else if (name.Contains("Hydra")) {
boss = "Hydra";
}
else {
for (auto b : type->NPCSpawnEntriesField()) {
boss = b.AnEntryName;
}
}
Log::GetLog()->info("Boss {}", name.ToString());
if (json["Boss"][boss.ToString()].is_null())
json["Boss"][boss.ToString()] = nlohmann::json::array();
for (auto spawnVolume : zoneManager->LinkedZoneSpawnVolumeEntriesField()) {
Expand Down Expand Up @@ -726,40 +733,43 @@ void extract(float a2) {
}

if (name.Contains("OceanEpicNPCZoneManager")) {
//Log::GetLog()->info("Found ocean epic {}", name.ToString());
Log::GetLog()->info("Found ocean epic {}", name.ToString());
auto zoneManager = static_cast<ANPCZoneManager*> (actor);
zoneManager->BeginPlay();
for (const auto dino : zoneManager->NPCSpawnEntriesField()) {
//Log::GetLog()->info("Found dino epic {}", name.ToString());
int count = 0;
for (const auto npc : dino.NPCsToSpawn) {
if (npc.uClass == NULL)
continue;

auto type = static_cast<APrimalDinoCharacter*> (npc.uClass->ClassDefaultObjectField());
type->GetFullName(&name, NULL);
//Log::GetLog()->info("animal {}", name.ToString());
Log::GetLog()->info("animal {}", name.ToString());
auto gps = VectorGPS(dino.NPCsSpawnOffsets[count]);

if (name.Contains("MeanWhale_SeaMonster")) {
if (json["Boss"]["MeanWhale"].is_null())
json["Boss"]["MeanWhale"] = nlohmann::json::array();
json["Boss"]["MeanWhale"].push_back({ gps.X, gps.Y });
Log::GetLog()->info("add boss {}", name.ToString());
}
if (name.Contains("GentleWhale_SeaMonster")) {
if (json["Boss"]["GentleWhale"].is_null())
json["Boss"]["GentleWhale"] = nlohmann::json::array();
json["Boss"]["GentleWhale"].push_back({ gps.X, gps.Y });
Log::GetLog()->info("add boss {}", name.ToString());
}
if (name.Contains("Squid_Character")) {
if (json["Boss"]["GiantSquid"].is_null())
json["Boss"]["GiantSquid"] = nlohmann::json::array();
json["Boss"]["GiantSquid"].push_back({ gps.X, gps.Y });
Log::GetLog()->info("add boss {}", name.ToString());
}
count++;
}
}
}

if (name.Contains("SnowCaveBossManager")) {
auto gps = ActorGPS(actor);
json["Boss"]["Yeti"] = nlohmann::json::array();
Expand Down Expand Up @@ -916,30 +926,15 @@ void extract(float a2) {

actor->GetFullName(&name, NULL);

// Find the new altars
if (name.Contains("Damned")) {
//Log::GetLog()->info(" named node {} ", name.ToString());
// Find the altars
if (actor->IsA(APrimalStructureStaticNodeContainer::GetPrivateStaticClass(NULL))) {
auto gps = ActorGPS(actor);
auto tags = actor->TagsField();
actor->NameField().ToString(&name);
//Log::GetLog()->info(" placeholder {} {} - {}/{}", tags.Num(), name.ToString(), gps.X, gps.Y);
if (!name.Contains("DamnedAltar2"))
json["Altar"]["Damned Altar"].push_back({ gps.X, gps.Y });
else
json["Altar"]["AoTD Altar"].push_back({ gps.X, gps.Y });
}

// Find the new altars
if (name.Contains("StructurePlaceHolder")) {
//Log::GetLog()->info(" placeholder {} ", name.ToString());
auto gps = ActorGPS(actor);
auto tags = actor->TagsField();
actor->NameField().ToString(&name);
//Log::GetLog()->info(" placeholder {} {} - {}/{}", tags.Num(), name.ToString(), gps.X, gps.Y);
if (name.Contains("TempleFoundation"))
json["Altar"]["Pyramid Site"].push_back({ gps.X, gps.Y });
else if (!name.Contains("Pyramid"))
json["Altar"]["Static"].push_back({ gps.X, gps.Y });
auto node = static_cast<APrimalStructureStaticNodeContainer*>(actor);
if (node) {
auto tags = actor->TagsField();
Log::GetLog()->info(" placeholder {} {} - {}/{}", tags.Num(), node->DescriptiveNameField().ToString(), gps.X, gps.Y);
json["Altar"][node->DescriptiveNameField().ToString()].push_back({ gps.X, gps.Y });
}
}

if (
Expand Down
Loading

0 comments on commit f75efe4

Please sign in to comment.