Jump to content

Jazira

Members
  • Posts

    217
  • Joined

  • Last visited

Posts posted by Jazira

  1. Hello,

    I hope this is not already reported.

    Moon Dog Sight (SPIN696.SPL bg2ee @103003), from Cerebus (MOONDOG.CRE), from Moon Dog Figurine (MISC7T.ITM)

    This ability states that it detects traps but it doesn't.

    There, that's all for me. Thanks. :D

  2. 13 hours ago, Mera said:

    Hello!

    I'm trying to give a hand to the best of my abilities to @Jazira regarding an update to the french translation of SCS with some light QA / proofreading and I have a couple questions.
    I'm mostly checking spells' in game descriptions against the documentation.

    • With the tweak "Icewind Dale-inspired tweaks to Baldur's Gate/Baldur's Gate II spells", Defensive Harmony is supposed to give +4AC instead of +2 (which works well ingame) but there doesn't seem to exist any tra entry to update the description which still says +2.
    • Same tweak and the spell Sol's Searing Orb. Documentation says it does 6d6 damage now but the only relevant bit we could find in the tra files is this: 

    This spell allows the caster to hurl a brilliant, searing flash at a target. When it hits, it explodes in a flash of light, doing 6d12 points of fire damage to the target and blinding <PRO_HIMHER> for 3 rounds if a Save vs. Spell is failed. If the Saving Throw is made, the target only takes half damage and is not blinded. Undead creatures are particularly vulnerable to this spell, taking double damage.

    Are we missing anything here?

    Next one is more an "advice needed" kida question.
    As part of our "fix the french translation" mod (https://github.com/r-e-d/correctfrBG2EE), we did an update on the description of Abi-Dalzim's Horrid Wilting to specify that it does deal damage to all creatures, eg undead. Since that's the vanilla behavior.
    With the tweak "Rebalancings of slightly-too-powerful spells", Abi-Dalzim no longer hits undead and the vanilla description becomes correct which is why I assume you did not extract it to a tra file.
    But then, our updated description stays the same and becomes misleading
    Any idea how we can solve this issue? Would providing a tra entry for the spell be an option?

    Not the biggest deal all in all and I understand your plate is probably pretty full right now but thought I'd ask, for the sake of documentation at least :)
    Thank you very much!

    8 hours ago, DavidW said:

    This gets done by a straight substitution, swapping the string '+2' for '+4'. It sounds like I'm being too casual assuming that regexp works on other languages. This is a good example of what we were talking about previously - in this case I don't need to do it that way, I was just saving time. As of v35.11, string @40900 in stratagems/lang_som/spell.tra will be the complete description of Defensive Harmony (i.e. the original one with +2 swapped for +4).

    This is an error in the mod documentation. It actually does 6d12 damage (same as IWDEE). Thanks for catching it; fixed for v35.11.

     

    As of v35.11, string @40800 will be used as the description for ADHW, unless it's set to 'NO_CHANGE'.

    Thank you both, you rocks!

     

    3 hours ago, mickabouille said:

    There is a somewhat similar issue for use_iwd_protect_from_fire_duration
    (I think) It does

    REPLACE_TEXTUALLY "%duration_text%.*" "%duration_text% %new_duration%"

    But then in french we need to have `duration_text` be a regex

    @3="Dur[^e]e[^:]:"

    I suggest this could instead be


    REPLACE_TEXTUALLY "\(%duration_text%\).*" "\1 %new_duration%"

    Or maybe the `Duration:` prefix could be integrated inside of @4 (new_duration)...

     

    (Sorry for the formatting, the forum citation and code insertion seem broken for me since some time)

    To give an idea to what it look like:

    prot_feu.JPG?ex=65da2871&is=65c7b371&hm=

    @3="Dur[^e]+e[^:]*:" // must exactly match duration in BG version of 'protection from fire'

    @4="1 tour par niveau"

    Here @4 is correctly displayed but @3 is not.

    image.png?ex=65dd108c&is=65ca9b8c&hm=7b0

    @3="Durée :" // must exactly match duration in BG version of 'protection from fire'

    @4="1 tour par niveau"

    Here @3 is correctly displayed but @4 is not.

  3. Hello David,

    Quote

    @19="The spell deals 1d8 points of fire damage per level of the caster to the target and any nearby victims, with a Save vs. Spell for half damage." // must exactly match the sentence in Flame Strike IWD description

    This is nowhere to be found on IWD:EE.

    I suspect @19 in Spell.tra to be just the post patch version of @18, am I right?

  4. Hey David, just a reminder that the first post with the translation locations need to be edited:

    Files to be translated are now in "stratagems\iwdspells\lang", "stratagems\lang", "stratagems\lang_som", and "stratagems\sfo2e\lua\lang". :)

  5. Hello again, David.

    Things are advancing at a good pace, but I have a few uncertainties that I'd like to clear up.

    The Rod of Resurrection, item.tra, everything is ok? Are the added details correct? The range parts, for example. I've been unable to test ingame.

    Quote

    //Rod of Resurrection EE format (39620 bg2ee)
    @?  = ~This rod enables anyone to resurrect the dead and heal the injured as if they were of high enough level to cast the Raise Dead and Heal spells and as if they were a priest. No rest is required, as the rod bestows the life giving effects. Each use of the rod expends one charge.

    STATISTICS:

    Charge abilities:
    – Raise Dead once per day
      Special: Target is raised with 1 HP
      Range: Visual range of the caster
      Area of Effect: 1 creature

    – Heal once per day
      Special: Fully restores the target's HP, cures all diseases, deafness, blindness, feeblemind and neutralizes poisons and intoxication
      Range: Touch
      Area of Effect: 1 creature

    Weight: 3~

    Next are the dagger "Nome Stikka" and the arrow "Deth Stik", kobold.tra. Are the details correct, especially the poison and save parts? I've been unable to test ingame. (https://www.gibberlings3.net/forums/topic/37575-kobold-items-dont-seem-to-apply-any-poison-effect/)

     

    Quote

    //@21305 vanilla format
    @21307 = ~Dagger "Nome Stikka"

    Though kobolds do not normally wield poison daggers, it is evident that they have been given the means to make these. The crudeness of the construction of this weapon, however, does not lessen its deadliness - in fact, it can be just as deadly to the wielder as it is to the victim!

    STATISTICS:

    Combat Abilities:
     Hit target suffers 6 poison damage (5% chance that user will poison himself, save vs. poison to avoid)

    Damage: 1D4
    Damage Type: piercing
    Weight: 1
    Speed Factor: 2
    Proficiency Type: Dagger
    Type: 1-handed
    Requires: 3 Strength
    Not Usable By:
     Cleric
     Beast Master~

    Quote

    //@21308 vanilla format
    @21309 = ~Arrow "Deth Stik"

    This arrow is not of exceptional quality and is, in fact, rather crudely made. However, it has been soaked in a deadly toxin which makes it especially dangerous to wielder and target alike.

    STATISTICS:

    Combat Abilities:
     Hit target suffers 12 poison damage over 6 seconds (5% chance that user will poison himself, save vs. poison to avoid)

    Damage: 1D6
    Damage Type: missile (piercing)
    Weight: 0
    Launcher: Bow
    Not usable by:
     Cleric
     Druid
     Mage
     Sorcerer
     Monk
     Kensai
     Cavalier~

    Lastly, I haven't edited yet "Stone Fist" or "Pebble" inside extra_arcane_spells.tra. Could you provide me some details about the fix and the actual statistics of the items, please? (https://www.gibberlings3.net/forums/topic/37498-stonefist-description-looks-wrong/)

    I still have a few items to edit, but they will be done soon. Do you wish me to provide the English proofread (with the item format revision) as soon as possible? So, if you want, you can implement them rapidly or is this not an urgent matter?

    I imagine this is a stressful period for you, I hope I'm not overstepping.

  6. Alright, so...

    Before:

    Quote

    @3016 = ~Yellow Dragon Scale Armor~
    @3017 = ~Yellow Dragon Scale Armor

    This suit of armor is formed from interlocking Yellow Dragon scales. Yellow Dragons are known for their fiery sand attacks and resistance to piercing weapons.
    This particular suit was forged from the scales of the yellow dragon Anadramatis.

    STATISTICS:

    Bonuses: +50% Resistance to Piercing and Missile Attacks
    Armor Class: -1
    Weight: 30
    Requires: 6 Strength
    Not Usable By:
     Mage~

    After:

    Quote

    @3016 = ~Yellow Dragon Scale Armor~
    //@3016 vanilla format
    @3017 = ~Yellow Dragon Scale Armor

    This suit of armor is formed from interlocking Yellow Dragon scales. Yellow Dragons are known for their fiery sand attacks and resistance to piercing weapons.

    This particular suit was forged from the scales of the yellow dragon Anadramatis.

    STATISTICS:

    Bonuses: +50% Resistance to piercing and missile attacks
    Armor Class: -1
    Weight: 10
    Requires: 6 Strength
    Not Usable By:
     Mage
     Monk
     Shapeshifter
     Kensai~
    /*
    //@3016 EE format
    @? = ~This suit of armor is formed from interlocking Yellow Dragon scales. Yellow Dragons are known for their fiery sand attacks and resistance to piercing weapons.

    This particular suit was forged from the scales of the yellow dragon Anadramatis.

    STATISTICS:

    Equipped abilities:
    – Resistance to Missile Damage: +50%
    – Resistance to Piercing Damage: +50%

    Armor Class: -1 (2 vs. slashing, 1 vs. piercing and missile)
    Requires:
     6 Strength

    Weight: 10~
    */

    Is it ok for you?

  7. On 12/29/2023 at 12:32 PM, DavidW said:

    On the general issue Jazira raises: I certainly appreciate that swapping out descriptions can cause language problems (especially in languages that have multiple dialog.tlk files). There may be places where this can be avoided, and I'll try to keep a lookout for them. 

    In general, though, SCS (and, even more so, ToF) does this sort of thing because it's needed for compatibility. The example Jazira gives above (where a string is matched to the bard kit description) is an example of this: it needs to patch *all* bard descriptions, including potentially descriptions added by third-party mods, to add 'cannot use additional bard songs' to the disadvantages list of the kit.

     

    Thanks, that's greatly appreciated. Try to avoid it as much as you can, because remember, we're dumb and lazy. 😛

    But when there is no choice but to do it, fine, it's understandable. We'll call the lesser dumb and lazy to help us out. ;)

  8. On 12/29/2023 at 12:19 PM, DavidW said:

    Addressing the specifics (I'll comment on the more philosophical issues separately when I have a chance).

    I'm still a bit unsure what the problem is with descriptions, but let me describe it more explicitly (I should probably put this in a 'note to translators' too). An SCS item description consists of

    1. some text
    2. One of two unique strings, which in English are 'Usable by:' or 'Unusable by:' 
    3. some more text

    On an EE install, SCS strips out (2) and (3).

    To handle this in a translation, you need to make sure that the unique strings, which occur in shared.tra at @100400 and @100401, occur exactly in the item descriptions. They can have whatever spaces, special characters, or the like they need; all that matters is that they occur in the item description exactly as they occur in shared.tra. Everything is internal to SCS's tra files; what the dialog.tlk file says is irrelevant. If there's some language-specific way this could break, I can't see what it is.

    Alright, that's good to know. :D

    I can tell you that 99% of translators won't know this before trying to translate it. We're too lazy to check out all the scripts, and even if we do so, we're too dumb to figure it out.

    Still, there is something that bothers me. Vanilla and EE formats of anything below "STATISTICS:" greatly vary. Here is an example to compare:

    Vanilla

    Quote

    @2140  = ~Blackrazor, Long Sword +3
    This sword radiates evil like a sour odor, and the owner never knows if he wields the weapon, or if it wields him.  In addition to its combat abilities, Blackrazor slowly regenerates its owner with the drained strength of opponents.

    STATISTICS:

    Equipped Ability :
      Regeneration: 1 hp every 5 seconds
      Immunity to Charm and Fear
      With every hit it has a 15% chance of draining 4 levels, healing the wielder by 20 hit points, and hasting him for 20 seconds as well as increasing his strength by 3 points for 20 seconds. 
    THAC0: +3 bonus
    Damage:  1D8 +3
    Damage type:  slashing
    Weight: 4
    Speed Factor: 2
    Proficiency Type: Long Sword
    Type:  1-handed
    Requires: 6 Strength
    Not Usable By:
     Druid
     Cleric
     Mage
    ~

    EE

    Quote

    @2140   = ~This sword radiates evil like a sour odor, and the owner never knows if <PRO_HESHE> wields the weapon or if it wields <PRO_HIMHER>. In addition to its combat abilities, Blackrazor slowly regenerates its owner with the drained strength of opponents.

    STATISTICS:

    Equipped abilities:
    – Regenerate 1 HP every 5 seconds
    – Immunity to charm and fear

    Combat abilities:
    – With every hit, it has a 15% chance of draining 4 levels from the target and healing the wielder by 20 Hit Points as well as hasting <PRO_HIMHER> for 20 seconds and increasing <PRO_HISHER> Strength by 3 points for 20 seconds

    THAC0: +3
    Damage: 1d8+3 (slashing)
    Speed Factor: 2
    Proficiency Type: Long Sword
    Type: One-handed
    Requires:
     6 Strength

    Weight: 4~

    Usually, we translators try to uniformize the formats to be seemingly the same as what the official content is. Here, even the descriptions vary.

    I still think that having two entries/files for each item, EE and vanilla is the best. For all languages. But that's your choice, we will adapt nonetheless. ;)

    On a side note, I'll add that I feel a bit annoyed to be held back by the "deprecated" format of vanilla items for unique entries, most players are on the EE nowadays.

    Real question, what makes you choose this way (strips out (2) and (3)) instead of having 2 entries/files?

     

  9. Hey,

    Inside the setup.tra, what is the exact strref of the "Stratagems spell tweaks" component?

    @50013 = ~This component is now included in the 'Stratagems spell tweaks' component~

    Also : @233 = ~Restoration and Lesser Restoration spells heal ability-score damage~

    Is "Restoration" alone intended as it is? Or should it be "Greater Restoration"?

  10. On 12/10/2023 at 6:21 PM, Alywena said:

    There is a similar problem with the price change requested by Gealan Bayle in v34.3 (not yet tested in v35) : https://github.com/Gibberlings3/SwordCoastStratagems/pull/60

    Since REPLACE_TEXTUALLY works with no-breaking spaces, i suggest this as a starting point for finding a cleaner solution: 

    DEFINE_DIMORPHIC_FUNCTION handle_unusable
    	STR_VAR arguments=""
    	RET value
    BEGIN
    	ACTION_IF enhanced_edition BEGIN
    		OUTER_SET strref=is_iwd?34753:is_bg2?74251:31522 // string with common space
    		OUTER_SET strref_no_breaking_space=is_iwd?34753:is_bg2?742519:31522 // string with no-breaking space
    		ACTION_GET_STRREF strref unusable_string
    		ACTION_IF strref_no_breakin_space != strref BEGIN
    		    ACTION_GET_STRREF strref_no_breaking_space unusable_string_no_breaking_space
    		    OUTER_PATCH_SAVE arguments "%arguments%" BEGIN
    		        REPLACE_TEXTUALLY "%unusable_string_no_breaking_space%" "%unusable_string%"
    		    END
    		END
    		OUTER_PATCH_SAVE value "%arguments%" BEGIN
    			index=INDEX_BUFFER ("%unusable_string%")
    			DELETE_BYTES index (BUFFER_LENGTH - index)
    		END
    	END ELSE BEGIN
    		OUTER_SPRINT value "%arguments%"
    	END
    END

     

    This option could work too.

    But it brings me to something I'd wished to express for a while. A bit of criticism toward how SCS (and any mod) handle scripts to edit tiny parts of an entry instead of replacing the whole. I understand this is to maximize eventual compatibility but I find it a bit rather counter productive, and very difficult for translators, who usually don't have the same level of knowledge (regex for example) than say, a modder.

    We have this example with the Spellhold cost component and non-breaking spaces, as Alywena stated.

    But there are many others too, like in dw_iwdspells.tra:

    Quote

     

    @201 = ~Peut utiliser la capacit[^ ]+ de[^:]+:~ // 1-4 must exactly match the appropriate strings from the BG2 description of the bard song (other than replacing '.' with '\.')
    @202 = ~ *[Aa]ugmente \(le \)?moral [^ ]+ \(sa \)?valeur moyenne,?~
    @203 = ~ *[Pp]rotection contre la peur\( et\)?~
    @204 = ~ *[Aa]paisement de la peur\.?~

    @222 = ~Inconv[^n]+nients[^:]*:\|D[^s]+savantages[^:]*:~ // must match appropriate string from kit descriptions
    // bg1ee/bg2ee -> "Inconvénients :" <- this is a non-breakable space
    // obg2 -> "Désavantages :" <- this is an ascii space
    // correctfrbg1ee/correctfrbg2ee -> "Désavantages :" <- this is a non-breakable space

    @223 = ~Cette capacité remplace le Chant du Barde actuel.~ // must exactly match string from description of EE spcl920.spl
    @224 = ~Cette faculté remplace la chanson du barde.~ // must exactly match string from description of vanilla spcl920.spl
    @225 = ~Cette capacité remplace le Chant du barde.~ // must exactly match string from description of correctfrbg2ee spcl920.spl

     

    I find it overly complicated, add tons of investigative work (just BG2, for example got 4 sets of French localization: obg2, CorrectfrBG2, bg2ee and CorrectfrBG2EE with massive differences), and we don't even know if it covers every case possible. AND regex, additionally with non-breaking spaces, does not handle special characters (éèïîêôûù, etc.), very common in some languages, at all.

    I'd rather have something that replaces the whole entry than that. And eventually, we (the French translators) could remove the non-breaking spaces directly on unique entries to ensure compatibility for both EE and vanilla since it's our "shit" to deal with and it does not matter that much to have or not non-breaking spaces at the end. ;)

  11. French translators use this rule: EE Baldur's Gate uses non-breaking spaces (before [;:?!%»], in the "middle" of [0-9]{4,} (1 500, 10 000, 25 000) and after [«]), vanilla Baldur's Gate does not.

    If a mod is compatible for both, then there are two options to translate:

    - Either the mod provides two sets of files/entries for every item, one for EE, one for vanilla. (This is the best option, for all languages, since the format of anything below "STATISTICS:" (and the item title) is not handled the same by the engine in EE and vanilla)

    - Or, there is a single file/entry for every item. This means that the translator has to adapt the EE format of anything below "STATISTICS:", be sure to remove every non-breaking space, and add a "(not )usable by:" for the vanilla users. BUT, the EE users will have "(not )usable by:" twice because it is automatically generated by the engine.

    Same for the item "title", the item name has to be directly in the description for vanilla users. But it is automatically generated on EE, so EE users will have 2 titles.

    In my opinion it would be best, for all languages, if we got two sets of files/entries for any item present in any mod compatible for both vanilla and EE. ;)

  12. Can confirm. Happens on BGEE/SoD/BG2EE.

    The tpa point out to incorrect strrefs.

    Quote

    DEFINE_ACTION_FUNCTION fine_arrows BEGIN

        array.new[arrow_details]
        [
            arow02,name=>20305 //should be 6761
            arow02,desc=>20306 //should be 16297
            arow02,pro=>ARROW
            bolt02,name=>20307 //should be 6783
            bolt02,desc=>20308 //should be 19353
            bolt02,pro=>BOLT
            dart02,name=>20309 //should be 6927
            dart02,desc=>20310 //should be 10043
            dart02,pro=>DART
            bull02,name=>20311 //should be 6757
            bull02,desc=>20312 //should be 17682
            bull02,pro=>DART    
        ]

        itm.edit[arow02 bolt02 dart02 bull02|edit_strrefs_in_place:i=1]
        [
            m_magical=0
            m_lore_to_identify=0
            m_enchantment=0
            m.ab_fx.delete{s_opcode=233}            

            m_both_names:=$arrow_details("%sfo_filename%" name)
            m_unidentified_description:=$arrow_details("%sfo_filename%" desc)
            m_identified_description="-1"
            m.ab.alter{s_projectile:=$arrow_details("%sfo_filename%" pro)}
        ]


    END
     

  13. Hey, I don't know if it have already been evocated but the spell description of Stonefist and it's assiociated item feel off:

    Quote

    The punch automatically hits and does 1d6 points of crushing damage per two levels (to a maximum of 5d6 at 10th level)

    Quote

    Damage: 3d6 + 1d6 per two levels above 3rd (maximum 6d6)
    Damage type: Missile

     

×
×
  • Create New...