Core Developers
  • Content count

  • Joined

  • Last visited

  • Days Won


meko last won the day on May 10

meko had the most liked content!


About meko

  • Rank
    Advanced Member

Contact Methods

  • IRC Nickname

Profile Information

  • Gender
    Not Telling
  1. plugin Hash table

    Version 0.3.0


    This plugin exposes the internal hash table (strdb) to the script engine to provide a key-value store. See documentation on hercules-hashtable/doc/script_commands.txt Download here:
  2. plugin

    View File Hash table This plugin exposes the internal hash table (strdb) to the script engine. See documentation on Download here: Submitter meko Submitted 06/18/18 Category Plugins  
  3. if one doesn't want to rely on mapflags, they could also make the maps use a custom zone, and then it can be checked with OnNPCKillEvent: if (getmapinfo(MAPINFO_ZONE, strcharinfo(PC_MAP)) == "my_zone") end;
  4. you can set a custom chat_area_size in battle_configuration you should find it in conf/map/battle/client.conf if you want to allow everyone on the map to talk to everyone from anywhere I would advise you to use the #map channel instead of increasing the chat area size
  5. you can use any @command on another character by doing #command "char name" <arguments> this means what you want is #changesex player
  6. IP addresses and mac addresses do not uniquely identify people. Most home internet users have dynamic IP addresses assigned by their ISP, so it changes over time, and some ISPs even assign a different one every single time the router is rebooted (ie: Orange). Even with a static IP, nothing prevents anyone from using a VPN, tor, or any other anonymity tool. IP addresses may also be shared: some schools, dormitories, and organizations have a single address for every single computer on its network, so you could end up mistaking hundreds of people as the same person. Some computers themselves are also shared (ie: with coworkers, family members, friends, …). As for mac addresses, they can very easily be spoofed, and one could even make a script to change their mac address every minute if they wanted to... so yeah, that's a bad idea too. If this still does not discourage you from using mac addresses, feel free to add this "feature" to Hercules: There's really no silver bullet to really be sure of the identity of someone, but one of the approaches that kinda works is to make abuse costly on abusers, while not imposing a huge burden on non-abusers. What works best is doing a physical verification instead of a digital one when someone creates an account. For example, most social media platforms now ask you to provide and validate a phone number. This means if someone were to bypass this verification they would have to have more than one phone. Some sites, such as Paypal, go even further ask you for your credit card number (or bank account number) and then do a transaction on it (usually $1), to see if the card is valid. This means you would have to have more than one credit card if you want to bypass this verification, which implies physically going to your bank, making an appointment, and opening a new account. Some (such as Google) prefer to snail mail you an envelope containing a code, which you then have to enter on their website. To abuse this you would need more than one street address. Keep in mind that this only makes it harder on would-be abusers and that nothing can 100% fingerprint someone. Even DNA profiling isn't perfect.
  7. @luizragna this because mes() and most commands only run for the attached player. If you want to run it for another player you will have to attachrid([email protected][[email protected]]); or addtimer(0, "MyNPC::MyEvent", [email protected][[email protected]]); If you go for the timer approach you might as well just use maptimer()
  8. you could either use maptimer() or make your own function with getunits() and a for() loop EDIT: oops, @Myriad replied while I was writing this
  9. chmod u+x ./{login,char,map}-server If you want to keep the file ownership and permissions intact when copying from linux to windows you should first make a tarball on the source machine and then download this instead of downloading every file one by one (ie via FTP)
  10. apply sql-files/logs.sql
  11. released version 10, which adds array_sort() and array_rsort() uses the Lomuto implementation of the Quicksort algorithm works with both string arrays (arr$) and integer arrays (arr)
  12. all of the array functions take the given index into account, this means if you give array[8] it is only executed from index 8 onwards. for array_shuffle this is not of much use but for array_shift, for example, it can be quite useful consider an array that is 0, 1, 2, 3, 4 and that you want to remove 2: you would do array_shift(array[2]) and the array would become 0, 1, 3, 4
  13. @AnnieRuru I just released version 9, which adds array_filter() and makes array_shuffle() use the Durstenfeld implementation of the Fisher-Yates algorithm
  14. please direct all further comments here:
  15. if you explain what you are trying to accomplish I could help you find a suitable solution