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

Metamorph 1.1 #2

Closed
30 tasks done
mchorse opened this issue Oct 21, 2016 · 1 comment
Closed
30 tasks done

Metamorph 1.1 #2

mchorse opened this issue Oct 21, 2016 · 1 comment
Assignees
Labels

Comments

@mchorse
Copy link
Owner

mchorse commented Oct 21, 2016

Metamorph 1.1 is an upcoming update that will add support for public API (allowing creating morph add-ons for this mod) and custom mods mob support.

General

General stuff.

Public API will allow modders to create add-ons (morph packs) for Metamorph. It will also be used by Blockbuster mod for managing actor's custom models, skins and player morphing.

  • Public API
    • Events
      • Morph event – when player gets morphed into a new morph
      • Acquire morph event – when player acquires a morph
      • Morph action event – when player uses an action
    • Morphing API
      • Make a player acquire a morph
      • Morph a player into given morph
      • Demorph a player
    • IMorphFactory – interface for adding abilities, attacks, actions and morphs to the game
    • IHandProvider – interface for providing ModelRenderers for first-person
  • Option for not getting morphs by killing mobs
  • Import merged code from Blockbuster mod

No animations for now (I don't know how to implement it anyways). About Public API. Take look over mchorse.metamorph.api package and tell me if it's enough of functionality for your mods. Currently API is in-development and some features might be absent. Let me know if you want to collaborate with me (or specifically adjust Public API so that it adds something, meanwhile benefits everybody).

Morphs

A big upgrade goes to the morphs in this update.

Don't confuse custom mob morphing and custom morphs. Custom mob morphing feature will add ability to morph into any EntityLivingBase mob. While custom morphs feature will allow third-party modders to create their unique custom morphs using custom models or their ModelBase models, and users could setup their own morphs using custom models and some little JSON configuration.

Custom mob morphing will be implemented by grabbing NBT data of the entity, creating an instance of this entity and rendering player based on this entity with its own renderer, but it will make mobs unable to appear in all variations (only the original one) in the Creative Morph Menu, so we'll have to create a special factory that will be responsible for generating variations of the morphs in the Creative Morph Menu.

  • Custom mob morphing
    • First-person hand rendering
  • Custom morphs
  • User morph configuration
  • Improve the handling of swim ability
  • Make suffocating on air for swim ability

Enhancements

Morph categories will be used in moprh menus (creative and survival). It will ease navigation of morphs in the morphs menu.

Survival menu should be improved by allowing the people to "focus" it (opening it as a GUI). In this GUI, people should be able to favorite their morphs, switch between categories of morphs seen in the Survival Morph Menu, and filter the available morphs via text field.

  • Enhance Creative morph menu
    • Separate into sections: current selected morph, and all morphs
    • Add an "Acquire" morph button along with morph button
    • Add searching and sorting by alphabet
  • Enhance Survival morph menu
    • Merge morph variants into one morph
      • Add keys for selecting between variants
    • Add filtering by favorites
    • Add morph removing
    • Add morph favoriting
    • Make the menu "focusable"
@mchorse mchorse changed the title Metamorph 1.2 Metamorph 1.1 Oct 21, 2016
@mchorse mchorse self-assigned this Dec 11, 2016
@mchorse mchorse closed this as completed Jan 22, 2017
@mchorse
Copy link
Owner Author

mchorse commented Jan 22, 2017

Bugs to fix:

  • Fix favorite shifting
  • Implement a better algorithm for finding hands
  • Implement override-able morph settings from server
  • Implement configurable category label x-shifting

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant