Larian Banner: Baldur's Gate Patch 9
Previous Thread
Next Thread
Print Thread
Joined: Nov 2017
stranger
OP Offline
stranger
Joined: Nov 2017
EDIT: Pipe Tool is updated for Definitive Edition and will no longer work for Classic. Just be sure to select the data folder in ..\Steam\steamapps\common\Divinity Original Sin 2\DefEd

Pipe Tool is a tool to aid team development of DOS2 mod projects using source control, such as Git or SVN. It can also be used as a simple backup tool to quickly save and restore important progress.

This tool is currently necessary during the development of the mod: Arena Challenges. More info about the mod can be found here. Mod project files are distributed in multiple locations in the DOS2 Data folder, making it difficult to work with source control repositories. Thus, this tool was born.

Letter to Larian:
I completely welcome DOS2 and Divinity Engine 2 updates that makes this tool unnecessary.
If there are no such plans, then I hope this tool can help out the community.

Download the binaries. (The executable program).
Download the source, which is public-domain.
I believe google will show a view for the zip contents. There's a download button on the top-right that will download the zip file. Let me know if that isn't the case.
If you'd like to check out and/or build the source, make sure to use QT 5.9.3 which can be found here.

Usage Notes:
Be sure to place the binary in its own folder. The folder it resides in will be used as the git endpoint. Note that while it says git, the folder can be used as just a generic backup folder or save point for your mods. At the moment, every backup folder will need a pipetool.exe in it as it's designed to be packaged and shared with dos2 individual mod projects.

Update 12/9/2019: Pipe Tool has been updated to no longer require Microsoft Visual C++ Redistributable for Visual Studio 2017.

Setup

Simply plop this tool into your local repository located anywhere other than in the DOS2 Data folder, and it should be fairly straight forward to use.

Config

[Linked Image]
1. Set the DOS2 Data folder path.
2. All DOS2 mod projects will then be detected. Both projects in the DOS2 Data folder and projects in the repository that Pipe Tool is located in is searched. Projects are listed in the "Detected Mods" list box.
3. Double click the desired mod to extract the UUID into the "Mod UUID" input box. If everything is setup correctly, the Pipe tab will become available.

Usage

[Linked Image]
Some terms should be clarified and usage should be easy to understand.

DOS2 Endpoint - The directories and files that make up where the mod project is loaded by The Divinity Engine 2 and by the game.

Git Endpoint - The directory where Pipe Tool should be located. Note that while it says Git, any version control system that allows a local repository will work.

Pipe In - Make the DOS2 endpoint contents identical to the Git endpoint contents by copying or removing files.

Pipe Out - Make the Git endpoint contents identical to the DOS2 endpoint contents by copying or removing files.

After a pipe operation, the endpoints should be synchronized.
[Linked Image]

Another important usage of Pipe Tool is the ability to delete the project files using the delete button. This is useful because DOS2 mod projects are loaded with priority over mods subscribed on Steam, even if projects are not locally exported. In order to play the published version of the mod with others, the project must be removed.

So a common usage would be to Pipe Out, then delete DOS2 endpoint contents when you want the game to load the published mod, and Pipe In later to resume development of the unpublished version.

Please let me know if there are any questions or issues here. I hope to see more team developed mods because I love Divinity Original Sin 2!

Last edited by Raze; 09/12/19 03:03 PM.
Joined: May 2017
enthusiast
Offline
enthusiast
Joined: May 2017
Hey Guava527, thanks for making this!

As someone who currently has way too many projects, there are a few features I think would be really nice to have:

• An option to specify the "root directory" for the git endpoint.
• Inside that root directory, individual mod projects are stored in folders labeled by the mod name.
• The ability to add multiple projects to "track", which then populates a list on the pipe tab, with the ability to tick (via checkbox) which projects pipe in/out runs on.
• A "check all" and "uncheck all" button to quickly select which projects to pipe.

