Avenger Posted July 10, 2006 Share Posted July 10, 2006 Yes igi, those two use the position fields Link to comment
igi Posted July 10, 2006 Share Posted July 10, 2006 So, by using an external EFF file and setting the position fields, you could set (or remove) a map note anywhere on the map? Link to comment
devSin Posted July 10, 2006 Share Posted July 10, 2006 Is he talking about the effects? The scripting actions only take coordinates, but the effects want a string reference. This is sub-optimal, since the engine will concatenate two notes if their markers would overlap (same or nearby coordinate), and I have no idea how the engine decides which to remove if a bunch are all "Snare - Here" (the trap map note). In Mac ToB, they don't work, but it doesn't bother me since, in Mac SoA, the remove map note effect would remove the referenced string but not the marker (you'd just be left with markers with no text). EDIT: Thanks, Fuckyourefastigi. ;-) Since the trap effects are stored in the ARE as EFF structs, the engine very well could use the position fields. I'm not sure if it respects the two locations in standalone EFFs, though, so I don't know if you could do it with the add map note effect. Link to comment
devSin Posted July 10, 2006 Share Posted July 10, 2006 I'm pretty sure the dispel magic parameter 1 is only ever the level (when using type 2 in param2 (use specified level)). This has been known forever; I'm not sure why it's a research topic, unless you think there may be some other use? I don't think you can restore a creature that uses valid MoveBetweenAreas effects (always paired for some reason). You have to visit the destination area before the engine will "release" the affected actor(s). Note that the effect is also used if an actor transitions manually due to RunAwayFrom() (thanks a bunch, Celvan). Link to comment
igi Posted July 10, 2006 Share Posted July 10, 2006 I'm just wondering, as using the "Remove map note" opcode only seems to remove a map note if you're stood on it. This would be (and is) fine for trap notes, as the trap doesn't move, but for anything else it's a little restrictive. Being able to add/remove a map note via exact coordinates might be vaguely more useful. Link to comment
devSin Posted July 10, 2006 Share Posted July 10, 2006 And I'm pretty sure that the Wish effect is just an unused, preliminary implementation of the ToB Wish spell. It just casts a random SPWISH* spell when called. I think it should be left as a research topic, however. Link to comment
igi Posted July 10, 2006 Share Posted July 10, 2006 I'm pretty sure the dispel magic parameter 1 is only ever the level (when using type 2 in param2 (use specified level)). Yep. I update the research thread so often (the last time was in 2004) that I'd forgotten we knew this... I don't think you can restore a creature that uses valid MoveBetweenAreas effects (always paired for some reason). You have to visit the destination area before the engine will "release" the affected actor(s). Maybe my rampant abuse of the opcode was to blame, but even visiting the destination area didn't release the actor when I tried it. And I'm pretty sure that the Wish effect is just an unused, preliminary implementation of the ToB Wish spell. It just casts a random SPWISH* spell when called. I think it should be left as a research topic, however. I can't even remember what it did when I last tried it. A random SPWISH* spell would be good enough I suppose. Link to comment
devSin Posted July 10, 2006 Share Posted July 10, 2006 I'm just wondering, as using the "Remove map note" opcode only seems to remove a map note if you're stood on it.This would be (and is) fine for trap notes, as the trap doesn't move, but for anything else it's a little restrictive. Being able to add/remove a map note via exact coordinates might be vaguely more useful. These are the only effects that aren't really effects but fed directly to the area class; I don't know that the coordinate fields would be respected, but it's definitely worth testing. Link to comment
devSin Posted July 10, 2006 Share Posted July 10, 2006 I don't think you can restore a creature that uses valid MoveBetweenAreas effects (always paired for some reason). You have to visit the destination area before the engine will "release" the affected actor(s). Maybe my rampant abuse of the opcode was to blame, but even visiting the destination area didn't release the actor when I tried it. Try adding it in pairs and setting the creature flag (bit 14). This effect shouldn't really be used; the engine controls how these creatures are handled, and while it's possible that the above may work (the 2 effects and the flag), it's also possible that the engine has some other way of tracking whether the move to another area is legit. Link to comment
igi Posted July 10, 2006 Share Posted July 10, 2006 These are the only effects that aren't really effects but fed directly to the area class; I don't know that the coordinate fields would be respected, but it's definitely worth testing. I'll rephrase: I tested and got a negative result, so maybe someone else could test? I did find that the (Transferred) Level field in an EFF acts as a level specifier (i.e. setting it to 10 means the target will only be affected by the EFF it it's level 10). Similar to the dice fields for a lot of effects, but since not effects have that option, it may be useful. Link to comment
devSin Posted July 10, 2006 Share Posted July 10, 2006 These are the only effects that aren't really effects but fed directly to the area class; I don't know that the coordinate fields would be respected, but it's definitely worth testing.I'll rephrase:I tested and got a negative result, so maybe someone else could test? I don't think it would actually work, so maybe someone else else could test? I did find that the (Transferred) Level field in an EFF acts as a level specifier (i.e. setting it to 10 means the target will only be affected by the EFF it it's level 10). Similar to the dice fields for a lot of effects, but since not effects have that option, it may be useful.Didn't I point these out? It has min and max level specs. Link to comment
igi Posted July 10, 2006 Share Posted July 10, 2006 list.add(new DecNumber(buffer, offset + 144, 4, "Caster level")); Also works as "only affect the target if they have this level" (thought for external EFF files, rather than embedded ones). While I'm here, target-type 3 for spells and items ('dead actor' can target living actors as well. And ground piles. But not doors. Link to comment
devSin Posted July 10, 2006 Share Posted July 10, 2006 list.add(new DecNumber(buffer, offset + 144, 4, "Caster level"));Also works as "only affect the target if they have this level" (thought for external EFF files, rather than embedded ones).I wonder why? They already have the min/max level fields, so I'm not sure why they'd bother handling this field at all. In embedded EFFs (when cast from spells), it should always be the caster level (my guess was that this determines the dispel failure/success probs). Pre-attached effects (in CRE files) usually have this at 1, but as you say, it makes no difference. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.