Jump to content
V3ct0r

Tales of Pirates Services

Recommended Posts

1. Client modification that allows you to automatically connect to the server

 

autologin.png

 

This modification allows you to specify the IP address and port, as well as the server version, username and password of the game account in the game launch parameters:

start system\Game.exe startgame 127.0.0.1 1973 136 V3ct0r 123456

With this client launch, the player will not need to enter login and password: the game will automatically connect to the server, and the player will enter the character selection stage.

 

 

2. Colored guild names

 

cclr1.pngcclr3.png

 

On the basis of this modification is possible to create a system of color names of the guilds.

 

The modification consists of two parts:

1) Server - gives the client a list of Guild ID -> Color over HTTP. That is, the server part is a web server that, in accordance with programmed logic, for example in PHP, gives out colors to guilds (see example below);

2) Client - loads colors from the server and displays color names of guilds under names of characters (see images above).

 

For example, you can make a web panel in which the leader chooses the color of his guild:

cclr0en.png

 

Initially, the color of guild was green:

cclr2en.png

 

The guild leader changed color to orange:

cclr4en.png

 

 

3. Highlighting friends and enemies with color

 

GuildCircleMod.png

 

This modification highlights the hostile characters in a red circle, and friendly ones - in green. It is possible to make a green/red highlighting of character names.

You can also specify a list of maps on which this mod works, and set the conditions for determining a friend or enemy by guild, party, or faction.


Share this post


Link to post
Share on other sites

1. Display of effects applied to the character

 

effects_en.png

 

The mod shows the effects been applied to the player’s character and the time of effects until their ending (see screenshot).

 

The duration of an effect may depend on the level of skill that adds the effect on the character or is specified in server scripts, for example, Heaven's Berry, Super Amplifier of Strive, Hi-Amplifier of Luck and so on. Therefore, with the first apply of an effect of a certain level, the mod will detect the time of its total duration (calibrate) and display the time during which it is already in operation. With subsequent applications of the effect, the time that remains until the end of its action will be displayed, and cooldown animation will play on the effect icon.

 

The player can customize the mod using chat commands, or by editing the configuration file:

1) /mod.plug.[enable|disable] - Enable or disable the mod;

2) /mod.plug.setpos([x], [y]) - Set coordinates (X, Y) of the panel with effects on the screen;
3) /mod.plug.setlinesize([number]) - Set the number of icons in the line in the effects panel. For example, with [number]=3, the 4th icon will be located under the 1st, 5th under the 2nd, and so on;

4) /mod.plug.seticon([id], [level], [icon]) - Set an icon for the effect with id [id] and level [level]. The effect icon may depend on its level. If [level] = 0, the icon will be set for all effect levels.;

5) /mod.plug.language.[rus|eng] - Choose the language: Russian or English;

6) /mod.plug.timereset - Reset the recorded effects times (reset calibration);

7) /mod.plug.effects - Print the effects applied to the player’s character in the system chat channel (see screenshot);

8) /mod.plug.settings - Print in the system chat channel the current settings of the mod.

 

 

2. Display HP of players, monsters and the number of resources near to them

 

showhp_en.png

 

This modification displays the health points of players, monsters and the amount of resources in the form of text nearby to their models on the game scene (see screenshot).

 

The mod can be configured using chat commands, or using a text editor by editing the configuration file:

1) /mod.hp.[enable|disable] - Enable or disable the mod;

2) /mod.hp.show.players.[enable|disable] - Show or hide other players health points;

3) /mod.hp.show.me.[enable|disable] - Show or hide the player's character health points;

4) /mod.hp.show.enemy.[enable|disable] - Highlight friends and enemies with color, as well as resources;

5) /mod.hp.language.[rus|eng] - Choose the language: Russian or English;

6) /mod.hp.settings - Print in the system chat channel the current settings of the mod.

 

 

3. Guild icons

 

guild_icons.png

 

