Jump to content

Engram configuration script...


Xenithar
 Share

Recommended Posts

I posted an old version of this script a few years ago (2019?) to share with other admins my method of discovering engrams so I can block newer ones on older servers. For example, I could block the entire tek tier and everything from newer maps and have an original Island map for greater challenge. This script will find all built-in engrams as well as any for any mods you specify and generate a text-file for every core map and mod with the hiding code in-place. You simply copy the lines containing the engrams/items you want blocked on your server to your servers game.ini file and you're done. This is a simple batch file so while it will not work on a Linux server, you CAN run it on your Windows game client to get the code and all, then copy/paste to your server as needed.

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

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=E:\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

	REM Output Genesis 2 engrams
	SET MODDIR=%GAME%\Genesis2
	SET MODID=CoreGenesis2
	CALL :FUNC_GETENGRAMS

	REM Output Lost Island engrams
	SET MODDIR=%GAME%\LostIsland
	SET MODID=CoreLostIsland
	CALL :FUNC_GETENGRAMS

	REM Output Fjordur engrams
	SET MODDIR=%GAME%\Fjordur
	SET MODID=CoreFjordur
	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 OverrideNamedEngramEntries0=^(EngramClassName="%%~nF_C",EngramHidden=true^) >> %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

The file is attached to this post. Enjoy!

Engrams.bat

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...