Check out our latest project ✨ OpenChapter.io: free ebooks the way its meant to be 📖

EOSG-android-exporter

An asset by Uno1982
The page banner background of a mountain and forest
EOSG-android-exporter hero image

Quick Information

0 ratings
EOSG-android-exporter icon image
Uno1982
EOSG-android-exporter

Standalone plugin that automatically configures your Android build template for Epic Online Services. (EOSG)https://godotengine.org/asset-library/asset/2453

Supported Engine Version
4.2
Version String
1.0
License Version
GPLv3
Support Level
community
Modified Date
1 month ago
Git URL
Issue URL

EOSG Android Export Helper

Standalone plugin that automatically configures your Android build template for Epic Online Services.

What's Included

  • plugin.gd - Main plugin registration
  • export_plugin.gd - Export automation logic
  • env.gd - Environment variable loader (autoload singleton)
  • eos_credentials.gd - Credentials wrapper class (autoload singleton)
  • login.gd - Simple example login script using EOSCredentials
  • .env.example - Template for your credentials file

Requirements

  • Epic Online Services Godot plugin installed at res://addons/epic-online-services-godot/
  • Android build template installed (Project -> Install Android Build Template)

Quick Start Guide

1. Install the Plugin

Copy this plugin to res://addons/eos-android-export/ and enable it in:

Project -> Project Settings -> Plugins -> Enable "EOS Android Export Helper"

2. Configure Credentials

Copy .env.example to your project root as .env and fill in your EOS credentials:

# res://.env
PRODUCT_NAME=MyGameName
PRODUCT_VERSION=1.0.0
PRODUCT_ID=your_product_id
SANDBOX_ID=your_sandbox_id
DEPLOYMENT_ID=your_deployment_id
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret

Get your credentials from Epic Games Developer Portal

3. Setup Login

Add a Control node to your main scene and attach the script directly from the plugin:

res://addons/eos-android-export/login.gd

This will:

  • Initialize EOS with your credentials from .env
  • Login using DevAuth Tool (for development)
  • Switch to anonymous login by uncommenting _anonymous_login() in the script

4. Export for Android

Enable the Android build template:

Project -> Install Android Build Template

Then export normally:

Project -> Export -> Android

The plugin will automatically:

  • ✅ Configure all Android build files for EOS (build.gradle, config.gradle, GodotApp.java)
  • ✅ Include your .env file in the APK
  • ✅ Inject the EOS login protocol scheme using your CLIENT_ID

No manual configuration needed!

Client ID Priority

The plugin gets the Client ID from your .env file (CLIENT_ID=...). The EOSCredentials class automatically loads this value when accessed.

Advanced Usage

Using EOSCredentials in Your Code

The plugin adds EOSCredentials as an autoload, so you can access credentials anywhere:

# Get individual credentials
var client_id = EOSCredentials.CLIENT_ID
var product_id = EOSCredentials.PRODUCT_ID

# Validate all credentials are set
if EOSCredentials.validate():
    print("All credentials configured!")

# Debug print (with secrets masked)
EOSCredentials.debug_print()

Using Env Helper

The Env autoload lets you read any variable from .env:

# Get custom variables from .env
var my_custom_value = Env.get_var("MY_CUSTOM_VAR", "default")

# Check if variable exists
if Env.has_var("DEBUG_MODE"):
    print("Debug mode enabled")

Login Methods

The included login.gd shows two login methods:

DevAuth (Development)

Anonymous (Production)

  • No credentials required from user
  • Creates a device-specific ID
  • Uncomment _anonymous_login() in login.gd to use

Customizing Login

You can modify login.gd directly in the plugin, copy it to your project for more control, or create your own:

extends Control

func _ready():
    # All credentials automatically loaded from .env
    var init_opts = EOS.Platform.InitializeOptions.new()
    init_opts.product_name = EOSCredentials.PRODUCT_NAME
    init_opts.product_version = EOSCredentials.PRODUCT_VERSION

    # ... rest of your login code

Important Notes

Security: Add .env to your .gitignore to keep credentials private!

Android Export: The plugin only modifies build files during export. Your existing files are safe.

What It Does

  • Adds EOS SDK dependencies to build.gradle
  • Sets minimum SDK to 23 in config.gradle
  • Injects EOS initialization code into GodotApp.java
  • Configures OAuth login protocol scheme

Settings

  • eos_android/enable_auto_config - Enable/disable automatic configuration

Note

This plugin looks for the EOS plugin at res://addons/epic-online-services-godot/. If the EOS plugin is not found, the export will fail with an error message. Plugin can be found here https://github.com/3ddelano/epic-online-services-godot

Standalone plugin that automatically configures your Android build template for Epic Online Services. (EOSG)
https://godotengine.org/asset-library/asset/2453

Reviews

0 ratings

Your Rating

Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

0 ratings
EOSG-android-exporter icon image
Uno1982
EOSG-android-exporter

Standalone plugin that automatically configures your Android build template for Epic Online Services. (EOSG)https://godotengine.org/asset-library/asset/2453

Supported Engine Version
4.2
Version String
1.0
License Version
GPLv3
Support Level
community
Modified Date
1 month ago
Git URL
Issue URL

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers