Skip to content

GameMaker Quick Start

This page provides two minimal validation paths:

  • Run the official sample: validate with the sample project included in the release package
  • Integrate into your own project: integrate the runtime with the minimum call sequence

The current first release covers:

  • game authorization
  • real-name verification and anti-addiction state
  • achievement unlock
  • achievement progress reporting

It does not cover rooms, realtime messaging, or RPC.

  • igp-gamemaker-sdk-0.0.6.zip has already been downloaded and extracted
  • The IGP desktop client is installed and runnable on the local machine
  • If you want to validate the successful path for your own game, you already have the appId assigned by IGP
  • The GameMaker runtime is initialized with igp_init(...)
  • If real-name verification and anti-addiction is being validated, launch blocking or in-game real-name verification has been selected in the backend. GameMaker currently focuses on reading and refreshing state
  1. Open samples/gamemaker/windows-auth-achievements/project/IGP.WindowsAuthAchievements.yyp in GameMaker
  2. Press F5 to run it
  3. First check whether these on-screen fields start updating:
    • Initialized
    • Connection
    • Authorization
    • Latest result
    • Latest error
    • Latest event
  4. Press F1 once to unlock an achievement
  5. Press F2 once to report 50% progress

2. Minimum call order for your own project

Section titled “2. Minimum call order for your own project”
global.igp_app_id = YOUR_APP_ID;
global.igp_sdk_enabled = true;
if (global.igp_sdk_enabled && !igp_init(global.igp_app_id, {
desktop_auto_attach: true
}))
{
show_debug_message("IGP init failed");
}
if (!global.igp_sdk_enabled)
{
exit;
}
igp_update();
var evt = igp_poll_event();
while (!is_undefined(evt))
{
show_debug_message("IGP event: " + string(evt.type));
evt = igp_poll_event();
}
if (keyboard_check_pressed(vk_f1))
{
igp_unlock_achievement("YOUR_ACHIEVEMENT_KEY", "", 0, global.igp_app_id);
}
if (keyboard_check_pressed(vk_f2))
{
igp_report_achievement_progress(
"YOUR_PROGRESS_ACHIEVEMENT_KEY",
50,
"",
"",
0,
global.igp_app_id);
}
igp_shutdown();

Assuming the desktop client is available, appId is correct, and the achievements are configured, confirm at least these outcomes:

  1. igp_init(...) returns true
  2. Connection does not stay at disconnected
  3. Authorization moves from pending into a concrete result
    • authorized_online
    • authorized_offline
    • failed
  4. After triggering F1 or F2, Latest result or Latest event changes

After Quick Start is complete, continue based on the target feature: