Jump to content

Daxtreme

Modders
  • Posts

    238
  • Joined

  • Last visited

Posts posted by Daxtreme

  1. Hey guys

    I want to add an effect to a spell that's attached to the caster, and lasts as long as the duration.

    Let's say I want to add a 3D effect to Spell Trap that follows you around, here's what I've tried so far:

    	COPY_EXISTING ~spwi902.spl~ ~override~
    		LPF ADD_SPELL_EFFECT 
    			INT_VAR 
    			opcode = 215  // opcode for "Play 3D effect"
    			target = 1  // self
    			timing = 0  // Instant/Custom duration
    			power = 4 // no idea what that does but it's what they used on Fireshield (Blue)
    			resist_dispel = 3 
    			parameter2 = 1  //  Attached to self
    			duration = 108   // 108 seconds for testing purpose ... it lasts 1 second
    			STR_VAR
    			insert_point = 1
    			resource = dx#trap   // BAM resource
    		END
    	BUT_ONLY

    I've tried all sorts of permutations of the above parameters but I can't get it to work. Always just lasts like 1 second then disappears, although it pops again for a second when casting a new spell (????) 

    Is there a more straightforward way to attach a 3D effect to a buff spell? I've checked all the buff spells in the game but it really seems like their effects are hardcoded. Stoneskin, for example, adds "Stoneskin effect" to the spell. So customizable!

    Thanks!

  2. you don't have any other mods installed?

    In your bg2 install folder there should be a file named "weidu.log". If you have it, copy-paste its content here

    EDIT: Also, never install any games that you intend to mod in Program Files. This could be why your install bugs out -- always install Baldur's Gate and mods in a separate Games folder you made outside of Program Files

  3. I fixed it by stating cre right from the getgo (first line)

    	ACTION_FOR_EACH cre IN ~TANWIZ02.cre~ ~TANWIZ03.cre~ ~TANWIZ04.cre~
    	BEGIN
    		ACTION_IF FILE_EXISTS_IN_GAME ~%cre%~ BEGIN
    			COPY_EXISTING ~%cre%~ ~override~
    				LPF SANITIZE_CRE RET ok = ok END
    				PATCH_IF ok BEGIN
    					SAY NAME1 @1004
    					SAY NAME2 @1004
    				END
    			BUT_ONLY
    		END
    	END

     

  4. Hey guys,

    I made this simple script to rename 3 cre files

    // Rune Mage rename
    
    	ACTION_FOR_EACH cre IN ~TANWIZ02~ ~TANWIZ03~ ~TANWIZ04~
    		BEGIN
    		ACTION_IF FILE_EXISTS_IN_GAME ~%cre%~ BEGIN
    			COPY_EXISTING ~%cre%~ ~override~
    				LPF SANITIZE_CRE RET ok = ok END
    				PATCH_IF ok BEGIN
    					SAY NAME1 @1004
    					SAY NAME2 @1004
    				END
    			BUT_ONLY
    		END
    	END

     

    Problem is... it doesn't work. The names never get changed. Is it because SAY cannot be nested like this? I use it frequently after COPY and it always works.

    @1004 in tra file is 

    @1004 = ~Rune Mage~

    Or is there a better and faster way to do it? Thanks!

  5. Thanks for the explanation k4thos!

    Random suggestion as I'm nowhere near as knowledgeable as you guys but...

    Could there be a 2nd EET_end for the truly, truly, last-of-everything things, especially with the IWD in EET stuff coming?

    Like

    1. Install EET
    2. Install most mods
    3. Install EET_end
    4. Install SCS + Tweaks
    5. Install EET_final

    Maybe it's a crap suggestion but who knows, just throwing it out there

  6. Hey guys,

    A few people in the Discord have been wondering the correct mod install order now that SCS requires EET_end to be installed before installing SCS.

    Basically, here's how it was before (from what I could gather):

    Install EET

    Install most mods

    Install SCS

    Install Tweaks

    Install EET_end (possibly invert that and Tweaks, not sure)

    Now SCS requires EET_end to be installed before so what becomes of the order above? New tentative order:

    Install EET

    Install most mods

    Install EET_end

    Install SCS

    Install Tweaks?

     

    Just wanted to discuss with you guys what should be the accepted general order going forward, because I don't think many people know that SCS has to be installed after EET_end yet.

  7. On 7/8/2019 at 9:41 PM, DavidW said:

    (Sorry for belated reply.)

    Yes, it's intended... well, kind of. I was treating the teleport block just as part of Zallanora's generic combat scripting, especially given there's no guarantee it would actually fire. I guess it's harmless enough to restore it, though (well, without the instacast Timestop/Gate, which is just cheating). Will do so if I get the chance.

    On second thought please leave it as it is - removed!

    I'm making a mod and since it will install before yours, it would be best that way (and nobody else cares anyway :P)

  8. In the Twisted Rune encounter, I think you tried to fix their AI of doing nothing when they don't see the player with this:

    DW#RUHLP.bcs

    IF
    	!Dead("hlshang")  // Shangalar
    	Global("ShangalarMove","AR1008",1)
    	!Detect(NearestEnemyOf(Myself))
    	!Detect(Player1)
    	!Detect(Player2)
    	!Detect(Player3)
    	!Detect(Player4)
    	!Detect(Player5)
    	!Detect(Player6)
    THEN
    	RESPONSE #100
    		MoveToObject(Player1)
    END
    

     

    But "ShangalarMove" global is equal to 2 after he moves, not 1. It's only equal to 1 for like... a split second

    (here's why if you're wondering)

    Spoiler
    
    IF
    	Global("ShangalarMove","AR1008",1)
    THEN
    	RESPONSE #100
    		SetGlobal("ShangalarMove","AR1008",2)
    		CreateVisualEffect("SPROTECT",[825.664])
    		CreateVisualEffect("SPROTECT",[1123.640])
    		CreateVisualEffect("SPROTECT",[1038.452])
    		CreateVisualEffect("SPROTECT",[784.558])
    		Wait(1)
    		CreateVisualEffect("SPDISPMA",[825.664])
    		CreateVisualEffect("SPDISPMA",[1123.640])
    		CreateVisualEffect("SPDISPMA",[1038.452])
    		CreateVisualEffect("SPDISPMA",[784.558])
    		SmallWait(7)
    		CreateCreature("HLREVAN",[825.664],NE)  // Revanek
    		CreateCreature("HLSHYR",[1123.640],NW)  // Shyressa
    		CreateCreature("HLLAYEN",[1038.452],SW)  // Layene
    		CreateCreature("HLVAXAL",[784.558],E)  // Vaxall
    END

     

    Fixing this is very easy: Just change the line to

    Global("ShangalarMove","AR1008",2)

    And then all the Twisted Rune members won't just forget about the PC when they're out of line of sight :)

  9. Hey guys,

    I did that and it works I think but why does my region look like this? (see attachment)

    Here's what my code looks like:

    	COPY_EXISTING ~AR5500.are~ ~override~
    		PATCH_IF SOURCE_SIZE > 0x28f BEGIN
      			LPF ~fj_are_structure~
        			INT_VAR
       				fj_type         = 0    	//trap
     				fj_box_left    = 112 	 //smallest x
    	    		fj_box_top     = 2280   //smallest y
        			fj_box_right   = 366 	 //biggest x 
        			fj_box_bottom  = 2477 	//biggest y
    	    		fj_loc_x       = 210 	//between smallest and biggest x
        			fj_loc_y       = 2350 	//between smallest and biggest y
        			fj_vertex_0    = 112 + (2405 << 16) 
        			fj_vertex_1    = 149 + (2477 << 16)
    	    		fj_vertex_2    = 317 + (2280 << 16)
        			fj_vertex_3    = 366 + (2316 << 16)
        			STR_VAR
    	    		fj_structure_type   = region
        			fj_trap_detect      = 0
        			fj_trap_active      = 1
        			fj_trap_status      = 0 
    	    		fj_name             = dx#am1			 // script name of the trigger area
        			fj_reg_script   = dx#am1 			// this would be the assigned script name
      			END
      		END
      	BUT_ONLY

    Chosen points are: 

    112, 2405

    149,2477

    317,2280

    366,2316

    Is there a reason why it looks like an X instead of a rectangle? Thanks!

    region.jpg

  10. Hey guys, I've been using this great ARE-patching script by Nythrun, and showcased by Miloch in here, so thanks to the both of you, but I'm stuck on the Vertex part.

    Basically I want to add a hidden trigger area. Not sure how to do it

    LPF fj_add_are_structure
      INT_VAR
      fj_type    = 1   // 1? not sure which one to select. 2 is Travel, not sure which one is just a trigger box
      fj_box_left  = 786
      fj_box_top    = 614
      fj_box_right  = 845
      fj_box_bottom   = 595
      fj_cursor_index = 30   // I think I should remove this? Since I want it invisible
      fj_vertex_0  = 3415 + (625 << 16)     // How do you calculate Vertex?
      fj_vertex_1  = 3450 + (650 << 16)
      fj_vertex_2  = 3450 + (700 << 16)
      fj_vertex_3  = 3415 + (676 << 16)
      STR_VAR
      fj_structure_type   = region
      fj_name      = DX#ENT01
    END

    Also, are there any variables I should be assigning that I'm missing?

    EDIT: I probably need to assign it a BCS script. Not sure how

    Thanks!

×
×
  • Create New...