Hey Abbot! – Friday, February 28th, 2020
Folks,
It would be disingenuous of me to say anything other than that the last four weeks have been tough ones for me and for CSE. Three weeks ago, I told you all that our commitment to Camelot Unchained had not wavered one bit. Rather, thanks to the work we’ve been doing, it has strengthened, and we remain committed to delivering the game to our Backers. Today, in my livestream, I told you about just how strong that commitment was and is today. And as the first evidence of that, here’s our Top Tenish list for the month of February.
Top Tenish for February 28th, 2020
- WIP – Tech – Cherry Keep Updates: Gameplay fixed siege engines damaging buildings and issues with NPCs dying while controlling siege engines and building damage causing tons of error spam and noise.
- WIP – Tech – Rendering improvements:
- Faster scene queries. Andrew designed a new algorithm for our scene queries. It gathers all visible and shadow data in a single operation, resulting in a 40% performance improvement in the most expensive phase of rendering when there’s a lot of characters or blocks around. He also worked on improving interactions of UI and rendering for a flat 3 milliseconds off the top of all our frame times. When you’re by yourself in an empty field, framerates exceeding 350 FPS are now possible.
- Faster transparency rendering. Andrew converted our Adaptive Order-Independent Transparency buffers to use Z-ordered tiles (https://en.wikipedia.org/wiki/Z-order_curve), resulting in a 5-10% FPS improvement in scenes with many layers of transparency.
- WIP – Tech – Scalability: On the server side, we have converted a lot of very old database queries to run asynchronously. This greatly improves throughput and scalability of our WebAPI endpoints. Lastly we fixed a number of hitch and deadlock issues. We are still working to resolve others.
- WIP – Tech – Overmind: New features are planned and being implemented to support the in progress RvR scenario. Improvements include scripting support for keep lords, plots, and item related upgrades. Improved dev tools to allow faster designer iteration on scenario scripting has also been in the works.
- WIP – Tech – Item model swap: We added the ability for an item to change the way it looks via scripting.
- WIP – Tech – New Scenario
- Since Camelot Unchained is an open world RvR game, we need to start running open world style tests. Up to now we have run most of our testing in small scale, focused purpose-built scenarios. These scenario zones have been built to host large scale testing, or specific feature testing, but haven’t really approximated the gameplay we expect will take place in the final game. The zone we are now working on delivering, is for the first time going to feature a lot of the basic mechanics we want for the final game, and will not run as a time limited scenario with contrived rules and victory conditions, but will remain available persistently for the duration of our tests with no end or reset conditions present.
- The current design for our new RvR zone is a fairly large island, roughly 8 kilometers across, with starting plots for each Realm located roughly 2 kilometers from a large castle plot located near the center of the map. There are also 7 tower plots located around the map, with 2 located relatively close to each Realm’s starting plot, and 1 more neutrally located near the center. Each plot will ultimately feature a player created building, designed and constructed by members of the Builder’s Brigade, though some buildings may be reused on multiple plots, depending on how many submissions we receive. Building sizes range from 128×128 for towers, to 512×512 for the central castle, which should result in a pretty impressive building, given the one million block limit currently imposed, which may later be adjusted subject to technical limitations discovered in testing.
- One important new feature not previously seen in any of our prior CU scenarios, is the addition of Keep Lords, along with other defensive NPCs to help support players in defense of each plot. As in several other RvR games, killing the Lord will at present, result in capture of a plot, meaning a change of ownership to a new Realm, and the spawning shortly thereafter of a new Lord and other NPCs associated with that Realm. These NPCs will likely start off very basic, but as time allows we will be improving them, to make them more powerful than typical player characters, and to equip them with special items and abilities, to make them much more of a challenge when attacking an enemy plot.
- As we have demonstrated in previous scenarios, the buildings on each plot in this new zone will be fully destructible. This means we will be providing siege weapons, right now for free at each Realm’s home spawn point, so that players can deploy and use these weapons to knock down walls, break down doors, and gain entry into enemy structures. These structures will also take time to rebuild, so after a building takes a lot of damage, whether or not it is captured by another Realm, it can be expected to take a while before it returns to a reasonably defensible state.
- Another important feature of this new zone, will be triggers using our Overmind scripting system, that will allow us to send messages letting players of all Realms know which plots are under attack, and when plot ownership changes hands. This will give players an idea of what is going on around the map, and offer some guidance as to where players can go to find both allies and enemies to do battle with.
- Currently the zone itself has been blocked out roughly in our terrain editor, and is able to load up on a server and have players run around, battle some placeholder NPCs set up as keep lords, and capture plots. Our art team hasn’t started on replacing the placeholder art yet with something real, but is starting to piece together concepts for what the zone will eventually look like. On the programming side, there are already features ready and implemented for things like spawning NPCs and capturing plots. There are still a few more features left to go, regarding things like spawning in siege engine givers, and having players drop parts of their souls when they die, as both a death penalty and bonus for killing enemies. The biggest hurdle at this point is the lack of pathfinding inside block based buildings, which is still a work in progress, but hopefully something that will be through code review and ready to test in our main branch as early as next week.
- After all these pieces come together, there will doubtlessly still be quite a bit of design and iteration to do, in order to take all these separate pieces, and assemble them together into something compelling and fun. The plan of course is that everything will happen to come together nicely and we will be able to quickly begin holding public tests as soon as as all the feature checkboxes have been marked off, but there is always the chance that not all the pieces of the puzzle will play nicely together at our first attempt, so we have to allocate some time to smoothing out all the rough edges once everything is up and running.
- WIP – Tech – State of Pathfinding: Lee continues to develop our custom 3D dynamic navmesh system, with particular focus on interior building elements and similarly complex constructs. His recent victories in solving some very difficult issues with multi-level structures have brought us closer to having a fully functional system for NPC pathfinding in our arbitrarily complex CU environments with user-created structures.
- DONE – Tech – Skirt rendering fix + 2 bone skinning upgrade: MikeD fixed a long-standing issue with character LODs in which lower LODs caused parts of the character geometry to be associated with the wrong bones in the animated skeleton, resulting in some pretty bad visual artifacts as the character moved through the world. This was especially bad with auxiliary body elements like skirts and capes. This “skinning” fix includes new support for having 2 bone influences per vertex in the mesh, whereas previously only 4- and 1- bone skinning was supported. This also provides a nice optimization for the rendering of near-camera characters, in that they no longer need to suffer the expense of computing a full four bones of influence per vertex. The final result is players will see smoother transitions as other characters on the screen change LOD levels as a result of becoming closer or farther away from the camera.
- WIP – Tech – NPC Updates on Defend Spawn Position: New improvements allow for overmind scripted controls of where to NPCs will defend as well as improved aggro controls to allow defining when an NPC will drop targeting and return to the defense location.
- WIP – Art and Tech – Dragon Implementation for CU (Models and NPC Functions): The Wyvern is in the works as Jon is currently in the high poly stage and concept art for the material variations are underway. Paired with the new CU scenario we are getting some realm specific dragons on hand as part of the experience. To do so, Spidey has been looking at getting dragons up and running as NPCs. Dragons currently have a client effect for ambience, but now dragons will be synchronized as it becomes a full NPC entity. This is paving the way for them to be able to be script controlled by the overmind as well as becoming combat enabled entities.
- WIP – Tech – Gameplay Updates
- Updates to current support characters
- Supports got some much needed love this month from the gameplay side of things. Anthony has been driving significant improvements towards how songs currently handle themselves, as well as how Dynamic components interact with song abilities. These changes address a few notable bugs and problems players were experiencing:
- Song effects should start and stop much more consistently than before
- Players should see less UI spam from flytext for starting songs
- Flytext for songs starting more accurately describes what is happening
- Songs with dynamic components should have their effects stick around the correct amount of time now, without interfering with any new songs started and without getting stuck on forever, or only partially carrying over
- Instrument components are now obtained from the equipped instruments themselves, much like Mage’s foci, and instruments are required to be equipped
- Unfortunately stamina costs for various interactions between song components are still going to be wonky and not quite correct. This is caused by the somewhat unique expectations for how these parts are intended to interact. There is a potential fix for this, but there are warranted concerns. Fortunately this fix may prove to be unnecessary, as there are some future changes coming down the pipe that will make it irrelevant…
- Those changes are channeling! Matt has provided a lot of the structure for supporting channeled abilities. There’s some more work to do to get that tech fully fleshed out from end-to-end so that animations and FX work cleanly and we have all the little features we want to support, but once we sort that out Anthony will be converting songs over to be channeled abilities (as well as carving out some time to revisit cut components from existing Archetypes that needed channeling tech). This will be another evolution of the initial updates/fixes already done to Song abilities that should help bring them to a point that starts feeling pretty good.
- Supports got some much needed love this month from the gameplay side of things. Anthony has been driving significant improvements towards how songs currently handle themselves, as well as how Dynamic components interact with song abilities. These changes address a few notable bugs and problems players were experiencing:
- Devout Class Characters
- The devout trio is a set of classes that fill the role of hybrid healers. Each of the three classes, one for each Realm, has the potential to both deal damage, and heal allies. While their damage and healing potential is not equal to that of a pure damage or pure healing class, they excel at filling both roles at the same time, and can shift from focusing on one to the other, providing excellent flexibility in combat engagements where the emphasis of a group may need to shift from defensive to offensive and back again in accordance with the dynamic threats and opportunities that arise.
- The Devout class for the Arthurian Realm is called the Abbot. In addition to basic Life magic used for healing, the Abbot also focuses around the consumption of alcohol in order to cast powerful Radiant magic spells. One of the unique aspects of the Abbot is their Shape components, which allow them to empower themselves or allies with some of their Life or Healing Runes in order to trigger when dealing or receiving melee damage.
- The Devout class for the Tuatha de Danann Realm is the Blessed Crow. This class has a unique mechanic of deploying Cauldrons in order to relay the effects of their spells, affecting multiple targets in an area. The Blessed Crow uses a combination of Life, Death, and Spirit runes to both deal damage and heal themselves and their allies.
- The Devout class for the Viking Realm is the Helbound. Playing the Helbound is a balancing act of switching between the use of Life and Death runes, each of which empower the other. Swapping back and forth between damage and healing will yield the best results if you don’t spend too much time on one or the other. In addition to typical ranged spell shapes, the Helbound abilities also include special melee attacks, letting them apply the effects of their runes very effectively in close combat.
- The current state of each of these classes is not yet implemented. All of their initial set of traits and ability components have been designed, along with their class specific Focus items, and we have done an initial technical review, calling out any obvious difficulties of features to be programmed. Right now to the best of my knowledge, programmers and artists are keeping busy with other tasks until implementation of these classes is prioritized, at which time everything should be ready for them to begin.
- Updates to current support characters
- WIP – Tech – C.U.B.E. updates: This month, Matt first addressed several issues that were blocking the Builder’s Brigade based on the list that member Scott Florence diligently put together. Andrew worked on pushing much-enhanced CUBE building block materials. Joseph is also taking a look from an art end looking to update the cube selection pools and creating a stronger structure as we expand in the future with more selections.
- WIP – Tech – Testing, scalability, performance upgrades: Testing has made great strides. We added serialization tests for world state DB models for both Bson and Json formats in order to ensure the new caching system for world data will work correctly. The unit testing suite has grown as we are adding more tests around warbands and fleshing out the scalability of the grouping system. We’ve setup a robust and extensible load testing framework for the webapi and assorted services that we’ve already used to prove out load and improve performance around authentication, gameserver loading, and data calls. Scaling and server uptime have also been greatly improved. We’ve identified and fixed half a dozen bugs affecting gameserver cycling allowing our servers to stay up longer with fewer issues, load zones more reliably and start and stop scenarios more reliably. We’ve added redundancy to our patcher web servers and resolved several issues with scaling them which improves patcher uptime. And lastly, for performance, there’s a new client resource for status data to help take pressure off the web API server.
- WIP – Tech – Crafting update: Mark has completed his review of the current state of certain aspects of the crafting system. Work on the first-pass implementation of infusions is complete. Balancing of the infusion’s values is slated for next week. Work has begun on what MJ is terming the RGB system. More details to follow on that. Work has also begun on a first-pass implementation of Soul Shards in the crafting system. A longer update on crafting will be in this month’s newsletter.
- WIP – Art – Lighting – Adjustments to lighting are underway. You may see a difference next you see Cherry Keep with newly made adjustments.
- WIP – Art – Materials – Fixes and Updates: With the improvements to material rendering we are updating many assets to correctly work with the new tech. All characters and current armor pieces have gone through an updated pass. Environmental asset improvements are under way as well. From Rocks to Trees, we are making not only fixes but upgrades to make for stronger looking lands as we move forward.
- WIP – Art – Animation – Not only will you notice the new materials on your realm capes but animation has made fixes to capes and skirts. Animation team has also been making refinements on movement sets and various other character animations.
- DONE – Art – Siege: Projectiles now have updated models and with a VFX refinement pass.
- WIP – Art – VFX: Not only is refinement work being done on the siege projectiles but fixes to player abilities VFX also can be found, such as the TDD Druid Primal Chaos ability VFX.
- WIP – Art – UI – Branching off from the patcher we in art are in progress of cleaning up character creation UI assets. This includes new backdrops and upgrading various other old art assets. CSS updates courtesy of Mr. Koo are also part of improving Character Creation. The team is fired up with everything planned for CU and the art team is reflecting that in a fresh new Illustration piece for the patcher.
- WIP – Art – Wyvern The Wyvern is in the works as Jon is currently in the high poly stage and concept art for the material variations are underway. Paired with the new CU scenario we are getting some realm specific dragons on hand as part of the experience.
- WIP – Art – Devout Class – Concept is underway, designing the weapons and items to arm your Devout class character.
For art this month, we have many gears in motion. Here you can see some of the progress in this newest screenshot, vs. an older shot of the Cherry Keep Scenario.
Capes got fixes with updated materials, as seen below in this TDD cape, which also has improved animations.
C.U.B.E. is getting some love, with not only updated materials but new options coming down the line.
In the works: A new creature for the skies! Jon has been making great progress on this Wyvern.
Work has begun on concept art side for the Devout classes. A peek here at some early concept art, with a bit of flair for Arthurian Abbot Crosier staves.
The UI is also getting some love, with function and visual improvements in the works. New illustration work rises, coming to a CU Patcher near you!
We’ve been talking about the new scenario that Ben is working on for the last few months. Here’s a quick overview map of what it will look like. Might look familiar to some of you!
Today is a sad day for us, as this marks Max’s last update/newsletter here. As I said in today’s livestream, Max is leaving beautiful downtown Fairfax, Virgina to move back to California and start a business with his father. As sad as we are to see him leave, we are happy for him and his family, who will now get to enjoy each other’s companionship on a daily basis, just as we were able to. And to commemorate his departure, we created this piece of art for him. He’ll always be part of the CSE family, even if he’s in even-sunnier California!
And with that, I say thank you, again, to all of our Backers. I hope that the Top Tenish and our efforts will prove not only our dedication to Camelot Unchained, but, even more importantly, our dedication to our Backers. We want to earn back your trust; I hope today was a good start.
Have a great and safe weekend, all!
-Mark