-
Content Count
375 -
Joined
-
Days Won
5
Posts posted by Legend
-
-
I don't know why people keep on saying that "herc is dead". Actually, devs are active on git
-
Use this instead:
//================= Hercules Database ===================================== //= _ _ _ //= | | | | | | //= | |_| | ___ _ __ ___ _ _| | ___ ___ //= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| //= | | | | __/ | | (__| |_| | | __/\__ \ //= \_| |_/\___|_| \___|\__,_|_|\___||___/ //================= License =============================================== //= This file is part of Hercules. //= http://herc.ws - http://github.com/HerculesWS/Hercules //= //= Copyright © 2013-2015 Hercules Dev Team //= Copyright © 2013 Ind //= //= Hercules is free software: you can redistribute it and/or modify //= it under the terms of the GNU General Public License as published by //= the Free Software Foundation, either version 3 of the License, or //= (at your option) any later version. //= //= This program is distributed in the hope that it will be useful, //= but WITHOUT ANY WARRANTY; without even the implied warranty of //= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //= GNU General Public License for more details. //= //= You should have received a copy of the GNU General Public License //= along with this program. If not, see <http://www.gnu.org/licenses/>. //========================================================================= //= Hercules Map Zone Database //================= More Information ====================================== //= http://herc.ws/board/topic/302-introducing-hercules-map-zone-database/ //= (TODO: replace with wiki link and detail the wiki page in a decent format ^) //================= Description =========================================== //= A unlimited number of zones may be created, a zone may be used to create a //= set of disabled items, disabled skills and mapflags to be used by as many //= maps as one chooses. //= Maps can be linked to a specific zone through the zone mapflag: //= '<map name><tab>mapflag<tab>zone<tab><zone name>'. //========================================================================= //= Available types for 'disabled_skills': //= PLAYER, HOMUN, MERCENARY, MONSTER, PET, ELEMENTAL, MOB_BOSS, CLONE, ALL and NONE //========================================================================= zones: ( { /* All zone is a dynamic (very special) zone that is forcebly inherited by ALL maps automatically */ name: "All" /* changing this name requires MAP_ZONE_ALL_NAME to also be changed in src/map/map.h file */ disabled_skills: { //both examples below disable napalm beat (id 11) to players //MG_NAPALMBEAT: "PLAYER" //ID11: "PLAYER" } disabled_items: { //Both examples below disable apple (id 501) //Apple: true //ID501: true } mapflags: ( ) /* "command:min-group-lv-to-override" e.g. "heal: 70" */ disabled_commands: { //Example Below makes @heal be used in maps within this zone only by those group lv 70 and above //heal: 70 } skill_damage_cap: { //Exemple Below caps firebolt damage in maps within this zone to a maximum 50 damage, // (depends on HMAP_ZONE_DAMAGE_CAP_TYPE in src/config/core.h) // when cast vs players and monsters. //MG_COLDBOLT: (50,"PLAYER | MONSTER") } }, { /* Normal zone is applied to all maps that are not pkable (where players cant fight each other) */ /* However, it wont be applied to maps with its own zones (specified through mapflag) */ name: "Normal" /* changing this name requires MAP_ZONE_NORMAL_NAME to also be changed in src/map/map.h file */ disabled_skills: { WM_LULLABY_DEEPSLEEP: "PLAYER" WM_SIRCLEOFNATURE: "PLAYER" WM_SATURDAY_NIGHT_FEVER: "PLAYER" SO_ARRULLO: "PLAYER" CG_HERMODE: "PLAYER" } disabled_items: { } mapflags: ( ) }, { /* PvP zone is applied to all maps with a pvp mapflag */ name: "PvP" /* changing this name requires MAP_ZONE_PVP_NAME to also be changed in src/map/map.h file */ disabled_skills: { BS_GREED: "PLAYER" CG_HERMODE: "PLAYER" } disabled_items: { Greed_Scroll: true } mapflags: ( "nocashshop", ) }, { /* PK Mode zone is only used when server is on pk_mode (battle.conf), it applies to all pvp maps that don't have their own zone */ name: "PK Mode" /* changing this name requires MAP_ZONE_PK_NAME to also be changed in src/map/map.h file */ disabled_skills: { } disabled_items: { } /* PK Mode Damage Reductions */ /* - weapon_damage_rate -40% */ /* - magic_damage_rate -40% */ /* - misc_damage_rate -40% */ /* - long_damage_rate -30% */ /* - short_damage_rate -20% */ mapflags: ( "weapon_damage_rate 60", "magic_damage_rate 60", "misc_damage_rate 60", "long_damage_rate 70", "short_damage_rate 80", ) }, { /* GvG zone is applied to all maps with a gvg mapflag */ name: "GvG" /* changing this name requires MAP_ZONE_GVG_NAME to also be changed in src/map/map.h file */ disabled_skills: { AL_TELEPORT: "PLAYER" AL_WARP: "PLAYER" WZ_ICEWALL: "PLAYER" TF_BACKSLIDING: "PLAYER" RG_INTIMIDATE: "PLAYER" WE_CALLPARTNER: "PLAYER" HP_ASSUMPTIO: "PLAYER" HP_BASILICA: "PLAYER" CG_MOONLIT: "PLAYER" WE_CALLPARENT: "PLAYER" WE_CALLBABY: "PLAYER" CR_CULTIVATION: "PLAYER" NJ_KIRIKAGE: "PLAYER" CASH_ASSUMPTIO: "PLAYER" BS_GREED: "PLAYER" SC_FATALMENACE: "PLAYER" SC_DIMENSIONDOOR: "PLAYER" } disabled_items: { Assumptio_5_Scroll: true Greed_Scroll: true Pty_Assumptio_Scroll: true } /* 5 second duration increase on GvG */ /* knockback disabled */ /* GvG Mode Damage Reductions */ /* - weapon_damage_rate -40% */ /* - magic_damage_rate -40% */ /* - misc_damage_rate -40% */ /* - long_damage_rate -20% */ /* - short_damage_rate -20% */ mapflags: ( "invincible_time_inc 5000", "noknockback", "weapon_damage_rate 60", "magic_damage_rate 60", "misc_damage_rate 60", "long_damage_rate 80", "short_damage_rate 80", "nocashshop", "gvg_noparty", ) }, { /* Battlegrounds zone is applied to all maps with a battlegrounds mapflag */ name: "Battlegrounds" /* changing this name requires MAP_ZONE_BG_NAME to also be changed in src/map/map.h file */ disabled_skills: { AL_TELEPORT: "PLAYER" AL_WARP: "PLAYER" WZ_ICEWALL: "PLAYER" TF_BACKSLIDING: "PLAYER" RG_INTIMIDATE: "PLAYER" MO_BODYRELOCATION: "PLAYER" WE_CALLPARTNER: "PLAYER" HP_ASSUMPTIO: "PLAYER" HP_BASILICA: "PLAYER" CG_MOONLIT: "PLAYER" WE_CALLPARENT: "PLAYER" WE_CALLBABY: "PLAYER" CR_CULTIVATION: "PLAYER" TK_RUN: "PLAYER" TK_HIGHJUMP: "PLAYER" SG_FEEL: "PLAYER" SG_SUN_WARM: "PLAYER" SG_MOON_WARM: "PLAYER" SG_STAR_WARM: "PLAYER" SG_SUN_COMFORT: "PLAYER" SG_MOON_COMFORT: "PLAYER" SG_STAR_COMFORT: "PLAYER" SG_HATE: "PLAYER" SG_SUN_ANGER: "PLAYER" SG_MOON_ANGER: "PLAYER" SG_STAR_ANGER: "PLAYER" SG_SUN_BLESS: "PLAYER" SG_MOON_BLESS: "PLAYER" SG_STAR_BLESS: "PLAYER" NJ_KIRIKAGE: "PLAYER" CASH_ASSUMPTIO: "PLAYER" SC_FATALMENACE: "PLAYER" SC_DIMENSIONDOOR: "PLAYER" } disabled_items: { Assumptio_5_Scroll: true Pty_Assumptio_Scroll: true } /* knockback disabled */ /* Battlegrounds Damage Reductions */ /* - weapon_damage_rate -30% */ /* - magic_damage_rate -30% */ /* - misc_damage_rate -30% */ /* - long_damage_rate -25% */ /* - short_damage_rate -25% */ mapflags: ( "noknockback", "weapon_damage_rate 70", "magic_damage_rate 70", "misc_damage_rate 70", "long_damage_rate 75", "short_damage_rate 75", ) }, { name: "Aldebaran Turbo Track" disabled_skills: { SM_ENDURE: "PLAYER" AL_TELEPORT: "PLAYER" AL_WARP: "PLAYER" AL_CURE: "PLAYER" TF_HIDING: "PLAYER" WZ_ICEWALL: "PLAYER" AS_CLOAKING: "PLAYER" RG_INTIMIDATE: "PLAYER" MO_BODYRELOCATION: "PLAYER" LK_CONCENTRATION: "PLAYER" LK_BERSERK: "PLAYER" HP_BASILICA: "PLAYER" WS_CARTBOOST: "PLAYER" ST_CHASEWALK: "PLAYER" CG_MOONLIT: "PLAYER" SC_FATALMENACE: "PLAYER" SC_DIMENSIONDOOR: "PLAYER" GN_CARTBOOST: "PLAYER" } disabled_items: { Wing_Of_Fly: true Anodyne: true Green_Potion: true Panacea: true } }, { name: "Jail" disabled_skills: { TK_JUMPKICK: "PLAYER" TK_HIGHJUMP: "PLAYER" } disabled_items: { Wing_Of_Fly: true Wing_Of_Butterfly: true Giant_Fly_Wing: true WOB_Rune: true WOB_Schwaltz: true WOB_Rachel: true WOB_Local: true } }, { name: "Izlude Battle Arena" disabled_skills: { RG_INTIMIDATE: "PLAYER" AL_TELEPORT: "PLAYER" SC_FATALMENACE: "PLAYER" SC_DIMENSIONDOOR: "PLAYER" } disabled_items: { Wing_Of_Fly: true } }, { name: "GvG2" inherit: ( "GvG" ) /* will import all gvg has */ disabled_skills: { TK_HIGHJUMP: "PLAYER" SA_ABRACADABRA: "PLAYER" } }, { name: "Sealed Shrine" disabled_skills: { MG_SAFETYWALL: "PLAYER" AL_TELEPORT: "PLAYER | MONSTER | HOMUN | MERCENARY" RG_INTIMIDATE: "PLAYER | MONSTER" HP_ASSUMPTIO: "PLAYER" CASH_ASSUMPTIO: "PLAYER" SC_FATALMENACE: "PLAYER" SC_DIMENSIONDOOR: "PLAYER" } }, { name: "Memorial Dungeon" /* ETower, Orc's Memory, Nidhoggur's Nest, etc */ disabled_skills: { AL_TELEPORT: "PLAYER | MONSTER | HOMUN | MERCENARY" WZ_ICEWALL: "PLAYER" RG_INTIMIDATE: "PLAYER | MONSTER" PF_SPIDERWEB: "PLAYER" NPC_EXPULSION: "PLAYER" SC_FATALMENACE: "PLAYER" SC_DIMENSIONDOOR: "PLAYER" } }, { name: "Towns" disabled_skills: { AM_CANNIBALIZE: "PLAYER" AM_SPHEREMINE: "PLAYER" CR_CULTIVATION: "PLAYER" BS_GREED: "PLAYER" SC_MANHOLE: "PLAYER" WM_POEMOFNETHERWORLD: "PLAYER" GN_WALLOFTHORN: "PLAYER" } disabled_items: { Greed_Scroll: true } }, { name: "PKRestrict" disabled_skills: { AL_HEAL: "PLAYER" } } )
Reason:
You didn't add a comma at the closing curlys of "towns" mapflag -
Packets for 2015-10-29 still ain't encoded therefore, this ain't supported on Herc.
Use 2014 clients, I recommend 2014-10-22b if you want a more stable client
-
Bump, I've been experiencing this issue as well.
I've tried changing to:
db_username: "root"
db_password: "ragnarok"
db_database: "log" <----- from ragnarok
Still no luck, I've got those guide from rathena however, that trick isn't working for me.
Here:
Did you load your logs.sql to your database? This contains loginlog table
-
omg, how did you add the zone?
can you show to us your map_zone_db.conf?
-
thanks @mysterious
-
You did not load the additional zone on your map_zone_db.conf which i included on the paste.
-
This works fine on my test server:
http://upaste.me/c52f33576f5ee0fa0
Tell me if there's something wrong with the script
Note: Instructions are included there, please do follow.
Info:- I didn't included item restriction on map_zone_db because its a bit redundant to included it since restrictions are already applied on the script itself.
- Edit the config as much as you like.
- We need to separate the maps because of the mapflags, if you like to use the same map then duplicate it as what frenzmu06 mentioned above.
-
but there is so many broken packet when i use old client.
What client version are trying to use?
and what are the errors have you encountered?
-
Find this function:
function script thqs_trade_token { @type = getarg(0); if( @type == 4 ) close; // 10^0, 10^1, 10^2 @type -= 1; @price = pow(10, @type); // 10^3, 10^4, 10^5 @type += 3; // So we can use pow later to determine the qt of Zeny @prize = pow(10, @type); if( #Treasure_Token < @price ) { mes "You don't have enough tokens!"; close; } if( Zeny == MAX_ZENY ) { mes "You can't add more zeny to your character"; close; } Zeny += @prize; #Treasure_Token -= @price; close; }
and replace it with this:function script thqs_trade_token { @type = getarg(0); if( @type == 4 ) close; // 10^0, 10^1, 10^2 @type -= 1; @price = pow(10, @type); // 10^6 * 5 = 5m, 10^7 * 5 = 50m, 10^8 * 8 = 500m @type += 6; // So we can use pow later to determine the qt of Zeny @prize = pow(10, @type); @fnlprize = @prize * 5; if( #Treasure_Token < @price ) { mes "You don't have enough tokens!"; close; } if( Zeny == MAX_ZENY ) { mes "You can't add more zeny to your character"; close; } Zeny += @fnlprize; #Treasure_Token -= @price; close; }
and don't forget to change the zeny on menu on this line:
select("1000z - 1T","10000z - 10T","100000z - 100T","Nevermind");
Result: Zeny prize would be = 5m, 50m, 500m.
Reason: This script uses pow function and I couldn't think of any number that if multiplied by itself makes 5 so therefore, i did that way.
Other scripters here might have other tricks to share -
This aint compatible either rathena or herc, the file contains different scripting style.
Yet, anyone's will to convert it and make it compatible with the latest herc
@ts thanks for sharing
-
Try this out yet im not sure if this is what you are looking for.
https://github.com/HerculesWS/Hercules/blob/master/conf/map/battle/monster.conf#L239
-
It seems you're using a different emu, herc item db doesn't look like that
But anyways, did you add the spr and act properly?
You can always refer to wiki upon adding custom items http://herc.ws/wiki/Custom_Items
-
-
Here's the latest client compatible with latest herc files: http://herc.ws/board/topic/9600-2015-05-13aragexe-release/
But i do not recommend this for live server
-
I don't have any idea on making it as an item script,
so i did this NPC script:
-
Thanks for sharing this
-
Latest supported client 2015-05-13, packets were already there but not pretty much stable and i dont recommend it for live server
-
If your server is running with pre-re, it is already set to "All: true" and "Novice: false" which means it can be equipped with by all job except Novice.
If your server is running with renewal:
Under job, add this:Ninja: true Taekwon: true Star_Gladiator: true Gunslinger: true
so, job should looks like this:
Job: { Ninja: true Taekwon: true Star_Gladiator: true Gunslinger: true Swordsman: true Magician: true Archer: true Acolyte: true Merchant: true Thief: true Knight: true Priest: true Wizard: true Blacksmith: true Hunter: true Assassin: true Crusader: true Monk: true Sage: true Rogue: true Alchemist: true Bard: true }
-
my pleasure
-
Afaik, you need to wait 60 seconds after changes have been done with your guild level since you are sending query to sql
-
Correct me if i did wrong
Hope this works *tho, I never tried this one in-game*
insert this on your script
EDIT: i forgot to attach player id on getcharid
query_sql "SELECT `guild_lv` FROM `guild` WHERE `guild_id` = '" + getcharid(2, ""+strcharinfo(0)+"") + "'",.@gldlvl; if (.@gldlvl < 50) { mes "Sorry, your guild level didn't reach it's level requirement."; close; }
Insert in what line? Thanks man for the help.
Add it below this:
if ( !getcharid(2) ) { mes "[ Guild Package ]"; mes "you must have a guild"; close; }
-
Correct me if i did wrong
Hope this works *tho, I never tried this one in-game*
insert this on your script
EDIT: i forgot to attach player id on getcharidquery_sql "SELECT `guild_lv` FROM `guild` WHERE `guild_id` = '" + getcharid(2, ""+strcharinfo(0)+"") + "'",.@gldlvl; if (.@gldlvl < 50) { mes "Sorry, your guild level didn't reach it's level requirement."; close; }
-
The default woe controller has the same principle https://github.com/HerculesWS/Hercules/blob/master/npc/custom/woe_controller.txt
Script Command : setmobdata / getmobdata
in Suggestions
Posted
I hope this will be pushed through. It's a good function to be implemented most importantly in making events and instances.