Getting Started
The full list of available methods for working with the SDK is located here.
SpellSync is a service that allows you to add to HTML5 games achievements and leaderboards, advertising, authorization, purchases and much more. Synchronizes the process between devices, has a ready-made interface and API.
π― Supported platforms:
Platforms without support
To use the features of the SDK, you need to add the game to the SpellSync control panel. To get started, you can check out our tutorials or with other sections of the documentation.
ποΈ Adding a Game
To use the SDK features:
ποΈ Project Settings
In the control panel, in the Project Settings section, you can configure general aspects of the game, such as supported devices or add analytics systems.
ποΈ Common Features
Language
ποΈ Allowed Sites
In the Allowed origins section of the control panel, you can specify domains that are allowed to use the SpellSync service. This allows you to filter harmful traffic and temporarily disable sites. You can mark the site as a test site so that you don't mix active and test players, don't affect statistics, and develop the game without clearing test accounts.
SpellSync Conceptβ
Free from the routine of publishing and supporting a game project.
Read this section to understand how SpellSync works. Understanding our working principles will allow you to simplify many processes at different stages of game production.
SpellSync is a powerful tool for quick integration with gaming platforms, increasing player retention and engagement. SpellSync contains twice as many capabilities of all platforms.
We create a product that should cover all aspects in management, development, support, and distribution of the game and automate and simplify them to the maximum, allowing you to save up to 90% of your resources.
We are developing the service in the following directions:
Unified SDK for Gaming Platformsβ
We adhere to the concept of "One build - all platforms." You always work with an abstract SDK.
At any moment, you can find out whether purchases, advertising, or authorization are available on the platform. It doesnβt matter to you what the platform is for comfortable work.
Why is this beneficial?
A unified SDK will allow you not to integrate each platform manually into all games and make separate builds for each platform.
10 builds for 10 web platforms? Looks costly, routine, and seems like it will lead to burnout of your developers. On Unity, it's almost a full working day just to compile builds. A single build for all platforms is much better.
We support more than 10 gaming platforms. Each platform takes about 1 month of development, but you can use it right away. We constantly add new platforms. Now, to support the same functionality, about a year of work by frontend, backend, QA, and PM specialists is required.
We do not charge fees when working with the SDK, except for methods of working with our game backend. The functionality of the platforms is the merit of the platforms; we will not charge for it.
We provide ready-made interfaces for rendering leaderboards, achievements, chats, and methods that are not supported by the platform but are allowed to be used through independent implementation, such as the "Share Game" function. You just need to call the method to open the window.
How does it work?
- At startup, we determine the platform and load the SDK only for the selected gaming platform, so as not to load code from other platforms. This solution allows access to all platform SDKs only when needed and additionally saves the size of the game's code. This differs from connecting each plugin of each platform simultaneously.
- Advertising, payments, and authorization work directly through the platformβs SDK. Our server is used to process and store payments to not lose purchase data and protect against cheats. Each platform provides a mechanism for matching signatures to prevent invalid purchases.
- For functions like "Invite Friends," "Share," "Leave a Review," and other platform features, the solution provided by the platform is predominantly used. If the platform does not support a certain method but permits its use, we will provide our own solution or design an overlay for you so that it does not differ in functionality for you.
Game Backendβ
We offer a serverless solution for your games. Store players in the cloud, organize chats, leaderboards, in-game payments without using your own servers.
Don't worry about data storage, scaling server resources or hiring DevOps specialists to support infrastructure. We handle everything for you. Save on servers and specialists, only pay for the resources that you use.
Why is this beneficial?
We maintain several servers for different tasks in various data centers to ensure stable operation. Take a look at the starter kit for DIY implementation, you'll need at least:
- 3 database servers.
- 2 servers for routing incoming requests.
- 2 servers processing game logic.
- 2 real-time messaging servers (optional).
- 2 servers for operational data storage (optional).
- 2 storage for static files and backups.
- It's highly desirable to keep all of these in different data centers and in at least two copies, as we do, to ensure high availability.
- 1 DevOps engineer to manage servers.
For small and medium studios, this is much more expensive than using our game servers. You can save on server duplicates but in case of a server or data center outage, you can only wait for the servers to be restored and hope that the data remained safe.
Also, there's no need for you to implement cloud saves, progress synchronization, leaderboards, chats, and other game backend modules, as well as a data management panel. We have been developing them for over 2 years with a team of specialists and use complex algorithms and architectural approaches to provide an instant response from the server (less than 5 milliseconds), even during periods of high load.
How does it work?
- We provide you direct access from the game client to our game servers via APIs and SDK methods. You don't need your own intermediate server.
- We provide webhook links for processing payments and authorizing players, which can be specified in the control panel on the platform.
- For chats, we use an online service to which the player connects and receives messages in real-time.
- We authorize players based on data provided by the gaming platform, verify signatures, and link the player to these authorization details on the platform. We do not use Cookies.
Game and Files Hostingβ
Some platforms require a link to the game instead of uploading an archive.
We host your gaming projects in the most reliable S3-type storages (99.999999999% reliability). We simultaneously replicate the data in 2 such storages in different data centers to increase availability.
We use a CDN with more than 200 servers worldwide to ensure your games are served from the server closest to the player, and in case of storage failure, we can still distribute game copies for about 12 hours, so that in the worst-case scenario of repairs, games continue to work.
Additionally, we compress data on-the-fly in gzip or brotli format, reducing the size of downloaded files by up to 10 times.
Why is this beneficial?
You pay for the number of games, not the amount of space for them. When working with files, you pay for the occupied space. And when dealing with images - for the number of thousands of images.
Unlike web hosting, files are stored in reliable storages in different data centers, and the chance of file loss is minimal. Additionally, everything is covered by CDN for fast file delivery from the server nearest to the player. Also, all data is compressed in gzip and brotli, which increases download speed and reduces file size by up to 10 times.
Unlike using pure S3 storage, you do not pay for GET, PUT requests, only for volume. Web games generate a large number of GET requests due to a modular approach when working with files and images.
You don't need to purchase a domain and SSL certificate for hosting.
How does it work?
Game Hosting
- You upload an archive with the game, then it is unpacked and placed on hosting as a draft and becomes available by link.
- You can publish the draft, then the draft is unpacked and placed on hosting in the production version.
- You can store both the draft and the published version at the same time.
- You can unpublish the game at any moment, as well as delete the draft.
- The size of the uploaded game build does not exceed 200 MB. The size of the unpacked version does not matter.
- Game files are automatically distributed with CDN and compressed in gzip and brotli.
File Hosting
- You can upload files of any format if they do not violate our hosting rules.
- You can allow players to upload files. Then they are placed separately for each player. Be careful and moderate UGC content.
- The size of the uploaded file does not exceed 32 MB.
- Files are automatically distributed with CDN and compressed in gzip and brotli.
Image Hosting
- You can upload images in PNG, JPEG, GIF, WEBP formats if they do not violate our hosting rules.
- The image is automatically converted to WEBP. This allows to reduce the file size by up to 20 times while maintaining decent quality and transparency.
- You can allow players to upload images, for example, to share a screenshot from the game. Then they are placed separately for each player. Be careful and moderate UGC content.
- The size of the uploaded file does not matter.
- Files are automatically distributed with CDN and compressed in gzip and brotli.
- You can resize images on-the-fly. For example, change from 1024x1024 to a thumbnail of 64x64 to save on the size of uploaded images.
Game Analyticsβ
We prefer an automatic approach to analytics collection. You do not need to manually place events to track data, just as we don't. We aggregate data from the game backend, for example, the number of player profiles created today.
We care about protecting your players' privacy and do not collect any personal data of players. We store and provide aggregated and anonymized statistics for your games.
Why is this beneficial?
You don't need to implement anything to get analytics for games. All data is formed based on the usage of the game backend.
Rules regarding the collection and processing of game analytics data
We value the right to anonymity on the internet and do not collect any personal data from players and do not use Cookies. All data is stored in an aggregated form for all players, without being linked to any individual player. Data used to calculate player retention undergoes anonymization without the possibility of de-anonymizing the data.
We respect the rules of gaming platforms and disable counters that may collect personal data (Google Analytics, Yandex.Metrica) if the platform prohibits it.
Games Distributionβ
You can entrust us with the distribution of your game.
We conduct preliminary testing of the game, offer advice and resources, handle paperwork, reports, and fill out data on all platforms.
We assist with porting mobile projects to Web on Unity and Construct 3.
You receive a single payout from all platforms from a legal entity convenient for you. We work with legal entities, sole proprietors, individuals, and self-employed persons.
Why is this beneficial?
- We take care of the bureaucracy.
- Free preliminary testing and testing of the game on all platforms and popular devices.
- Tips for increasing retention and engagement in your games.
- Help with resources (images, icons, access to AI).
- Single fund withdrawal.
- Low commission (20%).
- Requests are not charged on platforms distributing the game through us. Hosting for the game and analytics are provided for free.
- Working with legal entities, sole proprietors, individuals, and self-employed persons.
- Access to platforms requiring a legal entity.
How does it work?
- You leave an application through the Telegram bot @SpellSyncDistributionBot.
- There, you need to register and fill out an application for the game.
- We study the game for compliance with the law and platform rules, examine the potential of the game, and make a decision on cooperation.
- You accept the contract for distribution, and we proceed to preliminary testing.
- Before publishing on platforms, we sign an act on the transfer of non-exclusive rights to place the game on the platforms you choose.
- We publish games on platforms.
- If there are issues with the game on any platform, we inform you to make changes and continue publication.
- At the beginning of the month following the settlement month, we send reports on the game's revenue.
- We make a payment after receiving funds for the settlement month from all platforms. Importantly, payment terms can vary depending on how quickly platforms transfer funds. With some platforms, the timing of initial payments can be delayed up to 90 days.
Stay in Touchβ
Other documents of this chapter available Here. To get started, welcome to the Tutorials chapter.
SpellSync Community Telegram
: @spellsync.
For your suggestions e-mail
: [email protected]
We Wish you Success!