StonkTower on Ethereum

Uniswap v4 Hook Contract 0xff954252dd5d782afd2a69fb0325c2c1077c5044 on Ethereum · Launchpad · Verified contract

Volume (24h)
$0
Value locked (TVL)
$1.01K
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
804

What it does

A Uniswap v4 hook token where every swap charges a 5% fee that is burned or streamed as dividends, and holders above 500 tokens are subject to random raids that can seize part of their balance.

How it works step by step

  • Charges a flat 5% fee on every swap, burning token-side fees and streaming pair-currency fees to eligible holders by balance
  • Ranks holders on a six-floor board for balances at or above 500 tokens; below that holders are safe from raids
  • Arms raids as swap volume crosses multiples of 1.5 pair tokens, up to four queued
  • Resolves raids on a blockhash committed four blocks after arming, picking a victim and a raider from the same or lower floor
  • Bite takes 20% of the victim balance, clipped to an 80% line set by the victim's last own action, split 50% raider, 15% burned, 35% to tie contract
  • Lets holders claim accrued dividends at any time, with failed payouts parked as pullable rather than lost
Swap behaviour
afterSwap takes a 5% fee on the unspecified side via return delta; token-side fees are burned and pair-side fees are streamed to holders. Swap volume arms raids, and when the token is the swap output queued raids may resolve.
Liquidity behaviour
No liquidity callbacks; liquidity is a PositionManager NFT position created off-hook over a range from the opening tick to the minimum usable tick, and the NFT is intended to be burned in a separate transaction.
Fee behaviour
Every swap takes a flat 5% fee on the unspecified side via a return delta: token-side fees are burned, pair-currency-side fees are streamed pro rata to eligible holders by balance. Excluded addresses (router, PositionManager, pool manager, dead address, etc.) do not receive dividends.
Owner & admin controls
Owner (deployer) can only add exclusions and link the tie contract, both before the pool is linked/opened; afterInitialize is restricted to owner and pool opening is one-shot; owner renounced via renounceOwnership in a separate transaction after launch (if executed). No pausing, no upgrades, no parameter setters; reserve address is immutable.

Enabled Uniswap v4 callbacks

afterInitialize, afterSwap, afterSwapReturnDelta

afterInitialize: opens the pool once, restricted to owner, requires currency1 to be this token and fee tier 0, stores pool key and position range. afterSwap: takes the 5% fee (burn or stream), resolves queued raids on the zeroForOne (token-output) direction, and arms new raids from swap volume. afterSwapReturnDelta: lets the hook return the fee amount so the PoolManager settles it.

Security & trust assessment

Risk level: high (verified source, high confidence).

Who controls it: Owner key only controls one-time setup (exclusions, tie link, pool opening) and can renounce; after launch no privileged key can alter fees, balances or raid parameters. Tie contract, once linked, receives 35% of each bite and its onBite callback is trusted and external.

Risk to user funds: The hook can move holder balances directly through raids (up to 20% per raid, down to the line), burn supply, and route bite shares to raiders and the tie contract; it holds pair-currency fees as dividends until claimed. Funds can be forcibly transferred between holders by design.

Security findings

  • [high] Balances can be forcibly reduced by raids: Holders below 500 tokens are safe, while holders above can have 20% of balance seized via bite, with the bite clipped by a line at 80% of the balance at their last own action. Raids are decided by blockhash four blocks after arming, and the victim is picked uniformly from the board; the mechanism is game-like and by design.
  • [medium] Raid randomness is blockhash based and builder-influenceable: Raid victim and raider are drawn from blockhash of a block COMMIT_LAG later, which is hard to predict but still influenced by the block producer, so MEV builders could bias which raids land.
  • [medium] External tie contract dependency: Unlinked tie share is burned, and while linked the tie contract is an external trusted contract called via onBite; if it reverts, the bite reverts, which can block raids and swaps that trigger them.
  • [info] Dividend payouts isolated from failures: The pool is one-shot and uses currency0 as the pair token; claim transfers via a low-level call and defers failed payouts to a pullable balance, so an unpayable address cannot block others.

Contract details

Verified source
Yes (StonkTower)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
18,806 bytes
Upgradeable proxy
No
Detected patterns
erc20, launchpad, moves-currency, return-delta

Pools using StonkTower