If you are building games and projects in Unity and targeting the Universal Windows Platform (UWP), you may have noticed than in the recent Unity releases this was actually broken. What you end up seeing in your build UWP project in visual studio is the following error:
If you dig further, you may also expose the underlying error code here:
This prevents you building / updating projects from Unity to the UWP Platform.
Once discovered, both Unity and Microsoft worked closely together to resolve the issues and updated their respective parts as quickly as possible.
Fixing the problem
The fix for this problem is fairly easy. However, it is a little time consuming (unless you have a mega fast download connection) as mostly it requires updating to the latest Unity and Visual Studio patch releases.
1: Install Unity 2017.1p5 or 2017.2p9
The first step, is to simply update your installation of Unity:
If you are on Unity 2017, then this is 2017.1p5 (or newer)
If you are on Unity 2017.2, then this is 2017.2p9 (or newer)
For the 5.x cycle, just update to the latest patch (although I haven’t tested this)
This will update both Unity and your install of the Visual Studio Tools for Unity
2: Update VS 2017 to 15.3.3
Once Unity is up to date, you will need to update your installation of Visual Studio. If you are still on VS 2015, then there is no action but you won’t be able to build UWP packages targeting the newer Creators update and won’t be able to build Mixed Reality platform.
To update Visual Studio 2017, simple close all open instances of Visual Studio and launch the Visual Studio Installer
Once it’s running (the first step may be to update the installer first), simply hit “Update” on your specific instance of Visual Studio (the installer will happily update ALL installed instances if you wish) and once it’s complete you will be on the latest version.
Open Visual Studio to verify, click “Help –> About Visual Studio” in the menu and you should be running 15.3.3 (or newer). If not, check your internet connection and try running the installer again.
3: (Optional) Set player settings for project to .NET & .NET4.6 (NOT IL2CPP, not tested but reports say it doesn’t play nice with Live)
Not strictly required but highly recommended for UWP projects, is to update the .NET Api Compatibility Level that is used in your built project. This allows you to use more modern C# 6 functionality if you wish without causing errors when you build it in Unity.
To update this, open the Player Settings window in the editor using either “Edit –> Project Settings –> Player” in the editor menu, or using the “Player Settings” button on the “Build Settings” build window. In the Other section on this configuration page you will find the following settings.
Not to be confused with the “Scripting Runtime Version”, which I’m told breaks UWP project builds (although I haven’t personally tested yet)
4: Build project targeting UWP SDK 14393 or higher
To build for Modern UWP, you need to be targeting a minimum API level of 14393 (Anniversary Edition), For Mixed Reality builds you will need a minimum API level of 15063 (Creators Update). Either will work but you need to ensure you select the version that is right for your target. The current advice with new builds is to always target the latest but that is completely up to you.
You will find the SDK selection on the “Build Settings” screen when you have the “Universal Windows Platform” target selected:
5: Open project in VS
Once you have built your project, open it in Visual Studio to continue.
6: UPDATE NETCore NuGet package to 5.4+ <- without this, it still doesn’t work
In testing I have found this is critical still for existing projects or when you build your first (ever) UWP project, you need to have the latest NETCore NuGet package downloaded and available else it will fail. you don’t have to update the other NuGet packages if you don’t want to (UWP Packages come bundled with the Application Insights NuGets for Windows Store integration for example), just the NETCore package.
To check and update the versions of the NuGet packages, right-click on the “Solution” in the “Solution Explorer” within Visual Studio and select “Manage NuGet Packages for Solution…”
Alternatively, you can also simply right-Click the “References” branch in your projects structure, also in the “Solution Explorer” in VS, this however will only show/update the NuGet’s installed in that single project and not the entire solution:
Once the NuGet manager is open you will see the installed NuGet packages, with a notification if any updates are available (provided you have an internet connection).
Simply select the NuGet package to update, NETCore in this case, select the version to update to on the right and click “Install”. You will then be walked through a set of screens to accept the license for that package (if one exists) and then a final “get out of jail free” accept or reject screen. Once complete, all the required references included in that package will be updated.
7: Build and Run for x64 only (x86 or Arm is a no go still)
With everything in place, all that is left is to build your project. By default, Unity still insists on selecting the ARM platform as the default (don’t know why but I guess it’s too small a thing to want to change), so you will need to update this to the x64 platform (don’t use x86 unless you really need it, most UWP systems all target x64 now). After that, you can build.
If you are unsure about which Solution Configuration to select (read, Build Type), remember what they are there for:
Used obviously for debugging, enables extra debugging information to be sent to an attached instance of Visual Studio (whether you run it from Visual Studio or just “attach” to it later). Will cause a performance hit when running but this is needed so you can walk through the code if there are any issues. It will also enable the debug window inside Unity to report errors to the screen should they occur.
Builds the project but without all the debugging stuff. just runs your project. With Unity however, it’s keen to note you are still running your entire project with all the superfluous code that Unity has in a project. DO NOT SHIP THIS!!!
This is a special Solution Configuration (just for Unity) that also runs code in Unity to strip mine unnecessary code / services and packages everything together neatly. This makes your Unity project run as fast as it can. <- SHIP/PUBLISH THIS!!!
All well and good
With everything in this article, you should have no further issues building your UWP projects and once you have gone through it at least once (I’ve found) you need not do it again (apart from updating NuGets, you should always do that)
Any issues, let me know or comment on this post.
Many devs I’ve spoken to or given advice for with regards Dream Build Play all worry about one BIG thing – Will It all be finished ready for the Big December deadline!
It might seem an odd statement but I’ll explain why.
What you are aiming for is enough to demonstrate your game, it’s gameplay and enough content to showcase your dream. Let’s expand on what I mean by that in this article.
1: Minimum Viable Product
The minimum you should be aiming for with the Dream Build Play competition is a MVP or Minimum Viable Product. Not to say that is all you are aiming for but it is your bare minimum.
What I mean by this, with regards to any game, is to have fully working gameplay with enough content to elaborate the vision for your game (and it shouldn’t crash ).
This may also mean:
It only works in a fixed resolution – no messing around with Portrait OR Landscape or resizing windows
You might implement only one control method (if you plan for more, e.g. Gamepad, touch, keyboard and mouse)
You may only do the first few levels, showing off the core game mechanic
Some areas (like in open world games) may be off limits, or offer a “Coming Soon” or “Check back later” prompt
You don’t need to go through regional certification or game ratings systems. Granted MS make this easy with IARC (International Age Ratings Certification), but still, time is better spent elsewhere.
All in all, you are aiming to showcase what you game can be and how it stands out from everything else.
2: Expand your base
Even with your MVP, try to add other elements which may or may not relate you your core game mechanic, including (but not limited to)
A menu system
Doesn’t need to be anything major or too flashy. But ensure it’s in the theme / style of your game (not a template). Include credits and if possible a demo reel (again keeping it simple)
Basic Services integration
Show how your game will have services integration like Live Logon, Leaderboards (even just one), Achievements. The Creators Club portal has tons of information on integrating with Live Services, samples and even an easy to implement API pack for C++ / Unity or C#.
If you can, also look in to some basic Mixer support to really shine.
Qualify for other categories
If you want to maximise your potential once you have your base game running, also think about existing to other categories, like Azure, Mixed Reality and so on. Don’t go too mad but with your MVP ready for contest submission, see what else you can add.
These are small things that you should have in your final submission, as shipping something that just jumps in to gameplay (unless it’s intended, if so mark that in your submission) doesn’t show good form.
3: Polish and Finish
With your submission ready and if you still have time, there are a few other things to consider:
Do a trailer
Have a little fun, play the game, record it, mix it and have some interesting voice over (if it suits). You might find by playing your game from a different perspective that you will find some last-minute tweaks you can add for even more fun.
Have other people play it!
This one I can’t stress enough.
Once you do have an MVP, or at least enough to play test, use the community, shout out to friends and have others play your game for feedback (and cookies!). Remember, you don’t have to implement all their feedback for the submission, some can wait until after. But look out for those crucial things that could lose you marks, like hard to use controls (not everyone thinks like you do), obscure UI (not everyone thinks like you do),
Nothing shows sheer determination than to show support for more than just a single language in a product. It demonstrates you understand the global market and what it takes, plus you are serious about the attraction of your game
You can do Trailers and some other activities (like a post-mortem post) after the submission is posted, so keep that in mind when balancing the time budget. But be careful, if you suddenly find something after you’ve submitted you will likely slap yourself in the face, like REALLY Hard.
That’s all for now.
Right, I got a few more posts lined up I need to work on, but I’ll sum up here with the lasting points.
Think of DBP as a GameJam but over 3500 hours (I’d recommend a few naps)
Get it working first and iterate
Don’t be afraid to change direction
If you are slightly unhinged or have a lot of time in your hands, do more than one project
Don’t sweat the competition. Just make your vision the best it can be and tweak it with things that you believe it will stand out.
If you can delight your followers throughout the competition, you’ve won half the battle already. Granted the same can be said of normal game development but here, you have a more focused audience to appease. Later when you release you will get tons of backing, even if you aren’t the final winner. It’s a win – win overall with the amount of media attention that Microsoft and it’s partners have lined up
Good luck to all
As noted from my previous post on Dream Build Play, the competition has now roared in to life and everyone who registered is now able to start filling in their profile and highlighting both their existing games and their future competition entry.
However, what is not immediately apparent, is that the profile system is there not just to showcase yourself, but to also offer your services to other devs who either are turned away at building something so big and new or need a little extra help on their project (I’m specifically looking at you, all those with skills beyond programmer art and play the guitar )
Get together with Dream Build Play
Dream Build Play is meant to inspire all of us to Dream Big, Build the most uber project we can so everyone can Play it! But we don’t have to do it alone!
Thanks to the profile system, if you don’t feel up to building your own project, then simply offer your services for either a share of the prizes or a share of the mountains of cash when it’s on sale (or just for recognition and thanks?). This enables anyone who’s already in the competition to look for help they need and recruit you in to their projects.
Also, if you have this brilliant idea and not sure how to build it (or your art skills are like mine and a stickman is a bit of a challenge), then search for potential team members, reach out to them and then enter as one team, the choice is up to you.
If you are advertising your services on the site, be sure to highlight exactly what you are good at! (and willing to do!)
In the profile screen, you’ll see a lot of details you can enter.
Everything from Your nickname, country and a sneaky little avatar picture, along with all your networks, connections and such. like Github, twitter, facebook, etc.
What’s important if you want to put yourself out there, is a description of yourself and your Skills in the dedicated area.
I’ve pictured mine just for reference (sorry, I’m not really available as I’m already busy )
Once done, you will be available on the site for all to see:
Searching for a Star
Now comes the fun bit, whether you are searching for your team mates or someone else is looking for you (best not to advertise it you’re wanted in some regard ). From the Community panel, you’ll be able to search for friends either by name, skills or where they live (so make sure you put down the skills you have)
So, whether you’re looking for an artist, programmer, modeller, animator or just someone to make coffee in your local town (I joke, as there isn’t a coffee Skill. But there SHOULD be!) then this feature will make your life much easier. once you are done searching, reach out get chatting and, more importantly, GET BUILDING!
The excitement is growing and a whopping 1500+ people have registered for this year’s competition, that’s by far the most entrants the event has had in a single year. initial reports show over 60+ projects already in the works, so it’s lining up to be a great competition.
I’m not usually one for small titbit posts but I’m going to shout out a few to focus on a few aspects of the competition that really need some notice!
Fill in your profile! – Shout about your game
With the competition well under way, the second phase of the Dream Build Play site is now live, showcasing both the developers and artists that have registered for the completion. It also houses another section dedicated to the games either being worked on or historical games that devs have already published.
Now if you haven’t already, you should fill in your profile on the site, this is great for several reasons:
1: Get Noticed
There is a huge amount of traffic being reported on the site, not just by devs but also by people interested in the games being built. So it builds up some prestige and gets people following you. (see 2)
Your profile talks about you, what games you’ve built, where to find them, where to find more out about you. You are in fact selling yourself as someone to take notice in for the duration of the completion and beyond! Don’t sell yourself short!
2: Build an audience
People are repeatedly coming back to the site now that the profile system is up and running. Reviewers, youtuber’s and review sites are already doing the rounds checking on the entries.
There is a lot of weight behind this competition, not just from Microsoft but also from its partners, sponsors and a fair amount of media backing as well as the whole gaming community. Dream Build Play even in its early XNA days of Windows / Xbox and Phone always got a lot of attention. Now that the net has widened with so many more chances to win.
3: Build your team!
If you are struggling, you can use the site to find other people in the event who may be able to help you out. Some even may be there to just offer their services! I’ll follow up on another post about this specific service later.
Remember, these profiles advertise you as much as they advertise everyone else. If you’re stuck, shout out for help. if you have time to spare or a fantastic set of skillz, then offer your services (and maximise your potential for winning!)
4: Advertise your current works
A few smart devs have also started listing their existing projects that are live. Whilst not official entries, it highlights the devs capabilities for the projects they have already worked on. like a person’s game, check out the rest of the catalogue and get excited for more! Give people MORE reason to follow you!
Give people more reason to follow your project and help you promote your entry. Feel free to put up demo’s / alpha builds on demo sites (like Itchio!) and go wild to showcase why yours is the best game in town. All this will lead on once you eventually publish your game as well!
We are the champions!
For now, all the best to everyone competing! It’s already starting to shape up like the best Dream Build Play competition of all time and we’re only a few days in!
If you’ve read this far, be sure to check out my upcoming post about game dev diaries. In short, if you haven’t already, START ONE NOW!!
It’s official, the world has ended as Microsoft has resurrected the hugely successful Dream Build Play challenge for 2017. The biggest main difference in this resurgence, is that you can now use any tool, framework or language you wish, So long as it targets Windows 10 UWP!.
The competition is broken up in to 4 main categories with various Prize levels for each, totalling a MASSIVE $200,000 prize fund for entrants to win!
The competition is open to all (AS IN WORLDWIDE) with only a few of the usual exceptions:
If you are a legal resident in your place of residence and 18 years of age or older as of June 27, 2017. If you are 18 years of age or older but are considered a minor in your place of residence, you must have your parent’s or legal guardian’s permission to enter; and
You have the technical programming education, experience and/or knowledge to create games for UWP; and
You are NOT a resident of any of the following countries: Cuba, Iran, North Korea, Sudan, and Syria; and
PLEASE NOTE: U.S. export regulations prohibit the export of goods and services to Cuba, Iran, North Korea, Sudan and Syria. Therefore, residents of these countries / regions are not eligible to participate.
You are NOT an employee of Microsoft Corporation or an employee of a Microsoft subsidiary; and
You are NOT an employee of any company or organization that is involved in the provision of prizes, equipment or materials for this Challenge; and
You are NOT involved in any part of the administration and execution of this Challenge; and
You are NOT an immediate family (parent, sibling, spouse, child) or household member of a Microsoft employee, an employee of a Microsoft subsidiary, or a person involved in any part of the administration and execution of this Challenge.
You also can’t (of note) submit a game that is being built by a major publishing house or one that is currently in development for console development programs such as ID@Xbox, PS Dev, etc. It has to be your own work and not linked to your development studio or company. If it wasn’t obvious, you also cannot submit games that are already published and sold, the game / project must be new. (AFAIK)
If you are up to the challenge, there are a few key dates to be aware of!
A brief history of Dream Build Play
Dream Build Play which ran from 2007 through to 2012, has birthed some of the most famous Indies in the years gone by, including:
SKA-Studios with The Dishwasher: Dead Samurai & I MAED A GAM3 W1TH Z0MB1ES 1NIT!!!1 – So famous everyone is still playing their games
Humble Hearts with Dust: An Elysian Tail (which went on to be bought by Microsoft Studios)
Xona Games with Duality ZF (still going strong with new titles being released this year)
To name but a few. Most Studios and 1 man bands, especially those that won, have all gone on to do great things and that was only with a single framework to build it in, Microsoft’s XNA Framework.
Now, with the new and improved Dream Build play, the competition is open to anyone and everyone, with any tool, framework or language you wish, with only one single requirement:
What is this Windows 10 UWP thing anyway?
Now you might think this is just one big push to get developers to build games for Windows 10 and you would be completely right in that but nothing says more than “come build for my platform” than the promise of money. However, this competition is SOOO much more than that.
The Windows 10 UWP ecosystem is a singular platform for building apps/games for Windows 10, it simply allows you to build a project once and then ship it to any client within the Windows10 family, such as:
Windows 10 desktop (the primary focus for DBP this year)
Xbox One UWP (the secondary focus, which you get for free as it’s a UWP platform) – The retail deploy, native Xbox isn’t required!
HoloLens & Mixed Reality (also a focus for the competition)
All of which are available to deliver to with a single package. Granted, given some have different screen sizes (some with no screen), you still have to think about how your game will work in each target but that is no different than if you were building for the Web, or for other platforms, such as Android tablets and phones.
What can I use to build my project?
Where previously the competition was limited to Microsoft’s own game development framework XNA, this year the doors have been flown open to any Tool, framework, middleware that you can use, so long as it’s able to target the Windows 10 UWP platform. To make things easier, many of the largest companies already provide “out of the box”, so shipping to Windows 10 UWP is usually no more than a few clicks away.
For instance, these companies all support UWP natively as an export platform:
And that’s not to say you can’t just go your own way, as UWP has a full D3D rendering surface under the hood, so you can always roll your own C++ engine and just start firing things at the screen.
Making your Game stand out!
As ever with these competitions, it’s all about making your game stand out, making your Unique features scream at a judges face saying Pick me. Microsoft has already gone a long way to give you some pointers to make your final submission a big success, such as:
It’s no secret that most big games these days need some sort of backend infrastructure, whether it’s for a MMO or PVP arena, or just for chat systems. The competition literally screams out, do something unique with a cloud backend and make it scale. The platform however, will have to be Microsoft’s Azure platform. To help with this, Azure already has loads of samples and integrations ready for most of the big framework providers and if that wasn’t enough, there are open source libraries as well.
It’s fairly easy to pick up and learn if you are new to the area, so simply plan for it in your design and do what you can to stand out.
2. Xbox Live Services (both desktop and Xbox)
Microsoft provide the Xbox Live platform through their new Xbox Live Creators Program, which offers you libraries, connections to provide serviced for game engines include Construct 2, MonoGame, Unity, and Xenko (others are available as well). This enables you to Integrate with Xbox Live social experiences such as sign-in, presence, Leaderboards, and more. If you want more services, you can sign up with ID@Xbox to get access to the full range of services.
3. Mixed Reality
It should be no surprise that everyone is jumping on the Mixed Reality bandwagon, offering games that work in VR, AR or Both. Adding this in to the Mix of your game will go a long way to impressing judges if implemented well. One note to remember, is you need to also think about special audio and give a good audio experience with your 3D game, just having a pretty 3D scene will NOT be enough.
4. Mixer Integration
Originally called Bean, Mixer is Microsoft’s new Collaborative Video streaming service with a heavy focus on games (Like Twitch), what sets it apart is that you can now integrate the service directly in your game, giving YouTubers and players the ability to interact with the audience through the game (A truly mind bending experience). So, if you chose to make your game “YouTuber” friendly and build a project that includes not just the player but an audience as well, you will be well on your way to a prize!
5. ALL OF THE ABOVE
No one said you should make your life easy. Providing you don’t go too far out of your comfort zone, do it ALL (or at least more than just a game). Gamers today are always demanding more and to keep pace you should find ways to give them more, quicker and easier.
DREAM…. BUILD … GET PEOPLE TO PLAY
Dream Build Play is back with a vengeance. You should look on this competition as the mother of all Game Hack events with huge prizes and goodies.
More than that, every previous DBP comp has always birthed new Game Development Super heroes as the competition really highlights just what devs can do (especially with limited time) and then go on to be uber rock stars.
So, what are you waiting for, the clock is ticking. Get registered and be ready to submit by: