Adventure Game Studio

AGS Development => Editor Development => Topic started by: Calin Leafshade on Sun 14/09/2014 18:19:29

Title: .NET version
Post by: Calin Leafshade on Sun 14/09/2014 18:19:29
I know this has come up before but can we discuss moving the AGS Editor to a higher version of the .net framework?

.NET 2.0 was released nearly 10 years ago.

I suggest we move to .NET 3.5 mainly to take advantage of LINQ which is supported in Mono.
3.5 has very high usage and is supported right back to windows 2000

It doesn't require any source migration, just a flag change in the csproj file.

Thoughts?
Title: Re: .NET version
Post by: Crimson Wizard on Sun 14/09/2014 22:48:48
IIRC it was feared that migrating to .NET 4 will disable AGS for WinXP users. .NET 3.5 won't have this problem.
Title: Re: .NET version
Post by: Sslaxx on Mon 15/09/2014 11:24:27
Quote from: Crimson Wizard on Sun 14/09/2014 22:48:48
IIRC it was feared that migrating to .NET 4 will disable AGS for WinXP users. .NET 3.5 won't have this problem.
.NET 4.0 still works for XP users - it is also the last version that does. .NET 4.5 and above is not compatible.

Here's the discussion last time round: http://www.adventuregamestudio.co.uk/forums/index.php?topic=46804.0
Title: Re: .NET version
Post by: Calin Leafshade on Mon 15/09/2014 13:53:09
It's worth noting, pursuant to Radiant's concern in the linked thread, that it's not a large migration. It's simply a change of a configuration variable.

Of course, if new code is written which takes advantage of new features (linq really) then the process is not reversible.

It is purely something to make development easier rather than a change for the user base
Title: Re: .NET version
Post by: Gurok on Mon 15/09/2014 14:22:02
Oooh lambda expressions!

I have run into a few things where the syntax is easier in 3.5/4.0, but never impossible in 2.0.
Title: Re: .NET version
Post by: Crimson Wizard on Mon 15/09/2014 14:49:31
.NET 4 requires at least MSVS 2010. There's still a problem with precompiled static libs linked with Native dll we need to solve before moving to other MSVS edition.
Or use any MSVS for Editor and MSVS2008 for Native dll... (not that I like this idea much).
Title: Re: .NET version
Post by: Calin Leafshade on Mon 15/09/2014 15:49:08
Thats partially why I suggested .NET 3.5

I've been working on factoring out the native libraries and it's very troublesome so waiting for that is not viable.
Title: Re: .NET version
Post by: Crimson Wizard on Mon 15/09/2014 16:05:47
Well, changed all projects including native lib to 3.5, it compiles and runs, did not notice anything bad.

Should we do this?
Title: Re: .NET version
Post by: SpeechCenter on Tue 16/09/2014 20:27:29
Just a quick note, you can still compile the C++ portions with VC++ 2008 compiler while using newer VS IDEs. All you need is to install both VC++ 2008 and the newer VS. Then set the C++ projects to use the older compiler.

I've been using VS 2013 express for some time, including for privately testing my code against AGS compiled this way and it works just fine.
The downside is that it will require two installation of Visual Studio until those native projects will be upgraded. The upside is that the IDE is much better and the express version supports compiling both C# and C++ in the same solution. This was very useful on multiple occasions.

If, however, the consensus is to stay with VS 2008 IDE, moving to .net 3.5 is a good step forward.