Experience the epic story of Sareth, destined to become the Dark Messiah but this time with the help of your friends. Slay monsters, fight over Leanna or Xana, but most importantly choose to fulfill or reject your destiny. Buckle up for a game experience better than you would've thought alone. Persistent skills, campaign saves, new spells, and new features! Once you've done that, keep the party going with custom levels.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

An Update In Motion

News 4 comments

Every time I do an update I'm excited, because if you look back at what was accomplished over the years you really get to see the amount of progress made. With this update, there are a bunch of visual upgrades that have been worked on, making it the exact type of reflective hype. I hope everyone enjoys it just as much as we do!


SURPASSING THE MULTIPLAYER

It's a bold statement to say that the progress we've made as a team has already went ahead of the multiplayer component of this game. The definitive proof comes from the animation system in place, which you'll see a huge showcase of just a few paragraphs down. This new animation system has full support for pose parameters and aimlayers applied to the player model, meaning we can actually reflect where people are aiming (something you want in a multiplayer game) and more. We also have plans on upgrading a bunch of other features that exist in the multiplayer that just make sense to bring over to co-op, for the sake of completeness and respect. On that idea, you'll see some incredible things by Riddick3 in regards to new, custom animations that will connect the original vision to our adaptation. I won't say much here because it's really all in the videos later, but that's the mentality we are having as we move forward.


STANDARD SDK PROGRESS REPORT

SacredAI has been refocusing the priorities to move to the client. This is an important step, because the only way to get fully custom content is for both realms of the game to have access to the SDK. When it comes to making the mod, the majority of the changes needed were on the SERVER side, meaning the SDK was not giving too much attention to the client. Since we're all about visuals on this update, we changed that. Here's a brief word from the man himself:

Starting to get the client-side a bit more now so I figured its time for an update.

Firstly, the C_BaseEntity class is coming along well. I have completely mapped the virtual table and am starting on the properties now. Interestingly enough the property tables on the client side are significantly bigger, almost clocking in at double the size of the server CBaseEntity class, which is about 3000, while the client class is at nearly 5000. Now I'm not too sure what properties are the main culprits for this massive size jump, but I believe it might be due to some position calculation. We'll come back to this when I know more about it.

One of the big differences between the client and server is in how the virtual tables are inherited. On the server, the new class would simply 'absorb' the inherited virtual tables and then add its new virtual functions to the end. On the client however, it actually creates its own virtual table and then uses a different virtual table pointer to reference the inherited class. This makes the first 4 properties in our table actually virtual table pointers (And makes figuring out which function I have just that little bit harder). Here's what this looks like in IDA, our reverse engineering software:


Now This creates some interesting relationships when functions in these inherited classes try to reference properties in the main class, and they show up in IDA as this:


That minus 8 is actually the function returning to the main virtual table (which is at position 0). This is likely going to cause some issues when I get some structs setup for C_BaseEntity, and I'm actually interested to see how IDA attempts to handle it, but we aren't too worried as these - references only occur in the inherited classes and there is a minimal enough amount that it's ignorable for now.

While I was mapping the virtual table I spent a lot of time digging into functions and naming other functions within them to get a sort of hierarchy going, I did this for 2 main reasons: one because I will have to, at some point, do it anyway so hey why not now, but also so I had an easier time finding out which functions they were calling. This was something I originally started doing a little bit in the CBasePlayer class but took a lot more seriously this time around, and when I say it has made this so much easier: it has. Many of the C_BaseEntity virtual functions are very readable now, and it makes looking at new functions easier than ever to read as well. That's all I really have this time around, moving forward I'm going to finish mapping the property table and will likely report back in with all the little tid bits I find then!


WEAPON ANIMATION SETS

For me, I have been doubling down on making the co-op feel like it's own game. One of the most glaring problems was the lack of animations for weapons, hell even the way perspective were handled. I sat down and created / tweaked a bunch of animations in order to make a fully authentic replication of the first person animations, but in third person. Find your favorite, and check out the work:

BOW ANIMATIONS


DAGGER ANIMATIONS


SWORD ANIMATIONS


SHIELD + SWORD ANIMATIONS


COMBAT STAFF ANIMATIONS


FLAME ARROW ANIMATIONS


INFERNO ANIMATIONS


FIRE BALL ANIMATIONS


FLAME TRAP ANIMATIONS


FREEZE ANIMATIONS


LIGHTNING ANIMATIONS


CHARM ANIMATIONS


WEAKEN ANIMATIONS


TELEKINESIS ANIMATIONS


GENERIC WEAPON SUPPORT


Dark Messiah has support for generic weapons such as the hammer, hook, and goblin club, so it makes sense we need animations for them. Since it just uses the sword animations, I made sure that the system accounts for these to maximize coverage!


ALL SORTS OF PROGRESS

These weapon animations aren't all the animations that exist. Things like contextual kicking animations (dependent on weapon), execution animations that were missing, even sprinting was added in. Although we haven't 100% decided whether we will keep them as they are, it is definitely a step forward. On top of that, there were a bunch of improvements made to the general design of things on the front end that, although simple or minor, really add that level of polish.

GRABBING OBJECTS


Gone are the days of having props float ahead of you. If your player sees the prop be grabbed in the viewmodel, you should see other players grab props with their hands too. Thus, using a combination of the pose parameter system and our extended animation system, we have contextual item grabs with the distance entirely controlled by the size of the object in-game. Plus, you get to correctly hold smaller objects in one hand, like this CLASSIC scene from HAMLET:


SPELLS REFLECT MANA USAGE (AND OTHER VISUALS)


Certain effects just don't make sense to be reflected on the player if you can't even cast it, so the rendering of spells have been upgraded to account for that. If you're out of mana, don't expect the lightning sparks to actually show up on your arms! Likewise, if you want to cast a fireball, you're not gonna see it if you can't form it. Particles and lighting have also been fixed up for these, meaning you can really feel the HEAT on Sareth's face:


MENU UPDATES

menu 1


Menus need to be rendered too right? Balim from our discord has been really jumping in and helping out, which is something that deserves to be noticed. A very simple but crucial feature is, well, the ability to host a server! So he's went out of his way to experiment with adding menu options to incorporate this with great results!

menu 2


This also showed me what type of things are needed to add new options to the menu, meaning we can incorporate a bunch of settings that will let people customize their experience to the fullest. Again, the philosophy I've held is that it's not my job to choose what is fun for you guys. I'll set you up with some basic settings if you wanted to drop in and play, but ultimately you get to make the decisions on what you want.

LEANING PROPERLY


Leaning is a feature that this game has, but many people probably don't use. Regardless, the pose parameter and animation system allowed me to make these authentic, so you can now lean around corners and actually see the player doing so.

EVEN MORE ANIMATIONS


Like I said, there are even more animations that these videos didn't include. Here's one of those I thought was cool. Backstabbing has a certain weight to it, and seeing it happen in third person, including the blood splatter of slicing someone's neck open, is just an amazing sight from an outside view.


THE NEXT STEPS OF DEMONIC EVOLUTION

We can't have an animation blog post without talking about what lead animator Riddick3 has been up to. As a Xana lover, I tasked him with working on third person animations and a model for Sareth's transformation, because although we have an armor and first person model, these two are not alike. One is lacking a tail, and the animations themselves just don't exist. I'll let him have the floor on this one:

After a bit of wrangling, the rig is now ready for me to get some neat stuff done. I still need to correct the asymmetry many valve-based armature come along with, but once that's out of the way I'll have a solid rig to work with.

I

n the meantime, I've put out the first pass for some of Sareth's demon form animations. The model itself took a bit of work to properly move the tail from the view model to the third person playermodel. As it stands, I've moved the tail so that it's attached to the pelvis rather than the chest, so we'll see how this ends up looking in practice, I may move it to one of the spine bones depending on how it interacts with other layered animations. It's important that the tail isn't affected to the point where heavy attacks end up visually striking too far off the mark.

I

It'll take a bit of testing and investigating to see if I can make use of any IK parameters to help smooth things over if necessary. As for the animations themselves, I went for something that reflects Sareth's remark that leaving the demon form is painful, as well as the sheer offensive potential it provides.


For his idle stance, I've gone for something that emphasizes the fact that his form is the result of a demonic possession, constantly fidgeting in unnatural ways and raring for an opportunity to go on the attack. Since the form is temporary, I decided it would be more impactful for the idle stance to be lively and full of character.


The tail has been fun to work with, and opens up a lot of opportunities for interesting movements. In most cases, I find myself using it as a counterweight so I can push the animations a bit closer to the extremes, as the movements that'd put any normal person far off balance are now possible with a tail and a hint of demon magic. I'm excited for everyone to see the final product once I've completed the full animation set and given everything a pass after in-game testing; it's been quite fun to work with something that I can push to extremes.


DEVELOPMENT DIARY AND CLOSING

I put out an extremely long developer diary that should explain and even show examples of the animation system components. If you're in for a learning experience, you can check it out and hear every pitfall I've encountered:


Discord has been available this whole time, so if you want to talk with me about anything, use this link: Discord.gg ( select Dark Messiah from the #role-assignment channel )

I accept all pings, questions, suggestions, and etc.

And I EXTREMELY recommend jumping onboard the twitter to interact and see the minor, day to day updates: Twitter.com

Until next time, thank you everyone for joining us this far!

New Year, New Content

New Year, New Content

News 4 comments

More SDK progress? Multi-player ballista? A custom animation system?! That, and so much more packaged with a new team member to boot. Happy belated New...

A Holly Jolly Update

A Holly Jolly Update

News 2 comments

Stockings stuffed with NEWS! More features added, another gameplay video, new team member, huge SDK/reverse-engineering progress, but most importantly...

Big Progress and Gameplay Video

Big Progress and Gameplay Video

News 6 comments

The excitement doesn't stop with 15 minutes of gameplay and a bunch of revelations!

The Ropes of Autumn

The Ropes of Autumn

News 1 comment

The great rope issue has finally been solved! Plus new insights including networking infrastructures and movement options.

Comments  (0 - 10 of 29)
Guest
Guest

This comment is currently awaiting admin approval, join now to view.

Guest
Guest

This comment is currently awaiting admin approval, join now to view.

NeNefyodoff
NeNefyodoff

I apologize for such a stupid question, but you can tell me how to download this modification on this site. thanks!

Reply Good karma Bad karma+1 vote
Guest
Guest

Dont think it's out just yet. we will need to wait patiently a little longer

Reply Good karma Bad karma0 votes
NeNefyodoff
NeNefyodoff

it is sad

Reply Good karma Bad karma+1 vote
Iraxeus1995
Iraxeus1995

He should finally have a face texture :D

Reply Good karma Bad karma+1 vote
KingDavidW Creator
KingDavidW

He will soon hah, there's a bunch of sareth incarnations we want to put in

Reply Good karma+2 votes
Iraxeus1995
Iraxeus1995

Really? Well, I can't wait. :D

Reply Good karma Bad karma+1 vote
LeonUzumakiX
LeonUzumakiX

this looks so cool i cant wait for this,thanks for putting the time into this

Reply Good karma Bad karma+1 vote
KingDavidW Creator
KingDavidW

No problem, hopefully it'll be worth the wait

Reply Good karma+1 vote
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Twitter

Latest tweets from @davidwiltos

Again, quiet, but wanted to let everyone know I'm still working hard on custom entities in our SDK for #darkmessiahT.co

9hours ago

Another demonic #screenshotsaturday , Riddick shows off his full attack sequence for Xana's tranformation in… T.co

May 14 2022

A humble #animation from Riddick for #darkmessiah co-op's demon transformation. Meanwhile I'm still working hard on… T.co

May 7 2022

Been quiet on tweets because I'm so hyper focused on the #darkmessiah SDK creation. Managed to fully integrate the… T.co

Apr 27 2022

Happy #screenshotsaturday ! It's hard to do screenshots of an SDK for #darkmessiah co-op, so here's more #animationT.co

Apr 23 2022

Ready to pounce! From single frame to a full crouching idle on #darkmessiah co-op's demon form, courtesy of lead an… T.co

Apr 21 2022

Our lead animator Riddick is doing some more demon animations for #darkmessiah, which means more silly videos demon… T.co

Apr 19 2022

Latest post is just a small update, have to get my dev diary out for #darkmessiah soon, but progress is going well… T.co

Apr 16 2022

I was told by the Google overlords to make this tweet But seriously, my @Youtube just hit 1K subs and all I can sa… T.co

Apr 13 2022

A rare sighting of a certain demon in #darkmessiah slaughtering some guards to fitting music for… T.co

Apr 9 2022