The Black Scourge of Candle Cove -- Tchos' development diary
#526
Posté 08 octobre 2012 - 10:19
I also like the method of spawning them on the client enter, but keeping them script hidden until they're supposed to appear. That doesn't seem to have any delay, but one disadvantage is that they just pop in suddenly, instead of gently fading in as they do when spawning. Best done when they're out of sight of the player, in that case.
#527
Posté 09 octobre 2012 - 02:25
But adding new spells is not within my current ability, so on with this module. Currently, I'm developing one of the side quest areas, which contains exploration and a quest mini-game which also features in another side quest. This quest involves an item that I want to make create a visual tether of some kind to a distant object, as part of its action that captures something from a distance.
This also includes some set dressing and scripting the quest and dialogue associated with it. Some of these side quests have the primary purpose of allowing the player to gather the money that they'll need to further the main quest, but I hope that they're enjoyable enough that even players who import characters with plenty of money will play through them anyway.
#528
Posté 09 octobre 2012 - 11:09
My previous post mentioned that this would require a special effect to illustrate the capturing of something from a distance, and pulling it to you. This turned out to be pretty straightforward, as there's an entire class of effect files that I hadn't really looked into before -- those being the "beam" effects. I originally had in mind one that would look like a rope, and I tried to create one that looked like that. I designed one that looked convincing enough, but after looking through all of the ones that were available and doing some experimentation, I decided that the "chain"-looking effect looked better. I just had to reverse the direction of the beam in the effect editor, and it looked fine.
I tested it out on a blocked-off area in Questland to make sure I could target and snatch objects from across non-walkable areas, and it worked fine. However, when I placed them into the actual quest area, I found I was unable to target them, because there was an obstruction that couldn't be avoided.
So, instead, I have the device work on the nearest of the objects, without targeting, which is actually how I had originally described the item in its description anyway, so no big deal. And you still need to get within range, so the only thing you're really losing here is being able to click on and read the description of the objects before you snatch them with the device.
Off-topic, but I also seem to have broken one of my toes.
#529
Posté 10 octobre 2012 - 10:41
I spent some time looking for appropriate sounds for it, but I couldn't find what I needed with any of the key words I could think of, including ropes, pulleys, reels, wheels, chains, etc. I also looked through Kamal's freesound collection for it. I ended up importing a new sound, and combining it with a standard gem sound for when you collect it.
In the sound test, I found that the sound was playing about 2 seconds too late, out of sync of the visual effect. I was using PlaySound for the purpose, but since the script that calls it is the item activation script, I had to use AssignCommand, because items can't play sounds. But assigning the command to the action queue of the player apparently introduced an unpredictable delay between assigning it and carrying out the action.
Anyway, there may be other ways around that, but I recalled that some VFX files include a sound, like the water elemental effect, so I opened the effect I was using, and looked around for anything to do with sound. It was there, under "add new event". That ended up being a much nicer solution than scripting the visual effect and the sound separately.
In this video, I started recording after I had collected 4 pearls out of 5, to show what happens in three separate conditions: When you're out of range of a pearl, when you collect a pearl, and after you've collected your full quota of pearls.
#530
Posté 12 octobre 2012 - 12:29
After that, I went back to work on the script that controls the boss' movements. Testing this one takes a while, because it happens after a major fight, and I don't feel like programming a shortcut widget to carry around to fire the various scripts that set it in motion, which could take longer than just fighting through it each time. I did set it to easy mode, though, which speeds things up, and I'm using level 20 characters for it.
Last test I got things working up to the point where her actions were supposed to be taken over by the ipoint regulator's heartbeat, but she just stopped for some reason. Well, the reason was that although I had written the script for the regulator, I forgot to attach it. That's not the first time I've made that mistake.
The next time I tested it out, I found I had told the main script to activate the wrong script state on the regulator, so nothing happened again.
Next time she fled, but kept stopping until the heartbeat forced her to start again. And even then, she basically ended up just running back and forth, never actually reaching the destination. I think it might have been because the script to make her ignore combat wasn't working. So I tried out a custom faction.
I started by trying a faction that was universally loved by everyone, but it didn't work. I tried again with a universally neutral one, and also tried out some other scripting commands for the exit, and I eventually got something I could live with. I decided that since almost no one would even be in a position to be able to see what happens at the end of the path, I didn't need to script it beyond reaching that end. In all of my tests, once she started fleeing properly, I was unable to follow her due to enemies being in the way.
The command that worked was ActionForceExit(), and I believe the reason it works when the others don't is because that function sandwiches its movement command between toggles that switch on and off whether the character is capable of being commanded. I think that prevents her from changing her behaviour while this command is being carried out. With this in mind, I could probably follow through with the rest of the planned movements by doing the same thing with a new function, but I'll just go with it as it is now, and alert the player to what happened with a message.
#531
Posté 12 octobre 2012 - 12:34
Modifié par kamal_, 12 octobre 2012 - 12:35 .
#532
Posté 12 octobre 2012 - 12:55
Tchos wrote...
the sound test, I found that the sound was playing about 2 seconds too late, out of sync of the visual effect. I was using PlaySound for the purpose, but since the script that calls it is the item activation script, I had to use AssignCommand, because items can't play sounds. But assigning the command to the action queue of the player apparently introduced an unpredictable delay between assigning it and carrying out the action.
Whenever you assign something to a creature's action queue that you want to happen immediately, you should also assign ClearAllActions first. Otherwise the sound doesn't play until the currently queued action ends.
Tchos wrote...
Anyway, there may be other ways around that, but I recalled that some VFX files include a sound, like the water elemental effect, so I opened the effect I was using, and looked around for anything to do with sound. It was there, under "add new event". That ended up being a much nicer solution than scripting the visual effect and the sound separately.
Another advantage of adding the sound to the effect is that it sounds like it's coming from the effect location, rather than eminating from the player. Effect sounds also seem to carry further than sounds made by creatures. Sometimes you have to be almost on top of a creature in order to hear a played sound assigned to it.
#533
Posté 12 octobre 2012 - 01:02
Tchos wrote...
I wanted to use a certain helmet as a placeable for decoration, but I couldn't get it working. I spent several hours trying different methods. One was making an effect SEF out of it and then making a placed effect from that.
Model VFX are somewhat of a specialty of mine. You often have to assign the correct skeleton to the model effect in order for the model to behave itself. Once you figure out their eccentricities, there's little you can't do with them:
http://www.neverwint...ds.com/mods/188
#534
Posté 12 octobre 2012 - 01:41
@Dann: That could have been it. I didn't use ClearAllActions() that time. I did use it in the troublesome fleeing choreography, to little effect.
I did try playing around with the skeleton for the helmet, but not much. I also tried various attachments. What is the proper attachment to choose for a placed effect, anyway? The beer stein worked fine with the "hand" attachment, even converted to a placed effect.
I had also read over the thread where Mokah and you described the process of converting weapons to placeables, and you had said that armour is "trickier". But since this helmet was all in one model already, I didn't think I'd need to use SnipMDB, so I didn't. But when I picked its appearance on a new placeable, it just didn't show up.
#535
Posté 12 octobre 2012 - 02:40
For helms you would use the skeleton of the race that particular model is designed for. So if it was p_hhm_cl_helm01 (a human male cloth helm), you'd use p_hhm_skel (the human male skeleton). Even then, you shouldn't need to specify the skeleton at all for a non-animated placeable effect.
There might be something in the headers of helm models that prevent them from displaying directly via a placeables.2da entry. Weapon models will show up directly - but then, weapon models don't have skeletons (except for animated varieties like the flail and balor whip). Some helms also cause the character's hair to disappear, so it's likely there's something else going on behind the scenes. You might have had more luck with a helm model that doesn't replace the hair (like the circlets or cloth head band) rather than the model you wanted.
#536
Posté 12 octobre 2012 - 02:59
Tchos wrote...
@Kamal: Heh, you've reminded me of a weapon I saw in the toolset. Next time I need to run through the combat, I'll give myself the Destructificator.
n2_killerweapon
... and ...
instodeath
#537
Posté 12 octobre 2012 - 03:02
@I_Raps: n2_killerweapon is the Destructificator that I was talking about, which I plan to use next time.
Modifié par Tchos, 12 octobre 2012 - 03:03 .
#538
Posté 14 octobre 2012 - 01:06

