Aller au contenu

Photo

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


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

#101
PJ156

PJ156
  • Members
  • 2 982 messages

Tchos wrote...

It seemed that when I changed an item, it didn't update the item that I had placed in a container, because it still contained the old version of that item.


Sadly, changing a blueprint does not update the instances in the module. It would be nice if it did.

PJ

#102
kamal_

kamal_
  • Members
  • 5 240 messages
A toolset plugin can update instances. :-)

I forget which exact one though, I have a bunch of them.

#103
PJ156

PJ156
  • Members
  • 2 982 messages
That sounds good does it work on creature blueprints, those are the ones that I need to do most of all.

I tend not to spawn blueprints on enter though I know I should. Updating creature blueprints is a pain.

PJ

#104
Tchos

Tchos
  • Members
  • 5 042 messages
I did find a plugin that can update instances, but I haven't tried it. I'm not sure if I installed it yet, either. Could be dangerous.

And I haven't converted all my creatures to spawned blueprints, but that's how I'll go forward.

Modifié par Tchos, 23 juin 2012 - 02:40 .


#105
Tchos

Tchos
  • Members
  • 5 042 messages
Another P&P day. I spent most of my working time on item icons. I imported Shaezyra's Bonus Blueprints, so there are a lot of them.

I also built a hearthstone/stone of recall/divine intervention type system into the module, with arbitrary limitations to prevent it from being used in the main quest, but allow it in any of the side quests. Works over land, but not over water. Pick one up at a temple, and you can use it to return to the temple. Maybe I'll make it so that it can also be set to return you to an inn or tavern of your choice.

#106
Guest_Iveforgotmypassword_*

Guest_Iveforgotmypassword_*
  • Guests

Tchos wrote...

. Maybe I'll make it so that it can also be set to return you to an inn or tavern of your choice.



If only they were real !

#107
Tchos

Tchos
  • Members
  • 5 042 messages
Heh, I'll trade you a hearthstone in exchange for save slots for real life. :)

#108
Tchos

Tchos
  • Members
  • 5 042 messages
I couldn't find a list of what sounds are available to use for the PlaySound command, but I found the sounds themselves in the Data folder. I previewed some using VLC, and found some passable ones that way. I picked a sound for the hearthstone, and then looked for a visual effect.

Since I didn't have a list of visual effects either, I used LilacSoul's script generator to give me a choice of them from a list, but quickly found that it didn't work. Further research indicated that effects aren't done that way anymore, so I opened up the visualeffects.2da and looked through them for a .sef file that I could apply in the same way that I did the quest indicators.

I went ahead and scripted the hearthstones so that you could ask any innkeeper or head cleric to make their location your home to teleport to, since it was pretty simple. The conversations with those characters just includes a check to see if you have one, and if you don't, they'll offer you one, and if you do, then they'll offer to make their place your home location, which sets a local variable on the stone to determine which waypoint to teleport to. I tested it out a few times, and it seems to work fine now. Next I just need to program it to not work if you're in combat, and also to make it take a few seconds to cast.

Posted Image

But on to other things first. Heed's Boardable Ships happened to be absolutely perfect for what I had in mind for the first of the climaxes. I don't know how I would have handled it if I hadn't stumbled back across that pack while I was reviewing resources a few days ago. So much good material here, but hard to keep in my head what's available.

All of the ships in the test module for Heed's Boardable Ships were missing, replaced with placeables from MotB. In the description for the resource, he said that he updated the 2DA to deal with the additional MotB placeables, but apparently he didn't update the test module. What concerns me here is that my understanding had been that a 2DA file in a hak attached to a module should override the base game's 2DA for that module. This doesn't appear to be the case.

I'm also starting to tackle the swimming trigger. Apparently I'm going to need to swap "appearances" for each race, swapping to the appropriate line in the 2da. I guess this would be a good time to try out that "case switch" style of scripting, with the appearance number as the integer for the case? I have to assume it won't swap their heads to some default as well. Then another trigger to swap the appearances back.

