Jump to content

hemagx

Core Developers
  • Content Count

    248
  • Joined

  • Days Won

    10

Reputation Activity

  1. Upvote
    hemagx got a reaction from evilpuncker in 3ceam info   
    i moved it.
  2. Upvote
    hemagx got a reaction from jTynne in @cashreload   
    actually, it should be possible to reload cashshop without need to kick player
    will see if my workaround works when i go back work soon!
  3. Upvote
    hemagx reacted to Kubix in Followers: World of Warcraft system   
    Hello, community
     
    I wanna show you my release - Followers like in World of Warcraft (maybe XD)
    I start write this in august 2015 o.O
    Current version: 2.0.1
    Languages: Russian/English
    FluxCP addon: included
     
     
    Some info: (sorry for my English)
     
    Based on SQL and dynamic variables.
    4 classes: Warrior, Healer, Mage, Assassin
    Max. Follower level: 7
    Followers have a item level.
     
    Mission types:
    Standart- rewards taken from SQL
    Random- rewards taken from arrays for each follower level
    Special (if variable random_reward = 1) you can set your special item ID for each mission, if random reward is ON.
     
    Chance for complete:
    You can set your standart chance for complete mission (standart: 25%)
    Each mission have a requirement for item level (if you want)
    So, if mission req. item level = 50 and Follower item level = 100 chance for complete will be like 60% (if 25 = standart)
    But if Follower item level = 0 and mission item level = 50 chance will be (5%~)
     
    How to create a new Follower from game?
    You can create a NPC that gives a Followers, or new items for each Follower
    For create just use a function: 
    callfunc("Companion_Create", unique_id from 'companion_list' table in SQL); I have a companion in DB:
    Name: Mellisandra
    UniqueID: 1
    Class: 2 (healer)
     
    so, i create a simple script:
     
    map,x,y,face[tab]script[tab]Simple Follower[tab]sprite,{ mes "Hello! I can create Follower for you!"; next; if(select("yes, please!:No, thx") == 2) close; callfunc("Companion_Create", 1); close; }  
    this script will give a player Follower with ID 1 (Mellisandra)
     
    Guys, i'm really sorry for my english, I wanted to tell you all information, but I can not express the idea
    Maybe someone will use this and create guide for you.
    I'll try to answer your questions.
     
    Special thanks for: Google Translate.
    Good luck:)
     
    Script: http://pastebin.com/5cMPGsMh
    SQL: http://pastebin.com/465XdhBr
    Time function: http://upaste.me/aba022682946e3a7d
     
    Together (with FluxCP addons): Companions_ENGLISH.rar
     
    Preview addons:
    http://kubix-service.ru/?module=followers&action=list_all
    http://kubix-service.ru/?module=missions&action=list

    Preview video (russian interface, sorry):
    https://www.youtube.com/watch?v=j3u4dIfKVs0&feature=youtu.be
    https://www.youtube.com/watch?v=cdGGQ50VmhY&feature=youtu.be
     
     
    Original post from Russian eA-Support: http://ea-support.ws/index.php?/topic/3467-s-sistema-soratnikov-world-of-warcraft/
  4. Upvote
    hemagx reacted to Mystery in [2015-12-31] FAKE_NPC and the NPC View ID -1   
    When NPCs were using IDs, we all had to learn the IDs of the NPCs and I bet not everyone, still to this day, knows ALL the NPC IDs by heart. Now that the NPCs are constants, it'd be the same way like it was back in the day; learning.
     
    Yeah I know it'll take some time to learn new things, but what's the point staying back in the olden days?
  5. Upvote
    hemagx reacted to Haru in [2015-12-31] FAKE_NPC and the NPC View ID -1   
    The constants don't need to be looked up, since they have somewhat of a meaning (they already tell you if a NPC is a man, a woman, an animal, a monster or a thing for example, and they describe in a way or another what it looks like). Numbers on the other hand, are just numbers, and don't have any descriptive meaning. It's discouraged to use numbers, since they're too easy to mistake (and several errors in the past, both in scripts and in source, were caused by misplaced numbers, very hard to detect while reviewing code)
  6. Upvote
    hemagx got a reaction from evilpuncker in [GUIDE] Adding New Items without itemInfo.lub   
    official patcher can't delete files but overwrite ~
  7. Upvote
    hemagx got a reaction from evilpuncker in Odin Server side manner   
    The new version is alive
     
    ~ Changelog
    [*] Unknow date - First Working Version v0.1 [*]2015/12/12 v0.2 - Update to work with latest Hercules, optimized a bit for faster plugin, officially release lite version.

  8. Upvote
    hemagx got a reaction from AnnieRuru in Odin Server side manner   
    1- Change sprintf/strncpy
    possible next version or if they got not working before make new version, otherwise i see no reason to do special version for it.
     
    2- it's same, i prefer it this way for my own work.
     
    3- yes, i have to save them compiled/optimized  or i will have to do it each time the player send message.
  9. Upvote
    hemagx got a reaction from Nebraskka in Odin Server side manner   
    File Name: Odin Server side manner
    File Submitter: hemagx
    File Submitted: 17 Jan 2014
    File Category: Plugins
     
    ~ Hello
     
    Here's my Server side manner based on ind one with more advanced options.
     
    ~ Features
     
    -- For Full Version
    it uses regular expressions
    Option to bypass by GM Level or Group Permission or by using special Variable
    Auto mute

    -- Full Lite Version
    it uses regular expressions
    Option to bypass by Group Permission
    eh.. yep nothing else that why it's LITE

    ~ How to install
    Download the File
    Copy manner.c to "src/plugins"
    Copy the config files to "conf/plugin"
    Follow usual installation guide

     
    ~ How to customize
     
    To change plugin options you can check "conf/plugin/manner.conf " ( Not Available in Lite Version )
    To add more words to the filter you can add it to "conf/plugin/manner.txt"
     
    ~ useful information
     
    you can know more about regex from : http://www.regular-e...quickstart.html
    you can also test your regex and write your regex by this useful tools : http://www.rubular.com or http://regexp-evaluator.de/evaluator/ or http://www.weitz.de/regex-coach/ or http://regex101.com/
    you have to know that one wrong regex can make no one able to talk.
     
    ~ Credits
    Haruna
    Ind
    Hemagx

     
    ~ Changelog
    Unknow date - First Working Version v0.1
    2015/12/12 v0.2 - Update to work with latest Hercules, optimized a bit for faster plugin, officially release lite version.

    ~ thank you
     
    Click here to download this file
  10. Upvote
    hemagx got a reaction from anacondaq in eAmod Battleground merging in hercules   
    it's legal so far cause GNU/GPL but i don't think it's good idea cause of his bad code and cause Hercules should follow official only and not add custom stuff.
  11. Upvote
    hemagx got a reaction from Ink in eAmod Battleground merging in hercules   
    it's legal so far cause GNU/GPL but i don't think it's good idea cause of his bad code and cause Hercules should follow official only and not add custom stuff.
  12. Upvote
    hemagx reacted to jaBote in Let's talk about, "eAmod"...   
    This was previously a PM he sent to me, and I encouraged him to make a topic out of it.
     
    I'll also share the insights I gave him via PM (Felipe Brasil, please certify I didn't edit a single letter from it), along with a couple of side notes:
    Side note:
    There are a couple of systems I'd be willing to have, but overall product, its support and price are no way an appeal for me. Anyways that is not an option for the no-donation oriented servers I've had (only one as main admin, some others as co-admin without being owner).
     
    None of my servers were meant to be profitable and I'm proud none of them ever were (with not even a single surplus month, which I'm also proud of). Only donating people were these who actually trusted me and wanted to help me cover ONLY the monthly expenses, not those that wanted any donation items. In fact, they weren't given any exclusive privilege. You can hear me rant about that on my blog entry.
     
    This allows me to say your server can be successful without that hotchpotch of features (of which you'll use only a couple) provided you can be creative and keep an income of features to your server.
     

     
    However, while it is known I'm not a fan of eAmod, this topic is to have a polite, civil and appropriate discussion about this 3rd party paid modification. I won't allow any attacks or drama to be held on (I especially mean this for these people that make me think they're permanently angry when reading them) this topic, or I will start handing down warnings (and other proper punishments when needed) no matter who did it (be it a member of Hercules, someone defending eAmod or the Pope of Rome himself) or it'll get closed and removed if gets out of control.
  13. Upvote
    hemagx reacted to evilpuncker in Achievement System   
    more like a plugin =)
  14. Upvote
    hemagx reacted to Jguy in Mob_DB file structure overhaul   
    I see no reason now that we have this: http://herc.ws/board/topic/2954-item-db-file-structure-overhaul/
     
    ...to have it done on the mob_db's as well. Makes it easier to read, limits the amount of commas, etc. Basically the same reasons why we did it to the item_db. Thoughts? Flames? Opinions?
  15. Upvote
    hemagx reacted to goddameit in BOT   
    File Name: BOT
    File Submitter: goddameit
    File Submitted: 10 Mar 2014
    File Category: Source Modifications
     
    Refer:
    http://rathena.org/board/files/file/2551-autoattack/
    http://rathena.org/board/files/file/2826-autopots/
     
    Preview:
    https://www.facebook.com/photo.php?v=774591642560012
    https://www.facebook.com/fanen.goddameit/posts/774573372561839
    https://www.facebook.com/fanen.goddameit/posts/773655365986973
     
    Info:
    This system will make player auto-attack when they active this SC.
    Player can put some skill and item to their hotkeys for controlling something,
    for example, if I put fly wing to my F1, and it will use it for teleporting.
     
    Hotkeys:
    F1 ---> Fly wing
    F2 ---> Teleport (Skill)
    F3 ~ F7 ---> buff skill for yourself
    F8 ---> Main attacking skill
    F9 ---> Second chosen skill
    Line 2 1st ---> Item for HP (Lower 80%)
    Line 2 2nd ---> Item for SP (Lower 80%)
    http://i.imgur.com/v3rBXjc.jpg
     
    Active:
    sc_start4 SC_BOT,<Duration>,<Use Normal Attack>,0,0,0; Forced End:sc_end SC_BOT; Sample for ONOFF:@boton ---> start @botoff \ @botend ---> end http://pastebin.com/VEpkVF9i 
    PS:
    If everything is right, but BOT still not working, check your SC_BOT definition in db/const.txt and status.h, both must be same value.
     
    For New Version Hercules Users :
    path->search is updated and it needs block_list now, so just add it by yourself.
    http://herc.ws/board/topic/4821-bot/?p=67769
     
    Update:
    Click here to download this file
  16. Upvote
    hemagx reacted to Angelmelody in New bonus script Suggestion(addmaxweight)   
    I'd like to suggest hercules to add new  bonus AddMaxWeight ,So that we can
     
    use it  on item script  , why not use ' MaxWeight +=N; '  ?  clieck.
     
    Hope devs agree ,thx
     
     
     
  17. Upvote
    hemagx reacted to Beret in Autotrade command to buyingstore   
    Well we have the command @at for vending, more why don't you extend the command to support buyingstore.
  18. Upvote
    hemagx reacted to AnnieRuru in map_zone_db.conf allows to restrict an ITEM TYPE   
    ok ... its my turn to give suggestion time ..
     
    http://rathena.org/board/topic/77088-certain-map-weapon-restriction/?p=239342
    noitem mapflag meant for rathena
     
    when compare my code and hercules map_zone_db.conf
    hercules can already restrict items by ID
    but my modifications can allow to restrict an item type
     
    example
    pvp_y_1-1 mapflag noitem 0this pvp map cannot use healing itemsevent_gm mapflag noitem 4,5this gm hosting event will disallow players to equip any kind of equipments 
    so how about hercules have the same thing
    { name: "PvP no Pot" inherit: ( "PvP" ) disabled_items: { IT_HEALING: true }}, { name: "GM event" disabled_items: { IT_WEAPON: true IT_ARMOR: true }},
  19. Upvote
    hemagx got a reaction from evilpuncker in Odin Server side manner   
    Here is the lite version :
    http://pastebin.com/raw.php?i=Gv08aixn
  20. Upvote
    hemagx reacted to Ind in Introducing HPM Datacheck   
    HPM Data Check
    I begin by thanking ai4rei for bringing this to our attention HELLOOOO, WHAT?! This introduces automatic data integrity insurance between plugins and the core, allowing the core to reject loading plugins whose data structures mismatch those in the core thus preventing potential crashes and loose data read/write, it goes a long way towards making this issue being inexistent. In short: its a feature that enables the core to reject "outdated" plugins, "outdated" meaning that a data struct used by the plugin has been modified in the core while the plugin was not recompiled to reflect the change. It is smartThanks to Haru's design the feature is able to identify the files which the plugin relies on, therefore even if data structs in the core have been modified the plugin will only fail load if its a data struct from a file it actually includes Changes: Hello Plugin Developers!
    Plugins are now required to include the HPMDataCheck file, plugins without it will not pass loading validation, to include use: #include "../common/HPMDataCheck.h"it should be the last file included, if it isn't the last it'll render the plugin uncompilable (intentionally). ...and thats it, it stands on its own afterwards. Also in & Thanks to Haru
    the HPMHookGen has been updated so that the data HPMDataCheck relies on is always up to date HPMHookGen has been sped up. New Possibilities
    Thanks to HPMDataCheck enabling the core to know which files the plugin relies on there are many enhancements we can (and intend to) add, for example, drop GET_SYMBOL entirely and have the core load the interfaces automatically Special Thanks to
    Haru ai4rei Link'u
    HPMHookGen Update Commit
  21. Upvote
    hemagx reacted to Beret in Update mapzone   
    I believe that mapzone is the best setting ever created, the facility that allows the modifications, I suggest adding a few more options as aegis and also a @reloadmapzone command that allows me to read again the configuration without having to relogin to the server.
     
     
    Noticed that the aegis there are some settings that hercules has not yet, let me tell you some.
     
     
    ADD_PROPERTY
     
    Here is the famous mapflag just needs updates as the aegis
     
    Example:
     
    ADD_PROPERTY(TELEPORT, TRUE); //텔레포트ADD_PROPERTY(NOTREMEMBER, TRUE); //기억ADD_PROPERTY(PARTY, FALSE); //같은파티PK불가 ADD_PROPERTY(GUILD, FALSE); //같은길드PK불가ADD_PROPERTY(DISCONNECT_NOTREMEMBER, TRUE);// 접속종료시기억금지 ADD_PROPERTY(CALLMONSTER, FALSE);  
    ADD_BLOCK_EQUIPITEM
     
    This blocks the item and cannot equip while with the item equipped
    ADD_BLOCK_EQUIPITEM("Phen_Card"); // Phen_Card 사용 불가ADD_BLOCK_EQUIPITEM("Orleans_Gown"); // Orleans_Gown 사용 불가ADD_BLOCK_EQUIPITEM("Blood_Butterfly_Card"); // Blood_Butterfly_Card 사용 불가  
    ADD_BLOCK_BUFF
     
    Blocks the effect on a zone, will not get bonuses even using the skill
    ADD_BLOCK_BUFF("EFST_ENDURE");  
    ADJUST_TRAP_DURATION
     
    We need an update here too, here is the adjust_unit_duration we need a mapflag update for zones.
    ADJUST_TRAP_DURATION (HT_LANDMINE, 400); // 랜드마인ADJUST_TRAP_DURATION (HT_BLASTMINE, 400); // 블래스트 마인ADJUST_TRAP_DURATION (HT_SANDMAN, 400); //샌드맨ADJUST_TRAP_DURATION (HT_SHOCKWAVE, 400); //쇼크웨이브트랩ADJUST_TRAP_DURATION (HT_SKIDTRAP, 400); //스키드트랩ADJUST_TRAP_DURATION (HT_ANKLESNARE, 400); //앵클스네어ADJUST_TRAP_DURATION (HT_CLAYMORETRAP, 400); //크레모어 트랩ADJUST_TRAP_DURATION (HT_TALKIEBOX, 400); // 토키 박스ADJUST_TRAP_DURATION (HT_FREEZINGTRAP, 400); //프리징_트랩ADJUST_TRAP_DURATION (HT_FLASHER, 400); //플래셔
  22. Upvote
    hemagx reacted to kami-shi in November Digest 2013   
    That is a lot of work. You guys are great, I can see this emulator going faaaaaaaaar!
     
    /me is fan
  23. Upvote
    hemagx reacted to Olrox in [Showcase] Peco Peco - Racing Track   
    Facebook:
    https://www.facebook.com/OlroxMaps
     
    1. Concept
     
    Today I'm showing around a small map I did. Its for an event script about racing, Which involves some peco pecos, thats why the name

     
    2. Features

     
    This is a small map, that was requested as it. However, it has a lot of fun..[*]Added sound effects like crowd cheering, cannons.
    [*]One trim area special for spectators.
    [*]Some effects like fireworks and some party confetti that simulates like the crowd is having fun with the race.
    [*]All the track is a custom model. The the spectators area, the color porings and that peco sign are models/textures by my own
    [*]At the end I decided to add some blue sky, which looks nice at the high altitdue areas.
    [*]3. Video *watch in HD 1080p*
     

     
     
    4. Screenshots
     
    Some screenshots. There isn't a particular order or purpose on the screens here, just some overview screenshots and maybe some others that has to do with close ups.
     

     

     

     

     

     

     



  24. Upvote
    hemagx reacted to Neo-Mind in [Release] Custom Job & Custom Shield Patches   
    Well a few people know i have been working on these. So here goes.
     
    Did I hear right?
     
    1. Yes it is what you are thinking. The Custom Job patch allow you to modify the existing jobs and add new jobs      in a fashion similar to HeliumRO's Xray Clients (and some extra stuff u will see below) but using lua files.   2. Similarly Custom Shield Patch allows you to throw the existing 4 shield limit out the door and modify existing as well as     add more shield equipment types to your liking using lua files.   3. For now I have tested them out on a set of clients (for others the logic followed were the same     so I didn't bother with the rest). Ofcourse if any bug comes up I will work on fixing them.     4. Patches were made with existing patches in mind and therefore will not affect any and existing diffs present    in a client you use. Infact you are supposed to use these last only.   5. Custom Job Patch has also an override for Class names based on gender. For it to work Langtype Korean Jobname Fix    is expected to be enabled (for xDiff patches it is a part of Translate to English patch)  
      6. So is there a limit ? yes for now i have limited them as max shields to 10 and max job id to 4300.   So how does it work ?   1. Get the xdiff file for your client version (from the link below)   2. Get the lua files (also from the link below)   3. Modify/Add entries to the lua files (Format is specified below)   4. Load your client and xdiff file in xDiffPatcher   5. Let it Rip!... i mean Patch!!   6. And last but not least place the lua files in their proper locations.   Lua File Formats - Custom Job Patch Custom Job Patch makes use of 7 lua files (similar to the various txt files Xray client had).They need to be present in the luafiles514/lua files/admin path.   1) PCIdentity.lua:   This file is already present in the official GRF but we are going to use a modified version of that one.   All Job Sprites have a corresponding Job ID (including costumes and Job Mounts). This file defines all of them   and their relationships to each other.   This is done with the help of 3 tables =>   i) pcJobTbl (mandatory):  This is where the job id value is defined and mapped to a string for identification JT_KAGEROU = 4211, -- 4211 is the job id for kagerou class     ii) Halter_Map : This is where you specify which job id is the job mount of which class. Ofcourse if you dont  plan to add a mount sprite for a class you can ignore this one. [pcJobTbl.JT_KAGEROU] = pcJobTbl.JH_KAGEROU, -- maps kagerou job to his frog mounted sprite   iii) Shrink_Tbl : This is list of job IDs that need to be ... shrunk i.e. specify all Baby Jobs here. pcJobTbl.JT_SWORDSMAN_B, -- will include Baby Swordsman in the list    2) PCPaths.lua:    Lua equivalent of class_tab.txt . Defines the prefix string used for each class to get its sprite & act file path.    i.e. prefix in => /data/sprite/Àΰ£Á·/¸öÅë/<gender>/<prefix>_<gender>.spr (& act as well).    This is done with the help of two tables (only one of which needs to be filled for a class).        i)  PCStitchTbl :      If your job uses a completely new sprite with a new filename then you can assign it in this table. [pcJobTbl.JT_SWORDMAN] = "°Ë»ç" -- Prefix for Swordsman    ii) PCStitchInheritTbl :      If your job is sharing an existing sprite path already used by a job specified in PCStitchTBl then you can simply connect them in this table (target job id inherits from source job id). [pcJobTbl.JT_SWORDMAN_H] = pcJobTbl.JT_SWORDMAN, --JT_SWORDMAN_H is High Swordsman which uses --same sprite as Swordsman 
      All of the remaining lua files follow a similar pattern with one table for direct assignment and the other one for inheriting value from another job id 3) PCImfs.lua: Lua equivalent of imf_tab.txt . Defines the prefix string for imf files of each class. i)  PCImfTbl : [pcJobTbl.JT_KNIGHT] = "±â»ç", -- Prefix for Knight ii) PCImfInheritTbl : [pcJobTbl.JT_KNIGHT_H] = pcJobTbl.JT_KNIGHT, -- JT_KNIGHT_H is Lord Knight and has the same -- imf as Knight class.
    4) PCHands.lua: Lua equivalent of reality_dir_tab.txt. Defines the prefix strings used for Weapons and Shields of each class i) PCHandsTbl : [pcJobTbl.JT_ASSASSIN] = "¾î¼¼½Å¾î¼¼½Å", -- Prefix for Assassin   ii) PCHandsInheritTbl : [pcJobTbl.JT_GUILLOTINE_CROSS] = pcJobTbl.JT_ASSASSIN, -- Guillotine Cross picks up --weapons/shields from the same path as Assassin class.
    5) PCPals.lua   Lua equivalent of reality_tab.txt. Defines the prefix strings for the body palettes. i) PCPalTbl: [pcJobTbl.JT_MAGICIAN] = "¸¶¹ý»ç", -- prefix for Mage                           ii) PCPalInheritTbl: [pcJobTbl.JT_MAGICIAN_H] = pcJobTbl.JT_MAGICIAN, -- High Mage uses same prefix as Mage class.  
    6) PCNames.lua   Lua equivalent of monstrosity_tab.txt (in part since mobs are defined by jobname.lua) . As the file name says this is where you define all your class names. Reason i saved this for last is because this file is slightly different from the previous 4. Here you can define the class name seperately for both genders. For male classes => i) PCJobNameTbl : [pcJobTbl.JT_WARLOCK] = "Warlock", -- Kind of obvious right? ii) PCJobNameInheritTbl : [pcJobTbl.JT_WARLOCK_H] = pcJobTbl.JT_WARLOCK, -- JT_WARLOCK_H is Transcendent version of -- warlock class and ofcourse it will have same name For female classes => iii) PCJobNameTbl_F : [pcJobTbl.JT_WARLOCK] = "Witch", -- Now the female Warlock will be called Witch
    iv) PCJobNameInheritTbl_F : [pcJobTbl.JT_WARLOCK_H] = pcJobTbl.JT_WARLOCK, -- Same for Transcendent warlock   By default if your gender is female and there is no names defined using either iii) or iv) above then it checks in the tables for male gender. 7) PCFuncs.lua Contains Necessary functions used by the client - DO NOT TOUCH THIS FILE unless you know what you are doing!!!   Lua File Formats - Custom Shield Patch Custom Shield Patch makes use of 2 lua files as specified below. They need to be present in luafiles514/lua files/datainfo folder.   1) ShieldTable.lua : This lua file is the only one you need to configure. It contains 3 tables and is similar in format to WeaponTable.lua i) Shield_IDs : Defines a list of IDs which includes both Shield Types & Item IDs used by shield items in item_db.txt. Shield Items can only start from item id 2101 onwards so anything lesser than that will be considered as a shield type id. To distinguish between them we use the ST (Shield Type) and SI (Shield Item) prefixes. ST_MSHIELD = 4, -- Mirror Shield TypeSI_Platinum_Shield = 2122, -- Platinum Shield's Item ID   ii) ShieldNameTable : Here we assign suffix strings for Shield Types i.e. shield suffix in => /data/sprite/¹æÆÐ/<hand prefix>_<gender>_<shield suffix>.spr [Shield_IDs.ST_MSHIELD] = "_¹Ì·¯½¯µå", --Suffix for Mirror shield  iii) ShieldMapTable : Here we specify which Shield Type is used by each of the Shield Items. [Shield_IDs.SI_Platinum_Shield] = Shield_IDs.ST_MSHIELD, -- Platinum Shield uses -- Mirror Shield sprite.
    2) ShieldTable_F.lua : Contains Necessary functions used by the client - DO NOT TOUCH THIS FILE unless you know what you are doing!!!     Ok.. So Where do i get the files? Download link     Final Note If you have any issues or doubts about the xDiff files or Lua files (I expect some in this department) let me know. So Enjoy
  25. Upvote
    hemagx got a reaction from evilpuncker in Odin Server side manner   
    Okay, i will upload it soon.
×
×
  • Create New...

Important Information

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