Jump to content

Mdrst

Moderators
  • Content Count

    81
  • Joined

  • Last visited

  • Days Won

    9

Mdrst last won the day on February 17

Mdrst had the most liked content!

Community Reputation

38 Neutral

2 Followers

About Mdrst

  • Rank
    Pirate

Recent Profile Visitors

1,417 profile views
  1. Were there any errors when running the Guild/GameDB sql scripts? I do not recall having this problem, but make sure to check GameServer logs.
  2. @Skinner Awesome find!!! I never had hope to find the Game Trailer theme, which is sad considering it is my favorite track out of the OST. Here is some hope that we will find Shaitan City theme in the future!
  3. This is supposed to be completely separated from CO - you can use the stability/security improvements from Yatops along with the new features from CO. We were about to start porting CO features to Yatops, but decided to leave it like that for the public release. Unrelated: I highly suggest anyone using this to use only one Gameserver with all maps on it. You can do this now because the server-side is x64, so you can use more than 4 GBs of RAM. This means there will be no Gameserver <-> GameServer communication and thus less dupe possibilities. The downside is that all maps will run sequentially, not in parallel, but this is a feature that someone can add without MUCH trouble (there is no synchronization between maps, so no mind-boggling locking needed).
  4. @V3ct0r Hi! Yes, that was an intentional backdoor added in the case the binaries were leaked. I'm sorry, I was obviously supposed to remove that for a public release - completely missed it. I apologize to all and will reupload a backdoor-free version. Edit: removed backdoors from the download link. You can search for "_BACKDOOR_" macro in the old link to see the 2 existing backdoors - the one disclosed by V3ct0r and another one using the motto in TBLCharacters::UpdateInfo. Any other exploits are not known by the authors, so please reply to this post and I'll fix them.
  5. @RafaelaMartins Check the translation folder (en_US.txt/.res), the name used by the client must match the name in your .cfg (Argent City/Shaitan City/etc)
  6. @RafaelaMartins Sorry, this is a known bug. You are mixing x86 and x64 libraries. Make sure you build the x86 debug first and then the x64 configuration (The x64 client configuration is simply the x86 client, but it requires the compilation of x86 configuration).
  7. @RafaelaMartins Make sure the Utility and AudioSDL are being compiled before the Engine/Client.
  8. YATOPS - Yet Another Tales of Pirates Server/Source As we're leaving ToP development, me and @Snre3n decided to release new features and fixes from our unreleased Yatops (Yet Another Tales of Pirates Server) project. It is essentially the 2016 source (2.7.x?) but revamped. Some details: - Fixed numerous memory leaks in server-side. - Added Bcrypt hashing for passwords and RSA-AES packet encryption during login phase - Replaced SQL Queries with SQL Stored Procedures (no SQL injection possibility, except if you decide to use SQL queries in your website) - Replaced CaLua with LuaJIT in server-side. - Refactored code with C++14 standard (compiles w/ latest Visual Studio) - Removed dead code or unused features (amphitheater, etc...) - Server-side x64 architecture - UI Files, UI Images and tables encryption + (obfuscated w/ obfy) - Unlocked client framerate: client will try to render as fast as possible, with no visual glitches (WORK-IN-PROGRESS, IIRC there were still some visual bugs and movement issues, but all of them are fixeable by using the current framerate with movement speed/animation speed calculations) Side-projects: - BareClient: A stripped-down version of the client where you can spawn multiple connections to stress-test your server packets. (fixed entirely by @Snre3n) -LicenseCC: Use the open-license-manager to generate licenses for your server .exes to redistribute them safely. (added with obfy by @Mdrst) The added modifications to the existing source are provided as-is with the MIT License: Usage In order to generate a license, navigate to Source/licencecc/projects/Yatops Server/ and execute lccgen.exe along with the command-line instructions from here: https://github.com/open-license-manager/licensecc. It will use the private key to generate a license. Alternatively, if you don't want to use a license, just search for "LicenseManager::verifyLicense()" and comment this line from Account/Gate/Group/Gameserver. To compile, run "SymlinkCreator_x64.bat" and then open TOP.sln on Visual Studio. Build debug/release. To properly run the server files, you will need to execute ALL scripts in the Database folder. Execute the "____StoredProcedure.txt" files after all the others. Inside .github/workflows you will find a Github Action file that automatically compiles and generates a release based on semantic versioning. REMINDER: this was all a work-in-progress. Some things are broken. Some things are poorly coded. Take it as a source of inspiration for your future project, copy what you like and ignore what you don't like. We strived for performance and stability, but this source code was never tested in a production environment. Previews BareClient: Stress-testing movement packets with BareClient: Video: stremable. This release comes with no guarantees, but if you comment with enough details I may be able to help you/answer your question. Download here. !!!! <-- CONTAINS BACKDOORS! Download backdoor-free version.
  9. @oldwise1 "In the old days", game studios used to develop their own engine in-house. This is the case for Tales of Pirates: they built everything from scratch using DirectX. This is no longer the case, as even triple-A studios opt for Unity or Unreal. Anyway, back to your question: C++ and Lua. This is all you need in terms of programming languages. The implementation of the game logic is simple, but a difficult and long task. The implementation of the server side is a whole other nightmare. There are libraries and frameworks that can help you nowadays, but all choices must be done with good networking architecture reasoning.
  10. @dragontechi Inside functions.lua, add this to the function CreatChaSkill(role): function CreatChaSkill ( role ) AddChaSkill(role, SKILL_ID, SKILL_LEVEL, 1, 0) -- 1 means that the SKILL_LEVEL will be applied to the skill -- 0 means that we will not deduct a skill point from the character. end
  11. Mdrst

    Exploits

    I can take a look at whatever you are able to reproduce... unfortunately it's the reproducing part that's difficult (either because people don't want exploits fixed or because they only happen in very specific race conditions).
  12. Just wanted to point out that this is not the proper fix, just a workaround. The real fix, IIRC, lies within the respawn queue implementation in C++ SubMap
  13. I meant the server .exes running (terminal/window). Edit: also, you should try using MATENIUS\SERVERP since you said it was working for accountserver. Some versions of SQL server require you to activate TCP connections and pick a fixed port. In that case, you will need to change the IP to something like 127.0.0.1,PORT
×
×
  • Create New...