[MS:R] Lark's Journal

Lark

Adventurer
MSC Developer
MSR Developer
Lead MSR Developer
Dec 30, 2009
36
20
Oregon
I figured I might as well track MS:R (or any other) progress here too, seems like a quiet-enough spot, but it'll mostly be to post/update milestones and take notes (and stay motivated?)

_ Rewrite Base Functionality [29 March]:
- Base Character/Monster classes written [8 March] [17 March] (+9)
√ - Player Controller (camera/input) [8 March] [17 March] (+9)
* Function-check all animation states
√ - Added an Ability System for in-game Actions [17 March]
_ - BaseItem (Weapon/Armor/misc parent class) [22 March]
_ - Inventory redesign [22 March]
* Update HUD components as needed
* Items can be used/stacked/dropped
_ - Create (non-MS:S) test map [29 March]
_ - Main Menu & Cleanup [29 March]
* Add Title Screen level
* Add Map Select and Video Settings tab
_ Once all the above works as intended, put on VCS (GitHub?)
X Vacation! Cancelled (thanks COVID!)
 
Last edited:

Lark

Adventurer
MSC Developer
MSR Developer
Lead MSR Developer
Dec 30, 2009
36
20
Oregon
Updated the status. Finished rewriting a crude Base Pawn (shared commonalities for all Characters and Creatures, like Health, TakeDamage, Death, etc.) and Base Character (Players/NPCs, implements Collision and Movement by default), with networking. Animations work, but the implementation is the same as before anyway.

I'm also claiming "success" on the Player Controller class for now, since I set up simple inputs (signals to the Character when to move, jump, crouch, etc). While I'm still working on the Camera component for 3rd-Person view, all anyone cares about is 1st-Person, right? Right??

Besides, I already know the Item/Inventory system is going to be a pain, which is why I'm giving it two weeks and getting started tomorrow. But for now, progress!
 

Lark

Adventurer
MSC Developer
MSR Developer
Lead MSR Developer
Dec 30, 2009
36
20
Oregon
Another status update:

The bad news is I had to go back and rewrite the Character and Controller classes to be more Engine-friendly. It was either that, or make it so debugging is difficult, and future UE4 Engine Updates wouldn't affect those particular classes. So I did the smart thing, went back, and rewrote them to play nice with the Engine. However, it did delay work on the Item/Inventory system.

The good news: I added an Ability System that's also Engine-friendly (and natively incorporates great network behavior)! It can be attached to any character/creature and defines Stats like Health, Mana, Stamina, and Attributes that drive the Stats like Strength and Vitality. Additionally, it defines Abilities for just about any in-game actions (active or passive, except for basic functions like Look/Movement), that use Stat/Attribute calculations and/or consume resources like Items, Mana, or Stamina. This includes things like Sprint, Jump, Cast Spell, Use Item, etc.

The better news is the Item/Inventory System didn't take as long as I was expecting, and I just finished testing a basic, working item that is spawned in the world, can be picked up/added to a working inventory, and tossed back out. I haven't finished defining "OnUse" or "Equip" functions yet, but I might do those next. Not sure how much farther I want to go, though, since at this point it starts to get artistic (drawing a pretty UI for the Inventory, etc.)

The best news is that all these updates (theoretically) make game dev work much easier, since they require little/no C++ updates - they can all be done in the UE4 Editor quite easily, and if they need some special scripting, that can be done quickly via Blueprints as well. Once everything's at a good stopping point for all this early functionality, I'll make some demo vids showing how easy it is to create/import stuff.

The terrible news is COVID-19 cancelled my family vacation in April, so I guess I'll be around working on this some more?

Next steps:
- Add "OnUse" and "Equip" features to Items
- Make a quick Equipment panel
- Finish Main Menu features like level selection, Audio, and Video settings.
- Add a Title Screen/Map
- Add a playable Test Map or two
 
Last edited:
Top