What’s New
Early Access · Updated regularly
GUNZscope ships updates frequently. Here’s what’s changed. Got an idea? Request a feature.
May 5, 2026
- Cost basis no longer drifts. If you opened your portfolio twice in the same day and the GUN price moved between visits, the recorded purchase price for items bought today would silently update to whatever GUN was worth at the moment you refreshed. Once a same-day price is resolved, we now cache it and reuse it for subsequent enrichments. Yesterday’s prices were always stable; today’s are now too.
- The "Supply Intelligence" panel on item details is now called "On-Chain Supply" and has a small "?" next to it that explains what the number actually counts. The number tracks items that have been decoded on-chain from HEX or traded on the marketplace. Items earned in-game but never decoded are not in there. The label used to imply we knew the full supply. We do not. Now the panel says so.
- The language dropdown on the account settings page no longer gets clipped by its own card. One CSS property in the wrong place. Fixed.
May 5, 2026
- On the portfolio page, the acquisition timeline draws a dotted line from each transferred item back to where the item was originally bought. That line was a smooth curve between two points, which in practice meant a slanted streak that looked like someone had dragged a pen across the chart at an angle.
- It now exits the transfer diamond horizontally, dips at the midpoint, and approaches the origin dot horizontally — the chart equivalent of a pipe with a vertical drop in the middle. Same information, looks like a route instead of a smudge.
Apr 20, 2026
- GUNZscope has a table called drop_events. The idea is that when several brand‑new item names debut on‑chain inside a thirty‑minute window, that is almost certainly a drop, and we should record it as one. Useful for the scarcity tab, useful for anyone who wants to know when OTG actually shipped new content. The table has been in the database for months. Until today, it had zero rows. Not because no drops happened — we know of at least seventeen — but because the detector that was supposed to write to it had a bug that made it impossible for it to ever write anything. Three bugs, actually, stacked. Fixing one would not have helped. We needed to fix the whole thing.
- The detector was a small in‑memory state machine that compared the wall clock to block timestamps to decide whether a recent event was still "recent." During backfill or after a server restart, those two clocks are far apart, so every new event got immediately discarded as too old. The state also lived in process memory, so a restart wiped it. The indexer restarts a lot. Drops did not survive.
- New version is a single SQL query against a table we already maintain. No memory state, no clock comparison, no restart fragility. We also wrote a one‑time backfill that walks every first‑mint we have on record (3,344 of them) and reconstructs the historical drop_events table in one pass. After the backfill, the table has 941 rows covering roughly every drop OTG has shipped since launch, including the genesis catalog mint, the Independence Day patriots, the Hexmas tree, and the more recent Heartbreaker and Bridezilla clusters that should have been recorded live but were not. The number is higher than you might expect because long sustained drops (the Hexmas content pack ran for hours) get split into multiple consecutive rows as the rolling 30‑minute window slides forward. Each row is still a real cluster; we just record them in finer slices than a human looking back would.
- The scarcity tab’s "Live" view, which has been waiting on real drop data, now has real drop data. It will not light up until OTG ships their next drop, but when they do, you will see it.
Apr 19, 2026
- The whitespace fix earlier today skipped one row. Kestrel Templar Epic existed in two rows: the old untrimmed version with a leading space (2527 mints, stopped minting last June) and the canonical version without a space (1197 mints, still minting today). Trimming the old one would have collided with the new one, and a migration script that mashes two rows together unprompted is the kind of thing that deletes supply nobody wanted deleted. So we skipped it.
- Built a proper merge tool and ran it once. Every past mint event that pointed at the old row now points at the canonical row. Counts were summed. Date ranges were merged. The old row is gone. Kestrel Templar Epic is now one row at 3724 mints, which is the correct number and always was; it was just hiding in two places.
- The tool is generic. If another duplicate ever surfaces, we run it again with different ids. Not wired into any automation, because deciding what counts as "the same item" is a judgment call that should never be automated against live supply data.
Apr 19, 2026
- Fifty‑eight items in the game database had stray whitespace in their names. Leading spaces, trailing spaces, mostly trailing. The indexer was reading the item name straight from the on‑chain metadata and writing whatever came out the other side, including the occasional space nobody asked for. We fixed the indexer to trim, then ran a one‑time migration to clean up every existing row. Fifty‑seven of them are now correct. One — Kestrel Templar — could not be trimmed because an untrimmed version also existed and merging the supply from two rows into one is a judgment call we did not want a migration script making. That one stays untrimmed pending manual review.
- One reason this matters right now: PHOSPHOR FURY is one of the base in‑game limbs we hide from the scarcity rankings by default (shipped yesterday). PHOSPHOR FURY was one of the items with a trailing space in the database. Our "hide base limbs" allowlist had the trailing‑space version baked in to match. After the trim fix, the database row became "PHOSPHOR FURY" with no space, and the allowlist stopped matching it, and PHOSPHOR FURY would have reappeared in the rankings the moment this shipped. We caught this before the release and updated the allowlist. PHOSPHOR FURY stays hidden.
- Nothing you will notice on the site unless you were specifically looking at one of the 58 affected item names and had an opinion about the trailing space. The value is downstream: future exact‑match JOINs between the game item table and any other table do not need to carry a "maybe there is a space" compensation layer.
Apr 19, 2026
- The Ultra‑Rare column on the scarcity page used to be ten items long. Seven of them had a mint count of zero. Zero. The scarcity bracket logic was correctly identifying "10 or fewer mints" as ultra‑rare and then dutifully applying that to items the indexer had never actually seen any mints of. An ultra‑rare item that does not exist is less rare than it appears. We have stopped showing them.
- We have also hidden the base in‑game prosthetic limbs from the rankings by default. RIPPER, GHOST, PARALYZER, SLAMFIST, LEAPERS, THUMPERS, and twenty other items that every player has access to were previously competing for position in the rankings alongside genuinely scarce items. They have tens of thousands of mints each. They are not scarce. Twenty‑five names, ninety‑four rows across quality tiers, gone from the default view. There is a toggle if you want them back.
- The Ultra‑Rare bracket now has three items in it instead of ten. The three items are actually, verifiably, ultra‑rare. Progress.
- One last thing: the table has a "Rarity" column and a "Bracket" column, and both use words like "Common" and "Rare" to mean different things. Rarity is the in‑game cosmetic quality (the thing the game assigned when the item dropped). Bracket is how many of the item have been minted, period. They are unrelated. We added info tooltips on both columns so hovering either one tells you which system you are looking at.
Apr 17, 2026
- v0.8.11 shipped a data cleanup that mapped 172 more items to their origin sets. It worked at the database level. It did not work at the case‑sensitivity level. The items in one table were stored in lowercase, the items in the other table were stored with proper capitalization, and the two tables declined to recognize each other. Classic stuff.
- We rewrote the pipeline to preserve the canonical capitalization from on‑chain metadata, then ran a one‑time migration that renamed 594 of the 621 mapping rows to match. 27 rows had no matching game item at all — those are probably misspellings or items that got renamed somewhere along the way, and a human will take a look.
- After the fix, a direct database join between the two tables finds 594 mapped items instead of zero. Same user‑visible promise as yesterday (set‑aware scarcity intelligence coming soon), now with the data actually behaving as advertised.
Apr 17, 2026
- If you signed up for a price alert, a floor‑drop alert, a whale‑tracker alert, a snipe alert, or the weekly portfolio digest — none of those were firing. The email routes worked. The subscription records worked. The scheduled jobs were firing every five minutes as designed. The problem was that our own security middleware was intercepting those jobs and rejecting them with a 401 before they could do any work. The door was guarding itself. One conditional added. Alerts now go out on the schedule they’ve always been on.
- We also ran a long‑overdue data cleanup behind the scenes. There are thirty match rules we seeded months ago for auto‑categorizing items into their release origins — Battle Pass: Enforcer, Content Pack: Halloween, Hexmas, and so on. Those rules had never actually been applied to the item catalog. They had been sitting in the database doing nothing. We applied them. 172 items now correctly attribute to their origin sets. Nothing in the UI changes yet, but the data is finally accurate, which is the prerequisite for the set‑aware scarcity page that’s coming.
- And we drew a line around OTG’s default prosthetic limbs. RIPPER, GHOST, PARALYZER, KINETIC SHIELD, THUMPERS, LEAPERS, and twenty other baseline items are now flagged internally as "default equipment, not collectibles." When the new scarcity rankings ship, these won’t pollute the leaderboards the way they currently do. (If you’ve ever wondered why RIPPER Common with 66,000 mints was showing up next to a 10‑of‑10 item — it’s because we hadn’t told the system the difference. We have now.)
Apr 8, 2026
- If you signed up with Discord and you already linked a game wallet, GUNZscope now sends you straight to your portfolio after login. Before this, every Discord user landed on the same generic account page — the one with raw wallet addresses, four tabs, and a settings menu — regardless of whether they were a brand new signup or a returning player with a fully built collection. The fix is the obvious one: wait half a second for your profile to load, check if you have a wallet linked, and route accordingly. Returning players see their items. New players see onboarding. The page knows who you are.
- New players who sign in with Discord (or Twitch, or Epic) for the first time now see a focused welcome screen instead of the full account page. One heading. One sentence. One input. Paste your Off The Grid wallet address, hit View, and you’re in. The four tabs of profile management that used to greet you on day one are hidden until you actually have something to manage. They reappear automatically the moment you add a wallet — no extra navigation, no second click.
- Below the paste box, two escape hatches for people who didn’t come in through Discord by accident. "Connect Wallet" opens the wallet picker if you already have MetaMask installed and want to use that instead. "Browse the Explorer" sends you to the public explore page if you’d rather look around before committing anything. Both are small links, not giant buttons — the primary path is still pasting your game wallet address, because that’s what most people are here for.
- There’s a one‑time flag that tells the account page whether you arrived from a login flow or from clicking Profile in the navbar. If you came from login and you already have a wallet, you get bounced to your portfolio. If you clicked Profile yourself, you stay put — because clearly you wanted to be on the profile page. Small detail. Solves the "every time I log in I have to click my way back to my own portfolio" frustration that we never should have shipped in the first place.
Apr 7, 2026
- You can now sign in to GUNZscope with the Discord, Twitch, or Epic account you already use to play Off The Grid. Pick a provider, authorize, and you’re in. About thirty seconds end to end. Discord launched two weeks ago — Twitch and Epic just joined the party. Between them, that’s most of the people who actually play this game. No wallet extension to install, no seed phrase to memorize, no whitelist to apply for, no crypto vocabulary required. A wallet still gets created for you behind the scenes, but you don’t have to look at it, name it, fund it, or even know it exists. We made it. We stopped talking about it.
- The big button on the homepage used to say "CONNECT WALLET — EARLY ACCESS, WHITELIST ONLY." That’s a button introducing itself by listing reasons you might not be allowed to press it. It now says "Get Started." Turns out you can invite gamers without first making them feel uninvited.
- The popup behind that button got rewritten too. Three honest options: sign in with Discord, Twitch, or Epic; connect a wallet you already have; or paste an address and have a look around. The "Join Waitlist" tile is gone — we were asking people to refer three friends to skip a line we had already removed.
- Social logins also actually work now. There was a bug where the route that grants you access was being blocked by the access check it was trying to satisfy. The door was guarding itself. Resolved with a single line of code and a long quiet stare. Discord, Twitch, and Epic users now get whitelisted the moment they sign in, no human in the loop.
- And if your session ever ends up in a half‑broken state because Dynamic, OAuth, and your browser couldn’t agree on whose turn it was, the popup now logs you out cleanly before opening a new one — instead of opening the wrong screen and pretending nothing happened.
Apr 5, 2026
- You can now log into GUNZscope with your Discord account. No browser extension, no seed phrase, no MetaMask popup. Click "Sign in with Discord," authorize, and you’re in. We create an embedded wallet for you behind the scenes — you don’t need to know it exists, but it’s there if you ever want it.
- Social‑login users land on a new Account page instead of the portfolio. Makes sense — you don’t have a game wallet linked yet, so showing you an empty portfolio would just be confusing. The account page lets you connect your GunzChain wallet when you’re ready, and once linked, you get the full intelligence experience.
- Your linked social accounts are visible on your profile. Right now it’s Discord. More providers are coming. The infrastructure is provider‑agnostic — we built it to scale, not to ship a demo.
- The privacy policy now has an actual contact email. If you have questions about your data, reach out to privacy@gunzscope.xyz. We also updated the "Your Rights" section to point there instead of the vague "contact us" language that helped nobody.
Mar 29, 2026
- The entire interface speaks French. Not Google Translate French — actual, hand‑tuned French with a language switcher in the navbar. Switch mid‑session, keep your wallet connected, nothing breaks. We didn’t localize just the homepage and call it a day. Navbar, footer, error pages, feature descriptions, social proof — all of it. More languages are coming, but we figured starting with the language of diplomacy was appropriate for a project that regularly negotiates with broken RPCs.
- The homepage stats bar got a reality check. "GUN Price" is gone from the top — you can find that in your portfolio where it belongs. Replaced with On‑Chain Events (the indexer’s running total) and Platforms Unified (because tracking three chains and a marketplace deserves a number). The platform icons are real brand SVGs now instead of whatever generic circles we were using before.
- Per‑item enrichment data now writes through to a normalized cache. Translation for humans: when we compute your cost basis, P&L, and acquisition details, those results stick around more reliably between sessions. Less re‑fetching, faster load times, fewer "why did my data disappear" moments.
- A film grain texture now overlays the interface. Subtle. Cinematic. The kind of thing you won’t consciously notice but would feel wrong if it disappeared. Supply count badges on the gallery are now gated behind authentication — scarcity data is premium intelligence, not lobby decoration.
Mar 24, 2026
- GUNZscope deployed a soulbound achievement contract to Avalanche. Not a points leaderboard. Not a Discord role. An actual ERC‑721 token that lands in your wallet and can’t be transferred, sold, or faked. You either earned it or you didn’t.
- Eight launch achievements are live. Pioneer for your first attestation. Handle Holder for claiming a gsHandle. Rising Star and Whale for GUN balance milestones. Collector and Hoarder for item counts. Diamond Hands and Veteran for showing up consistently over months. The contract reads your attestation history directly — no honor system, no self‑reporting.
- You can claim multiple achievements in a single transaction. The contract checks eligibility on‑chain before minting, so there’s a free pre‑check to see what you qualify for without spending gas. No surprises.
- This is the second layer of what we’re building. Identity was first (your gsHandle and wallet registry, already on mainnet). Soulbound milestones are next (testnet now, mainnet soon). After that: a participation score that tracks how you engage with the ecosystem. And eventually, something transferable. But we’re not rushing that part.
Mar 21, 2026
- GUNZscope now has its own indexer. Not "we call an API and hope for the best" — an actual, dedicated process that scanned all 16.5 million blocks on GunzChain, found 27.7 million mint and burn events, and stored every single one. That’s the entire history of every game item ever created or destroyed in Off The Grid. Nobody asked us to do this. We did it anyway.
- The Scarcity page is waking up. Item supply counts are no longer placeholder zeros or vibes‑based estimates from OpenSea trait metadata. They’re computed from on‑chain events — actual Transfer logs from the smart contract. When we say "342 exist," we mean 342 were minted and not burned. Math, not marketing.
- The system is self‑healing. Rate‑limited by an API? It backs off, waits, and resumes from exactly where it stopped. Process crashes at 3am? It restarts, checks its cursor, and picks up the next token like nothing happened. We didn’t build a script. We built something that refuses to stay dead.
- Real‑time event capture is live. A WebSocket listener sits on GunzChain watching for new mints and burns as they happen. When something drops, we know about it within seconds. The "LAST MINTED" timestamp on the Scarcity page will actually mean something now.
- Supply counts are still resolving — 28.58 million tokens need to be classified one by one, and the metadata API has opinions about how fast we’re allowed to ask. The numbers get more accurate every hour. Think of it like a photograph slowly developing. The picture is already there. It’s just coming into focus.
- The portfolio header got tighter. Your 7‑day change badge now sits next to the market value instead of floating underneath it. And if you’re authenticated, there’s a new line that tells you exactly how far above or below cost basis you are — as a percentage, with an arrow, in the appropriate color. Small change. Reads better.
Mar 22, 2026
- Cost basis was using the current GUN price instead of the price when you actually bought the item. So every time GUN moved, your "what you paid" moved with it — which is not how paying for things works. Fixed. Your cost basis now reflects what GUN was worth the day you acquired each NFT.
- The portfolio summary cards got an honesty rewrite. YOUR NFTS now breaks down how you got each item — decoded, traded, transferred, received — instead of just showing a number. MARKET CHECK shows where the valuation actually comes from: how many are listed, how many have comparable sales, and how many are educated guesses. Flip any card for the deeper story.
- Transferred items were being counted as purchases. If someone sent you an NFT, we were treating it like you bought it on OpenSea and assigning a phantom cost basis. Now we trace back to the sender’s original purchase — their venue, their price, their date — and label it correctly as a transfer.
- The acquisition timeline has a provenance trail. Transferred items now show a ghost dot at the original purchase date connected by a dashed line to when it arrived in your wallet. Hover either point for the full story: "Bought Mar 5 → Transferred Mar 12." You can see the item’s entire journey.
- The GUN balance card got reorganized. Your balance and dollar value on the front. Flip it for the current GUN price, liquidity depth, and a note about what that depth means for someone holding your specific amount. The liquidity indicator from v0.8.2 found its permanent home.
Mar 21, 2026
- The sparkline actually means something now. Portfolio value tracked server‑side, persists across devices and browser clears. Clear your cookies. Go ahead. We’ll wait.
- GUNZscope computes 85 data points per NFT. Cost basis across 6 acquisition venues, Seaport decoding, historical price resolution, sender tracing. That level of intelligence now requires a connected wallet. View‑only visitors still see market value, holdings, and the full gallery. The enrichment pipeline runs for everyone — proving ownership just flips a switch.
- The gating isn’t cosmetic. Cost basis, acquisition details, and P&L are stripped from API responses at the server. Not blurred. Not hidden with CSS. Removed from the payload entirely. 20+ fields redacted per NFT. The intelligence layer has boundaries now.
- The tooltip stopped lying. Historical percentages now measure change from chart start, not from fabricated cost basis data that was secretly identical to market value. The +0.0% era is over.
- GUN price texture line. A faint pulse behind the portfolio sparkline showing hourly GUN/USD microstructure. Flat markets no longer look dead.
- Enrichment retry. GunzScan needs a moment to warm up on cold browsers. The pipeline now waits and tries again. Twice. Most wallets hit 100% without touching the refresh button.
- 63 caches audited, 4 fixed, 3 deprecated. localStorage is no longer the source of truth for anything important. Server snapshots run the show now.
Mar 17, 2026
- The GUN BALANCE card now shows a liquidity depth indicator. It tells you how much real money is sitting in trading markets backing the GUN price you’re looking at. "DEEP" means the price is solid. "THIN" means three whales selling at once could rearrange reality.
- Hover the indicator for a plain-language breakdown: what the depth tier means for you, 24-hour volume, buy/sell ratio, which trading market has the most activity. No jargon. If you’ve never thought about market depth before, the tooltip explains it like you’re a normal person who just wants to know if the number is trustworthy.
- DexScreener is the sixth data source feeding into GUNZscope. It runs on a 60-second refresh, costs nothing, and requires zero API keys. The entire feature quietly returns nothing if there’s no data available — no error screens, no loading spinners into the void. It either helps or it stays out of the way.
Mar 14, 2026
- Pinned favorites now show which wallet they came from. If you named your wallets, you’ll see that name under the card. Hover it for the full address.
- The favorites section now decodes into existence like it’s being extracted from the Matrix. Scanline, digital rain, character scramble. Entirely unnecessary. Zero regrets.
- The wallet search box has a visible border now. It was camouflaged against its own background. You can find it without squinting.
- Fixed a React state sync bug when unfavoriting NFTs. The kind that works fine but makes the console angry.
Mar 13, 2026
- GUNZscope Player Identity is live. Claim a unique handle — your on‑chain name, permanently yours, registered on Avalanche C‑Chain. First one’s free. Changing it later costs 0.005 AVAX, because commitment should mean something.
- Your portfolio wallets are now part of your on‑chain identity. Every wallet you’ve added — verified or self‑reported — gets synced to the contract when you attest. One identity, many wallets, all provably yours. The kind of thing that sounds obvious until you realize nobody else is doing it.
- The attestation flow got a new step: wallet sync. Before your portfolio hits the chain, we compare what’s in your account with what’s already on‑chain and batch the difference into one or two transactions. No more signing fifteen popups. If a wallet was claimed by someone else, we skip it gracefully and warn you instead of blowing up the whole attestation.
- The Onchain ID explorer now shows handles next to addresses. Search by handle or address — type "CryptoHaki" and find them instantly instead of copy‑pasting 42 characters of hex. Individual attestation pages show the attester’s handle, their portfolio wallets, and verification status badges.
- Why this matters: your GUNZscope identity isn’t locked in our database. It’s on a public blockchain. Any app, any game, any ecosystem participant can look up your handle, see your verified wallets, and check your attestation history without asking us for permission. Your gaming reputation just became portable infrastructure.
Mar 10, 2026
- Every piece of text in the NFT detail modal got bumped up in size and opacity. Cost basis labels, P&L values, USD conversions, section headers, italic subtexts — all of it. If you were leaning into your monitor to read your own position data, you can sit back now. The information was always there. It was just cosplaying as invisible.
- The purple accent text (labels and headers) was so faint it looked like a rendering bug. Full opacity bump. Purple should look like purple, not like purple just quit the lobby.
- Clicking the NFT image in the detail modal now opens a full-screen lightbox. Scroll to zoom in up to 5×, click to toggle between 1× and 2×, click anywhere else to close. A zoom percentage indicator sits at the bottom so you know exactly how deep you’ve gone. For when you need to count the pixels on your new drip.
- High-res images now cache themselves automatically. When OpenSea returns listing data, we grab the CDN image URL and stash it in the metadata cache. Next time you open the lightbox, the hi-res version loads instantly instead of whatever the on-chain metadata felt like providing. The cache fills itself as you browse — no extra API calls, no loading spinners, just quietly better images over time.
- The acquisition timeline tooltip got a frosted glass treatment. Semi-transparent background with a subtle backdrop blur, because even hover states deserve a little atmosphere.
Mar 10, 2026
- If you logged out on the portfolio page, the navbar decided you didn’t deserve navigation links OR a login button. Just a logo floating in the void. You could stare at it. That was the experience. Fixed — anonymous users now see nav links and a Login button on every page, like a normal website.
- Refreshing the homepage had a coin-flip chance of teleporting you to the waitlist page. Turns out, signing up with your email months ago left a breadcrumb in localStorage that said "this person is on the waitlist." You got whitelisted, connected a wallet, used the app for weeks — and that breadcrumb was still there, patiently waiting to yeet you back to the waitlist on every homepage visit. It’s gone now.
- The logo in the navbar used to keep you on whatever page you were on when logged in. If you were anonymous on an in-app page (say, viewing someone’s shared portfolio), clicking the logo did nothing useful. It now takes you home, which is where homeless users should go.
Mar 8, 2026
- The entire color system now runs through a single set of design tokens instead of 45 hex values scattered across stylesheets like confetti. Changing the background color of every surface in the app went from "find and replace and pray" to editing one line. You won’t notice anything different. That’s the point.
- Those angular corner cuts on cards and panels used to be hardcoded pixel values baked into clip-path polygons. Now they’re driven by CSS variables — small, medium, and large — so the entire geometric language of the site can be adjusted from three numbers instead of hunting through every component.
- If you had reduced motion enabled in your OS, we were already disabling animations — but smooth scrolling was still doing its thing. Fixed. If your system says "stop moving stuff around," we now actually stop moving stuff around.
- Every page had two invisible full-screen layers painting the grid background and scanline overlay. Now it’s one. Your GPU was rendering two viewport-sized textures for a visual effect that works just as well composited into a single element. Freed up a few megabytes of VRAM that your browser was hoarding for no reason.
- Scroll performance got a quiet overhaul. The navbar, public nav, and scroll-to-top button were all firing state updates on every single scroll event — up to 960 times per second on a 120Hz display. They now batch into one update per animation frame. The scroll-reveal animations also clean up after themselves instead of watching elements forever after they’ve already appeared.
Mar 7, 2026
- The wallet modal used to say "Connect Whitelisted Wallet" and offer two unlabeled paths that looked identical until you picked one and found out. Now it says "Get Started" with two clearly marked lanes — "View Only" for pasting an in-game address, "Full Access" for connecting a real wallet. One is window shopping. The other is moving in.
- If you shared a portfolio link with someone (?address=), they’d hit the page, see a flash of content, and get redirected to the homepage. The auth middleware was checking for a session cookie even on view-only links. It now lets you through if you’re just looking, which is the entire point of a share link.
- The "View Only" badge in the portfolio header had a blind spot. If you were logged in with your own wallet and viewed someone else’s address, the system still thought you were the owner. So you’d see "Full Access" controls for a wallet you can’t sign for. Fixed — it now compares the address you’re viewing against the one you connected with.
- Portfolio values could get permanently stuck on "Calculating..." if the price API timed out. The loading state waited for a GUN price that was never coming. There’s now a 15-second hard timeout — after that, it shows what it has instead of what it wishes it had.
Mar 5, 2026
- The Early Access gate used to be a polite suggestion. A non-whitelisted wallet could connect, get a profile row created, browse around, and generally act like they owned the place. The server would shrug and let it happen. Now every authenticated route checks the whitelist before doing anything — API routes via JWT, page routes via session cookie. The bouncer finally showed up to work.
- Removing someone from the whitelist used to hard-delete the row. Gone. No record it ever existed. Re-adding them created a duplicate. Banning someone quietly erased the evidence they’d been there at all — which is either a privacy feature or an oversight, depending on how generous you’re feeling. Now removals are soft deletes. The history stays, the audit trail stays, and the data model stops gaslighting you.
- Four ghost profiles that snuck in before the gate existed have been cleaned up. One real user who got caught in the sweep was whitelisted properly, because we’re thorough like that.
Mar 5, 2026
- You can now favorite NFTs directly from the gallery. A heart icon appears on hover — click it, and the item shows up in your Favorites tab in Account. It’s basically a bookmark, but for JPEGs you paid real money for.
- Pinned favorites float to the top of your gallery. Found that one skin you keep scrolling past 200 items to find? Pin it. It’ll be waiting at the top next time. Pins persist across sessions because we’re not animals.
- The new Wishlist tab lets you track NFTs you don’t own yet. Add any item from any collection, and we’ll keep an eye on its price. Think of it as window shopping with a spreadsheet.
- Your account panel got a cleanup pass. Display names that were showing as "Anonymous" now fall back to your wallet address, which is at least more honest. Duplicate accounts from reconnecting the same wallet got merged quietly in the background.
Mar 5, 2026
- A few releases shipped without changelog entries — fixes and infrastructure work that wasn’t worth interrupting you for. v0.6.x covered the auth hardening: the Early Access gate moved from client-side checks to server-side enforcement, the whitelist got a proper database migration with soft deletes and a full audit trail, and the referral flow got a sanity pass. Nothing you’d notice if it was working. You’d only notice if it wasn’t.
Mar 4, 2026
- Your portfolio header now has a sparkline that shows how far above or below your cost basis you are over time. Green when you’re winning, orchid purple when you’re not. A dashed line at zero marks where you broke even — think of it as the emotional support line.
- The lollipop chart (yes, that’s really what it’s called) got gradient stems that fade from transparent at the bottom to full color where they meet the dot. Each acquisition venue gets its own color. Hover over a dot and a crosshair line now draws from it back to the Y‑axis, so you can actually read the cost without squinting.
- The Cost vs Value scatter plot learned some new tricks. Dots near break‑even get a white outline so you can spot them. The break‑even line label now rotates to follow the diagonal instead of sitting there horizontally like it doesn’t know what angle means. And there’s a dashed horizontal line marking the floor cluster — all those items trading for pocket change.
- Loss colors across the portfolio got a rebrand. Red is out, orchid purple is in. Turns out staring at red numbers all day was bad for morale. Purple feels more like "unrealized potential" and less like "the building is on fire."
Mar 4, 2026
- We ran a 40-item performance audit and parallelized every serial bottleneck we could find. API routes that used to fetch data one thing at a time now fetch in parallel. The leaderboard, price lookups, cron jobs, and on-chain RPC calls all got the same treatment. If it was waiting in line, it’s not anymore.
- Six API routes now have Cache-Control headers, which means your browser and Vercel’s CDN will serve cached responses instead of hitting the server every time. Price data refreshes every 30 seconds. NFT P&L data hangs around for a minute. This matters more than it sounds.
- The GUN price hook was rewritten to use SWR — automatic deduplication, background refresh, stale-while-revalidate. If three components ask for the price at the same time, one fetch happens. The other two get the cached result instantly.
- Four of the largest files in the codebase were decomposed into focused modules. AdminPanel went from 1,342 lines to 155. The brand page went from 1,682 to 195. The portfolio page now lazy-loads five heavy components so the initial render is just the shell and your data.
Mar 2, 2026
- Clicking "View" on an attestation used to dump 1,600 lines of raw JSON in your browser. Now it shows a proper page — wallet, value, item count, merkle root, the whole thing rendered like it belongs in the app. Because it does.
- The login modal was see-through enough that you could read the page behind it instead of the modal itself. Bumped the opacity. You can still tell it’s a modal. You can also read it now.
- Text inputs no longer flash solid green when you paste something. Our selection color was set to "lime, full blast." Now it’s a subtle tint.
- Public pages (/explore, attestation viewer) now have their own lightweight nav with Home + Onchain ID links instead of showing an empty navbar. Small thing, big difference when you’re not logged in.
Mar 2, 2026
- Leaderboard, Scarcity, and Market now live under an "Experiments" dropdown instead of cluttering the nav bar. They’re still experimental. The dropdown makes that clear without pretending otherwise.
- The "Explore" link is now "Onchain ID." Because that’s what it actually is — your on‑chain identity, verified and attested. Naming things correctly turns out to be important.
- Autonomys attestation count in the tooltip was undercounting because newer attestations go through a different URL path. Fixed. Math is hard when your data has two front doors.
Mar 2, 2026
- The market page used to take 4‑8 seconds on a cold load because it fetched things one at a time like a polite queue at the post office. Now it fetches in parallel. Noticeably faster.
- If you visit the market page before your portfolio, your NFTs now get instant floor prices from market data instead of looking up each one individually. Think of it as the market page leaving notes for your portfolio page. They’re finally talking to each other.
- Token names are cached for 24 hours. Your second market load skips hundreds of name lookups entirely because — turns out — NFT names don’t change after they’re minted. Revolutionary insight.
- NFT detail now shows all available reference prices in an expandable list. Best estimate gets the spotlight, everything else lives behind a "show more" toggle. Because one number is a fact, three numbers is context.
Mar 2, 2026
- Backend fixes and internal tooling. Nothing you’d notice. That’s the point.
Mar 1, 2026
- You can now attest any wallet you’re tracking — not just the one paying for gas. Connect MetaMask, pick your in‑game wallet, hit attest. The on‑chain record shows the right address. Before this, it showed whoever signed the transaction, which was… not the point.
- Also fixed a bug where switching to Avalanche mid‑attestation could cause the transaction to fail because the block number came from a different RPC than the one actually sending the tx. The kind of bug that only shows up in production.
Mar 1, 2026
- Attestations now cost 0.01 AVAX. Somebody has to pay for the block space. Your wallet shows the fee before you sign — no surprises, no hidden charges.
- When you look up your attestation on the block explorer, the metadata link now goes to gunzscope.xyz instead of some third‑party domain you’ve never heard of. Same permanent storage underneath. Better front door.
Mar 1, 2026
- Your Cost vs Value chart quietly ignored every NFT that didn’t have market data. No listings, no sales, no dot on the chart. Gone. Those NFTs still had GUN appreciation on their cards, but the chart pretended they didn’t exist. Now they show up as hollow circles — positioned by how much GUN moved since you bought them.
- Filled dot = someone put a price on it. Hollow dot = GUN math only. Both turn green or red. If you own three of something, you get three dots, not one big one.
- The insights panel said "14 of 17 items" when it meant 14 of 22. Turns out a ×2 grouped card is two NFTs, not one. Counting is hard.
Mar 1, 2026
- New /explore page — every portfolio attestation that hits C‑Chain shows up here. Wallets, GUN totals, timestamps, links to the actual transactions. No login required. Go see who’s actually using this thing.
- Your attestation metadata now lives on decentralized storage permanently. The Merkle root sits on Avalanche, the full item list sits on Autonomys. Both verifiable. Both not going anywhere.
Mar 1, 2026
- On‑chain portfolio attestation — you can now stamp a cryptographic proof of your holdings onto Avalanche C‑Chain. It’s in the share menu. Your portfolio, verified on‑chain, no trust required.
- Fixed a bug where buying multiple NFTs in one OpenSea transaction assigned the total price to every single item. If you bought 4 weapons for 6,590 GUN total, each one said it cost 6,590. Math was never our strong suit.
Feb 28, 2026
- New trial access window — 72 hours of full portfolio access including your referral link. Get 1 friend to sign up through your link within the trial and you keep access permanently.
- Expired trial users get a lower referral threshold than the regular waitlist. Early adopters shouldn’t have to work as hard as everyone else.
- One trial per wallet. No infinite retries.
Feb 28, 2026
- Banned users now see a clear "ACCESS REVOKED" page instead of silently re‑enrolling in the waitlist. If you’re out, you know it.
- Fixed a bug where the wallet connection flow could get permanently stuck on "Choose Your Handle" — the Confirm button showed "..." forever because nobody told it to stop submitting. One‑liner fix.
Feb 28, 2026
- Redesigned the landing page hero — "YOUR OTG" is now a compact super‑label with a glowing purple accent, while the scramble word (Intelligence, Lore, Legacy, Edge) takes center stage at 104px. Bigger type, clearer hierarchy.
- New subtitle copy: "The tactical intelligence layer for Off The Grid. Start your legacy, analyze the market, dominate the meta."
- Cleaned up the CTA area — "Early access — whitelist only" sets expectations before the button.
Feb 27, 2026
Feb 27, 2026
- You can now sign up with email — same waitlist, same referral flow, same 3‑friend threshold. Once you’re in, connect a wallet to see your portfolio.
- The login button stopped doing the cha‑cha. Glitch text on hover no longer resizes the button — letters scramble, container stays put.
- SEO overhaul behind the scenes: every page now has proper metadata, we have a sitemap, and search engines can actually find us. Not that we were hiding.
Feb 26, 2026
- Non‑whitelisted wallets now actually reach the waitlist page instead of bouncing back to the home screen. Turns out "join the waitlist" works better when the waitlist lets you in the door.
- Wallet address inputs across the site now share the same component — chain detection badge, validation hints, the works. Paste an EVM address, get a "GunzChain" badge. Paste a Solana address, get a "Solana" badge. Paste gibberish, get a gentle red nudge.
- Internal tooling got a layout pass — inputs, buttons, and address bars now line up properly across the board.
Feb 23, 2026
- Fixed "Failed to load referral data" showing a dead‑end error with no useful info. Now logs the actual HTTP status and server message to the console, so when something breaks you can see why instead of staring at a red wall.
- New /roadmap page with the on‑chain architecture overview. If you’re curious where GUNZscope is headed, it’s all there.
Feb 22, 2026
- The updates page is now collapsible. Latest version expanded by default, everything else tucked away behind a click. Because scrolling past 25 versions of patch notes to find the one you care about was getting old.
- Update entries moved to their own data file. Not something you’ll notice, but it means we can add entries without touching the page layout. Separation of concerns — thrilling stuff.
Feb 22, 2026
- Fixed a bug where the gallery card would cheerfully tell you your NFT lost 72% based on market data, while the modal for the same NFT claimed it had no idea what a market was. They now read from the same source. Progress.
- Rarity floor estimates no longer pretend to be market data. If all we have is a statistical guess based on what similar‑rarity items trade for, we say "Reference Estimate" instead of "Market Reality" — because calling a guess a fact was getting awkward.
- Gallery cards now only show the MARKET line when we have actual sales data to back it up. No more ‑99.4% MARKET” based on vibes.
Feb 22, 2026
- The NFT detail modal got a proper split personality. Track A ("Your Deal") tells you how GUN’s price movement treated your purchase — what you paid, what that GUN is worth today, and the unrealized P&L. Track B ("Market Reality") tells you what the market actually thinks your item is worth based on real sales data. Both live in their own cards with big, impossible‑to‑miss P&L numbers. Because the truth deserves a spotlight, even when it’s ugly.
- Cost basis is no longer floating alone above everything. It moved inside Track A where it belongs — right above "Today’s Value", so you read top‑to‑bottom: what you paid, what it’s worth now, how that math worked out. Novel concept, reading order.
- Track B now shows exactly how confident you should be in its estimate. A green dot, the tier label ("VIA SALES", "FLOOR", etc.), sample count, and whether it’s above or below floor. All the context to decide if the number is a real signal or a educated guess with a nice font.
- The "Observed Market Range" section that used to sit below the position card? Gone. It was information duplication dressed up as a feature. Track B now handles all market context in a cleaner format.
- The /brand page moved behind a gate. Brand guidelines are internal — if you need them, you know where to find them.
Feb 22, 2026
- Each NFT now gets a Market Exit estimate — what someone might actually pay you, based on real sales data. It’s the number that matters when you’re thinking about selling.
- Six‑tier waterfall finds the best comparable price: your exact item → same name → same skin → same weapon → collection floor. Each tier shows its label so you know if it’s a real signal or an educated guess.
- Recent sales weigh more than old ones. Last week counts double what three months ago does. Because 90‑day‑old crypto prices are basically fossils.
- Gallery cards now show the exit estimate below P&L. Small, subtle, honest.
Feb 21, 2026
- Enrichment used to start before all your NFTs were loaded. Every page of 50 kicked off its own pass, and they’d fight over the screen like toddlers with one crayon. Now it waits for the full collection first.
- Switching wallets mid‑enrichment used to leave ghost data from the old wallet haunting your screen. Now stale enrichments just… cease to exist. As they should.
- Console now dumps a diagnostic report after enrichment. Open DevTools if you dare to see how incomplete your data actually is.
- Refresh used to nuke your entire cache from orbit. Now it only clears listing prices. Your purchase history survives.
Feb 21, 2026
- Historical GUN prices are now stored on the server. The first person who loads a date’s price saves it for everyone else. No more every‑user‑for‑themselves CoinGecko race.
- Price lookups got a new middle step — before bugging CoinGecko or DefiLlama, we check if anyone else already looked up that date. If they did, you get the answer instantly. If they didn’t, you still do, and then we save it for the next person.
- Your portfolio header now shows when it was last synced from the server. "Synced 2m ago" or "Synced 3d ago" — so you know if you’re looking at fresh data or last week’s leftovers.
- Manual refresh button next to the sync timestamp. Click it to clear your local cache and re‑fetch everything from chain. The button spins while enrichment runs, because we’re fancy like that.
Feb 21, 2026
- Your NFT now has two profit stories instead of one confused mess. When we have actual market data (listings, sales, floors), the headline shows what someone might actually pay you. GUN token appreciation gets its own little corner underneath, with a sentence explaining what happened in plain English. You’re welcome.
- The Unrealized number in the top stats bar and the P&L in YOUR POSITION now always agree. Previously they were computing two different things and hoping you wouldn’t notice. You noticed.
- Every P&L now comes with a label — VIA LISTING, VIA SALES, VIA FLOOR, or GUN Δ — so you can stop wondering which tea leaves we’re reading.
- Gallery cards now have valuation badges: LISTED, SALES, RARITY, FLOOR, COST, or UNLISTED. Think of it as a honesty indicator for how real that number actually is.
- Stopped asking CoinGecko for historical prices we already knew. The enrichment pipeline had the answer. The modal was ignoring it and asking again anyway, like a toddler who doesn’t like the first answer.
Feb 21, 2026
- P&L is now based purely on GUN price movement — what you paid in GUN, times the difference between then-price and now-price. No more mystery waterfall of floor prices, comparable sales, and vibes. Just math.
- Removed the "vs listing" / "vs sales" / "vs floor" labels from NFT cards. One number. One truth. Less confusion.
- Fixed a fun bug where OpenSea was telling us sale dates were in January 1970. Turns out Unix timestamps in seconds and milliseconds are different things. Who knew. (We do now.)
- Your NFT detail modal was quietly overwriting correct price data about one second after opening. It had the right answer, then threw it away and guessed again. Fixed.
- Transferred NFTs now show when the original purchase happened, not when your buddy sent it to you at 3am
- Gas fees are now visible in the YOUR POSITION section — because yes, you did pay for that transaction, and you deserve to see exactly how much
- Purged a bunch of stale cached prices that were stuck at $0.0776 (the GUN launch price). If your whole portfolio looked suspiciously cheap, it should look correct now
- Added a sanity check that rejects any historical GUN price above $0.12. If CoinGecko says your NFT cost $47 in GUN, we politely disagree
- MetaMask users on the home page: the connect button actually opens MetaMask now instead of staring at you blankly
- wGUN (wrapped GUN) purchases are now properly tracked for cost basis — OpenSea offer fills no longer show up as free items
Feb 19, 2026
- USD cost basis now actually shows up on all items. Previously the lookup was failing silently, so half your portfolio just shrugged and showed GUN only. Helpful.
- Acquisition cards got a facelift — USD is now the big number, GUN lives underneath. Because most humans think in dollars, not in-game tokens. Revolutionary concept.
- Portfolio chart stretches to 14 days now. Seven days felt like checking your portfolio with one eye closed.
- Empty wallets no longer stare at you with a blank $0.00 dashboard. You get a search bar and some links instead. At least you can look up someone richer.
- Chart tooltip used to be permanently stuck at the bottom of the chart like it was afraid of heights. Now it follows the data point.
- Marketplace purchases that cached with no price used to just… stay wrong forever. Now they get retried. Imagine that.
- More items catalogued — Pioneer Set, Player Zero, Prankster Set and friends now have proper origin badges
Feb 18, 2026
- Item origins expanded to 35+ releases. Enforcer, Pink Fury, Mr Fuckles, Mad Biker, Hopper Pilot, Trick Treat or Die, Neotokyo — we’re cataloguing everything like obsessive librarians.
- Battle pass items and event rewards that cost basically nothing now say "AIRDROP" instead of "0 GUN". Because "0 GUN" made it look like a bug. It was, but now it’s a feature.
- Halloween items got their real event name back — "Trick, Treat or Die" instead of the very creative "Halloween"
- Don DeLulu and Mrs Crackhead Santa were slipping through the name matcher. They’re caught now. Nowhere to hide.
- New loading screen quips. We won’t spoil them here.
Feb 18, 2026
- The search bar now tells you in real time if your address is GunzChain or Solana, and whether it’s even valid. No more pasting garbage and wondering why nothing loads.
- Watch and Portfolio buttons moved to the wallet bar where they make sense. Previously they were floating above the search results like lost tourists.
- Started building a database of every Battle Pass, Content Pack, and Event release. Your NFTs now know their own backstory.
- Wallet dropdown got a darker background so it stops blending into the abyss behind it
Feb 18, 2026
- Portfolio loads faster — charts and gallery now load on demand instead of all dumping into the page at once like an overturned filing cabinet
- Switching wallets quickly no longer shows you the previous wallet’s data. Turns out people don’t enjoy seeing someone else’s portfolio flash before their eyes.
- NFT cards now stagger-animate in when the gallery loads. Purely cosmetic. Entirely necessary.
- Chart tabs respond to keyboard navigation. Accessibility: we’re trying.
Feb 17, 2026
- Dashed cost basis line on the portfolio chart. Now you can see how much you actually spent next to how much it’s currently worth. Emotional damage, visualized.
- Chart dots fade in as your NFTs load, like little data stars being born. Before this they just appeared all at once. No drama.
Feb 17, 2026
- Portfolio share card redesigned — tactical HUD style showing GUN balance, NFT count, and cost basis. It looks cool. We’re not sorry.
- Download your portfolio card as a PNG. For X, Discord, your refrigerator, wherever.
- Shared portfolio links now include cost basis data. Your friends can see what you’re really working with.
- Chart zoom fixed — dots no longer yeet themselves off the visible area when you scroll
- Shift+scroll zooms toward your cursor instead of the chart center. Small thing. Big satisfaction.
- Gallery scrolls faster with large collections. If you own 200+ skins you deserve a smooth experience.
- NFT prices pop in faster during enrichment. The loading bar still takes a minute but the numbers show up sooner.
Feb 17, 2026
- Smooth crossfade between chart views instead of the content just vanishing and reappearing.
- Multi-wallet NFT count was not, in fact, counting all the wallets. It is now. Addition.
- Gallery count includes duplicates. If you own 3 of the same skin, that’s 3 versus 1. Joker would be proud.
- Holdings breakdown got a cleaner layout. Less visual noise, same data.
- Wallet dropdown got spring animations because static dropdowns are for banks.
Feb 17, 2026
- Spring-physics animations on every panel, modal, and drawer. The whole UI feels like it has a pulse instead of just snapping into existence.
- Custom green arrow cursor across the entire site. You’re in a tactical scope. Act accordingly.
- Wallet switcher and share icons stay highlighted while their panels are open. Sounds obvious. Wasn’t happening before.
Feb 16, 2026
- NFTs bought via OpenSea offers now show their actual purchase price. Previously these showed up as mysterious free acquisitions.
- Offer fills display "OpenSea (Offer)" as the source. Transparency is the new flex.
Feb 16, 2026
- Removed 15 unused libraries. The bundle lost weight. Your load times will thank us.
- Charts, modals, and heavy components only load when you actually need them. Lazy loading — finally, a work ethic that matches our personality.
- Images serve in AVIF on supported browsers. Smaller files, same pixels. Science.
Feb 16, 2026
- New Market page — browse every active OpenSea listing for OTG items with search and direct buy links. Window shopping, but for NFTs.
- Scarcity page leveled up with quality badges, "Best Deal" sorting, and price range filters. Finding underpriced items just got easier.
- Listing coverage tripled to 3,000 items. We’re pulling basically everything OpenSea has.
- P&L chart got gradients and smarter axis labels. Charts should be beautiful. We don’t make the rules.
Feb 15, 2026
- Acquisition Timeline chart with better Y-axis distribution. Dots no longer pile on top of each other like a mosh pit.
- Dots appear on the chart in real time as enrichment discovers them. Previously you had to wait for everything to finish before seeing anything. Patience is overrated.
- Portfolio sparkline stopped having an existential crisis on page reloads.
Feb 14, 2026
- Share your portfolio on X or Discord with a rich preview card. Finally, a socially acceptable way to flex your NFT collection.
- Better valuations — per-item listings, comparable sales, and rarity-tier floors. Three ways to feel good (or bad) about what you paid.
- New insight cards: unrealized P&L, most valuable item, biggest loss. The full emotional spectrum in one dashboard.
- Acquisition Timeline and P&L Scatter Plot now live on the main portfolio view. More charts. Always more charts.
Feb 14, 2026
- NFT valuation waterfall: per-item listings, rarity floors, comparable sales — multiple opinions on what your stuff is worth
- Cost basis vs market value, side by side. The "how much did I spend vs how much is it worth" reality check.
- Per-item P&L with interactive charts. Click around. Cry a little. It’s fine.
- Feature request system is live — submit ideas, vote on others, attach screenshots. Democracy for a portfolio tracker.
- Browse any wallet with ?address= links. No login required. Perfect for stalking.
- Multi-wallet portfolio — combine all your wallets into one summary. For those of us who can’t commit to a single address.
Feb 13, 2026
- New scramble-decode loading animation. Looks like a hacker terminal from a movie. We’re very proud of it.
- NFT Holdings sparkline toggle. Tiny charts inside your portfolio. Charts within charts. Chartception.
- Wallet address help panel for people who just want to know where to find their address. We get it. It’s confusing.
Feb 12, 2026
- NFT sparkline with historical hover counts. Little charts that follow your mouse. Very satisfying.
- Grouped NFTs now glow with dynamic rarity accent colors. Epic is purple. Rare is blue. Common is gray. You’ll figure it out.
- Fixed decode cost extraction for relayer transactions. If you don’t know what that means, good. It was broken. Now it’s not.
Feb 11, 2026
- Ambient portfolio sparkline lives in the background now. Subtle. Atmospheric. Possibly unnecessary. Definitely staying.
- Portfolio auto-loads when you connect your wallet. No more clicking "Load" like it’s 2003.
- Wallet identity bar got a redesign. Cleaner. More tactical. Less "default Bootstrap."
- SEO metadata on all pages. Google can find us now. Whether it wants to is another question.
Feb 10, 2026
- Insanity Mode. Toggle it. Cards go angular. Vibes go unhinged. You either love it or you don’t.
- Email authentication. For people who prefer passwords over seed phrases. We respect that.
- Scarcity page improvements. More data. Better sorting. Still no guarantees your items are worth anything.
Feb 9, 2026
- Feature request system. Submit ideas, vote on others. We actually read these.
- Leaderboard page — see who’s holding the most OTG items. Comparison is the thief of joy, but here we are.
- Wallet connect flow got styled. It no longer looks like a placeholder from a hackathon.
Feb 5–8, 2026
- Multi-wallet architecture — portfolio context, hooks, the whole plumbing. Not glamorous. Very necessary.
- Marketplace price enrichment pipeline. We ask OpenSea what you paid. Sometimes it even answers correctly.
- WaffleChart for portfolio composition. Because pie charts are for measuring pies and figuring out how much pizza is left. Never use pie charts. Just don’t.
Jan 31 – Feb 1, 2026
- NFT P&L tracking with historical prices. See what your items were worth when you bought them vs now. Sorry in advance.
- Rarity filter pills in the gallery. Click a pill, see only that rarity. Simple. Effective. Satisfying.
- YOUR POSITION section in the NFT detail view. A dedicated space for confronting your financial decisions.
- Floor price enrichment and caching. Prices update in the background and stick around between visits.
Jan 19–22, 2026
- GUNZscope exists. Multi-chain portfolio tracker for Off The Grid. It’s real. It works. Mostly.
- NFT Armory with weapon compatibility checking. Find out if your attachments actually fit before you embarrass yourself in-game.
- Acquisition tracking from raw blockchain data. We read every transaction so you don’t have to.
- OpenSea and in-game marketplace integration. Two marketplaces. One dashboard. Zero excuses.
Built for the Off The Grid community · Not affiliated with GUNZILLA Games