Mob DB file structure overhaul

@@Haru @@4144

How to remove Orc_Load_Card using mob_db2.conf?

{
Id: 1190
Inherit: true
SpriteName: "ORC_LORD"
Drops: {
Orc_Load_Card: false or 0 (is not working)
}
},
 
Its not supported?
(I hate touching mob_db.conf
default_sad.png
)
@@kyeme, Instead of adding only the Orc_Load_Card in the monster information in mod_db2.conf, Why you don't insert all of its drop and don't add the Orc_Load_Card?

@EDIT: I tried it and it's working.

 
Last edited by a moderator:
@@Frost

Yes I did and its working.

It is nice if we have a settings like "0" to remove the specific item, so its not hard to see what changes you made

{
Id: 1190
Inherit: true
SpriteName: "ORC_LORD"
Drops: {
      Brood_Axe: 0
Orc_Load_Card: 0
 },
{
Id: 1288
Inherit: true
SpriteName: "EMPELIUM"
Hp: 342150
},
{
Id: 1191
Inherit: true
SpriteName: "MIMIC"
Drops: {
Emperium: 0
Rosary_: 0
Elunium_Stone: 0
Mimic_Card: 0
}


},
 
@@Frost

Yes I did and its working.

It is nice if we have a settings like "0" to remove the specific item, so its not hard to see what changes you made

{
Id: 1190
Inherit: true
SpriteName: "ORC_LORD"
Drops: {
      Brood_Axe: 0
Orc_Load_Card: 0
 },
{
Id: 1288
Inherit: true
SpriteName: "EMPELIUM"
Hp: 342150
},
{
Id: 1191
Inherit: true
SpriteName: "MIMIC"
Drops: {
Emperium: 0
Rosary_: 0
Elunium_Stone: 0
Mimic_Card: 0
}


},
Yeah, you have a point on that
default_smile.png


@@Haru, @@4144 is it possible to increase the item slot of MVP Drops and Drops?

 
The problem with that approach is that you're assuming that no monsters have the same drop listed twice (while it's a valid situation).

This is the mob_db entry for PORING:

// Mob DB entry for PORING{ Id: 1002 // ... Drops: { Jellopy: 7000 Knife_: 100 Sticky_Mucus: 400 Apple: 1000 Empty_Bottle: 1500 Apple: 150 Unripe_Apple: 20 Poring_Card: 1 }},If you added this in the mob_db2:
Code:
{    Id: 1002    Override: true    Drops: {        Apple: 0 // Which apple am I removing? The first? The last? Both?    }},
What would happen?
Also if you added:

{ Id: 1002 Override: true Drops: { Jellopy: 5000 // Am I replacing the existing Jellopy? Or adding a new drop? Red_Potion: 1000 // What does this do? Replaces an existing entry? Adds a new drop? }},it wouldn't be clear what the result would be.
To remove all existing entries and add a completely different drops list, what would you do? If it was able to override, you'd need a reasonable way to specify that you want to empty the list.

About increasing the amount of drops and mvp drops, it's possible but it requires several source modifications (and possibly a very radical change in how they're represented in the SQL DB). I'm for the change, but I expect a lot of people to complain if we do, and their control panel breaks.

 
Last edited by a moderator:
@@Haru

You have a good point sir, how about adding Drops_Add and Drops_Remove 
default_biggrin.png


Code:
// Mob DB entry for PORING{    Id: 1002    // ...    Drops: {        Jellopy: 7000        Knife_: 100        Sticky_Mucus: 400        Apple: 1000        Empty_Bottle: 1500        Apple: 150        Unripe_Apple: 20        Poring_Card: 1    }},//In mob_db2.conf{    Id: 1002    Inherit: true    Drops: {        Jellopy: 5000 // Replace the current Jellopy        Sticky_Mucus: 1000 // Replace the current Sticky_Mucus    }    Drops_Add: {        Mjolnir: 1000	// Poring will now drop mjolnir    }    Drops_Remove: {        Apple: 1000 // Remove the existing Apple with 1000 rate        Apple: 150 // Remove the existing Apple with 150 rate    }},
 
Last edited by a moderator:
Just a note:

the mob_db converter engine doesn't convert the mobs that are //commented 

 
I would have preferred that we possibly can choose the type of database to be used rather than force us to use a single method.

This method is a real headache for those who edit hundreds of monsters too often for MOD servers.

 
Last edited by a moderator:
I would have preferred that we possibly can choose the type of database to be used rather than force us to use a single method.

This method is a real headache for those who edit hundreds of monsters too often for MOD servers.
It's better than .txt in terms of everything, like reading time, readability, etc..Also is lot easier for adding custom mobs, since you don't have to count field to know which one does what....

We have no plan to include dual support, only this format will be supported as of now..

 
sure... is easy add 3 o 5 mods...

BUT... i need add 1500 Mods, check hp, attack, def, etc, etc...

 
@@Triedge,  You can read first post, haru give instruction how to convert mob_db old format to new one, you still can make dozen mob and convert it easily

Just Go to http://haru.ws/hercu...mobdbconverter/ and paste (or upload) your mob_db2.txt (or even your mob_db.txt if you have custom entries there), pick between renewal or pre-renewal (or upload your item_db if it's customized), press the Convert button, wait a few seconds and you're done! It's already converted for you. Easy, isn't it?

 
I leave the RO scene for a few months, and I (half-way) come back to seeing this being added. I like these changes. And to think I was going to code it and submit a pull request of it once I finished. Now I dont have to. Yay Hercules.

 
What if I was using SQL mob databases?

Well, you're out of luck. It was deprecated long ago and it's being removed. It'll stay available for website/control panel purposes though. An automated converter (much like the db2sql plugin for the item db) will be available soon, and even executed automatically whenever we update the mob db, to keep the sql counterpart in sync!

default_sad.png


 
AFAIK, the db2sql branch for mob_db was almost ready, no idea why isn't pushed to master yet

 
Yes, it's pretty much ready, I fixed various issues yesterday. It still needs more testing, but I should be able to pull request it today

 
You just made my morning. Legit woke up, made coffee, and came to this thread, and this. Festive miracles! <3 Danke!

 
1.  Thank you all for this changes happened
     And hoping for skilldb change too
 
2.  Was hoping there be skill_avail_db and configurable skill src from
     that file too without compiling
 
Last edited by a moderator:
Back
Top