All credit goes to digitalhamster, fixed by ~AnnieRuru~. Reposting for personal reasons since Ea has been offline and I happen to have saved a web cache of the pages. The topic is old, so you have to manually add the modifications. Plus, the spacings didn't copy out too well. The modification works through the item's bonus script in your item_db/db2. Charm's effect don't work if you do not add type (12/etc.), job, upper, and gender in itemdb/db2. Charms will only work with items having type = 12/? on item_db/db2, so your other items won't be affected by this, just the ones you choose. Make sure type is set according to your mmo.h. For example:
+++ common/mmo.h (working copy)
@@ -175,6 +175,7 @@
IT_UNKNOWN2,//9
IT_AMMO, //10
IT_DELAYCONSUME,//11
+ IT_CHARM,
IT_CASH = 18,
Looking at IT_CHARM, type is set to 12. Item stacking
Add this if you want to enable item IDs to stack. It will treat each item as a separate item, in its own item slot. Example: Apple (5) will be in different items slots in your inventory and its effects will stack with each other when the code below is added.
Same item effects on different item IDs will stack regardless of enabling/disabling this modification.
Add this if you want items to stack:
Go to itemdb.c:
/*==========================================
* Returns if given item's type is stackable.
*------------------------------------------*/
int itemdb_isstackable(int nameid)
{
int type=itemdb_type(nameid);
switch(type) {
case IT_WEAPON:
case IT_ARMOR:
case IT_PETEGG:
case IT_PETARMOR:
+ case IT_CHARM:
return 0;
And again, right below it:
/*==========================================
* Alternate version of itemdb_isstackable
*------------------------------------------*/
int itemdb_isstackable2(struct item_data *data)
{
nullpo_retr(0, data);
switch(data->type) {
case IT_WEAPON:
case IT_ARMOR:
case IT_PETEGG:
case IT_PETARMOR:
+ case IT_CHARM:
return 0;
Fixed version: Src for Renewal (manually add): Charms.txt
Edited Annie's fix for older eA revisions: eA_Charms.txt
Don't try to update this as a .diff, just a suggestion.