Jump to content


Photo

Ruad Ro'fhessa Item Upgrade updated to v29 with EE compatibility


  • Please log in to reply
12 replies to this topic

#1 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 29 June 2020 - 10:42 AM

The Ruad Ro'fhessa Item Upgrade mod (from Moonfroot) has been updated and is now available with macOS and Linux support.
 
This mod adds Ruad, a new smith in Waukeen's Promenade, who improves items as well as forges some quite new ones.
 
Version 29.0.0 includes v28 (by deratiseur), is BG2, ToB, BGT, BG2:EE and EET compatible, comes with 1PP and ToBEx compatibility, and many items fixes.




Note: This mod was first released at Clan DLAN and has been officially mirrored at Spellhold Studios Clan DLAN mirror by Immortality.



Readme

SHS Download Center

SHS official GitHub alternate download center



Change log:

  • Added ruad.ini metadata file to support AL|EN's "Project Infinity".
  • Renamed Setup-Ruad.tp2 -> ruad.tp2 to support AL|EN's "Project Infinity".
  • Replaced `AUTHOR` keyword with `SUPPORT`.
  • Fixed a typo in `HANDLE_CHARSETS` function (replaced infer_charset with infer_charsets).
  • Added `REQUIRE_PREDICATE` process to avoid installing the mod in inaccurate games (replaced old `ACTION_IF NOT FILE_EXISTS "Data/25Dialog.bif"` process).
  • Added components `DESIGNATED` numbers and "ruad_soa" and "ruad_tob" `LABELS`.
  • Added "always.tpa" library.
  • Externalized tp2 code into "ruad_soa.tpa" and "ruad_tob.tpa" libraries for more comfortable readability and maintenance.
  • Added native EET, 1PP and ToBEx compatibility.
  • Commented code as much as possible.
  • Converted inventory BAMs to EE: This feature attempts to modify traditional inventory BAMs so that both the large and small icons are utilized by the EE games. The inventory BAM must have two sequences, the first containing the "large" inventory icon frame and the second containing the "small" inventory icon frame to be processed. Inventory icon BAMs in the bam folder that meet these requirements are patched and saved back to the override folder.
  • Inventory item icons: fixed wrong transparency index (pure green [0.255.0] replaces old turquoise - a pretty annoying BAMWorkshop leftover.
  • Dialog and script files: added Chapters compatibility with EET (variables %bg2_chapter_n% are evaluated to set continuity chapter numbers).
  • ruad.d: removed DestroyAllEquipment() action whenever possible.
  • Included BWP Fixpack Luca Piol's typo fix for ruad.d: replaced wrong misc6s item (Chunk of Illithium Alloy) with misc6w (Wooden Stake) to create Wooden Stake (u#blun03.itm).
  • Provided a Ruad portrait for EE game.
  • Second component (#10): removed `AT_INTERACTIVE_EXIT` command and added a require main component process, otherwise mod will crash the game if first component is not installed.
  • Added foreign languages WeiDU prompts whenever possible.
  • Renamed "titles" and "setup" .tra files to more accurate "setup" and "items" .tra files.
  • Updated items.tra files for compatibility with GW_UPDATE_ITM_DESCRIPTION_TO_EE WeiDU function requirements which automatically removes usability restrictions for EE games. And fixed restriction flags whenever relevant.
  • Updated and renamed readme file to "ruad-readme-english.txt", then moved it into new "readme" folder.
  • Renamed "american" language folder to "english".
  • Removed unused files.
  • Included Linux and Mac Os X versions in the same package (thanks AL|EN's Infinity Auto Packager tool!).
  • Added archive libiconv-1.9.2-1-src.7z with iconv licence info.
  • Uploaded mod to official Spellhold Studios GitHub mirror account.

 
Items updates:

 

Spoiler

 


Edited by Gwendolyne, 30 June 2020 - 08:19 AM.

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#2 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 19 July 2020 - 07:07 AM

Ruad has been updated to v29.1.0
 
 
Change log:
 
  • Fixed an issue in "always.tpa" library: a missing variable might prevent installation in some cases (thanks burner1024 for reporting it).

Edited by Gwendolyne, 19 July 2020 - 07:07 AM.

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#3 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5148 posts

Posted 19 July 2020 - 07:48 AM

Could you deliver the parts from smithing script & dialog that's ran for one of the items ? Doesn't matter which item... only that it's complete. Why I ask, I want to make sure that it's good. That it couldn't be made better..


Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#4 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 19 July 2020 - 08:09 AM

Everything is handled with ruad.d file.

 

I also did notice that the coding was not very "up-to-date" and deserves a clean-up (notably with combos take + destroy items). But I have too much work to do with other updates that I kept this part of dialog revamping for later. But you are welcome to optimize it! ;)


CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#5 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5148 posts

Posted 19 July 2020 - 01:00 PM

Actually, I am kinda worried about this:

IF ~~ THEN BEGIN Upgrade
 SAY @3007
  + ~PartyHasItem("sw1h40")~ + @3201 + RedRose
  + ~PartyHasItem("sw1h33")~ + @3202 + Dancing
  + ~PartyHasItem("sw1h19")~ + @3203 + Revenge
  + ~PartyHasItem("u#sw1h03")~ + @3204 + Undeath
  + ~PartyHasItem("npsw02")~ + @3205 + YoshiKatana
  + ~PartyHasItem("miscbu")~ + @3206 + YoshiSpirit
  + ~PartyHasItem("scaler")~ + @3207 + Slippers
  + ~PartyHasItem("ring40")~ + @3208 + ImmunityRing
  + ~PartyHasItem("chan15")~ + @3209 + AdamantineChain
  + ~PartyHasItem("belt06")~ + @3210 + Warlord
  + ~PartyHasItem("amul20")~ + @3211 + Kaligun
  + ~PartyHasItem("ring06")~ + @3212 + RingProt2
  + ~PartyHasItem("helm25")~ + @3213 + Incandescent
  + ~PartyHasItem("misc5x")~ + @3214 + HarperPin
  + ~PartyHasItem("ax1h13")~ + @3215 + Frostfury
  + ~PartyHasItem("wand03")~ + @3216 + HardKnocks
  + ~PartyHasItem("ax1h12")~ + @3217 + Messerschmitt
  + ~PartyHasItem("npsw04") GlobalGT("Chapter","GLOBAL",%bg2_chapter_7%)~ + @3218 + Corthala3
  + ~PartyHasItem("u#sw1h06") GlobalGT("Chapter","GLOBAL",%bg2_chapter_7%)~ + @3219 + Corthala4
  + ~PartyHasItem("staf20")~ + @3220 + StaffPike
  + ~PartyHasItem("plat16")~ + @3221 + AdamantinePlate
  + ~PartyHasItem("clck25")~ + @3222 + ElementalStar
  + ~PartyHasItem("dart08")~ + @3223 + CrimsonDart
  + ~PartyHasItem("helm26")~ + @3224 + ChaosStone
  + ~PartyHasItem("u#helm02")~ + @3225 + ImpChaosStone
  + ~PartyHasItem("ax1h10")~ + @3226 + Bane
  + ~PartyHasItem("sw1h31")~ + @3227 + Bane
  + ~PartyHasItem("blun12")~ + @3228 + Bane
  + ~PartyHasItem("scaleb")~ + @3229 + ShadowCloak
  + ~PartyHasItem("leat08")~ + @3230 + PikimArmor
  + ~PartyHasItem("nebdag")~ + @3231 + NebCutter
  + ~PartyHasItem("sw1h10")~ + @3232 + ShadowBlade
  + ~PartyHasItem("npbow")~ + @3233 + BowArvoreen
  + ~OR(4) PartyHasItem("scaleb") PartyHasItem("scaler") PartyHasItem("compon18") PartyHasItem("compon19")~ + @3234 + PlateManyDragons
  + ~PartyHasItem("helm21")~ + @3235 + HelmManyDragons
  + ~PartyHasItem("shld21")~ + @3236 + ShieldManyDragons
  + ~OR(3) PartyHasItem("clck09") PartyHasItem("clck10") PartyHasItem("clck11")~ + @3237 + RobeResistance
  + ~OR(2) PartyHasItem("halb04") PartyHasItem("halb05")~ + @3238 + DragonTooth
  + ~PartyHasItem("misc5n")~ + @3239 + CloakThay
  + ~PartyHasItem("npclck")~ + @3240 + NatureCloak
  + ~PartyHasItem("brac19") GlobalGT("Chapter","GLOBAL",%bg2_chapter_7%)~ + @3241 + MitsShaiman
  + ~PartyHasItem("npstaf")~ + @3242 + NatureStaff
  + ~PartyHasItem("staf09")~ + @3243 + StaffMany
  + ~PartyHasItem("blun17")~ + @3244 + Drowsy
  + ~PartyHasItem("blun35") GlobalGT("Chapter","GLOBAL",%bg2_chapter_7%)~ + @3245 + ColdShoulder
  + ~PartyHasItem("key26")~ + @3246 + CloakShark
  + ~PartyHasItem("brac15")~ + @3247 + Fluent
  + ~PartyHasItem("wa2ring")~ + @3248 + ThiefRing
  + ~PartyHasItem("brac07")~ + @3249 + Assassination
  + ~PartyHasItem("sw1h28")~ + @3250 + Kiss
  + ~PartyHasItem("leat08")~ + @3251 + Shades
  + ~PartyHasItem("sw2h12")~ + @3252 + Lava
  + ~PartyHasItem("misc6w")~ + @3253 + Wooden
  + ~PartyHasItem("bow12")~ + @3254 + Uden
  + ~PartyHasItem("rods03")~ + @3255 + Resurr
  + ~PartyHasItem("ring09")~ + @3256 + TimeControl
  ++ @3008 EXIT
END


As it has no other conditions than PartyHasItem's... and lag. No global check if the upgrade is already done, or anything like that. Has any of this been checked to work well with multiple bag items.


Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#6 jastey

jastey
  • Administrator
  • 3218 posts

Posted 19 July 2020 - 10:45 PM

That's a dialogue state, not a script block in baldur.bcs. What problems do you expect?

 

As a reference, this is a PID menue from the BG1NPC Ajantis Romance. It opens with no noticeable lag:

Spoiler



#7 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5148 posts

Posted 20 July 2020 - 12:40 PM

I suspect bags causing lag from possible dialog state checks, that are unsuspended. Aka, they have no other checks, for example; if the upgrade has been done already via a blocking global, the bags don't even need to contain a darn thing to lag.  :wacko:  For what ever reason.

No, it's not only in Ruad Ro... but possibly any dialog change that adds

PartyHasItem

's. Which is the concerning part. Which has a found solution, but we would much rather have the original one, like said in the post.


Edited by The Imp, 22 July 2020 - 03:00 PM.

Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#8 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 29 August 2020 - 09:34 PM

Ruad has been updated to v29.2.0
 
 
Change log:
 
  • Updated Italian translation (by ilot).
  • Updated French translation (by Gwendolyne).

Edited by Gwendolyne, 29 August 2020 - 09:34 PM.

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#9 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 25 January 2021 - 12:47 AM

Ruad has been updated to v29.3.0.
 
Change-log:

  • Added Dynamic Install Syntax (`After` and `Before` keywords) in ruad.ini metadata file to support AL|EN's "Project Infinity".
  • Fixed WeiDU 'relative command execution' problem (renamed "ruad" sub-folder to "rofhessa").
  • Updated French and German WeiDU prompts, and French translation (by Gwendolyne).
  • Updated WeiDU installer to v247.

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#10 TotoR

TotoR
  • Modder
  • 95 posts

Posted 27 January 2021 - 03:17 PM

Hi Gwendolyne,

 

I have try to install this mod on classic BG2 without any mod and I have this error:

 

 

Extended script [ar0700.bcs] with [ruad/rofhessa/soaruad.baf]
Compiling 1 dialogue file ...
[ruad/lang/english/ruad.tra] has 256 translation strings
[ruad\lang\english/ruad.TRA] has 256 translation strings
ERROR: error loading [ruad/rrofhessa/ruad.d]
ERROR: compiling [ruad/rrofhessa/ruad.d]!
Stopping installation because of error.
Stopping installation because of error.


#11 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 27 January 2021 - 10:50 PM

Argh!!!

Good catch. The culprit is a typo in ruad_soa.tpa line #48

 

COMPILE EVALUATE_BUFFER ~ruad/rrofhessa/ruad.d~    USING ~ruad/lang/%s/ruad.tra~

 

that should be:

 

COMPILE EVALUATE_BUFFER ~ruad/rofhessa/ruad.d~    USING ~ruad/lang/%s/ruad.tra~


Sorry for the disturbance, I will fix it this afternoon. Meanwhile, you can fix it with Notepad++.



Edit: fixed and updated (v29.4.0). ;)


Edited by Gwendolyne, 27 January 2021 - 11:16 PM.

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#12 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 27 January 2021 - 11:21 PM

Ruad has been updated to v29.4.0.
 
Change-log:

  • Fixed a typo preventing ruad.d to be installed properly (thanks TotoR for reporting it).
  • Cosmetic changes.

Edited by Gwendolyne, 27 January 2021 - 11:22 PM.

CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#13 neuroghast

neuroghast
  • Member
  • 2 posts

Posted 13 October 2022 - 09:37 AM

Hi! It seems Frostfury is bugged in a way.


When equipped, it deals less damage and has less thac0 bonus than a +2 axe.
Also, it's possible to notice Korgan has only 1 APR with it, while with Stonefire+2 (or any axe, really) he has 2 because of the 5 pips on axes.

It seems like my game isn't recognizing it as an axe, right?

I do have a mod that messes a bit with the proficiencies, add new styles etc, but every other axe and weapon seems to be working fine. My guess is that the weapon isn't flagged (?) properly.

I've tossed 2 screenshots of the axes mentioned above equipped just for a quick comparison here

And since I couldn't find a way to attach my weidu log, I've pasted it in this pastebin link.

 

Hope this is helpful!