Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 06/10/19 in all areas

  1. Hello, I don't really know if someone else pointed it out but (if not) there you go. There is really ugly yang-bug in guild building code. Open cmd_gm.cpp, go to the do_build function and navigate this kind of code: if (test_server || GMLevel == GM_PLAYER) // °ÇĽł Ŕç·á ĽŇ¸đÇϱâ (Ĺ׼·żˇĽ­´Â GMµµ ĽŇ¸đ) { // °ÇĽł şńżë ĽŇ¸đ ch->PointChange(POINT_GOLD, -t->dwPrice); Looks ok, right? Not really. dwPrice is typed as DWORD. It's never a good idea to subtract unsigned value. That will not cause any damage if your PointChange function takes int as an argument but once you decide to change it to f.e long long, there you have live example: [Hidden Content] Mitigation: Just cast the value to int/long long: if (test_server || GMLevel == GM_PLAYER) // °ÇĽł Ŕç·á ĽŇ¸đÇϱâ (Ĺ׼·żˇĽ­´Â GMµµ ĽŇ¸đ) { // °ÇĽł şńżë ĽŇ¸đ int iPrice = static_cast<int>(t->dwPrice); ch->PointChange(POINT_GOLD, -iPrice); Regards
    2 points
  2. Your playersettingmodule.py is asking for pity...
    2 points
  3. I would recommend you to try building your cores with ASAN (address sanitizer) enabled. I can't promise anything, but it can help you in desperate times... I remember having the weirdest crashes when AE opened. There was some heap-use-after-free error related to our multilanguage and battlepass systems that we would never been able to find without ASAN. (I don't think this is the case right here, just wanted to mention it as an example.) I think its worth a try. There are some nice article about it on the internet so I'm sure you can manage it, but if you have some questions about it I will try to answer them (despite I'm not an expert user of it).
    2 points
  4. M2 Download Center Download Here ( Internal ) Includes PSD login Cuttet PNGs login Background animation login PSD ingame Cuttet PNGs ingame Animation HP and MP Skill Icons Code is not included! Download: [Hidden Content] Id love to see this one coded and on an actual server. If you use it please let me see so i can take a look!
    1 point
  5. M2 Download Center Download Here ( Internal ) [Hidden Content] It's so simple but I'm using when I add a new system. It's checking empty and used enums and writing to file. settings/packet.h: Copy your tables.h and packet.h enums. settings/packet_data.h:
    1 point
  6. M2 Download Center Download ( Latest Version ) Greetings! The new beta is finished! I'm proud to present r71480. This time a few things have changed. And in this revision, we have a lot of new stuff. In the following I'll provide the download link along with the things I'd love you to test. *** DISCLAIMER *** The core is marked as stable. Anyway, I'll make it clear that I'm not responsible if you use this core since I can't give a warranty that I fixed every single security breach that potentially could happen - that's totally impossible. But we all together made the source great and secure so every public issue is fixed by now. You can use it in production environments now. So... What's new? boot-trigger for quests With this you can execute commands, timers, and all the stuff you'd like to have just on boot-time! revisioning of the 'unique class' (+ a ton of posibilities) added the functionality to create unique-groups temp-Variables for quests upgraded all libs moved completely to the newest clang version fixed some big security issues in the source code fixed the ingame ban and unban commands unified tables and gave them a new way: unify! file clean-up revisioned the makefiles gave the source a new, easier structure removed all external dependencies just install them by ports.. No external-folder necessary! removed 'boost' dependency (no boost lib needed yay) partial implementation of the wolfman (claws etc. are added, needs review) And basically everything that has been offered in the earlier versions of the vanilla core. Nothing should be missing. And if you miss something, just feel free to tell me! What needs testing? There are few things I'd love you to test out: Please check if the core is vulnerable to any security breaches you may know (also the public ones, don't know if I missed something) Please test out the new features! I'd really love to know if the new unique-functions and the boot-trigger does the job. Explanation to new features: Unique with container support Unique has evolved! This time you have a few new possibilities. Don't know what unique is? Here's a short explanation: With the unique-questfunctions you can spawn or set mobs, npcs and now even players to have a unique name. This name is stored into a unique-container. You can access this container and get all the vid's by their unique name (also called: the key) So for example you can spawn a boss with a key. Later on you can check if this specific mob has been killed or not. Or you can set his hp on-the-fly. There's basically no limits! And now with the revised system you'll have even more options. The new unique system works with containers. By default there are two containers reserved: __DEFAULT__ and __CHARACTER__. The first one is for all the basic stuff. And the second one is reserved for players. Now, as you may have noticed, there's a default one which means that the container-stuff is optional. If you just use the unique functions without specifying a container, it'll just use the default stuff. But you CAN use your own containers just as you want to. You can create, delete and list all the containers running. There is a list with all the quest-functions down below. boot-trigger This is pretty self-explanatory. With this release you can use "when boot begin" to specify a block of code that will be executed once the core has been booted. temp-variables With the new temp-variables you can set and remove player-specific variables. They are stored in the core and not written to disk or database. So be careful because they might get dropped once the core shutdowns. It's just a quick storage for people who want to have something like a cache for quick access. new quest functions nil unique.spawn_unique(string key, int vnum, string pos=unused, string container=optional) nil unique.set_unique(string key, int vid, string container=optional) nil unique.purge_unique(string key, string container=optional) nil unique.kill_unique(string key, string container=optional) bool unique.is_unique_dead(string key, string container=optional) int unique.get_hp_perc(string key, string container=optional) nil unique.set_def_grade(string key, int def, string container=optional) nil unique.set_hp(string key, int hp, string container=optional) nil unique.set_max_hp(string key, int maxhp, string container=optional) int unique.get_vid(string key, string container=optional) bool unique.exists(string key, string container=optional) table unique.get_container_list() this prints out all the unique containers table unique.get_container_list(string key) this prints out all the vids in the unique-container "key" nil unique.remove_container(string key) removes a whole container (flushes it when called on standard containers) nil pc.temp_var_set(string key, string value) string pc.temp_var_get(string key) nil pc.temp_var_delete(string key) Thanks a lot for participating! If there are any questions, this is the topic related to it. Further releases will be made public here too! If you'd like to contribute, just post code additions here. Changelog older changelogs Download Useful information: All necessary libs are included. If you're building your own vanilla binary you'll first have to move into every project of the Internal directory and rebuild the libs. The main makefile is not adapted yet, I was too lazy (ps: Still too lazy!) rev 71480 see this post: rev 70220 STABLE Core Sourcecode M2D Storage Password for the archive is: vanilla Password for older source archives: vanillamt2 Best Regards Vanilla
    1 point
  7. M2 Download Center Download Here ( Internal ) hello guys i have a small farmmap for you the size of the map is 2x2. Its nothing special but i hope you enjoy it Download: pw: reco [Hidden Content]
    1 point
  8. Hey guys, i was thinking about how i Can change the calculation of elemental bonuses, for example strong against Fire but i really dont know since official servers did something very special there.. Below i listed some examples, hopefully someone Can help Start Hit Damage without wearing a pendant (having 0 % ATT_FIRE) = 663 Player wearing Pendant+1 (With 1% ATT_FIRE) == 811 Hit Damage Player wearing Pendant +20 (With 20% ATT_FIRE) == 906 Hit Damage Player wearing Pendant +100 (With 100% ATT_FIRE) == 1314-1390 Hit Damage Player wearing Pendant +200 (With 200% ATT_FIRE) == 1800-1900 Hit Damage those values are from official Server i think they started the calculation of the bonuses with a Base value like: 25% of the Damage from for example strong against animals and After that every % is just a small addition. We Can see that if we multiply the value you get from +1 Pendant its nearly the Damage of a +200 Pendant!) +1 = 811 +200 = 1900 As i did my research most of the players that play in official Server (lvl115+) and Even youtuber with 10.000 subscriber said the Basic value is the same Damage as you would get from having for example 25 % ATT_ANIMAL
    1 point
  9. You're the only one that actually replied here to this. No PMs, nor anything else. I can do another build but as I said, the effort is not worth it if there's only 3-4 people using it... If there are more people interested, please let me know.. At least a pm or something so I can see that there's still interest in this project.
    1 point
  10. Added a small fix about 0.X% in mob_drop_item.txt now you can use 0.X% in the txt files before to convert it but there is a limit. the limit depend on the DROP_SCALE_TABLE value (CONSTANT) for example : DROP_SCALE_TABLE = 1000 -> min chance to set in txt 0.1% (100%/1000) DROP_SCALE_TABLE = 10000 -> min chance to set in txt 0.01% (100%/10000) obv DROP_SCALE_TABLE must be same value of DROP_SCALE_TABLE in common/length.h (SEE THE THREAD MESSAGE TO KNOW WHAT IS THIS CONSTANT)
    1 point
  11. Rules §1 Language (1.1) Language The language in this board is english. If you want to post something in your own language always add an english translation. The only exception for this rule is this section: Private Servers Best regards Raylee
    1 point
  12. For cube.cpp ch->PointChange(POINT_GOLD, -static_cast<int>(cube_proto->gold), false);
    1 point
  13. Hi, the same problem can be found in the cube_proto. ch->PointChange(POINT_GOLD, -(cube_proto->gold), false); cube_proto->gold is unsigned by default.
    1 point
  14. First of all there might more than one reason why your game crashes. Your cores gives 3 outcomes where: 1. Malfunction from lua level. If you want to put this under deeper diagnosis consider changing optimization flag: [Hidden Content] Then gdb should give you more details. 2. Don't use TR1 - it's gonna be deprecated soon (as I know) and since C++11 standard has been released it's pointless to use TR's features (Technical Report was a bridge between C++03 and C++11). Update your gcc, switch from TR1 to stl. That will probably solve this error (worked for me). 3. The third error is a bit tricky and might be tough to figure. Your core shows that there was not enough memory to be allocated thus that strange abort. I would not consider that part as an error-prone - that was probably random code area where system ran out of memory. You should look out for a leak somewhere else. And additional question. Did you disable checkpointing? Is the answer is 'yes' switch it back immediately. If you won't be able to solve those crashes and will be really eager to get it done - send me PM. Keep in mind tho that if there is gonna be a lot of diagnosis coming out I won't do for free. Good luck
    1 point
  15. If you just want to use locale_newcibn, change this function: root/introLogin.py #def IsNEWCIBNPassPodAuth(): #global NEWCIBN_PASSPOD_AUTH #return NEWCIBN_PASSPOD_AUTH def IsNEWCIBNPassPodAuth(): return False Or change the path name with locale/de instead of locale/newcibn.
    1 point
  16. There's almost none interest in the project from the community so I stopped releasing a new build. If there's enough interest, I'll make another release but as things stand right now the time and effort put into this project just isn't worth it if only 3-4 people really use it..
    1 point
  17. 2 days ago the Gameforge "Metin2 international" page spoiled these 2 weapons for an up-coming update. My question is whether someone has already found something in the various sources or not.
    1 point
  18. Again, while the Worldcup is going on, the European Parliament is trying to pass a questionable law. Should this law be passed, everything you upload to the internet will be analysed - automatically by a potentially error-prone algorithm. If there is any doubt, your upload will never reach the world wide web! Imagine, you want to upload a picture of your dog, or your family, and you notice the upload failed just because an algorithm decided that YOUR picture already exists and is copyrighted. But that is not all! YOU can help stopping this! Sign the petition and send this message to all your friends! You can find more information under: https://savetheinternet.info/ Link to the petition: https://www.change.org/p/european-parliament-stop-the-censorship-machinery-save-the-internet (German) Discord Server: https://discord.gg/qgbQc86
    1 point
  19. M2 Download Center Download Here ( Internal ) Hi, I was bored, and I started thinking how to do so they could not use the cheat-engine on a client, well, here I come to bring you the code in python. import os import thread import time def procesoss(): try: while 1 == 1: Black_List = ["inyector.exe","cheatengine-x86_64.exe","ollydbg.exe","skype.exe"] # here the programs to block, you can see the full name in cmd and put "tasklist" for p in os.popen("tasklist"): procesos = p.lower() for sema in Black_List: if procesos.find(sema) != -1: p = procesos.split() os.popen("taskkill /im %s /f" % p[0]) time.sleep(3) # wait 3 second to check again except: time.sleep(3) # wait 3 second to check again thread.start_new_thread(procesoss, ()) I try it, and work. Sorry for my bad english Update*: I change os.system to os.popen and now you can't see the console from windows. regards SeMa
    1 point
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.