<!-- canonical: https://0xsimao.com/findings/metazero-i-default-royalty-overriding-royalties -->

# _setDefaultRoyalty() in the constructor is overriding the BasicRoyalties constructor

Low/Info · Three Sigma · Omnichain RWA tokenisation · 27th January, 2024

Finding 3S-MetaZero-N02 of the MetaZero Omnichain NFTs security review.

- Protocol: https://metazero.gg/
- Report: /reports/metazero-i
- Source: https://cdn.sanity.io/files/qoqld077/production/1b1ab4ff365756fe1d86767f1e06744407570f5a.pdf

---

### Description

_setDefaultRoyalty() in the [constructor](https://github.com/threesigmaxyz/metazero-issues-external/blob/master/src/ONFTV2-721C.sol#L53) is overriding the BasicRoyalties constructor to
500, regardless of the parameter sent.

### Status

Addressed in 28850d5.

---

Related findings:

- [Delay can not be set to default value once set to a specific per function value](https://0xsimao.com/findings/maple-finance-ii-delay-default-specific-function): Maple Governor Timelock
- [`midnight` parameter in `MidnightBundles` could be set in the constructor](https://0xsimao.com/findings/morpho-midnight-midnight-parameter-bundles-constructor): Morpho Midnight
- [StakingOperator does not set isUnlockWindowActive to true in the constructor if the flag passed is true](https://0xsimao.com/findings/singularity-staking-window-active-flag): Singularity