The mod allows you to set guilds icons that appear next to the guild name under the name of the character. It is possible to implement a selection of icons that are already in the resources of the client, as well as icons that are dynamically loaded from the server. The icon can be set, for example, using the LUA function, or via the website.

 

 

4. Automatic use of cakes

 

cake_en.png

 

This mod automatically uses cakes and other recovery items when the character's HP values are below a certain threshold. In the mod settings, you can specify an inventory cell from which to use cakes, or set automatic search for cakes in the character's bag; disable and enable messages in the system chat channel; set the frequency of using cakes. The ID of the cake and other recovery items are also specified in the settings.

 

The mod can be enabled and disabled using the following chat commands:

1) /cake-enable - Enable the mod;

2) /cake-disable - Disable the mod;

3) /cake-settings - Print in the system chat channel the current settings of the mod.

 

 

5. Custom button

 

discord_button.png

 

The mod adds a new button to the GUI, when clicked, the player enters the Discord-chat of the server.

 

 

6. Function for GameServer.exe, which allows to change the names of Monsters, NPCs, Players for a certain player

 

OnBeginSeeCha1_en.png

 

OnBeginSeeCha2.png

 

With this function, you can change the names of monsters, NPCs and players (@other) that are sent during synchronization to a certain player (@role). For example, you can make the player "V3ct0r" (@role) see the Forest Spirit (@other) named "AAAAAAAA", and the player "Test1024" (@role) see the Forest Spirit (@other) named "BBBBBBB". Or it is possible to add character level to the player's characters names and add to monsters names their IDs from CharacterInfo.txt (see the example of the code above).

 

 

7. Function for GameServer.exe, which allows to choose the point of birth of player characters

 

GetChaRespawnPoint_EN.png

 

When a player’s character dies, the GetChaRespawnPoint () function is called, in which you can select it's birth point depending on various conditions. The function may be useful when creating maps for team battles such as Sacred War and Guild War, since when a player dies, the player is resurrected at the last recorded point outside the map.

 

 

8. Bypass antibot (DLL, which automatically recognizes captcha and sends the response to the server)

 

antibot.png

System chat:

<Antibot bypass>: The server requests the responce to the captcha!

<Antibot bypass>: Recognized captcha: VUZU.

<Antibot bypass>: Sending the responce to the server...

 

ab.png

System chat:

<Antibot bypass>: The server requests the responce to the captcha!

<Antibot bypass>: Recognized captcha: 394Y.

<Antibot bypass>: Sending the responce to the server...

 

When requesting a captcha response, the server sends 4 random BMP images from the GameServer\resource\Pic folder to the client. These images are monochramatic, i.e. have 1 bit color (the palette consists of 2 colors - white and black), their size is 26 by 29 pixels and weight is 178 bytes.

 

From the beginning, I had the idea to copy these images with letters into the client and simply by-byte compare them with the images received from the server, thus defining text symbols. But it turned out that the server before sending the image randomly adds noise to it, i.e. each time the client receives different images and they cannot be compared byte-by-byte.

 

Images that are in the Pic folder of the server:

H.png M.png Y.png

 

Examples of images that the client receives:

image.png m.jpg y.png

 

Then I decided to use a library for text recognition: we give it a symbol image as input, we get a text symbol at the output. To increase the chance of correct symbol recognition, I wrote a simple function that removes noise:

M0.png => M1.png => "M"

 

It is worth noting that the DLL recognizes captcha with not 100% probability: there can be text recognition errors. If the DLL cannot recognize any symbol from the 4-letter code at all, then a window appears for entering captcha and the process control is delegated to the user (in the screenshot above, the captcha input window is displayed forcibly). Also, the DLL can confuse the characters, for example, the symbol "6" in the image can be recognized as the symbol "C", in this case the wrong code will be sent to the server, and the server can kick the player after 3 wrong attempts to.

  • Like 3

Share this post


Link to post
Share on other sites

1. Website update

 

1.1 Sign in with Google and Facebook


If, when a user logging in using Google or Facebook there is an account in the AccountServer database with an email associated with the user's Google or Facebook, then the user logs in to the site:

