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!
Custom NMs
Re: Custom NMs
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
Hi, I run The Demiurge server.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. - Martin Golding
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. - Martin Golding
DO NOT PRIVATE MESSAGE ME ABOUT BUGSPLS USE [ code ] CODE TAGS [ /code ] WHEN POSTING CODE
-
- Posts: 34
- Joined: Sat Feb 10, 2018 1:52 am
Re: Custom NMs
Can you actually use the renamer to edit level, HP, MP and so on?
Re: Custom NMs
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.
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.
Nasomi FFXI Community Server - Classic CoP era fun!
http://www.facebook.com/nasomi
http://www.twitter.com/nasomi
http://www.facebook.com/nasomi
http://www.twitter.com/nasomi
Re: Custom NMs
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:
Example of changing mobs LEVEL via UPDATE statement:
Same level change, but via REPLACE statement (btw don't use replace for droplist changes):
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
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
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
Code: Select all
REPLACE INTO `mob_groups` VALUES (125,500,5,14400,0,370,0,0,99,99,0);-- Bonnacon now always level 99;
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
Last edited by TeoTwawki on Wed Feb 21, 2018 11:46 pm, edited 1 time in total.
Hi, I run The Demiurge server.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. - Martin Golding
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. - Martin Golding
DO NOT PRIVATE MESSAGE ME ABOUT BUGSPLS USE [ code ] CODE TAGS [ /code ] WHEN POSTING CODE
Re: Custom NMs
thank you so much for all of your help when i ask questions you are all so helpful
-Neko
-Neko
Re: Custom NMs
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.
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
@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:
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.
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
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.