{"repo":"stevearc/godot_parser","free":true,"listed":false,"github":"https://github.com/stevearc/godot_parser","clone":"git clone https://github.com/stevearc/godot_parser.git","description":"Python library for parsing Godot scene files","language":"Python","stars":83,"topics":["godot","tscn","tres","python"],"license":"MIT","category":"game-templates","readme_excerpt":"Godot Parser This is a python library for parsing Godot scene (.tscn) and resource (.tres) files. It's intended to make it easier to automate certain aspects of editing scene files or resources in Godot. High-level API godot parser has roughly two levels of API. The low-level API has no Godot-specific logic and is just a dumb wrapper for the file format. The high-level API has a bit of application logic on top to mirror Godot functionality and make it easier to perform certain tasks. Let's look at an example by creating a new scene file for a Player: It's much easier to use the high-level API when it's available, but it doesn't cover everything. Note that use tree() does support inherited scenes, and will generally function as expected (e.g. nodes on the parent scene will be available, and making edits will properly override fields in the child scene). There is no support yet for changing the inheritence of a scene. Low-level API Let's look at creating that same Player scene with the low-level API: You can see that this requires you to manage more of the application logic yourself, such as resource IDs and node structure, but it can be used to create any kind of TSCN file. More Examples Here are some more examples of how you can use this library. Find all scenes in your project with a \"Sensor\" node and change the collision layer : Caveats This was written with the help of the Godot TSCN docs, but it's still mostly based on visual inspection of the Godot files I'm working on. ","default_branch":null,"files":null,"tree":[],"storefront":"/r/stevearc","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/stevearc/godot_parser/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}