While adding the boardable ships to my own placeables.2DA, which I took from the SoZ data file to use as a base, I also took another look at the problematic walkmesh helpers from Zarathustra. After a bit of investigation, it seems that the problem was not in the 2DA after all, but that the placeables were for some reason set to the wrong appearances. I'm really getting an intensive course in how all of these things relate to each other! One walkmesh helper was set to Column {Bear (X1)}, another was set to Column {Runed (X1)}, and the other two weren't set to an appearance at all. I would guess that this implies that the 2DA for the resource had been updated, but not the ERF that I imported which assigned the appearance to the blueprint.

After changing them to the correct appearances, which were in the list properly, and enabling C2 collision display (there's no toggle to turn that on and off? I have to do it in the preferences each time?), the walkmesh helpers appeared as intended.

Posted Image

With this new understanding of how placeables are defined, I was then also able to create new blueprints for the Heed ships, which is a good thing, since there was no ERF included with that resource. It's unfortunate that we can't have walkable ships that move up and down in the water like we can in other games, but then again for a large ship like this, in calm waters, it shouldn't be moving very noticeably anyway.

Posted Image

#109
Dann-J

Dann-J
  • Members
  • 3 161 messages
I find the quickest way to browse sounds is to create a dummy conversation (or open an existing one), then assign a sound to one of the conversation's nodes. You can preview them while you've still got the sound picking interface open, then accept your choice and copy the name from the conversation window. If it was an existing conversation then you can close it again without saving it.

That method relies on sounds having been named something logical though, and usually requires a bit of trial-and-error while entering likely words to filter the list down.

For browsing effects, I usually put a placeable effect in a test area (any one will do), then use a similar method as above (filter the list with likely keywords). That will generally only allow you to preview location-based effects though. Any effect that is linked to model parts won't show up (you'll need to experiment with a placed creature for those).

#110
Tchos

Tchos
  • Members
  • 5 042 messages
Actually, the VLC method is pretty convenient for me. I can just drag the files directly from the zip file into the VLC window and it plays them without complaint. Effects, on the other hand, will probably require something like what you describe. I should also look into Sunjammer's Visual Effects Browser.

#111
kevL

kevL
  • Members
  • 4 056 messages
codepoetz' Powerbar plugin has a pretty decent .Sef vFx browser, it doesn't show any model per se just the vFx. ( powerbar has a whackLoad of good stuff + it seems well written )

Modifié par kevL, 25 juin 2012 - 01:44 .


#112
Tchos

Tchos
  • Members
  • 5 042 messages
I have Powerbar installed, but I actually missed that "browse" button amongst the others, which is where it put the VFX, load screen, icon, music, sound and voice browser, instead of in the plugins or tools menu where I would have seen it before now. Thanks for pointing that out. What changed your mind about it being well-written?

Would be nice if it used a black background for the FX viewer instead of white, considering that most of the effects are light effects...

#113
kevL

kevL
  • Members
  • 4 056 messages
I have sort of a pale blue background in the vFx browser -- not sure if that's what you mean, it might be a windows system setting. /shrug

it seized the toolset (twice) after i made that post. It's done it before, too. But then, I suspect anything that has "visual effect" and "toolset" in the same sentence is suspect .... If you find a good one let us know.

nb. when I'm actually doing something not just playing around, take it nice & slow in that browser,


The other thing I noticed about the Powerbar is that the browsers (icons, loadscreens, etc.) don't seem to search all available directories where files can actually be found -- my impression is that it accesses only highlevel installation directories. ymmv

i also notice it has the dreaded "Update all instances" ;) btw, here's some cheezy code i splashed out earlier


// safety.
//if (bDoNotChangeThisCreature) return;


int iOriginalAppearance, iChange;

