Jump to content

tedexx

Members
  • Content Count

    79
  • Joined

  • Last visited

  • Days Won

    1

Reputation Activity

  1. Upvote
    tedexx reacted to meko in Recent changes to the Hercules engine   
    It seems there's been no changelog since quite a while so here's one highlighting the most recent changes related to scripting. Sorry if that's not the right category, please move accordingly.     New script commands: chr ord gettimer getunits getvariableofpc can_use_command has_permission addchannelhandler removechannelhandler setunitdata getunitdata getunitname setunitname getequipisenableopt getequippedoptioninfo getequipoptioninfo setequipoption navigateto   Modified script commands (extra parameters): strcharinfo strnpcinfo addtimer deltimer addtimercount checkoption checkoption1 checkoption2 setoption warpparty warpguild classchange   New params: BankVault  
     
    Big projects currently in development:
    Implementation of the official Clan system Implementation of the official RoDEX system Implementation of the official Achievements system Complete rewrite of the map cache system
  2. Upvote
    tedexx reacted to PB&JJ in [Request] Size changer npc   
    Here you go.
     
    prontera,150,150,5 script SizeChanger 4_M_PECOKNIGHT,{ mes "What size would you like to have?"; mes "These changes are persisant after logout"; next; sizeVal = select("Normal:Small:Large") -1; mes "There you go!"; close2; OnPCLoginEvent: atcommand "@size "+ sizeVal; end; }  
  3. Upvote
    tedexx reacted to PB&JJ in Bonus ReduceSkillDamage   
    Usage:
    item bonus command: bonus2 bReduceSkillDamage x,y;    // x = skill id, y = %
     
    Example: 
    {     Id: 8001     AegisName: "Custom_Card"     Name: "Custom Card"     Type: 6     Buy: 20     Weight: 10     Loc: 32      Script: <"                bonus2 bReduceSkillDamage,MO_EXTREMITYFIST,50; //Reduces Asura strikes damage by 50% "> },  
     
     
     
    you can find it on my github here.
  4. Upvote
    tedexx reacted to meko in Random item with chance request   
    here, I made this for you:
     
    <map>,<x>,<y>,<dir> script <name> <sprite>,{ mes("Hi there."); mes("Can I help you?"); next(); select("claim reward"); mes("..."); next(); for (.@i = 0; .@i < .reward_len; .@i += 3) { if (rand(100) < .reward[.@i + 2]) { getitem(.reward[.@i], .reward[.@i + 1]); mesf("You obtained %i %s.", .reward[.@i + 1], getitemname(.reward[.@i])); .@reward = true; // got at least one reward next(); } } if (.@reward != true) { mes("It seems you're out of luck."); next(); } mes("Come back anytime!"); close; OnInit: setarray(.reward[0], //ID,QTY,% 607, 5, 50, 608, 6, 52, 678, 4, 50, 672, 1, 2); .reward_len = getarraysize(.reward); }  
    hope it helps
     
    UPDATE: added reward_len (sorry, forgot that)
  5. Upvote
    tedexx reacted to Easycore in Hercules Battlegrounds   
    I made a command for switch BG Modes.
    Open hBG\bg_common.txt and copy this before of OnBGStartCommand:
     
    Find /* Player Commands */ and copy above: 
     
    Finally find // Team Building Mode : and copy above:  
     
     
    Usage: @bgmode <1-10> #1 - Random Mode #2 - Capture the Flag #3 - Eye of Storm #4 - Triple Inferno #5 - Team DeathMatch #6 - Bossnia #7 - Conquest #8 - Stone Control #9 - Domination #10 - Rush
  6. Upvote
    tedexx reacted to Murilo BiO' in Clan System   
    Tada!
     
    https://github.com/HerculesWS/Hercules/pull/1718
    Now we just need to wait for `mmo_charstatus`
  7. Upvote
    tedexx got a reaction from jupeto in Hercules Battlegrounds   
    bg_common.txt line 151
    // Rotate every n seconds. OnTimer5000: Being 5000 the miliseconds of rotation and announces
  8. Upvote
    tedexx got a reaction from Sephus in Hercules Battlegrounds   
    The announces are on purpose, you can change the timing in the bg_common.txt script.
  9. Upvote
    tedexx reacted to Sephus in Hercules Battlegrounds   
    Some of these should be fixed in https://github.com/Smokexyz/HerculesBG/commit/8c0d44fd2c2f897cc7eb40f925f5f461519b01ac
    Please test to confirm.
  10. Upvote
    tedexx reacted to Habilis in Automatic SQL database backup   
    Hello guys I wrote an article lately about automatic SQL database backup
     
    For Linux Systems (Sorry Wind0z guys and gals...)
     
    This is the one I'm using for my projects
     
    https://habilisbest.com/sql-database-automatic-backups
     
    Features:
     
    Backups database names specified in a list compresses and stores them Uses filename format for easy retrieval [DatabaseName].YYYY-mm-dd.gz Removes backups older than 28 days (to keep it nice and clean) Writes log files You can configure it to run every 12 hours with cron (crazy server owners...)  
    I run it every 3 days. Because, I don't give a damn about my players I'm confident in my Raspberry Pi server!
     
    Would like your feedback and if you can think of any other features I can develop, please speak up!
  11. Upvote
    tedexx reacted to Dastgir in Clientinfo: multiple servers   
    You might have diffed with "Skip Service Select" patch
  12. Upvote
    tedexx reacted to Habilis in Any Digital Ocean users here?   
    try guide in my signature it should be a breeze if you use Debian or ubuntu as operating system...
     
    Just skip the part about Router setup .... Since you rent a VPS at DigiOcean this step already done by them...
  13. Upvote
    tedexx reacted to Hideki in bg_consume mapflag, "Battleground's items" that can only be used in BG   
    This source modification adds a new mapflag: bg_consume, and adds an NPC (Telma) 
    that sells consumable items which can only be used on maps with the 'bg_consume' mapflag.
     

    download and apply this diff patch: battlegroud.diff

    create a char named "Battleground"
    First you should check if that name exists:- delete their char, then create a new one
     use a different name use the existing char (WARNING: if they rename the char named "Battleground", it will rename the "Battleground's items" too! If they delete the char named "Battleground", they will become "Unknown's item".)


    When you are ready to create the char named "Battleground", use this SQL query:
     
    SQL INSERT INTO `char` (`name`) VALUES ('Battleground'); make note of the char_id (of the char named "Battleground")
    SQL SELECT char_id FROM `char` WHERE `name`='Battleground'; Write this down somewhere or remember it for the next steps.
      edit source
    - open /src/map/battleground.h
    CODE #define BG_CHARID 165100 // char named "Battleground"
    #define BG_TRADE 91 // trade mask of BG consumables - set BG_CHARID to the char_id from step #3
    - set BG_TRADE to the trade mask (trade restrictions) you want for Battleground's consumables
    (trade bits are the same as /db/item_trade.txt)
    CODE // Trading mask values:
    // 1: Item can't be dropped
    // 2: Item can't be traded (nor vended)
    // 4: Wedded partner can override restriction 2.
    // 8: Item can't be sold to npcs
    // 16: Item can't be placed in the cart
    // 32: Item can't be placed in the storage
    // 64: Item can't be placed in the guild storage

    If you want BG potions to be ranked (ranked Condensed White Potions, ranked Blue Potions, etc.), 
    open /src/map/pc.c and uncomment this:
    CODE // else if(BG_CHARID == char_id)
    // return 5; edit NPC script (Telma)
    - open /npc/battleground/bg_supplier.txt
    CODE set .@BG_CHARID, 165100; // character named "Battleground" - (line 43) set .@BG_CHARID to the char_id from step #3
    - (lines 25-39) edit the menu/prices to your liking
    - (line 88) add the 'bg_consume' mapflag to any other maps you want to allow "Battleground's consumables" to be used on
      Save and close all files. Recompile.


     
     
     
    Compatible Hercules/rAthena/eAthena
     
     
    credits:
    The original idea is from someone else, I'm just not sure who. It started in 2009 when a player showed us screenshots (from another server) of the Telma NPC and asked if we could implement something similar--Battleground's consumables that could only be used in BG. Based on the screenshots, I came up with this. Since then, several people have asked about it on eAthena but I was too lazy to update it so I just linked them to our old SVN/Trac. Finally I updated it, and here it is!

    Thanks again to whoever came up with the idea!
  14. Upvote
    tedexx reacted to Anisotropic Defixation in area_size, max_walk_path and Snap   
    Limit the skill's cast range in skill_db.conf and skillinfolist.lub (clientside), as it's 18 cells by default. As for your other questions, there isn't any noticeable impact as far as I know.
  15. Upvote
    tedexx reacted to Tio Akima in dark endless tower   
    My dark version of the endless tower
     




     
     
  16. Upvote
    tedexx reacted to Adel in Adel's Sprite Showcase   
    Blood Wings
        
          
             
             
       
  17. Upvote
    tedexx reacted to Sephus in Refinery UI   
    kRO had released anew refinery interface for item refinement last year in their 2016-10-* clients.
     
    Source: 
     
    A preview of my implementation:

     
    I already have it working on my local Hercules branch. A big thanks to @Asheraf for providing information from kRO. This will be available for Hercules as and when it support the newer clients.
    Just thought I'd share the info here
    Hope for its release soon!
  18. Upvote
    tedexx reacted to Sephus in Item Option System Demo NPC   
    setequipoption(.@equip_index, .@option_slot, .option_constants[.@option_variable - 1], .@value);
     
    is correct, Hercules has been updated.
  19. Upvote
    tedexx reacted to Sephus in Introducing the Item Options System   
    Yes, this will be fixed soon. The correct order is setequipoption(<equip_index>,<slot>,<opt_index>,<value>);
     
    Edit: Fixed in the latest commit.
     
     
    Addressed in PR#1673 Thank you for the report.
  20. Upvote
    tedexx reacted to Sephus in Item Option System Demo NPC   
    So with the release of Item Options System I had created a demo NPC with a small number of options to test the system out or be used as a full fledged NPC.
     
    Configuration
    /** * General Configuration */ /* Chance of the enhancement process to fail. (0 - 99 in percent) */ .chance_of_failure = 10; /* Delete the item on failure? (true/false) */ .delete_on_failure = true; /* Required amount of zeny for a try. */ .zeny_requirement = 100; /* Minimum amount of the bonus value. * For negative effects or certain bonuses that require negative values * Maximum possible value is -INT16_MAX) */ .minimum_bonus_amount = -100; // usually used with delay bonus options, although not provided in the script. /* Maximum amount of the bonus value. * Maximum possible value is INT16_MAX */ .maximum_bonus_amount = 100; /* Disable selection of bonus value (true/false) */ .enable_random_bonus = false; /* Item Option Descriptions */ setarray(.options$[0], "Max HP", "Max SP", "STR", "AGI", "VIT", "INT", "DEX", "LUK"); /* Item Option Constants */ setarray(.option_constants[0], VAR_MAXHPAMOUNT, VAR_MAXSPAMOUNT, VAR_STRAMOUNT, VAR_AGIAMOUNT, VAR_VITAMOUNT, VAR_INTAMOUNT, VAR_DEXAMOUNT, VAR_LUKAMOUNT); end;  
    File v1.0
    item_options.txt 
     
    Let me know what you think!
     
    Enjoy~!
  21. Upvote
    tedexx reacted to Sephus in Introducing the Item Options System   
    Introducing the Item Options System!
     

     
    Commit
    https://github.com/HerculesWS/Hercules/commit/974222a8d3f189083205bf5d330de04a43226ad3
     
    Feature Information
    The Item Option System is a feature that was implemented in 2015-02-26 clients, allowing equipments to have up to 5 additional effects similar to cards or enchants. Each equipment is capable of having 5 information bars above the card slot/enchant bar that describes the effect of the option it is infused with.
     
    New Script Commands (The following snippet is available in doc/script_commands.txt.)
    *getequipisenableopt(<equipment slot>) This function checks if the equipped item allows the use of bonus options. Returns 1 if allowed, 0 if not. --------------------------------------- *getequippedoptioninfo(<info_type>); This function is to be used with the scripts of contents listed in db/item_options.conf only. Returns the value of the current equipment being parsed. If the equip was not found or the type is invalid, -1 is returned. --------------------------------------- *getequipoptioninfo(<equip_index>,<slot>,<type>); Gets the option information of an equipment. <equipment_index> For a list of equipment indexes see getequipid(). <option_slot> can range from 1 to MAX_ITEM_OPTIONS <type> can be IT_OPT_INDEX (the ID of the option bonus, @see "Id" or "Name" in db/item_options.conf) or IT_OPT_VALUE (the value of the bonus script of the equipment, @see "Script" in db_item_options.conf). returns the value of the slot if exists or -1 for invalid slot, type or slots. --------------------------------------- *setequipoption(<equip_index>,<slot>,<opt_index>,<value>); Set an equipment's option index or value for the specified option slot. <equipment_index> For a list of equipment indexes see getequipid(). <option_slot> can range from 1 to MAX_ITEM_OPTIONS <type> can be IT_OPT_INDEX (the ID of the option bonus, @see "Id" or "Name" in db/item_options.conf) <value> The value of the type to be set. returns 0 if value couldn't be set, 1 on success.  
     
    Release Notes
    This system allows the infusing of equipments with bonus item options. This feature is constrained to clients of packet versions greater than or equal to 20150226. Item Options and their effects are defined server-side in db/item_options.conf and client side in data/luafiles514/lua files/datainfo/addrandomoptionnametable.lub The ID of the option must tally with the correct index of the description provided in the client side file. IT_OPT_* keys and MAX_ITEM_OPTIONS macro are also exported from the source as constants. If you wish to disable item options for certain (equipment) items, an additional flag `disable_options` has been added to the item sql tables, and as `DisableOptions: true/false (boolean, defaults to false !!for equipments only!!)` to the item_db.conf files. Documentation is provided for script commands. If upgrading, don't forget to run the sql upgrade files!
    Credits
    A big thanks to all the reviewers that helped make the code closer to perfection. -
    Emistry, dastgir, MishimaHaruna, Jedzkie, Ridley8819, Asheraf, 4144.
     
    Style and Script Fixes by Asheraf (https://github.com/Asheraf)
    Initial design Idea in rAthena commit.
  22. Upvote
    tedexx reacted to Sephus in Achievement & Item Link System   
    PR # 1666
  23. Upvote
    tedexx reacted to Ridley in <NAVI> and <URL>   
    It's in /data/luafiles514/lua files/navigation/
     
    Here you can see my commit where I added support for iz_int
    https://github.com/ROClientSide/Translation/commit/76a467c446e055b3d93c2443322392a534368162
  24. Upvote
    tedexx reacted to Asheraf in <NAVI> and <URL>   
    To generate luas for custom maps use this plugin https://github.com/HerculesWS/StaffPlugins/tree/master/Haru/naviluagenerator
  25. Upvote
    tedexx reacted to Sephus in Hercules Battlegrounds   
    Thanks for reporting, these should now be fixed.
×
×
  • Create New...

Important Information

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