Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Badges

Wild SurgePST:EE Beta TesterFourth AnniversaryThird AnniversarySecond Anniversary5000 CommentsFavored Enemy: Multiplayer500 Insightfuls500 Agrees250 Insightfuls2500 Comments250 AgreesBeta Tester100 InsightfulsFirst Anniversary500 Likes1000 Comments100 Agrees250 Likes500 Comments25 Agrees25 Insightfuls100 Likes5 Agrees5 Insightfuls25 Likes100 Comments5 Likes10 CommentsName DropperFirst CommentPhotogenic
Neverwinter Nights: Enhanced Edition has been announced! Visit nwn.beamdog.com to pre-order, apply for the Head Start and check for details. NWN:EE FAQ is available.
Soundtracks for BG:EE, SoD, BG2:EE, IWD:EE, PST:EE are now available in the Beamdog store.
Attention, new and old users! Please read the new rules of conduct for the forums, and we hope you enjoy your stay!

CrevsDaak

About

Username
CrevsDaak
Joined
Visits
2,698
Last Active
Roles
Member
Points
12,889
Badges
32
Posts
7,058
  • Re: Did you know?

    Now all we need is someone to make the mod
    hi *waves*
    BACKUP "pants/backup"
    AUTHOR Crevs
    VERSION v1

    BEGIN "Enhance the Golden Pantaloons"

    COPY_EXISTING misc47.itm override
    READ_LONG 0x64 ab_of
    READ_SHORT 0x68 ab_ct
    READ_LONG 0x6a ef_of
    INSERT_BYTES ab_of 0x38
    WRITE_BYTE (ab_of + 0x00) 3
    WRITE_BYTE (ab_of + 0x01) 1
    WRITE_SHORT (ab_of + 0x02) 3
    WRITE_ASCIIE (ab_of + 0x04) sppr704 #8
    WRITE_SHORT (ab_of + 0x0c) 5
    WRITE_BYTE (ab_of + 0x16) 1
    WRITE_BYTE (ab_of + 0x24) 3
    WRITE_SHORT 0x68 (ab_ct + 1)
    WRITE_LONG 0x6a (ef_of + 0x38)
    WRITE_SHORT 0x1c 4
    WRITE_BYTE 0x18 0b00111100
    LPF ADD_ITEM_EFFECT
    INT_VAR
    opcode = 146
    target = 1
    parameter1 = 14
    parameter2 = 1
    STR_VAR
    resource = sppr704
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 6
    timing = 2
    target = 1
    parameter1 = 2
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 19
    timing = 2
    target = 1
    parameter1 = 0 - 2
    END
    PATCH_FOR_EACH n IN 1 2 BEGIN
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 7
    timing = 2
    target = 1
    parameter2 = n
    parameter1 = 67
    END
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 275
    timing = 2
    target = 1
    parameter1 = 0 - 100
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 142
    parameter2 = 35
    timing = 2
    target = 1
    END
    SAY 0x54 ~The Golden Pantaloons did surely see the very beginnings of our realm, though I must press that they "saw" this formative time by their simple presence, and not through some vestigial eyes that might have erupted through a rear pocket perhaps concealing teeth and other improbable extremities. I am sure that the various owners of the pantaloons can attest to the general lack of animated digits or ocular sensors, as evidenced by the continued sanctity and privacy maintained by their respective buttocks.

    Lyric pantoums of an age long since out of print speak of "trousers that were as metal, though soft about the shanks." While it might be easy to jump to the seemingly inevitable conclusion that the trousers rose while Netheril fell, it is doubtful that the pantaloons were the garments of which they speak. One must clarify these oft-misquoted verses with knowledge of the Pantechnicon, an ancient bazaar once prized for Silver Pantalets. Fine these may have been, but golden they were not. Nickel Panties are also said to be currently available, though the dockside establishments that claim to offer these products are beyond my meager experience, and thus I can make no report.

    The purpose of the Pantaloons is as mysterious as ever, and will likely remain so until the Pantocrator himself returns, though some properties can be divined though intimate observation. The "uplifting" properties of the gusset very nearly defy gravity, shaping quite nicely both the front and rear. This improved contour would likely increase self-esteem for a wearer of either sex. I would hazard a guess, however, that this continuing self delusion might actually hamper cognitive functions, and care should be taken in the wearing of any pantaloons of golden nature.

    STATISTICS:
    — -2 Intelligence
    — +2 Charisma
    — -100% Hide in Shadows
    — Nature's Beauty once per day
    — Cursed. May only be removed by a Remove Curse spell

    Weight: 0
    ~
    BUT_ONLY
    Edit: I had forgotten the Nature's Beauty ability. It's at will instead of once per day, have fun!
    Post edited by CrevsDaak on
    mlneveseDJKajuruPokotasemiticgodThacoBellArctoduselminsterdunbarWarChiefZekelolienJuliusBorisovdeltagoPermidion_Stark
  • Re: Issue 2 of the Wild Surge! This issue's topic? Dwarves! ^___^

    I guess the contest for this issue is:

    Be the first to decipher all the dwarven ruins in the magazine, you win a prize! (tbd).
    lord rumfish

    [the poem is literal. Yes, I did check twice]

    the evolution of dwarves in the
    Pehaps I can type some nonsence here I wonder if anyone would notice

    this is grums top ten dwarves found in the wild Surge Magazines second issue oyb

    Did you know Armitage played Hienz Kruger in Captain America. Hail Hydra

    gnomes rule

    shoutout to the panda

    Click the money symbol to be directed to the portrait that Lava Del Vortel wanted to use on his walkthrough. It is a Beamdog winning portrait by Memm who did not get back to us on time for us to use it. It is an amazing portrait however and should be shared even if it is being shared indirectly.

    this is the (money symbol[link: https://forums.beamdog.com/discussion/comment/284475/]) symboll (double L)

    D6

    (Courtesy of my almost infinite free time.)
    JuliusBorisovlolienAnduindeltagotypo_tillydunbar
  • Re: Did you *actually* know?

    If you present the equalizer, a diamond, and a scroll of protection from undead to Cespenar he will offer to create a new item. Not only will the Equalizer +5 do more damage to those who stray from neutral, but it will also do extra damage against "unnatural" enemies.
    Sigh, now I wish that was real.
    As a certain Star Trek character would say... "Make it so!" :)
    Here you go!
    BACKUP "equalizer/backup"
    AUTHOR CrevsDaak
    VERSION "teh only version out there kid"

    BEGIN "Let Cespenar upgrade The Equalizer into a +5 version"
    REQUIRE_PREDICATE GAME_IS ~eet bg2ee tob~ ~You don't have ToB, get outta 'ere RITE NAO!~

    COPY_EXISTING sw1h54.itm "override/c7#equa5.itm"
    WRITE_LONG 0x34 25000
    WRITE_LONG 0x60 5
    WRITE_BYTE 0x84 1
    SAY 0x54 ~Such is the age of this sword that its true origin has been lost to time, but markings hint that it was possibly forged in the service of Helm. Also called the "Sword of Neutrality," it seems designed to seek and terminate extremes, to shift the universe closer to harmonious equilibrium. The further the behavior of a target from true balance, the more potent the damage they suffer. After being upgraded by Cespenar, your personal butler, once a servant of Bhaal, the power this weapon radiates is immense. Creatures unnatural to the Prime Material Plane will suffer further additional damage.

    STATISTICS:

    Equipped abilities:
    – Immunity to charm and confusion

    Combat abilities:
    – Strikes as a +5 weapon

    THAC0 & Damage:
    vs. True Neutral: +0 to hit, 1d8 damage
    vs. Chaotic Neutral, Lawful Neutral: +2 to hit, 1d8+4 damage
    vs. Neutral Good, Neutral Evil: +4 to hit, 1d8+6 damage
    vs. Other Alignments: +6 to hit, 1d8+10 damage
    vs. Unnatural and Extraplanar Creatures: a further +4 to hit and +6 damage
    Damage type: Slashing
    Speed Factor: 1
    Proficiency Type: Long Sword
    Type: One-handed
    Requires:
    6 Strength

    Weight: 3~
    REPLACE_TEXTUALLY CASE_SENSITIVE ~EQUAL~ ~C7#EQ~
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 177
    target = 1
    parameter2 = 2
    timing = 2
    STR_VAR
    resource = c7#eq17
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 177
    target = 1
    parameter2 = 2
    timing = 2
    STR_VAR
    resource = c7#eq18
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 177
    target = 1
    parameter2 = 2
    timing = 2
    STR_VAR
    resource = c7#eq19
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 177
    target = 1
    parameter2 = 2
    timing = 2
    STR_VAR
    resource = c7#eq20
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 177
    target = 1
    parameter2 = 2
    timing = 2
    STR_VAR
    resource = c7#eq21
    END
    PATCH_FOR_EACH race IN 128 122 121 106 BEGIN
    LPF ADD_ITEM_EFFECT
    INT_VAR
    opcode = 177
    parameter1 = race
    parameter2 = 4
    target = 2
    timing = 1
    STR_VAR
    resource = c7#eq04
    END
    END
    LPF ADD_ITEM_EFFECT
    INT_VAR
    opcode = 177
    parameter1 = 4
    parameter2 = 3
    target = 2
    timing = 1
    STR_VAR
    resource = c7#eq04
    END

    COPY_EXISTING equal01.eff "override/c7#eq01.eff"
    WRITE_LONG 0x1c 4

    COPY_EXISTING equal02.eff "override/c7#eq02.eff"
    WRITE_LONG 0x1c 4

    COPY_EXISTING equal03.eff "override/c7#eq03.eff"
    WRITE_LONG 0x1c 6

    COPY_EXISTING equal04.eff "override/c7#eq04.eff"
    WRITE_LONG 0x1c 6

    COPY_EXISTING equal05.eff "override/c7#eq05.eff"
    WRITE_LONG 0x1c 10

    COPY_EXISTING equal06.eff "override/c7#eq06.eff"
    WRITE_LONG 0x1c 10

    COPY_EXISTING equal07.eff "override/c7#eq07.eff"
    WRITE_LONG 0x1c 10

    COPY_EXISTING equal08.eff "override/c7#eq08.eff"
    WRITE_LONG 0x1c 10

    COPY_EXISTING equal09.eff "override/c7#eq09.eff"
    WRITE_LONG 0x60 2

    COPY_EXISTING equal10.eff "override/c7#eq10.eff"
    WRITE_LONG 0x60 2

    COPY_EXISTING equal11.eff "override/c7#eq11.eff"
    WRITE_LONG 0x60 4

    COPY_EXISTING equal11.eff "override/c7#eq17.eff"
    WRITE_LONG 0x1c 122
    WRITE_LONG 0x20 4
    WRITE_LONG 0x60 4

    COPY_EXISTING equal11.eff "override/c7#eq18.eff"
    WRITE_LONG 0x1c 121
    WRITE_LONG 0x20 4
    WRITE_LONG 0x60 4

    COPY_EXISTING equal11.eff "override/c7#eq19.eff"
    WRITE_LONG 0x1c 128
    WRITE_LONG 0x20 4
    WRITE_LONG 0x60 4

    COPY_EXISTING equal11.eff "override/c7#eq20.eff"
    WRITE_LONG 0x1c 106
    WRITE_LONG 0x20 4
    WRITE_LONG 0x60 4

    COPY_EXISTING equal11.eff "override/c7#eq21.eff"
    WRITE_LONG 0x1c 4
    WRITE_LONG 0x20 3
    WRITE_LONG 0x60 4

    COPY_EXISTING equal12.eff "override/c7#eq12.eff"
    WRITE_LONG 0x60 4

    COPY_EXISTING equal13.eff "override/c7#eq13.eff"
    WRITE_LONG 0x60 6

    COPY_EXISTING equal14.eff "override/c7#eq14.eff"
    WRITE_LONG 0x60 6

    COPY_EXISTING equal15.eff "override/c7#eq15.eff"
    WRITE_LONG 0x60 6

    COPY_EXISTING equal16.eff "override/c7#eq16.eff"
    WRITE_LONG 0x60 6

    <<<<<<<< inlined.equalizer.d
    EXTEND_BOTTOM BOTSMITH 4
    IF ~PartyHasItem("sw1h54")~ GOTO c7#equa
    END

    APPEND BOTSMITH
    IF ~~ BEGIN c7#equa
    SAY ~Oow! Ow!! Oowwsies!!! What's this pointy stick we have here? The EEEEQUALiiiizer!! Could be it? It be!~
    IF ~OR(2) !PartyHasItem("misc42") !PartyHasItem("scrl09")~ GOTO c7#equa.whatever
    IF ~PartyHasItem("misc42") PartyHasItem("scrl09")~ GOTO c7#equa.dunno
    END

    IF ~~ BEGIN c7#equa.whatever
    SAY ~Hummmmm, me can make better Equalizerzer for youse!! Only need a scroll of Protection from Undead nasties and a shiny Diamond. No deal if no shine. And 7,500 gp for my serservices!! Yes! Yes!!~
    IF ~~ GOTO nope.jpg
    END

    IF ~~ BEGIN c7#equa.dunno
    SAY ~Cespenar make niceeeeer Equalizeeeeeer, if youse give Diamond, a Nasties Protection Scroll and 7,500 goldsies, can make nice long sword for youse. Rite nao! You like?~
    IF ~PartyGoldLT(7500)~ REPLY ~I'd surely love it, but we're, heh, a little bit low on gold right now, sorry pal!~ GOTO nope.jpg
    IF ~PartyGoldGT(7499)~ REPLY ~Sure thing bud! Go ahead, all yours!~ DO ~SetGlobal("C7#ForgeEqualizer","GLOBAL",1) SetGlobal("ImpForgeStuff","GLOBAL",1) TakePartyGold(7500) DestroyGold(7500) TakePartyItemNum("sw1h54",1) DestroyItem("sw1h54") TakePartyItemNum("misc42",1) DestroyItem("misc42") TakePartyItemNum("scrl09",1) DestroyItem("scrl09")~ GOTO 11
    IF ~~ REPLY ~No, thanks.~ GOTO nope.jpg
    END

    IF ~~ BEGIN nope.jpg
    SAY ~Oookaysies!! Teehee! Now I continues looking through youses other elses stuff's. More stuff. Teeeheee!!~
    COPY_TRANS BOTSMITH 4
    END
    END
    >>>>>>>>

    COMPILE "inlined.equalizer.d"

    <<<<<<<< inline.cespenar.baf
    IF
    Global("C7#ForgeEqualizer","GLOBAL",1)
    Global("ImpForgeStuff","GLOBAL",1)
    THEN
    RESPONSE #100
    SetGlobal("ImpForgeStuff","GLOBAL",0)
    SetGlobal("ItemMaker","GLOBAL",777)
    GiveItemCreate("c7#equa5",Player1,0,0,0)
    StartDialogueNoSet(Player1)
    END
    >>>>>>>>

    EXTEND_BOTTOM botsmith.bcs inline.cespenar.baf

    // eof
    mlnevesesemiticgodBillyYanklolienMontresor_SPronaldoelminsterQuartzEadwyn_G8keeper
  • Re: Baldurs Gate Meme Thread II: Enhanced Edition (Careful, everyone, SPOILERS!)

    Someone say mod. Here's mod. Mod? No mod? Yeah, mod.
    BACKUP "lich_be_drunk/backup"
    AUTHOR CrevsDaak
    VERSION v1.0

    BEGIN "Make the Drunk in the Temple of Lathander a real Lich"
    REQUIRE_PREDICATE GAME_IS bgee "This is a BG:EE-only mod, sorry!"

    COPY_EXISTING drunk.dlg override
    DECOMPILE_AND_PATCH BEGIN
    REPLACE_TEXTUALLY ~ApplySpell(Myself,SURE_SLEEP)~ ~CreateCreatureEffect("7c#lich1","bdsplock",[-1.-1],S) DestroySelf()~
    END
    BUT_ONLY

    COPY_EXISTING ring06.itm "override/7c#lich0.itm"
    WRITE_BYTE 0x18 ((BYTE_AT 0x18) BAND 0b00000000)
    PATCH_FOR_EACH spl IN spwm113 spwi415 spwi711 spwi502 spwi313 sppr302 sppr304 sppr313 sppr314 sppr211 spwi213 spwi215 sppr105 BEGIN
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 206
    target = 1
    timing = 2
    resist_dispel = 2
    STR_VAR
    resource = EVAL "%spl%"
    END
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 120
    timing = 2
    target = 1
    resist_dispel = 2
    parameter2 = 2
    END
    PATCH_FOR_EACH efx IN 217 175 39 109 238 55 BEGIN
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 101
    timing = 2
    target = 1
    resist_dispel = 2
    parameter2 = efx
    END
    END
    PATCH_FOR_EACH lvl IN 1 2 3 4 5 BEGIN
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 102
    parameter1 = lvl
    target = 1
    timing = 2
    resist_dispel = 2
    END
    END
    PATCH_FOR_EACH anim IN spflayer spmindat BEGIN
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 296
    target = 1
    timing = 2
    resist_dispel = 2
    STR_VAR
    resource = EVAL "%anim%"
    END
    END
    PATCH_FOR_EACH str IN 14001 14102 BEGIN
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 267
    target = 1
    parameter1 = str
    timing = 2
    resist_dispel = 2
    END
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 60
    target = 1
    parameter1 = 25
    timing = 2
    END
    LPF ADD_ITEM_EQEFFECT
    INT_VAR
    opcode = 94
    parameter1 = 1
    parameter2 = 15
    timing = 2
    resist_dispel = 2
    target = 1
    END


    CREATE CRE "7c#lich1"
    SAY 0x8 "Drunken Lich"
    SAY 0xC "Drunken Lich"
    SAY BATTLE_CRY1 ~For the BOOOOOOOOOOOOZE!!~
    SAY BATTLE_CRY2 ~Yaaaargh!!! Beeeeerdoooooooooooom!!!~
    SAY DYING ~I am running low in alcohol! And in health! I need a beer!~
    SAY SPELL_DISRUPTED ~Ach! What's with my spell? Didn't do anything and I am sure it wasn't a divinat *hic* divi *hic* divination spell.~
    SAY MORALE ~I will get something to drink and I'll be back to kill you mortals! I promise! I'll be baaaack!~
    WRITE_LONG 0x14 22000
    WRITE_SHORT 0x24 90
    WRITE_SHORT 0x26 90
    WRITE_LONG 0x28 32525
    WRITE_BYTE 0x2c 27
    WRITE_BYTE 0x2d 50
    WRITE_BYTE 0x2e 52
    WRITE_BYTE 0x2f 12
    WRITE_BYTE 0x30 91
    WRITE_BYTE 0x31 63
    WRITE_BYTE 0x32 5
    WRITE_BYTE 0x52 9
    WRITE_BYTE 0x54 10
    WRITE_BYTE 0x55 5
    WRITE_BYTE 0x56 7
    WRITE_BYTE 0x57 9
    WRITE_BYTE 0x58 1
    WRITE_BYTE 0x234 14
    WRITE_BYTE 0x237 1
    WRITE_BYTE 0x238 10
    WRITE_BYTE 0x23a 18
    WRITE_BYTE 0x23b 16
    WRITE_BYTE 0x23c 10
    WRITE_BYTE 0x23d 11
    WRITE_BYTE 0x23e 10
    WRITE_BYTE 0x23f 20
    WRITE_BYTE 0x240 8
    WRITE_BYTE 0x241 255
    WRITE_BYTE 0x242 60
    WRITE_ASCII 0x248 "7c#lich1" (8)
    WRITE_BYTE 0x270 255
    WRITE_BYTE 0x271 4
    WRITE_BYTE 0x53 1
    WRITE_BYTE 0x272 150
    WRITE_BYTE 0x273 1
    WRITE_BYTE 0x275 1
    WRITE_BYTE 0x27b 19
    WRITE_ASCII 0x280 "7c#lich1" (32)
    WRITE_BYTE 0x5f 100
    WRITE_BYTE 0x5b 100
    WRITE_BYTE 0x5a 100
    WRITE_LONG 0x244 32768
    ADD_CRE_ITEM "7c#lich0" #0 #0 #0 "unstealable&undroppable" rring
    ADD_CRE_ITEM dagg02 #0 #0 #0 none weapon1 EQUIP
    ADD_CRE_ITEM ring06 #0 #0 #0 none inv1
    ADD_MEMORIZED_SPELL spwi112 #0 wizard (6) // magic missile
    ADD_MEMORIZED_SPELL spwi213 #1 wizard (3) // stinking cloud
    ADD_MEMORIZED_SPELL spwi211 #1 wizard (3) // melf's acid arrow
    ADD_MEMORIZED_SPELL spwi306 #2 wizard (3) // hold
    ADD_MEMORIZED_SPELL spwi313 #2 wizard (3) // skull trap
    ADD_MEMORIZED_SPELL spwi412 #3 wizard (2) // malison
    ADD_MEMORIZED_SPELL spwi408 #3 wizard (2) // stoneskin
    ADD_MEMORIZED_SPELL spwi508 #4 wizard (2) // chaos
    ADD_MEMORIZED_SPELL spwi505 #4 wizard (2) // shadow door
    ADD_MEMORIZED_SPELL spwi523 #4 wizard (1) // sunfire
    ADD_MEMORIZED_SPELL spwi619 #5 wizard (2) // wyvern call
    ADD_MEMORIZED_SPELL spwi611 #5 wizard (1) // PfMW
    ADD_MEMORIZED_SPELL spwi723 #6 wizard (1) // improved chaos shield
    ADD_MEMORIZED_SPELL spwi708 #6 wizard (1) // mantle

    <<<<<<<< lich_be_drunk.inline/7c#lich1.baf
    IF
    HaveSpell(WIZARD_STONE_SKIN)
    CheckStatLT(Myself,1,STONESKINS)
    THEN
    RESPONSE #100
    DisplayStringHead(Myself,~Lemme turn grey, don't attack *hic* now *hic* CHEATER!~)
    Spell(Myself,WIZARD_STONE_SKIN)
    IncrementGlobal("7c#lich1stone_skins","LOCALS",1)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_CHAOS)
    !GlobalTimerNotExpired("7c#lich1chaos_timer","LOCALS")
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_CHAOS)
    DisplayStringHead(Myself,~I'm dazed, now you *hic* get confused!~)
    SetGlobalTimer("7c#lich1chaos_timer","LOCALS", 12) // so he doesn't spam Chaos that much
    END
    /* impossible due to engine (even if immune, self cast bypasses)
    IF
    See(NearestEnemyOf(Myself))
    Range(NearestEnemyOf(Myself),10)
    HaveSpell(WIZARD_SKULL_TRAP)
    !Global("7c#lich1skull_trap","LOCALS",1)
    THEN
    RESPONSE #100
    SetGlobal("7c#lich1skull_trap","LOCALS",1)
    Spell(Myself,WIZARD_SKULL_TRAP)
    DisplayStringHead(Myself,~Argh! I'm dying! Wait, I'm immune *hic* Haha! I was joking, it didn't even touch me!~)
    Continue()
    END
    */

    IF
    HaveSpell(WIZARD_IMPROVED_CHAOS_SHIELD)
    THEN
    RESPONSE #100
    Spell(Myself,WIZARD_IMPROVED_CHAOS_SHIELD)
    Continue()
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_GREATER_MALISON)
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_GREATER_MALISON)
    Spell(NearestEnemyOf(Myself),WIZARD_GREATER_MALISON)
    SetGlobal("7c#lich1casted_malisson","LOCALS",1)
    END

    IF
    See(NearestEnemyOf(Myself))
    See(NearestAllyOf(Myself))
    Global("7c#lich1good_melf","LOCALS",1)
    HaveSpell(WIZARD_MELF_ACID_ARROW)
    THEN
    RESPONSE #100
    Spell(NearestAllyOf(Myself),WIZARD_MELF_ACID_ARROW)
    SetGlobal("7c#lich1good_melf","LOCALS",2)
    DisplayStringHead(Myself,~Ech! How many of ye are here? *hic* Oh thats tha wyvern!~)
    Continue()
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_MELF_ACID_ARROW)
    !Global("7c#lich1good_melf","LOCALS",1)
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_MELF_ACID_ARROW)
    SetGlobal("7c#lich1good_melf","LOCALS",1)
    DisplayStringHead(Myself,~Ha! Get rekt! Oh wait... Nevermind! HAhaaaa! I will *hic* destroy *burp* ya!~)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_CHAOS)
    Global("7c#lich1casted_malisson","LOCALS",1)
    Range(NearestEnemyOf(Myself),5)
    THEN
    RESPONSE #100
    Spell(Myself,WIZARD_CHAOS)
    DisplayStringHead(Myself,~I shall spread confusion across the land! Starting by myself! Then you. Then I get another drink!~)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_MAGIC_MISSILE)
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_MAGIC_MISSILE)
    DisplayStringHead(Myself,~NONE CAN STOP THE POWER OF BOOZE AND LICHDOM! We shall rule forever!~)
    END

    IF
    HaveSpell(WIZARD_WYVERN_CALL)
    !See(NearestEnemyOf(Myself))
    !Global("7c#lich1wyvern_on_self","LOCALS",1)
    THEN
    RESPONSE #100
    SetGlobal("7c#lich1wyvern_on_self","LOCALS",1)
    Spell(Myself,WIZARD_WYVERN_CALL)
    DisplayStringHead(Myself,~I call forth *hic* to the *buuurp* power of the Abyss may come forth and call forth to come... Where was I? Oh Nevermind. WYVERNS! Get ready!~)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_WYVERN_CALL)
    Global("7c#lich1wyvern_on_self","LOCALS",1)
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_WYVERN_CALL)
    DisplayStringHead(Myself,~Come! COME TO ME, DEMONS! NOO! More Wyverns!??!?! This cannot be!~)
    END

    IF
    See(NearestEnemyOf(Myself))
    !StateCheck(Myself,STATE_INVISIBLE)
    HaveSpell(WIZARD_SHADOW_DOOR)
    THEN
    RESPONSE #100
    SetGlobal("7c#lich1pfmw","LOCALS",1)
    Spell(Myself,WIZARD_SHADOW_DOOR)
    DisplayStringHead(Myself,~Goodbye my mortal friends! I leave thee to suffer *hic* what was I saying? *hic* I'm invisible now? *hic* What?~)
    Continue()
    END

    IF
    See(NearestEnemyOf(Myself))
    StateCheck(Myself,STATE_INVISIBLE)
    HaveSpell(WIZARD_SUN_FIRE)
    THEN
    RESPONSE #100
    MoveToObject(NearestEnemyOf(Myself))
    DisplayStringHead(Myself,~I can't fail this one *hic* I can't fail this one, I can't... Argh! Wait! What happened?~)
    Spell(Myself,WIZARD_SUN_FIRE)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_MANTLE)
    Global("7c#lich1stone_skins","LOCALS",2)
    CheckStatLT(Myself,1,STONESKINS)
    THEN
    RESPONSE #100
    Spell(Myself,WIZARD_MANTLE)
    SetGlobal("7c#lich1pfmw","LOCALS",1)
    DisplayStringHead(Myself,~*blaaaaargh* Ugh... *bleaaaaaaaaaaarch* I'm vomiting corn *bracnfhnkajs* Aaaugh! Gimme another beer! I have to stop this curse!~)
    END

    IF
    !See(NearestEnemyOf(Myself))
    Detect(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_MANTLE)
    THEN
    RESPONSE #100
    DisplayStringHead(Myself,~I can se *burp* sense you... I can *hic* feel *hic* you *hic* DAMMIT!~)
    Spell(Myself,WIZARD_MANTLE)
    END

    IF
    Global("7c#lich1pfmw","LOCALS",1)
    HaveSpell(WIZARD_PROTECTION_FROM_MAGIC_WEAPONS)
    THEN
    RESPONSE #100
    Spell(Myself,WIZARD_PROTECTION_FROM_MAGIC_WEAPONS)
    DisplayStringHead(Myself,~You can't hurt me now! I WILL DESTROY YOU AND I WILL *hic* PREVAAAAAAAAIL!!! Mwahahahaha!~)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_HOLD_PERSON)
    !Global("7c#lich1hold_on_me","LOCALS",1)
    THEN
    RESPONSE #100
    SetGlobal("7c#lich1hold_on_me","LOCALS",1)
    Spell(Myself,WIZARD_HOLD_PERSON)
    DisplayStringHead(Myself,~Hey! I thought I was casting Time Stop! Oh, maaaaaan...~)
    Continue()
    END

    IF
    HaveSpell(WIZARD_SKULL_TRAP)
    See([PC])
    THEN
    RESPONSE #100
    Spell([PC],WIZARD_SKULL_TRAP)
    DisplayStringHead(Myself,~Now I got you!~)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_HOLD_PERSON)
    Global("7c#lich1hold_on_me","LOCALS",1)
    Global("7c#lich1casted_malisson","LOCALS",1)
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_HOLD_PERSON)
    DisplayStringHead(Myself,~I got you now! Hah~)
    END

    IF
    See(NearestEnemyOf(Myself))
    Race(NearestEnemyOf(Myself),ELF)
    HaveSpell(WIZARD_STINKING_CLOUD)
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_STINKING_CLOUD)
    DisplayStringHead(Myself,~Sleep, sweet elf! Oh, I forgot about racial bonuses! Should have read the manual better... Next time...~)
    END

    IF
    See(NearestEnemyOf(Myself))
    HaveSpell(WIZARD_STINKING_CLOUD)
    Global("7c#lich1casted_malisson","LOCALS",1)
    THEN
    RESPONSE #100
    Spell(NearestEnemyOf(Myself),WIZARD_STINKING_CLOUD)
    DisplayStringHead(Myself,~A stinky for you, kiddo! HaHAAAA!~)
    END

    IF
    See(NearestEnemyOf(Myself))
    THEN
    RESPONSE #100
    AttackReevaluate(LastSeenBy(Myself),12)
    END
    >>>>>>>>

    COMPILE "lich_be_drunk.inline/7c#lich1.baf"
    It always spawns, not 50% like God recommended, and it's level 14 (but it's a Wild Mage), and it's spell selection isn't random, but he should do some funny targetting fails. Maybe v2.0 could do that stuff as well, but I'm too tired right now. Have fun.
    NimranNoonO_BruceGoddeltagosemiticgodlolienJuliusBorisovCabal82EmpyrialThe_Potty_1NonnahswriterQuartz
  • Re: What would be the most difficult mage specialist/kit for you to play?

    who ever cant learn chain contingency would be the one for me
    That would be an enchanter
    Unless you have SCS or SR which makes both Contingencies and Sequencers learnable by all schools.

    IMO all are pretty good, but Transmuters are the hardest (they require too much micromanagement) ones to play, at least in BG2, because they lack most protections and that makes them too easy to kill.
    elminsterJuliusBorisov