Jump to content

Item Descriptions Not Appearing Properly


Final Warrior

Recommended Posts

Hey all. First, the formalities:

 

:( WOO FIRST POST WOO :)

 

Hmkay, that said, on to my problem:

 

I've created two items for BG1TT using the Infinity Engine Editor Pro. For the most part, they work - I think. They're horrendously overpowered items (until today, the sword I had created was doing 1d100+100 damage... not to mention slapping anything and everything it hit with permanent Hold Creature and dispelling magic), and their effects in-game are noticeable (everything but my character being reduced to giblets, etc.).

 

However, there's one bug that I cannot, for the life of me, fix. I cannot, despite having checked, changed, saved, tested, re-checked, altered, copied, pasted, re-tested, sacrificed several goats, invoked the name of Dread Father Cthulhu, and cried silently to myself beneath a weeping willow with a sobbing guitar (okay, maybe not that last one; I can't play guitar), get my items' names and descriptions to appear properly in-game.

 

Here's what the sword's name and description are supposed to say:

 

Retribution

 

Retribution

 

This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

 

STATISTICS:

 

Considered a +10 weapon

 

On hit:

Slay Creature (Always; Save vs. Death, bypasses spell resistance)

Dispel Magic (Always, no save, bypasses spell resistance)

Hold Creature (Always, Save vs. Petrification, bypasses spell resistance, permanent)

Hit Creature Cannot Cast Spells (Always, no save, bypasses spell resistance, permanent)

 

THAC0: +10 Bonus

Damage: 4d6 + 10

Damage type: Slashing

Weight: 0

Speed Factor: 0

Proficiency tpe: Bastard Sword

Type: 1-Handed

Requires: Nothing

Not Usable By:

No one

 

Here's what it says in-game (or rather, what it says in-game according to Shadow Keeper, because I'm too lazy to fire up BG1TT right this very moment to see what the item's name and description are in-game):

 

There is plenty wrong in it, brother, and you should not need me to tell you so.

 

Shlimes and oozshes

 

I gafe 100 gold pieshesh to Lushelyn, my paaaaal atshuh Blushin' Mermaid, for shafe keepin'... Heh, hee... 'E shaysh dat dere'sh shlimes and oozshes shomewheresh inshuh tavern, here, and I can dubble them gold pieshesh jusht fer killin' them off... Ohhh, my brain hurtsh...

 

I've got the same problem with the other item (a suit of armor), though the name and description are different. It's really rather infuriating, and any help/advice/solutions would be appreciated.

 

-- Griffinhart

Link to comment

These are dynamic references. I don't remember if you can get them correctly via IEEP. Try starting a new game and summon your item and see if the descriptors are correct.

 

Try making a tiny WeiDU installer for your item and and adding the descriptions via TP2 file. The simplest way of doing is is to add it to whatever WeiDU mod you are already using, adding your item in the itm folder in the mod (if it has one) and copy-pasting the TP2 line which copies some other item out from the itm folder and add the descriptions and your item name and all that. Then just reinstall the mod you locally edited, and you should be able to see the proper descriptors. Sometimes the strings get corrupted in a saved game after a mod reinstall. The issue will get corrected in a new game you start after the install.

Link to comment
These are dynamic references. I don't remember if you can get them correctly via IEEP. Try starting a new game and summon your item and see if the descriptors are correct.

 

New game started annnnnnd... Nope. :\

 

Try making a tiny WeiDU installer for your item and and adding the descriptions via TP2 file. The simplest way of doing is is to add it to whatever WeiDU mod you are already using, adding your item in the itm folder in the mod (if it has one) and copy-pasting the TP2 line which copies some other item out from the itm folder and add the descriptions and your item name and all that. Then just reinstall the mod you locally edited, and you should be able to see the proper descriptors. Sometimes the strings get corrupted in a saved game after a mod reinstall. The issue will get corrected in a new game you start after the install.

 

Okay, this? All of it? Went over my head. Entirely. Mostly. I got the part about adding my custom items into an existing mod's item folder. No idea what you mean by TP2 file or TP2 line.

 

-- Griffinhart

 

PS. Just to clarify, what I did when doing this "mod" was create two items with IEEP (by extracting existing items via WinBiff and using those existing items as bases for my custom ones) and placed them into the override folder.

Link to comment

