Jump to content


  • Posts

  • Joined

  • Last visited

About lroumen

Profile Information

  • Gender
  • Location
  • Mods Worked On
    Switch: Bard to Thief classchange and reverse at will.

lroumen's Achievements

  1. lol, I'm not writing that one, I still need to update my bard<->thief<->bard mod. The bits I'm struggling with there are gained innate abilities and whether to script that using invisible summons (and thereby a ridiculous method of reading player locals) or to immediately use locals and forget about the invisible summons there (since you cannot put them into a clab file because upon classchange all clab bonuses are appended on your character even if they are duplicates).
  2. Yes, unfortunately, something like actionoverriding to get a local variable is sadly impossible. I figured out that I can set the local on a PC, then when casting a spell which sets a global, trip a block that checks both of these and then sets a temporary global, after which the summon comes in, checks the temporary global which is a reflection of the PCs local, the summon does his thing and actionoverrides the PC to change the local and kill the temporary global... *sigh* a very simple but cumbersome solution to allow different PlayerXs to run the same script. It's easier to not use a summoned creature and go fully with locals. I haven't decided yet for my bard<->thief mod because I do intend to keep the patching on baldur(25).bcs to a minimum as Jarno and thebigg suggested to me before in June. You can manage it with only one summon. Simply put both blocks in its script and put a check for the class in there as well as a DestroySelf() to stop it from executing the other block. Of course different spells and different summons works too.
  3. Maybe you are correct in your statement, but if the blocks aren't triggered, it doesn't matter whether the whole thing is in baldur(25).bcs or only a summoned creature block is in baldur(25).bcs which processes its own script (with identical blocks) once summoned. Besides, if you install a mod purposely to get X to happen, it makes little sense to complain that X is happening (like messing with the sorcerer class/kit). Uninstalling is always an option. As for the coding bits I agree. It could be more cleaned up and some parts may be transferred to a summoned creature script, but the general behaviour will not be very different. I am still looking into the summoned creature adaptation of the class changing in my mod, but I'm kind of stuck trying to figure out on how to read and transfer local variables from playerX to the summoned creature and back again (onto playerX). This seems impossible to implement without defining (temporary) globals again. As always, I enjoy your input. If you can convince me that my reasoning is flawed, I would appreciate it very much.
  4. Well, those things are connected, you can make a kit that turns a solo-mage into a Sorcerer, but you cannot make a kit that is Sorcerer/Thief, unless you make and extra special slice from the Switch-Rogue kit so it's Thief->Sorcerer->Thief. As there is no such concept in the game that is required to have Sorcerer and Thief under the same banner(class), as the Sorcerer is it's own independent class, not a mage kit... just like the ShadowKeeper "tells you". About the Switch-Rogue applied to other kits/classes. You only need two innates and a small bit of code to get the basics done. You will have to be careful with leveling up though since the XP gain is not linear (whereas between bard and rogue, it is linear). 1: Innate given to you when you are a thief. Sets a global to 2. Removes Innate 2. 2: Innate given to you when you are a sorcerer. Sets same global to 2. Removes Innate 1. 3: Spell to give innate 1 to your PC. 4: Spell to give innate 2 to your PC. Code: IF OnCreation() THEN RESPONSE #100 SetGlobal("YOURGLOBAL","GLOBAL",1) END IF Global("YOURGLOBAL","GLOBAL",2) Kit(Player1,YOURTHIEFKITNAME) THEN RESPONSE #100 SetGlobal("YOURGLOBAL","GLOBAL",1) ChangeClass(Player1,SORCERER) ActionOverride(Player1, ApplySpellRES("YOURSPELL4",Player1)) END IF Global("YOURGLOBAL","GLOBAL",2) Kit(Player1,SORCERER) THEN RESPONSE #100 SetGlobal("YOURGLOBAL","GLOBAL",1) ChangeClass(Player1,THIEF) ActionOverride(Player1, AddKit(YOURTHIEFKITNAME)) ActionOverride(Player1, ApplySpellRES("YOURSPELL3",Player1)) END LOCALS instead of GLOBAL and Myself() instead of Player1 would probably work too. It could requires some tampering, but you can always ask for more help in case I made a mistake.
  5. No problem. I appreciate the time you make for all of the updates, tips and tricks.
  6. I remember one of the older versions of your tutorial contained a page that allowed the tutorial to be downloaded as a zip/rar file. Unfortunately, I cannot find it anymore. Is it still available?
  7. Hi Kitanna, I was wondering whether you got your kitswitching to work out. It is not long ago that I made a small kit that does something similar. It is a bardkit that has the possibility to switch to a thief and back at will (an F12 innate). You can find my workflow in this thread. You probably want to skip to the last pages where I have attached my results or you can check the baf and the readme. Anyway. I would put a global change in the dialogue to set that character needs to switch class or kit. In my case I simply change the global using the innate ability. Then I use a sequence of the following to get it done. IF Global("##changekit","GLOBAL",1) Kit("X","Custom1") THEN RESPONSE #100 ChangeClass("X","FIGHTER") // in my case BARD or THIEF ActionOverride("X",AddKit("Custom2")) SetGloblal("##changekit","GLOBAL",2) END In my case I have a daughterblock that does the reverse again (change custom2 to custom1). I have to make a note that your button bar stays as the custom1 kit UNTIL you reclick your character. So for a bard just switched to a thief I still have bardsong and spellcasting, whereas for a thief just switched to a bard I still have find traps and stealth. However, as you reclick your character you will have your button bar fixed (thief is thief, bard is bard). Perhaps that is the problem you have encountered?
  • Create New...