int iAppearance = GetAppearanceType(oCreature);
switch (iAppearance)
{
  // change human to badger
  case APPEARANCE_TYPE_HUMAN: // #6, Appearance.2da
  {
    SetLocalInt(oCreature, "iOriginalAppearance", iAppearance);
    iChange = APPEARANCE_TYPE_BADGER;
    break;
  }
  // change badger back to human
  case APPEARANCE_TYPE_BADGER: // #8
  {
    iOriginalAppearance = GetLocalInt(oCreature, "iOriginalAppearance");
    DeleteLocalInt(oCreature, "iOriginalAppearance");
    iChange = iOriginalAppearance;
    break;
  }

  // change a bunch of different dragons into badgers
  case APPEARANCE_TYPE_DRAGON_BLACK: // = 41;
  case APPEARANCE_TYPE_DRAGON_BLUE: // = 47;
  case APPEARANCE_TYPE_DRAGON_BRASS: // = 42;
  case APPEARANCE_TYPE_DRAGON_BRONZE: // = 45;
  case APPEARANCE_TYPE_DRAGON_COPPER: // = 43;
  case APPEARANCE_TYPE_DRAGON_GOLD: // = 46;
  case APPEARANCE_TYPE_DRAGON_GREEN: // = 48;
  case APPEARANCE_TYPE_DRAGON_RED: // = 49;
  case APPEARANCE_TYPE_DRAGON_SILVER: // = 44;
  case APPEARANCE_TYPE_DRAGON_WHITE: // = 50;
    iChange = APPEARANCE_TYPE_BADGER;
    break;

  default:
    SendMessageToPC(GetFirstPC(FALSE), "Appearance Change : oops, missed one !");
    // or whatver.
}

SetCreatureAppearanceType(oCreature, iChange);


ps. i have no idea what's going to happen to their heads ... etc.

#114
Tchos

Tchos
  • Members
  • 5 042 messages

kevL wrote...
it seized the toolset (twice) after i made that post. It's done it before, too.
The other thing I noticed about the Powerbar is that the browsers (icons, loadscreens, etc.) don't seem to search all available directories where files can actually be found
ymmv

My mileage did not vary in this case.  I tried out the browsers, and it couldn't find any of the MotB or SoZ loadscreens, nor any of the icons that were added to this module.  I also experienced a toolset freeze when I was browsing effects.

kevL wrote...
btw, here's some cheezy code i splashed out earlier

I'll see what I can do with that!  Thanks!

#115
kevL

kevL
  • Members
  • 4 056 messages
nota bene, Appearance_Type 0 is a Dwarf hehe

#116
Guest_Iveforgotmypassword_*

Guest_Iveforgotmypassword_*
  • Guests
Tchos.. If I had real life save slots sorry to say but I don't think they'd be up to trade.

Interesting goings on with the ships you certainly are a fearless modder unafraid of adjusting things to suit what you want personally I prefer vanilla flavour. There is a special effect ( in the blueprints ) of a bow wave that you might be able to reduce/slowdown and also a shoreline one for beaches that could help with the illusion of movement. Also placeable corpses and crates that bob up and down in water but I think you'd just make people feel sick playing if your ship did that.

#117
Tchos

Tchos
  • Members
  • 5 042 messages
@kevL: I guess that's why/because a dwarf is the default race when you create a character?

@Tsongo: Well, what attracted me to the NWN2 toolset is its flexibility in telling any kind of story. Although walkmeshes continue to be the bane of my existence, I would say it's living up to my expectations so far.

I was thinking of using that shoreline effect around the ships. I haven't decided yet. The wake effect won't work for this, though, because the ships will be anchored during this fight.

#118
kevL

kevL
  • Members
  • 4 056 messages
T. could well be,

although, the point i'm making is that if you're going to use iOriginalAppearance and that appearance is Type_Dwarf, and you do a check such as / if (!iOriginalAppearance) // bypass retransform -- well then it's going to stay a !Dwarf

Edit, alternately you could end up with a whole whackLoad of Dwarfs running around!!


( M.Rieder has a novelty like this and instead of debugging it just left it in for humor value :) -- i strongly suspect it's related,


- apparently NwN has the same issue but with badgers (hence why i chose Type_Badger above)

Modifié par kevL, 25 juin 2012 - 05:39 .


#119
Tchos

Tchos
  • Members
  • 5 042 messages
So in the first case it could be interpreted that to mean that dwarves are immune to transformation magic, but in the second case that to be a dwarf is the natural form for any sentient creature. :)

Well, at least in this case, I can skip the line to bypass the transformation. There are only 23 specific cases to transform, so if it's one of those, it should be changed (and 23 more to be changed back).

