Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow users to create game definitions #10

Open
2 of 5 tasks
Karandra opened this issue Nov 12, 2018 · 0 comments
Open
2 of 5 tasks

Allow users to create game definitions #10

Karandra opened this issue Nov 12, 2018 · 0 comments
Assignees
Labels
Enhancement New feature or request General Related to program in general, not applicable to any module PluginManager SavesManager

Comments

@Karandra
Copy link
Owner

Karandra commented Nov 12, 2018

Description

Kortex don't use hardcoded game information to support a game. Instead it uses special configuration files - instance templates. All games support is implemented using these templates with some exceptions. Exceptions is PluginManager and SaveManager.

These managers must implement their interface for requested game. Instance template specifies what interface it need. There is no completely generic implementation for any game. There is however generic implementation of plugin manager for Bethesda games and its more specialized version for Morrowind and Bethesda games with ESL support. SaveManager does not implement any interface, but it must provide a factory function that creates a save file object that implements save interface for requested game.

Even now user can copy one of existing templates, modify it and use it to allow Kortex support new game. This however requires some knowledge about what you can change in template file and what options are supported.

This enhancement is not assigned to the milestone because it's quite hard to implement in time given that there is so much more important tasks.

Required features

  • Specify dedicated folder for user templates.
  • Remove any hardcoded things from PluginManager and other places.
  • Create UI to modify template.
  • Review instance file structure because I won't be able to change it as freely as I can right now. Or I can, but at the cost of maintaining backward compatibility layer.
  • Write Wiki page about instance templates and how they work.
@Karandra Karandra added Enhancement New feature or request General Related to program in general, not applicable to any module labels Nov 12, 2018
@Karandra Karandra self-assigned this Nov 12, 2018
@Karandra Karandra changed the title Allow users to create instance templates Allow users to create game definitions Jan 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request General Related to program in general, not applicable to any module PluginManager SavesManager
Projects
None yet
Development

No branches or pull requests

1 participant