Jump to content

Batch file for discovering engrams...


Xenithar

Recommended Posts

Batch file for discovering engrams...

Since I needed this a long time ago when I started using mods and wanted to block things, and when Tek was added to our original maps and I wanted to block it, here is a small batch file I just wrote to discover engrams in any mod which does not use a table or something to hide them. This works with mods like Structures Plus and Classic Flyers without a hitch. It outputs, in alphabetical order, the engrams found in any specified mod to e plain text-file with the mod ID. For exampe, S+ uses 731604991 as the mod ID. If I run the batch file and specify that ID on the command-line I will get a file named "731604991.txt" in the same folder as the batch file which contains every engram for S+ in alphabetical order that you can use in your Game.ini file to block, allow, or modify cost with.

I wrote this in a few minutes today because S+ updated and has new items, removed old items, integrated Platforms Plus, and I am going to make a new Game.ini from scratch, blocking the things we do not want on our server, such as no Tek on The Island or The Center. I am releasing it to help other admins who may be new and just want to block, allow, or modify an engrams cost for his or her server and does not know how to dig through the folder structure, which takes hours, to find them. Feel free to ask me any questions here, but I only check the forum every few days so don't take it personally if I cannot respond quickly.

@ECHO OFF
REM Ark Engrams Discovery Batch File
REM By: The Great Sephiroth
REM (c) 2020

REM Feel free to distribute or modify this file to suit your needs!

REM Common, popular mod IDs
REM Eco Trees - 670764308
REM Platforms Plus - 719928795
REM Snappy Saddles - 725398419
REM Structures Plus - 731604991
REM Eco RP Decor - 741203089
REM Eco Garden Decor - 880871931
REM Classic Flyers - 895711211
REM Fused Troughs - 1342152255
REM Additional Lighting - 1380777369

REM Set this to the mod ID you want engrams for
SET MODID=731604991

REM Set this to your Ark content folder
SET GAME=D:\Games\Steam\steamapps\common\ARK\ShooterGame\Content

REM See if a mod ID was specified on the command-line
IF "%1"=="" (
	IF "%MODID%"=="" (
		ECHO No mod ID has been configured and one was not specified on the command-line!
		EXIT /B 1
	)

	ECHO No mod ID specified, using the configured mod ID...
) ELSE (
	ECHO Using mod ID from the command-line...
	SET MODID=%1
)

REM Set the full mod path or use core engrams
IF "%1"=="-1" (
	ECHO Outputting all core game engrams...

	REM Output the core game engrams
	SET MODDIR=%GAME%\PrimalEarth\CoreBlueprints\Engrams
	SET MODID=CoreArk
	CALL :FUNC_GETENGRAMS

	REM Output the primitive plus engrams
	SET MODDIR=%GAME%\Mods\111111111
	SET MODID=CorePrimPlus
	CALL :FUNC_GETENGRAMS

	REM Output Scorched Earth engrams
	SET MODDIR=%GAME%\ScorchedEarth
	SET MODID=CoreScorched
	CALL :FUNC_GETENGRAMS

	REM Output Aberration engrams
	SET MODDIR=%GAME%\Aberration
	SET MODID=CoreAberration
	CALL :FUNC_GETENGRAMS

	REM Output Extinction engrams
	SET MODDIR=%GAME%\Extinction
	SET MODID=CoreExtinct
	CALL :FUNC_GETENGRAMS

	REM Output Genesis engrams
	SET MODDIR=%GAME%\Genesis
	SET MODID=CoreGenesis
	CALL :FUNC_GETENGRAMS
) ELSE (
	ECHO Attempting to get engrams for mod ID %MODID%...

	REM Attempt to process the specified or configured mod
	SET MODDIR=%GAME%\Mods\%MODID%
	CALL :FUNC_GETENGRAMS
)

REM Exit the batch file
EXIT /B %ERRORLEVEL%



REM Function to get all engrams from the configure mod directory
:FUNC_GETENGRAMS
REM Verify the full path exists
IF NOT EXIST %MODDIR% (
	ECHO The specified mod directory does not exist! You may not have the mod specified,
	ECHO or you may not have all of the expansions installed.
	ECHO The full path is listed below.
	ECHO.
	ECHO %MODDIR%
	EXIT /B 2
)

REM Delete existing output files if they exist
IF EXIST %MODID%-temp.txt DEL %MODID%-temp.txt
IF EXIST %MODID%.txt DEL %MODID%.txt

REM Loop through recursively and store the engram entries
FOR /R %MODDIR% %%F IN (EngramEntry*) DO (
	ECHO %%~nF_C >> %MODID%-temp.txt
)

REM Sort the output alphabetically
SORT %MODID%-temp.txt > %MODID%.txt

REM Remove the temporary file and return
DEL %MODID%-temp.txt
EXIT /B 0

I have updated the code to include support for listing all of the core engrams in Primal Earth. To get an alphabetical listing of all built-in engrams simply pass "-1" as the mod ID from the command line. You do this like "Engrams.bat -1" and it will output a file named "CoreEngrams.txt" for you to use.

If you wish to block an engram you may use the names in the output files like I do in the line below. The line below blocks preserving salt on my Island and Center servers since you cannot get it there anyway.

OverrideNamedEngramEntries0=(EngramClassName="EngramEntry_PreservingSalt_C",EngramHidden=true)

 

That's all there is to it! I hope this helps. Again, I uploaded the most recent batch file to this post for users to easily download and use.

 

 

Engrams.bat

Link to comment
Share on other sites

I just updated the code and made a major change. The code which recursively searches for engrams is now a function. I did this because I realized that there are currently a total of six locations for stock game engrams. These include the core game, Primitive Plus, Scorched Earth, Aberration, Extinction, and Genesis. Oddly enough the Deinonychus saddle is part of the core game blueprints, so Valguero has none that I can find.

When you run the batch file with -1 as the parameter it now outputs six files corresponding to the six core locations (expansions, mods, whatever). I updated the code in my original post and uploaded the batch file for easy download and use. Enjoy!

Link to comment
Share on other sites

I updated again. I discovered multiple engrams in Scorched Earth which were NOT inside the "CoreBlueprints/Engrams" folder so I changed the code to examine the entire expansion folders and their sub-folders. I found more engrams this way. Scorched Earth is the worst offender here, but I did find a duplicate glowstick entry in Aberration as well.

As always, I updated the source-code in the original post and I uploaded the latest batch file for users to easily download. Enjoy!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...