Jump to content

UdvAtt108

Member
  • Posts

    15
  • Joined

  • Last visited

About UdvAtt108

Informations

  • Gender
    Male

Recent Profile Visitors

387 profile views

UdvAtt108's Achievements

Apprentice

Apprentice (3/14)

  • Reacting Well Rare
  • Collaborator
  • Dedicated Rare
  • First Post
  • Week One Done

Recent Badges

7

Reputation

  1. Yes it is possible and it can be good and nice method if u can code it perfectly. . I think there is no problem with this method, its a better, secured and performed way, if u dont want to use the mysql connection on the website.
  2. First of all, It is because of the vps request's reaction is slower then local host's reaction, and the packet header error occours when the phase is switching faster then the last phase header receiving on the current phase. It is a general bug in the source. The pro solution is fix the input processor swiching on a running request (packet).
  3. In short, yes. But you have to modify the pycore source. The easyer way, you can link the python core library as static link library, its the most effective way, better performance and your client will be safer a bit.
  4. In ServerStateChecker.cpp file, end of CServerStateChecker::GetEchoReply function: Replace the following: return; with it: free(ReplyBuffer); Edit: Or you can use fixed static variable as buffer, that is should be better in this case.
  5. There is a nice memory leak, that spammed in every 5 seconds and makes high memory usage few hours later... Please, be carefull when you use memory allocations... Easy to fix it, lets correct it.
  6. First of all, did you check client syserr?! If error log is empty, you have to check the tooltip python source for belt supporting. I think your tooltip source does not support the belt item type or that is not correct to show belt bonuses and etc. If u cant find the problem, maybe share the uitooltip.py file with us.
  7. It does no matter on current situation. If we want a rly secure encrypter, we have to go into c++ source, you can make a rly productive system with cython. But it does not need for a simple autologin system, because the login data (password) is always on player's computer, so in a normal situation that is not touchable by 2nd person to steal it. BUT if someone wants crypt his player's password on their pc, here is a posible way like your work.
  8. Why did you overcomplicate this? There are shorter ways like the following: def xor(data, key): input = str(data) no_of_itr = len(input) output = "" for i in range(no_of_itr): current = input[i] current_key = key[i%len(key)] output += chr(ord(current) ^ ord(current_key)) return output secretkey = "mysecretkey" secretpassword = "mysecretpassword" ciphertext = xor(secretpassword, secretkey) print ciphertext decrypted = xor(ciphertext, secretkey) print decrypted print secretpassword == str(decrypted) Anyway good post.
  9. The easier solution is idle checking to check fast actions. You can make an idle checking for horse/mount summon/unsummon function in server source.
  10. You can do it by source code modification at server side. You can make a quest function (lua) to send a shop open command by a shop id and you can add that function to the target pet's vnum in quest (lua).
  11. I cant understand what is that so hard to figure out. You can send cmd to server for example /guildblock 1/0 (on/off), after it you can parse the command on server side. Use the exists quest flag (it is potato level) or you can edit the guild manager to handling this option. for the invite check, you can use that quetflag or that guild manager modification at the invite request. Of course there are so many possible way to make it. These are just quick examples for a beginner...
  12. That is not correct. You can check the argument exists like the following exmaple: if(vecArgs.size() >= 1 && !vecArgs[0].empty()) //if it has to be with one argument if(vecArgs.size() >= 2 && !vecArgs[1].empty()) //if it has to be with two argument if(vecArgs.size() >= 3 && !vecArgs[2].empty()) //if it has to be with three argument etc...etc...etc... Be carefull, because when you would like to get the contained string from vector for example to a const char *, you have to convert the string to char*: vecArgs[0].c_str()
  13. I would like to correct you. ++it is more efficient because it++ need to return a copy of the object then increment itself.
  14. Hi there! It is my homemade version.... I saw this topic and I was curious how difficult it was to do, and it wasn't that difficult. Gl to make it! Hungarian power!
×
×
  • 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.