How to know Unity version of an Unity project without open it?

Is there a way to know unity version in just windows folders? Without open it in unity editor

This is not useful when you are downloading a project that doesn't even have the library folder (like an unity learn project) besides, I actually didn't find the unity version on any of my .asset files. Below theres an answer by hexagonius mentioning that under project settings theres a text file called ProjectVersion.txt, that is the way.

8 Answers

8

Under ProjectSettings in the project folder there’s a ProjectVersion.txt.

It's ProjectVersion.txt, but apart from that this is the correct answer. The accepted answer involves the Library folder which may not even exist!

this should be the accepted answer. if you're command-liney: cat ProjectSettings/ProjectVersion.txt | grep m_EditorVersion | cut -d ' ' -f 2

@ducklin
You mean in just windows without an open unity editor

So here is a simple trick

GOTO Your Project > Library
Open any .Asset format file in notepad.
After opening the file you can see the unity version in the first line.

And what if the Library folder doesn't exist? A common use case is that one wants to know what version of Unity a newly cloned project was created in. All one will normally have in the project folder are the Assets and ProjectSettings folders, particularly if (as stated in the question) one hasn't opened the project in the editor yet! IMO hexagonius's solution is the one that will always work.

only applicable for Unity 4.x

This works, but I would add that it works with ANY .asset file under the asset folder too. I've just used this to identify an old 5.4.x project.

Here is what I found after going through all of my old projects:

For 5.x and later, the Unity version can be found in ProjectSettings\ProjectVersion.txt.

For 4.x, the version can be found by opening a .asset file in notepad and looking at the first few bytes.

I have yet to find a good way to determine the version for projects last opened in 3.x or earlier.

In my opinion it is in detail and best answer to check the unity version of a project- [1] [1]: https://www.rndgenerator.com/

Looks like there is a file called version.txt in the Library/UnityAssemblies folder. The very first line is the Unity version.

Also, looks like you can open some of those .asset files found in the Library folder as text files and see the Unity version number a couple dozen bytes from the beginning, or so.

Nothing in the Library folder. So why do I get this error when starting up? [Unity website won't upload my image atm] Text: Your project was last opened with a different setup of Unity. K:/Alpha 16 The saved project (before 5.0) does not match the launched editor (5.3.3p3). This may require re-import...

Not seeing it in the first line of an asset.
Only seeing something like this:

%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
— !u!28 &2800000
Texture2D:
m_ObjectHideFlags:…

I have not see any about unity version info in the file, but if using unity 5.x open project, will generate version.txt file, 4.x has not found...

I found the unity version of my project in the Unith Hub, below the project name.

Additionally it can find in Assembly-CSharp.csproj XML field 2019.4.8f1

Doesn't that just tell you what version of Unity generated that file? So it won't help when you've got a clean project and you need to know what version of Unity to open it with (which is surely the most common use-case?).

open file Assembly-CSharp.csproj in any text editor

and search unityVersion in the file