Working like the proverbial charm…


Made a bit of a mistake last night with Claude. So…there’s two things that needed to happen for this endpoint to add filters (previously, it showed the most recently created 50 characters created with an a InfiniteScroll component that would grab 50 more when you got near the bottom).
Ultimately this endpoint is going to be the public face of the game (accessible to anyone), showcasing the art and characters (i.e. the point of playing: to make them more bad-ass and grow your town to be the biggest and defend the best against the coming Ragnarakopolypse and debug the UI and save the princess and and etc, etc. i.e HAVING FUN doing stuff and building a history of that).
So it’s important this one works right and fast and intuitive. Fun, Fast, Intuitive, Deep. That’s our mantra. And you should be able to do everything with a mouse/tap, as quickly as you can/want (there is a concept of In Game Age (IGA) and In Real Life (IRL) for all Chars that affects…aaah, we’ll get to that later but “Tap Quests” will require a certain ratio of certain things…).
Anyway….
1: We need the counts and names for each Trait (Class, Species, Element, Essence).
2: We need the actual characters corresponding to each filter setting after updating.
This is a *very different* endpoint than just grabbing items sorted by a single ID. Now we have dynamic sql, a changing final object, two requests, multiple possible combinations.
So my big mistake was asking my junior (ha!) dev Claude to do both at once. I *also* made the dumbass mistake of not telling him this filter component should be a new and different one that our current “My Characters” filter, which is working beautifully (because it doesn’t require new backend requests and is just a filter of an existing object). And he tried. He tried hard. We spent a few hours going down that road, then I went back and mentioned we should have forked the road in the begging…
…and we traveled down some roads. I’m very polite to him, it doesn’t help devs to be mean to them. And it was my mistake.
Small, direct, clear user stories. One thing at a time. First things first, second things second, integration tests every step along the way.
I have a feeling this *could have* been done on the my first shot: new component, new endpoint, update correct actions and reducers with correctly formatted objects, modify the existing ones to accept the new parameters…this is where we ended up hours later. After enough pain I’m going to focus on formatting Essences for a couple days (fun, not-crash design work).
Also, talked to the Saga.xyz folks yesterday about some blockchain integration stuff. It won’t be required, but, as you already can in-game, I would like these SME’s (Sentiment Mulitverse Entities) to be “real” in the sense that only a singe human(ish) org can “own” them, and sell or trade (or breed) them on the open market with real dollahs. They should be non-fungible, as it were.
Good times and happy developing!