GithubHelp home page GithubHelp logo

sovr610 / agkrepo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from thegamecreators/agkrepo

0.0 0.0 0.0 244.28 MB

New Home of AGK Source Code for 2024 and Beyond

Shell 0.06% JavaScript 0.45% C++ 46.88% Python 0.19% Perl 0.01% C 28.35% Objective-C 1.51% Java 0.88% Assembly 0.79% TypeScript 0.02% CSS 0.01% Objective-C++ 0.52% Swift 0.01% Makefile 0.19% HTML 19.93% PostScript 0.04% CMake 0.01% GLSL 0.01% Batchfile 0.01% Yacc 0.15%

agkrepo's Introduction

AGK Repository

New Home of AGK Source Code for 2024 and Beyond. THIS GITHUB REPO IS CURRENTLY IN CONSTRUCTION AND TESTING. FEEL FREE TO CHECK OUT THE CODE. WE WILL ANNOUNCE WHEN IT IS READY FOR CONTRIBUTIONS.

WINDOWS PC INSTRUCTIONS

The following instructions requires Windows 10 or above:

Pre-requisites to compile AGK Studio

Ensure the following are installed with particular attention to the versions:

Notes on project settings

New APKs submitted to the Google Store require API 33 (Android 13) since August 2023 : https://developer.android.com/google/play/requirements/target-sdk Small changes to any pre-API 33 projects include:

  • Add namespace 'com.thegamecreators.agk_player2' in "AGKPlayer2\build.gradle"
  • Add mavenCentral() in "build.gradle"
  • Remove jcenter() in "build.gradle"
  • Update version classpath 'com.android.tools.build:gradle:8.0.0' // was 7.2.1
  • Update version compileSdkVersion 33 in "AGKPlayer2\build.gradle"
  • Update version buildToolsVersion "33.0.3" in "AGKPlayer2\build.gradle"
  • Ensure that any Android Studio project points to JDK 17 (via "Settings>Build,Exe&Dep>Build Tools>Gradle>GradleJDK")

Sequence to build AGK Studio

You need to open in Android Studio and build these projects once before attempting to compile AGK:

  • \AGK\apps\interpreter_android_google
  • \AGK\apps\interpreter_android_amazon
  • \AGK\apps\interpreter_android_ouya

Setup all environment variables

  • Add Environment Variable called NDK_PATH with absolute path to "D:\DEV\AGKREPO\AGK_Build\External\android-ndk-r20b"
  • Add Environment Variable called USERNAMEFORAGK with the folder truncation of your Username (so would be 'fred' as might appear in "C:\Users\fred\Documents"). Do not use your full username or include any path text, just the folder name that appears in the example given.
  • Add Environment Variable called VULKAN_SDK_PATH with absolute path to "D:\DEV\AGKREPO\AGK_Build\External"
  • Add Environment Variable called AGK_STUDIO_PATH with absolute path to "D:\DEV\AGKREPO\AGK"
  • Add Environment Variable called STEAMWORKS_PATH with absolute path to "D:\DEV\AGKREPO\AGK_Build\External\Steamworks"
  • Add Environment Variable called ANDROID_HOME with absolute path to "C:\Users\YOURS\AppData\Local\Android\Sdk" where YOURS is the folder assigned you from your username

Prerequisite Zip Files (SDK files not part of repository, download separately from Release area)

  • Unzip "AGK_Build-External.zip" into the "D:\DEV\AGKREPO\AGK_Build\External" folder
  • Unzip "AGK_Build-Build.zip" into the "D:\DEV\AGKREPO\AGK_Build\Build" folder
  • Unzip "AGK_Build-Shared.zip" into the "D:\DEV\AGKREPO\AGK_Build\Shared" folder

Your Own Keystore file

  • Part of the build process is being able to produce APKs that require a Keystore file that you must provide yourself in "AGK_Build\Signing\keystore.keystore"
  • You will be able to enter the password of your own keystore file during the build process

Compile AGK in Visual Studio 2022

  • Open the AGKBuild project found here "\AGK\tools\AGKBuildSystem\Windows"
  • Stick with Debug x64 and select REBUILD on the project shown
  • When compile completes, you can run this to open a command line menu to handle the build processes
  • The system allows individual steps to be executed, or for simplicity, you can run the whole process in Sequence
  • When all steps have been completed successfully and in order, the "AGK_Build\Builds" folder will contain updated files for AGK

MAC INSTRUCTIONS

The following instructions requires a modern Mac or Mac-Mini:

Pre-requisites to compile the Apple binaries

Ensure the following are installed:

  • XCODE 14.2 or above
  • Install GitHub Desktop for Mac-Mini
  • Select YES to any prompt asking to initialize Git Large File Storage

Sequence to build Apple binaries

  • Use GitHub Desktop to clone AGKREPO into a local folder (could be "Users/YourName/DEV/AGKREPO")
  • Create a folder at "Users/YourName/AGKStudioBuild" and "Users/YourName/AGKStudioBuild/AppGameKitStudio"
  • Copy the SIGN.SH script file into "Users/YourName/AGKStudioBuild" and configure to your own paths (for step 15 in build tool)
  • Open Finder and navigate to the tools folder (e.g. /Users/YourName/DEV/AGKREPO/AGK/tools/AGKBuildSystem/Mac)
  • Open Paths.h and confirm the paths specified here match existing folders in the repo folder structure
  • Open the Terminal via the Utilities on your Mac and navigate to the folder (e.g. cd /Users/YourName/DEV/AGKREPO/AGK/tools/AGKBuildSystem/Mac)
  • Now type MAKE to compile and create the AGK Build Program
  • Can ignore terminal warnings, there should be no errors reported
  • You can now call "./AGKBuild" to run the build program
  • Follow the steps in a similar way to the Windows steps sequence until all 15 steps completed (i.e. type 1 and press RETURN)
  • Any errors you get along the way should be output in the terminal for you to report to TGC (if any)
  • Issues are likely to arise from missing folders. When the error reports this, create the empty folder with the exact path and name required
  • You will need an Apple Developer Account to create your certificates and provisions to replace those used by TGC (Apple website has instructions)
  • The AGK IDE for the Mac uses an older AGK Lib file that has been provided and hard copied to the repo for predictable compiling

LINUX INSTRUCTIONS

The Linux source code is not supported in the AGKREPO at this time. * Linux version of AGK Studio downloaded from Steam, Tier 2 Android contains a bat file to start compiling C++ code, instead of an sh script.

How to Implement Tracking Transparency

App tracking transparency was implemented a few years ago using the external command functionality. Here's how to use it:

supportsIDFA = ExternalSDKSupported ( "idfatracking" ) if ( supportsIDFA ) ExternalCommand ( "idfatracking", "requestconsent", "", "" )

while ( ExternalCommandInt ( "idfatracking", "trackingallowed", "", "" ) < 0 )
    sync ( )
endwhile

endif

agkrepo's People

Contributors

leebambertgc avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.