The secret to finishing these incredibly comp...

February 28, 2006 by Adam in NWN2

The secret to finishing these incredibly complicated systems is to do a little bit each day and try not to think about all the work that's left to be done. I feel like a horse with blinders, ignoring all the annoying bugs so that I can finish up what I'm currently working on.

Players can now sink enemy ships and return to the world map. It seems an obvious thing, but these small details all must be done. When sails take damage, the ship slows considerably. I had to fix a funny bug where if they took more damage than total hit points, they'd suddenly speed up and zip around the map.

Theoretically player ships can be destroyed as well, but I've yet to test it. For some reason, the catapults the enemy uses are damaging my sail and not my hull.

I'd love to start in on boarding actions today, though we'll see how it goes. I still need to fix the world map spawn issues. I'd like to start introducing factions and bounties and such, so that sinking a ship is a worthwhile thing. Some surrender code would be nice too. Oh, and crew damage should happen as well. Busy, busy.

permalink| comment

It was yet another day of bug fixing

February 27, 2006 by Adam in NWN2

It was yet another day of bug fixing. I managed to get all three types of weapons working (cannon, ballista, and catapult). For awhile, the cannons and ballistas were reporting that they were out of ammo until I figured out that I'd marked them as requiring the boulders that catapults use.

I fiddled with the visual effects a bit more, making things look a little nicer. I had to keep reminding myself that this was just a prototype and I shouldn't spend too much time polishing such things. I was playing Pirates! the other day, noticing how simple their ship combat system was, but so visually beautiful.

I've been trying to walk that line between realism and fun. One example is the issue of facing. Realistically, weapons on ships had a limited arc of fire. If I were to follow that approach, though, I'd need to keep track of each weapon you buy, where you place it, where weapon mounts were for each type of ship, and so on. Instead, I may just go for a general penalty to hit if you're not broadsides.

We've also had a new modeler start doing some work for us. He's into sea creatures, which fits Dark Waters quite nicely, and has experience with some of the same software packages being used by Obsidian. With luck, we'll see some of his goodies make their way into the campaign.

permalink| comment

It's been all about fixing bugs last night an...

February 26, 2006 by Adam in NWN2

It's been all about fixing bugs last night and this morning. You can now buy ammo for the weapons you have. When in port, you can set the lead ship of your fleet. I added some QA options so you can immediately jump into the action with a fully loaded ship. These sort of time savers are immensely helpful at this point.

I also tweaked some of the models. The cow vortex was funny the first dozen times, but it eventually became a little annoying. I may end up working with the ship models some more, depending on how much time I have and how horrible things look.

I also added in the visuals for firing catapults, ballistas, and cannons, though I've only tested the first mere moments ago. Now it's back to kid watching and hunting down some coffee.

permalink| comment

The AI ship now attempts to attack the player...

February 25, 2006 by Adam in NWN2

The AI ship now attempts to attack the player ship, and sometimes actually succeeds. Mostly I'm staring at debug output, trying to track down the huge number of bugs I managed to introduce yesterday.

What I really need at the moment is to sit down and sort through a huge number of issues. I seem to be breeding bugs faster than I can squash them. I screwed up the ability to sell your ship, for example, though it's now fixed. There's still a ton of things that simply aren't working right. Some are math problems, some are simple logic issues, and a few are just plain weird.

With luck, I can get some testing time this weekend and get the combat system in a somewhat useable state.

permalink| comment

Raz finished up the shields on the ghost ship

February 24, 2006 by Adam in NWN2

Raz finished up the shields on the ghost ship. It's pretty amazing looking, with only the head and tail to go. The shields bring some nice color to the thing and for some reason I really like the chains next to the mast. One of the things I most like about this campaign is the neat new ships we're bringing to the game.

I worked hard on the High Seas system yesterday. I ended up rewriting some functions to make them more general. You can now fill your ships with certain types of crew, just like you can fill it with cargo. The AI is now making smart decisions as to what it should do, though it's not doing much about it yet. I really need to brush up on my trig.

With luck today I'll get to the firing portion. It's partially written, but needs to be redone to allow players and non-players to do it. I also want to have a better system for selecting preferred ammunition. Right now there's only one ammo type per weapon, but I'd like to introduce a greater variety soon enough. For example, grape shot does damage to the crew rather than the hull.

The official NWN2 site was briefly up yesterday. It's down again, after some issues were discovered, but we got some new images and tidbits. It looks like some nice features are making it into the game. The first is RTS-style controls as an option for controlling party members. The second is some amount of control over the GUI. Hopefully that means that I can flash up a set of buttons that says "turn to port", "turn to starboard", and "fire cannons", or something along those lines.

permalink| comment

Razvan continues to astound and amaze

February 23, 2006 by Adam in NWN2

Razvan continues to astound and amaze. The texturing of the ghost ship is coming along nicely, with the shields nearly finished. After that, all that's left is the head and the tail and that's one less ship to worry about, and a very cool one at that.

I've continued to work on the AI scripting, which is tremendously challenging. I find myself having to think back to my trigonometry classes, adding vectors and finding angles between points. When an AI decides to board your ship, it needs to figure out where you're going to be and not just where you are. Wind speed and direction gets tricky too.

There's also some tricky parts where the AI evaluates relative crew and weapon strengths, making sure you have ammunition for various weapons. I also need to add in the ability to auto-buy and auto-load crew and ammunition, as otherwise it takes too much time.

permalink| comment

The amusing bug of the day was getting the fi...

February 22, 2006 by Adam in NWN2

The amusing bug of the day was getting the first AI ship in the combat area and having it turn into a werewolf. I quickly tracked down the problem and it now turns into the expected ship type. No full moons were involved.

Yesterday was all about getting ready for the hardest part of the system, the ship-to-ship combat stuff. You can now buy weapons and ammunition, though I still want to make that process easier.

The AI is extremely stupid at this point, simply moving in a big circle. Today I need to put in the AI routines so it can figure out whether to board, flee, or simply fire away. The rules are somewhat complex, so I'm crossing my fingers and hoping it goes smoothly.

My "to do" list includes routines for determining the "power" of each ship for AI purposes, the relative crew strengths, and starting to implement the ship's weapons. With potentially multiple types of ammunition, things could get a little tricky.

permalink| comment

Well, it's now possible to transition to the ...

February 21, 2006 by Adam in NWN2

Well, it's now possible to transition to the ship-to-ship combat screen and order your ship about. It responds to the wind in a proper fashion. When you click "Turn to port", it queues up the command and executes it during the next heartbeat. This prevents the problem of rapid clicking turning you too quickly. Different ships also have a different turning radius, with smaller ones generally coming about faster.

I ran into one issue that seemingly took me forever to track down. A ship's speed is set using an EffectMovementDecrease effect, which was completely ignored. It took me forever to figure out that creatures set as Plot aren't affected by such things. After I unchecked the box, it worked like a charm.

As for today, I'd like to get the AI ships somewhat working. There's some complicated things it depends upon in order to work right, such as weapons, ammunition, and crew, that aren't in the game yet. We'll see how far I get.

permalink| comment

I thought I'd show off one of our works in pr...

February 20, 2006 by Adam in NWN2

I thought I'd show off one of our works in progress, Razvan's ghost ship that he's been texturing these last few days. It's coming along very nicely and I'm hopeful that we'll have another finished ship in our fleet before too long.

High Seas continues to get all the attention. I put in some code to allow the player to bring along henchmen and such. They're now tucked away in the corner of the map until you return to shore. I'll have to dust them off and set them into action during boarding actions, but otherwise they'll stay out of the way.

I've also started the most difficult part of the system, the ship-to-ship combat portion. Right now I have it so you can jump to the area, but that's about it. I spec'ed out how I'd like the ship AI to work. Essentially there's three strategies: Close and board, attack, or flee. The AI evaluates hull damage, crew strength, weapons, and so on to decide which is best. Of course, this is all just pencil on paper, so we'll see how long it takes to get there.

permalink| comment

I worked on two things yesterday

February 19, 2006 by Adam in NWN2

I worked on two things yesterday. The first was a rewrite of some dialog. I had initially made the ship's repair the motivator to getting the player to talk to some NPCs. Now it's authorization to buy a ship. Small change, perhaps, but it requires redoing a fair number of things.

