I want to show you some interesting things that I have done recently.
1. Numeric skill bar 1 - 0
Expands the set of shortcuts for activating skills and items: together with the F1-F12 keys, you can use the number keys 1 - 0.
2. Chat server and chat client
My task was to develop an interface in the form of a chat server for exchanging messages with a game server. The chat server receives information from the client about the game server (address, port, version) and about the user account (login, password). Then it connects to the game server and logs into the account, after which it sends the client a list of characters. The client should select a character and send it to the chat server so that the chat server can enter the game world with it. After these actions, the chat server starts receiving messages from the client and forwarding messages received from the game world to it. The chat client can be any application that transmits data over TCP: Windows application, website, Android application, and so on.
To test the interface, a lightweight client was developed with which you can exchange messages with the game world from Windows desktop environment:
With the help of such a system, you can, for example, create real-time chat with the game on your website or develop Android and iOS clients for communication between players.
3. Setting to display the names of characters, monsters, NPC
A checkbox is added to the game settings menu to enable or disable the display names of game objects.
4. Additional characteristics of the character
In the character window, you can display various characteristics that are hidden, for example, movement speed, chance of a critical hit, luck and others.
5. Respawn of bosses
There is a problem when after killing a boss like Black Dragon the server restarts. Despite the fact that it takes a long time to revive the boss, the boss appears immediately after the server starts, which allows some players to gain an advantage. That is, in a short period of time, the boss can be killed several times. A modification has been developed for GameServer.exe that fixes the problem.
6. Discord integration
A new chat channel is added to the game to communicate with other players on Discord. The game client connects to a special program, which, on the one hand, is a server for game clients, receives messages from them to be sent to the Discord server and sends them messages received from the Discord server, and on the other, a client-bot that interacts with the Discord API. On the Discord server, messages from the game world are displayed on behalf of the bot.