Jump to content

Detect Plants Spell (?)


Recommended Posts

Hey. So I had a cool idea and was wondering if it can actually be done:

 

Is it possible to make a detect harvestable plants/flora spell? If so, how exactly?

 

My current model is: A clone of the detect life concentration spell - I removed all pre-existing conditions inside magicEffect and placed the GetIsObjectType(Flora) == 1 on subject. Tried it in-game, and it didn't illuminate anything.

 

I couldn't find any information on whether the detect life archetype can illuminate non-actor targets.

 

I don't want to search by keyword, because that would involve placing said keyword on every flora object, and is kind of a dirty edit.

 

Any ideas?

 

Below is a s/s of my current magic effect. The spell entry itself is just a generic spell entry.

Link to comment
Share on other sites

I believe the Detect Life effect is hard coded to only process NPCs. In my Minor Spells mod I use quests to locate arrows and ash piles for my Detect Arrows and Detect Corpse spells.

 

You can grab the mod to see how I did it. The source files for the scripts should be packed in the BSA, but here are their contents just in case. (Both spells actually use the same two scripts and their names refer to the ash piles because I implemented the search for ash piles first. When I did the Detect Arrows spell I found that only certain shaders would have any visible effect when applied to arrows and projectiles. I have no idea what kind of shader effects will work on the various flora objects.

 

 

 

ScriptName CDC_DetectAshPileEffectScript extends ActiveMagicEffect
; The scripted magic effect just starts and stops the detection quest.

Quest Property CDC_DetectAshPileQuest Auto

Event OnEffectStart(Actor akTarget, Actor akCaster)
	CDC_DetectAshPileQuest.Start()
EndEvent


Event OnEffectFinish(Actor akTarget, Actor akCaster)
	CDC_DetectAshPileQuest.Stop()
EndEvent
ScriptName CDC_DetectAshPileGlowScript extends ReferenceAlias
; This goes on each of the quest aliases to produce appropriate visual effects.

EffectShader Property LifeDetectedUndead Auto

Event OnInit()
	OnUpdate()
EndEvent

Event OnUpdate()
	if GetReference()
		LifeDetectedUndead.Play(GetReference(), 2.0)
		RegisterForSingleUpdate(2.0)
	endif
EndEvent

 

 

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...