• 0
Sign in to follow this  
Followers 0
Blinzer

turn the new database format into an older one(5$ bounty)

Question

so, i use an older version of herc and can't upgrade right now. however, i want to merge my older db with the newer one to get all of the items that the older db doesn't have(my item database is heavily modified, so i can't just take a new database and turn it into an older one).

 

this is your format:

Y8Qjy20.png

this is my format:

hyvyfXE.png

 

explaining to me how to do some merge reverse merge magic(if it's possible) will suffice as well.

Edited by Blinzer

Share this post


Link to post
Share on other sites

11 answers to this question

  • 0

you can use item_db2.conf and the Inherit: false flag to override items in item_db.conf

Share this post


Link to post
Share on other sites
  • 0

You can use the replace all feature in Notepad++ which I think you are using.

Replace all Type: 5
with Type: "IT_ARMOR"
Loc: 16
with Loc: "EQP_ARMOR"

and so forth. You can compare values of old -> new to see what you need to replace each one with.

Share this post


Link to post
Share on other sites
  • 0

Without replace it will works too.

Possible some minor issues not present in this screenshots. But after it can be fixed manually. I think issues will be for ammo.

Share this post


Link to post
Share on other sites
  • 0

i'm going from newer database to older database, not the other way around. i'm pretty sure they already have a converter for old->new.

also, my old database takes priority over the new one. if ID 2301 exists in my database and the more updated one, i need to have my old 2301 as the one in the final new database, and the new database also need to exist in the old format i am already currently using..

Edited by Blinzer

Share this post


Link to post
Share on other sites
  • 0
8 hours ago, Myriad said:

you can use item_db2.conf and the Inherit: false flag to override items in item_db.conf

 

how do i inherit: false the entire item_db2 database? that would probably be easier in source, right?

Edited by Blinzer

Share this post


Link to post
Share on other sites
  • 0

my suggestion start over and import all your old content to fresh hercules and follow improved practices, so then you can simply
git add remote origin Merge https://github.com/HerculesWS/Hercules.git
git fetch Merge
git merge Merge/master
...resolve any conflicts (shud be not many if any)

and voila you up to date with hercules

plugins, item_db2 and mob_db2 help immensely with this. it will take a long time to import ur stuff, but it is worth it in my opinion.

Share this post


Link to post
Share on other sites
  • 0
4 hours ago, Myriad said:

my suggestion start over and import all your old content to fresh hercules and follow improved practices, so then you can simply
git add remote origin Merge https://github.com/HerculesWS/Hercules.git
git fetch Merge
git merge Merge/master
...resolve any conflicts (shud be not many if any)

and voila you up to date with hercules

plugins, item_db2 and mob_db2 help immensely with this. it will take a long time to import ur stuff, but it is worth it in my opinion.

 

i wish i could, but i have 1000+ source changes and 2000+ items in the item database. 11mb diff file. that would require weeks of pure grind that i'm not willing to go through at this point in time. past me was dumb, that's for sure. by the time i tried to be more responsible, i was already 30 meters deep.

the Inherit: false seems a good strategy, having a script that would add it before every }, in my old database and simply renaming it to item_db2 would probably work(or maybe i can trick notepad++ into doing it for me without needing a script?). then the only issue would be making sure the new updated item_db is being read without exploding, which i will try to do now. i can manually resolve rogues, as long as it's a reasonable amount of cases(=<100 cases) and i have a clear explanation of which ones they are.

 

read below.

Edited by Blinzer

Share this post


Link to post
Share on other sites
  • 0

ok, i managed to successfully override the new database with my old one, everything is working as intended and i've confirmed that some of the items i wanted to be in the game are there. HOWEVER, the equipment is all in the misc section and can't be equipped:

 

4EnGSII.jpg

Share this post


Link to post
Share on other sites
  • 0

check new database format. weapons now have subtype instead of view id.

Share this post


Link to post
Share on other sites
  • 0

EbWlkJZ.png

 

fixed everything,i just had to switch type to 4 and Loc: 2. one very last problem: the game doesn't identify it as an axe, and i know this because it doesn't give the ASPD penalty for wielding an axe. how to fix? there must be a list of axes somewhere or something that says "from 1101 to 1150 it's 1 handed swords, from 1301 to 1350 one handed axes" etc. since in my old database there's nothing like the subtype.

 

i can provide the version of hercules i'm using if you tell me what file to look at, if necessary.

 

also, make a bch wallet(bitcoincash) and i'll tip you.

Edited by Blinzer

Share this post


Link to post
Share on other sites
  • 0

solution found. i had to change view to 8 for it to recognize it as an axe and apply the proper aspd penalty. probably not useful information since my source is outdated and from 2014, but still writing this here if anyone might need it one day.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0