From 465400e9c751f9c4321c7b57241adb9914f543f5 Mon Sep 17 00:00:00 2001 From: CamDawg Date: Mon, 27 Aug 2018 18:19:14 -0700 Subject: [PATCH] v9 --- CHANGELOG.md | 9 + package_mod.bat | 4 +- song_and_silence/dirgesinger/a!dssong.spl | Bin 3154 -> 3154 bytes song_and_silence/gypsy/a!gyps.spl | Bin 2354 -> 3506 bytes song_and_silence/gypsy/cdca7.eff | Bin 0 -> 272 bytes song_and_silence/gypsy/cdcd7.eff | Bin 0 -> 272 bytes song_and_silence/gypsy/cdcurse.spl | Bin 1066 -> 1018 bytes song_and_silence/gypsy/cdcvis.eff | Bin 0 -> 272 bytes song_and_silence/readme-song_and_silence.html | 778 +++++++++++------- song_and_silence/setup-song_and_silence.tp2 | 117 +-- song_and_silence/style/g3_logo_2018.gif | Bin 0 -> 6229 bytes song_and_silence/style/g3banner.bmp | Bin 28768 -> 28768 bytes song_and_silence/style/g3readme.css | 101 --- .../style/g3readme_cam_022916.css | 227 +++++ 14 files changed, 765 insertions(+), 471 deletions(-) create mode 100644 song_and_silence/gypsy/cdca7.eff create mode 100644 song_and_silence/gypsy/cdcd7.eff create mode 100644 song_and_silence/gypsy/cdcvis.eff create mode 100644 song_and_silence/style/g3_logo_2018.gif delete mode 100644 song_and_silence/style/g3readme.css create mode 100644 song_and_silence/style/g3readme_cam_022916.css diff --git a/CHANGELOG.md b/CHANGELOG.md index e225968..548a789 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## Version 9 - August 27, 2018 +### Added +- Added compatibility for IWDEE +- Fixed bug where Nalia and Imoen would not get the S&S version of the Adventurer kit when used in conjunction with NPC Kitpack +- The bard songs of the Gypsy and Dirgesinger have had their areas of effect upped to match the bardsong of Jesters (15' radius) +- The curse spell of the Gypsy no longer reports 'Bless' on its target +- The Gypsy bardsong can now be resisted by elven sleep/charm resistance (if installed from Fixpack or the EEs); the spell will also no longer apply effects or require saving throws from non-humanoids + + ## Version 8 - October 3, 2016 ### Added - EET compatibility diff --git a/package_mod.bat b/package_mod.bat index a5346f1..5f8c011 100644 --- a/package_mod.bat +++ b/package_mod.bat @@ -6,12 +6,12 @@ call "%~dp0..\ModPackaging\utilities\ie_games.bat" REM /* MODIFY: set the values of the 3 variables below to reflect the current mod version */ set "mod_name=Song and Silence" -set mod_version=v8 +set mod_version=v9 set mod_folder=song_and_silence REM /* MODIFY: list here which IE games the mod is compatible with, from this list of possibilities: */ REM /* %bg1%, %bg2%, %bgt%, %tutu%, %bgee%, %bgiiee%, %iwd1%, %iwdee%, %iwd2%, %iwd2ee%, %iwd-in-bg2%, %pst%, %pstee% */ -set "compatible_games=%bg2%, %bgt%, %tutu%, %bgee%, or %bgiiee%" +set "compatible_games=%bg2%, %bgt%, %tutu%, %bgee%, %bgiiee%, %iwdee%, or %eet%" REM /* MODIFY: these variables have sensible default values but they may need to be tweaked to match your particular mod */ REM /* the ico_folder is where your .ico files are stored, which is usually the mod's backup or style folder */ diff --git a/song_and_silence/dirgesinger/a!dssong.spl b/song_and_silence/dirgesinger/a!dssong.spl index 5a17c886460ac2d27fffe7b0fd0990a14641199a..d634368707fe690c8350886b7414be0eae65400c 100644 GIT binary patch delta 39 lcmca4aYRBB3=TC&4P@M+yLdM3+ey> delta 39 qcmca4aY88t=2*j1u2L_jo{#BDuNCUYHd|e2?i{>xbzBK9GzT65X8+p=-|z` zc_V(*^Pc3fZPLh-@nlGobACBF`O_#o@h_UbKf5k+_xvKGhbK}MsfkSKX?U1%@gxen z$IW1~H5}Kg`w8pZnDMH->0{>bq=aYpJ=rn$I#EgH%nR+vN5)lBu4>(D#??}8KF8_! z=zAA)Ts`G{>$3Y>O1ZThx14f8j$2K+?Zh2;C0o)KvzI;DTRFT8BbzXDf}hhF>#r!k z@aG%<`f0PMZpd!Rn=w~CeNuw@uKm@M&Xtn84c)}x@kyj%CUhqD=HfOXWBwuDbUa0@ z|DO1GKV`dq6rOckN9U)L*6)w3UryF<`cOhiCi4v;E;+?f+GRe==O#K$0te=;{Ch!&Y_45lR~M}uj( t$<2(aoU9DW42(c{Z?YrP$H|A7KTLLF{V@3u8<6Gz(wsn=8%Xnf005moA9nx% diff --git a/song_and_silence/gypsy/cdca7.eff b/song_and_silence/gypsy/cdca7.eff new file mode 100644 index 0000000000000000000000000000000000000000..2ad29b57e90fa53e4f5e04906369ed761d3f861a GIT binary patch literal 272 xcmZ>Db5jU2(lcOyf<7S41mhsl>_B!3l)om;0ZE23=6^JR%`}h_Y~r*K0{|&17!d#f literal 0 HcmV?d00001 diff --git a/song_and_silence/gypsy/cdcd7.eff b/song_and_silence/gypsy/cdcd7.eff new file mode 100644 index 0000000000000000000000000000000000000000..9378f4e0e534d203877b316613f4f7200a169151 GIT binary patch literal 272 zcmZ>Db5jU2(lc;{((4#70V7a|9f(ta7^p7Z)xexV7|3PDb5jU2(lcOyg6lx~KM=t9j8Fy(kWK;O;)1;L$pCB892i&`7{C+@ U$S!06HV+~NHyR`l=g^n|0CtihivR!s literal 0 HcmV?d00001 diff --git a/song_and_silence/readme-song_and_silence.html b/song_and_silence/readme-song_and_silence.html index 7a45604..9bfe3ad 100644 --- a/song_and_silence/readme-song_and_silence.html +++ b/song_and_silence/readme-song_and_silence.html @@ -1,319 +1,459 @@ - - - - - - Song and Silence: A Mod for Bards and Thieves - - - - - - -

Song and Silence: A Mod for Bards and Thieves

-
-

A Gibberlings Three Mod
- Authors: Andyr, Grim Squeaker, and NiGHTMARE
- On the web: Home page
and discussion forum

-

Version 8 - Check for the most recent version
- Languages: English, French, German, Polish
- Platforms: Windows, Mac OS X, and Linux -

-

Overview

-
-

This mod adds many options to those who use thieves and bards in Baldur's Gate: Enhanced Edition, Baldur's Gate II: Enhanced Edition, BG2: Shadows of Amn (with or without the expansion pack Throne of Bhaal) and with the mod conversions Enhanced Edition Trilogy, Baldur's Gate Trilogy, and Baldur's Gate Tutu. For bug reports and suggestions please visit the discussion forum.

-
-

Compatibility

-
-

This mod is designed to work with Baldur's Gate: Enhanced Edition, Baldur's Gate II: Enhanced Edition, BG2: Shadows of Amn (with or without the expansion pack Throne of Bhaal) and with the mod conversions Enhanced Edition Trilogy, Baldur's Gate Trilogy, and Baldur's Gate Tutu. The mod is fully compatible with the changes made in the Ashes of Embers "Universal Weapons" component, provided Song and Silence is installed after it. The Rogue Rebalancing and Refinements mods from Spellhold Studios also alter rogues (bards and thieves); if you are using these then you should get the benefits of whichever was installed most recently. Until I get HLAs (High Level Abilities) done in this mod I would recommend installing one of them before this mod, so you get their HLAs and my new kits and changes to classes. All the new kits in this mod currently use the standard HLA tables so will be compatible with Refinements and Rogue Rebalancing. If you have kitted Imoen or Nalia with the Adventurer kit from the NPC Kitpack, installing Song and Silence's Adventurer kit will update them to the (slightly different) S&S version of thhe Adventurer.

-
-

Installation

-
-

If you've installed an earlier version of the mod, please uninstall it prior to extracting and installing the new version.

-

Windows

-
-

Song and Silence for Windows is distributed as a self-extracting archive and includes a WeiDU installer. To install, simply double-click the archive and follow the instructions on screen.

-

Alternatively, the files can be extracted into your game directory using 7zip or WinRAR. When properly extracted, your game directory will contain setup-song_and_silence.exe and the folder song_and_silence. To install, double-click setup-song_and_silence.exe and follow the instructions on screen.

-

You can run setup-song_and_silence.exe in your game folder to reinstall, uninstall or otherwise change components.

-
-

Mac OS X

-
-

Song and Silence for Mac OS X is distributed as a compressed tarball and includes a WeiDU installer.

-

First, extract the files from the tarball into your game directory. When properly extracted, your game directory will contain setup-song_and_silence, setup-song_and_silence.command, and the folder song_and_silence. To install, double-click setup-song_and_silence.command and follow the instructions on screen.

-

You can run setup-song_and_silence.command in your game folder to reinstall, uninstall or otherwise change components.

-
-

Linux

-
-

Song and Silence for Linux is distributed as a compressed tarball and does not include a WeiDU installer.

-

Extract the contents of the mod to the folder of the game you wish to modify.

-

Download the latest version of WeiDU for Linux from WeiDU.org and copy WeiDU and WeInstall to /usr/bin. Following that, open a terminal, cd to your game installation directory, run tolower and answer Y to both queries. You can avoid running the second option (linux.ini) if you've already ran it once in the same directory. To save time, the archive is already tolowered, so there's no need to run the first option (lowercasing file names) either if you've extracted only this mod since the last time you lowercased file names. If you're unsure, running tolower and choosing both options is the safe bet.

-

To install, run WeInstall song_and_silence in your game folder. Then run wine BGMain.exe and start playing.

-
-
-

Contents

-
-

Each component is separate and optional. The list of components is as follows:

-

Changes to trueclass bards and thieves, and unmodded game kits (required - for other components)
-
This is required for all other components.

-

