Jump to content

iMer

Inactive Member
  • Posts

    23
  • Joined

  • Last visited

  • Days Won

    3
  • Feedback

    0%

Everything posted by iMer

  1. Dif to kill the function for 2089M (to allow for a transition period) game_2089M 0010F5C3: 31 90 0010F5C4: C0 90 0010F5C5: 8B 90 0010F5C6: 03 90 0010F5C7: 8B 90 0010F5C8: 50 90 0010F5C9: F4 90 0010F5CA: 85 90 0010F5CB: D2 90 0010F5CC: 75 90 0010F5CD: 22 90
  2. I am looking for an experienced C++ developer to help me debug memory corruption (mainly by reviewing code to see if you can spot any errors). /please/ do not contact me if you dont know what you're doing Related SO question: http://stackoverflow.com/questions/24328193/debugging-lambda-memory-corruption-automatically-watch-object-pointer-in-gdb We can talk about payment privately, I will only pay you if you find the issue though. Reasoning behind this is to prevent people wasting my time and money, I can do that perfectly fine on my own I'd prefer if you'd poke me on skype so we can talk about this easier, pm is fine too though
  3. iMer

    Linux Based r34083

    Got your error right there ;p I also strongly recommend nobody uses this atm. It still has some serious bugs (crashes)
  4. There are even scripts included to automagically do that for you (generate cpp and offsets) still gonna be a lot of work
  5. iMer

    Linux Based r34083

    Another Update fixing a variety of bugs
  6. iMer

    Linux Based r34083

    Update. Finished reimplementing P2P stuff and fixed some bugs.
  7. M2 Download Center Download Here ( Internal ) I asked in the shoutbox and people were apparently interested in helping me test this thing. THIS IS AN ALPHA BUILD. THERE ARE BOUND TO BE BUGS. I DO NOT RECOMMEND USING THIS IN A PRODUCTION ENVIRONMENT That said, some information: I rewrote the complete network layer so far. Nicer packet handling, more modular stuff. It uses libevent so in theory, I could also release FreeBSD, windows and other builds in the future. I might even OSS the whole project, not now though. I am not actively looking for coding help, so please dont ask me to get access to the source. I will either post publicly if I'm looking for people to help me or talk to you directly. The whole project is based on the 34083 source, doesnt have the dragonsoul system or any of the other stuff. Features (incomplete list, offtop of my head): - Gold is using 8 bytes*, new limit is 10.000.000.000.000.000 (yes, that is 10 quadrillion) - Level is using 2 bytes* - usual fixes, syncpos, war, number_ex and such - Some additional quest functions, not all of the ones in my lib, but some of them TODO: - Click me - Enable optimization - ..and more That said, you need to switch out your client and game/db binary, the rest /should/ be compatibly. *there are still some minor things to do like gold in the log isnt 8bytes yet Additional thanks for their help to: tim pompex Download: [Hidden Content] Please report bugs in here or on the bugtracker. Include PROPER describtions as to what you did and what doesnt work. Logs are usually useful too (keep in mind there's a lot of debug stuff being logged in this release)
  8. Fun fact: If your login starts with [ the password is treated as plain text. Of course you wouldn't even get that far with a [ in the login, but whatever..
  9. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) Since I have no use for this anymore whatsoever, I changed the repo to be public. Porting it to the source code should be fairly easy as most of the functions and such are the same (yay for LibM2) It includes: SyncPos fix with automatic ban /war fix number_ex fix HorseVnum and Bonus on Mount via Questflag (horse_summon.horse_vnum, horse_summon.apply_type, horse_summon.apply_value) Damage bonuses (devil, undead) are each calculated seperately. CHARACTER::DropGold just returns GiveExp was rewritten to prevent xp boosts and glitches 6th and 7th bonus cant be put on costumes anymore More quest functions: item2.equip item2.get_attr item2.get_wearflag item2.is_wearflag item2.set_attr npc2.get_level npc2.get_pc_pid npc2.get_pc_vid npc2.select pc2.give_or_drop_item_and_select pc2.send_effect pc2.set_level You may still donate XP to guilds when the guild is max. level You'll always get status points max. priv_empire is modifiable via config change_attr time is in seconds and modifiable via config you can add new/modify existing bonuses via config And some other changes I cant think of right now, just snoop through the source. iMer PS: Check the license. If you use any of that source and publish it (even in binary form) you must credit me.
  10. ported it to libevent and i havent noticed any performance issues yet
  11. As to why you havent seen people do it yet: The network code is using kqueue which isnt available on linux, you have to port it
  12. Desc->BufferedPacket ..is completely useless in the new encryption. (34k+)
  13. The checkpointing thing is a check to see if the process didnt tick (do a full cycle) in x seconds So its basically a check if it got stuck somewhere This can have a multitude of reasons The one I've seen happening is something related to lua and its garbage collector - nothing specific though. Due to the nature of the issue it's hard to pinpoint where exactly its getting stuck.
  14. So I'm currently looking through the source and finding things which arent immediately clear - mostly the network bit. CPacketInfo It's purpose is to do two things 1. Profile/Log incoming packets, how long processing them (the analyze call) took. 2. It stores information regarding to packets, f.e. if there are Sequence bytes at the end of that packet. Packets A packet always consists of: 1 byte Header x byte Data optional 1 byte Sequence Db packets always consist of 1 byte Header 4 byte Handle 4 byte Size x byte Data Sequence Bytes The sequence bytes/sequence table are a static array of a set size. For each DESC (network connection basically) it stores the current position in the sequence table DESC::m_iCurrentSequence and the last 10 elements it recieved (those are for logging purposes only and can be safely removed) DESC::m_seq_vector The sequence byte will always be at the end of a packet. What packet has sequence bytes is set in CPacketInfo. Sequence bytess are only used for packets from client to game. I thought this would be neat for anyone who's interested in this kind of thing I'll add more stuff as I find out about it or think of it.
  15. Incloudibly took 12h to respond to a broken hdd ticket which didnt let the server boot - we switched after that ovh support isnt as bad as everybody tells you a normal sales question i wrote at 3 in the morning got answered around 10 on the same day i personally never had issues with their support and ive been with them for 5 years now Sent from my iPhone using Tapatalk
  16. The number_ex issue is just a division by 0 crash. (the "random()%div" part, div = 0 -> crash)
  17. Let me throw my research for that in here OVH just changed their VPS offers The cheapest one has 10TB @ 100mbit guaranteed for 2.40€ (germany) So, ~24€ for 100TB @ 1GBit (can use OVHs load balancing ip with those) Probably would want to set up a cache on these and just have a global "distribution" server if the files exceed the available storage If you were to want to go really crazy just grab one of these for the backend Then there's Leaseweb: [Hidden Content] Downside it's not as cheap and has no DDoS protection Thats the cheapest in terms of (good quality) bandwidth I've found
  18. So, this isnt exactly related to Metin2. But within this day I had two seperate attacks on two unrelated Metin2 Homepages. People are using WordPress websites to relay requests. access.log looks something like this: 173.236.144.96 - - [22/Feb/2014:00:57:34 +0100] "GET /?2554596=7542239 HTTP/1.0" 403 162 "-" "WordPress/3.8.1; [Hidden Content]" 195.154.120.142 - - [22/Feb/2014:00:57:34 +0100] "GET / HTTP/1.0" 403 162 "-" "WordPress/3.6.1; [Hidden Content]" 8.14.117.89 - - [22/Feb/2014:00:57:34 +0100] "GET /?2852111=9681641 HTTP/1.0" 403 162 "-" "WordPress/3.7.1; [Hidden Content]" 65.98.60.98 - - [22/Feb/2014:00:57:34 +0100] "GET /?8331124=3589667 HTTP/1.0" 403 162 "-" "WordPress/3.4.1; [Hidden Content]" 69.163.171.127 - - [22/Feb/2014:00:57:34 +0100] "GET /?8798433=9569671 HTTP/1.0" 403 162 "-" "WordPress/3.8.1; [Hidden Content]" 67.205.2.183 - - [22/Feb/2014:00:57:34 +0100] "GET / HTTP/1.0" 403 162 "-" "WordPress/3.8.1; [Hidden Content]" 109.168.123.104 - - [22/Feb/2014:00:57:34 +0100] "GET /?2400804=4166790 HTTP/1.0" 403 162 "-" "WordPress/3.5.1; [Hidden Content]" 97.74.144.211 - - [22/Feb/2014:00:57:34 +0100] "GET / HTTP/1.0" 403 162 "-" "WordPress/3.4.2; [Hidden Content]" 216.92.131.44 - - [22/Feb/2014:00:57:34 +0100] "GET / HTTP/1.0" 403 162 "-" "WordPress/3.8; [Hidden Content]" 89.151.73.40 - - [22/Feb/2014:00:57:34 +0100] "GET /?9155553=5259788 HTTP/1.0" 403 162 "-" "WordPress/3.8.1; [Hidden Content]" You can prevent them from overloading your server by simply blocking the WordPress useragent. You do this on nginx via: if ($http_user_agent ~* wordpress){ return 403; } Google also pointed me to this, which has a tutorial for Apache iMer
×
×
  • 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.