Aller au contenu

Photo

The Black Scourge of Candle Cove -- Tchos' development diary


  • Veuillez vous connecter pour répondre
1056 réponses à ce sujet

#51
kevL

kevL
  • Members
  • 4 052 messages

Tchos wrote...

One question, though -- what is a tough, but barely doable, DC for a locked door, with an assumed level 10 character with good lockpicking skills? There should also be opportunity to acquire thieves' tools here and there.

L10 Rogue w/ max OpenLocks ( 13 )
and 20dex ( +5 )
and lesser amulet of the Master ( +2 )
: 20 auto

#52
Tchos

Tchos
  • Members
  • 5 030 messages
Thank you. So the DC for the lock would be 20 (skill) + 1d20, right? So the maximum DC a rogue of those stats could unlock would be 40. I'll use that as a baseline number for my other rogue skill related checks.

#53
kevL

kevL
  • Members
  • 4 052 messages
that makes more sense. Outside of combat the roll is auto-20 ( Take 20 ) so

: 40 auto


don't forget about nwn2wikia, it has a lot of info about skills etc.

#54
Arkalezth

Arkalezth
  • Members
  • 3 187 messages

kevL wrote...

Tchos wrote...

One question, though -- what is a tough, but barely doable, DC for a locked door, with an assumed level 10 character with good lockpicking skills? There should also be opportunity to acquire thieves' tools here and there.

L10 Rogue w/ max OpenLocks ( 13 )
and 20dex ( +5 )
and lesser amulet of the Master ( +2 )
: 20 auto

I don't know, that seems pretty high. Not every rogue will have 20 DEX at that level (I'd say few, actually), and you're including items.

It depends on what you understand exactly by "tough, but barely doable". Do you want any rogue with a maxed skill to be able to open it (with or without lockpicks), only a master rogue, or something in between? At the very least, I'd leave bonuses from items (except maybe from lockpicks, if available) out of the calculations.

I haven't read the whole thread, but it sounds like an interesting project. Good luck making it in a month!

#55
Tchos

Tchos
  • Members
  • 5 030 messages