Someone check this, as I am flying through at mach 4 -

 

the .tp2 is the instruction set for WeiDU to make a mod part of the game.

 

The kind of thing she is saying do is create a separate instruction set that looks something like this:

/* Backup folder */
BACKUP ~myItemsMod/backup~

/* Author */
AUTHOR ~me@myservice.com~

VERSION ~v1~

BEGIN ~Install My Overpowered Boomwhacking Great Items~

/* create strrefs for item */
COPY_EXISTING	  ~myFileFolder/myItem.itm~	~override/myItem.itm~
SAY NAME ~Retribution~
SAY DESC_IDENTIFIED ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

STATISTICS:

Considered a +10 weapon

On hit:
Slay Creature (Always; Save vs. Death, bypasses spell resistance)
Dispel Magic (Always, no save, bypasses spell resistance)
Hold Creature (Always, Save vs. Petrification, bypasses spell resistance, permanent)
Hit Creature Cannot Cast Spells (Always, no save, bypasses spell resistance, permanent)

THAC0: +10 Bonus
Damage: 4d6 + 10
Damage type: Slashing
Weight: 0
Speed Factor: 0
Proficiency tpe: Bastard Sword
Type: 1-Handed
Requires: Nothing
Not Usable By:
No one~

SAY DESC_UNIDENTIFIED ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

STATISTICS:

Considered a +10 weapon

On hit:
Slay Creature (Always; Save vs. Death, bypasses spell resistance)
Dispel Magic (Always, no save, bypasses spell resistance)
Hold Creature (Always, Save vs. Petrification, bypasses spell resistance, permanent)
Hit Creature Cannot Cast Spells (Always, no save, bypasses spell resistance, permanent)

THAC0: +10 Bonus
Damage: 4d6 + 10
Damage type: Slashing
Weight: 0
Speed Factor: 0
Proficiency tpe: Bastard Sword
Type: 1-Handed
Requires: Nothing
Not Usable By:
No one~

 

This is a sketch of what Domi's saying -

hey - this is feeble memory here - is that

 

DESC_IDENTIFIED and DESC_UNINDENTIFIED ?

Link to comment

Uh... huh.

 

So... how do I go about implementing this code? Do I just copy + paste into an existing .tp2 (in this case, it'd be G3's BG2 Tweaks), change what errors there are and fix what needs fixing (I've got a separate DESC_UNIDENTIFIED) and reinstall the mod that the .tp2 is associated with?

 

-- Griffinhart

Link to comment
Uh... huh.

 

So... how do I go about implementing this code? Do I just copy + paste into an existing .tp2 (in this case, it'd be G3's BG2 Tweaks), change what errors there are and fix what needs fixing (I've got a separate DESC_UNIDENTIFIED) and reinstall the mod that the .tp2 is associated with?

 

-- Griffinhart

The code that cmorgan posted is designed for use as a standalone tp2 file for your own mod. If you want to include it inside an existing mod such as BG2 Tweaks (on your own machine), you can but you only need to copy and paste from the very first BEGIN until the end. If you copy and paste with the AUTHOR, BACKUP and VERSION tags, you will receive errors during install.

Link to comment
The code that cmorgan posted is designed for use as a standalone tp2 file for your own mod. If you want to include it inside an existing mod such as BG2 Tweaks (on your own machine), you can but you only need to copy and paste from the very first BEGIN until the end. If you copy and paste with the AUTHOR, BACKUP and VERSION tags, you will receive errors during install.

 

Noted.

 

Where the line:

 

COPY_EXISTING ~myFileFolder/myItem.itm~ ~override/myItem.itm~

 

will need to be replaced with the Folder name where you put the itm and the itm name in it (ie BG2Tweaks/itm/bigsword.itm) .

 

Obviously. :)

 

And how can you COPY_EXISTING a file in a mod folder?

 

I always COPY mine.

 

Icen

 

So... are you saying that I should change COPY_EXISTING to COPY?

 

-- Griffinhart

 

PS. Jesus Buddha that .tp2 is convoluted and confusing. Nothing like coding in C++... Or maybe it's just the lack of a developer + compiler.

 

EDIT: My first error modding a .tp2 file! I should be proud.

 

PARSE ERROR at line 9785 column 5-7

Near Text: SAY

GLR Parse Error

 

PARSE ERROR at line 9785 column 5-7

Near Text: SAY

Parsing.Parse_error

 

So here's lines 9784-9786:

 

COPY_EXISTING ~BG2_Tweaks/itm/RETRIBUT.itm~ ~override~ ~override/RETRIBUT.itm~

SAY NAME ~Retribution~

SAY DESC_IDENTIFIED ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

 

(9785 Col 5-7 would be "SA" in the line "SAY NAME ~Retribution~")

Link to comment
COPY_EXISTING ~BG2_Tweaks/itm/RETRIBUT.itm~ ~override~ ~override/RETRIBUT.itm~

SAY NAME ~Retribution~

SAY DESC_IDENTIFIED ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

It's a good start but you don't need two mentions of the override directory. You only need to include the file name with the override directory if you are changing the name during the copy. Otherwise you can leave it alone.

 

Icen is right. COPY_EXISTING only looks for files in the override & Biffs. You will need to use COPY.

 

Change the following and you'll be set for this item.

 

from:

COPY_EXISTING ~BG2_Tweaks/itm/RETRIBUT.itm~ ~override~ ~override/RETRIBUT.itm~

to:

COPY ~BG2_Tweaks/itm/RETRIBUT.itm~ ~override~

PS. Jesus Buddha that .tp2 is convoluted and confusing. Nothing like coding in C++... Or maybe it's just the lack of a developer + compiler.
Weidu has a compiler and all that stuff, if you want to down load the source code and compile it yourself. The already compiled exe file is just great for us end users though.
Link to comment

Alright, changed the .tp2 file to reflect your suggestion. It runs... for the most part. It gets to asking if I want to install my mod, and then...

 

Oh look, another error! :) Apparently, the .exe/installer/whatsamathingy can't... well, here's the error message:

 