I also got some basic NPC ship AI in. Merchant ships sail from port to port, trading their goods. Patrol ships slowly circle an island. Pirates simply wander around at this point.

I still have a bunch more to do, much of which is tied into the combat system. I'd also like some detection scripts, having patrol ships seek out and intercept players who have turned to piracy. Busy, busy.

permalink| comment

Nothing's more deadly than a Cow Vortex you s...

February 18, 2006 by Adam in NWN2

Nothing's more deadly than a Cow Vortex you say? What about an Infinite Cow Vortex?

Yes, I managed to spawn in a huge number of whirlpools when fiddling with the weather system this morning. This was an improvement over trying to spawn in an infinite number of NPC ships, though not by much. I did get everything sorted out, but it was again pretty funny.

I figured out how I want to spawn in ambient ships, filling the sea full of merchants, patrol ships, and pirates. Of course, they're not interesting yet, as they just sit there. I haven't turned on their AI at this point, but the proper number spawn in as expected.

We have a team meeting in a few minutes, so I'm going to leap into the shower and get ready to chat.

Update: The team meeting went really well. The new plan is to cut back on the overall voice recording, which was daunting in its massiveness. I think we're sticking to key dialogs and opening lines for most characters. We also have a tentative approach for texturing some of the ships, which I think is key to the whole game. Finally, we all brainstormed some ways to limit the player's access to the world. I don't want people to pull a Morrowind and sail straight to the final area.

permalink| comment

There are many dangers upon the open sea, but...

February 17, 2006 by Adam in NWN2

There are many dangers upon the open sea, but few as terrible as the dreaded Cow Vortex.

As you can see, I found a hysterical bug this morning. I put in the code for some weather effects, along with the basics of the damage system. When testing it out, I found that the whirlpool periodically flashed a floating cow above its surface. Where it came from, I still have no idea. It's not part of the creature model or the visual effect. I suppose it's just one of those mysteries of the deep, like the Bermuda Triangle.

On the plus side, the basics of the damage system are there. You can head out into a storm, take sail damage, return to port and get it fixed. Of course, there's currently no consequence of taking sail damage, or hull damage for that matter. Hopefully today I can sneak in a bit of that.

If I get some time today, I'd like to also start looking into spawning ambient ships, setting up trade patterns, and the like. I'm still thinking about the best ways to handle factions, which will be fairly core to the game.

permalink| comment

I woke up at the crack of dawn this morning, ...

February 16, 2006 by Adam in NWN2

I woke up at the crack of dawn this morning, drank a cup of tea, and made some tremendous progress on the High Seas game. You can now purchase multiple ships and head out to sea. The lead ship is under your control, while the others in your fleet follow dutifully behind. It's fairly fun to move from island to island, a row of cargo ships trailing my pirate raider.

The cargo management is now about as streamlined as it's going to get. You can buy and sell cargo in bulk. I think the only thing that remains is putting in some nice informational messages about how much cargo space you have, the relative prices of cargo, and so on.

I also worked on the deluxe version of Firestarter yesterday. I fiddled with the sound files and am nearly done. Unfortunately a bit of miscommunication on my part lead to some dialog not being recorded, so I'll be circling back with the actors to record a few more lines.

As for today, I'll see if I can start introducing concepts such as factions and non-player ships. I might also throw in some weather, such as whirlpools and storms. I need to put in some things that'll cause ship damage in order to get the repair system working next.

permalink| comment

I was fairly busy with family things yesterda...

February 15, 2006 by Adam in NWN2

I was fairly busy with family things yesterday, though I still managed to put in some time on HighSeas. You can now sail into port and ask to be filled up with a single type of cargo. It'll load up every ship you own in port, which is neat, and load it all automatically. The next obvious step is to be able to sell everything.

Since I'm putting so much effort into owning multiple ships, I'd like to work on a "caravan" approach where a player can sail out and bring all his ships in tow. For those who have played Pirates!, it's a familiar concept and hopefully works well. I'll probably put a cap on how many ships a player can own, otherwise things start getting pretty crazy.

permalink| comment

Yesterday was fairly busy, with seemingly end...