Yes, it should be very high, and something that only a master rogue can pick. The door can be opened in other ways (there's a key, for instance). This is a bonus we're talking about, as I've scripted it so that picking the lock gives a little bonus XP, so it's meant here to be a very tough (but optional) challenge.

#56
Tchos

Tchos
  • Members
  • 5 030 messages
I started the day's modding with a delicious cup of coffee and plans to tackle the next big tasks.

First I added a triggered event that can be avoided with a good stealthy scout. If you succeed, you'll be awarded XP, and you'll get an alternate bit of content. I'm doing what I can to provide multiple approaches to situations, so that it's not all about rushing in guns blazing.

Soon I need to import some custom creatures, since so much of this is aquatic-themed. Sahuagin are definitely on the list, and maybe kuo-toa, too, though my understanding is that those don't have combat animation.

I made an appropriately-leveled character in Vordan's Hero Creator to test some of the party conversation options, since I had removed all the evil stock characters from my vault a long time ago, and I needed to test a bit that involved an evil check. So far, I'm pleased with how straightforward it is to implement different options for SoZ party characters. After I've created the recruitable companions, I'll see about going through and adding some specific lines for them, though there won't be too many, because I mainly want to cater to playing with a fully player-created party.

I had to do some more troubleshooting on the new triggers and spawns, but they were simple mistakes. One was forgetting to actually attach the script I had written, and the other was inconsistent tag naming. I've settled on a naming convention of naming things prefixed with the name of the area in which they'll be used, and also using the area name as the category for the blueprints.

Then, when the enemy still didn't spawn, I figured out that I need to create the creature using the resref, not the blueprint tag. And then there was an error due to me renaming a script to match my new standards, and forgetting to update the name on the creature.

But, I got the spawning working properly, as well as the sneaky alternative. I'd love to show it here, but it's a bit too spoilery. Videos, I'm afraid, will have to wait until I've got these things added to the actual areas.

I also fully implemented my quest indicator system on the two quest lines I've put in so far, and I'm quite happy with the results.

It occurs to me now that perhaps bitwise conditions could have simplified the tangled mess of conditions from the difficult conversation of a few days ago. I had never heard of bitwise operations before seeing them discussed on this forum, but it looks like a useful method.

As I've been making my first tentative steps in sound set selection for my NPCs, I've installed E.C. Patterson's Sound Set Selection Menu Fix so that I can actually hear them in the toolset.

I noticed a problem with the code I used to award XP for picking a lock. It also awards the XP for unlocking it with the key, which I don't want. Perhaps the solution to that would be to have the code conditionally check the PC opening the door to see if she has the key in inventory, and if so, not award the XP. I might have to disable the auto-removal of the key, which I hate to do, but we'll see if it's necessary.

I spent a few hours working on the overland map. Still more work to be done on that, but it's coming along nicely.

I went back and looked at the lockpicking code again, and took a while to figure out how to check for the key in the inventory. I ended up finding some very useful functions like HasItem() and GetNearestPC() in the include file nw_i0_plot. Much more convenient and easy to understand compared to the built-in functions. So I set the door not to automatically remove the key, checked for the key on the person unlocking the door, and awarding XP only if she didn't have it. It also occurred to me to add a command to destroy the key, so that eliminated my only misgiving.

I used GetNearestPC() later when I wanted the boss to say something and do something to the PC when he first perceived him. I guess I'll reveal one little thing here in a screenshot. My enemies are really livening up now! This is fun!

Image IPB

#57
Dorateen

Dorateen
  • Members
  • 477 messages
Yeah! Bosun Fiercejaw, bring it on!

He'll be no match for that stout dwarven fellow there.

Good stuff, Tchos. I am enjoying reading this development diary.

Modifié par Dorateen, 15 juin 2012 - 03:22 .


#58
Tchos

Tchos
  • Members
  • 5 030 messages
Today I started populating one of the taverns. I didn't get much done today, due to company. But I did find out that you actually can copy and paste conditions and actions in conversations. And it's a good thing, too, because this is one of those ambient conversations that uses local variable checking and setting to keep track of which line to speak. Since this is a place the player might return to repeatedly for resting or related functions, I didn't want the ambient conversation to start over from the beginning every time, or it would get very repetitive, and I didn't want to use a random line choice because some of the lines require a sequence.

So I set an NPC to use a conversation that included lines and gestures, with a line and a local variable called "line" to handle the sequence. I saw a few examples of this kind of monologue, in both the OC and in modules, that included long, random-looking variable names like NWN2BARK46/gQNuyUUatjeKOhdjExQ==, and I don't see why. I'm guessing it was a legacy from NWN1, and perhaps they were originally using global variables that needed to be very different from each other to prevent conflict.

@Dorateen: I think you'd like my dwarven fighter.  ^_^

Modifié par Tchos, 16 juin 2012 - 09:46 .


#59
Lugaid of the Red Stripes

Lugaid of the Red Stripes
  • Members
  • 955 messages
You should look at the ambient chat script in 'The Danaan Unvanquished' for simpler way to do those random one-liners. Basically, I use a custom token in the conversation line, and then a script that sets the custom token by selecting a line at random from a runtime-generated list of lines based upon whatever conditions the builder wants to script in.

Once you see the way the script works, it's real easy to copy it and paste in your own lines and conditions.

#60
Tchos

Tchos
  • Members
  • 5 030 messages
I did look at that script, in another thread where you posted it as an example!  It's very clever, especially with all the ways it can check the player's location, quest variables, etc. to take into account which random lines to use.  The content itself also made me very interested to play the Danaan Unvanquished.

I'm not sure if I'm ready to use that system yet myself.  I need to study it more thoroughly first.  I have it saved for later perusal.

#61
Tchos

Tchos
  • Members
  • 5 030 messages
Another P&P day, so not much to report on the modding front. I focused my efforts on what seemed doable in the available time, and that was finishing the overland map.

My strategy was to modify and expand the overland map from SoZ, with more ocean as needed for my purposes, and with some of the landscape edited to indicate that it's not actually the Sword Coast in this case. I had a little accident, though, in that even after I resaved it as a different module, it was still somehow connected to the official SoZ campaign, even though it didn't show up in that campaign in the Campaign Editor plugin. Nevertheless, the campaign resources were still attached, and I mistakenly deleted them as I was stripping the map down to its essential parts. I probably should have just exported the area first thing, as an ERF, but I wasn't sure if it would export any necessary scripts along with it, or if I had to know what they were and specify them manually. So now I'll have to reinstall SoZ before I can continue playing that campaign, which is the last of the campaigns I haven't yet finished (not counting MoW, which I still need to get).

I did export it as an ERF afterward, and found that indeed I do have to manually specify every resource I need. O, for an option to automatically export an area and everything attached to it.

However, I don't know why, but several hours of work on the texturing, relandscaping, and placement of new placeables just completely disappeared. Totally reset to the way it was before. I have no explanation for it, but it was extremely off-putting.

Edit:  Hmm, never mind.  My changes somehow came back when I reloaded the map.

Modifié par Tchos, 16 juin 2012 - 10:31 .


#62
kevL

kevL
  • Members
  • 4 052 messages
whew.

reSoZ: I had to reinstall my SoZ some time ago, cause RunModule from toolset was to put it mildly a no go ...


but it went ok,

#63
Tchos

Tchos
  • Members
  • 5 030 messages
Any tips on making water not disappear when you save?

#64
kevL

kevL
  • Members
  • 4 052 messages
nope

anyone else?

#65
Tchos

Tchos
  • Members
  • 5 030 messages
I don't really have an answer, but after fighting with it for some time, the water no longer disappears when I save it. The last two things I did were to chop off some of the left side of the map (which was all water), and also to remove the water on one megatile which was at a higher level than the rest (due to a waterfall).

#66
Shallina

Shallina
  • Members
  • 1 011 messages
Water nevers deasapear.

But to be able to watch it there is 3 things to check:

1 in the toolset you need the option water checked.

2 in the toolset and in the game ; you need a source of light.

3 the water needs to be above ground.

#67
Tchos

Tchos
  • Members
  • 5 030 messages
All I can say is that I'm glad that it's fixed so that I can no longer take video of the occurrence to show you, because it was happening without fail each time I saved. Paint water, all fine, then Ctrl-S, and I watch the water all suddenly disappear, except for the water on the higher elevation. There was, of course, a light source, and the water was most definitely checked. Whether the saving caused the water all to fall below ground, I cannot say. But the water brush painted it right back on at the same elevation as before, only to lose it again with the next save.

#68
PJ156

PJ156
  • Members
  • 2 980 messages
Was the elevation over 100m that should not be possible but perhaps was part of the problem.
I had a similar but opposite problem where water deleted re-appeared on baking. The cause was not clear but it resolved itself on closing and restsrtig the toolset.
Sometime the toolset is capricious Image IPB
 
PJ

#69
Tchos

Tchos
  • Members
  • 5 030 messages
The water elevation is -4.5. I had tried restarting both the toolset and my computer. I also tried installing Tani's WaterMill plugin, because it has a button specifically for saving water without letting the toolset know anything was changed, but my cursory experiments with it were unsuccessful. I recall I saw a reference in the Halloween special to another modder who spoke of having a problem with disappearing water...I think it was in Ernie Noa's entry.

#70
Tchos

Tchos
  • Members
  • 5 030 messages
So, it was pretty difficult to get the overland map up and running, with the disappearing water, the grass and placeables that suddenly decided to pop up and levitate high up off the ground, and a walkmesh helper that wouldn't stay at the size I resized it.

After getting it all looking fine, I exported it to an ERF and imported it into the campaign, and set about hooking up the scripts and conversations to transition between them, which took some time studying the SoZ overland map code to determine how much I could strip out as unnecessary and still make it work (for instance, I didn't need wandering monsters or hidden goodie caches on this map).  I created a harbourmaster NPC to set the player off, and then it was off to the troubleshooting part. I found numerous mistakes, including incorrect script names, but even after that was all sorted, my test PC didn't go to the map.

I found that the problem was that the town exterior wasn't in a walkable area. Why? Despite how large the map was (or seemed, since it's at a different scale), only a very small strip of land in the middle was walkable, and the destination waypoint wasn't part of it. So I had to bump up the perimeter by 1 segment (which is actually 4 segments, it seems) to get the walkable area to be a decent size. I filled the extra squares with black. Fortunately, it was just a click to do so, but I had to do it for each individual square because I couldn't find a way to select more than one square.

While I was testing this, I noticed that my entertainer NPC needed a longer delay between his lines, so I found a way to set a custom heartbeat for him. I set it to 12 seconds instead of the default 6. Much better pacing now.

Next time I tested, the transition to the OM worked. Yay! Very gratifying. I still needed to tweak the height of the walkmesh helper, and while I was there I also did some touchups of the texturing to ease the noticeable pattern on the ocean floor, and adjusted some of the heightmap along the coast.

Next task was to add some special music for it! Unfortunately, it wasn't as straightforward as adding custom sound effects. For sound effects, all I had to do was convert them to 96KBps mono mp3s and then convert them to wav-extensioned BMU with MP3toBMU, and they immediately showed up in the toolset when I put them in the campaign folder. No such luck with music! According to my reading, they have to be listed in a 2da. What exactly is the advantage of 2das? I don't understand why the devs used this method. Why can't it just find what we put in the folders, and let us define what the items do within the toolset? My first experiences were with a toolset that worked like that.

So, I wasn't sure where I should put my custom tracks in the ambientmusic.2da file. I looked on the wiki for reserved ranges (not sure if that applies for a module like this), but didn't see anything listed there for music. I picked out the SoZ ambientmusic.2da and added a few blank lines to it, and my track at #213. Added the 2da to my hak, and off we go.

Well, it showed up, but it didn't play. Maybe it's because of the very high music delay setting. Or maybe the music has to go in the music folder, and putting it in the campaign folder isn't enough. Whichever. I changed both, and the music plays now.

The walkmesh helper keeps inexplicably disappearing, besides constantly resetting its size. I can confirm that it's disappearing because when it happens, it no longer appears in the Area Contents palette. Very annoying.

I started having some troubles with the baking, as well. It didn't seem to like my overlapping walkmesh cutters, which I applied near a large one rather than repainting the whole thing. I spent several hours trying to fix this, due to frequent toolset crashing on baking.

Eventually I concluded that it was a conflict between the walkmesh cutters and the walkmesh helper. It doesn't seem to work the way I expected it to work. I thought that I could lay down a single large walkmesh helper, and then use the cutters to exclude parts of that, but it makes the visible baked mesh go wild. I got it working with a minimalistic mesh, which is not ideal, but will suffice for this purpose. This thing ate up an entire day and a half already, with all the crashing and problems. I had no idea it would take this long! I'm moving on to the next item on the agenda.



As you can see in the video, for the lighthouse, I'm currently using a tower that came with the game. If all else fails, I could replace it with this stone tower from the RWS Tower Pack. It's somewhat on the squat side to serve as a lighthouse, but I can probably do something about that. The conversation that begins the trip, and the NPC's look, are of course placeholders. The other ship you can see is the pirate ship. All that's missing from the moving ship, in my opinion, are sails.

Edit: Replaced video with one with better sound effects.

Modifié par Tchos, 18 juin 2012 - 02:59 .


#71
Tchos

Tchos
  • Members
  • 5 030 messages
It occurred to me today how I might get the collision meshes to work properly without the troubles from yesterday, and that was to plop a huge tower over the island and use its collision to cut out of the walkmesh helper what the walkmesh cutter was having trouble with. That worked. Now the overwater map has a fully functional mesh that'll let you go around the island and near the pirate ship, but not let you go through them. While I was at it I also improved the sound effect selection and re-added the description to the town dock that must have been lost in one of yesterday's crashes.

Today I worked on putting in place the interactions with the Merchants' League. The player has three options for starting the main quest, and they all offer different rewards. The paths are mutually exclusive, so the player will only get one of the rewards. Each path results in somewhat different confrontations with the villains. That means another complicated conversation. I've never written conversations with this many branches and variations. I hope I don't miss anything important.

At this point, I had to do a little research, since it's time to assign XP and gold values for quest rewards. I know it's important to parcel out XP and treasure rewards according to a standardised system, for players who prefer to play series of modules with the same characters, with reasonable advancement between them. XP for fighting the enemies is taken care of for me, of course, but I have non-combat quests to reward, as well.

So, I ended up consulting the 3.5 Dungeon Master's Guide for guidance in that regard. I found what I needed near the end of Chapter 2, in the "rewards" section under "Mission goals". Although it says that such rewards are necessarily ad hoc, the general rule of thumb for major quests in a story is that they should be large enough to seem significant compared to the standard awards for the intervening encounters. That seems straightforward enough, assuming that killing standard monsters in NWN2 awards XP according to the CR tables in the DMG.

Since this is for a level 10 party, with an assumed party size of 5 members, I think the minimum reward for accomplishing the first of two major tasks should be 600 XP, since that would be how much a single level 10 player would get for a single CR10 encounter (and XP is duplicated for each party member in NWN2 instead of divided up). With that as the baseline, alternate approaches to that main quest will net somewhat larger rewards, all in addition to the standard rewards for combat and such. If that's not reasonable, then someone please let me know.

While working on this questline, I noticed that my Dropbox was reaching its capacity alarmingly fast. I checked my revision manager, and found that for two of the directories (the campaign folder and the module folder) I had forgotten to set a limit on how many old revisions to save. So I set both to a maximum of 10 revisions, and that brought my space usage down to 35%.

I think the next task after finishing this quest will be to create a full-sized version of the lighthouse island I made on the overland map.

#72
kamal_

kamal_
  • Members
  • 5 238 messages
Are you out of college for summer? You're doing a lot of work.

#73
Tchos

Tchos
  • Members
  • 5 030 messages
Hey, I'm just trying to follow your instructions, Kamal!  ;)

#74
Tchos

Tchos
  • Members
  • 5 030 messages
I got the complicated Merchants' League dialogue nearly finished. I completed the main branch and the after-quest line, and put in placeholders for the quest finisher branch and the after-initial visit branch. I ended up using a global variable to check if the quest is done in this case, since I have two different outcomes with this NPC, which has to coordinate with the state of the mayor's quest, and I thought it would be easier this way than doing an if-and-or check with the journal entries, which I'm not sure how to do with conversation conditions. (Checking if A and B, or B and C are true).

I fully wrote out the dialogue for the main section, with all its branches, conditionals, and skill checks. I've learned one lesson -- I should go with the tiered method of dialogue branches for future quests. I still need to create the quest items for this quest. There are 5 quest items associated with the Merchants' League version of the main quest line.

It was starting to wear on me, so I switched to the other priority task -- creating the lighthouse island, "Ol' Sea Dog's Rock". Making the small-scale one in the overland map didn't take too long, since it's only viewed from one angle, and at a distance. For the full-scale version, I had an extra handicap beyond the closeup scrutiny, and that was the fact that it would have to look like a big version of the little version I made. So I put a screenshot of the overland map version up on the screen, and started by creating a 24x24 area.

This being the ocean, I can't use a smaller area and block off the horizon with placeables, unfortunately, and even with fog on, I always seem to be able to see where the land ends and the sky begins. I threw some sky rings on there, which hides the edge, though the open sea shouldn't have mountains. Fortunately, I called this place Candle Cove, implying that the bay is at least partially surrounded by mountains.

I decided to have the top of the island and the mainland be at elevation 0, so I sank everything around them, and picked a height for the water. I dropped a tower and an NPC on the island for scale reference.

After I was working on the landscaping for a while, a low disk space warning informed me that I had accidentally activated Fraps' video capturing. I had forgotten to disable the hotkey after capturing the overland map footage, and it was dutifully filling up my hard drive. What I had accidentally captured was a lot of the initial setup and sculpting of the land. I've watched some people broadcasting their artwork in a live stream as they draw it, and I thought this might be of a similar curiosity for some people, so I kept it, edited out some of the repetitive bits and bits where nothing was happening, and doubled its speed for easier viewing.

I got back to work on the island, and did my best to match the miniature reasonably well, and also pick textures that still worked at this new scale. I sure wish there were some tintable rocks available in the toolset that aren't standing stones with no bottoms, which seriously limits the ways I can use them on a slope. Being able to rotate in all three axes would help a lot, too.

After I painted the textures on, I used the texture swapper to try different combinations, and settled on a different set. I thought I was going to run out texture slots, since I see the tiles can have no more than 6 textures on them, but I actually ended up with one empty slot left over. I tried using areas of texture to make a weathered look to the place, and then added some grass, trees, and bushes.

The toolset crashed while I was experimenting with the water settings, and I lost some work. I had to re-add some of the trees, and the grass.

I added the pirate ship and the player's ship anchored near the island (apart from each other), and some rowboats by the island's little dock. One of them is the player's.

Next, I roughed out the mainland as a backdrop, and then baked it. Next I need to hook it up to the rest of the module.

#75
Dann-J

Dann-J
  • Members
  • 3 161 messages
The more textures you use in outdoor areas the better. There is a bug with many recent Nvidia cards that causes problems with texture surface normals - unless there are at least five textures in each terrain tile. I now ensure that all of my outdoor areas have at least five per tile to make sure that people with Nvidia cards (like me) are getting the intended experience, and not an unintentionally psychadelic one.

With a bit of experience you can figure out which rock placeables can be used on slopes of various steepness without their petticoats showing. I used them extensively in Isle of Shrines to break up the monotony of solid rock slopes. Near-vertical slopes (much like yeast) can be troublesome though.