Jump to content
Ind

Introducing Hercules' Map Zone Database

Recommended Posts

Hercules Map Zone DB Update

    [*]Added New "All" Zone, easy way to add modifiers to all maps in the game. Automatically inherited by all existent zones.

    [*]Added new zone setting disabled_commands, can disable any command in any zone "command-name: min-group-lv" also supports min group level to override, to enable back a command disabled by inheritance just use "command-name: 0"

    [*]Added new zone setting skill_damage_cap (as requested by the community), can cap any skill damage to any range of unit types, and also a new core config "HMAP_ZONE_DAMAGE_CAP_TYPE" that controls how the cap is applied (before or after modifiers)

    [*]New target-type support (used by skill_damage_cap and disabled_skills): PET (special thanks to frenzmu06 for bringing it up!), CLONE and MOB_BOSS

    [*]Added support to ids! item and skill ids may now be employed in all sections of the file in the place of item/skill names

Format Sample

	/* 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)		// to players and monsters.		//MG_FIREBOLT: (50,"PLAYER | MONSTER")	}
New core.h config
/// Uncomment to switch the way map zones' "skill_damage_cap" functions./// When commented the cap takes place before modifiers, as to have them be useful./// When uncommented the cap takes place after modifiers.//#define HMAP_ZONE_DAMAGE_CAP_TYPE
Link~u!

Share this post


Link to post
Share on other sites

eow Ind, you mentioned something about "CLONE and MOB_BOSS" on map_zone_db.conf but i cant see any documentation where to use it lol

 

PLAYER, HOMUN, MERCENARY, MONSTER, PET, ELEMENTAL, ALL and NONE ++ CLONE & MOB_BOSS am i right?

 

these features & upgrades are outstanding

Share this post


Link to post
Share on other sites
	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)		// to players and monsters.		//MG_FIREBOLT: (50,"PLAYER | MONSTER")	}

im using the most updated svn at this time that i posted

 

im sorry for this noob question but how do you make a cap for players only?

 

i tried 

MG_FIREBOLT: (50,"MONSTER") didn't cap at 50 when im hitting a monster

MG_FIREBOLT: (50,"PLAYER") didn't cap at 50 when im hitting a player

MG_FIREBOLT: (50,"PLAYER | PLAYER") didn't cap at 50 when im hitting a player

MG_FIREBOLT: (50,"MONSTER | MONSTER") didn't cap at 50 when im hitting a monster

 

or is it really required to cap them in both player and monster?(basically using that format)

since /MG_FIREBOLT: (50,"PLAYER | MONSTER") this works perfectly

Edited by icabit

Share this post


Link to post
Share on other sites

eow Ind, you mentioned something about "CLONE and MOB_BOSS" on map_zone_db.conf but i cant see any documentation where to use it lol

 

PLAYER, HOMUN, MERCENARY, MONSTER, PET, ELEMENTAL, ALL and NONE ++ CLONE & MOB_BOSS am i right?

 

these features & upgrades are outstanding

Thanks~! https://github.com/HerculesWS/Hercules/commit/4a6e655a6fb39123363905b468a3e5dcd1451f8d

 

 

	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)		// to players and monsters.		//MG_FIREBOLT: (50,"PLAYER | MONSTER")	}
im using the most updated svn at this time that i posted

 

im sorry for this noob question but how do you make a cap for players only?

 

i tried 

MG_FIREBOLT: (50,"MONSTER") didn't cap at 50 when im hitting a monster

MG_FIREBOLT: (50,"PLAYER") didn't cap at 50 when im hitting a player

MG_FIREBOLT: (50,"PLAYER | PLAYER") didn't cap at 50 when im hitting a player

MG_FIREBOLT: (50,"MONSTER | MONSTER") didn't cap at 50 when im hitting a monster

 

or is it really required to cap them in both player and monster?(basically using that format)

since /MG_FIREBOLT: (50,"PLAYER | MONSTER") this works perfectly

 

 

I just tested to ensure and it is working, be aware of the HMAP_ZONE_DAMAGE_CAP_TYPE config, when disabled (commented out) the cap is applied before modifiers, meaning that its 50 minus whatever the target has that can reduce damage, when enabled its 50 after modifiers, then yes always 50.

Share this post


Link to post
Share on other sites

hi i don't know whats wrong with mine

here's my video showing that skill damage cap isn't working for exclusively for monsters using 

MO_EXTREMITYFIST: (200000,"MONSTER")

and i disabled HMAP_ZONE_DAMAGE_CAP_TYPE

i also set my svn to pre renewal mode in renewal.h i added a comment on all renewal mechanics

cause you might be wondering why im editing map_zone.conf if pre-re folder in the video

and i haven't added any modifications to the svn. i just edited some files like conf and mmo.h to make it work as a test server

map.h for max lvl. disabled all the npc so the emulator would loadfaster

 

pls correct me if im wrong i am very new to hercules

 

 

 

 

 

MO_EXTREMITYFIST: (200000,"PLAYER") - WORKS btw

Edited by icabit

Share this post


Link to post
Share on other sites

the type in skill_damage_cap is for who is casting the asura not who receives the damage, that is why it worked when you used "PLAYER" and not when you used "MONSTER"

Share this post


Link to post
Share on other sites

It seems it could be a nice idea to remodel this for also checking the destination of the skill or even the pair caster-receiver. But I think it's quite good as is, especially if most uses of this mods will surely be for PvP or WoE.

Share this post


Link to post
Share on other sites

It seems it could be a nice idea to remodel this for also checking the destination of the skill or even the pair caster-receiver. But I think it's quite good as is, especially if most uses of this mods will surely be for PvP or WoE.

 

 

indeed, thinking about it now, it makes more sense to make it depend on target not source

 

+1 to this

and im sorry i didn't know that it was for the caster of the skill

cause i was trying to put the cap on damaging against players

ill just hope this would be implemented in the future updates :)

Share this post


Link to post
Share on other sites

Hi sir @Ind,

 

I think the skill_damage should be re-construct, I, still don't know how this works xD. 

 

Can you please remake it like Lilith's Manage Skill Damage? Its easy to understand just like that. 

 

 

 

 

~ Thanks and more power to Hercules! :D

Share this post


Link to post
Share on other sites

i don't seem to see a damage increase when i have this configured

 

mapflags: ("adjust_skill_damage    RK_HUNDREDSPEAR    2500")

 

silly me, i used the wrong folder

Share this post


Link to post
Share on other sites

Hi sir @Ind,

 

I think the skill_damage should be re-construct, I, still don't know how this works xD. 

 

Can you please remake it like Lilith's Manage Skill Damage? Its easy to understand just like that.

I apologise but we won't be doing it, ours is more flexible and integrates with the map zones. I'm sure you will get used to it should you get some time to play with it.

Share this post


Link to post
Share on other sites

IF it could run bonus script when player enter the zone would be better , just suggestion ;)

ooo thats an interesting idea.

 

 

 

 

makes much more sense to change it like that, I'll post in this thread when the update is in the repository

Update: https://github.com/HerculesWS/Hercules/commit/fbd043f22a4b7ffa5eb6244897f923198200056f

http://herc.ws/board/topic/559-about-adjust-skill-damage-mapflag/

 

 

 

any new instructions for this?

 

 

same as before, except it works the reverse. I updated the description for skill_damage_cap in the map_zone_db.conf files.

Share this post


Link to post
Share on other sites

Would it be possible to add something like a reverse check?

 

For example:

 

Zone "All"

disabled_skills: { MG_NAPALMBEAT: "PLAYER" }

 

 

Zone "PvP"

disabled_skills: { !MG_NAPALMBEAT: "PLAYER" }

 

Basically disable Napalmbeat everywhere except on PvP. (For commands and items I am assuming they're overwritten, right?)

Share this post


Link to post
Share on other sites

By this feature, i think it made my solution to create a new RPG story for ragnarok server, Will release it soon as a project on hercules .

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

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