Page 1 of 1

Custom NMs

Posted: Sun Feb 04, 2018 12:16 pm
by NekoNinja
Hello,
My question today is about NMs. I know you can adjust them globaly to have more HP etc is there a way to only enhance certain mobs? is it as simple as just messing around in their table?

also

I have used the renamer thing when playing on Valhalla which is an awesome server btw. is there a guide to follow to use the renamer on my own server?

basically i want to take pointless NMs add drops, rename them and make them stronger more or less to add play value to my server and be able scale difficulty levels

thanks in advance!

Re: Custom NMs

Posted: Sun Feb 04, 2018 3:56 pm
by TeoTwawki
It's better to just use an ID outside of the range of existing ones for the zone but within the 0-1023 limit for the NPC/MOB block for making custom NMs if going the renamer route. As for actually using renamer the info you see is in the example list's it comes with. :) I never wrote a guide for it because its pretty straight forward and I marked the min/max IDs for each zone already. https://github.com/TeoTwawki/renamer/bl ... .lua#L1791

Re: Custom NMs

Posted: Fri Feb 16, 2018 1:20 am
by warlord1352
Can you actually use the renamer to edit level, HP, MP and so on?

Re: Custom NMs

Posted: Sat Feb 17, 2018 12:03 am
by nasomi
No, you would do all that in the database.

select * from mob_spawn_points a, mob_groups b, mob_pools c where a.groupid = b.groupid and b.poolid = c.poolid and a.mobid >> 12 & 0xFFF = 103;

Replace 103 with any zoneid you want, zoneid 103 is the valkurm dunes. You can find zoneid's in the zone_settings table in the database.

Re: Custom NMs

Posted: Sat Feb 17, 2018 11:55 pm
by TeoTwawki
Sorry I only answered the "guide to using renamer" part.

The rest, make new lines for new NMs, preferably in a new file like mob_pools_custom.sql or something. Or modify an existing NM's using UPDATE or REPLACE statements saved to a file. If you edit your live database and later have to replace the table with updated darkstar files you will lose your customization's because the data would get wiped (same reason we have to use ALTER statements or a GUI editor to update character tables). Nasomi's instructions are for actions on a live database, not files.

Example of wiping out a mobs droplist to replace it with your own:

Code: Select all

DELETE FROM `mob_droplist` WHERE dropId=4; -- erasing Absolute Virtue's entire droplist
INSERT INTO `mob_droplist` VALUES (4,0,0,1000,1260,125); -- AV now drops a Water Ore at a 12.5% rate for example purposes
Example of changing mobs LEVEL via UPDATE statement:

Code: Select all

UPDATE `mob_groups` SET minLevel = 99 WHERE group groupid = 125; -- Bonnacon's minimum spawn lvl is now 99
UPDATE `mob_groups` SET maxLevel = 99 WHERE group groupid = 125; -- Bonnacon's maximum spawn lvl is now 99
Same level change, but via REPLACE statement (btw don't use replace for droplist changes):

Code: Select all

REPLACE INTO `mob_groups` VALUES (125,500,5,14400,0,370,0,0,99,99,0);-- Bonnacon now always level 99;
As you can see, REPLACE is useful when you want to rewrite every value of the row and not just 1 or 2 values.
For reference, you can find the field names where I got "minLevel" and "maxLevel in the top of sql\mob_groups.sql

Mob HP and MP are calculated per job level and the value in mob_family_system unless you override them in mob_groups. If you set a value in mob_groups you will get exactly that hp or mp, assuming you haven't touched the multipliers in your conf files.

tl;dr
yes just messing around in their table

Re: Custom NMs

Posted: Tue Feb 20, 2018 5:29 pm
by NekoNinja
thank you so much for all of your help when i ask questions you are all so helpful :)

-Neko

Re: Custom NMs

Posted: Tue Apr 03, 2018 2:33 pm
by BraMithra
I just started playing around with my own server. Rather than start a new thread this thread seems to be similar to what I need to ask.

So I use mysql workbench 6.3CE to edit my sql files. This is my first time ever using sql so this might be a stupid question.

In mysql workbench when you open the mob drop list file you can see the entire table in the result grid. I have made edits to the sql files from the result grid before, and they have worked.

I found the drop pool I wanted to edit by filtering the result grid to 2922. This is Rampaging Rams drop pool. He has 10 rows all starting with 2922. What I want to do is make Rampaging Ram drop Lumbering Horn in addition to his normal drops. When I make the edit to add 911 or 910 (whatever it is) in the dropId, to just one of the rows in the result grid, then change the itemRate to 1000 or whatever. It will change every row to this. All 10 rows will then be changed. Sure this will make Rampaging Ram drop the horn, but I don't want 10 horns.

Can you make edits like this from the result grid? Making the edit from the result grid would make things simple. If you can not make a edit from the result grid without changing the entire pool, then how do you do it?

The result grid would be the ideal method.

Re: Custom NMs

Posted: Wed Apr 04, 2018 6:52 am
by Avatarati
@BraMithra

Best way to learn is by studying the actual .sql files in an editor, like Notepad++. Look at how the queries are built. In mob_droplist, you'll see a lot of INSERT INTO statements. Here's an example:

Code: Select all

INSERT INTO mob_droplist VALUES ('2185','0','0','1000','3082','50'); -- Withered Bud
You really only need to focus on three columns: dropid, itemid, rate. Once you figure out the drop ID of the monster you are interested in, build the query like so:

INSERT INTO mob_droplist VALUES ('dropid','0','0','1000','itemid','rate');

Then, in Workbench, run this query and you'll now have a mob that drops your own custom entry. Please keep in mind that you will need to restart the map server in order for the changes to be implemented.

Here's a tip too: if you're going to be customizing stuff, it's almost essential to save your customization queries. Every time you update the database, you will need to insert the changes again. Going through and manually altering tables isn't ideal (very tedious/time consuming). This seems trivial at first, but after you start doing more and more customizations, saving queries will become a life safer.