Jump to content

Mumbles

Retired Staff
  • Content Count

    618
  • Joined

  • Last visited

  • Days Won

    15

Everything posted by Mumbles

  1. No; once you've compiled your server, you should be able to start it from a command line. ./athena-start start If you need to recompile in the future, be sure to shut down the server prior to attempting to do so. ./athena-start stop You can also just type make by itself and all components will be compiled in one go.
  2. Just a few questions: [*]What limitations/restrictions do you plan on having for buyable items? [*]Can I buy anything I want, or only items on a whitelist? [*]Can I only buy consumables, with the exception of some items on blacklist? [*]Will you check for weight? These are just a few questions that can be asked; perhaps you could provide a little more detail about your request.
  3. Might be skipping your plugins? ./configuremake sqlmake plugins
  4. Mumbles

    storage npc

    In what way(s) do you intend for it to be different from normal storage?
  5. Missing a closing brace <}> after bonus bStr,3;, which was opened for that if expression. Change this: if (isequipped(25001)) { bonus bskill "TK_SEVENWIND",4; bonus bStr,3; },{},{} to this: if (isequipped(25001)) { bonus bskill "TK_SEVENWIND",4; bonus bStr,3; }},{},{}
  6. Hello Rhina, Welcome to Hercules! If you have any questions in regards to script conversion, please feel free to ask. As for showcases, you may do so in the various Releases sections across the support forums. Please bear in mind that although our community is primarily English-speaking, we do have sections for Portuguese topics as well. I look forward to seeing your posts and contributions to Hercules. See you around! Note: Translated topic title to English (previously "Novo no Hercules como Script") for the sake of keeping it in this support board.
  7. The only purpose of getcharname() is to return a single character's name, by querying the database with an ID; the example above that returns all character names of the account being invoked uses an array filled by query_sql(), which may multiple results. This limitation is not exclusive to getcharname(), as any array filled in any manner (currently) can only store 128 values. It is my understanding that the limitation on arrays may soon be lifted, though it is up to our core developers or other contributors to do so; I wouldn't know where to begin. If you're deleting an account, I recommend you ban the account prior to doing so; if the system hosting your database has at least 512MB RAM, the deletion process should only take a second (if not less). Despite this, a check is made to ensure that the account is not logged in when the invoking user chooses to confirm removal. This check can be found on lines 80-86: case 3: // Confirm removal if (isloggedin(.@account_id)) { mes "All characters from this account must be offline before proceeding."; next; break; }
  8. rid2name() will only return the name of an online character, using their RID; additionally, the character name may not be produced properly, since the RID for a player is the account ID. getcharname() queries the `char` table for the name of the specified character ID, regardless of whether or not they are online. I've purposefully released an Account Remover utility simultaneously to demonstrate how this function may be used efficiently. Here's an excerpt in which getcharname() is used to list all character names on an account: mes .npc_name$; switch (@menu) { case 1: // View list of characters if (query_sql("SELECT `char_id` FROM `char` WHERE `account_id` = '"+ .@account_id +"' ORDER BY `name` ASC", .@char_id[0])) { mes "List of characters:"; for (.@i = 0; .@i < getarraysize(.@char_id); .@i++) { mes "- ^0000FF"+ getcharname(.@char_id[.@i]) +"^000000"; } } else { mes "There are no characters on this account."; } next; break; Documentation for rid2name() can be found in doc/script_commands.txt.
  9. Currently, this is designed to erase the core account and character data attached to an account. The idea came from a discussion about account deletion via SQL that @jaBote left a comment on. Note that in this version, some unwanted "residue" may be left over. For example, guilds in which the leader's account was deleted may still remain intact while the server is intact; a server restart finalise the changes, but this situation hasn't been tested. Additionally, skills that belonged to an account's deleted homunculus will remain in the `homunculus_skills` database. If you have any questions, comments, or suggestions, please feel free to leave your input.
  10. Give this a try: http://herc.ws/board/topic/2927-utility-account-remover/
  11. Function: getcharname() Description: Return the name belonging to the character ID referenced. Example usage: Utility: Account Remover Download: https://github.com/datmumbles/Scripts/raw/master/func/getcharname.txt
  12. Utility: Account Remover Description: Allows for a (mostly) clean removal of accounts and regular character data via '@removeacc'. Rejects accounts that are currently online and prevents deletion of system accounts by default. See configuration for additional options. Download: https://github.com/datmumbles/Scripts/raw/master/util/removeacc.txt
  13. Use Hercules' doc/script_commands.txt for reference if you're unsure of whether or not we have a script command that you need. Additionally, a script-checker was added to Hercules just recently for Linux, OS X, and Windows; it can also be used on Haru's website. This script-checker is a great and convenient way of checking your script's compatibility with Hercules, as it will return any errors the map-server would encounter if loaded.
  14. Merge from a commit or add your changes manually. Example DIFF: https://github.com/HerculesWS/Hercules/commit/24fb73c653388c7d76fcd0a0bcc08b4af4c5e9cb
  15. The last time I checked, colour-coding signified hidden socket enchantments or broken equipment. Knife - 1 hidden socket Knife - 2 hidden sockets Knife - 3 hidden sockets Knife - 4 hidden sockets Knife - broken What's a "hidden socket?" A hidden socket is a socket (commonly known as a "card slot") that has been enchanted and/or is not shown on the client data as having that many enchantable sockets. For example, if you have a Knife [0] with a card or enchantment, its name may turn lime or turquoise. These types of items are usually obtained by faulty/deliberate scripts that enchant into nonexistent sockets or an outdated slotcounttable.txt in your data folder or GRF.
  16. Set use_md5_passwords to yes in conf/login-server.conf: // Store passwords as MD5 hashes instead of plaintext ?// NOTE: Will not work with clients that use <passwordencrypt>use_MD5_passwords: yes If you've already done this and are still experiencing errors, execute sql-files/tools/convert_passwords.sql in your main schema to convert your existing passwords into MD5 hashes.
  17. Hello Akkarin, We don't really use the Talk pages; I've tried to initiate some discussion in the past, but most discussions take place on forums or on IRC. As for cleaning up, we appreciate any help we can get! Thanks for your interest.
  18. It means you're creating an invisible wall that starts on coordinates (x, y) on "mapname" and is 6 cells long in the direction 7 (see below); the shootable flag is off (0 = off, 1 = on), meaning that it cannot be hit/targeted, and the name of the wall is "wallname". Direction 7 means the wall is facing the northeast corner and will continue for 6 cells: [1][8][7] [2][0][6] [3][4][5]
  19. Try adding this somewhere: delwall "Wall Name"; Here's the documentation for setwall and delwall: http://herc.ws/wiki/Setwall
  20. It's probably being caused by the GM Sandman skill. Unequip your Angra or comment out the GM Sandman skill in the item db it and you should stop receiving that error.
  21. I've experienced this error in the past when loading a character equipped with Angra Manyu. Do you have any players with this item equipped?
  22. I don't really know how to read packets, but you can use WPE to sniff them. o.o
  23. You can set these player variables within your script, like so: SkillPoint = 0;StatusPoint = 42;
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.