February 14, 2006 by Adam in NWN2

Yesterday was fairly busy, with seemingly endless time spent on emails, chats, and other coordinating efforts. I did manage a few more development pushes towards the HighSeas system.

The smallest was probably some custom content and visual fiddling. There's some nice mini-map icons and I fixed the blocking part of the ocean tile so that the sky didn't show through the depths of the sea.

In terms of scripting, cargo management is becoming increasingly streamlined. You can do mass unloading and loading of cargo from all your ships in port, though there's still some funny little bugs to be squashed. I'd also like to allow for mass purchases and loading of cargo as often players will sail into port, expecting to fill their holds with the best priced cargo.

Finally, I got the last of the voice clips for the "deluxe" Firestarter module. I'm probably not going to get to it today, as I'm spending time with my family for Valentine's Day, but with luck I can put it all together by the end of the week.

permalink| comment

I'm a fickle, fickle man

February 13, 2006 by Adam in NWN2

I'm a fickle, fickle man. I threw out the previous map tileset and islands in favor of a completely 3D set of islands and a simple tileset of just water. The main advantage is that I can make any size map I want, putting down islands as I see fit. The total look is closer to what I'll be doing for the final version of High Seas, since I'll try to use their built-in terrain heightmap stuff. As an added bonus, it's actually much smaller. The total size of the hak pack is a little over a MB, much reduced from the 8 MB size of the graphics-heavy version.

I converted all my islands, trying to get some nice variety in the mix. I may add a few more if the situation calls for it. I also made some tiny placeable trees and buildings just to give the rather barren islands some life of their own.

Not to be content with just doing custom content work, I started in on some complex scripts for the cargo management. My goal is to make it easy to unload, buy, and sell cargo. The challenge to the player should be on the sea, not on the docks.

Finally, I tested out the overall world a bit more, making two islands you can trade between. The basics are working, though there's still lots of work to be done.

permalink| comment

The last two days I've been knee-deep in scri...

February 12, 2006 by Adam in NWN2

The last two days I've been knee-deep in scripts, doing some fairly wacky things. As of this morning, I think the hard parts are over and all my crazy experiments actually ended up working.

