Skip to main content

Your Ecosystem

tip

Build your own ecosystem.

Introduction

In terms of ecosystem planning, logic services can run independently. After startup, they can provide functional extension and enhancement for users and other logic services. We can componentize logic services into reusable modules, making functional modularization possible. This has several advantages:

  1. Avoid repeated development work.
  2. Reduce coupling between functional modules.
  3. Better align with single-responsibility design by splitting common capabilities into dedicated functional logic services such as guild service, friend service, login service, lottery service, announcement service, ranking service, and more.
  4. Since module capabilities are independent, any functional logic service can be scaled later without code changes.
  5. These componentized logic services are like a growing arsenal. Once accumulated, they become your ecosystem advantage in market competition.
  6. Lower code leakage risk. Traditional monolithic projects put all code in one place. If code leaks, the whole project leaks. With modularized services, each developer can work on their own logic service module, reducing leakage impact.
  7. Team administrators only need to deploy gateway + external services in internal infrastructure, while developers can code and test their own logic-service modules locally. Additional benefits:
    • Clients do not disconnect because another logic service changes or restarts.
    • Developers do not need to start other teammates' logic-service modules.
    • Developers can use framework-generated docs for module integration.

Game Composition

A complete game usually consists of multiple functional modules, and more may be added in the future. Here, functional modules refer to our logic servers.


The diagram lists several logic servers:

  • UserLogicServer: player logic server.
  • FriendLogicServer: friend logic server.
  • AnalysisLogicServer: analytics logic server.
  • ChatLogicServer: chat logic server.

An

Build Your Ecosystem

As introduced earlier, logic servers can run independently. Once started, they can provide functional extension and enhancement for players and other logic servers.

Suppose your ecosystem already has ChatLogicServer and FriendLogicServer. When you build a new game in the future, you no longer need to redevelop similar modules.

In addition, other relatively common functions can also be expanded into independent xxxLogicServer modules. For example: guild logic server, login logic server, lottery logic server, announcement logic server, ranking logic server, and so on. These relatively common business logic servers can be made into independent extensions. Once your ecosystem is rich enough, game-server development becomes much easier because most functions can be assembled.

Ecosystem Business Opportunities

Some developers may see business opportunities here: you can become a provider of ecosystem components. That means you can build many ecosystem component libraries and offer them to companies that need them.

For example, you can componentize some logic servers, such as lottery, analytics, statistics, ranking, store, ChatGPT, and knowledge-graph logic servers. Independent logic servers are like individual weapons. Once you accumulate enough, you form your own ecosystem arsenal, which can better help small and medium companies compete.

Even if you have never worked on games, you can still build your own ecosystem component library:

  • If you are good at analytics, you can build related component libraries.
  • If you want to provide intelligent NPC conversations, you can offer a ChatGPT-based component library.
  • If you are good at graph data models, you can provide related component libraries.

From this, we can see that even without game experience, you can still develop your own ecosystem component libraries. Build libraries that match your strengths, because fundamentally this is all data processing.

Summary

Now you know how to build your own ecosystem. Keep accumulating your ecosystem library so these functional modules can be reused in future games. Building an ecosystem can effectively reduce future development workload.