Design Team collaboration with Vectorworks and Lightwright

PMWest

Member
I'm looking for advice on the best way for a lighting team to share and work on a show's files (Vectorworks and LW5) and have each member update them without ending up with conflicting data or multiple, inconsistent files. In this case, the files are distributed on Dropbox. The LD, ALD and ME are all working on their own parts of the show. Dropbox isn't a network - just a storage folder - so the Vectorworks "lock" function doesn't work. There's the potential for files of the same name to have different data and to have one member's work inadvertently overwritten by another's file.

This is especially true when one member updates only the LW5 file and doesn't update VW at the same time. It's hard to reconcile instrument data from separate files. Also, version control is important. If everyone works on the same files with the same names, you have a hard time going back to a previous version if you make a mistake. I'd like to have new file names every day so it's easy to step back if needed.

The safest way seems to be to have only one person working on the file at a time. And rename the file every day. But that's slow. We all know the time pressures of getting things done and meeting deadlines. Is there a better way?

The goal is for everyone to work as fast as possible but always have definitive show files in one place with everyone's latest information. Surely this is a problem many of you have solved. How do you do it?

Thanks!
 
I know very little about the internals of VW or LW so take this with a grain of salt. However, I do manage the software development environment for a multinational telecom company with similar challenges.

If all you want is simple version control of serial access then consider getting a free account on GitHub rather than Dropbox. Git is an open-source versioning system developed to manage the Linux project. There are other hosted versioning solutions out there like collab.net, sourceforge, etc.

I don't know what VW supports in the way of automatic merging. You might be able to simplify manual merging by getting everybody to cooperate on limiting their changes to one layer each, with somebody designated as the integrator for reconciling changes between those layers periodically.
 
I don't think source control would work as intended here - all the vwx files I have kicking around my hard drive are binary, so attempting to merge them would be almost guaranteed to produce corrupted output. You could still use it in the way described here Locking binary files using git version control system - Stack Overflow but that's quite an ordeal.

Alternatively, use something like SVN that properly supports locking files. Not super slick, but you'll always know that you have the most up-to-date file and that nobody else is using it and overwriting your changes. There are plenty of sites out there that offer free/cheap SVN repo hosting, and the paradigm is easier to get used to than git (IMO).


Neither of these are ideal by any stretch, but that's the reality of trying to collaborate with software that was never meant to collaborate.
 
Almost every large show I've worked on just uses the concept of transferring file ownership - which we call "passing the football". The person with the football is the only one who can make changes to the document, and once they're done, they transfer the football back to the group. It might seem a little slow, but it works fine with proper communication. Even on large shows, I've never really had a problem with this, as it's not often that two people need to be making major changes to the document. When the plot is submitted, the Production Electrician takes over the files, assigning dimmers and circuits and inputting cabling and DMX addresses and all that. Once he's done, the file goes back to the group as a whole, and whenever someone needs to make changes, they just take the football and do what they need. I've done it multiple ways during tech, but sometimes the Electrician will assume all update responsibility for the LW after load-in, while the Design team handles only the VW changes. This makes a lot of sense, because the Production Electrician would be able to update circuit and dimmer information, while also making changes to color or locations as they occur. For control of the football, I often use a literal image of a football (or a funny/obscene image, or anything really) called "FOOTBALL.jpg" that lives in the dropbox folder, and when someone's working, they just remove that file, then replace it when they're done. As long as everyone is on top of their game, it works great.

As for LW/VW exchange - I strongly believe that the best, most reliable data is data that exists in one place, and one place only. Many of the shows I work have nothing but the instrument symbol and the unit number on the plot - and maybe the channel number for some versions. The reason is simple - I'd rather know that the paperwork always has the correct color information than worry that something didn't get updated and have to cross-reference to determine the most recent version. Most LD's I work with use VW/LW exchange only in the plot stage, but once the finals are delivered, they stop. It's MUCH easier to just keep all the information in one place (or manually input it into the other file, if you want it for archive purposes) than it is to try to deal with exchanging the data every time and risk corruption. We've all been screwed by VW/LW exchange before, and it's just not worth the headache. Most LDs I work with treat the Vectorworks as just a map for placing the instruments, and use LW for all of the data associated with a fixture. It isn't very efficient for small shows, but on larger shows, it's so much easier and reliable.

Hope that helps.
 
