This article aims to help you overcome some of the problems that may arise when using the Tizen SDK and target module in GameMaker:Studio.
Tizen SDK On Windows 8 And Windows 7 64bits
The Tizen SDK does not officially support Windows 8, which means that those people who have a Windows 8 development PC will have to resort to other methods for using the Tizen GameMaker:Studio module (like dual booting their PC to an earlier OS). Windows 7 64bits can also give problems with the installer, giving errors when unpacking the necessary files. However some people have reported that you ''can'' use the SDK with Windows 8 and Windows 7 64bit by following the instructions outlined below.
WARNING! The following instructions require that you disable Windows Hyper-V on Windows 8, which means that if you have the Windows Phone module, the emulator will no longer work for that target (you can switch it back on at any time, however).
Preparation Before Installation
Before starting, you should make sure that your PC supports Intel VT-x technologies, and that this is enabled in the BIOS, along with the Intel Execute Disable Bit settings (most BIOS have them set to enabled by default, but you should still check). If you are unsure about this, please see the section on Installing HAXM, below.
Once that has been checked and found to be correct, if you are using Windows 8 you should then go to the Windows 8 Control Panel and select the Programs and Features. There you need to click the link labelled Turn Windows Features on or off and then uncheck (disable) Microsoft Hyper-V (a restart of the computer is needed for this to take effect).
Now download the latest Intel Hardware Accelerated Execution Manager (HAXM) and install it (available here). The Tizen SDK does contains a HAXM installation too, but sometimes the installation fails when run from the SDK, so it is good idea to install the latest version of HAXM directly from intel in advance.
You will also need the Java SE 64bit SDK installed, which can be found here. Note that you need the JDK and not the JRE installed (if you have installed the Android SDK, you should already have this).
Installing the Tizen SDK
To start with you need to download the Windows 7 64bits Installer and image files from here. This means clicking the Direct and the CDN links, as you will need both of them to install the SDK.
With that done, run the 64bit installer as normal. You will get an error message at some point in the installation, normally referring to the Java 6.0 JDK, and at this point you can cancel the install as we have what we need. You will now need to open Explorer and go to the local app data temp folder and find the "tizensdk" folder (%LOCALAPPDATA%/Temp/tizensdk(somenumber)". Inside this folder you will find a number of files for the SDK:
You must now open a command prompt with administrator privileges (you can easily open one by pressing the "Windows" key + X and selecting Command Prompt (Admin)), then navigate to the location of the extracted installer files (copy them from the temp folder to an easier location to find, like the the C drive root, as you can remove them again later when finished). Once there you should run the install manager with the following: javaw -jar InstallManager.jar, as shown in the image:
This will prompt you for location to install the Tizen SDK to and then install all the necessary components. You may be prompted to install HAXM at some point too, but this should be skipped since you already have the latest version installed (if you have followed the steps outlined so far).
Once the installation has finished, you need to navigate to the install location that you will have specified in the previous steps and check to see that the following folders (and the files that they contain) are installed:
Sometimes these folders are not available, or if they are, they are empty. If this is the case you will now need to download the Tizen 32bit SDK and install that to a separate, temporary, location on your computer. Browse to the temporary location and copy the above mentioned folders, then paste them into the appropriate 64bit SDK location. You can now delete the 32bit files from the temporary install location that you used and continue.
Now that is all done, the Tizen SDK and the Emulator should work as expected and you can continue to configure GameMaker:Studio for testing your Tizen games (see Getting Started With Tizen).
Before going any further, please note that Intel HAXM can only be used on systems with an Intel processor with Intel VT support. If you are unsure whether your processor is Intel, you can use a system tool like CPU-Z to find out, or if you have an Intel processor but are unsure as to whether it supports VT-x technologies, you can go to the Intel Ark and check. It is worth noting that the Tizen SDK and emulators will work without HAXM, but that they will be very slow with greatly increased startup times.
WARNING! On Windows 8, HAXM requires that you have Windows 8 PRO and that you disable Windows Hyper-V before it can be installed, which means that if you have the Windows Phone module, the emulator will no longer work for that target (you can switch it back on at any time, however).
the following three things should be checked if the installation of HAXM fails:
- Make sure VT is enabled in BIOS.
- Make sure Execute Disable Bit is enabled in BIOS.
- Make sure Data Execution Prevention is enabled in Windows.
If the installation of HAXM fails with a VT-related message, check the CPU feature and BIOS settings as it may be that your machine does not support VT-x technology or that it has been switched off in the BIOS. To remedy this you will have to reboot your machine to access the BIOS setup utility by pressing a key during the computer’s boot sequence (depending on which BIOS is used, it can be F2, Delete, or Esc). Within the BIOS setup utility, Intel VT may be identified by the terms "VT", "Virtualization Technology", or "VT-d." Make sure to enable all of the Virtualization features.
If the installation fails with an NX-related message, enable the NX (or PAE and DEP) related item in the BIOS, in a similar manner to that explained above. In addition, make sure that the operating system supports the NX feature (for more information, see MSDN).
To enable DEP on Windows, goto Control Panel > System > Advanced system settings > Advanced tab > Performance section, then click the Options button and select Data Execution Prevention. Make sure that DEP is enabled here.
NOTE: If, after testing the emulator, you still cannot get it to work, then you may also need the Android SDK to be installed (version 17 or higher), as the standalone version of HAXM requires an Android x86 system image provided by Intel. This image should be supplied by the Tizen SDK, but if not these images can be downloaded through the Android SDK manager (you can see how to setup the Android SDK here). Below is an image of where to find the HAXM system images within the SDK manager:
Once you have installed HAXM you can verify that it is running correctly by opening a Command Prompt window and executing the following command sc query intelhaxm. If Intel HAXM is working correctly, the command will show a status message indicating that the state is 4 RUNNING, as shown below:
Graphics Cards Problems
Although the Tizen emulator will work on a large variety of machines, it should be noted that if the host machine is using the Nvidia Optimus technology, the Tizen Emulator will use the on-board graphics chipset, and not work with the Nvidia external graphics card. To resolve this you can do either of the following:
- Disable the Nvidia Optimus™ technology.
- Set the Tizen Emulator to run with the Nvidia external graphics card.
It is also worth noting that Intel Motherboard integrated video cards (Q33/Q35/Q43/Q45) are not supported, and nor are first generation Intel HD Graphics cards.
GameMaker:Studio Can't Create A VM
In some cases, particularly if you have installed the SDK in a location other than C:\tizen-sdk, GameMaker:Studio may not be able to create a virtual machine for the Tizen Emulator. In these cases, you should close GameMaker:Studio and run the Emulator Manager that came with the Tizen SDK.
You can now click the "+" icon to add a new Virtual Machine, giving it the name "GMTizenVM", and setting the Resolution to 480x800. Make sure CPU and GPU support is flagged as "On" (if your machine permits these options) and then save the VM. You can close the manager now and open GameMaker:Studio again. Your games should now run on the emulator correctly when using the Tizen module.
Desktop Shortcut Doesn't Work
If the IDE shortcut generated by the installer does not work, you need to manually create your own. to do this, navigate through the Tizen SDK install location and find ..\tizen-sdk\ide\launcher.exe for the Tizen SDK manager, and ..\tizen-sdk\tools\emulator\bin\emulator-manager.exe being the Emulator Manager. You can right click these and send a shortcut to the desktop.
Native Apps Install But Fail To Launch
This is normally caused by having either a space or a symbol that is not either a number or a letter in the Display Name of the Global Game Settings. This is an issue with the Tizen SDK and not GameMaker, and simply changing the display name to remove and spaces or illegal characters should permit the app to be built and run correctly.
JS Apps Fail To Install Or Run
This error can often be caused by having a space in the Signing Profile and will show an error something like this:
D:\tizen-sdk"\tools\ide\bin\web-signing -n -l info --profile Game:Name
D:\Users\User\AppData\Local\Temp\gm_ttt_14588\gm_ttt_51090\<GAMEFILENAME>\Games (The system cannot find the file specified)
[ERROR] AbstractLauncher.java(479) - Command stop because of exception
java.io.FileNotFoundException: D:\Users\User\AppData\Local\Temp\gm_ttt_14588\gm_ttt_51090\<GAMEFILENAME>\Games (The system cannot find the file specified)
If this happens to you then you will need to go back to the Tizen SDK and remove the current signing profile, then re-create it, but this time omitting any spaces or non-standard characters from the profile name. A future fix to GameMaker:Studio may work around this.
JS Apps Fail To Compile
To resolve this you will need to have created the Profile.XML (as outlined here), as this is the file that is most likely to be the problem. You will need to open it in a text editor and change all references to the C:\tizen-sdk to point to the correct location for the SDK on your system, then save.
Running your game for the JS target should now work as expected.
Unknown Error  failed
A very common error that is given for the Native Tizen module is as follows:
__return_cb req_id pkg_type[tpk] pkgid[2E9A3FD22D] key[end] val[fail]
processing result : Unknown Error  failed
If this happens when testing on an actual device, it is usually caused by out of date firmware, and so you should update the firmware to be 2.2.0 or above.
However if you are using the emulator, it is normally caused by a "corrupt" VM (a good way to check this is to test the other apps that are available from the Tizen emulator OS. If they do nothing then the VM is corrupted). The best thing to do here is open the Tizen Emulator Manager here and remove the GMTizenVM, and then re-create it again in the manager, with the exact same name and details. Run the VM from the manager and then test your game. It should now work correctly, and you can close the Manager and the VM and use GMS to start the emulator as normal.
Note: This error is pretty general and may have other causes, but the above is the most common solution.
CERTIFICATE_CHAIN_VERIFICATION_FAILED  failed
If your app fails to start with the error given above, please ensure that the Tizen device has the correct date and time set.
Inoperative Icon On The Start Screen
If you have previously tested your game on the Tizen device or emulator, and then return to the Global Game Settings at a later time and change the Display Name, this can sometimes render the game Icon on the Tizen splash screen inoperative. Currently there is not much you can do to fix this other than unistall the game and start again, but a future update to GameMaker:Studio should address this issue.
Having the emulator start and then "disappear" (close) after a few seconds may happen frequently for you, especially if your project is fairly large. It appears that this is a memory issue with the Tizen Emulator itself, therefor the only thing you can do is close all the unnecessary apps and windows on your test machine and try again. Note that the game will probably run fine on a device.