scriptable objects to share data between projects

can you use scriptable objects as a way of sharing data between two people working in different project files?

eg: a game designer lays out a level, saves that data as scriptable object then a programmer can load that data in their project?

Yes, in combination with AssetDatabase.CreateAsset – you can then move the created asset between projects.

great thanks for your reply. much appreciated :slight_smile:

Is it good enough solution for a smallish projects or do people find they inevitably need to use something like json or xml?

you’ll save a lot of time if you go through the effort of setting up some kind of version control system. Git, Subversion, Mercurial, whatever. Packaging files into some kind of format and then sending them manually will take a ton of work over time.

We’ve got the entire team on git, and it’s working great. The root of the game project is the root of the git project, and we’ve got animators, designers, musicians and all kinds of non-technical people using it.

It might be, depends on what you’re trying to accomplish.

If you’re just trying to collaborate on a project, then I agree with @Baste , a version control system would probably be the best. Check out these links for more information

https://en.wikipedia.org/wiki/Revision_control
https://en.wikipedia.org/wiki/List_of_revision_control_software

Thanks!