Important
props-xml-extractor
is archived and use Node.JS v22.11.0
. Unexpected updates may occur. This ONLY
works with .YTYP
files converted in .XML
format from CODEWALKER
.
This project started as a small Node.JS app for a friend. The use case was to retrieve all props used in a building on GtaV.
You retrieve a .ytyp
file converted into .xml
with CodeWalker
who contains all props
used by the building.
This helps to get props to import them in Blender to modify the building.
- In CodeWalker, extract a .ytyp file in .xml format, should get something like '[file_name].ytyp.xml'.
- Rename the .xml file to 'data.xml' and add it to the main folder.
- Run the
main.js
file usingNode.JS v22.11.0
OR run theprops-xml-extractor.exe
with the "node_modules" folder. - Read the created 'result.txt' file in the folder, containing all not-duplicated props used in the .ytyp file.
- If you use the .EXE file, you should have:
- [Your_Folder]
--- [node_modules]
--- props-xml-extractor.exe
--- data.xml
--- result.txt
- Visual Studio Code
- Node.JS v22.11.0
- Module@xml2js
- Module@xmlbuilder
- SEA - Single executable applications
Use in a console (credits: Single executable applications from nodejs.org)
node --experimental-sea-config sea-config.json
to generate thesea.blob
node -e "require('fs').copyFileSync(process.execPath, 'props-xml-extractor.exe')"
to generate the .exe file namedprops-xml-extractor.exe
to generate theprops-xml-extractor.exe
npx postject props-xml-extractor.exe NODE_SEA_BLOB sea.blob ` --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2
to inject the .blob into the .exe
You will notice that to work, the executable need the "node_modules" folder from the source code. Because "SEA" can not add external modules to the executable.
-
1.3.0
- Update console logs / warn text.
- Update README.md
- Added .EXE thanks to SEA from Node.JS
-
1.2.0
- added props from entity sets.
- update readme.
- update package version / description.
- update console log messages.
-
1.1.0
- syntax update in the code.
- update readme.
- remove unused "require".
-
1.0.0
- initial release.