This component changes thieves and bards to be more in line with P&P rules - and my own personal views on the classes. Firstly, alignment restrictions - have been changed. Thieves can now be of any alignment (previously Lawful - Good was prohibited) as can kitless Bards and Blades. Jesters and Skalds - can now be of any non-Lawful alignment.

-

Secondly, this component fixes several bugs to do with bards and rogues - in the unmodded game. These are listed below. Some of these bugs may be fixed - by other mods/patches/fixpacks such as BG2 Fixpack. - There will be no problems with having the fixes from both sources installed.

-
    -
  • Blades not actually suffering a penalty to their Pick Pockets skill as - the description states.
  • -
  • Skalds were not getting a bonus to hit as the description states.
  • -
  • Swashbucklers had incorrect maximum proficiency slots in Katana, Crossbow, - Short Bow and Sling.
  • -
-

Thirdly, thieves (kitless and kitted) can now place 3 proficiency points - in Two Weapon Fighting Style. The Swashbuckler description has been altered - to reflect the fact that this is now not unique to them.

-

Further versions will include HLA changes - - at the moment I would suggest using aVENGER's Rogue Rebalancing from Spellhold - Studios as an alternative. aVENGER has graciously allowed us to use his - work as a basis for HLAs in - this mod, so if you've been using Rogue Rebalancing and liked that you should - hopefully enjoy this mod too!

-

Add new bardic store and thief items

-

This component adds a new storekeep, Raoul, to the game who sells a variety - of interesting new items. These are mainly for bards but other classes may - find something to suit as well... So be sure to take a peek. Raoul can be - found standing between two tents at the Nashkel Carnival in BGEE/EET/BGT/Tutu, and outside - the Five Flagons at the Merchant's Square in the Athkatla Bridge District - in BGIIEE/EET/BGT/BG2. Note that while Raoul will appear in both the Carnival and the Bridge District in BGT games, his store inventory will not carry over from Nashkel to Athkatla.

-

A selection of new items designed with thieves in mind has also been added; - in BGEE/EET/BGT/Tutu they can be found in the inventory of Black Lily (in the Thieves' - Guild in the city of Baldur's Gate) and in BGIIEE/EET/BGT/BG2 you - can find them with Roger the Fence (in the Sewers of Athkatla underneath - the Temple District).

-

Install Acrobat bard kit

-
-

ACROBAT: As entertainers, most Acrobats are typically found accompanying carnivals or circuses, although a troupe of Acrobats can put on a remarkable show all by themselves. The often perform in large taverns or in clubs, using their arts to draw in the crowd and captivate them long enough for the proprietor to drain their purses. Acrobats are flashy and love to show off their skills; whatever they do, they like to do with a sense of style and a flair for the dramatic. Acrobats sometimes become cat burglars extraordinaire, and they are also useful adventuring allies, as they can squeeze into places where others cannot go without the aid of magic. Their skill at avoiding traps and other dangers also makes them excellent scouts.

- -

Advantages:
- - +1 bonus to Armor Class
- - +1 bonus to Armor Class vs. missiles every 8 levels
- - May place up to 2 proficiency points in slings, darts and daggers

- -

Disadvantages:
- - May only place proficiency points in weapons a thief can use
- - May not wear armor heavier than Studded Leather
- - Only has one-half normal lore value

-
-

Install Chorister bard kit

-
-

CHORISTER: Music, whether hymn, symphony or dark chanting intonation, plays an important part in the services of most deities. For aiding in performing rituals or just leading the faithful in worship, most holy places have at least one bard, known as a Chorister.

- -

Choristers are not only to be found within temple walls, however; many faiths use them as missionaries, helping to bring new worshippers into the fold. Many an adventuring bard with a religious bent can also end up as a Chorister, finding their prayers answered by the deity they venerate.

- -

Advantages:
- - Knows a small selection of divine spells. These are accessed and memorised as Mage spells:
- Level 1: Armor of Faith, Cure Light Wounds, Doom
- Level 2: Chant, Draw Upon Holy Might, Slow Poison
- Level 3: Cure Medium Wounds, Glyph of Warding
- Level 4: Defensive Harmony, Holy Power
- Level 5: Mass Cure
- Level 6: Bolt of Glory

- -

Disadvantages:
- - Only has one-half normal Lore value
- - Only has one-half Pick Pockets percentage

-
-

Install Dirgesinger bard kit

-
-

DIRGESINGER: Dirgesingers voice melodies not of celebration and joy, but of sorrow and grief. They seek to spread this melancholy outlook far and wide, believing that only those who give in to their sadness can truly understand the world.

- -

These sad wanderers seek to express their grief through songs that teach the hearts of their listeners the meaning of true sorrow. Some of these fallen bards want nothing more than for others to understand the depths of their loss. A few are sinister creatures who believe that, since joy has been extinguished for them, they must in turn extinguish the joy of others by using their powers to teach the folly of love, the futility of hope, and the finality of the grave. Dirgesingers of this last sort often associate themselves with powerful undead; serving in the courts of vampire lords or lich-kings.

- -

Dirgesingers are limited to non-good alignments.

- -

Advantages:
- - Song Curses enemies, giving them a -1 penalty to saves and THAC0. At level 10 the penalty becomes -2, at level 20 -3 and level 30 -4.
- - From level 5 may use a Song of Horror 1/day. This has the same effects as the level 2 Wizard spell, Horror
- - From level 7 may use a Song of Grief 1/day. This has the same effects as the level 4 Wizard spell, Confusion
- - From level 9 may use a Song of Awakening 1/day. This has the same effects as the level 5 Wizard spell, Animate Dead

- -

Disadvantages:
- - Only has one-half normal Lore value

-
-

Install Gypsy bard kit

-
-

GYPSY: Gypsies are often called "travelling people" or "forest nomads," typically wandering the lands in caravans comprising of brightly painted carts or wagons. These people are well-known for their strange music and dances, typically surviving in their wandering lifestyle by entertaining villagers and folk in the places they roam. Gypsies wander the land, experiencing life as they go. They travel until they find something of interest, where they establish a temporary camp and remain until the urge to see more of the world overpowers their desire to stay. Adventuring gypsies may be on a personal quest to locate some unique place or thing or may simply be out to experience the great wonders that appear along the adventuring path.

- -

Gypsies are often misunderstood by others, who classify them as thieves, beggars, carnival people, nomads, or any number of other erroneous names. They are also very open and welcoming to those who seek to learn their ways and join them in their wandering, garnering for them a reputation for stealing children in the night and then spiriting them off into the wilderness. It should be noted that not all Gypsies are bards or have bardic abilities; Gypsy bards, known among Gypsy clans as "rawuns," function as the chief storytellers, lore-keepers, fortune tellers, and spiritual advisers of their Gypsy clans.

- -

Advantages:
- - Song charms enemies unless they save vs. spells at +2, with a -1 penalty per 5 levels of the bard
- - Has a +1 bonus to saves vs. spells per 8 levels
- - Can cast Curse once per day. The opposite of a Bless spell, this gives foes a -1 penalty to THAC0 and saves

- -

Disadvantages:
- - Cannot learn mage spells from the schools of Conjuration, Invocation or Transmutation

-
-

Install Adventurer thief kit

-

If you have kitted Imoen or Nalia with the Adventurer kit from the NPC Kitpack, installing this will update them to this version of the Adventurer.

-
-

ADVENTURER: The adventurer is a jack-of-all-trades, not so much a thief as a character who takes advantage of general thiefly skills on adventures. An Adventurer is preferred by many adventuring parties, because he is much less likely than other thieves to betray or steal from his own companions. The successful Adventurer knows the value of trust and cooperation, while many a "street thief" has been raised on duplicity and (sometimes literal) backstabbing.

- -

Advantages:
- - +5% to Open Locks and Find/Remove Traps every other level
- - Gains a +1 bonus to all saves at levels 1, 8 and 14

- -

Disadvantages:
- - No backstab multiplier

-
-

Install Burglar thief kit

-
-

BURGLAR: This sort of thief is the consummate Burglar. He is an expert - at breaking and entering the most difficult buildings, bypassing walls, - locks, traps and guardians, grabbing the best loot, and escaping unnoticed - as stealthily as he arrived.

-

Advantages:
- - +10% to Find Traps, Hide In Shadows, Move Silently and Open Locks
- - Can Specialize in Daggers, Darts, and Slings

-

Disadvantages:
- - -20% to Pick Pockets and Set Traps
- - Gains trap usage at half the rate of a normal thief

-
-

Install Soulknife thief kit

-
-

SOULKNIFE: This sort of thief, a being possessed of potent psionic power, recognises his or her own mind as the most beautiful and deadly thing in all creation. With practice, they have learned to forge their mental strength into a semisolid blade of pure psychic energy. This weapon, known as a mind blade, means that even when unarmed the soulknife is but a thought away from a deadly strike.

- -

Advantages:
- - Can achieve Mastery in short swords
- - Can manifest a Mind Blade once per day per 10 levels. This short sword is a psionic weapon that lasts for 1 round/level, and counts as being of enchantment 1 higher than it is when determining what it can hit, to a maximum of +5. Each hit heals the Soulknife 1 hit point. THAC0 bonus and damage improve by 1 per 5 levels, to a maximum of +5 at level 25. Range improves by 10 every 5 levels to a maximum of 50 at level 25.

- -

Disadvantages:
- - Cannot set traps
- - Only gets 15 skill points per level

-
-

Install Sharpshooter thief kit

-
-

SHARPSHOOTER: This sort of thief tends to be a stealthy character, preferring to engage their target from afar with bolt or arrow rather than face them in dangerous melee combat. Unlike the ranger, the Sharpshooter uses her skills to aid in dubious activities involving the property and lives of others rather than the protection of the great outdoors.

- -

Although well-versed in the use of many missile weapons, sharpshooters are not as resilient as true warriors, and their propensity for missile attacks over melee means that they lack the opportunism of other thieves when it comes to backstabbing. They tend not to see this as a disadvantage, instead striking from the shadows with a well-aimed projectile, or setting a deadly trap for those who would follow, when necessary.

- -

Advantages:
- - Can attain Grand Mastery in any missile weapon a thief can use
- - May coat a missile weapon in poison once per day per 4 levels. Attacks made with the weapon in the next round will inject the poison into the target, dealing out 1 damage per second for 24 seconds (3 damage for the first 6 seconds). A saving throw vs. poison limits damage to 12 total.

- -

Disadvantages:
- - No backstab multiplier

-
-

Install Shadowdancer thief kit

-

Since BGEE/BGIIEE already have their own Shadowdancer, this kit is only available for BG2/Tutu/BGT.

-
-