You can now buy and sell cargo just like anything else from a store. The hard part was making it so that the prices of different goods varied from store to store (since there's no SetPrice function). I ended up creating template items on the dockmaster that was copied over to fill the store with correctly priced items in the proper quantity.

The second tricky part was creating a ship's hold where players can put their cargo, as well as other miscellaneous goodies they might pick up on their adventure. I ended up creating a store for each ship they own, and carefully adjusting the markup so everything costs a single gold piece (which is refunded after every transaction). The only gotcha is that you can't currently store zero-cost items, though there isn't much that costs nothing in the game.

I have tons of things to do yet. I'd like to auto-unload and auto-load cargo, have surpluses and shortages that disrupt the normal pricing structure, simple crew management and experience, ship upgrades, repairs, and so on. I need to put in limits, so you can't stuff thousands of tons of cargo into a tiny ship. I'm also emphasizing multiplayer and thinking about persistent world support. I think I can also spawn in meeting places where players can gather on their ship to make plans in private.

Then there's the actual ship-to-ship combat, which is bound to be quite tricky. I'm trying hard to emphasize fun over realism. Keeping track of weapon placement and reload times , and incorporating that into AI routines, would probably make my head explode. I'm slowly narrowing things down to a simpler system that while not necessarily realistic, would hopefully be fun.

So, there's lots of things going on. I'm pretty happy about progress, though there's a long way to go yet.

permalink| comment

I'm simply having way too much fun with High ...

February 10, 2006 by Adam in NWN2

I'm simply having way too much fun with High Seas these days. You can now buy and sell different ships, choose a ship to sail when multiple ones are in port, and roam about the world map a bit.

I'm noodling over next steps and leaning towards implementing trading and upgrading, using an inventory-based system. There's a few tricky "gotchas". One is that I want the value of cargo to vary, so I'm using the new SetName function to display the value, while the game value is technically zero. I'd also like to treat crew, ship upgrades, and cargo in essentially the same way. That lets the player talk to a dock master and do one-stop shopping for all their shipping needs.

I'm also getting multiplayer ideas to support carrying PC passengers about. While they won't be used in Dark Waters, I'd really like to make all this stuff I'm creating useful for other modules and persistent worlds.

The other thing I want to show off is Raz's latest ship model. Things like this made me desperately want to let the player sail different ship types. It's just too cool to own a merchant cog, pirate raider, and ghost ship, picking one to suit your mood.

permalink| comment

I've been working on HighSeas again, redoing ...

February 09, 2006 by Adam in NWN2

I've been working on HighSeas again, redoing some of the basics. One of the big things I want to try is letting the player sail a variety of ships. With Razvan cranking out a model a week, it seems a shame to stick the player with a single ship for the entire campaign. Of course, that ends up having all sorts of other implications, so I've been fiddling to no end. Where things stand at the moment is that the player can walk out to the docks, sail off to the main map, and sail back. That's it.

I have run into some amusing bugs along the way. The first was when the player turned into a boat and didn't go anywhere. I wanted to caption this screenshot "Old Man Plays With Model Boat" or something.

I also put in a bunch of work on the Woodhaven arena. The AI was acting dumb and it took me awhile to figure out what the problem was. For a long time, the AI would turn into a boar, no matter what, and I spent endless combats turning into a dragon and squishing pigs. Of course, now that I've fixed the bugs the AI is a bit too good. I may have to introduce a random element so that the player actually has a chance.

I'm also terribly excited to hear that we may have a texture artist join our crew. There's a lot of ships waiting to be textured and made pretty.

permalink| comment

I was amazingly prolific yesterday

February 08, 2006 by Adam in NWN2

I was amazingly prolific yesterday. In theory, the Dominator and Woodhaven quests are scripting complete. Now, that doesn't mean they're close to done. They still need lots of testing, polishing, and various details. I did manage to add in several dialogs, lots of scripts, some extra NPCs, and the like. The next step will be testing everything.

I'd like to get at least a minimal version of High Seas thrown together so that I can move from island to island. Right now I have to use the QA item to leap from place to place.

permalink| comment

I was a very good boy yesterday and finished ...

February 07, 2006 by Adam in NWN2

I was a very good boy yesterday and finished up all 148 dialog clips for the Proctor and sent Jules off a note requesting a handful of "do-overs". I now have the greatest respect for voice actors and the folks who do sound processing. Tough stuff. The good news is that it turned out really well and I'm excited to hear it in the game. The next step will be attaching all the sound clips to the dialog, though I may end up delegating that.

I've been fiddling a bit more with HighSeas, popping our one textured ship model into the game. It still needs some tweaking, but looks fairly good. I'd also like to work on the island art a bit more, pretty things up a bit.

permalink| comment

Fiddlings continue, however slowly

February 06, 2006 by Adam in NWN2

Fiddlings continue, however slowly. I resolved a funny bug where my exciting psionic combat was halted by the two psionic projections avoiding combat and just hanging out. A quick faction fix solved that one, though it took me awhile to track it down.

I think I'm liking the fact that I've integrated the various subquests together as it makes it easier to incorporate certain items, scripts, and systems. On the down side, everything takes longer to open and compile.

Hopefully today I can focus on finishing up Dominator and Woodhaven, as well as the Proctor dialog sound processing. No rest for the weary.

Razvan continues to be a modeling maniac. I awoke this morning to find four new ship images sitting on the discussion boards. Words cannot describe how amazed I am at his prolific modeling talent.

I'd also like to thank everyone who voted on Firestarter. It's doing quite well in the rankings and I've been reviewing some of the comments as well. It's nice getting some bonus QA work out of the whole thing.

permalink| comment

My map project continues

February 05, 2006 by Adam in NWN2

My map project continues. I've whipped up some appropriately colored islands, recycling my old hand-drawn islands. It works well enough for now, though I'll probably end up tweaking it even more, knowing me.

I worked more on Woodhaven. It turns out my peaceful option wasn't working properly. After a bit of tweaks and the addition of a new magic item, it seems to be working again. Now the peaceful option is relatively easy for the clever player.

I'm also starting to work on integrating all the various quests together into the main module. I'm starting to feel pretty good about the overall progress, though the end of the module is still quite a ways out. There's still a bunch of quests that are just ideas on paper, not to mention endless polishing and debugging. Still, it's nice to feel like progress is being made.

permalink| comment

Periodically, I go a little crazy

February 04, 2006 by Adam in NWN2

Periodically, I go a little crazy. I ran across an antique blank map which was covered by the Creative Commons license. I ended up downloading the whole thing, chopping it up into 42 512x512 pieces, writing a script to generate 42 tilesets, and getting it into the game. After a dozen or so game crashes, I finally got it working.

It looks beautiful, though I don't have any islands or such to throw on the map. That'll be the next step, making placeable things to decorate the place.

I worked more on the Proctor sound files. Some of them are hysterically funny. To give you the scope of the thing, one dialog in the game ends up having nearly 50 voice clips, each one which has to be cropped and cleaned and named properly. I think it'll be worth it in the end.

permalink| comment

I've continued to fiddle with Woodhaven a bit...

February 03, 2006 by Adam in NWN2

I've continued to fiddle with Woodhaven a bit more. I decided to tighten up the forest areas, dropping one and making the other much smaller. It just didn't seem to make sense to have the player wander around quite so much. With NWN2, I may change the way the layout works, but for NWN, this seemed a better approach. I also decided the arena fights were too long, so I ended up giving the creatures fewer hit points. That increases the random element a bit, but I think that's okay. I also want to make the bigger creatures more hard-hitting, perhaps doubling the amount of damage they do. Right now they all seemed more evenly matched than I'd like.

I worked on the "spirit harvesting" code a bit as well. The image of the day is from me, er, harvesting a poor little pixie. There's less violent ways to do it as well, fortunately.

I spent way too long working on sound processing yesterday as well. I think it's going to be one of those things I need to pass to the experts, but I'm halfway through this batch. I suppose it gives me a greater appreciation for what they do as well.

Firestarter continues to do well. Should I be the one to be crowned with the Bioware wool cap, I shall take my solemn duties quite seriously. Whatever they are.

permalink| comment

The folks over at Penny Arcade made up a comi...

February 02, 2006 by Adam in NWN2

The folks over at Penny Arcade made up a comic related to the writing contest. It's pretty funny, but very much not appropriate for children under twelve.

Firestarter continues to get votes, through some strange and magical process. It's weird seeing most of the votes very high and a few quite low. There's been a lot of discussion on the boards as of late as to the flaws in the voting system and how easy it is to manipulate things. Ah, well.

Getting back to the project, I spent a long time yesterday processing the sound files for the Proctor character in the first moudule. It's amazing how much time can be spent fiddling with sound files, taking out funny breathing noises, adjusting levels, and so on. The good news is that it's turning out rather well and makes the character quite interesting.

I also worked more on Woodhaven this morning, fixing the spawn system and assorted scripting bugs. Today is likely more sound and scripting, hopefully wrapping more of it up.

permalink| comment

Work on Woodhaven continues

February 01, 2006 by Adam in NWN2

Work on Woodhaven continues. I have one big dialog remaining, and I'd like to put in some assorted townsfolk dialog as well. As I found out while testing this morning, I have many, many bugs. I didn't even get to the actual arena fight, though hopefully that's not too far off. Hopefully today I can make a serious push to finish up the area.

I wanted to drop another quick note about Firestarter. It's available for download and voting. With 300 entries in the contest, I suspect it'll be hard to have a fair vote. I randomly sampled ten and most have no votes, a few had one vote, one had two votes, and a lucky one had six votes. Hopefully the situation will improve as the week rolls on. It looks like Firestarter has six votes already, for which I thank everyone.

I talked with the voice actors more yesterday. It sounds like we're going to be releasing the deluxe version of Firestarter in a few more days, depending on when people have time. It was very much a rush recording job and I'm happy people were able to do as much as quickly as they have so far.

permalink| comment

Older Posts

Links

Dragon Age
Dragon Age Central

Interviews, etc.

Why We Fight

About Me

I've won multiple awards for my Neverwinter Nights modules, which I've been working on since the year 2000. In the real world, I'm a web developer for a healthcare organization. If you have any questions, feel free to contact me.