ERROR: cannot convert NAME or %NAME% to an integer

ERROR: [bG2_Tweaks/itm/RETRIBUT.ITM] -> [override] Patching Failed <COPY> <Not_found>

 

Okay, so I have no clue what the first error is talking about. Why is it trying to convert a string into an integer in the first place?

 

The second error should not be. ;_; The .itm files are in the itm folder which is in the BG2_Tweaks folder. I can visually confirm this, and I know my eyesight ain't that bad (yet, anyhow).

 

-- Griffinhart

Link to comment

Try this:

 

COPY ~myFileFolder/myItem.itm~	~override/myItem.itm~
SAY NAME1 ~Retribution~
SAY NAME2
SAY UNIDENTIFIED_DESC ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

STATISTICS:

Considered a +10 weapon

On hit:
Slay Creature (Always; Save vs. Death, bypasses spell resistance)
Dispel Magic (Always, no save, bypasses spell resistance)
Hold Creature (Always, Save vs. Petrification, bypasses spell resistance, permanent)
Hit Creature Cannot Cast Spells (Always, no save, bypasses spell resistance, permanent)

THAC0: +10 Bonus
Damage: 4d6 + 10
Damage type: Slashing
Weight: 0
Speed Factor: 0
Proficiency tpe: Bastard Sword
Type: 1-Handed
Requires: Nothing
Not Usable By:
No one~

SAY DESC ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

STATISTICS:

Considered a +10 weapon

On hit:
Slay Creature (Always; Save vs. Death, bypasses spell resistance)
Dispel Magic (Always, no save, bypasses spell resistance)
Hold Creature (Always, Save vs. Petrification, bypasses spell resistance, permanent)
Hit Creature Cannot Cast Spells (Always, no save, bypasses spell resistance, permanent)

THAC0: +10 Bonus
Damage: 4d6 + 10
Damage type: Slashing
Weight: 0
Speed Factor: 0
Proficiency tpe: Bastard Sword
Type: 1-Handed
Requires: Nothing
Not Usable By:
No one~

Link to comment

Okay, is it supposed to look something like this?

 

BEGIN ~My Overpowered Boomwhacking Great Items~

/* create strrefs for item */
COPY	  ~BG2_Tweaks/itm/RETRIBUT.ITM~ ~override/RETRIBUT.ITM~
SAY NAME1 ~Retribution~
SAY NAME2
SAY UNIDENTIFIED_DESC ~A fancy-looking bastard sword.~

SAY DESC ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

STATISTICS:

Considered a +10 weapon

On hit:
Slay Creature (Always; Save vs. Death, bypasses spell resistance)
Dispel Magic (Always, no save, bypasses spell resistance)
Hold Creature (Always, Save vs. Petrification, bypasses spell resistance, permanent)
Hit Creature Cannot Cast Spells (Always, no save, bypasses spell resistance, permanent)

THAC0: +10 Bonus
Damage: 4d6 + 10
Damage type: Slashing
Weight: 0
Speed Factor: 0
Proficiency tpe: Bastard Sword
Type: 1-Handed
Requires: Nothing
Not Usable By:
No one~

/* create strrefs for item */
COPY	  ~BG2_Tweaks/itm/GODSTEEL.ITM~ ~override/GODSTEEL.ITM~
SAY NAME1 ~Godsteel Full Plate~
SAY NAME2
SAY UNIDENTIFIED_DESC ~Full plate armor is the best armor a warrior can buy, both in appearance and protection. The perfectly fitted interlocking plates are specially angled to deflect arrows and blows, and the entire suit is carefully adorned with rich engraving and embossed detail. 

STATISTICS:

Armor Class: 1
Weight: 70
Requires: 15 Strength
Not Usable By:
Bard
Druid
Mage
Thief
Archer
Stalker
Barbarian
Beast Master
Kensai
Monk~

SAY DESC ~There only exists a single suit of Godsteel armor in all the Mutliverse, and this is it. It prevents nothing and enables everything, such is its might.

STATISTICS:

Doubles all Wizard/Sorcerer spells
Automatically Find Traps
Immunity to Backstab
Immunity to Normal Weapons
Immunity to Magical Weapons less than +5
Increased Spell Casting Speed to 100 per round
Max HP increased by 1000%
Immunity to Timestop
Regenerate 1000 HP per second
Decreases spell casting time of all spells by 10
Vocalize
Can Use Any Items
Cure Blindness while worn
Cure Confusion/Rigid Thinking/Fear while worn
Cure Deafness while worn
Cure Disease while worn
Cure Feeblemindedness while worn
Detect Invisibility while worn
Invisibility while worn
Free Action while worn
Remove Curse while worn
Remove Fear while worn
Remove Paralysis while worn


Detect Illusions: +100
Find Traps: +100
Hide In Shadows: +100
Open Locks: +100
Pick Pockets: +100
Set Traps: +100
Move Silently: +100


+100% Magic Damage Resistance


+100 bonus to Save vs. Breath Weapons
+100 bonus to Save vs. Death
+100 bonus to Save vs. Petrification/Polymorph
+100 bonus to Save vs. Spells
+100 bonus to Save. vs. Wands


Armor Class: -100
Weight: 0
Not Usable By:
No One~

 

Because if it is, I get a whole mess of errors. Something about "In state 901, I expected one of these tokens:

 

[big list 'o tokens]

 

Parse error <state 901> at SAY"

 

And then I have a parse error at line 9787 Col 5-7.

 

 

Lines: 9785 - 9790

	SAY NAME1 ~Retribution~
SAY NAME2
SAY UNIDENTIFIED_DESC ~A fancy-looking bastard sword.~

SAY DESC ~This is the almighty Retribution, a most wicked and powerful blade, said to be able to strike down and slay even the mightiest of gods.

 

-- Griffinhart

Link to comment

I get points off for creating new hard to read WeiDU tokens in my head.

 

SAY NAME2 needs an actual entry, I think - now that I am home, here is a working example to modify, taken from igi's way cool iiItem (at TeamBG):

 

 

COPY ~iiItemMod/armor/itm/i1ck002.itm~ ~override~

SAY NAME1 @4051

SAY UNIDENTIFIED_DESC @4052

SAY NAME2 @4053

SAY DESC @4054

 

where the format is

 

COPY ~ <<SOURCE_FOLDER>> / <<ITEM>> ~ ~ <<DESTINATION_FOLDER>> ~

SAY NAME1 ~ <<FULL_NAME>> ~

SAY UNIDENTIFIED_DESC ~ <<UNIDENTIFIED_DESCRIPTION>> ~

SAY NAME2 ~ <<NAME>> ~

SAY DESC ~ <<IDENTIFIED_DESCRIPTION>> ~

 

 

I think that will get you going.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...