lee1.png

 

If, when a user logging in using Google or Facebook there is no account in the AccountServer database with an email associated with the user's Google or Facebook, then the user passes a simplified registration and then immediately goes to the account:

lee2.png

 

If, when a user logging in using Google or Facebook there are several accounts in the AccountServer database with emails associated with the user's Google or Facebook, then the user selects an account and then log in:

lee3.png

 

 

1.2 Game database of items and monsters

 

lee4.png

 

lee5.png

 

lee6.png

 

lee7.png

 

lee8.png

 

lee9.png

 

lee10.png

 

lee11.png

 

lee12.png

 

lee13.png

 

 

1.3 Online store of sets of crystals for IGS

 

lee14.png

 

lee15.png

 

lee16.png

 

lee17.png

 

 

2. The program for viewing and editing inventory\temporary bag\bank of characters

 

TOP Bag Editor 0.png

 

TOP Bag Editor 1.png

 

TOP Bag Editor 2.png

 

TOP Bag Editor 5.png

 

TOP Bag Editor 3.png

 

TOP Bag Editor 4.png

  • Like 3

Share this post


Link to post
Share on other sites

1. Icons in character names

 

icon_1.pngicon_2.pngicon_3.png

 

This modification allows you to set various icons opposite character names using lua-functions in server scripts:

-- Set character icon
SetPlayerIcon(role, icon_id)

-- Get current character icon
local icon_id = GetPlayerIcon(role)

 

 

2. Clock synchronized with server time

 

clock_1.pngclock_2.png

 

This clock shows the current server time and does not depend on the time set on the player’s computer.

 

 

3. Hide stalls button

 

hide_01.png hide_0.png

hide_1.png hide_2.png

 

This modification of the client adds a button that allows players to hide the names of trade stalls.

  • Like 1

Share this post


Link to post
Share on other sites
On 4/12/2019 at 3:01 AM, V3ct0r said:

6. Function for GameServer.exe, which allows to change the names of Monsters, NPCs, Players for a certain player

 

OnBeginSeeCha1_en.png

 

OnBeginSeeCha2.png

 

With this function, you can change the names of monsters, NPCs and players (@other) that are sent during synchronization to a certain player (@role). For example, you can make the player "V3ct0r" (@role) see the Forest Spirit (@other) named "AAAAAAAA", and the player "Test1024" (@role) see the Forest Spirit (@other) named "BBBBBBB". Or it is possible to add character level to the player's characters names and add to monsters names their IDs from CharacterInfo.txt (see the example of the code above).

Has there been a fix applied to this mod yet? I haven't received a response from you on discord yet.

Share this post


Link to post
Share on other sites

Hello @Angelix!

 

Yes, there is a fix for that mod. Check your Discord.

  • Like 1

Share this post


Link to post
Share on other sites

 

1. Displaying the level of items in inventory

 

1. ItemLv.png

 

The icons of some items (gems, fairies, weapons) display their level.

 

 

2. Displaying the name of the item in the apparel

 

2. ItemApparel.png

 

In the description of the apparel displays the name of the item that is inserted into it

 

 

3. Nightmare Demonic Helm

 

3.1 NightmareHelmMod.png3.2 NightmareHelmMod.png

 

This system is a set of hats with certain characteristics, depending on their level. The level of the hat can be increased using a special item. Hats can be inserted into the apparel, as well as improved in the apparel.

 

When a player puts on a hat, an icon corresponding to the level of the hat appears next to the name of his character.

 

 

4. Trading in stalls for gold or items

 

4.1.e StallSelect.png4.2.e StallSelect.png

 

4.3 StallSelect.png4.4 StallSelect.png

 

This modification allows players to choose when creating a trading stall for what to sell this or that item: for gold or for another item.

When placing an item in a stall slot, the game asks the player if he wants to use gold. If a player chooses gold, then the item is sold for gold, as in the original version of the game. Otherwise, the player is prompted to enter the name of the item that he wants to receive in exchange for the item being sold. Next, the player enters the quantity and value of the item to be sold.

  • Like 1

