We’ve wrapped up another good week here at CSE. I know we often start out our weekly updates with such good news, but I can promise you we will be open and honest, as we have always been, next time we have a crappy week. *Cough*pollen*cough*. As with some of our previous updates, we’ve got more gameplay-oriented highlights in this week’s Top Tenish, as we said we’d be turning our focus. We’re slowly moving from some of our system needs for Beta 1 and into more gameplay, which has, quite honestly, been bringing smiles to the team; we’ve started feeling more like we’re making a game and not a tech solution. One of the highlights this week was Ben taking resources from an object in the world, running it over to his Vox, and going through the process of making a wood block to build with. That one sentence represents so much hard work over the past weeks and months, it’s hard not to smile over it. We’ll keep having these moments, and more of them, as we get closer to Beta 1. For those of you who missed our live stream update earlier today, you can catch that HERE. This week, Ben and I (Tyler) give you the TL;DR of the week, with plenty of design-oriented questions at the end. With that said, let’s move into the Top Tenish and the User Stories. If you want to skip to the pictures, start scrolling down!
For the week, here’s the highlights, in Top Tenish form:
WIP – Tech – Archery animation support: Andrew has begun working on the animation system specifically for archery, which is slightly more complex than just hooking the animations up. The archery design includes phases such as nock and aim, so there’s a bit more planning involved here he’s tackling. Once the system is working, Scott can begin a first pass on the animations.
WIP Siege Engines: After lots of work from Matt, several code reviews and discussions, we can spawn an Arthurian siege engine model in the world with a slash command and play with the aiming. Next up is a fairly extensive list to make it an item, which gains us crafting, Realm variations, supports persistence, networking, packing and unpacking, and the ability to fire it using the ability system.
WIP – Seattle office move: We’re up and running in an office! We have windows! There are trees! We have a dog park next door! There’s internet, Ikea road trips, Fry’s, etc. Everyone is happy to be together and moving forward efficiently as a team. Back to work!
WIP – Tech – Particle performance: Tyler put together a VFX testing map for George and Dave to check performance on the new system and effects that have been added. George said it was an “excellent” test, one that made it clear where the bottlenecks are for further performance improvements.
Tech – Crafting Blocks: Christina updated blocks to use the recent updates to the crafting system. Blocks can now be crafted in the Vox using gathered resources and recipes, similar to item recipes, then placed on your plot. Yesterday, Ben was able to complete the entire loop from gathering resources to placing a finished block. This is a smile-inducing moment, as it pulls together several of the systems we’ve been working on. Next week, Mark will get “item fever” and start adding lots of lots of substances to the game.
WIP – Tech – Items as containers: Because siege engines need to hold ammunition, we set up item containers. These are tied to stats, so a more powerful ballista could, hypothetically, hold more ammo. This will eventually extend to player inventories, so you can place items into a container, in your inventory. Andrew pointed out this morning that because our items are now set up so well, this task has been relatively easy.
WIP – Tech – Player Inventory UI: This week, we started working on dragging and dropping items into inventory slots. This makes equipping items much easier, as we’ll be eventually be able to do things like drag weapons and armor pieces to specific slots on your character. Like a real, honest-to-goodness game!
WIP – Updating Animation Assets: At the end of last week, we got to a good point with running and jumping. Scott doesn’t currently need new features from Andrew in order to improve old run cycles, and can add in new variations that look better at faster speeds, instead of speeding up pre-existing animations (like so many games do). Sandra finished off a “holding torch” idle, with a generic swing for testing hookup to our system, and is working on high/med/low swings for polearms.
WIP – Environment art: This week, we began working on adding in more assets to the first forest assets Tyler ever made on this project, to make it feel even more alive. This is something we did with the pine forest to, in part, test the frame rate. While it was successful, there’s still plenty of room to improve. Dionne finished several cool new tree variations, a couple of neat-looking tree stumps, as well as some useful ground clutter branch assets. In the queue:
Mini bushes – for small ground clutter variation, easily reusable with different textures.
Dead trees, logs, etc.
More branches, clutter, etc.
Environment VFX and lights.
WIP – UI Icons: Work continues in the land of icons for our Beta 1 UI needs. James is working through a list of armor and weapon icons and crafting materials for the inventory UI, with class icons on the back burner.
WIP – VFX feature testing and assets: Mike continues to test and give feedback on new VFX editor features, as well as to create, or figure out how to create, some of Tyler’s environment requests. This week, he’s working out fluttering wings and “zig-zag” movements with hovers for the insects, as well as updating old assets like falling leaf assets and moths fluttering around candles using our new shader. Some of his failed butterfly experiments may make it into the game as new and wondrous flying critters, even if they look a bit drunk!
12. Art – TDD Scorpion: Jon finished off the TDD variation of the scorpion siege engine and some ammunition models. Mike will hook some temp VFX up to these for testing.
A solid week has been had by all. Note that our Top Tenish this week really shows that shift in focus we spoke of, from engine tech to gameplay. For a more detailed look at the last two weeks, we have our bi-weekly User Stories update:
1 new card with 3 completes.
As a Backer and Developer, I’d like to see increased visual fidelity and improved performance in the dense test forest.
Create additional tree variations. – Complete
Create fallen tree stumps with Realm variations. – Complete
Trees: Create Realm texture variations. – Complete
Re-add falling VFX leaves to trees. – Complete
Mushroom Realm variations – Complete
VFX: Errant bugs flying about. – Complete
VFX: Errant bugs flying about – glow version. – Complete
As a Backer, I’d like to play in new biomes that change according to Realm ownership. – Biome 04
Arthurian – Create ground texture sets. – Complete
Arthurian – Create grass and ground cover assets. – Complete
Arthurian – Create small to medium assets. (Bushes, rocks, etc.) – Complete
Arthurian – Create large assets. (Trees, rocks, etc.) – Complete
Viking – Create ground texture sets. – Complete
Viking – Create grass and ground cover assets. – Complete
Viking – Create small to medium assets. (Bushes, rocks, etc.) – Complete
Viking – Create large assets. (Trees, rocks, etc.) – Complete
TDD – Create ground texture sets. – Complete
TDD – Create grass and ground cover assets. – Complete
TDD – Create small to medium assets. (Bushes, rocks, etc.) – Complete
TDD – Create large assets. (Trees, rocks, etc.) – Complete
As a Backer, I’d like to know about smaller changes that don’t have their own user story.
Move into CSE Seattle office. – Complete
Add SceneDebugDraw to allow for debug-only DrawLine/DrawBox/DrawBounds helpers. – Complete
Prevent jumping from desyncing movement with terrain. – Complete
As a Backer, I want to be able to own a plot of land and build within it.
Use materials to craft blocks. – Complete
As a Developer, I would like easily searchable server logs that are the front line of finding problems.
Task logging contexts, including updater actions. – Complete
As a Developer and Backer, I’d like to see improvements in memory usage and threading.
Allow safe pointer to be copied around via move semantics and pass ownership. – Complete
As a Developer and Backer, I’d like to see improvements in lighting and rendering.
Adjust particle alignment in geometry shader. – Complete
Provide more control over velocity inheritance. – Complete
As a Backer in Beta 1, I’d like to play as a Crafter with basic gathering and crafting mechanics for testing.
Repair functionality for Vox. – Complete
Add job for building blocks in Vox. – Complete
Craft multiple items at once. – Complete
Apply position offsets only to the initial position. – Complete
As a Backer in Beta 1, I’d like to be able to pick an item up off the ground, put it in my inventory, and if applicable, equip it.
Items and Equipment:
Item components which have no saved instance data do not save an empty component out to the database. – Complete
Store used repair points and durability points in item durability component. – Complete
Container support for items. – Complete
As a Developer, I’d like to prototype various combat animations to support future system improvements during Beta.
First pass – New travel run locomotion to better support look and feel at faster travel speed. – Complete
Second pass combat in-place and forward jumps – prep/loop/recover/fall. – Complete
Second pass travel in-place and forward jumps – prep/loop/recover/fall. – Complete
Left hand holding torch idle. – Complete
Generic left hand, mid, torch swing. – Complete
Torch fidget. – Complete
Create Torch SFX asset. – Complete
Testing of multi clip functionality and travel velocity setup in animation master spreadsheet. – Complete
As a Backer, I want to seamlessly move between islands and zones without being aware that I’m moving between different game servers.
Add zone name to UI. – Complete
Portal teleports directly to linked portal. – Complete
As a Developer, I’d like to have a clear visual design for the UI of Camelot Unchained.
Beta 1 version:
Second pass health bar styling. – Complete
As a Backer in Beta 1, I’d like to be able to further personalize my character through the use of the Banes and Boons system.
Add Traits settings file with min/max points and required/optional general traits. – Complete
As a Backer in Beta 1, I’d like to hear ambient Realm-based music during loading island transitions.
Additional post log-in music tracks. – Complete
As a Backer, I want an animation system that blends multiple animations together, and allows for immersive and fun combat.
Use inplace/forward jump/land clips. – Complete
Move per-region blend values and any/full masks into BoneMovers. – Complete
Coming out of jump, sync the running animation cycle to the animation landing pose. – Complete
Call SetNewAnimSet on BoneMovers whenever their PoseGenerator changes. – Complete
Scales play speed to sync to the walk speed. – Complete
As a Backer in Beta 1, I’d like to use a siege weapon.
Model, materials, rig, siege weapon – TDD. – Complete
Model, materials, rig, siege weapon – Viking. – Complete
Add InteractionComponent for representing game entities that can be interacted with by the player. – Complete
Add bone aliases specific to siege engines. – Complete
Create basic scorpion ammunition models, per Realm. – Complete
Entity control and subscription components on the server. – Complete
Input/camera redirection on the client. – Complete
As a player, I want to view a character UI that shows me my stats, allows me to swap out my equipment, organize my inventory, and see my collection of crafting resources.
Mock-up created. – Complete
First Pass UI layout. – Complete
Load items through the API. – Complete
If you’ve been keeping track, you can see we’re making good progress, compared week to week, even despite the office move in this week by our Washington crew! With that complete, and for those of you who took the shortcut to art and scrolled down, let’s get into this week’s pretty pictures, shall we?
First up, we have a link (click the image below) to some of Scott’s animations, representing different timings of the prepare and recover phases of a swing. To provide further detail, because your abilities are created by the players out of different components, the timings will vary. To compensate for this in a way that not only looks better, but also visually conveys the power of an incoming attack, Mark came up with a solid idea to mix in longer preps and recovers. Speeding up or slowing things down just didn’t work as well, neither visually nor for the design of the game, and simply wasn’t good enough for Camelot Unchained®. There are other fun ways we can use this concept, which we’ll talk about later when we’re in Beta.