So maybe i am going about this in entirely the wrong way… but i am trying to create a game that builds on Lyra and uses some things from ShooterCore but also wants to be starting somewhat from a clean slate
So i have made my game feature plugin, and in order to use content from ShooterCore i must list it as a dependency for my plugin. That’s fine.
But if i list it as a dependency then seemingly the actions described in the ShooterCore game feature data file are applied to my game regardless.
Just spent a good long while trying to figure out why certain inputs were getting activated despite me not setting them up…
So i suppose if i want to have my own game clean from any ShooterCore inputs… i have no choice but to either modify ShooterCore directly and delete them, or have my game not reference ShooterCore at all? Is there a third option i am missing?
I was trying to not touch ShooterCore code because i expect Lyra will be updated at some point in the future which will over-write any changes i have made to ShooterCore… but i did want to use some of the stuff within it becuase it will presumably save me a lot of time…
Maybe i need to not referece ShooterCore but manually copy-paste things in to my plugin but then again when Lyra gets updated i will not get any of the updates made to ShooterCore because i manually copy pasted things.
Hi there,
Once you’ve created your custom experience, you can create your custom inputs and input mappings.
Here is the B_ShooterGame_Elimination, these two data assets contain the information that you are looking for.
Yeah maybe i wasn’t clear but my point is even if i create my own experience with my own mappings it still inherits the mappings as defined in ShooterCore GameFeatureData data asset (located in the root of the ShooterCore plugin). This does, among other things, add the PlayerBindableInputMappings PMI_Default_KBM, PMI_Default_Gamepad, PMI_ShooterDefaultConfig_KBM and PMI_ShooterDefaultConfig_Gamepad
This means that even if i have my own Experience in my own plugin with my own input defined in my own plugin, if i register ShooterCore at all i get the ShooterCore input slapped in there. Unless i delete it by hand. This is my understanding anyway.
For my understanding, your custom input mappings should overwrite Shooter Core’s. The quickest way to know is testing it out. I created my own experience, but I haven’t changed the input mappings yet. I’ll update here if I find anything.
Either you need to modify the binary ShooterCore files, or you need to duplicate them into your project and modify your copies, such that you don’t actually depend directly on ShooterCore at all. You just use it as a reference and copy what is interesting.
Personally I duplicate any files that I need. It’s very easy with the “Advanced Copy” function in the editor that copies the asset plus any/all of its dependencies that you might need to modify.
As to WHY I chose this option, I’ve documented it here, but TLDR I believe it will be far easier to import future Lyra updates from Epic if I’ve made copies rather than to try to modify their binary files.
If you’re just messing around and you don’t actually care about the longevity of your game or the ability to import future Lyra updates from Epic, it’s probably easier just to modify the Lyra binaries themselves, which is what the vast majority of people seem to do.
Don’t mean to necro this thread. But if you want to take advantage of the experiences within shootercore and not run into IMC_ShooterCore overwriting your abilities in your own IMC.
You can follow how the shootercore data set was setup by viewing edit plugin. Follow the same settings. Don’t use shootercore as a dependency plugin.
In your dataset when you setup your game feature asset manager include the shooter core experiences path in your LyraExperienceDefinition and LyraExperienceActionSet.
Then in your project settings under asset manager add a path to the shooter core experiences folder under LyraExperienceDefinition.
This will allow you to tap into the shooter core experience and maps without adding it as a plugin.
The only thing then you will have to toggle off is in LAS_ShooterGame_SharedInputs is the input mapping for IMC_ShooterGame.
As you progress in your developement you can just eventually remove any references to shootercore/experiences. Be sure if you have setup a map to use a shooter core experience to update to your own experience.