Share this post


Link to post
Share on other sites

Hello, @flamyman1412!

 

Contact me as follows:

Quote

Contacts:

Skype: vector.nesterov;

Discord: V3ct0r#0484;

Private message on the forum.


Share this post


Link to post
Share on other sites

1. Updated client modification to automatically enter the game

Quote

autologin.png

 

This modification allows you to specify the IP address and port, as well as the server version, username and password of the game account in the game launch parameters:


start system\Game.exe startgame 127.0.0.1 1973 136 V3ct0r 123456

With this client launch, the player will not need to enter login and password: the game will automatically connect to the server, and the player will enter the character selection stage.

 

[+] Now launch parameters are specified in parameter:value format and their sequence does not matter.

List of available parameters:

ip - server address [Required]
port - server port
version - game version from GateServer.cfg
login - login from player account [Required]
password - password from player account [Required]
character - character name

Example:

start system\Game.exe startgame ip:127.0.0.1 port:2015 login:V3ct0r password:123456 version:139 character:V3ct0r

If the required ip, login and password parameters are not specified in the Game.exe startup parameters, the game will start in normal mode. If the port and version parameters are missing, the server port and game version values will be taken from Game.exe.

 

[+] Now you can immediately enter the game as a character bypassing the character selection scene.

To do this, specify the character name in the launch parameter character. If this parameter is not specified, it will automatically enter the character selection scene.

 

 

2. Table encryption (.bin files)

 

This modification encrypts .bin files (ItemInfo.bin, CharacterInfo.bin, SkillInfo.bin and others) in the Client\scripts\table folder. Thus, it is now impossible to get the source .txt files from encrypted files using the decompiler, and they can not be used in other game clients.

 

ItemInfo.bin file before encryption:

BeforeEnc.png

 

After encryption:

AfterEnc.png

 

This mod will help against the theft of items, monsters and other game data from your server.

 

 

3. Highlighting viewed trade stalls with color

 

top.mod.seenstalls1.png top.mod.seenstalls2.png

 

Plates with the names of the stalls that the player has already viewed are highlighted.

 

 

4. Highlighting NPCs and their coordinates

 

top.mod.npcpos.png

 

NPC names are highlighted in a different color, and their coordinates are displayed below the NPC characters.

 

 

5. Mana (SP) bar

 

top.mod.spbar.png

 

Under the bar of the health level of character a bar with a mana level appears.

 

 

6. Built-in game client registration of game accounts

 

1en.png

 

2en.png

 

3en.png

 

This modification allows players to create game accounts directly in the game client: for this, the “Registration” button is present on the game login form, by clicking on which the registration form is displayed. To prevent automated creation of accounts and spamming from bots, captcha is provided. After successful account creation, a player can immediately enter the game without entering a username and password.

  • Like 5

Share this post


Link to post
Share on other sites

Offline Stall server update to version 3.6 dated 12/13/2019

 

stallfixed.png

 

 

IMPORTANT! A critical vulnerability was fixed due to which attackers could attack StallServer.exe, which led to a server crash. The error was due to a client buffer overflow in StallServer.exe.

 

For those who purchased this modification, I recommend urgently contacting me for the latest version of the StallServer.exe.

  • Like 1

Share this post


Link to post
Share on other sites

Server owners should be worried not having someone like you work for them. 

Quite impressive features, addons, and functions for such an old game. 

great job.. and keep it up :)

though I wish you make your own public server ._. 

 

  • Thanks 1

Share this post


Link to post
Share on other sites

Offline Stall server update to version 3.7 dated 03/17/2020

 

image.png

 

IMPORTANT! A critical vulnerability was fixed due to which cybercriminals could cause StallServer.exe to crash. This vulnerability was associated with an incorrect block size in packet headers that was forged by attackers, which led to an error on the server when packet encryption was enabled and protection from WPE / RPE was enabled.

 