I'm looking for advice on the best way for a lighting team to share and work on a show's files (Vectorworks and LW5) and have each member update them without ending up with conflicting data or multiple, inconsistent files. In this case, the files are distributed on Dropbox. The LD, ALD and ME are all working on their own parts of the show. Dropbox isn't a network - just a storage folder - so the Vectorworks "lock" function doesn't work. There's the potential for files of the same name to have different data and to have one member's work inadvertently overwritten by another's file.

This is especially true when one member updates only the LW5 file and doesn't update VW at the same time. It's hard to reconcile instrument data from separate files. Also, version control is important. If everyone works on the same files with the same names, you have a hard time going back to a previous version if you make a mistake. I'd like to have new file names every day so it's easy to step back if needed.

The safest way seems to be to have only one person working on the file at a time. And rename the file every day. But that's slow. We all know the time pressures of getting things done and meeting deadlines. Is there a better way?

The goal is for everyone to work as fast as possible but always have definitive show files in one place with everyone's latest information. Surely this is a problem many of you have solved. How do you do it?

Thanks!

Some thoughts:

- Having different versions of VW makes it difficult and you end up working in the lowest version, or at least exporting back to the lowest version used so all can see. No great answer except to have everyone on the latest/greatest, which is expensive, or use the Educational Version, if available, or use do the export to lowest version.

- I would absolutely require everyone (if possible) to use the VW/LW link function so the plots and LW files that person is working on, have the same data. Mass confusion reigns as a result of not doing this as you can potentially have 6 different and all correct versions of the plot/hookups. Or maybe the LD and ME not work in the VW, using only as a reference, doing any editing in LW. LW allows two copies to open at the same time and it's easier to spot changes in a spreadsheet/list format then on the plot.

- Lightwright makes it somewhat easier, especially if you are all on 5, as you can assign different colors to edited information, with particular colors for each individual. Thus if you edit a file and the changes are in red, any changes you might make in the linked VW file would be in blue, the ALD might be in yellow, with the electrician in green. Thus you know who made the changes, or where it was generated. You can also link everyone on a network (even the cloud) so as to automatically send to them, or to the Dropbox, any updates.

- I would create a folder on the Dropbox and have the Master VW and LW files there. Then have one person (the ALD) be the "reconcile" person - I.E responsible for updating the Masters. Then anyone who works on the masters, then saves into a subfolder with their name on it. The time stamps on the files will show you the date of creation. Then once per day, the ALD (and this is pretty much the duties of the ALD) reconciles, saves to the master and only to the master at the end of each day (or potentially at daybreak !). At that point all other files become "old".
 
Last edited:
I don't think source control would work as intended here - all the vwx files I have kicking around my hard drive are binary, so attempting to merge them would be almost guaranteed to produce corrupted output.

HIJACK

Don't confuse the desire to do a binary merge with the need to implement locking to serialize access. They aren't the same issue. Most version systems will happily store binary files and bring back each unique version. Any merge that may need to happen is left as an exercise.

No locking is required but conflict resolution might be. Often the last one to submit is responsible. Following the omnipotent integrator model, the participants would publish to their unique branch and the integrator would manage any merge to the golden version. In the case of Git, you would have all stored versions available at any time should you need to find something that got clobbered by somebody else.

/HIJACK
 
Which way does the information flow between VW and LW? Is it possible to get it flowing consistently in one direction and turn off the VW<>LW data exchange until one person can commit the changes to the other file?

I know that LW has some built in collaboration tools for data reconciliation, so maybe those tools can be used to track changes to the LW file, then daily versions can be saved by one person?

-Todd
 
HIJACK

Don't confuse the desire to do a binary merge with the need to implement locking to serialize access. They aren't the same issue. Most version systems will happily store binary files and bring back each unique version. Any merge that may need to happen is left as an exercise.

No locking is required but conflict resolution might be. Often the last one to submit is responsible. Following the omnipotent integrator model, the participants would publish to their unique branch and the integrator would manage any merge to the golden version. In the case of Git, you would have all stored versions available at any time should you need to find something that got clobbered by somebody else.

/HIJACK

Oops, should have changed "as intended" to be "with the ability to arbitrarily + cleanly branch and merge multiple versions of the file." Hence the suggestion for strict file locking to avoid the need to ever merge files.

It's a tradeoff, of course: do you want to spend time waiting for an exclusive lock on the file you need, or would you rather spend that time later merging back all the edits that were created concurrently.
 
Which way does the information flow between VW and LW? Is it possible to get it flowing consistently in one direction and turn off the VW<>LW data exchange until one person can commit the changes to the other file?

