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

Add Loftwings (from TLoZ: Skyward Sword) #75

Open
Dhranios opened this issue Dec 8, 2020 · 1 comment
Open

Add Loftwings (from TLoZ: Skyward Sword) #75

Dhranios opened this issue Dec 8, 2020 · 1 comment
Labels
feature New feature or request

Comments

@Dhranios
Copy link

Dhranios commented Dec 8, 2020

https://zelda.gamepedia.com/Loftwing

Loftwings would be a unique addition for it's ability to be ridden and fly, along with a one of a kind taming mechanic.

Spawning:
Loftwings will spawn on any solid block at y=130 (EDIT: for 1.18, I'd suggest y=200) or above in any biome in the overworld dimension and have a 5% chance to spawn an additional baby loftwing. This means they shouldn't spawn unless the player builds above the clouds, except maybe in shattered savanna and (1.18) mountain biomes.

Taming:
The player actually cannot tame whatever loftwing they desire, instead a loftwing will select 1 player it meets as its owner. This is not always the first player they meet. (all rejected player's UUIDs will need to be stored in their NBT)
This mechanic is based on Link's loftwing story, where they immediately hit it off when they met.

Inventory:

  • Belt slot
  • Helmet slot

The belt slot would allow for only 1 item, a loftwing belt.
This can be crafted as follows:
xlx
lxl
xlx
x = empty
l = lead
The belt will allow the owner to ride the loftwing.

The helmet slot would allow for only 1 item, a loftwing helmet. This helmet is made in the crafting recipe as follows:
mmm
mlm
mxm
x = empty
m = material (leather, gold ingot, iron ingot, diamond)
l = redstone lamp
an additional chainmail loftwing helmet can be received rarely from loftwings that reject you as their owner, while riding a loftwing, as a gift (kind of like cat morning gifts).

A diamond loftwing helmet can be turned into a netherite one in a smithing table.

The helmet has no limited durability and 2 functions:

  1. shine light in front of the loftwing (might want to check how optifine does the dynamic light (if this is not feasible to add, increase overal ambient lighting if the loftwing is close)) in light level 7 or less, or with sky access at night.
  2. reducing damage received by the loftwing when crashing into blocks at the cost of the loftwing's turning speed. A leather helmet would only reduce damage taken by 1 full heart and make turning 90 degrees take 1 second, while netherite would fully protect it but make turning 90 degrees take 5 seconds.

Hitbox and eye height:
Standing: 1.5x2.5x1.5 at 2.2
Flying: 4x1x4 (spreads wings) at 0.7, player's hitbox will be 1x1x1 on top of the loftwing (model in a laying down position), making a small pyramid-like hitbox in total
Panicing: 4x2.5x4 at 2.2

Movement:
While ridden (belt needed), the loftwing will walk with the same controls as the player, and can be told to start flying by pressing jump while in the air (like elytra, but not only when falling). While flying, the loftwing will keep moving forward without stopping, unless they land. They'll follow where the player looks (even up and down) but changing direction should not be instantanious (slower based on the helmet worn). If the loftwing flies into a solid block, the player will be launched off and both the loftwing (based on worn helmet) and the player will receive damage.
While in the air, the player cannot dismount the loftwing, instead sneaking makes the loftwing dash forward, making the hitbox 1x1x1( 1x2x1 with player included) and increasing its speed for a moment.

If a loftwing is not sitting (can be done same way as cats/dogs) and not leashed, it will NOT teleport to the owner, but instead, when it loses the owner will flap their wings wildly, while shouting for their owner to find them.

If attacked by a mob or a player that is not the owner, the loftwing will attack back with a melee attack, but will not join the owner if they attack anything. They'll attack by flapping their wings in front of them, blowing away all mobs, items an xp in front of them a block or 2 backwards, and only dealing half a heart of damage to the targetted mob/player.

Healing and breeding:
To heal and breed loftwings they'll need to be given a mushroom spores bottle. This item can be obtained by using a glass bottle on a fungus or mushroom.
This is based on the side quest with Orielle's Loftwing, which got hurt and is healed with mushroom spores.
As they're birds, they should not create a baby loftwing like most animals, but lay a loftwing egg. This egg will increase the hatch state at midday (noon) with a 5% chance (leading to an average of 20 days until they increase the hatch progress).
If broken, the loftwing egg will drop nothing, unless broken with silk touch, then it'll drop a loftwing egg, cracked loftwing egg or hatching loftwing egg depending on the progress of hatching (each state is its own block, like 1.17's copper blocks)

Variants:
See the linked wiki article's gallery; the crimson loftwing should be made very rare as in-game the people of skyloft thought they were extinct until Link's showed up.

Items to add along with loftwings:

  • Loftwing Belt
  • Leather Loftwing Helmet
  • Chainmail Loftwing Helmet
  • Iron Loftwing Helmet
  • Diamond Loftwing Helmet
  • Golden Loftwing Helmet
  • Netherite Loftwing Helmet
  • Mushroom Spores Bottle
  • Loftwing Egg
  • Cracked Loftwing Egg
  • Hatching Loftwing Egg
@Hugman76 Hugman76 self-assigned this Feb 13, 2021
@Hugman76 Hugman76 added feature New feature or request and removed request labels Oct 12, 2021
@Hugman76 Hugman76 changed the title Feature suggestion: LoZ: SS's Loftwings Loftwings (from TLoZ: Skyward Sword) Oct 12, 2021
@Dhranios
Copy link
Author

Slight changes:
1.18 increases world height, so for 1.18, I'd suggest a spawn y value of 200+, rather than 130+.
Fogot about netherite, so diamond loftwing helmets can be made into netherite loftwing helmets with a smithing table.

@Hugman76 Hugman76 removed their assignment Jan 24, 2022
@Hugman76 Hugman76 changed the title Loftwings (from TLoZ: Skyward Sword) Add Loftwings (from TLoZ: Skyward Sword) Jan 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
Status: 📜 Todo
Development

No branches or pull requests

3 participants