I have a lot of modules to play once this is finished, and The Wizard's Apprentice series is on that list!

#120
kevL

kevL
  • Members
  • 4 056 messages
basically yeah :)_~

#121
Tchos

Tchos
  • Members
  • 5 042 messages
Baking with Heed's Boardable Ships didn't give me a walkable ship. Instead, the whole thing was insubstantial.

I expanded the bay for the ship battle, so that the ships are in the middle, and anything outside of its viewing range is removed. I tried out the non-walkable brush for this one, just to eliminate the walkable area around the boats.

In testing the new area, I learned that capitalisation counts when it comes to jumping to a waypoint from a script. New standard is all lowercase for all tags.

And now the extremely long and frustrating fight to get a usable walkmesh again. It turns out I can't use the nice, clean walkmesh that the SoZ ship already has built in, because there's a wall along the sides preventing me from walking across on a boarding plank. I should have expected it, since from a development point of view, there's no reason to make a passable section there, even if visually there is a gap, since they never intended for players to walk across it. So, that meant I had to use walkmesh helpers to create the whole thing -- tilted floors, stairs, and obstructions. Added to that is the problem that if I put a proper mesh blocker around a spot that you shouldn't be able to walk through, it creates a big square of non-walkability, which cuts a huge gash across the walkmesh across an entire tile cutting off the boarding plank. Even if I just put a crate there! So I leave that little structure walkable. What a mess, what a mesh. It'll have to do.

Posted Image Posted Image

This was another all-day task. Now that it's done, at least, I can go on to other things.

I created another small area to get the swimming working. I made a trigger (with a visible pressure plate placeable to mark the spot) and put kevL's appearance type case switch code into it, and tried it out with a test human. Worked perfectly! It switched her back and forth from a badger with no problems.

Perhaps a week ago, I would not have understood what a "constant" is, and that these all-caps names like APPEARANCE_TYPE_BADGER and OBJECT_SELF are just handy substitutes for what's actually an integer. However, I know that now, and so I could alter the code. I edited the code to pick appearance 4006 instead of the badger, which is the "human swimming" line in the new 2da.

Posted Image Posted Image

I put it in the code, and voilà! Swimming works! Not only that, but my concern was unsubstantiated about it possibly changing the character's head when she's transformed back. Perfect solution. Thank you, kevL!

I'll add in the rest of the races to the code and get to work on the underwater area design. This one will involve some walkmesh trickery, but since it's an organic environment, I predict less trouble than with the ships.

#122
kevL

kevL
  • Members
  • 4 056 messages
sweet, good luck with the meshes

#123
Tchos

Tchos
  • Members
  • 5 042 messages
I think I see what the problem was with the Heed's ship appearances I had before. When I added the RWS underwater placeables to my placeables.2da, I noticed I was getting an off-by-one problem with the appearances of the imported blueprints. I thought I may have made a mistake with my copying and pasting of lines in the 2da, but I found that it was in fact a problem with the official SoZ 2da to which I was adding my new content.

The problem is that the Storm of Zehir additions to the placeables.2da have one line number (2534) doubled. I don't know exactly what this does to the existing placeables, or how exactly it's shifting the custom content entries down, but it's certainly a problem.

In my searches, I found some offhand references to this problem, but nothing definitive. No doubt this had been discussed on the old Bioboards. Since I'm using a lot of RWS material, I decided to go with the solution RWS uses. Baron explained that the 2das they provide for their materials skip line number 2838 after the end of the official SoZ entries, to bring the numbering back in sync from that point.

Now, I had to see how others handled this issue, too. I opened up the 2da that comes with the Mysteries of Westgate placeables (the downloadable versions on the Vault), and saw that their solution was to renumber the entries past the first 2534 so that the first blank line at the end of the SoZ placeables is 2839. Wouldn't that mess up blueprints that use entries 2535-2837 of the SoZ campaign? If not, which is the better solution?

Next I added the RWS ship interiors, since you'll be going inside both of the ships. More placeable.2da additions. Every time I edit these 2das, I make sure to replace all the spaces with tabs. The file is much more lightweight that way, and works just as well. There were other 2das to edit, too, or rather to add, since this was the first custom tileset I've added.