There are 7 diving helmets at this pavilion. One for each party member (5-member party), one for the tour guide, and one for emergencies. One is not visible in this picture, and the other is partially hidden.
#539
Posté 15 octobre 2012 - 06:36
#540
Guest_Iveforgotmypassword_*
Posté 15 octobre 2012 - 07:33
Guest_Iveforgotmypassword_*
#541
Posté 18 octobre 2012 - 07:18
I opened up the toolset again today, and started looking through some scripts again. Then I made a big batch conversion of all of the sounds and voices from the game's data files to mp3, to make them easier to play so I can better pick out sounds to play in the module. VLC player works, but it's not my preferred media player.
It's sort of a shame that it wasn't possible for me to really know all the resources that are available to use for my modules from the beginning. It's all right there, yes, but I can only truly understand these things once I have a grasp of the contexts in which they exist -- the whens, wheres, whys, and hows. I have a lot to learn.
There are some intriguing videos this mystery modder posted this summer. Anyone know anything about this?
http://www.youtube.c...neilYman/videos
Now I have my notes to review on what I need to do next on my module.
#542
Guest_Iveforgotmypassword_*
Posté 18 octobre 2012 - 11:09
Guest_Iveforgotmypassword_*
Fair play to you planning another mod already after releasing both of mine I thought I'd never do it again but I got lured back again such is the nature of the toolset...
#543
Posté 18 octobre 2012 - 12:08
But on the subject of future plans, I have indeed mentioned an intention to make another after this one, with a very different story theme, but the same basic mechanics (SoZ party + companions, MotB resting, OC crafting, etc.) As I've been working on the current module, I've been writing my scripts, systems, and blueprints in such a way as to make them easy to continue using in my future work.
It should serve as a testament to how much I love this toolset. It's so powerful and flexible. I play other games and sometimes I'll see some unusual or unique kind of quest or activity, and it makes me think about how I could do that kind of thing in NWN2. Most of the time, it's possible! I also see a lot of really interesting ideas for area design that could be done in this toolset as well.
It's too early to comment on what the next one will include, because it's still fairly up in the air aside from a basic sandbox-type of structure to allow a variety of side quests between advancing the main quest. I have two specific locations in mind for it, as well as the relationship of the populace of one of the places to those of the other.
Browsing through old D&D sourcebooks, splatbooks, and modules is a huge inspiration, and that's without even beginning to look at the Pathfinder material that could also be done in NWN2. So much exciting stuff in these books -- it really fires the imagination!
Modifié par Tchos, 18 octobre 2012 - 12:13 .
#544
Guest_Iveforgotmypassword_*
Posté 18 octobre 2012 - 06:06
Guest_Iveforgotmypassword_*
#545
Posté 18 octobre 2012 - 06:58
#546
Posté 18 octobre 2012 - 07:05
I'm also interested in the special effects that are demonstrated in the other videos. Some of them are very nice. I'll really have to look into how to do more with the visual effect plugin.
#547
Posté 19 octobre 2012 - 03:44
Next, I laboriously reassigned icons to the fish in Heed's Angler Pack, which had been scrambled up for some reason. I don't know one fish from another, so I relied on Google Images to find the appropriate fishes and match the icons to what it showed me. Maybe this fish identification practise will come in handy some day. Who knows.
For all of my bashable placeables, I try to remember to throw the x2_door_death script into its On Death slot, just so that it gives it a little burst of splinters when the item breaks. Otherwise, they just fade away.
I was thinking about the visual effects editor again, and I also saw that Marshall posted the Legends AI plugin on the Nexus, which includes sleeping NPCs. I remember watching the tutorial videos for it, and I think he mentioned that NPCs are supposed to have an effect over their heads when they're sleeping, and I recall seeing some mention of floating Zs in some NWN1-legacy code in one of the AI systems in here. I don't know why they left out that effect when they made NWN2, but I fiddled around in the effect editor and made one. I'd guess someone else probably made one of these a long time ago, but I didn't check, and if that's the case, then here's another one.
I picked a handwritten-style font for the Z the first time, but when I saw it in action, it created the illusion of unintentional jagged edges, so I changed it to a smoother one. Most of the time in the editor was spent reducing the default number of particles, and slowing them down to a more sleepy speed. I'm not sure what colours are most appropriate to evoke a sleepy feeling, but I suppose it doesn't matter. I also threw a snoring sound effect in there, but for better flexibility that should probably be just a sound object placed over the bed, instead of in the effect. There are several snores to choose from. I use one of them for the resting screen at the inn.
Anyone know if there's a way to make them fade away instead of just popping out of existence?
I was finishing up the last thing missing from the temple, and that's the temple services, such as healing, restoration, and resurrection. The way I'm setting it up is in line with the philosophy I've espoused from before, and it may not be entirely popular, but I'm doing it for roleplay reasons. As mentioned before, I chose the SoZ death and dying system because I appreciate how other D&D-based games, including the pen & paper versions, handle death. Death is something to be avoided, and although it's a curable condition in this world, it should come at a cost.
I don't like the way in the vanilla game that your dead party members come back to life automatically, and for free. It trivialises almost every encounter, and from an RP standpoint I can't imagine joining any party so reckless that they think nothing of getting killed multiple times per day. Even when they introduced the SoZ death system, they gave out cheap Coins of Life, and casting the Raise Dead spell had no material cost, because NWN2 just didn't implement any of the material component costs from the game rules.
In the Infinity Engine games and in the Temple of Elemental Evil, you did your best not to get killed, because if you didn't have a high enough cleric with you, or someone who could cast the spell from a scroll, you had to bring the body back to a temple and pay a priest to bring the dead back to life, or else you reload. The Temple of Elemental Evil went even further, and insisted that the party pay the cost of the material components that are specified to be required for the spell in the player's handbook, even when it's being cast by one of your own party members! If the spell requires specific material components beyond those that are assumed to be in a cleric's standard kit, then the cost of those components are taken into account when you cast. I like that. All it lacked, in my eyes, was some appropriate context and flavour to explain why it was necessary. That's what I'm doing.
So, at my temple, the priestess will perform the rituals at your request, for the necessary cost, and explain why. If you appreciate RP, this is the avenue for you, and you'll get a little story out of the deal, of a kind that I've never seen in any of these games. However, I am also providing options for player convenience. The same priestess will sell you as many scrolls of Raise Dead or Greater Restoration as you want to buy, and your own cleric can use them without any further cost, and of course I'm not changing the cleric spells to add the cost to them that they're supposed to have.
Moreover, the temple will raise all fallen party members for one cost, and not require separate payments for each one, as the IE games and ToEE did. And you'll get a free healing out of it. Similarly, the Restoration service at the temple will act as a Greater Restoration for all party members, at the cost of only a standard Restoration. So I'm not going completely hardcore with it.
I think the gold inflation that occurs in these computer versions of the game is partly due to their retaining the rules for progression and rewards, but omitting the rules that create a use for all that gold you accumulate. I believe this may have been the reason why the Baldur's Gate expansion Tales of the Sword Coast included no less that four very large expenditures for almost no return, at the beginning of its content. At the expected level for that content, the typical party should be quite rich, and it's hard to get excited about looting Durlag's Tower if your party assets could afford to just buy the tower outright.
Anyway, it did take a while to write some decent RP-based dialogue around the restoration, healing, and raising of the dead, but it's done, and I think it was worth it.
#548
Posté 20 octobre 2012 - 08:13
#549
Posté 20 octobre 2012 - 10:24
I have to say I realy like your quest system fx. I will be using that in my next outing though it perhaps detracts from the exploration aspect of these games. The "talk to everyone" type approach. Or perhaps it supports it; if you are lazy here is your quest but if you talk to everyone there is more to do ...
This all looks great Tchos I look forward to giving this a go.
PJ
#550
Posté 20 octobre 2012 - 10:40
There are simple scripts that you can fire without parameter in conversations, and others that run through an ExecuteScript command, so that for those methods there's at most one additional thing to do alongside the actual updating of the journal.
But most recently, as I've become more comfortable and familiar with this environment, I've been composing an include script with new functions for all of the combinations, as well as wrappers for the actual journal update functions which incorporate this functionality, so that you won't have to make two commands at all.
In any case, I'll document all the different methods, and suggest which ones I think are the easiest.





Retour en haut