SHADOWDANCER: Operating in the border between light and darkness, Shadowdancers are nimble artists of deception. They are mysterious and unknown, never completely trusted but always inducing wonder when met. Despite their link with shadows and trickery, Shadowdancers are as often good as evil. They may use their incredible abilities as they wish.

- -

Shadowdancers often work in troupes, never staying in one place too long. Some use their abilities to entertain. Others operate as thieves, using their abilities to infiltrate past defenses and dupe others. All Shadowdancer troupes maintain an aura of mystery among the populace, who never know whether to think well or ill of them.

- -

Advantages:
- - Gains a +5% bonus to Hide and Move Silently skills per 2 levels
- - Has permanent Infravision
- - May cast Reflected Image once per day
- - From level 5, can summon a Shadow once per day. The Shadow increases in power as the Shadowdancer gains levels, has stealthy abilities, and is summoned for 8 hours.
- - From level 8, may cast Shadow Door once per day. Further uses are gained at levels 14 and 20.

- -

Disadvantages:
- - May not set traps
- - Only gains 15 skill points per level

-
-
-

Contact Information

-
-

Andyr, Grim Squeaker, and NiGHTMARE created this mod. You can visit the Gibberlings Three forums for information on this and any other mods on which we may be working.

-
-

Thanks and Acknowledgements

-
-

Thanks go to those hanging around IRC that helped with ideas and told me what sucked. And cheers to SimDing0 and Jester for some testing! Thanks to aVENGER for allowing us to use his HLA tables as a basis for our work. Thanks to Cam for letting me pilfer his Curse spell for the Dirgesinger and Gypsy, and Igi for fixing the Gypsy song while it was giving me grief.

-

Thanks to the still active and vibrant Infinity Engine modding community.

-

Tools Used in Creation
- WeiDU by Wes Weimer
- Near Infinity by Jon Olav Hauglid
- IESDP maintained by igi

-
-

Credits and Copyright Information

-
-

This mod may not be sold, published, compiled or redistributed in any form without the consent of its authors. The Song and Silence mod is ©2004-2016 Andyr, Grim Squeaker, and NiGHTMARE.

-
-

Version History

-
-

Version 8 - October 3, 2016

-
    -
  • Added EET compatibility
  • -
  • Fixed EE item description formatting (en dash prefix in lists)
  • -
  • Updated WeiDU to v240
  • -
  • Updated Polish translation (thanks Cahir)
  • -
-

Version 7 - September 15, 2016

-
    -
  • Updated to latest version of fl#add_kit_ee function for compatibility with EE 2.0
  • -
  • Replaced outdated HANDLE_CHARSETS function with the updated one included in WeiDU
  • -
  • Corrected some errors with usage of HANDLE_CHARSETS (thanks Isaya)
  • -
  • Corrected some encoding errors in English .tra files (thanks Isaya)
  • -
  • Corrected some descriptions that displayed duplicated usability info on EE (thanks Isaya)
  • -
  • Corrected some typos in kit and item descriptions
  • -
  • Updated WeiDU to v239
  • -
  • Updated French translation (thanks Isaya)
  • -
-

Version 6 - September 25, 2014

-
    -
  • Raoul will now appear in the Nashkel Carnival for BGT games
  • -
  • Updated all kits and content to work on BGEE/BGIIEE games
  • -
  • Streamlined install of Raoul's audio
  • -
  • Purged several empty/unused/unnecessary files, consolidated others
  • -
-

Version 5 - April 30, 2010

-
    -
  • Updated WeiDU to v216
  • -
  • Resolved compatibility issue with Assassin's Poison Weapon patching (thanks aVENGER)
  • -
  • Fixed Chorister and Dirgesinger armor usability issues (thanks Mike1072)
  • -
  • Fixed Acrobat scroll and potion usability issues (thanks Mike1072)
  • -
  • Fixed "Myself" script error causing incorrect targeting (thanks Lollorian)
  • -
-

Version 4 - July 02, 2009

-
    -
  • Updated WeiDU to v211
  • -
  • Added German translation (thanks Roter Berserker)
  • -
  • Fixed bug causing everyone EXCEPT Nalia and Imoen to be turned into Adventurers (thanks Steve and Mike1072)
  • -
  • Fixed Summon Shadow spell causing crashes (thanks Mike1072)
  • -
  • Ensure thieves get 3 points in dual-wielding (thanks Nythrun and Mike1072)
  • -
  • Fixed typos in readme and .tra files
  • -
-

Version 3 - August 1, 2008

