Autogenerated dummy classes
Is a class working incorrect? Create an issue
Warning
If you get recompile errors, you likely already have the Dummy Classes installed without deleting the folders. You don't need to change any autogenerated class to get it to recompile!
- If you already have the Dummy Classes installed, remove the dummy classes in these folders in
/Development/Src/
(continue to the next step if you don't have them installed):AkAudio
ProjectX
TAGame
- Download the
Src
folder - Extract the downloaded folder to
UDK/{UDK name}/Development/
- Recompile the classes
- If you want to go back: delete the same folders as in step 1, download the Dummy classes or UDK classes and do steps 3 and 4 again.
If preferred, you can also use svn export or git sparse-checkout
.
Example commands for git
- Install Git on your system. If you already have Git, you can skip this step.
- Create a git project and add the autogenerated classes:
# Change this to your folder where UDK is installed
cd ./UDK/{UDK name}/Development/
git init
git remote add origin https://github.com/ghostrider-05/RL-dummy-classes2
git config core.sparsecheckout true
echo "Src/*" >> .git/info/sparse-checkout
git pull --depth=1 origin main
To update when new classes are added, run the following commands:
# Go back to the /Development/ folder
cd ./UDK/{UDK name}/Development/
# Fetch updated classes
git pull --depth=1 origin main
# Recompile classes
cd ../Binaries/Win32/
UDK make -full
That's it!
Extractor
config.toml is the configuration file for adding more options during the extraction.
Top level:
Version
: the current version of the game to extract
AssetExtraction
:
IgnoredFlags
: these variable flags will be removed during the extractionIgnoredDefaultProperties
: default properties that contain these words will be commented
Descriptions
Fill the description.toml
configuration with the class descriptions.
When running the CI this file will be merged with the classes to combine the descriptions.
Special classes:
_DummyClass
: this will hold some descriptions commonly used in extracting the classes._ApplyToAll_DummyClass
: all properties listed in this class will be applied to all classes that have that property. Specify that property on a class to overwrite the descriptions or set it to empty to remove it.
Descriptions can be defined for:
Variables
Structures.{Structure name}
Enums
DefaultVariables
NodeInputs
NodeOutputs
NodeVariables
All types use the property name as the key, except for the Node*
types. These use the index of the link.
Example:
[MyClass.Variables]
PropertyName="Something interesting"
[MyKismetNode.NodeInputs]
0="The first input link"
Warning
These replication statements may not be correct. Please check the official documentation or ask help in the Rocket League mapmaking discord server.
If a class has replicated variables, there will be a replicated
block at the bottom of the class.
replicated
{
if (statementCode) // The replication condition
Location; // The variables that will be replicated when the condition is true
}
If a statement is not known, a comment will be placed behind the default statement.
The changelog will show the difference between an installation of the dummy classes at a certain commit (see the description of the changelog) and the autogenerated dummy classes.
The Engine changelog will contain a list of changes you could make to relevant classes in /Engine/Classes/
.
You can also fetch the changelog (in JSON) from the GitHub API from the outputted files:
- kismet.json: lists new and deleted kismet nodes when switching from the dummy classes.
- classes.json: lists new and deleted classes, including kismet nodes, when switching from the dummy classes.
- extracted.json: lists all
AkAudio
,ProjectX
andTAGame
classes in JSON format.
Made using Martinn's decryption tools.