
Mhalicot
-
Content Count
1971 -
Joined
-
Last visited
-
Days Won
37
Reputation Activity
-
Mhalicot got a reaction from Mumbles in HELP ME @go /@warp delay
Same Topic > http://herc.ws/board/topic/3021-help-with-this-script-please/?hl=%2Bwarp+%2Bdelay
- script atcmd_warpdelay -1,{OnInit: bindatcmd "warp",strnpcinfo(3)+"::OnAtcommand",0,99; end;OnAtcommand: set .@min,5; //delay in mins set .@delay,.@min * 60; if (warpdelay > gettimetick(2)) { set .@delaytime,warpdelay - gettimetick(2); message strcharinfo(0),"You must wait "+.@delaytime+" seconds to use this command again."; end; } setarray .@param$,.@atcmd_parameters$[0],.@atcmd_parameters$[1],.@atcmd_parameters$[2]; set .@map$,implode(.@param$," "); atcommand "@warp "+.@map$+""; set warpdelay,gettimetick(2) + .@delay; end;} Credit: kyeme
I think this can answer your question without editing your source..
-
Mhalicot reacted to Haru in R>Item data structure overhaul error msg
The crash should be solved in https://github.com/HerculesWS/Hercules/commit/d9a89c56ea63e369999ca13f1584eef9e511490f (it was an oversight on my part caused by a last minute change before committing)
-
Mhalicot got a reaction from Gelo in Item description problem Ragexe 2012-07-16 Client
You need to use iteminfo.lub/lua for your item description.. pLease read
Custom Items
Note: Only Renewal Clients <= 2012-04-10a & Main Clients <= 2012-07-10a are using *table.txt
-
Mhalicot got a reaction from Shio in NEMO - Client Patcher
yes you can use 20130807 client and diff it that way
you can search here does diffs, I'm sure it is discussed already..
-
Mhalicot reacted to Dastgir in [RELEASE]Kagerou Oboro Job Change Quest[iRO Based]
I will update this soon,
-
-
Mhalicot got a reaction from Haru in Item DB Converter Problem
something wrong with your custom script,
Missing type of item
-
Mhalicot got a reaction from Shio in NEMO - Client Patcher
since you are using 2012 client I recommend you to use WeedDiffGen.
Note what Neo said:
His patcher is more compatible on 2013 clients.
-
Mhalicot got a reaction from GM.PiXeL in Item DB Converter Problem
something wrong with your custom script,
Missing type of item
-
Mhalicot reacted to Haru in Item DB file structure overhaul
Item DB file structure overhaul
Hello~! Uguu~?!
We noticed that the Item Database file format, unchanged for years, is less than optimal (read: terrible)
The file is really hard to read (is it the fifteenth or the sixteenth zero? No wait, that line has an extra comma!!) Whenever you merge an update, if you had a customized entry, you're sure to encounter large conflicts that won't be trivial to solve How do we fix it?
We're switching to a brand new, modern, file format, making use of the libconfig library we're already using for other configuration files.
It uses libconfig. This means the parser is more solid and, perhaps not faster, but surely easier to maintain, with simpler code. And the file format is something you're already used to, since it's the same as many other configuration files we use! Empty fields and the long sequences of those hard to count commas are gone! You just specify the fields you need, and the others can be completely skipped. The item_db2 entries can be left incomplete and set to inherit the original item_db entry. If you have a custom script for your Knife[3], you can just write the script in your item_db, and let it read the other values from the item_db, so that if we update them, you get the update automatically Item scripts can be split into several lines, so they can made easier to read, especially the long ones. We can finally add more fields (to support new features) to the file at any time, easily and without having to edit all the lines (or force you to edit all the lines of your custom item_db2)! Pre-Renewal and Renewal Item databases now use the same format. This also means that you can make use of the min/max level feature in both renewal and pre-renewal (of course, pre-renewal servers will ignore the Matk field, if you specify it, since it's meaningless there) What does it look like?
Each entry follows this structure:
{ // =================== Mandatory fields =============================== Id: ID (int) AegisName: "Aegis_Name" (string, optional if Inherit: true) Name: "Item Name" (string, optional if Inherit: true) // =================== Optional fields ================================ Type: Item Type (int, defaults to 3 = etc item) Buy: Buy Price (int, defaults to Sell * 2) Sell: Sell Price (int, defaults to Buy / 2) Weight: Item Weight (int, defaults to 0) Atk: Attack (int, defaults to 0) Matk: Magical Attack (int, defaults to 0, ignored in pre-re) Def: Defense (int, defaults to 0) Range: Attack Range (int, defaults to 0) Slots: Slots (int, defaults to 0) Job: Job mask (int, defaults to all jobs = 0xFFFFFFFF) Upper: Upper mask (int, defaults to any = 0x3f) Gender: Gender (int, defaults to both = 2) Loc: Equip location (int, required value for equipment) WeaponLv: Weapon Level (int, defaults to 0) EquipLv: Equip required level (int, defaults to 0) EquipLv: [min, max] (alternative syntax with min / max level) Refine: Refineable (boolean, defaults to true) View: View ID (int, defaults to 0) Script: <" Script (it can be multi-line) "> OnEquipScript: <" OnEquip Script (can also be multi-line) "> OnUnequipScript: <" OnUnequip Script (can also be multi-line) "> // =================== Optional fields (item_db2 only) ================ Inherit: true/false (boolean, if true, inherit the values that weren't specified, from item_db.conf, else override it and use default values) }, Here's a Red Potion in the old format:
501,Red_Potion,Red Potion,0,50,,70,,,,,0xFFFFFFFF,7,2,,,,,,{ itemheal rand(45,65),0; },{},{} And here's the same Red Potion in the new format:
{ Id: 501 AegisName: "Red_Potion" Name: "Red Potion" Type: 0 Buy: 50 Weight: 70 Script: <" itemheal rand(45,65),0; "> }, Not convinced yet it's easier to read? Okay, let's try a Poison Bottle:
678,Poison_Bottle,Poison Bottle,2,5000,,100,,,,,0xFFFFFFFF,7,2,,,,,,{ if(Class==Job_Assassin_Cross) { sc_start SC_DPOISON,60000,0; sc_start SC_ATTHASTE_INFINITY,60000,0; } else percentheal -100,-100; },{},{} changes to:
{ Id: 678 AegisName: "Poison_Bottle" Name: "Poison Bottle" Type: 2 Buy: 5000 Weight: 100 Script: <" if(Class==Job_Assassin_Cross) { sc_start SC_DPOISON,60000,0; sc_start SC_ATTHASTE_INFINITY,60000,0; } else percentheal -100,-100; "> }, Better, isn't it!? Let's now try a Jellopy:
909,Jellopy,Jellopy,3,6,,10,,,,,,,,,,,,,,{},{},{} Count the commas! Did I miss any? An extra comma you say? No, I don't want to count them, thanks...
{ Id: 909 AegisName: "Jellopy" Name: "Jellopy" Buy: 6 Weight: 10 }, Not even a comma!
Now, help me read what this item does?
13307,Krieger_Huuma_Shuriken1,Glorious Shuriken,4,20,,0,55,,1,0,0x02000000,7,2,34,4,80,1,22,{ bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus bMatkRate,15; autobonus "{ bonus2 bSkillAtk,NJ_HUUMA,100; bonus2 bSkillAtk,NJ_ISSEN,100; }",50,10000; bonus bUnbreakableWeapon,0; if(getrefine()>5) { bonus2 bAddRace,RC_DemiHuman,(getrefine()-3)*(getrefine()-3); bonus2 bIgnoreDefRate,RC_DemiHuman,5; } if(getrefine()>8) { bonus5 bAutoSpellOnSkill,NJ_ISSEN,AL_HEAL,10,1000,1; bonus4 bAutoSpellOnSkill,NJ_HUUMA,NPC_CRITICALWOUND,2,200; } },{},{} { Id: 13307 AegisName: "Krieger_Huuma_Shuriken1" Name: "Glorious Shuriken" Type: 4 Buy: 20 Atk: 55 Range: 1 Job: 0x02000000 Loc: 34 WeaponLv: 4 EquipLv: 80 View: 22 Script: <" bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus bMatkRate,15; autobonus "{ bonus2 bSkillAtk,NJ_HUUMA,100; bonus2 bSkillAtk,NJ_ISSEN,100; }",50,10000; bonus bUnbreakableWeapon,0; if(getrefine()>5) { bonus2 bAddRace,RC_DemiHuman,(getrefine()-3)*(getrefine()-3); bonus2 bIgnoreDefRate,RC_DemiHuman,5; } if(getrefine()>8) { bonus5 bAutoSpellOnSkill,NJ_ISSEN,AL_HEAL,10,1000,1; bonus4 bAutoSpellOnSkill,NJ_HUUMA,NPC_CRITICALWOUND,2,200; } "> }, Which one did you find easier to read? Old or new format?
Want to see an example that specifies both min and max levels? Here you go:
{ Id: 2819 AegisName: "Swordman_Manual" Name: "Swordman Manual" Type: 5 Buy: 0 Weight: 100 Job: 0x00000001 Upper: 47 Loc: 136 EquipLv: [1, 12] Refine: false Script: <" bonus bMaxSP,100; skill SM_BASH,1; skill SM_PROVOKE,1; skill SM_MAGNUM,1; "> }, Okay, one last example. Let's try to make an item_db2 entry for a Pupa Card that gives a bonus of 1000 HP rather than just 700.
{ Id: 4003 Inherit: true Script: <" bonus bMaxHP,1000; "> }, Done. No need to rewrite the name, location, prices... those are already in the item_db!
But... I have several custom items, do I have to manually convert all of them...?
Of course you do! No, I'm kidding, don't hate me
It's true that you need to convert your item database to the new format, but we can do it for you!
Go to http://haru.ws/hercules/itemdbconverter/ and paste (or upload) your item_db2.txt (or even your item_db.txt if you have custom entries there), press the Convert button, wait a few seconds and you're done! It's already converted for you. Easy, isn't it? Don't trust us? No, no, we don't need your custom items, you can sleep safe... But if you still don't want to paste anything on a website... well, we have provided the source code of the converter script! It's in the 'tools' folder of the Hercules repository. All you need is a Perl interpreter (and if you're running Linux or Mac OS, on either your server or your own computer, it's almost certain that you already have that). All you have to do is run it (example: perl tools/itemdbconverter.pl < db/item_db2.txt > db/item_db2.conf), and your item database will be converted in a split second! What if I was using SQL item databases?
Well... Then you won't have to worry about the txt databases, unless you were creating the items in txt, then converting them to sql (if you're not doing this, maybe you should consider it, you know? It's easier to create and manage them in txt even if you use the sql version!)
If you were converting your custom item databases from the txt version to sql through the db2sql plugin, there are good news for you! We just updated the plugin, and now it's able to create a .sql script rather than just inserting the entries into your database. This means that you can create the SQL entries in your own computer, without even needing a database (just a copy of Hercules), without risking to slow down your server, and then upload them whenever you want.
And if you're relying on the .sql scripts we provide... well, there are still good news for you! Outdated item_db.sql files are a thing of the past now: those scripts will get updated automatically after every commit by our HerculesWS API bot, exactly like the HPM Hooks!
As a final note, now the pre-re and re databases share the same structure in SQL as well! no more column mismatch if you're trying to import into your Renewal server an item that was meant for pre-renewal.
If you have data already imported to your item_db2 SQL table, it'll be updated to the new table format through the regular upgrade sql mechanism (just run the provided script in the sql-files/upgrades folder). Please note that the script requires MySQL 5.0 or newer -- if you're still on MySQL 4.0, please open it in a text editor, read the comments and run the provided queries manually.
I have this event item entry that came with an old script I downloaded...
No worries, you can get it converted. Use the same script (or the provided web page) you'd use to convert an entire item database, it'll work just fine even for an item or two!
Special thanks
To Ind, for bringing up the idea and pushing it forward until it was implemented. And for his awesome work on the HerculesWS API and database converter plugin. To Yommy, for the original idea, and for some invaluable help finalizing the actual database format. Links~u!
Main commit. Removed redundant item_db2_re.sql (now both have the same structure). db2sql plugin update. item_db2 inheritance. item_db2 SQL upgrade script. -
Mhalicot got a reaction from karazu in @afk v 2.0 usable even in WOE/PVP is active in the area.
yes delete this part in my plugins
if(map->list[sd->bl.m].flag.pvp || map->list[sd->bl.m].flag.gvg){ clif->message(fd, "You may not use the @afk maps PVP or GVG."); return false;} then recompile
-
-
Mhalicot got a reaction from Mumbles in Error Compiling Emulator
if you are using vs2012, then use Hercules-11.sln
note: Hercules-12.sln is for vs2013
you can still use hercules-12.sln but you need to edit the properties, and in general change platform toolset to v110 then apply and try to recompile.
-
Mhalicot got a reaction from Mumbles in How to open function mail system on server?
Choose your langtype here..
-
Mhalicot reacted to Rytech in Official Oktoberfest Costume Job
Ragnarok Costume Job - Oktoberfest
Job ID: OKTOBERFEST = 29
Effect State: OPTION_OKTOBERFEST = 0x10000000
Item: 22625 = Oktoberfest_Bag (Activates the costume for 10 minutes)
// Oktoberfest Outfit22625,Oktoberfest_Bag,Oktoberfest Bag,2,0,,100,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_OKTOBERFEST,600000,0; },{},{}
Ragnarok Oktoberfest Job Sprites.rar
Note: This is a official costume job released exclusively for European RO server from the Oktoberfest event. I don't know if it works on the latest kRO clients we can connect with.
Thanks goes to jaBote for sending me the sprites.
-
Mhalicot got a reaction from Mumbles in how to add skill on monster?
go to trunk/db/re/mob_skill_db.txt
and search for 1502, Bring it on!
and add any skill you want.
-
Mhalicot got a reaction from jaBote in how can i increase the base and job exp rates
1. edit conf/battle/exp.conf for exp rates
2. edit conf/battle/player.conf for max stats parameters and atkspeed
3. edit db/re/exp.txt and src/map/map.h for max level
4. then recompile, and your done..
-
Mhalicot got a reaction from kerbiii in how to add custom map?
You need to run mapcache.exe in main folder not in tools..
put does in data/
-
Mhalicot got a reaction from Smit in [AtCommand] afk
File Name: [AtCommand] afk
File Submitter: Mhalicot
File Submitted: 24 Oct 2013
File Category: Plugins
HPM @afk complete package.
Compatible with Windows System Only
if you are using Linux, ignore other files and use only afk.c
Instruction.
1. Download and extract files using any application that can extract it.
2. extract it in your server directory ex: C:/RO Server/Hercules/
2.1. edit conf/plugins.conf and add afk
3. Open Hercles/afk/afk.vcxproj and recompile.
4.Your done. you can now try your plugins
Note: It is compiled already, so don't bother to recompile it.
use recompile if you modify the script.
If you have any questions feel free to drop a comment.
for more info on how to to use HPM visit Here
(Tested on Hercules rev. e9d695)
Credit: Original file by Rebel and converted by Me
Click here to download this file
-
Mhalicot got a reaction from Happy in [AtCommand] afk
it must be ..srccommon;..3rdpartymsinttypesinclude
not the whole location..
-
Mhalicot got a reaction from nikki1200 in How to change the Equipment into Costume
try to relogin your server. and make sure you reload your itemdb use @reloaditemdb
-
Mhalicot got a reaction from nikki1200 in How to change the Equipment into Costume
// Structure of Database:// ID,AegisName,Name,Type,Buy,Sell,Weight,ATK,DEF,Range,Slots,Job,Upper,Gender,Loc,wLV,eLV,Refineable,View,{ Script },{ OnEquip_Script },{ OnUnequip_Script } replace the Loc with 4096
-
Mhalicot reacted to Mystery in Septober Digest 2013
As mentioned in my previous news, here is the Septober Digest that covers the month of September and October!
Septober Digest 2013
The following digest covers the month of September 1st - October 31st 2013.
Team Changes
[*]sevenzz23 has joined as a Community Contributor. [*]ossi0110 has joined as a Community Contributor. [*]kyeme has been moved from Community Contributor to High Council. [*]Uzieal joined the team as a Graphic Moderator.
Development Highlights
[*]Official Monster Transformation Support (9692bc0) [*]HPM: Hooking (a49787f) (Topic) [*]Changing 'tick' variables to 64 bit (44c33fd) [*]Addition of idletime options (e08c05a) [*]Official Font Support (4340bf7) [*]New ability to use NPC Constants instead of their Sprite IDs (124ab2a) [*]Shadow System implemented (baef78f, Topic) [*]Mapflag: 'nocashshop' has been added (8629562) [*]'Quest Bubbles' modified to work as Official (94b7b25) [*]Added support for missing or empty categories in cashshop_db.conf (448dce8) [*]Introduction of Bank Support (c5c3381) (Topic) [*]Support of Rebellion Class has made its way to Hercules! (7d8f83d) (Update: f8f073b) [*]A wide range of HPM Interface Updates: [*]Mob.c Interface [*]Unit.c Interface [*]Npc.c Interface [*]Pet.c Interface [*]Path.c Interface [*]Quest.c Interface [*]Itemdb.c Interface [*]Battleground.c Interface [*]npc_chat.c interface [*]Guild.c Interface [*]Storage.c Interface [*]Homunculus.c Interface [*]Instance.c Interface [*]Intif.c Interface [*]log.h Interface [*]Mercenary.c Interface [*]Party.c Interface [*]Trade.c Interface [*]Searchstore.c Interface [*]pc.c Interface [*]Script.c Interface [*]Status.c Interface
Scripting Highlights
[*]downrefitem command update (baa5c1f) [*]Addition of 'consumeitem' as an alias of 'itemeffect' (b703fbd) [*]Script commands that have been added: addmonsterdrop and delmonsterdrop (7ddcff9) [*]query_sql will now halt script execution when a invalid query is used (3a8837f)
Server-Client Highlights
[*]Fixed several packet errors with pre-renewal clients from 2006-2008 (df0a324) (Updated: 272ff45) [*]Fixed super novices' guardian angel prayer (ae850bd) [*]Job ranking display fixes (3738fc7) [*]Fixed Char Deletion Bug on 2013++ Clients (ca15680) [*]Fixed Client Login Packet 0x0825 (fad3040) [*]Attempting to add a item to a full storage will no longer render the item un-draggable (24556fb) [*]Movement of invisible units is no longer sent to foes (e587d71) [*]Storage list/packet size is no longer a problem (d080ed8)
Skill Fixes
[*]Guild Aura bug that'd disregard friend-or-foe data (eb53067) [*]Fixed skill unit bug that'd disregard friend-or-foe data (e2330c6) [*]Addition of 'WE_BABY' distance check (a879388) [*]Shadow Form and Multi-Hit Skills (9de926c)
Build System Highlights
[*]Added Makefile.in change detection (and auto-rebuild) capabilities (beaf3a2) [*]Makefiles have been improved to better serve concurrent jobs (-j) (babdf60) [*]Changed Makefiles to avoid rebuilding targets if nothing was modified (233453c) [*]Added 'buildclean' target to all makefiles (d6965a8)
NPC & Database Highlights
[*]Support of Moon Star and Super Star items (da1f16b) [*]Huge Instance Improvements/Updates (93f6104) [*]Support of Skill ID Constants Added (c87513d[/size]) [*]Moscovia Quest Update / Catalog Magician Move (f821e43) [*]Massive Merge on NPCs (418dd82) [*]Homun-S Quest Updated (a2e01e4) [*]Updated spawns for: iz_dun05, dic_dun, dewata and dew_dun (d8f102f)
September Statistics
[*]During the period there were 130 Commits. [*]Of these 130 commits, 20 included bug-fixes. [*]5 Commits from Pull Requests [*]In this month, there were 112,008 Additions and 22,003 Deletions.
October Statistics
[*]During the period there were 136 Commits. [*]Of these 136 commits, 31 included bug-fixes. [*]12 Commits from Pull Requests [*]In this month, there were 99,179 Additions and 82,893 Deletions.
-
Mhalicot got a reaction from Angelmelody in Please Implement Accound Bound Items
Update: Item Bind Complete. #214
-
Mhalicot reacted to darklion30 in spawn mobs
last question po san po pwede baguhin po ung or dagdagan ng drops ung mobs po