I know that LW has some built in collaboration tools for data reconciliation, so maybe those tools can be used to track changes to the LW file, then daily versions can be saved by one person?

-Todd

In VW 2012 and higher as well as LW 5, the auto data exchange is both directions. With VW 2013 you do not have to do a refresh to see the updates from LW. I have LW configured so edits on a file done in LW shows in red, with edits done in VW showing in LW in blue. Those colors are user choice and you can easily have multiple users contributing/changing an LW file and readily know where those changes are coming from (this is how John designed it).

Thus there's really no need to turn off the auto data exchange. I use 2 monitors, have LW open on one and VW on the other, data exchange enabled and readily work in either document and see the changes instantly in the other. Thus if I'm adding an electric in VW the instruments show up in LW. I can number in VW, do channeling, color, purposes in LW, and it all tracks to both documents.

If desired I can also do a Merge Show (data) in LW. I can selectively merge so if the ME has only added dimmers and circuit names, I can just merge in only that data. The LW mapping has a great deal of flexibility as to what you merge and in what direction between documents. Thus it's possible to simply add in to the master file, the info the ME has worked on.
 
While the VW/LW exchange works great if you keep up with it, it rapidly goes to hell if you don't have both open for even one minor edit. In my experience, expecting a large group of random people with varying degrees of experience with cad and lightwright to be consistant and vigilant about following a procedure is foolish.
 
While the VW/LW exchange works great if you keep up with it, it rapidly goes to hell if you don't have both open for even one minor edit. In my experience, expecting a large group of random people with varying degrees of experience with cad and lightwright to be consistant and vigilant about following a procedure is foolish.

Well, it's not really a large group. It's the LD, ALD and ME according to the OP. That's not really a huge group to deal with, just does indeed need some attention to procedure.

And there is no real point to NOT using the data exchange every time you edit. What's the point otherwise. You could have saved a bundle and stayed with MiniCad and LW 3 and not bothered, or learned the VW paperwork. The whole point to upgrading and using the new software is to get the feature set that the upgrades offer. The link between LW and VW is one of those feature sets that save you a ton of time if you stay disciplined.

The bottom line is that this is the software that currently and seemingly is the most widely used for the function described by the OP. Just like learning console software, it's one of those things you either learn, or pay somebody to do for you.
 
I'm not going to argue about the fact that it makes the most sense, I certainly agree! My experience is that other people don't necessarily think that way, or think about it at 3am when they are trying to update a few changes after a 14 hour day in the theater. Or you have people who copy the files out of dropbox, work on them locally, and then drop in a new version later, except maybe they forgot to put the lightwright in. Or sometimes the designer has lw4, and matching versions of vectorworks never happens, so you're dealing with that on top of everything else. I find that the sync works great if theres just one person touching the files, but sharing it just has too many variables that can break.
 
Thus there's really no need to turn off the auto data exchange. I use 2 monitors, have LW open on one and VW on the other, data exchange enabled and readily work in either document and see the changes instantly in the other. Thus if I'm adding an electric in VW the instruments show up in LW. I can number in VW, do channeling, color, purposes in LW, and it all tracks to both documents.

I've used the data exchange with LW5 and VW2012, so I understand that process as it applies to a single person using both programs on a single machine. My suggestion to turn off data exchange was to avoid problems if multiple people are editing the same LW or VW document, especially when using Dropbox. I have no experience with that scenario (I am a department of 1, so file sharing isn't a concern), so I was thinking that if one person was the "linker" who commits the changes, it would be easier to manage conflicts.

-Todd
 
I've used the data exchange with LW5 and VW2012, so I understand that process as it applies to a single person using both programs on a single machine. My suggestion to turn off data exchange was to avoid problems if multiple people are editing the same LW or VW document, especially when using Dropbox. I have no experience with that scenario (I am a department of 1, so file sharing isn't a concern), so I was thinking that if one person was the "linker" who commits the changes, it would be easier to manage conflicts.

-Todd

The PITA with that is you get back documents that the ME edited in the LW file while the LD edits in the VW file and lot's of things don't match. How do you reconcile that ?. How do you solve errors ?. I think you have to treat the VW and LW files as one document shared across 2 pieces of software and have that data the same between the 2 documents at all times among all users. In reality, LW is the easiest of the 2 software to see the changes, using the multi-colored editing function.

