Notifications
Clear all

Few question before I buy the Modern framework

2 Posts
2 Users
0 Reactions
43 Views
52fcca4019cd3ac469125200fecf4f45
(@g-anasaladely)
New Member
Joined: 1 week ago
Posts: 1
Topic starter   [#82]

Hi! I'm evaluating the Modern Survival Horror Framework before purchasing. I'm building a third-person survival horror game with some custom mechanics, and I'd like to understand how extensible a few systems are. Apologies for the long list — answers to these would really help me decide.

Enemies & combat (most important for me)

  1. Do weapon traces return a bone name on hit (i.e. hit detection against the skeletal mesh's physics asset), or do they only trace against a capsule? I'm planning to integrate a procedural dismemberment system, which needs to know which bone was hit.
  2. Can enemy damage and death be overridden in a child Blueprint without modifying the base enemy class? My game has a mechanic where zombies regenerate unless killed by fire or decapitation, so I need to intercept the death flow and replace it with my own logic.
  3. Can I add new enemy types as child Blueprints with their own stats and behavior, without editing the AI core?
  4. What skeleton does the enemy AI expect, and what's the recommended path for using my own zombie meshes/rigs?
  5. Roughly how many enemies can be active at once before AI performance becomes a concern?

Doors

  1. Is door lock state decoupled from the door's movement? I'd like to keep my own door actor and motion, but still drive your lock system (keys, keycards, codes, chains). Is that supported?
  2. Is the door open/close speed exposed as a tunable parameter?
  3. In the demo I noticed some doors wobble/jitter slightly when opening. Is this a known issue, and is it addressed in v0.5?

Characters & animation

  1. Does MetaHuman work with the GASP motion-matching locomotion? The docs mention retargeting DA_Pistol fire/reload and the pickup montages — is there a complete list of animations that need retargeting for a MetaHuman character?

Weapons

  1. Can I add my own weapons entirely through data assets, or does adding a weapon require editing the weapon base class?

VFX & UI

  1. Does the framework include its own blood/impact VFX, and can it be disabled or replaced with a third-party blood system without breaking anything?
  2. I have my own interaction prompt widget. How hard is it to swap the interaction UI for a custom one — is the prompt display separated from the interaction detection logic?

Systems

  1. Can the save system be extended to store custom state (e.g. my enemy's regeneration/evolution stage, and a custom puzzle's state)?
  2. Does the framework support World Partition / level streaming, or do the save and map systems assume single persistent levels?

Thanks a lot — the demo felt great overall, especially the lock system.



   
Quote
Farshad
(@farshad)
DEVELOPER Admin
Joined: 6 months ago
Posts: 351
 

Posted by: @g-anasaladely

Hi! I'm evaluating the Modern Survival Horror Framework before purchasing. I'm building a third-person survival horror game with some custom mechanics, and I'd like to understand how extensible a few systems are. Apologies for the long list — answers to these would really help me decide.

Hey, welcome to the community forum. Thanks for your interest in Modern Survival Horror Framework and for taking the time to put together such a detailed list of questions. It's always great to see developers evaluating the framework for their own projects. I'll answer each point below as clearly as I can.

Before going through the questions, I would like to mention that this framework requires an intermediate understanding of Unreal Engine. It is designed to be used as a foundation and starting point for your project, giving you a complete gameplay framework that you can build upon and customize based on your own requirements.

The framework is primarily intended for starting a new project rather than being directly merged into an existing project. Extending and customizing the systems will require some understanding of Unreal Engine, along with time for experimentation and adaptation.

We always do our best to provide support and guidance whenever possible, but this framework is not a completely no-code plug-and-play solution. Developers should be prepared to spend some time understanding the structure, extending systems, and adapting them to their specific needs.

Since the framework is currently in Early Access, we are continuously improving its architecture, modularity, and overall usability. Our goal is to keep making the systems cleaner and more flexible as we move toward the 1.0 release. We highly value community feedback, and frequent updates are part of our process to improve the framework over time.

1 - There is a bone detection system implemented, which we use for hit detection against the skeletal mesh. For example, if a bullet hits a specific bone, the appropriate reaction will occur at that exact location.

2 - The damage receiving system for zombies is implemented inside the AC_AIBehavior component. There, you can define variables to control and implement different behaviors or systems for different enemy types. Please note that this part requires adding your own custom functions for your new enemy types inside the mentioned component, and some sections may also need to be modified depending on your implementation.

3 - Yes, there is a parent class called BP_AIMaster, and BP_AIZombie is a child of that class. You can create another child class if needed. I would like to emphasize again that the main logic is handled inside the AC_AIBehavior component, so if you want to add new logic, you can either extend this component or create another custom component.

4 - Currently, the Zombie Framework uses the UE4 skeleton. There are plans to add support for other skeletons in future updates as well.

5 - To prevent performance issues, the framework uses an AISpawner system. With this system, there is no need to have all enemies placed in the map and active from the beginning.

6 - The locks are separate classes, but they are tied to the door framework in some logic, so by default, they require the door class to function properly.

If you want to implement them on another custom door class, you need to inspect the door class in the framework, understand how the locks are implemented there, and then apply the same pattern to your own door class.

This part requires a good understanding of Unreal Engine as well as a proper understanding of the framework architecture.

7- The door opening and closing behavior is implemented using a Timeline. If you open the Timeline, you can adjust the speed by modifying its length. However, there is an update planned for this section to introduce a dedicated curve for the door movement, and this curve will be exposed to the editor so it can be modified.

8- Some improvements have already been applied to the door system. However, regarding the issue you reported, it would be great if you could attach a video to the bug report topic showing the problem. That would help us understand the issue more clearly and investigate it properly.

9- Yes, MetaHuman is integrated with the GASP motion-matching locomotion system.

Currently, only the small number of animations mentioned in the documentation need to be retargeted. However, we also tested MetaHuman without retargeting those animations, and we did not notice any major issues. That said, retargeting may still be required for some specific MetaHuman characters depending on their setup.

10- You can add different types of weapons such as pistols, rifles, pipes, and shotguns using Data Assets.

However, if you want to add a unique weapon type, such as a rocket launcher or any other weapon with different behavior, you still can add it using Data Assets, but you may need to create new logic with a new weapon type and expand the weapon system accordingly.

11 - The framework uses simple effects as placeholders. For example, in the WeaponLineTrace function in AC_combat, a blood hit effect is added using the "SpawnEmitterAtLocation" function. You can easily replace these effects with your own custom effects.

12- Yes, if you mean the interaction prompt widget (the overlay widget that appears when the player gets close to an item, like the circle indicator that fills during interaction), then it is separated.

It is a standalone widget, although in some places there may be a cast to this widget to pass data to it. You can replace it with your own custom widget, but make sure to handle those data updates in your widget as well.

13- Yes!
14- We haven't tested on-level streaming yet.

 


This post was modified 1 week ago 4 times by Farshad
This post was modified 4 days ago by Farshad

   
ReplyQuote
Share: