Gameplay Video
Since I made so much progress last month I thought it was time to get a good gameplay video going on. Granted, a lot of work still needs to be done to make it look good, but you can easily see how much fun this game is when you've another brother at arms! Check it out over here:
Highlights Of Last Month's Progress
Since we've no doubt got some new comers, allow me to summarize everything done from last month to now:
ROPES AND LADDERS NOW WORK
Yes you can now climb up and down these bad boys with more than one player, with all the features intact
NO MORE FOUR ARMED MENACE
Although the weapon models hasn't attached itself yet to the player due to a missing parent bone, we don't have four arms anymore! Plus the view angles are also fixed!
XANA AND CUTSCENES NOW WORK
The somewhat cinematic experience has been added, with players being able to trigger and perform in cutscenes. Dialogue and teleports also work! You can also turn into your demon form ( although she's missing her tail because this was never incorporated in Thirdperson )
MULTIPLAYER BODY INTERACTIONS
Take a selfie with your favorite corpse ( or fling it against the wall with your friends ) in full multiplayer! Plus it has a neat little animation!
The Map Crashing Issue
One of the biggest takeaways of the gameplay session was that maps have suddenly started crashing when we transition between levels. We can do level changes through console, but not by triggers:
The answer is actually really easy to understand! The way the source engine handles entities on map change is that it stores it only if they are within a certain box ( or are being used by something that is in that box like a hat for a player! ). The reason it does that is so when you change the map it can restore anything you've been carrying immediately. If the entity isn't there but we have data that says it SHOULD be there, then we have to spawn it in and apply the data we have to the new entity. Easy enough right?
Since this is a singleplayer game, I load in at the exact moment that the map loads in, allowing all the information to be applied directly. However, player 2 needs to wait for ME to get in before they can even get through to the next stage of loading, meaning the data that the game stored for them is left in limbo and sent into a panic state, causing it to try and create that player. This also explains why this never happened before!
Originally only the first player could hit these triggers, so they would always be first to be transmitted and the game would never really recognize the rest of the players as something that need networking. Now that we've added all that functionality in, we need to refine that logic to make sure it works.
The solution to this problem is actually extremely easy. Since we know it's expecting the player but they are joining late, all we need to do is hold the information it WANTS to add to these players until they join, and apply on their initial spawn on that map.
The Next Steps / Developer Diary Posting
After our gameplay session there's still a bit of stuff that need doing. Things like interpolation, prediction, and in general that list of stuff I've posted before. Here's the classic dev diary format about this:
Closing Remarks
I do this every time so let's get it over with! Discord is ALWAYS up to talk with me about anything with the link: Discord.gg ( select Dark Messiah from the #role-assignment channel )
I accept all pings, questions, suggestions, and etc. I'd also highly recommend jumping onboard the twitter to interact and see the minor, day to day updates: Twitter.com
Amazing news, keep it up please.
Thank you! Absolutely will keep it up until we're done!
So when coop mode will be fully released?
It takes time to make sure everything works and also works well. I am working to get a test version out so we can do sessions with more people and get some other reports
Best of luck to you.
Thank you for the support!