Jump to content

Search the Community

Showing results for tags 'server'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Russian Section
    • Новости и объявления
    • Пиратия: Документация
    • Пиратия: Релизы
    • Пиратия: Разработка
    • Пиратия: Web
    • Пиратия: Помощь
    • Совместные проекты / набор команды
    • Доска объявлений
    • Программирование
    • Оффтопик
    • Корзина
  • English Section
    • News & Announcements
    • Guides
    • Releases
    • Development
    • Web
    • Questions & Help
    • Shared Projects / Team search
    • Paid services & Requests
    • Programming
    • Offtopic
    • Recycle bin
  • Portuguese Section
    • Dúvidas & Ajuda
  • Spanish Section
    • Preguntas y Ayuda
  • Servers
    • Russian servers
    • English servers

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 82 results

  1. [Mod] Displaying servers response time ("ping") on the server selection form Next to each server on the server selection form, their response time ("ping") is displayed. Requirements Installed mod loading system for server and client (PKOdev.NET mod loader). Modification information Name: pkodev.mod.ping Version: 1.0; Author: V3ct0r; Type: for client (Game.exe); Supported executable .exe files: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 and GAME_13X_5. Installation Place the mod DLL file "pkodev.mod.ping.client.13x_<ID>.dll" for your version of Game.exe into the "mods" folder of the game client. If necessary, configure the GUI scripts of the server selection form "frmServer" (file "\scripts\lua\forms\login.clu"). Download 1) Binary release (.dll); 2) The source code of the mod for Visual Studio 2019 Community (C++). If you encounter any problem, bug or have any questions, then feel free to write in this thread.
  2. [Script] Promo code system This script implements a simple promo code system. Players can use promo codes to get items. Promo codes are entered into the local chat channel through a slash, for example: /agjtjSfsaAS34 The promo code can only be used once. A text file is used to store promo codes. Requirements The script requires GameServer.exe with the HandleChat() function support - local chat messages handler. Installing the script 1) Create a file named "pkodev.promo.lua" in the folder "GameServer\resource\script\calculate\mods" with the following contents: -- Print a log print("Loading pkodev.promo.lua") -- Check that HandleChat function exists if (HandleChat == nil) then -- Write a log print("pkodev.promo.lua: Warning, the HandleChat() function is not exist!") -- Do not load the script return end -- Promocodes system promo = promo or { } -- Name of the file with promocodes promo.file = "promocodes.dat" -- List with promocodes promo.list = {} -- Save data to file promo.save = function(path) -- Open the file local file, msg = io.open(path, "w") -- Check that file is open if (file == nil) then -- Write a log LG("pkodev.mod.promo", string.format("Can't save the list with promocodes to the file '%s': '%s'!", path, msg)) return false end -- Write data for key, value in promo.list do -- Write a line local ret = file:write(string.format("{%s, %d, %d}\n", value.code, value.id, value.count)) -- Check that line is written if (ret == false) then -- Write a log LG("pkodev.mod.promo", string.format("Can't write the data to the file '%s'!", path)) return false end end -- Flush the data file:flush() -- Close the file file:close() -- Write a log LG("pkodev.mod.promo", string.format("The list with promocodes has been successfully saved to the file '%s'!", path)) return true end -- Load data from file promo.load = function(path) -- Remove old promocodes for k in pairs (promo.list) do promo.list[k] = nil end -- Open the file local file, msg = io.open(path, "r") -- Check that file is open if (file == nil) then -- Write a log LG("pkodev.mod.promo", string.format("Can't load the list with promocodes from the file '%s': '%s'!", path, msg)) return false end -- Read file line by line for line in file:lines() do -- Extract data from the line local ret, _, code_, id_, count_ = string.find(line, "^{([A-Za-z0-9]+)%s*,%s*([0-9]+)%s*,%s*([0-9]+)}$") -- Check that string matches the pattern if (ret ~= nil) then -- Add data to the list table.insert( promo.list, { code = code_, id = id_, count = count_, } ) end end -- Close the file file:close() -- Write a log LG("pkodev.mod.promo", string.format("%d promocodes have been succsessfully loaded from file '%s'!", table.getn(promo.list), path)) return true end -- Handle chat function hook promo.hadle_chat__original = HandleChat HandleChat = function(role, msg) -- Check that message has the '/' symbol if ( string.sub(msg, 1, 1) == "/" ) then -- Get promocode local ret, _, code_ = string.find(msg, "^/([A-Za-z0-9]+)%s*$") -- Check that promocode is found if (ret ~= nil) then -- Search the promocode in the list for key, value in pairs(promo.list) do -- Compare promocodes if (value.code == code_) then -- Write a message BickerNotice(role, string.format("You entered the promocode '%s': %s x %d!", value.code, GetItemName(value.id), value.count) ) -- Give an item GiveItem(role, 0, value.id, value.count, 0) -- Write a log LG("pkodev.mod.promo", string.format("Player '%s' entered a promocode '%s' and received '%s' x %d!", GetChaDefaultName(role), value.code, GetItemName(value.id), value.count) ) -- Remove the promocode from the list promo.list[key] = nil -- Save the list to the file promo.save(promo.file) -- Synchronize the promocodes list local packet = GetPacket() WriteCmd(packet, 4015) WriteDword(packet, GetRoleID(role)) WriteString(packet, string.format("promo.list[%d]=nil", key)) SendPacket(role, packet) -- Do not call the original function HandleChat() return 0 end end end end -- Call the original function HandleChat() return promo.hadle_chat__original(role, msg) end promo.load(promo.file) 2) Include it in the file "SkillEffect.lua" (\GameServer\resource\script\calculate) after "functions.lua" inclusion: dofile(GetResPath("script\\calculate\\mods\\pkodev.promo.lua")) 3) In the root directory of the GameServer create a file named "promocodes.dat" and write the list of promocodes in the following format: {<Promocode>, <Item ID>, <Item number>} Example: {agjtjSfsaAS34, 1849, 45} {kgjKKKsnggklsaa, 885, 1} {0004121aAf, 1848, 10} Using the script 1) To use a promocode, player should enter it in the local chat: /agjtjSfsaAS34 The player will get Cake x 45. 2) All logs regarding promo codes usage can be found in the file: GameServer\LOG\log\pkodev.mod.promo.txt What can be improved 1) As a reward, you can also give gold, buffs and other bonuses; 2) The list of promotional codes can be stored in the database, for example, using the LuaSQL library; 3) You can make promotional codes reusable, but one player can use the promotional code only once.
  3. [Fix] Bug fix for TransformCha() function (character transformation) Hello friends! I think many people know about the bug associated with the TransformCha() function, when using it, the character's hat disappears. In this thread I will show you how to fix this bug. Thanks to @Де-Компанье for the solution! 1) Open GameServer.exe with the character transformation function (TransformCha()) in any HEX editor. For example, in HxD. 2) Find the sequence of bytes: 05 98 00 00 00 89 45 EC 8B 45 FC 05 32 6E 00 00 8B 5D F8 89 18 8B 45 FC 83 C0 58 8B 5D F8 89 18 6A 00 3) Replace these bytes with the following ones: 05 98 00 00 00 89 45 EC 8B 45 FC 50 05 32 6E 00 00 8B 5D F8 66 89 18 58 83 C0 58 8B 5D F8 89 18 6A 00 4) Save the changes. Now, when transforming character, the hat will not disappear.
  4. [Mod] Fixing the resetting character professions when reconnecting to the server Some admins are experiencing an issue where a character that has gained a profession becomes a "Newbie " again after relogging into the game. The mod fixes this bug. Requirements Installed mod loading system for server and client (PKOdev.NET mod loader). Modification information Name: pkodev.mod.jobfix; Version: 1.0; Author: V3ct0r; Type: for server (GameServer.exe); Supported executable .exe files: GAMESERVER_136 and GAMESERVER_138. Installation In the "mods" directory of your GameServer, create a "pkodev.mod.jobfix" folder and place into it the mod DLL file "pkodev.mod.jobfix.server.<x>_<l>.dll" for your version of GameServer.exe, where <x> is the version of GameServer.exe (136 or 138) and <l> is the professions language (eng or rus ). Download 1) Binary release (.dll); 2) The source code of the mod for Visual Studio 2019 Community (C++). If you encounter any problem, bug or have any questions, then feel free to write in this thread.
  5. Guest

    Avacado Online

    Releasing avacado server files which used little island back then. Files below are a copy of original Avacado Online, which has been created by Zankza. Server video: Use files on your own risk. avacado.rar
  6. [Mod] Antibot Adds an anti-bot to the game that worked on the official servers of the game. The mechanism of the antibot is similar to the "captcha". During the game, at certain intervals of time, the player must enter a code that appears on the screen, consisting of 4 characters. The player has only 3 attempts. If the player makes a mistake 3 times in a row and/or does not enter the code, then his is forcibly disconnected from the server. If the answer is correct, the player can receive "rewards" - experience points, restoration of HP and SP, or an item (cake, ticket), and the counter for the number of unsuccessful attempts is reset. Antibot works under the following conditions: 1) The player's character does not have administrator and moderator rights (GM-level is 0); 2) The player's character is not in the safe zone; 3) The player's character is not in the PvP zone; 4) The player's character is on the water. Requirements Installed mod loading system for server and client (PKOdev.NET mod loader). Modification information Name: pkodev.mod.antibot; Version: 1.0; Author: V3ct0r; Type: for server (GameServer.exe); Supported executable .exe files: GAMESERVER_136 and GAMESERVER_138. Installation 1) In the "mods" directory of your GameServer, create a "pkodev.mod.antibot" folder and place into it the mod DLL file "pkodev.mod.antibot.server.13<x>.dll" for your version of GameServer.exe; 2) In the folder "resource" of your GameServer place the folder "Pic" from the attached archive with the mod; 3) In the file "functions.lua" ("GameServer\resource\script\calculate") add the code from the corresponding file from the attached archive with the mod. Interval of antibot activation The mod is configured in such a way that by default the antibot activation interval is calculated in accordance with the original algorithm that was implemented by the game developers (see the DWORD CCharacter::GetCheatInterval(int state) method from the "Character.cpp" file of the server source code). This algorithm can be changed in the function unsigned int __fastcall pkodev::hook::CCharacter__GetCheatInterval(void* This, void* NotUsed, int state) in the source code of the mod ("dllmain.cpp" file). This function should return the time interval in milliseconds. With state = 1, the function should return at least 60 seconds (65 by default), because with the specified value of this parameter, the time allotted for the player to enter a 4-character code is calculated. Download 1) Binary release (.dll); 2) The source code of the mod for Visual Studio 2019 Community (C++). If you encounter any problem, bug or have any questions, then feel free to write in this thread.
  7. [Script] Quest requires 'X' hours after the start Hello! In this thread I am posting an example of script that will allow you to check the condition when the player completes the quest: 'X' time has to pass after starting the quest to complete it. Usage MisResultCondition(MissionTimeExpired, <quest_id>, <time_in_seconds_to_wait>) Installation Add the following code to the file 'vairable.lua': -- Table with the time of taking quests by characters if (quest_table_guard == nil) then quest_table_guard = true quest_table = { } end Add to the file 'functions.lua': -- Quest added event AddMission__Original = AddMission AddMission = function(role, id, param) -- Call original AddMission function local ret = AddMission__Original(role, id, param) -- Check the result if ( ret == LUA_TRUE ) then -- Add the quest to the table quest_table[id] = quest_table[id] or {} -- Remember the time when the character took the quest quest_table[id][ GetRoleID(role) ] = os.time() end -- Return original result return ret end -- Check that some time expired since character taken the quest function MissionTimeExpired(role, id, t) -- Check that quest exists in the table if ( quest_table[id] == nil ) then -- Quest not found return LUA_TRUE end -- Get character ID local cha_id = GetRoleID(role) -- Check that the character has the quest if ( quest_table[id][cha_id] == nil ) then -- Character doesn't have the quest ?! return LUA_TRUE end -- Calculte time delta local delta = ( os.time() - quest_table[id][cha_id] ) -- Check that t seconds expired since quest started if ( delta >= t ) then -- Remove character from table quest_table[id][cha_id] = nil -- Condition is completed return LUA_TRUE end -- Condition is not completed return LUA_FALSE end And finally register the new function in the file 'MissionSdk.lua' ('ConditionsTest' function): . . . elseif conditions[i].func == MissionTimeExpired then local ret = MissionTimeExpired( character, conditions[i].p1, conditions[i].p2 ) if ret ~= LUA_TRUE then PRINT( "ConditionsTest: MissionTimeExpired = false" ) return LUA_FALSE end . . . That's all! Note: 1) All data about the time of taking quests by characters will be lost when the server is restarted. You need to come up with a mechanism for saving the table 'quest_table' to a file or database if this is critical for your application; 2) NPCs that give and accept a quest with this condition must be within the same GameServer instance.
  8. Automatically connect to the server / enter the game (Client modification that allows you to automatically connect to the server) This modification allows you to specify additional parameters in the game client startup parameters for automatic connection to the server and the character's entry into the game: start system\Game.exe startgame ip:127.0.0.1 port:1973 version:136 login:V3ct0r password:123456 character:V3ct0r With this launch of the client, the player will not need to enter a username and password: the game will automatically connect to the server, and the player will enter the character selection scene. In addition, if the name of a character was specified, then the player will immediately find himself in the game for this character, bypassing the selection process. Also, the user gets the opportunity to specify the server IP address, port and version. Unlike the solution suggested by @ruubi, there is the function presented of entering with character directly into the game. The mod can be useful for conveniently launching the client and creating various auto-update programs ("launchers", "patchers") with a personal area, for example: List of available parameters: ip - server IP-address [required] port - server port version - game version from GateServer.cfg login - login of player's account [required] password - password of player's account [required] character - player's character name Parameters are written in random order in the following format: parameter:value Example: login: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 - by default. If the character parameter is not specified, then the player enters the character selection scene. Requirements Installed mod loading system for server and client (PKOdev.NET mod loader). Modification information Name: pkodev.mod.autologin; Version: 1.0; Author: V3ct0r; Type: for client (Game.exe); Supported executable .exe files: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5. Installation Place the mod DLL file "pkodev.mod.autologin.client.13x_<ID>.dll" for your version of Game.exe into the "mods" folder of the game client. Download 1) Binary release (.dll); 2) The source code of the mod for Visual Studio 2019 Community (C++). If you encounter any problem, bug or have any questions, then feel free to write in this thread.
  9. Scheduled player reward system With the help of this system, it is possible to give out to all players on the server at a certain time the reward (gift) specified in the schedule: all players who are currently online will receive an item. How to install 1) Create a file named "pkodev.gift.lua" in folder "GameServer\resource\script\calculate\mods"; 2) Put the following code to the file: -------------------------------------------------------------- -- Gift system script -- -- Author: V3ct0r from PKODev.NET -- Version: 1.0 (11/08/2021) -- -- How to install the system: -- 1) Put this file to '\GameServer\resource\script\calculate\mods' folder -- 2) Put the following line at the beginning of 'mlist.lua' file: -- dofile(GetResPath("script\\calculate\\mods\\pkodev.gift.lua")) -- 3) Done! -- -- Interface: -- 1) Add a gift to queue: -- local gift_id = giftmod:addGift(item_id, number, hour, minute, second, month, day, year) -- 2) Remove a gift from queue -- local success = giftmod:removeGift(gift_id) -- Where 'success' can be 'true' or 'false' -- 3) Get gift number in queue -- local number = giftmod:getGiftNumber() -- 4) Print a list of queued gifts in GameServer window: -- giftmod:printGifts() -- -- These commands also can be used with &lua_all GM-command, for example: -- &lua_all giftmod:addGift(item_id, number, hour, minute, second, month, day, year) -- Note: After GameServer.exe restart gifts. which were added using GM-command, will be removed -------------------------------------------------------------- -- Update guard if (PKODEV_GIFT_GUARD ~= nil) then -- Exit the script return end -- Define update guard PKODEV_GIFT_GUARD = true -- Print a log print("Loading pkodev.gift.lua") -- Class Gift Gift = {} -- Make a Gift function Gift:new(id, item_id, count, gift_time) -- Private fields local private = { id = id or -1, item_id = item_id or -1, count = count or 0, gift_time = gift_time or 0, is_given = false } -- Public fields local public = { } -- Get an gift ID function public:getId() return private.id end -- Get an item id function public:getItemId() return private.item_id end -- Get an item count function public:getItemCount() return private.count end -- Get a time at which to give the gift function public:getTime() return private.gift_time end setmetatable(public, self) self.__index = self; return public end -- Class GiftSystem GiftSystem = {} -- Make a Gift system function GiftSystem:new() -- Private fields local private = { -- List of gifts to give gifts = { }, -- List of active players players = { }, -- Timer function timer_func = nil, -- List of hooks hooks = { } } -- Public fields local public = { } -- Player entered a map event function private:on_player_entered_map(role, mapdesc, map) -- Check that map exists in the list if ( private.hooks[map] ~= nil ) then -- Check that enter function is hooked if ( private.hooks[map].enter ~= nil ) then -- Call original function private.hooks[map].enter(role, mapdesc) end end -- Add player to the list private.players[ GetRoleID(role) ] = role end -- Player leaved a map event function private:on_player_leaved_map(role, map) -- Check that map exists in the list if ( private.hooks[map] ~= nil ) then -- Check that leave function is hooked if ( private.hooks[map].leave ~= nil ) then -- Call original function private.hooks[map].leave(role) end end -- Remove player from the list private.players[ GetRoleID(role) ] = nil end -- Timer event function private:on_timer_event(map) -- Check that timer function is hooked if ( private.timer_func ~= nil ) then -- Call original function private.timer_func(map) end -- Get current system time local t = os.time() -- Update gifts for i = table.getn(private.gifts), 1, -1 do -- Get a gift local gift = private.gifts[i] -- Check that it's time to give out the gift if ( t >= gift:getTime() ) then -- Give the gift to players for cha_id, role in pairs(private.players) do GiveItem(role, 0, gift:getItemId(), gift:getItemCount(), 4) end -- Remove the gift from the list table.remove(private.gifts, i) end end end -- Set hooks function private:setHook() -- Search for 'after_enter_', 'before_leave_' and timer functions for key, value in pairs(_G) do -- Get a global item name in lower case local name = string.lower(key) -- Player entered a map if ( string.find(name, "after_enter_") == 1 ) then -- Get map name local map = string.sub(name, string.len("after_enter_") + 1) -- Add map to the list private.hooks[map] = private.hooks[map] or {} -- Associate original enter function address with map name private.hooks[map].enter = value -- Set the hook _G[key] = function(role, mapdesc) private:on_player_entered_map(role, mapdesc, map) end end -- Player leaved a map if ( string.find(name, "before_leave_") == 1 ) then -- Get map name local map = string.sub(name, string.len("before_leave_") + 1) -- Add map to the list private.hooks[map] = private.hooks[map] or {} -- Associate original leave function address with map name private.hooks[map].leave = value -- Set the hook _G[key] = function(role) private:on_player_leaved_map(role, map) end end -- Timer if ( private.timer_func == nil ) then -- Search for timer function if ( string.find(name, "map_copy_run_") == 1 ) then -- Number of underscore characters local n = 0 -- Count the number of underscore characters string.gsub(name, ".", function(c) if ( c == '_' ) then n = n + 1 end end) -- Number of underscore characters should be equal to 3 if (n == 3) then -- Set timer function private.timer_func = value -- Set the hook _G[key] = function(map) private:on_timer_event(map) end end end end end -- Check that timer hook is enabled if ( private.timer_func == nil ) then print("pkodev.gift: Warning, suitable timer function is not found!") end end -- Add a gift to the list function public:addGift(item_id, count, h, m, s, mon, day, year) -- Check item ID if ( string.lower(GetItemName(item_id)) == "unknown" ) then -- Do not add a gift return -1 end -- Check item count if (count <= 0) then -- Do not add a gift return -1 end -- Get item timestamp local gift_timestamp = os.time{ month = mon, day = day, year = year, hour = h, min = m, sec = s } -- Check that item time is not expired if ( gift_timestamp <= os.time() ) then -- Do not add a gift return -1 end -- Get an ID for new gift local gift_id = public:getGiftNumber() -- Create a gift local gift = Gift:new(gift_id, item_id, count, gift_timestamp) -- Add a gift to the list table.insert(private.gifts, gift) -- Return gift ID return gift_id end -- Remove a gift by ID function public:removeGift(gift_id) -- Find a gift in the list for index, gift in pairs(private.gifts) do -- Check gift ID if ( gift_id == gift:getId() ) then -- Remove the gift from the list table.remove(private.gifts, index) -- Gift removed return true end end -- Gift not found return false end -- Get gift number function public:getGiftNumber() return table.getn(private.gifts) end -- Print a list of gifts function public:printGifts() -- Get gift number local n = public:getGiftNumber() -- Check that there are gifts in the list if (n > 0) then -- Print all gifts for index, gift in pairs(private.gifts) do -- Get time data local temp = os.date("*t", gift:getTime()) -- Print a gift print( string.format( "pkodev.gift: %d) [Gift ID: %d] - %s x %d at %02d:%02d:%02d %02d/%02d/%02d", index, gift:getId(), GetItemName(gift:getItemId()), gift:getItemCount(), temp.hour, temp.min, temp.sec, temp.month, temp.day, temp.year ) ) end else -- No gifts print("There are no active gifts!") end end -- Enable the necessary hooks for the gift system to work private:setHook() setmetatable(public, self) self.__index = self; return public end -- Create an instance of the gift system giftmod = GiftSystem:new() -- Add gifts to the queue giftmod:addGift(863, 1, 16, 6, 30, 11, 9, 2022) -- 'Gem of Rage' x 1 at 16:06:30 11/09/2022 giftmod:addGift(684, 1, 16, 7, 25, 11, 15, 2022) -- 'New Sheepskin Scroll' x 1 at 16:07:25 15/09/2022 giftmod:addGift(1849, 99, 12, 7, 0, 11, 18, 2022) -- 'Cake' x 99 at 12:07:00 18/09/2022 -- Print queued gifts giftmod:printGifts() 3) Open file "GameServer\resource\script\monster\mlist.lua" and put at the beginning the line: 4) Start GameServer.exe. You should see in it's console window the following lines: pkodev.gift: 1) [Gift ID: 0] - Gem of Rage x 1 at 16:06:30 11/09/2022 pkodev.gift: 2) [Gift ID: 1] - New Sheepskin Scroll x 1 at 16:07:25 11/15/2022 pkodev.gift: 3) [Gift ID: 2] - Cake x 99 at 12:07:00 11/18/2022 5) Configure the system at your discretion (see the "How to use" section below); 6) The installation process is complete. How to use 1) You can define a queue of gifts at the end of "pkodev.gift.lua" file using giftmod:addGift() command: local gift_id = giftmod:addGift(item_id, number, hour, minute, second, month, day, year) Also you can add a gift to the queue using GM-command*: &lua_all giftmod:addGift(item_id, number, hour, minute, second, month, day, year) *Note: After GameServer.exe restart gifts. which were added using GM-command, will be removed. 2) You can remove pending gifts from the queue using giftmod:removeGift() command: local success = giftmod:removeGift(gift_id) -- Where 'success' can be 'true' or 'false' Where variable gift_id is ID of pending gift which was returned from giftmod:addGift() command. 3) You can get an amount of pending gifts using giftmod:getGiftNumber() command: local number = giftmod:getGiftNumber() 4) Finally, you can display pending gifts in the GameServer.exe window: giftmod:printGifts() That's all! Download the script of the system (3 KB)
  10. Hello again guys, I created this video with the idea of promoteing again the tales of pirates private server community. Here you can see my web service related post: Server Files/Game/My Webserver consumers: https://drive.google.com/open?id=1A4O161L36d0qJx2AnCksm5crg0Nktdt5 Microsoft SQL SERVER 2014/2017 Installation Guides i used: Good Lucks guys
  11. SERVER DISCORD - (ENTER NOW) https://discord.gg/VKxddn5q SERVER WEBSITE ...Under Construction... About Paradise Isle GamePlay: Dear Players, Paradise Isle Online is an international server based on medium - hard gameplay. The team works to create an stable and long term server that can bring the nostalgic felling, but at the same time, make available to all players new features and improvements that will make the server even better... The server is under construction, but the BETA TEST is planning to open in some weeks. All detais and informations about the server construction will be posted in DISCORD CHANNEL. So, stay tuned for all the news and INVITE your friends to join in this new "Paradise Isle". Why should you play this server? You should play this server because it will bring the nostalgic gameplay to you! You're able to enjoy an good, stable and security server files. Furthermore, you will find some new features that will make the server even better. Unlike other servers that made sudden changes and couldn't keep the game stable, here we think exactly the opposite. The TOP COMMUNITY knows that the "simple is good", that's why almost players are from original TOP server and old players. The server has an experienced development team that is capable of solving the most diverse server problems. We will be working to resolve any type of issue as quickly as possible. So, i hope you gonna play and enjoy the server! Server Rates: Max Level: 70 Solo EXP: 3x Party EXP: 15x (The same exp you win solo will be gained when you're in party) Ship Exp: 15x Drop Rate: 2x Fairy Exp: 1st Gen (Fairy Box) . Exp 20x . Lv max 41 . Level Up with +1 or +2 stats fruits . Marriage system to create 2nd gen 2nd Gen (Marriage System) . Exp 20x from level 5 to 15 . Exp 10x from level 15 to 41 . Lv Max 41 . From level 5 to 15 you can level up using +1 or +2 stats fruit .From level 15 to 41 you can ONLY use +2 stats fruits . From level 41 to 50 you can ONLY use improved fruits Server Equipments: Initial Chest (Golden box) Incantation Chest (level 40) . Original drop Evanescence Chest (level 50) . Original Drop Enigma Chest (level 60) . Original Drop Chest of Forsaken City (sealed level 35) . Original drop + Orignal method to remove the sealed Chest of Dark Swamp (sealed level 45) . Original drop . Bow available Chest of Demonic World (sealed level 55) . Original drop . Bow available Chest of Enigma (sealed level 65) . Original drop . Bow available Unseal 45 . Original way to remove the seal . Bow available Unseal 55 . Original way to remove the seal . Bow available Unseal 65 . Original way to remove the seal (but, you need only 3 kals instead 5) . Bow available Chaos Crownstone, Chaos Pawstone, Chaos Clawstone, Chaos Framestone . Original Drop . Chaos Crownstone isn't available Athena, Hestia, Poseidon, Apollo, Hermes, Hephaestus Stones (Equipments level 70) . Original Drop . Athena Framestone change PR from 18 to 22 . Apollo Framestone change PR from 20 to 24 Server Gems: Sockets . Max Slots = 3 Refining Gem . Max Level = 4 Normal Gems: Spirit, Shadow, Shining, Glowing, Lustrious, Explosive, Furious, Fiery . Max level = 4 Broken Gems: Rage, Colossus, Soul, Wind, Striking . Max level = 3 Cracked Gems: Rage, Colossus, Soul, Wind, Striking . Max level = 3 Unique Gems: Rage, Colossus, Soul, Wind, Striking . Max level = 2 BD Gems: Eye, Soul, Heart . Max level = 1 Server Mazes: Forsaken City (FC) - Every 3 hours Changes: . FC 01 = increased refining gem drop from 0.2% to 0.3% || . FC 03 BOSS = added the universe purse 1% drop Dark Swamp (DS) - Every 3 hours Changes: . DS 03 BOSS = added the universe purse 1% and refining gem 100% drop Demonic World (DW) - Every 3 hours Changes: . DW1 CHEST = increased kal runestone drop from 3.3% to 3.5% || . DW1 AND DW2 BOSSES = added the universe purse 1% drop CHAOS ARGENT (CA) - 2 times a day – (08:00 / 20:00) Changes: . Can’t enter in Party || . Penality of 2 minuts if your char relog || . No need honor, reputation and money to enter || . Prize: original - Chest . Increased refining gem drop from all chests from 2,5% to 3% . Expert chest, gem of colossus and gem of rage were removed and universe purse was added 1.5% drop - Moobs . Increased refining gem drop in lv 80 - 82 Phantom mobs from 1% to 1.2% Server UPDATES: Argent Teleporter: . Added options to teleport to: Abandon Mine, Rockery, Andes, Valhalla, Solace, Chaldea, Thundoria Castle. Icicle Teleporter: . Added options to teleport to: Skeleton Haven, Icespire Heaven, Atlantis Heaven, Thundoria Castle. Shaitan Teleporter: . Added options to teleport to: Barren Cavern, Oasis Haven, Thundoria Castle. Coral Vendor – Lamon . Moved from original place to argent city Grocery – Jimberry (Argent - 2231,2729) . Added all classes skills WNSS . Original drop and rates OSS . Original drop and rates . Added gem of soul Carrer and Fortune Lot . Added the option to obtain stack Useals Level 35 added as reward for 1st Class Quest . Complete 1st Explore Quest and Win: Mantle of the Naga - Armor Tooth of Specter - Dagger . Complete 1st Herbalist Quest and Win: Robe of the Venom Witch - Armor Staff of the Avenger - Staff . Complete 1st Hunter Quest and Win: Robe of Death - Armor Touch of Death - Gun . Complete 1st Swordsman Quest and Win: Armor of Revenant - Armor Sword of Grief - Sword Lifeskills added too all characters created . - Lv1 Mining - Lv1 Woodcutting - Lv1 Fishing - Lv1 Salvage - Lv1 Set Stall If you want to improve those skills, story quest is the way to obtain more life skill points. Offline Stall System You're able to set up your stall and close your account. The system will keep your stall online and ready to have sales. More custom updates will come according the server development.... FAQ WHEN THE SERVER WILL OPEN? The team is working in this project for 2 months. The server file and host are ready, but the website is under development. Moreover, the server is in advertise phase. So, we need more players joining discord to set a BETA start date. THE SERVER WILL HAVE BETA? Yes, we gonna have BETA when the discord have players waiting for the server opening. Rewards will be given for BETA players, so, keep tunned! THE SERVER IS SECURE? Yes, we have a big team working in this project. Of course we gonna have attacks from members of TOP WORLD, but we are ready to solve all issues. THE SERVER WILL HAVE AN GOOD HOST? Yes, we have one of bests dedicated machine in OVH host. The machine will support a lot of players at the same time to avoid issues with lag. THE SERVER WILL HAVE REPUTATION SYSTEM? Yes, the reputation system help the server economy and the non-mallers players. THE SERVER WILL HAVE MALL SYSTEM? Yes, the mall system is importat to keep the server online and for the server economy too. However, it won't be "pay to win" as many server do. . . . . SERVER DISCORD https://discord.gg/VKxddn5q
  12. ~ Stars Pirates Online ~ Discord Channel Website (Under Construction) Instagram About Stars Pirates Online: Dear players, Stars Pirates Online is an international server based on medium/hard gameplay. The team works to create a stable, long-term server that can bring the nostalgic feeling, but at the same time, make available to all players new features and improvements that will make the server even better... The server is under construction, but BETA TEST is scheduled to open on October 8th. All details and information about building the server will be posted on our Discord Channel. So, stay tuned for all the news and invite your friends to participate in this new fun. Server Rates: Max Level: 100 Solo EXP: 7x Party EXP: 12x Ship EXP: 7x Drop Rate: 5x Fairy EXP: Lv1-50 = 100x | Lv51-75 = 10x Server Equipments: Unseals Lv45/55/65 in NPC Unseals Lv75 exchange for Kal Runestone in NPC Unseals Lv85 donation or random chest upon reaching level 100. Kylin Set BD Set Server Gems: Gem caped level: 6 Normal Gem Broken, Chipped, Cracked Gem Unique Gem BD Gem Gr8 Gem Azraels Gem Advanced Gem Server Features: Guild will be caped to 10 players IP & MAC detecting will be implement in portals and mazes All Tickets removed, only ticket to argent works Maximum gold in inventory is 1.5 Billions Fairy level: 51 (Normal fruit) and 75 (Improved fruit) Balanced Class: All original skills were retained with minor tweaks on stats and skill output to ensure that all classes are balance to ensure our players getting the best PK experience. Maps: Argent City, Fantasy Town, Icicle Castle. Shaitan City (removed). Forsaken City, Dark Swamp, Demonic World. Chaos Argent, Arena Island, Chaos Dream, Chaos Icicle.
  13. •Fallen Relics Online| 24/7 •Type: Medium Pk Farm • Server Rate: -MaxLv 100 -MaxLV Pet : 100 whit mall and improved 150 -Solo : x35 -Party : x75 -Drop : x45 -Pet Grow : x8000 -Ship exp : x5000 •Swings •Guild Leveling •Guild Bank •Guild Name Color •In Game Mall •Rebirth 4 •New App Every Week •Website: https://oldswordpirates.com/fro/index.php?act=register •Youtube:
  14. Hello Folks! I will be sharing with you, an amazing site that I discovered a month or so back. ProfitServer The servers are fast, reliable, and provide quality service. I am using them, personally. The tickets are responded immediately at times. And very friendly support. If you are looking for a cheap VPS or Dedicated server to buy, then go no further, Profitserver has you covered. Take a look at the pricing. They provide windows server 2008 or 2012 R2. You can fine tune your own server.(The servers are located in Russia btw, great for people living in Russia) So what are you waiting for? Go ahead @ProfitServer and get yourself the best servers for cheap! :thumbsup: Here is a referral link. https://profitserver.ru/en/?partner_id=13605 If you have any questions regarding this, let me know.
  15. Microsoft SQL Server 2014 Express Microsoft SQL Server 2014 Express is a powerful and reliable free data management system that delivers a rich and reliable data store for lightweight Web Sites and desktop applications. Download from official Microsoft website
  16. Greetings, fellow developers I'd love to ask if any of you know what kind of hashing algorithm the server configuration files are using, I want to write a password generator stand-alone application and allow for more secure passwords as well. I'm aware that the AccountDB has a password column that is using and MD5 hash, is there a way to use a different hash; like including my own salt column for passwords and users can then use that password to enter instead of an MD5 one? Overall my goal is to write a stand-alone application to do that all at once, just need to make sure what the hashing algorithms are and if giving my databases a salt-column will help with making it even more secure. Best regards, Jaquemon.
  17. How to create an account 1) Open MSSQL Management Studio. Connect to SQL Server and create a new query by pressing 'New Query' button on tool bar or hotkey CTRL + N. 2) Enter the following SQL Query: USE AccountServer; INSERT INTO account_login (name, password) VALUES ('<Login>', '<Password>') Where: <Login> - Login for new account; <Password> - MD5 hash of password for new account in upper case. You can get MD5 hash for passwords using special services: http://www.md5.cz/ http://www.md5online.org/md5-encrypt.html http://onlinemd5.com/ Example: you need to make account 'PKODev' with password '123456', so you have to execute the following SQL Query: USE AccountServer; INSERT INTO account_login (name, password) VALUES ('PKODev', 'E10ADC3949BA59ABBE56E057F20F883E') 3) If you need GM-account, you have to exequte one more SQL Query: USE GameDB; INSERT INTO account (act_id, act_name, gm) VALUES ((SELECT MAX(act_id) + 1 FROM account), '<Login>', <GM-level>); Where: <Login> - Login for new account; <GM-Level> - GM level of the account. Example: USE GameDB; INSERT INTO account (act_id, act_name, gm) VALUES ((SELECT MAX(act_id) + 1 FROM account), 'PKODev', 99); As the result, we have created a new account with GM level 99.
  18. Guest

    Servers Advertising

    Hi again! Dear Forum Members, due to a considerable amount of requests, Servers Advertisement section has been made. Servers Advertising The section consists of two subsections: Russian servers and English servers, which accordingly divide by 3 sections: Stable, Under Beta and Opening Soon Servers (not relevant). Stable Servers In this section you should advertise your server just if it's been running for quite a long time so far without any wipe. You can move threads from "Under Beta" and "Opening Soon" to this section if you'd like to. Under Beta In this section you should advertise your server just if it's either under Closed or Open Beta test. You can move threads from "Opening Soon" to this section if you'd like to. Opening Soon In this section you should advertise your server just if it's currently under development and players are unable to play it. Model logic how the section works: You have an idea to open the server, you search for a team therefore and start the development. At this point you can create a thread in "Opening Soon" section. After the development gets to the final stage you make a decision of making a beta test. You have to notify the moderators and your thread will be moved to "Under Beta" section. As soon as the beta ends (you've done fixing different bugs or errors), your thread is moved to "Stable Servers". Section is being checked every day by moderators to find out servers that don't exist. For example, your current server's advertisement is located in "Stable Servers" section when in fact it hasn't been online for quite a while. Then your advertisement will be deleted, since it doesn't meet the "Stable Servers" section's requirements. You can create an advertisement for your server if you follow some simple rules: One server - one advertisement; One user - one server; Only administrator of the server can create a thread; Your server meets the section's requirements (not relevant); Thread's name should be the same as server's name; Advertisement should include the whole description of the server: name, logo (if you have one), status, website and forum (if you have one) links, version, rates, feature list, useful information; Server's description should be written on an accessible language. If your server changes its status, like, beta test came to its end and you've decided to close the server, then you have to inform the moderators. They will either move it to another section or delete it. Thread is open for the further discussion. You're welcome to ask questions or give ideas in the comments. Thank you and best of luck!
  19. Hello, I follow up some guides from this forum, and I create my own private server ! Thank you ! Question is: How to create max stats items like swords, armor, etc. I'm kind looking for combination of gems and every thing by commands or something to have the strongest weapons and armor. Thank you in advance.
  20. Who can help me, skills pet dont work :c
  21. Hello everyone, I'm Mathew advanced player of top, but newbie "DEV", I had idea with my friends to make PKO server just for 5 people for co-op camping, but no one wants to host server on his own, cuz of 24/7 pc working and electricity payments, so we get together 15$ and we bought VPS server (spec in spoiler). My experience with KOP/PKO/TOP servers was about 8 years ago with sql2000 and hamachi, but for now, we want 24/7 server on VPS without any additional programs that all about the story Dropbox link: there you can find all files that I config and working with. Problem: 1-No one can connect to host, (timeout) (atm we are using IPchanger and start.bat) [my friends] 2-I'm OSx user so I can't use start.bat, maybe someone knows this kind command/file for OSX?? 3-I don't know how to properly create/config website, (i tried with all guides on the forum) Questions: 0- is it host provider problem or just server config ??? (i tried same config on tungle and it was workig ...) 1-how can I make KOP/PKO/TOP shortcut but without laucher/autoupdater/ipchanger/start.bat but with VPS IP include? 2-If its possible, autopatcher-without website (on VPS) 3-How to add new functions to PKO server files, (i tried to add double exp for weekends, but when I added it to exp_and_level.lua, we didn't get exp from anything, GM either. 4-how to add Cooldowns on AMPs,Potions,etc. 5-Do I need to set DNS on VPS AccountServer GateServer GroupServer GameServer VPS SPEC: OS: Windows Server 2012 R2 COREspd: 1vCore x2GHz Storage: 50GB SSD Internet spd 100mb (5ms from host to player) Bandwidth limit 99TB RAM: 2GB Ports: OPEN for guide purpose let VPS ip be:77.77.77.77 (ipv4) DISCORD: Ajoj#1945 Skype: Sillvar
  22. Hello Friends! I've started to work on private server. I want to create something really good! I'm open for suggestions what i should add or change! At the moment i can't say anything about rates. But it won't be very hard server. I already have a small vision of how it will look like. I hope you enjoy it! Every1 who want to help please join my discord: https://discord.gg/tHmkvEs Thanks, Tosiek
  23. Yudha

    Free VM/VPS

    Intel Xeon E3-1230 V3 3.30GHZ 4C/T 8GB RAM DDR4 500 Mbps [RDP Details] IP: 69.64.41.109 User: VM01 Pass: VM01 -Free Service "As Is" -Use it at your own risk brought to you by www.lostparadise.online
  24. Hello, I ve got a question about birthplace to spawn character as: In Spring Only. Currently its on Argent,Shaitan,Icicle. So when you create character you click on argent you spawn there. I want to make when you click any ,argent,shaitan,icicle it spawns in Spring. How can I make that? Please help!?
  25. V3ct0r

    Server rates

    Server rates In this guide I will tell you how to change server rates. To change rates open file variable.lua (Server\resource\script\calculate\) and find variables: EXP_RAID = 1 -- Experience rate MF_RAID = 1 -- Drop rate RESOURCE_RAID_ADJUST = 1 -- Resource drop rate TEAMEXP_RAID = 1 -- Party experience rate ELEEXP_GETRAD = 1 -- Fairy growth rate In that case all rates are equal to x 1 How to add rate for Ships: 1) Add in variable.lua (see above) new variable SHIP_RAID. It will store rate for ship experience: SHIP_RAID = 1 -- Ship experience rate Ship rate is equal to x 1 in that case 2) Open file exp_and_level.lua (Server\resource\script\calculate\) and find function GetExp_PKM(dead, atk). Look below for local ship_expadd = math.floor( math.min(7, (dead_lv / 10 + 2) ) ) and replace it with local ship_expadd = math.floor( math.min(7, (dead_lv / 10 + 2) ) * SHIP_RAID) Then save changes. Now you can specify rate for ship experience. How to make auto rates: You could make rates update automatically depending on your conditions. For example depending on a day time or week day. Let's make so that rates would increase by x 2 every weekends. 1) Experience and ship experience (EXP_RAID and SHIP_RAID). Open file exp_and_level.lua (Server\resource\script\calculate\) and find function GetExp_PKM(dead, atk). At the beginning of the function add the following code: function GetExp_PKM(dead, atk) local day_of_week = GetNowWeek() if day_of_week == 6 or day_of_week == 0 then -- At weekends rates are equal to x 2 EXP_RAID = 2 SHIP_RAID = 2 else -- At weekdays rates are equal to x 1 EXP_RAID = 1 SHIP_RAID = 1 end -- original code ..... end 2) Team experience (TEAMEXP_RAID). In the file exp_and_level.lua (see above) find function ShareTeamExp(dead, team_atker, dead_exp, The_Killer). At the beginning of the function add the following code: function ShareTeamExp(dead, team_atker, dead_exp, The_Killer) local day_of_week = GetNowWeek() if day_of_week == 6 or day_of_week == 0 then -- At weekends rates are equal to x 2 TEAMEXP_RAID = 2 else -- At weekdays rates are equal to x 1 TEAMEXP_RAID = 1 end -- original code ..... end 3) Drop rate (MF_RAID). Open file skilleffect.lua (Server\resource\script\calculate\) and find function Check_Baoliao(ATKER, DEFER, ... ). At the beginning of the function add the following code: function Check_Baoliao(ATKER, DEFER, ... ) local day_of_week = GetNowWeek() if day_of_week == 6 or day_of_week == 0 then -- At weekends rates are equal to x 2 MF_RAID = 2 else -- At weekdays rates are equal to x 1 MF_RAID = 1 end -- original code ..... end 4) Resource drop rate (RESOURCE_RAID_ADJUST). In the file skilleffect.lua find function Check_SpawnResource(ATKER, DEFER, lv_skill, diaoliao_count, ...). At the beginning of the function add the following code: function Check_SpawnResource(ATKER, DEFER, lv_skill, diaoliao_count, ...) local day_of_week = GetNowWeek() if day_of_week == 6 or day_of_week == 0 then -- At weekends rates are equal to x 2 RESOURCE_RAID_ADJUST = 2 else -- At weekdays rates are equal to x 1 RESOURCE_RAID_ADJUST = 1 end -- original code ..... end 5) Fairy growth rate (ELEEXP_GETRAD). Open file functions.lua (Server\resource\script\calculate\) and find function Give_ElfEXP(role, Item, Type, Num). At the beginning of the function add the following code: function Give_ElfEXP(role, Item, Type, Num) local day_of_week = GetNowWeek() if day_of_week == 6 or day_of_week == 0 then -- At weekends rates are equal to x 2 ELEEXP_GETRAD = 2 else -- At weekdays rates are equal to x 1 ELEEXP_GETRAD = 1 end -- original code ..... end That's all! If you have any questions you can ask them here.
×
×
  • Create New...