LW allows more then one file to be open (so does VW, but it's harder to visualize differences). If you know (as the ALD) that the LD made changes in the VW file and it's been tracked to the LD's LW file, then you compare that to the ME's LW file, you will see all the changes highlighted in colors in both documents. You can then cut and paste easily between documents, to either create that day's master or create a new Master LW document. Then the VW document is automatically correct if you are linked.

And as reply to Rochems comments:

"As for LW/VW exchange - I strongly believe that the best, most reliable data is data that exists in one place, and one place only. Many of the shows I work have nothing but the instrument symbol and the unit number on the plot - and maybe the channel number for some versions. The reason is simple - I'd rather know that the paperwork always has the correct color information than worry that something didn't get updated and have to cross-reference to determine the most recent version. Most LD's I work with use VW/LW exchange only in the plot stage, but once the finals are delivered, they stop. It's MUCH easier to just keep all the information in one place (or manually input it into the other file, if you want it for archive purposes) than it is to try to deal with exchanging the data every time and risk corruption. We've all been screwed by VW/LW exchange before, and it's just not worth the headache. Most LDs I work with treat the Vectorworks as just a map for placing the instruments, and use LW for all of the data associated with a fixture. It isn't very efficient for small shows, but on larger shows, it's so much easier and reliable."

This baffled me somewhat as not having some crucial data on the plot, such as color, or maybe a template used, makes the plot only useful for knowing where in the space the light exists. Which defeats the graphical usefulness of the plot in that it's easier to see on the plot key data, such as address (conventionals) or such. having to find the light on the plot then going to the instrument schedule to get data that very well could be on the plot, is such a waste of time. And all because data exchange is mistrusted ?. Not buying it.

I've been using the LW/VW data exchange from 2003, thru LW 3 and VW v9 right thru to the current and have rarely had a corrupted file that wasn't my fault. Bad data in is bad data out is my experience. I have had to become thoroughly proficient at understanding the exchange process, but it's been time well spent and I never or rarely get issues now, on 300+ instrument events.

2 pieces of data in the VW and LW exchange are crucial. Unique/External ID and Symbol Type/Name (LW and VW use different terms for the same things). If you muck them up, the link is broken. If symbol name is screwed you get these pretty little rectangles on the plot where S4 symbols used to exist.

Now that not to say that problems don't happen and having multiple users on one event complicates everything. But getting good at the software is really important, just like a console operator gets good at pressing buttons. And sometimes we don't get the time to become as proficient as we like, especially if we don't use a skill set continually (just like a console).

In the OP's case, he/she asked for advice as to how to deal with sharing. Having everyone at the same level of software compatibility is problem one to solve. Getting good at using said software is problem 2.
 
And as reply to Rochems comments:

This baffled me somewhat as not having some crucial data on the plot, such as color, or maybe a template used, makes the plot only useful for knowing where in the space the light exists. Which defeats the graphical usefulness of the plot in that it's easier to see on the plot key data, such as address (conventionals) or such. having to find the light on the plot then going to the instrument schedule to get data that very well could be on the plot, is such a waste of time. And all because data exchange is mistrusted ?. Not buying it.

Not to drift too far off topic here, but this really interests me, as it's a clear case of two people working in very different and equally valid ways. In a larger-scale proscenium space, I hate pulling color, template, and address information from the plot. More often than not, displaying all that information clearly becomes difficult and complicated without overlapping onto other instruments or cutting off part of the color or whatever. When I'm running a hang, my normal workflow is to print a plot with just symbols, unit numbers, and circuits, and work off of this. I also have a "Designer's Plot" printed which is just the symbol, unit number, and channel, and this is my main reference after the initial circuiting is done. When I'm running a call, I'm sitting at a desk with the plot laid out and my laptop opened with Lightwright next to me. Any time I need information on a channel, it takes one click to give me anything I could want to know about that channel. And when the designer changes a color in a system or rechannels some lights, I can make that change super easily in LW and always know that what my laptop says is correct.

This is not to say that I might not also have VW open and syncing as I'm doing this. But for reasons that you mentioned, the LW/VW exchange can sometimes just be more of a hassle than it's worth. I use LW for EVERYTHING - I input spare circuits, multicable runs, Data and Ram runs, sidearms and c-clamps and other hardware, twofers, jumpers, DMX terminators, adding extra parameters for ML hot power, even things like consoles and dimmer racks and optos. And while I can set these to be Not On Plot, it just becomes more of a hassle to constantly worry about breaking the link. I've been screwed too many times with the dreaded rectangles, and it's just easier for me to keep everything that I do current in LW and let the design team worry about the VW if they want to. I also treat VW as a tool to make prints instead of as a database - and since I don't like putting color or gobos on a printed plot, I couldn't care less what VW says they are.

I also end up prepping many of my shows pretty heavily, which contributes to this way of working. I almost always pre-frame and label my color and gobos, so that you can just walk down a pipe and drop color without needing any paperwork. I often have pre-printed labels with the unit no./position/channel/dimmer on them, and the electricians can just peel off a label, stick it to a light, and know everything they need to know. On some bigger shows, I've completely prepped the show by pre-labeling, pre-dropping color, and sorting by position, so that you just hafta find the pile for 1st Electric and unit number 1 will already have its color, gobo, and circuit labeled on the tail.

This is not to say that your way of working is any less valid than mine. This strategy works best for me on larger, proscenium shows, but when I get into a smaller show or have less prep time or go into thrust or black box, this system goes out the window and I go back to putting everything on the plot.
 
And while I can set these to be Not On Plot, it just becomes more of a hassle to constantly worry about breaking the link.

You can set this on the map that LW shows for what data is being exchanged. Once set it stay's set. Thus you are not exchanging un-needed data between files, only what you need. That plot data is really determined though by what you choose to display on your label legends and that's where you can get creative on different versions of the plot, hang sheets, etc... Same data, different plot print.

The bottom line though is to use both programs to display and deliver the information you need, to the folks that need it. Having linked programs means the data is the same no matter where you choose to change it. As example, if you add units to an electric, you add them to the VW drawing and now need to re-number. That function is easier to visualize in VW and it's just as easy to grab every unit on the position and use the Re-number tool, then to do it in LW, which now has the position order all out of sorts (which Unique ID is which instrument ?). If you don't link then you have more work to get it right in LW with more room for error. Ditto doing channels or pretty much any other editing. LW is champs but now you have an out of date plot for some of the data you choose to put on the plot.

Note that one thing I find useful if you need to print out hardcopy is to work in a scale that allows 11x17 prints, or to have broken down the larger drawing into viewports that allow the drawing to be able to fit in 11x17. Those are very common printers and allow you to run off updated paperwork very readily.

And as a somewhat tangent to this subject, the 2,0 Eos family software due out has a Magic Sheet. A screen shot I saw had a set drawing imported. As described ont he Facebook page - http://www.facebook.com/groups/etceosprogrammers/

"you would import an "unintelligent" background image and overlay it with objects. those objects can be geometrical forms, stock symbols or ones you created by yourself and imported. you would then decide what this object would represent: a channel, a cue to be fired upon clicking on it, a color palette, a macro, etc. basically all record targets or a console button."

Here's an image and needless to say, VW can generate a number of image types that would be compatible, so having up-to-date data on the VW file becomes more important if you want to use this function.
 

Attachments

  • Magic Sheet.jpg
    Magic Sheet.jpg
    50.3 KB · Views: 590
Last edited:
Share the file, but save it as a new version number with your initials (shownamev23nl.vwx) and then have everyone set their backup folder within their own computer to save all the backup versions as you go, then if a problem arises, someone should have it as a dated, backed up file on their system. If you made a mistake, or someone deleted your layers from version 22, it should be backed up in your own folder along with 21 other versions. Dump the folder at the end of the show.
 
I like to version things on a regular basis in Dropbox, whether working alone or in a group. Should something catastrophic happen you have at least somewhere to go back to. Initials help. As for information that I exchange I use a blend of Steve and Michael's information. Circuit name and Number are great for me as ME. As a designer, I don't care. All I care about is making sure I don't go over the number of dimmers available and that my lights are channeled and colored as specified. If an extra circuit is needed there is the ME's problem to figure out (which is fun when you are working for a small company doing both jobs :twisted: ).

Other reason for saving often: Strange things happen. Vectorworks overwrote my .xml being shared between VW and LW for my current show with data from another show plot entirely. I was using this other plot as a reference for how the LD I was ALD'ing for drafts, and exhange was turned off on that file. Out of the blue, LW had 461 items for a show with only 126, and my plot suddenly had over 300 instruments using one symbol stacked atop eachother. Strange since I didn't save the reference file at all. *head scratch*
 
I, as a Web guy, would recommend a WebDAV site, or maybe SharePoint. That way, you have to "check out" the files to use them, and everybody will get a notification if they try to open it that it's being used. Then a quick email saying "its been 4 hours, are you still working on that?" would work wonders.

I believe that Microsoft has a basic SharePoint service for free, but if you have a domain at your theatre ask your it person if it would be feasible to install.
 

Users who are viewing this thread

Back