VMF-tools and FGD-tools Yep, here goes big daddy Fubar again... I've recently started working on some python libraries to help in handling source engine maps programmatically. Those are VMF-tools and FGD-tools. I've laid out a lot of the ground work but I'm far from done. This is my progress. Current Projects VMF-tools: A general purpose python library that enables you to parse, edit and write .VMF files. Project Link: https://github.com/maxdup/vmf-tools Done: Reading and writing .VMF files. Currently: Adding functions to perform mirror symmetry on VMFs. Leveraging Fgd-tools to identify entity properties to be geometrically modified. Todo: Add functions to perform rotations on VMFs. Add functions to mass replace textures and model skins. Add functions to mass replace models. Finished projects: FGD-tools: A python library that can parse .fgd files so we have a schema for entities found in vmfs. FGD-tools will eventually assist VMF-tools when it comes to manipulating entities. They are seperate projects to keep things clean and self contained. Project Documentation: https://maxdup.github.io/fgd-tools/ Codebase: https://github.com/maxdup/fgd-tools Future projects: VMFlip: A Windows application leveraging VMF-tools and FGD-tools to automatically mirror TF2 maps by mirroring both brushes and entities. On top of doing the geometric transformations, it will also perform texture replacements, model replacements (and/or skin replacements) ...More snazzy stuff: to be revealed later Why this thread? To inform people in case they would be interested in contributing. To inform people of new resources that are becoming available in case they'd like to create tools of their own in the future. To discuss other useful features that should be added to these libraries Isn't most of this redundant with existing Hammer functionalities? Yeah! But that's exactly the point. Hammer's great, however, we can vastly improve our workflow by doing more stuff outside of the level editor. For that we need to replicate features. Want to contribute? Awesome! There's a lot of work to be done to pull this off. The good news is that not all of it involves programming; you don't necessarily need to know how to code to be a part of this. Get in contact with me and let's get that ball rolling! The ultimate goal is to make it easier for people to create better tools for source and eventually open up new possibilities for mappers.