I made a nice little captain's cabin for the cargo ship. I prefer smaller spaces like this, even though it more or less requires the use of the overhead/isometric style camera. When I tested it in-game, I found that it was too bright. The light shaft effects I had put on the windows put light decals on the floor (and all over the placeables) which weren't visible in the toolset. I toned it down a bit, and I think I'll go with how it is now.

Posted Image Posted Image

I also found some pirate banners in the toolset, so I applied those to the pirate ship.

This was also the first test of my non-opening door script that transitioned between two areas (the outer main deck of the ship and the captain's cabin interior). My earlier tests were all in the single area of Questland. I'm happy to report that they worked perfectly. I also tested the walkmeshes and the tightness of the spaces with a full party.

Posted Image

#124
Tchos

Tchos
  • Members
  • 5 042 messages
Today I made one of the underwater areas. I looked at the "ambient sound" field for the area properties, and decided that was where I should pick an underwater sound effect. I thought that if I used that area that it would allow a stereo sound, like the music is stereo, as opposed to the placed sounds, which apparently have to be monophonic. I browsed through the ones that were already available, but of course there was no underwater sound in the vanilla game, since they didn't have any underwater areas. I thought the "Dungeon lava lake" one was pretty close, but I wanted something better. So I added a line to the ambientsound.2da and looked for an underwater sound. I checked Kamal's freesound archive first, which are convenient. I didn't find anything convincing, though, in my browsing of files with "water" in the name, so I checked Freesound myself, and found a decent scuba sound that I was able to improve in Audacity to smooth out the sound and make it more useful.

After several experiments (I wasn't able to find information on the required formats online), I determined that a stereo BMU just won't work for a sound effect, ambient or not. So I'd either have to use it as a music track, or convert it to mono. I wanted music in addition to the sound effect, so mono it is.

I actually couldn't get the sound to work as mono in the ambient sound field either, ultimately I went with a non-positional placed sound.

The rest was mainly set dressing. The RWS special effects really sold the underwater effect, but it also required an interesting landscape, appropriate atmospherics, and plenty of ground cover.

There was a problem with one of the textures for the RWS placeables, though. The texture for the fan-type and flat elk corals had a transparent texture matted to white, leaving an unintended white halo around the whole thing. I rematted them to their own like colours. The tint maps were also done incorrectly, with the tints being copies of the textures themselves, again leaving an untinted halo at the edges where the transparency didn't exactly coincide with the end of the texture, compounded by a copy of the transparency map being in the tint map's alpha channel. Also, as I understand it, the tints are 256-tone gradients in each of the three channels (R, G, and B), so if there's no difference in image between one channel or the other, there's no point in having them in two different channels, since it just makes it so that you have to tint both channels to get a blend of colour, instead of tinting a single channel to get the colour you want directly. The time you'd use two or three different channels is if there are little details in one of them that you want to tint differently than the rest of the texture. Several of these did not have that kind of detail, though one did. I corrected the tint maps by making the ones that were identical be full-on in one channel and not the other two, while having the other detailed one use two channels, and I removed the tint map's alpha channel entirely.

Posted Image Posted Image

There's still one problem with the flat elk coral, and that's the strange triangular shapes around the edges. With their sharp edges and strong untintable black outline on two of the sides, I'm pretty sure they're not supposed to be there, but I can't find the location in the texture where it's getting that image, or I'd remove it.

After dressing the set, I started scripting it so that it would change all party members to the swimming appearance. That took some investigation, because I'd never used a "while" command before.

I also added the tour guide NPC, also set to be swimming, and wearing the diving helm.

I created some quickie waypoints and dialogue to test it out. Next task is to create the points of interest and waypoints, expand the full dialogue, write some scripts, and place triggers and add the things to do down there.

Youtube video:

Posted Image

Modifié par Tchos, 28 juin 2012 - 11:12 .


#125
Arkalezth

Arkalezth
  • Members
  • 3 188 messages
Cool! I'm not reading the whole thread because I'd get lost in builders' discussions, but I'll make sure to play it when it's out. Is the estimate date of release still the same? (Sorry if you've already written about that somewhere recently).