Welcome to the GPark Editor API!
Welcome to the GPark Editor API Documentation! GPark Editor is a powerful tool designed to help developers create, edit, and manage game assets, scenes, and logic. It offers a comprehensive set of APIs, enabling developers to programmatically access and manipulate various components and features of the editor. This documentation provides a detailed overview of the APIs, including descriptions of modules, classes, and methods, as well as usage examples and best practices.
Whether you’re looking to create custom tools, automate tasks, build plugins, or extend the functionality of the editor, this documentation will provide the information and guidance you need.
The APIs in this documentation are organized by module, which can be selected from the sidebar on the left or searched for by keyword. Think of modules as a toolbox, each containing different tools designed to help developers create and edit games. Each module has its specific functions, much like the hammers, screwdrivers, and pliers in a toolbox, each serving a different purpose. Some pages include sample code to help you understand the concepts, which you can use for any purpose.
Animation
The Animation module is like a movie-making tool for creating and editing animations within your game. It allows developers to give life to characters, objects, or effects by assigning dynamic movements and actions.
Artists have provided a vast array of animation resources (and, of course, you can upload your own resources for others to use). Animation resources are the materials or files used to create animated effects in a game. They contain the animation data and related information for characters, objects, or effects, bringing them to life with dynamic motion in the game. These resources can be combined with the Animation module to define character actions like walking, jumping, attacking, and more. Let your imagination run wild and start creating!
Character
The Character module is like a "character sheet" in a role-playing game, helping developers create and manage various characters in their game. It provides a straightforward way to define and configure characters in the game, much like filling out information on a character sheet.
Imagine you’re playing a role-playing game where you need to create your own character. The Character module is where you define this character. It allows you to set the character's name, appearance, skills, attributes, and special abilities. You can choose the character's class or race, decide their skill proficiencies, and select the items they equip. The Character module also lets you add custom traits and descriptions, making your characters unique and interesting.
In the game editor, the Character module allows you to create and manage all the characters in your game, whether protagonists, enemies, or non-player characters (NPCs). You can set each character's attributes, behaviors, and interactions. For example, you can define an enemy character’s attack power, defense, health, and attack patterns and behavior. You can also set up NPC dialogues and quests, enabling them to interact with players in the game.
Gameplay
The Gameplay module is a tool that allows game developers to design and define the rules, objectives, and interactions between players and the game world. In this module, you can set up various game elements, such as four-wheeled vehicles, weapons, launchers, and swimming pools.
Imagine you’re designing a racing game—the Gameplay module is where you establish the rules and mechanics of the race. You can define how the vehicles move, their speed, handling, and the conditions for winning and the rewards. You can also set up different tracks and obstacles, giving players plenty of challenges and fun. In this module, you can add four-wheeled vehicles as the player’s mode of transportation and set their attributes and driving mechanics.
Beyond vehicles, you can introduce various weapons to add combat elements to your game. For example, you can design different weapons like rocket launchers and machine guns, allowing players to engage in combat and attack enemies. Players can use these weapons to destroy targets, defend themselves, or attack other players.
The Gameplay module also includes special elements like swimming pools. You can set the rules and characteristics of these pools, enabling players to swim and engage in water activities within the game. Pools can serve as an additional gameplay feature, providing players with recreational activities beyond the main objectives.
Overall, the Gameplay module in the game editor is a tool for designing and defining the game’s rules, objectives, and mechanics. It allows developers to set up various game elements, creating engaging and challenging gameplay experiences that offer players diverse interactions and enjoyment.
Scene Effects
The Scene Effects module is a tool for controlling elements such as sound, effects, and lighting within a game scene. It allows developers to add context-appropriate sound effects, special effects, and lighting to enhance the atmosphere and audiovisual experience of the game. By adjusting these effects, developers can create different scene environments, making the game world more vivid and immersive for players.
Services
The editor provides developers with a range of native services.
These service modules offer solutions for standard functions, enabling developers to implement these features more efficiently. By integrating these service modules, developers can save time and effort, quickly building game systems that include features such as in-app purchases, account management, chat, and avatar management. Additionally, these service modules provide standard interfaces and tools, allowing developers to customize and extend them according to their needs.
Settings
The Settings module is a tool for configuring and managing game parameters and options. It provides an interface or API that allows developers to easily set and adjust various game attributes and behaviors to meet specific needs and preferences.
Data Handling
The Data Handling module is a tool for managing and processing data within the game. It is responsible for storing, loading, modifying, and managing various data types needed for the game, such as character attributes, map information, and game states.
Think of the Data Handling module as the "brain" of the game—it processes and manages all the game’s data, ensuring it runs correctly and responds to player actions. It provides a way to organize and access game data, allowing developers to easily use and manipulate it within the game.
Input
The Input module is a tool for handling player input. It is responsible for receiving various inputs from players, such as keyboard presses, mouse clicks, and gamepad actions, and converting them into a form that the game can understand and process.
Utils
The Tools module is an integrated toolkit designed to help game developers create, edit, and manage game content. This module offers a variety of functions and tools, enabling developers to carry out various tasks efficiently throughout the game development process.
UI
The UI module is a comprehensive tool designed for creating and managing the user interface within a game. It empowers developers to design and arrange a variety of in-game elements, including menus, buttons, text, and images, while also handling the interactions between players and these interface components.
Think of the UI module as the game's front desk—it’s what players first encounter when they start the game, offering them various interface options and controls. For example, the main menu is typically the first screen players see, featuring buttons like "Start Game," "Load Save," and "Settings." Players interact with these buttons to navigate through the game's options.
With the UI module, developers have the flexibility to customize the appearance and layout of interface elements to suit the game's aesthetic and user experience goals. They can adjust the style, color, and size of buttons, set fonts and text positions, and incorporate images to enhance visual appeal. This level of customization ensures that the game’s interface is not only visually engaging but also intuitive, making it easier for players to understand and interact with the game.
Beyond static elements, the UI module also facilitates dynamic interactions. When a player clicks a button, the UI module captures this action and triggers the corresponding in-game response, such as starting a game, moving to the next level, or opening the settings menu. This interactivity is crucial for creating an immersive and responsive gaming experience, allowing players to make decisions and perform actions seamlessly through the interface.
Extensions
The Extensions module offers a predefined, reusable architecture or framework, providing developers with the foundational structure and functionality needed to build their game. This module helps streamline the development process by offering standardized components that can be easily customized and expanded to meet the specific needs of the game.