-
    -
  • Updated WeiDU to v208
  • -
  • Added README/VERSION
  • -
  • Removed obsolete auto-update.bat
  • -
  • Cosmetic fixes to readme
  • -
  • French translation (thanks Zayn and Lothringen of the d'Oghmatiques)
  • -
  • Polish translation (thanks Yarpen)
  • -
  • Fixed bugs and reported problems through June 2008 (thanks Nythrun)
  • -
-

Version 2 - September 18, 2007

-
    -
  • Updated WeiDU to v200
  • -
  • Tra-ified, for ease of potential translators
  • -
  • Tweaked the songs of the Dirgesinger and Gypsy kits
  • -
  • Tweaked the Adventurer's abilities
  • -
  • Incorporated the PnP bard spell progression table
  • -
  • Increased the cost of Caster's Chain, as it was too cheap
  • -
  • The mod will now detect Idobek's NPC Kit and use the Adventurer kit from this mod for Nalia and Imoen instead
  • -
  • Changed the way Raoul is spawned, as it could interfere with fog-of-war clearance
  • -
  • Given the Sharpshooter a little power boost
  • -
  • Added the Shadowdancer thief kit
  • -
-

Version 1 - January 5, 2005

-
    -
  • Initial release... If you have read as far down the ReadMe as this, congratulations. May your loins sire many children. Now go and play.
  • -
-
- - + + + +Song and Silence: A Mod for Bards and Thieves + + + + + +
+ +
+
+

Song and Silence: A Mod for Bards and Thieves

+
+
+
+
+

A Gibberlings Three Mod
+Authors:
Andyr, Grim Squeaker, and NiGHTMARE
+On the web:
Home page and discussion forum

+

Version 9
+ Languages:English, French, German, Polish
+ Platforms: Windows, Mac OS X, Linux
+ GitHub: Gibberlings3/SongAndSilence

+
+
+

Overview

+
+
+
+
+

This mod adds many options to those who use thieves and bards in Baldur's Gate: Enhanced Edition, Baldur's Gate II: Enhanced Edition, BG2: Shadows of Amn (with or without the expansion pack Throne of Bhaal), Icewind Dale: Enhanced Edition, and with the mod conversions Enhanced Edition Trilogy, Baldur's Gate Trilogy, and Baldur's Gate Tutu. For bug reports and suggestions please visit the discussion forum.

+
+
+

Compatibility

+
+
+
+
+

This mod is designed to work with Baldur's Gate: Enhanced Edition, Baldur's Gate II: Enhanced Edition, BG2: Shadows of Amn (with or without the expansion pack Throne of Bhaal), Icewind Dale: Enhanced Edition, and with the mod conversions Enhanced Edition Trilogy, Baldur's Gate Trilogy, and Baldur's Gate Tutu. The mod is fully compatible with the changes made in the Ashes of Embers "Universal Weapons" component, provided Song and Silence is installed after it. The Rogue Rebalancing and Refinements mods from Spellhold Studios also alter rogues (bards and thieves); if you are using these then you should get the benefits of whichever was installed most recently. Until I get HLAs (High Level Abilities) done in this mod I would recommend installing one of them before this mod, so you get their HLAs and my new kits and changes to classes. All the new kits in this mod currently use the standard HLA tables so will be compatible with Refinements and Rogue Rebalancing. If you have kitted Imoen or Nalia with the Adventurer kit from the NPC Kitpack, installing Song and Silence's Adventurer kit will update them to the (slightly different) S&S version of thhe Adventurer.

+
+
+

Bug Reporting

+
+
+
+
+

If you should encounter any bugs, please report them to the authors at the Song and Silence forum. In addition, Song and Silence is available on GitHub, so fixes and changes can be submitted by the community.

+
+
+

Installation

+
+
+
+
+

Special Note for Siege of Dragonspear from Steam/GOG
+
Good Old Games (GOG) and Steam both package the additional content for Siege of Dragonspear in a method that WeiDU, the tool used to install this mod, cannot access. You must run a program called Modmerge on your SoD installation before you can install this or any other WeiDU-based mod.

+

Enhanced Editions Note
+ The Enhanced Editions are actively supported games. Please note that every patch update will wipe your current mod setup! If in the middle of a modded game you might want to delay the patch update (if possible) as even after reinstalling the mods, you might not be able to continue with your old savegames. Alternatively, copy the whole game's folder into a new one that can be modded and will stay untouched by game patches. For BG2:EE it is important that you install the mod to the language version you are playing the game in. Otherwise, the dialogues of the mod will not show but give error messages.

+

Windows
+ Song and Silence for Windows is distributed as a self-extracting archive and includes a WeiDU installer. To install, simply double-click the archive and follow the instructions on screen.

+

Alternatively, the files can be extracted into your game directory using 7zip or WinRAR. When properly extracted, your game directory will contain setup-song_and_silence.exe and the folder song_and_silence. To install, double-click setup-song_and_silence.exe and follow the instructions on screen.

+

You can run setup-song_and_silence.exe in your game folder to reinstall, uninstall or otherwise change components.

+

Mac OS X
+ Song and Silence for Mac OS X is distributed as a compressed tarball and includes a WeiDU installer.

+

First, extract the files from the tarball into your game directory. When properly extracted, your game directory will contain setup-song_and_silence, setup-song_and_silence.command, and the foldersong_and_silence. To install, double-click setup-song_and_silence.command and follow the instructions on screen.

+

You can run setup-song_and_silence.command in your game folder to reinstall, uninstall or otherwise change components.

+

Linux
+ Song and Silence for Linux is distributed as a compressed tarball and does not include a WeiDU installer.

+

Extract the contents of the mod to the folder of the game you wish to modify.

+

Download the latest version of WeiDU for Linux from WeiDU.org and copy WeiDU and WeInstall to /usr/bin. Following that, open a terminal, cd to your game installation directory, run tolower and answer Y to both queries. You can avoid running the second option (linux.ini) if you've already ran it once in the same directory. To save time, the archive is already tolowered, so there's no need to run the first option (lowercasing file names) either if you've extracted only this mod since the last time you lowercased file names. If you're unsure, running tolower and choosing both options is the safe bet.

+

To install, run WeInstall song_and_silence in your game folder. Then run wine BGMain.exe and start playing.

+

Note for Complete Uninstallation
+ In addition to the methods above for removing individual components, you can completely uninstall the mod using setup-song_and_silence --uninstall at the command line to remove all components without wading through prompts. .

+
+
+

Contents

+
+
+
+
+

Each component is separate and optional. The list of components is as follows:

+

Changes to trueclass bards and thieves, and unmodded game kits (required + for other components)
+
Required for all other components.

+

This component changes thieves and bards to be more in line with P&P rules + and my own personal views on the classes. Firstly, alignment restrictions + have been changed. Thieves can now be of any alignment (previously Lawful + Good was prohibited) as can kitless Bards and Blades. Jesters and Skalds + can now be of any non-Lawful alignment.

+

Secondly, this component fixes several bugs to do with bards and rogues + in the unmodded game. These are listed below. Some of these bugs may be fixed + by other mods/patches/fixpacks such as BG2 Fixpack. + There will be no problems with having the fixes from both sources installed.

+
    +
  • Blades not actually suffering a penalty to their Pick Pockets skill as + the description states.
  • +
  • Skalds were not getting a bonus to hit as the description states.
  • +
  • Swashbucklers had incorrect maximum proficiency slots in Katana, Crossbow, + Short Bow and Sling.
  • +
+

Thirdly, thieves (kitless and kitted) can now place 3 proficiency points + in Two Weapon Fighting Style. The Swashbuckler description has been altered + to reflect the fact that this is now not unique to them.

+

Further versions will include HLA changes + - at the moment I would suggest using aVENGER's Rogue Rebalancing from Spellhold + Studios as an alternative. aVENGER has graciously allowed us to use his + work as a basis for HLAs in + this mod, so if you've been using Rogue Rebalancing and liked that you should + hopefully enjoy this mod too!

+

Add new bardic store and thief items
+ Not available for IWDEE

+

This component adds a new storekeep, Raoul, to the game who sells a variety + of interesting new items. These are mainly for bards but other classes may + find something to suit as well... So be sure to take a peek. Raoul can be + found standing between two tents at the Nashkel Carnival in BGEE/BGT/Tutu, and outside + the Five Flagons at the Merchant's Square in the Athkatla Bridge District + in BGIIEE/BGT/BG2. Note that while Raoul will appear in both the Carnival and the Bridge District in BGT games, his store inventory will not carry over from Nashkel to Athkatla.

+

A selection of new items designed with thieves in mind has also been added; + in BGEE/BGT/Tutu they can be found in the inventory of Black Lily (in the Thieves' + Guild in the city of Baldur's Gate) and in BGIIEE/BGT/BG2 you + can find them with Roger the Fence (in the Sewers of Athkatla underneath + the Temple District).

+

Install Acrobat bard kit

+
+

ACROBAT: As entertainers, most Acrobats are typically found accompanying + carnivals or circuses, although a troupe of Acrobats can put on a remark­able + show all by themselves. The often perform in large taverns or in clubs, + using their arts to draw in the crowd and captivate them long enough for + the proprietor to drain their purses. Acrobats are flashy and love to show + off their skills; whatever they do, they like to do with a sense of style + and a flair for the dramatic. Acrobats sometimes become cat burglars extraordinaire, + and they are also useful adventuring allies, as they can squeeze into places + where others cannot go without the aid of magic. Their skill at avoiding + traps and other dangers also makes them excellent scouts.

+

Advantages:
+ - +1 bonus to Armor Class
+ - +1 bonus to Armor Class vs. missiles every 8 levels
+ - May place up to 2 proficiency points in slings, darts and daggers

+

Disadvantages:
+ - May only place proficiency points in weapons a thief can use
+ - May not wear armor heavier than Studded Leather
+ - Only has one-half normal lore value

+
+

Install Chorister bard kit

+
+

CHORISTER: Music, whether hymn, symphony or dark chanting intonation, + plays an important part in the services of most deities. For aiding in + performing rituals or just leading the faithful in worship, most holy places + have at least one bard, known as a Chorister.

+

Choristers are not only to be found within temple walls, however; many + faiths use them as missionaries, helping to bring new worshippers into + the fold. Many an adventuring bard with a religious bent can also end up + as a Chorister, finding their prayers answered by the deity they venerate.

+

Advantages:
+ - Knows a small selection of divine spells. These are accessed and memorized + as Mage spells:
+ Level 1: Armor of Faith, Cure Light Wounds, Doom
+ Level 2: Chant, Draw Upon Holy Might, Slow Poison
+ Level 3: Cure Medium Wounds, Glyph of Warding
+ Level 4: Defensive Harmony, Holy Power
+ Level 5: Mass Cure
+ Level 6: Bolt of Glory

+

Disadvantages:
+ - Only has one-half normal Lore value
+ - Only has one-half Pick Pockets percentage

+
+

Install Dirgesinger bard kit

+
+

DIRGESINGER: Dirgesingers voice melodies not of celebration and joy, but + of sorrow and grief. They seek to spread this melancholy outlook far and + wide, believing that only those who give in to their sadness can truly + understand the world.

+

These sad wanderers seek to express their grief through songs that teach + the hearts of their listeners the meaning of true sorrow. Some of these + fallen bards want nothing more than for others to understand the depths + of their loss. A few are sinister creatures who believe that, since joy + has been extinguished for them, they must in turn extinguish the joy of + others by using their powers to teach the folly of love, the futility of + hope, and the finality of the grave. Dirgesingers of this last sort often + associate themselves with powerful undead; serving in the courts of vampire + lords or lich-kings.

+

Dirgesingers are limited to non-good alignments.

+

Advantages:
+ - Song Curses enemies, giving them a -1 penalty to saves and THAC0
+ - From level 5 may use a Song of Horror 1/day. This has the same effects + as the level 2 Wizard spell, Horror
+ - From level 7 may use a Song of Grief 1/day. This has the same effects + as the level 4 Wizard spell, Confusion
+ - From level 9 may use a Song of Awakening 1/day. This has the same effects + as the level 5 Wizard spell, Animate Dead

+

Disadvantages:
+ - Song does not improve with level
+ - Only has one-half normal Lore value

+
+

Install Gypsy bard kit

+
+

GYPSY: Gypsies are often called "traveling people" or "forest nomads," typically + wandering the lands in caravans comprising of brightly painted carts or + wagons. These people are well-known for their strange music and dances, + typically surviving in their wandering lifestyle by entertaining villagers + and folk in the places they roam. Gypsies wander the land, experiencing + life as they go. They travel until they find something of interest, where + they establish a temporary camp and remain until the urge to see more of + the world over­powers their desire to stay. Adventuring gypsies may be + on a personal quest to locate some unique place or thing or may simply + be out to experience the great wonders that appear along the adventuring + path.

+

Gypsies are often misunderstood by others, who classify them as thieves, + beggars, carnival people, nomads, or any number of other erroneous names. + They are also very open and welcoming to those who seek to learn their + ways and join them in their wan­dering, garnering for them a reputation + for steal­ing children in the night and then spiriting them off into the + wilderness. It should be noted that not all Gypsies are bards or have bardic + abilities; Gypsy bards, known among Gypsy clans as "rawuns," func­tion + as the chief storytellers, lore-keepers, fortune tellers, and spiritual + advisers of their Gypsy clans.

+

Advantages:
+ - Song charms enemies unless they save vs. spells with a -1 penalty per + 10 levels of the bard
+ - Has a +1 bonus to saves vs. spells per 8 levels
+ - Can cast Curse once per day. The opposite of a Bless spell, this gives + foes a -1 penalty to THAC0 and + saves

+

Disadvantages:
+ - Cannot learn mage spells from the schools of Conjuration, Invocation + or Transmutation

+
+

Install Adventurer thief kit

+

If you have kitted Imoen or Nalia with the Adventurer kit from the NPC Kitpack, installing this will update them to this version of thhe Adventurer.

+
+

ADVENTURER: The adventurer is a jack-of-all-trades, not so much a thief + as a character who takes advantage of general thiefly skills on adventures. + An Adventurer is preferred by many adventuring parties, because he is much + less likely than other thieves to betray or steal from his own companions. + The successful Adventurer knows the value of trust and cooperation, while + many a "street thief" has been raised on duplicity and (sometimes literal) + backstabbing.

+

Advantages:
+ - +5% to Open Locks and Find/Remove Traps every other level

+

Disadvantages:
+ - No backstab multiplier

+
+

Install Burglar thief kit

+
+

BURGLAR: This sort of thief is the consummate Burglar. He is an expert + at breaking and entering the most difficult buildings, bypassing walls, + locks, traps and guardians, grabbing the best loot, and escaping unnoticed + as stealthily as he arrived.

+

Advantages:
+ - +10% to Find Traps, Hide In Shadows, Move Silently and Open Locks
+ - Can Specialize in Daggers, Darts, and Slings

+

Disadvantages:
+ - -20% to Pick Pockets and Set Traps
+ - Gains trap usage at half the rate of a normal thief

+
+

Install Soulknife thief kit

+
+

SOULKNIFE: This sort of thief, a being possessed of potent psionic power, + recognizes his or her own mind as the most beautiful and deadly thing in + all creation. With practice, they have learned to forge their mental strength + into a semisolid blade of pure psychic energy. This weapon, known as a + mind blade, means that even when unarmed the soulknife is but a thought + away from a deadly strike.

+

Advantages:
+ - Can achieve Mastery in short swords
+ - Can manifest a Mind Blade once per day per 10 levels. This short sword + is a psionic weapon that lasts for 1 round/level, and counts as being of + enchantment 1 higher than it is when determining what it can hit, to a + maximum of +5. Each hit heals the Soulknife 1 Hit + Point. THAC0 bonus + and damage improve by 1 per 5 levels, to a maximum of +5 at level 25. Range + improves by 10 every 5 levels to a maximum of 50 at level 25.

+

Disadvantages:
+ - Cannot set traps
+ - Only gets 15 skill points per level

+
+

Install Sharpshooter thief kit

+
+

SHARPSHOOTER: This sort of thief tends to be a stealthy character, preferring + to engage a target from afar with bolt or arrow rather than face them + in dangerous melee combat. Unlike the ranger, the Sharpshooter uses her skills to + aid her dubious activities involving the property and lives of others + rather than the protection of the great outdoors.

+

Although well-versed in the use of many missile weapons, the sharpshooter + is not as resilient as a true warrior and the propensity for missile attacks + over melee means that they lack the opportunism of other thieves when it + comes to backstabbing. They tend not to see this as a disadvantage, instead + striking from the shadows with a well-aimed projectile, or setting a + deadly trap for those who would follow, when necessary.

+

Advantages:
+ - Can attain Grand Mastery in any missile weapon a thief can use
+ - May coat his missile weapon in poison once per day per 4 levels. Attacks + made with the weapon in the next round will inject the poison into the + target, dealing out 1 damage per second for 24 seconds (3 damage for the + first 6 seconds). A saving throw vs. poison limits damage to 12 total.

+

Disadvantages:
+ - No backstab multiplier

+
+

Install Shadowdancer thief kit

+

Since BGEE/BGIIEE/IWDEE already have their own Shadowdancer, this kit is only available for BG2/Tutu/BGT.

+
+

SHADOWDANCER: Operating in the border between light and darkness, Shadowdancers + are nimble artists of deception. They are mysterious and unknown, never + completely trusted but always inducing wonder when met. Despite their link + with shadows and trickery, Shadowdancers are as often good as evil. They + may use their incredible abilities as they wish.

+

Shadowdancers often work in troupes, never staying in one place too long. + Some use their abilities to entertain. Others operate as thieves, using + their abilities to infiltrate past defenses and dupe others. All Shadowdancer + troupes maintain an aura of mystery among the populace, who never know + whether to think well or ill of them.

+

Advantages:
+ - Gains a +5% bonus to Hide and Move Silently skills per 2 levels
+ - Has permanent Infravision
+ - May cast Reflected Image once per day
+ - From level 5, can summon a Shadow once per day. The Shadow increases + in power as the Shadowdancer gains levels, has stealthy abilities, and + is summoned for 8 hours.
+ - From level 8, may cast Shadow Door once per day. Further uses are gained + at levels 14 and 20.

+

Disadvantages:
+ - May not set traps
+ - Only gains 15 skill points per level

+
+
+
+

Contact Information

+
+
+
+
+

Andyr, Grim Squeaker, and NiGHTMARE created this mod. You can visit The Gibberlings Three for information on this and any other mods on which we may be working.

+
+

Thanks and Acknowledgements

+
+
+
+
+

Thanks go to those hanging around IRC that helped with ideas and told me what sucked. And cheers to SimDing0 and Jester for some testing! Thanks to aVENGER for allowing us to use his HLA tables as a basis for our work. Thanks to Cam for letting me pilfer his Curse spell for the Dirgesinger and Gypsy, and igi for fixing the Gypsy song while it was giving me grief.

+

Thanks to the still active and vibrant Infinity Engine modding community.

+

Tools Used in Creation

+ +
+
+

Credits and Copyright Information

+
+
+
+
+

This mod may not be sold, published, compiled or redistributed in any form without the consent of its authors. The Song and Silence mod is ©2004 - present, Andyr, Grim Squeaker, and NiGHTMARE.

+
+

Version History

+
+
+
+
+

Version 9 - August 27, 2018

+
    +
  • Added compatibility for IWDEE
  • +
  • Fixed bug where Nalia and Imoen would not get the S&S version of the Adventurer kit when used in conjunction with NPC Kitpack
  • +
  • The bard songs of the Gypsy and Dirgesinger have had their areas of effect upped to match the bardsong of Jesters (15' radius)
  • +
  • The curse spell of the Gypsy no longer reports 'Bless' on its target
  • +
  • The Gypsy bardsong can now be resisted by elven sleep/charm resistance (if installed from Fixpack or the EEs); the spell will also no longer apply effects or require saving throws from non-humanoids
  • +
+

Version 8 - October 3, 2016

+
    +
  • Added EET compatibility
  • +
  • Fixed EE item description formatting (en dash prefix in lists)
  • +
  • Updated WeiDU to v240
  • +
  • Updated Polish translation (thanks Cahir)
  • +
+

Version 7 - September 15, 2016

+
    +
  • Updated to latest version of fl#add_kit_ee function for compatibility with EE 2.0
  • +
  • Replaced outdated HANDLE_CHARSETS function with the updated one included in WeiDU
  • +
  • Corrected some errors with usage of HANDLE_CHARSETS (thanks Isaya)
  • +
  • Corrected some encoding errors in English .tra files (thanks Isaya)
  • +
  • Corrected some descriptions that displayed duplicated usability info on EE (thanks Isaya)
  • +
  • Corrected some typos in kit and item descriptions
  • +
  • Updated WeiDU to v239
  • +
  • Updated French translation (thanks Isaya)
  • +
+

Version 6 - September 25, 2014

+
    +
  • Raoul will now appear in the Nashkel Carnival for BGT games
  • +
  • Updated all kits and content to work on BGEE/BGIIEE games
  • +
  • Streamlined install of Raoul's audio
  • +
  • Purged several empty/unused/unnecessary files, consolidated others
  • +
+

Version 5 - April 30, 2010

+
    +
  • Updated WeiDU to v216
  • +
  • Resolved compatibility issue with Assassin's Poison Weapon patching (thanks aVENGER)
  • +
  • Fixed Chorister and Dirgesinger armor usability issues (thanks Mike1072)
  • +
  • Fixed Acrobat scroll and potion usability issues (thanks Mike1072)
  • +
  • Fixed "Myself" script error causing incorrect targeting (thanks Lollorian)
  • +
+

Version 4 - July 02, 2009

+
    +
  • Updated WeiDU to v211
  • +
  • Added German translation (thanks Roter Berserker)
  • +
  • Fixed bug causing everyone EXCEPT Nalia and Imoen to be turned into Adventurers (thanks Steve and Mike1072)
  • +
  • Fixed Summon Shadow spell causing crashes (thanks Mike1072)
  • +
  • Ensure thieves get 3 points in dual-wielding (thanks Nythrun and Mike1072)
  • +
  • Fixed typos in readme and .tra files
  • +
+

Version 3 - August 1, 2008

+
    +
  • Updated WeiDU to v208
  • +
  • Added README/VERSION
  • +
  • Removed obsolete auto-update.bat
  • +
  • Cosmetic fixes to readme
  • +
  • French translation (thanks Zayn and Lothringen of the d'Oghmatiques)
  • +
  • Polish translation (thanks Yarpen)
  • +
  • Fixed bugs and reported problems through June 2008 (thanks Nythrun)
  • +
+

Version 2 - September 18, 2007

+
    +
  • Updated WeiDU to v200
  • +
  • Tra-ified, for ease of potential translators
  • +
  • Tweaked the songs of the Dirgesinger and Gypsy kits
  • +
  • Tweaked the Adventurer's abilities
  • +
  • Incorporated the PnP bard spell progression table
  • +
  • Increased the cost of Caster's Chain, as it was too cheap
  • +
  • The mod will now detect Idobek's NPC Kit and use the Adventurer kit from this mod for Nalia and Imoen instead
  • +
  • Changed the way Raoul is spawned, as it could interfere with fog-of-war clearance
  • +
  • Given the Sharpshooter a little power boost
  • +
  • Added the Shadowdancer thief kit
  • +
+

Version 1 - January 5, 2005

+
    +
  • Initial release... If you have read as far down the ReadMe as this, congratulations. May your loins sire many children. Now go and play.
  • +
+
+ + diff --git a/song_and_silence/setup-song_and_silence.tp2 b/song_and_silence/setup-song_and_silence.tp2 index 698cc41..9783ae2 100644 --- a/song_and_silence/setup-song_and_silence.tp2 +++ b/song_and_silence/setup-song_and_silence.tp2 @@ -1,29 +1,39 @@ BACKUP ~song_and_silence/backup~ -AUTHOR ~andyr@gibberlings3.net~ +SUPPORT ~http://gibberlings3.net/forums/index.php?showforum=72~ -VERSION ~v6~ +VERSION ~v9~ README ~song_and_silence/readme-song_and_silence.html~ ALWAYS - INCLUDE ~%MOD_FOLDER%/lib/fl#add_kit_ee.tpa~ - INCLUDE ~%MOD_FOLDER%/lib/functions.tpa~ // misc s&s functions - ACTION_IF NOT VARIABLE_IS_SET cd_always THEN BEGIN - OUTER_SET cd_always = 1 + ACTION_IF NOT VARIABLE_IS_SET ee_game THEN BEGIN + + INCLUDE ~%MOD_FOLDER%/lib/fl#add_kit_ee.tpa~ + INCLUDE ~%MOD_FOLDER%/lib/functions.tpa~ // misc s&s functions ACTION_DEFINE_ARRAY cdnoconvert BEGIN END // List of tra files that contain ONLY strings for the WeiDU installer and NOT game content ACTION_DEFINE_ARRAY cdreload BEGIN ~setup~ END // List of tra files that need to be reloaded after conversion because they were previously loaded in the LANGUAGE section // On EE games, convert game content tra files to utf-8 so that games don't crash when encountering international characters. - LAF HANDLE_CHARSETS INT_VAR infer_charset = 1 STR_VAR default_language = ~english~ tra_path = EVAL ~%MOD_FOLDER%/tra~ noconvert_array = cdnoconvert reload_array = cdreload END + LAF HANDLE_CHARSETS INT_VAR infer_charsets = 1 STR_VAR default_language = ~english~ tra_path = EVAL ~%MOD_FOLDER%/tra~ noconvert_array = cdnoconvert reload_array = cdreload END // Load EE-specific text (usability section removed from item descriptions) - ACTION_IF ENGINE_IS ~bgee bg2ee~ THEN BEGIN + ACTION_IF GAME_IS ~bgee bg2ee iwdee eet~ THEN BEGIN + + OUTER_SET ee_game = 1 + // Load English first in case some entries not available in the chosen language (as in LANGUAGE for setup.tra) LOAD_TRA ~song_and_silence/tra/english/setup_ee.tra~ LOAD_TRA ~song_and_silence/tra/%LANGUAGE%/setup_ee.tra~ - END + + END ELSE BEGIN + + OUTER_SET ee_game = 0 + + END + END + END /* Language Settings */ @@ -100,7 +110,7 @@ COPY_EXISTING mxsplbrd.2da override BUT_ONLY // unnecessary if Fixpack -ACTION_IF ((NOT MOD_IS_INSTALLED setup-bg2fixpack.tp2 0) AND (NOT ENGINE_IS ~BGEE BG2EE~)) THEN BEGIN // fixed in EE, vBG2 w/ Fixpack +ACTION_IF ((NOT MOD_IS_INSTALLED setup-bg2fixpack.tp2 0) AND (!ee_game)) THEN BEGIN // fixed in EE, vBG2 w/ Fixpack // Fix Blade's pick pockets skill COPY ~song_and_silence/chorister/a!pp2.spl~ override @@ -185,10 +195,15 @@ BUT_ONLY // Swashbuckler description change ACTION_IF NOT FILE_EXISTS_IN_GAME rr#tsb01.spl THEN BEGIN + ACTION_IF GAME_IS ~bgee~ THEN BEGIN STRING_SET 24303 @1 END ELSE BEGIN - STRING_SET 25216 @1 + ACTION_IF GAME_IS ~iwdee~ THEN BEGIN + STRING_SET 37230 @1 + END ELSE BEGIN // everything else + STRING_SET 25216 @1 + END END END @@ -242,6 +257,7 @@ END BEGIN @2 DESIGNATED 1 +//REQUIRE_PREDICATE !GAME_IS ~iwdee~ @104 LAF HANDLE_AUDIO END @@ -284,7 +300,7 @@ ACTION_IF GAME_IS ~bgt soa tob bg2ee~ THEN BEGIN END // spawn raoul at nashkel carnival -ACTION_IF GAME_IS ~bgt tutu tutu_totsc bgee eet~ THEN BEGIN +ACTION_IF GAME_IS ~bgt tutu tutu_totsc bgee eet sod~ THEN BEGIN ACTION_IF GAME_IS ~tutu tutu_totsc~ THEN BEGIN OUTER_SPRINT nashkel_carnival fw4900 @@ -701,7 +717,29 @@ COPY ~song_and_silence/gypsy/cdcurse.spl~ ~override/a!gypc.spl~ LAUNCH_PATCH_MACRO andyr_spell_to_innate WRITE_SHORT 0x98 "%a!curse%" //Writes the projectile into the file +ACTION_IF !ee_game THEN BEGIN // block ancillary charm effects for unaffected creatures, the hard way + + COPY_EXISTING ~a!gyps.spl~ ~override~ + LPF CLONE_EFFECT INT_VAR match_opcode = 5 opcode = 177 parameter1 = 1 parameter2 = 3 STR_VAR resource = ~cdca7~ END + LPF CLONE_EFFECT INT_VAR match_opcode = 177 timing = 4 STR_VAR match_resource = ~cdca7~ resource = ~cdcd7~ END + LPF CLONE_EFFECT INT_VAR match_opcode = 177 duration = 4 STR_VAR match_resource = ~cdca7~ resource = ~cdcvis~ END + PATCH_IF FILE_EXISTS_IN_GAME ~cdelfcm0.eff~ BEGIN // fixpack elven charm resistance + LPF ALTER_EFFECT INT_VAR match_opcode = 324 match_parameter2 = 15 opcode = 177 power = 0 parameter1 = 2 parameter2 = 4 resist_dispel = 0 probability1 = 89 STR_VAR resource = ~cdelfcm0~ END + LPF ALTER_EFFECT INT_VAR match_opcode = 324 match_parameter2 = 19 opcode = 177 power = 0 parameter1 = 3 parameter2 = 4 resist_dispel = 0 probability1 = 29 STR_VAR resource = ~cdelfcm0~ END + FOR (index = 1 ; index < 8 ; ++index) BEGIN + LPF CLONE_EFFECT STR_VAR match_resource = cdelfcm0 resource = EVAL ~cdelfcm%index%~ END + END + END + PATCH_FOR_EACH op IN 324 50 142 215 174 BEGIN + LPF DELETE_EFFECT INT_VAR match_opcode = op END + END + + COPY ~song_and_silence/gypsy/cdca7.eff~ ~override~ + ~song_and_silence/gypsy/cdcd7.eff~ ~override~ + ~song_and_silence/gypsy/cdcvis.eff~ ~override~ +END + //////////////////////////////// //Install Adventurer thief kit// //////////////////////////////// @@ -731,7 +769,7 @@ OUTER_SPRINT match ~A!ADVENTURER~ LAUNCH_ACTION_MACRO andyr_cinders_of_ashes_of_embers LAF fl#add_kit_ee STR_VAR backstab = ~1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1~ kit_name = ~A!ADVENTURER~ END // for ee games, give no backstab multiplier -ACTION_IF NOT ENGINE_IS ~bgee bg2ee~ THEN BEGIN // if non-ee game, have to use swash usability flag to prevent backstabbing +ACTION_IF !ee_game THEN BEGIN // if non-ee game, have to use swash usability flag to prevent backstabbing COPY_EXISTING ~kitlist.2da~ ~override~ REPLACE_TEXTUALLY ~\([ %TAB%]a!av[ %TAB%]+[0-9]+[ %TAB%]+\)0x0*4000~ ~\10x00100000~ @@ -746,27 +784,20 @@ COPY ~song_and_silence/adventurer/adventurer1.spl~ ~override/a!av1.spl~ // Save bonus COPY ~song_and_silence/adventurer/a!av3.spl~ ~override/a!av3.spl~ -// This means that if Idobek's Kitpack is installed, Nalia and Imoen will get this version of the Adventurer. -ACTION_IF MOD_IS_INSTALLED npckit.tp2 1400 || MOD_IS_INSTALLED npckit.tp2 2500 THEN BEGIN - COPY_EXISTING_REGEXP GLOB ~^.+\.cre$~ override - PATCH_IF SOURCE_SIZE > 0x2d3 BEGIN - READ_ASCII DEATHVAR dv - PATCH_IF (("%dv%" STRING_MATCHES_REGEXP ~^imoen2?$~) == 0) && (MOD_IS_INSTALLED npckit.tp2 1400) BEGIN - PATCH_PRINT @80 - WRITE_SHORT 0x244 0x0000 - WRITE_BYTE 0x246 %A!ADVENTURER% - WRITE_BYTE 0x247 0x40 - END - ELSE PATCH_IF (("%dv%" STRING_MATCHES_REGEXP ~^nalia$~) == 0) && (MOD_IS_INSTALLED npckit.tp2 2500) BEGIN - PATCH_PRINT @81 - WRITE_SHORT 0x244 0x0000 - WRITE_BYTE 0x246 %A!ADVENTURER% - WRITE_BYTE 0x247 0x40 - END - END - BUT_ONLY_IF_IT_CHANGES -END +// This means that if Idobek's Kitpack is installed, Imoen and Nalia will get this version of the Adventurer. +ACTION_IF ((MOD_IS_INSTALLED npckit.tp2 1400) OR (MOD_IS_INSTALLED npckit.tp2 2500)) THEN BEGIN + + ACTION_FOR_EACH script IN imoen imoen2 imoe25 _imoen bgimoen bgimoen2 nalia nali25 BEGIN + + COPY_EXISTING ~%script%.bcs~ ~override~ + DECOMPILE_AND_PATCH BEGIN + REPLACE_TEXTUALLY ~IK_ADVENTURER~ ~A!ADVENTURER~ + END + BUT_ONLY IF_EXISTS + END + +END ///////////////////////////// //Install Burglar thief kit// @@ -829,7 +860,7 @@ OUTER_SPRINT match ~A!SOULKNIFE~ LAUNCH_ACTION_MACRO andyr_cinders_of_ashes_of_embers LAF fl#add_kit_ee STR_VAR thiefskl = ~40 15~ kit_name = ~A!SOULKNIFE~ END // for ee games, use table to designate only 15 points/level -ACTION_IF NOT ENGINE_IS ~bgee bg2ee~ THEN BEGIN // if non-ee game, have to use assassin usability flag for thieving points +ACTION_IF !ee_game THEN BEGIN // if non-ee game, have to use assassin usability flag for thieving points COPY_EXISTING ~kitlist.2da~ ~override~ REPLACE_TEXTUALLY ~\([ %TAB%]a!soul[ %TAB%]+[0-9]+[ %TAB%]+\)0x0*4000~ ~\10x00040000~ @@ -884,7 +915,7 @@ OUTER_SPRINT match ~A!SHARPSHOOTER~ LAUNCH_ACTION_MACRO andyr_cinders_of_ashes_of_embers LAF fl#add_kit_ee STR_VAR backstab = ~1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1~ kit_name = ~A!SHARPSHOOTER~ END // for ee games, give no backstab multiplier -ACTION_IF NOT ENGINE_IS ~bgee bg2ee~ THEN BEGIN // if non-ee game, have to use swash usability flag to prevent backstabbing +ACTION_IF !ee_game THEN BEGIN // if non-ee game, have to use swash usability flag to prevent backstabbing COPY_EXISTING ~kitlist.2da~ ~override~ REPLACE_TEXTUALLY ~\([ %TAB%]a!sharp[ %TAB%]+[0-9]+[ %TAB%]+\)0x0*4000~ ~\10x00100000~ @@ -894,19 +925,7 @@ END //Duplicate Assassin's Poison Weapon ability, removing effects on melee weapons COPY_EXISTING ~spcl423.spl~ ~override/a!ss01.spl~ - READ_LONG 0x64 "abil_off" ELSE 0 - READ_SHORT 0x68 "abil_num" ELSE 0 - READ_LONG 0x6a "fx_off" ELSE 0 - FOR (index = 0; index < abil_num; index = index + 1) BEGIN - READ_SHORT ("%abil_off%" + 0x1e + (0x28 * "%index%")) "abil_fx_num" - READ_SHORT ("%abil_off%" + 0x20 + (0x28 * "%index%")) "abil_fx_idx" - FOR (index2 = 0; index2 < abil_fx_num; index2 = index2 + 1) BEGIN - READ_SHORT ("%fx_off%" + (("%abil_fx_idx%" + "%index2%") * 0x30)) "opcode" - PATCH_IF ("%opcode%" = "248") BEGIN // opcode #248 (Set Melee Effect) - WRITE_BYTE ("%fx_off%" + 0x12 + (("%index2%" + "%abil_fx_idx%") * 0x30)) "0" // probability1: 0 - END - END - END + LPF DELETE_EFFECT INT_VAR match_opcode = 248 END ////////////////////////////////// //Install Shadowdancer thief kit// @@ -914,7 +933,7 @@ COPY_EXISTING ~spcl423.spl~ ~override/a!ss01.spl~ BEGIN @97 DESIGNATED 10 -REQUIRE_PREDICATE NOT ENGINE_IS ~bgee bg2ee~ @104 +//REQUIRE_PREDICATE !GAME_IS ~bgee bg2ee iwdee eet~ @104 REQUIRE_COMPONENT ~setup-song_and_silence.tp2~ ~0~ @43 ADD_KIT ~A#SHADOWDANCER~ diff --git a/song_and_silence/style/g3_logo_2018.gif b/song_and_silence/style/g3_logo_2018.gif new file mode 100644 index 0000000000000000000000000000000000000000..29304d088505221bda5b7d7e28eb62de182f1a1c GIT binary patch literal 6229 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 Qa^NBdE^^@i76%ynAMTxZRsaA1 literal 28768 zcmdUYdu&_TdFQ=FQf#`&tC>lVCYhO?NjwkFnC&7(94#HTYer}dcG)c$AV$+vs|=U~ zts3sqo1mj$!)DX~T{EqefI&2M7$oLUO*gix$d*R7M;ht+QW8Z{@3%x!B6&$lq-0SN zDap=ef8V)$T*@RxI`hwd*5N(R-}%mWzVkl!`al0kgNbAGAK$@o&%yQun3s5tLx$*AzxoyD#nTNl3?sq_FmJ*1!`y~>1Lh{oFJP|2{431sFjrxI z0`nu7*I<4C(+2ZhnEws)9hkp^`Cl-v!2C~`{{hnk^Hmrl%*!zU4dyRkF2Z~c=D))H z3CthEd=};pVLk)%pI|->^C_55!gznJIrZTWbFbq04VdYVeT*}a-;+;rGfzLw&3xh$+^wgc;x58(_W9>I z9iDS%&T#X;_j}yk-~C;#^Ym$M{`Y^M`$PCIeCku&!lysY{SfgM&z<8IKl2%GQKR9O z{@@R|zXrw(o=fM?bIbMh-0~m&5jP0;%7qKuicZI^==I#{pZys(`=@`(`9JqLt{K?= z&wrl#G2#UN{Li_&@DF_93*3JJj{h(Jl3RQEWp3@uU*^`o`c=-`(7>(#)n9S{f;geS z`5SKCWa7S!bYZiZ3xECV+!uh=i#Us;u^KjyZ6_A~AV(p&-d_Vw%BBK+=kb#Z@37@eKm&dr1^=UPnA;BoxDdhz5PlSkaUS^JPb9b`{2$!A z$KBuF<`xnD%iUcr4Z8&YUuH7g|2;h9QgCNr-$mFq>z7#@#@8wKy8C~`wXL)-xJx^w3a*Vos_-MDds>jV!!gPa@=2lr#}dF9F#?uS48 zA@@DV{JY=%F87`9e24os>gQXit8b#tzVVH3aF;G!;=cB^uW?`b%2&8Aed$Zw7r*#L z?(@)*&p}`G(4Py?rO$r$vz!Jxr&g=EPeT_!`N>amDwT>m1D$;ydU@*9Deg(=_J^VK zk3IGn_uluumwWfS-_5=2UGL)F`ObH8JkOJPR1zp5{RsRp&$}KKrer$6iUcW$u!t;| zlJOqJ6WGM{2rs&Lfiid-iJ^(ZLGV1xi=nqyC^DZ>DH4-lN^+eo8-$mW8M9G&Paxua zH01Glyl!8(bbJOLy%!h(xEuq&ti&f^v&iF!gkj#k2lIEY9gNs0x_U{6P*v1mMzOl-zuvFPSjDw8=n z94i6!uopz_T@5e0`MVE?k-Kw$OzOiwy&t1fA z-a!>ImI&wE!a`&tvAdabp7Avc2DzzJrZEPlz z$&E;0b#-NRdDXuXD8tCZ_|g!Mzmg*1XEzet_jc21Oc65a{k>hZ(NrqE>w6fbv`>`h zqh+A^rBFzUZlre5-uF^lNwm#)@?L7MG*AiOkigHD<{BN9cX}ZhmhNq(Qi*t63ay8t z(Zp7?s?JKz3Q=8hU6sfhUfysry5J>1rmy7~DUo=X7cf?qW`&LauBD9y8cpT705MTI zatUmjodCa72>FS^L@{n#=El9uLHZD?UNt!N zRAfpLV|*bPN$l=n#H1EPf7OjUGN6dgswCfXjw4e+DUr(T?Wbwj+)M42WTT|#U8<&% z(99S3qI*F~CNYF8uP#nbB+-(qBy?2KNPN9CIH707MG@pk)lVJgV{4OM&uAHJf)hxi zN2eE;SC%JTmD<8Xr4jEgN{b_9d6BuE@W(c{c6N96cb2m)=pmd^9-}_b%vxlzRFEtW zDAAG>k41pKx4oCy!Q`-73P+;RaBRIybP|=gxVb5XLy>4azMb07q-p?%l9baE(h*+t zq>_QjVSY`T^)7Ag>}3*V_$c9>?IcQs$X-G;iJ6heuZ6w5I4bR@G81Lv9uEL#fX`~$ zu|O<@T;umJuR?HW9g{46WNm+c`B<#7&Lx5!R!qwjF-h9|>b*EtTRguO!uTNaqZ@m3 ziYOJWQJS>9pIuu%Mp0jD#rSS;i=X(L~i#O|U|WQl^+BaM2S8q4pM*5N#zA ziLN0*wM5WlN)!AslVE7DjtBiS)gu!qbg*Iq7i5-gULzGF9%nB?9u>gl0?Cl{TXu{( z4h(mMhWYUd(?-X0Q%MW6z}a;}wg?Y_ zl<`;=F|3G{c~Njq=(4j6p3<8lLLepM7Yhne%0*NHD(s`AUd14a(BoEFOG-vB!Che0 zR|7T}aTOyAXdP6ZQsi2VEP2OjnJNK^dVKIXG?ZhO)xkqKi2Qs^ij|w66mv5Gwuw!? z-?_Pe^gwn0!Tog7IeVLOcnBDN0%&!>lvw0%C(^ooV~(`O z`g+|N)dST7UFjJPX<)TlIG#)!jb@A0W@~9_Yint-n#@|js}3Ki{3Y5{sY*Crz+C4y zYS}efY<8!!9lO&qwYFIe8toa~gCjr6g-ue%CqM}oBFuKq#}O6oAz42xDRa#3^gA3~ zjCwnIJ32Zpx3(CJDu|_vMS_sCl}C>% z58X}d8RJ-IvV7!dlp`;^1@u?J`HLx;XBmu^#KmmLX^#EM5RQy7J@}9WS$A^#>g87& zAeJ7+B8#5ofRsmeAH!5Q1%7a6KeNUnf*}PVrO4muY`vs?O4ZG<5y&cJ+~>nivhRc? zBa#Sf>2$geKn3JHKd{`m($b*ObrX;DM?oWD442VJ?1a5_)Q2Z!+&jQ-9+goBAl_M< zgIg54Uuo2+ZZm-suqY1m5>J23P~37P@=N!2b?L*m60#UDsn1ykWECV1 zP`s$%3d2@<-#(WUY4_4ba_`{4|0YAF0I*2dR1WeJn$A7xWOjkS#zICy0zZeOc$`3! zQp}t_JnZAa8;I~g;0{(w+;K{4yaWE>a-6aBGaEZ6p=c-2-C$%Rb#!#l16E0~uz~9A zWw2DLfp%m4OI?(Q$akk-P%Vqtb#%e)%4S^w9c=anotBj9{y{GTMqKAXrk65;w5O6f z-DxX>ddp!}J#QWWq{xqq`#hep$~s8#c<)MJJ+Xgq{{ibv;Sth3us9vgP0MCdr&8&j zHz$+mvQ%fDd-~Zclz``P0s}P+Rp6NgA?{>Xmwj_Tb8vsFkHj!!(;XgQRQu)8gEKGc zbT8JwfE-@Zovwf8BQ5AQDV1k6v{ZIAUzFqU{9>2Wva8GJQtWiaY^>M4gnv3+y%waQ ze@}c={X6H>*=Yu3G`bvGt}GKoB3*FLFRa)%jN1+zl=1u>YjcCyfKdmq27LpLAkS%@ zRM)AWF#Lq#Q<6|TjPr(w?5gyO1Y`4EetYi#G#ethZO5QyvzkmMYg0?hrIx0qrpBfV zjcU_Rv(RA1i-V~#ceZz|08S|;mS*1|#h_?|?T#*oqrI)Yy|op8ptehwni?QrPnarIc`p z{e9h&-F*!sz@RCEOHF`4Pmw=xk8E>xrH}tr}z{$RdfDC6znOsF2yL#cDB|%|^4qY>-K# z`ItuAz}6_)bWB#+s;vN36hsQV60zHDHk%a_T2NC9nxsju*0wPX&&CeAjgE zK&1n!u&}(;g*GqGIvrgd9S%n;`j>0aAemjnmuN#aN@IO3luw>dL^USRV5-1gX7#w5 zZ>Rall`TNH!(uQD(hTwT zee=RixfhkESK#qZw@V2{lOx0^DoP>eayFoE8I4B=nbhV+B4ORZP)T(E(67YCF;)!w zC$-9(?=$O+M%HRn7%+*nSW~HDz|QkIF9jzDJtz0E$`U|=LtWbzGc5({kpmlw4H`{- z{flO$e1(A}Y5DfCN>Boovs2<1Jg zHtkld2HV=(S{ks{Z0-0yRz3Q2&vq!(f{pVh&wYxrVOrN4x4l6E7_zqUxe4g2hWa+B zU4d}zr&cvV;(oh@CV(P;&1`s!o&@>2USlm@Qp)~?%ucoeXCZDiF91-m8;wz56NpP_ z{Mcm|9Yx86`N^1XyxcvGT&#zl!lKP)xrdh7Vb*GOc4S6>Lrv>lVhFsl$EAG`REca&htWz zV*~5(2D>}Dx-lBMS6bT|4VWQopJ=$oYBdk;V(XH;vlid(HrrLURIx0n>ba9_hmY-Fc=1aW*Z6r3HYc72&E4pMj7 zl9n#G-?SUG>@pHH8^QF%t9ZzbN1(khtO3_#C;Y1=zujutaqvP1*7Q0%%{yuJVbWY< zy#Psx_xVtl*g~lmQjP~sCfD-g4)kz)Qn-tttC|MnlGPN}6Ce|oPfhr5I@;UqHY;W( zEhdbZs)WC{uf1M#nF)m8peO=%3!s5DgA1Mof4kEj?7!i#V`M<%d{OsNZ8KY#<(M2? zk6`Puy4{&v8ulC-?C-F&q58T7-`p}e~~3o9mmfF$z$ zZB~;;^OQzoyfUO*rt#}Iq!s3?JKs5$FJV*9D&FcaVMx=Ou)jxIl3%^L*CV)QTH$Q; z7+{f;6(0jGf2X^v+fCvi>;hr?xT61cO%0tAI%tV~Vn?CLdYi z?p`Z2q~3^;!RjClr;#|1MNL1q7ODo5#mS}?=FBuOV5bfHZ5Sj1OqB~_3H4)F(<4<4 zD@O!4IC4_=jWI`~HJnqQ)4rsN-!3qXh-_UP!YsE|5(buyMvK*IwKba>Oi&cVb2=5> zZ_SGY8{n|JYUG=--M4GDwsmxOceJ&%bvoLx+^Ii(rd^5cU!3qxt*~1lwQ)XR%~-Bt zYKeB));`1!ynY!c4$m70si(@4uo{U-t5n4`5$;_a*a%tVds;6!NUv{nwlrv8z`<7m zn;)XRMCuT0BTK3iq54s9AW1gyHMQodLIl`Zr;W`@Fb{>1mievs zj49f682Y)@)GAMo#n%nbC^zvWRv)!tQ)c~k>z;9oy1dtH<{la>dH#)8G$tk;iU11E z58)U+C_AeC1><-8HVfKLzaVtj+Nq5U{m9XHPSeWnqh@j3P{C-Bu4UCo{Z3o6Zo8lF zv01T;Ay_eYtJ4?;pl~EInTEVxZ_UV*ywhgJvXb|$L#17O8+9p$?m|a}7)-Hq>z8bH zRXqfuYqOuu%}C}V|9`N5()w?ZHk}w12*^e5LP!N0QVh9~4vB|oJ;FP#;;fB{BQKK` zx{oZ>zJJ2If{+C<#o8U=(U?}mB-A?$4X?mq$)F*=%V_k|(v@bFIZlV@s4eH<`LK^R zB0?nr%6gI%?P=p7-d?$Xcz7spve7=9>Tsz5&5A@Lb!{Z_ZtUUZ_NeP=qfMt%y@Y|S zTPYS=!`0eVfsr}dpq9yCFk*Is5%bwo&+6{bXj~vFMXl(b1|+o0ak&8^avgThpB!#+AT#Vj63+w|C%#r?(3;tA@*tR!4_Yyg1}WS6J(u4Gr-v zr`6dzD3=#^w6K%+FVJ>6^U0HMbsaZnY97;g(P^xX42pSjG-OuN`AU zW>4xyv+J`PS{x4I`~{V#2yAq0oXS=cK@?q1do#8P4prET&^EN)y8C*2Q-k*Tb_JB% z9}Y{nYFrzEmC>%%R;z`!Au!uC;p|1|d9_LZj8)Of*H*mZ?95ti&@6Tzj(2R$X3UQb z=5`FaF8*d~lZG~ca})u~Q8AozR`q1bv3Trt+U?e643t;0fIn+ew<^Z4Nt`i8rK+z+ zBX8<6(E^E!Hzs=9osJF~#vmnhye)?BD|#kzSP;G5!u*hulp~}k$N|=hNwdj=Vaa@p zLMvSCCzaIvY0aG{^2$3-uuxnVzqFrDlUg4hU?D}Mf?ailAq_{bM}R28 zD{`EGkJIZ-OKQ)UHl}fS1gghh{d0791XAH0Qw0II+Vv&l!Lzmw)w6A2mkre1+}wa= zR0DqSlJ~PZD?4RWz{6S{>r_pHQwvK=tA3{wIoNUEf>BG`B`l`Yn)+t+gNn+eDyWUb zkumQ~??NxAgZ?_YIy!rcpP*o2^ZKVv>!M9g4zzsg+EsmFQG#ywCbsaz<9!X1Hzzd!w@t}{zj{V z)j_U2E9e0QaTVM9H4r5pxOcdZX(r7y59vAtZdjeJe@S=f$jS=2jm*-5VqVb+RGCK) zwMp9hCZa7AG@WyrXP)~7s|G5F%s!J#m6$9V+8p$0K2#mQg;;u;7-r2*OFg31sAm7=| z+A07OpIyYM~BP9XLP4kstLt>&@Y9j$H!`2140TT-F^pc zZPwQt>7E6KV$Cxe?eo7-NLRv@VX1Z<1j3!ZuCBJWW?H8;H0VvH#>NKCe=uN^qkzul zLHVjZUh*<-c?9tGb~xMVPO`O`4jUb^rr==5o~ezrfORk=gWx zE3k>XTV7AC;$~t1e2@k~wy_IfNjv$@&S(nzOi^)I}r zN@GJ@@gWN)HCiy&KolEh!feFLWbJtCs~uNkO@>ckDj~m0lEtE%{81@XGw(zEXwuy5 z?CkO09=v(8r}Ofwm+;P%YF9B4;uoawq}N;2dsS5efp;3WAp$A@m4o+mv^QzAFF5jj zDsmad_X-p;ss@&x^ z&D0<%FT(rzCCxL8L=A*o>*F98|-Sd?F<`!j9Ut0K_>tff+>X~v8}VoM?3OO0!)6ypT1zc zgZ*k@n~qTAKc(Ij5GvayXv@_31|qq5$J$MrcMF~7dfLJpYEc=HlM7!y!A{x80xMW$ zG-W8ba@eiL1Bq?9S#?2w!0(8idiI5mHHQ_4_OG$X^7jgAJwpd8{i`9`F~!0}Y@mAu z_1aT3W9=dk|-4B|_!-HfuHBzH9ycJw4r>*REf`PVDCPZ736D z!*VJCQPC?aNqW$m@(hZaC+i5{3IUcpAAtZz=YZ5bQ)9#+fa^YlgCG0}d=yjUiE`iF zs*oY$xj(SEzbmoJ%)*ssZGFqX7K#FNtQv3(6Jq&QfGQ3Gn^2G&HmojH2M;nhHRky% z2DSE-ksX}mBI9dEx#ddEtC}Zx>Ar_|q_Ov-QsIjz0^foYbj@=`XLWcl16Z}OO___g ztr@Gs(QLs4;>b8ihv<6s6Po9-2vqQf)|r)(!n3lK(syNSkjqV5vjMxu>jG~zwKQop z&tj`B500~Hg02-^xVeve9MHUed$SquisQHyI`VUqwz+V1ix1GdfVDD?I_lj|8QEKe zU2P_#QI(V>`)WPTV5nDTG_n#|@eS5^X8}NK*eYNre7Bu;T$RHq9bM|Uq-`sbz&t*I zS?=40IS!6LMZVXDLn#Jy&GCxKsKp>8PPA#X-i-Vqm^FC&}yGK_fZ4A$eSboEJoBKy~%}~@bq=zB#=7rA@`Mz))qPwP(O|P_IWLl zHM`cTWNIb!bYY3PHTN}DVhamX z6qDF5YRgq7uMiE|H4>yRO40c7wu1}8a5O+0cF5)tHMJb?K;+$;Xi|x(ABB)1mgE8G#BLB3=?iS{?j|=R z$-X*8TcML3PWRo(t^huj7htznfQ&AX8Gy4Kswt$b-_vW`sZ?Xr#%9cBx8ne$<&{@1 zy>h9^WVS>nU4yrU(dAjM%s7zQ^p#o!N>G`y7x%`3iOjxUe*w#bOBXLR=`UWqh-HFa zzZ(rpkw5^S4_Ka?8pj*+Boo|i%Yx>fCG(&%G7`svyGFgfPG5&Vy}FL*vB&BzTxh(A zPYN_OHe0MH)SBBpMzUWV;l-VXvvqZk*QwPX1o#JFP#FDr$`3^{ zS*1v1ZIP}s2fBI#p{na1m&J7UY@NQrY>CIEb^qeDx8fxzHYaeZ?qoxvwH();-CZhCh&li9}}oF0qLmp4!Z`|1Q#IiDhz5+9<9+hYOu zTd2!n0;T|EP05+KMgvPrQf%4h_DoIr@DgnppDNXzI}d%*H#V44+nat*Q8I=viYuE< z7HMsHd^R+aJpw+)0dvxJ9m|;3ZqTZ+`I)%UpfjQv>G%e|Bb+R8uV`3YOEoq&C9Kx% z3HC9Tf;i;N2^vc3qIyw~OY~<_JK;bexIRAYcKfCt-or;qcXXfHV?%15F-GjML6ku= z@guuoY60lDCnBv*PCC7*!4 z_{Y}pSq7k0L%8)vxJW>Sdzh#b744a{`fP)4dztPCG6@`u$g&_*!eS3ritPKHZ2hcA zL76ce8h=LpnRMOxvwPd&zPX9JqHl2udMUc`|2>SNei?gI8d9Vzm19-Tfr>*#VPl)C zFL97D==Ix)4O=*j7ucizWxun{9+iR%KHmu2fuLkme&U-A4wSkS(NMx-WlJfJ`BMiv z11h!Y<%<^^FE(1^aT|7JnoO}+%)T@+>c;sk3V91h1aFP$~@i$%0iQTl+9NOe|Iu4!K3b(L=b=veBk}*7K;jsLb&*;y>!~BMi={m z-+t_|$3O7?_r33NWbh$W^98*jwVT>WSl3oomZqW71Wde_r13oNzCN|LvmL?*kM~dyo1514)!Es}vM-PUa{k_?k5-=yod#Ie z^hCZZnLfy<>&_ZJ zP;~!*W#kS9{a!&_Pvi288T|}-!iW1_N4^$HSTp7CCDtII88@?d_1Cwn8XsE)!WXnF@=Z z{$V!QWjUur)OJWnP(p%uh#0HXdVKNi&4izwFv&ud)s|WmB_b&5x|xGjJ8PAM43n*f zhtcH(!rgWJcQvtTdF_zJpvaUlrNv+NR;UaCwIWmsAox<0)obEsVJo$h46V*)KQEol zQ|2@aP6#p(*sjF!v8?d_eZ=r3`b0byozEf&^ra;C>;%+6$zYaGJjyV93>j(Bf3K#D z4Hp_M8|(A#Q6FwWb@8J!fp&W|*oW?wcqVRPSmPxGmMoWrT*PC*vJ*kB$ynOhpf@Mt zm?Q`Mk&U@wm&0yrP9}piwU}I97$@-~CJBiM7WSZASXQN=DL%~T(pDyo(V?-)8sA86 zZ~Hsj8!zhh`&&!%3*$@S4Qb84JnPPOet^zW-jeeudQv=A+EIrEQ$bxrUEKx!h4gl; zS&vz!A+=+*Nw%h!o0{<-f<%IA^P_TI6Vt?&LbHls;XpB2p%}VraZTFRVz!4qoArd$ z8)7KZH(p?KWs@bj5syl%KDrxGRuF|OC>Bk=q2KrnxhPI;Z6|d`1I@TW_yCz~Is3R; zefI2m$gHt>(-vM^o}cuL&~%6;FTfSq7zbIYAcJAiH#!U#XgF&M7(7tWt=K%HM~GGV}${L^^rwR{F;@@3wXp=WX`l?d(a#=+T zhG}{NbYf5t-EqwHHxr52GQFn1;>S|@(F6lDHWaX;(~J|9w44Y{vKbLIP~`e+a4w_E z?Go6~zHv675w}@Yd^CwOnUFB3*kquqcnpDCxp~qjc^{1^9bP+Uy1