Indie Cup Germany’22

Pocket Raider Online

Peter Kiefer

Main Idea

mmorpg for android and ios with focus on dungeons, social and trade

Main Description

Main Features:
- play and trade with your friends online
- 6 Playable classes with different core roles (damage, healing, protection).
- over 10,000 unique items with different attributes
- full-featured very extensive combat system
- battles in real time
- classic rpg mechanics like aggro, spells, buffs, auras,...
- unique NPCs with extensive abilities / phases
- loot system with dice option to distribute loot
- chat / whisper / group chat
- friend system
- mailbox / mail interaction with other players
- quest system with rewards
- server wide auction house
- party, dungeon finder
- housing, learn professions and craft useful items
- very high cheat and manipulation protection, full server backed
- already translated into many different languages
- different SignIn Types: Guest, Google, PocketRaider-Account
- monetiziation system is fully integrated
- server side injection, data manipulation and bot detection


Server:
The server programs are written in .net core and run on one or more standard Linux or Windows servers.
The database management system Postgres is used as database.
The client/server connection is based on an fully SSL encrypted TCP/Socket connection.
Sensitive data is additionally encrypted.
All server requests of the app and their parameters are basically considered harmful and therefore completely filtered as well as checked for correctness to exclude manipulation.
This includes:
Attempted infiltration of malicious code/SQL-Inhections.
Attempted manipulation of other accounts.
Automated DDOS attacks or spamming of requests.
Exchange of request parameters to perform actions not available to the character.

The "server" is divided into several applications which can run on the same or different hardware.

AuthServer:
The AuthServer is used to manage the player account.
It checks the validity of the account, assigns so-called SessionKeys and finally establishes the connection to a game server.
Accounts can be created manually with username/password or via 'google auth'.
It is also possible to create guest accounts bound to the device.
This allows new player quick playing without logging in.
If a full account is created later (google/PocketRaider), the guest data is transferred.
Accounts are unique and cannot be logged in multiple times at the same time.
The AuthServer is unique and mandatory.

GameServer:
Game servers provide an independent and self-contained game world. They have their own population, economic strength, traders and an auction house.
The population density (max. number of players) depends on the performance of the server hardware.
In simulated performance tests, many hundreds of players can be online at the same time with standard hardware.
A GameServer is also used for general demographic localization in the communication between the players.
The GameServer can only be requested with a valid session.

Client App:
The client APP is written in csharp / Unity2020.
Local data is written/retrieved to a SQLite database.
All user interactions are completely server based.
New data based content like items, spells etc. can be loaded from the server during gameplay and stored in the local database.
This allows the content to be expanded without additional full app updates.
Existing stored data is checked for updates at runtime and updated as needed


Accounts:
There is only one app for all account types.
Accounts can be managed within the game.
Beta Tester Account:
- Access to all features with ads after leaving dungeons.
Standard Account:
- Ad insertion after leaving dungeons.
- Character Level Limit: 5
- Chat, Auction house, mailbox, housing can only be viewed but not used.
Premium Account:
- no ads
- all functions unlocked.
- currently monthly subscription; price is not yet fixed.


Pocket Raider Online is still in beta but already very advanced.
The complete server and client code was written by me alone from scratch.
There are no external dependencies / license fees.

About Developer

My name is Peter, 41 years old and i am from germany.
I have been working in the automation industry for about 20 years.
For 3 years I have been programming pocketraider from time to time in my spare time.

Online games and mmorpgs have always fascinated me.
i keep hearing and reading: one person alone can't make an mmo.
What should I say to that?
It's a lot of work, but it's possible.
I don't have to worry about programming anymore, so I can use the time effectively.

Surely it would be nice to have support in topics such as design, marketing, etc.. But since it is a private hobby, I lack the appropriate contacts.