Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Resolved] Tera Custom Addition (Modified Existing Item)

Newbie Spellweaver
Joined
Mar 13, 2024
Messages
16
Reaction score
1
Edit: Resolved!

Notes:
The items in the server are looked for using a wildcard in the arb server's config. All additional "custom" files must follow the same naming structure, and if you want to make new files to separate files apart, you will need to update the config for the arb server as well to specifically look for those files or, add your own wildcard modifier.

When packing the DC for the client, you must place the files in the same folder as similar files (where you unpacked the data). In my case, i had my xml files not in the correct folder (i had my own custom folder). Additionally some things may have to be removed or added when bringing it over from a server config (if you made it there) so be sure to compare files to existing items.

and for those who find this via search or google and want all information in one area;

Remember to add the new sheets into ValidateTemplateIdData.xml if you end up having "out of range" exceptions popping up in your console window.

Post:


Long story short, I have probably spent WAY too much time working on this and have finally given up to ask.

So I'm trying to add a custom gacha box to the server/client. I am using an existing template from the level 60 level up reward box. (Yes, I can use the gotcha editor for EXISITNG items, but I wanted to try and add my own custom item)

I know the backend just loads all xml files without a care of where they are placed so for organizational reasons I have created 3 files on both the client and the server.

SERVER -> Gacha_RE.xml, ItemTemplate_RE.xml, StrSheet_Item_RE.xml

Gacha_RE.xml has -


XML:
<?xml version="1.0" encoding="utf-8"?>
<Gacha>
<GachaItem itemTemplateId="111000" randomRewardMax="1" aniTime="0" sender="TERARELOADED" title="TERARELOADED" memo="TERARELOADED">
        <FixedReward>        
            <Reward itemTemplateId="91673" class="warrior" count = "1" />
            <Reward itemTemplateId="91674" class="lancer" count = "1" />
            <Reward itemTemplateId="91675" class="slayer" count = "1" />
            <Reward itemTemplateId="91676" class="berserker" count = "1" />
            <Reward itemTemplateId="91677" class="sorcerer" count = "1" />
            <Reward itemTemplateId="91678" class="archer" count = "1" />
            <Reward itemTemplateId="91679" class="priest" count = "1" />
            <Reward itemTemplateId="91680" class="elementalist" count = "1" />
            <Reward itemTemplateId="91681" class="soulless" count = "1" />
            <Reward itemTemplateId="55520" class="engineer" count = "1" />
            <Reward itemTemplateId="82520" class="fighter" count = "1" />
            <Reward itemTemplateId="59616" class="glaiver" count = "1" />
        </FixedReward>
    </GachaItem>
</Gacha>

ItemTemplate_RE.xml has -

XML:
<?xml version="1.0" encoding="utf-8"?>
<ItemData>
    <Item id="111000" name="premium_gacha" level="60" rareGrade="2" searchable="True" combatItemType="GACHA" CTcategory="service" category="service" rank="0" dropType="0" buyPrice="1" sellPrice="0" useOnlyTerritory="False" divide="False" itemUseCount="1" maxDropUnit="999" maxStack="1000" slotLimit="0" coolTimeGroup="0" coolTime="0" warehouseStorable="False" guildWarehouseStorable="False" boundType="None" destroyable="False" dismantlable="False" storeSellable="False" tradable="False" obtainable="True" relocatable="True" artisanable="False" enchantEnable="False" unidentifiedItemGrade="0" masterpieceRate="0" changeLook="False" extractLook="False" changeColorEnable="False" requiredGuildMaster="False" requiredLevel="1" linkCrestId="0" linkCustomizingId="0" requiredEquipmentType="NO_COMBAT" linkSkillId="0" linkPetAdultId="0" linkPetOrbId="0" icon="Icon_Items.GachaBox_Tex" dropEffect="Item_Drop.PS.Item_Drop_OneMoney_PS" dropSound="InterfaceSound.Drop_ItemCUE.Drop_GoldCue" usedSound="InterfaceSound.UseItem.UseItemCue" equipSound="InterfaceSound.Equip_ItemCUE.Equip_PlateCue" />
</ItemData>

StrSheet_Item_RE.xml has-

XML:
<?xml version="1.0" encoding="utf-8"?>
<StrSheet_Item>
    <String id="111000" string="Level 60 Gear Box" toolTip="Get level 60 gear for your class."/>
</StrSheet_Item>

For the client files I unpacked the Final_DC for the client, and added effectively the same files to the client, changing the needed xml references at the top. Repacked it with the repacker tool, updated my client, restarted the server and loaded into the game. Nothing currently uses the 111000 item space, so that should be safe. Used the command /@insert_item 111000 1 as an operator and ended up with an item with the IMG: texture, meaning it failed.

Is it impossible to add new ids to the client? or have i just not added enough things in the right location. Thanks!
 
Server Information
71.3 - EME
Last edited:
Newbie Spellweaver
Joined
Mar 13, 2024
Messages
16
Reaction score
1
Hi,

Remember to add the new sheets into ValidateTemplateIdData.xml
OH INTERESTING. So THIS is where the xml limits were being hidden. I was forced to work within ranges where i didn't see any templateIDs being used (111000) but it seems like I managed to stumble into this supported range by accident because "ItemConversion_JP.xml" resides here.

I managed to get it working, but this information is still useful if i want to claim a block of id ranges for myself. I'm going to open a new question i have for monster (npc) name locations.
 
Upvote 0
Back
Top