And, optionally:
• Pipe Tool hosted on Github, for easier requests/bug reports/forks/etc (if not already - I didn't see a link). opa

I currently have about 16 mod projects (not all active), so a few more features would make life easier when it comes to backing up everything.

I'm currently doing the junction thing and hosting my source on Github, but I'd like an easier way to back up my assets/effects/etc, and Pipe Tool looks like it could be an easier way.

Thanks again.

Joined: Nov 2017
stranger
OP Offline
stranger
Joined: Nov 2017
Hmm, I don't really intend to make Pipe Tool a full-blown project of its own, so it doesn't have its own Git repository. It's working really well right now for our project so I'm not really inclined to expand its functionality. However, it is open-source and public-domain, so you or anyone else are free to make changes, host mirrors, or do whatever you want with it.

The current design is that each mod folder would have its own PipeTool.exe in it. Each mod would likely have its own contributors and as a tool to aid team development rather than backup, it wouldn't make sense to require contributors to pull mods they aren't working on. That is my opinion anyways.

Thanks for your input though. Man, good luck on 16 mod projects.

Last edited by Guava527; 30/12/17 11:11 PM.
Joined: May 2017
enthusiast
Offline
enthusiast
Joined: May 2017
Originally Posted by Guava527
Hmm, I don't really intend to make Pipe Tool a full-blown project of its own, so it doesn't have its own Git repository. It's working really well right now for our project so I'm not really inclined to expand its functionality.

Fair enough.

Originally Posted by Guava527
...it wouldn't make sense to require contributors to pull mods they aren't working on. That is my opinion anyways.

Oh, I didn't mean to suggest you should remove the individual project capability in favor of running just one instance of the program, even though that's likely how I'd use it (as maintaining multiple folders/copies of PipeTool isn't really ideal for my situation).

Multiple contributors shouldn't have to pipe every mod the team is working on all at once. I agree on that. I don't think it has to be one or the other though.

Anyways, I'll figure something out. up

Originally Posted by Guava527
Thanks for your input though. Man, good luck on 16 mod projects.

Thanks. I actually have ideas for more, but there's only so much time in the day, haha. Thankfully I'm not actively trying to complete these all at once, or I'd go nuts:

(Too many projects...)
[Linked Image]

Joined: Nov 2017
stranger
OP Offline
stranger
Joined: Nov 2017
This tool is discontinued and can no longer be obtained. If a moderator sees this, please close or delete this thread. The download will no longer be available.

Joined: Mar 2003
Location: Canada
Support
Offline
Support
Joined: Mar 2003
Location: Canada

I'll add that note to the OP, and lock the topic.

Joined: Nov 2017
stranger
OP Offline
stranger
Joined: Nov 2017
Thank you, Raze, for opening this topic back up. I am back from my hiatus due to health issues. I'm unable to edit the first post in this thread, so I'll have to post new info here. The links in the first post no longer work.

Pipe Tool is updated for Definitive Edition and will no longer work for Classic. Just be sure to select the data folder in "DefEd".

Binary: https://drive.google.com/file/d/12cSfiQunTczi9m9TnSty067cNKshj3sS/view?usp=sharing
Source: https://drive.google.com/open?id=1vHpOFs_Zg_iX6nLWMLYxjnlRV1J5tgeL
I believe google will show a view for the zip contents. There's a download button on the top-right that will download the zip file. Let me know if that isn't the case.
If you'd like to check out and/or build the source, make sure to use QT 5.9.3 which can be found at: https://download.qt.io/official_releases/qt/5.9/5.9.3/

Usage Notes:
Be sure to place the binary in its own folder. The folder it resides in will be used as the git endpoint. Note that while it says git, the folder can be used as just a generic backup folder or save point for your mods. At the moment, every backup folder will need a pipetool.exe in it as it's designed to be packaged and shared with dos2 individual mod projects.

Last edited by Guava527; 09/12/19 08:05 AM.

Link Copied to Clipboard
Powered by UBB.threads™ PHP Forum Software 7.7.5