If you’ve ever scrolled Faraland’s leaderboard or item marketplace, you rarely see a bare string like 0x9f2a…4b10. Instead you see names like ranger.bnb or alchemist.bnb. Translating a wallet address into a player name looks trivial, but it all runs through one function — domainNameResolve() — and that function just got patched
The problem: calling on-chain directly, at the cost of reliability
Before the patch, every time an address needed a name, the server spun up an httpProvider and used the @siddomains/sidjs library to call sid.getName(address) — a direct query against Space ID’s smart contract over an RPC node. Sound in principle, but it meant an ordinary Faraland API request had to wait on an on-chain call to finish, with every risk that comes with it: a slow RPC, an overloaded node, or simply no response at all.
The fix: off-chain, onto a REST API
The on-chain SDK call is replaced with a plain HTTP request to Space ID’s own REST API. Small change but we decided to settle on calling Space ID’s REST API directly for this fix — making fewer layers of abstraction, easier to debug when something breaks.
ENS: where the idea of a “named address” began
To see why this model is worth trusting, it helps to look at where it started: ENS — the Ethereum Name Service. Launched in 2017 on Ethereum, ENS solves a very human problem: nobody wants to read, type, or remember a 42-character hex string to send money to the right person. ENS turns 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 into a name like vitalik.eth.
Technically, ENS is made of two separate pieces:
- Registry — a single central smart contract that only records who owns which domain and which resolver is responsible for it.
- Resolver — the smart contract that actually “translates” a name into data: a wallet address, an avatar, a social profile, or the reverse — turning an address back into a name, exactly what we does at the application layer.
Owning an ENS name is, under the hood, owning an NFT: renewable, transferable, and usable as an identity across your wallet, a profile page, even a decentralized email address. Today, most major wallets and explorers (Etherscan, MetaMask, NFT marketplaces…) display an ENS name instead of a raw address whenever one exists — exactly the UX pattern Faraland is recreating for its own players.
Space ID: the multichain counterpart — and Faraland’s own
ENS is tied to Ethereum, but Faraland runs on BNB Chain, where ENS isn’t the default registrar. Space ID fills that exact role: a registry/resolver system built on the same philosophy as ENS (.bnb instead of .eth), gradually expanding to other chains.
Why a small change is worth writing about
For players, nothing visibly changes: leaderboards, trade history, and item profiles still show names instead of addresses. But for the team, the path to fetching that name is now noticeably less fragile — no longer directly coupled to an RPC provider’s uptime, with an explicit timeout, and decoupled from the smart-contract layer, which was never the right place for an API’s wait-and-respond logic. A small fix, but landed exactly on the weakest link in the chain that turns an anonymous wallet address into a name a player recognizes.
**Disclaimer: Digital asset prices are subject to high market risk and price volatility. $FARA token and NFT are designed solely for use within our on-chain gaming ecosystem and is intended exclusively for participation in gameplay experiences. They are not, and should not be considered as, an investment vehicle, security, financial instrument, or speculative asset. Holders should have no expectation of profit, return on investment, or appreciation in value from the purchase, holding, or use of this token and NFT.