I express special gratitude to the administration of the Kara Online project for the information about the vulnerability and the help in its elimination.

 

For those who purchased this modification, I recommend urgently contacting me for the latest version of the StallServer.exe.

  • Like 1

Share this post


Link to post
Share on other sites

Offline Stall server update to version 3.7.2 dated 04/16/2020

 

1.png

 

Change list:

0) Optimized server code, improved performance;

1) The number of connected clients, players and stalls is displayed in the title bar of the server window;

2) Fixed disconnecting of client from the character selection/creation scenes after 60 seconds;

3) Added limit on the number of packets from client per second against flood by packets;

4) Added limit on the number of bytes from client per second against flood by packets (limit for information transfer speed from client to server);

5) The first packet from client must be an authorization packet, otherwise the client disconnects;

6) If the client has connected, but has not logged in into an account for a certain time, then it is disconnected;

7) Added restriction on connecting from one IP address for a certain time against flood by connections;

8 ) Added 'Trading in stalls for gold or items' modification support;

9) If you write to the player in an offline stall, the system replies that he is not in the game now:

2.png3.png

 

10) After a player enters the game after trading in an offline stall, he displays statistics of items sold:

4.png

 

11) HTTP stall monitoring is returned:

 

  • Like 1

Share this post


Link to post
Share on other sites
On 12/5/2019 at 11:38 AM, V3ct0r said:

6. Built-in game client registration of game accounts

 

1en.png

 

2en.png

 

3en.png

 

This modification allows players to create game accounts directly in the game client: for this, the “Registration” button is present on the game login form, by clicking on which the registration form is displayed. To prevent automated creation of accounts and spamming from bots, captcha is provided. After successful account creation, a player can immediately enter the game without entering a username and password.

 

in-game-register.png

By Storm for his Sky Pirates Online project


Share this post


Link to post
Share on other sites

Hello friends!

 

I want to show you some interesting things that I have done recently.

 

 

1. Numeric skill bar 1 - 0

 

panel0-1.png

 

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.

 

chatserver0.jpg

 

chatclient4.png

 

To test the interface, a lightweight client was developed with which you can exchange messages with the game world from Windows desktop environment:

chatclient.png

 

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.

 

showname0.jpgshowname1.jpg

 

 

4. Additional characteristics of the character

 

attr.png

 

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

 

discord.png

 

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.

  • Like 4

Share this post


Link to post
Share on other sites
On 8/1/2017 at 6:54 PM, V3ct0r said:

OfflineStall.png

 

Offline stall server. Allows players to trade in the stall even when they closed the game

hello, i want to buy the selll stall offline, how much is it?

Share this post


Link to post
Share on other sites
On 11/10/2019 at 10:20 AM, V3ct0r said:

 

1. Displaying the level of items in inventory

 

1. ItemLv.png

 

The icons of some items (gems, fairies, weapons) display their level.

 

 

2. Displaying the name of the item in the apparel

 

2. ItemApparel.png

 

In the description of the apparel displays the name of the item that is inserted into it

 

 

3. Nightmare Demonic Helm

 

3.1 NightmareHelmMod.png3.2 NightmareHelmMod.png

 

This system is a set of hats with certain characteristics, depending on their level. The level of the hat can be increased using a special item. Hats can be inserted into the apparel, as well as improved in the apparel.

 

When a player puts on a hat, an icon corresponding to the level of the hat appears next to the name of his character.

 

 

4. Trading in stalls for gold or items

 

4.1.e StallSelect.png4.2.e StallSelect.png

 

4.3 StallSelect.png4.4 StallSelect.png

 

This modification allows players to choose when creating a trading stall for what to sell this or that item: for gold or for another item.

When placing an item in a stall slot, the game asks the player if he wants to use gold. If a player chooses gold, then the item is sold for gold, as in the original version of the game. Otherwise, the player is prompted to enter the name of the item that he wants to receive in exchange for the item being sold. Next, the player enters the quantity and value of the item to be sold.

Hello, I am interested in this, how much does it cost?

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...