I've now spent 3 days working with Godot for an actual game. Overall it's a really solid engine so far but it's definitely got some rough spots for me. So I figured I'd do a quick thread of "What grinds my gears"
A bunch of commentary on Japanese UX design comments on how cluttered/busy it is. The first thing I noticed in the examples though is that the JP websites have instant access to products. Western sites don't. At least not so overtly that I can tell from the thumbnails shown in the article.
TBH I feel like the Japanese aesthetic is far less wasteful of my time as a user.
Today in What Grinds my Gears:
When a ZAP scan flags a "high severity, high confidence" issue based on literally nothing.
ZAP: sends a request with a hinky query string
Server: ignores all query strings
ZAP: OMG BLIND SERVER SIDE INJECTION INTO A NONEXISTENT TEMPLATE ENGINE!!!!!11one
As in previous "What Grinds my Gears" I really don't get why these scanning tools assign ridiculously high confidence values to issues where there's no evidence the vulnerable component exists.
Reminder that one of the folks that's a big influence on it, jack, is the one who killed Vine. Possibly the single stupidest decision in a very long list of pre-musk stupid decisions made at Twitter.
Not having a block feature out of the box is a huge red flag right off the bat. Jack came from Twitter and he, especially, should know the pitfalls of crap moderation. So far I'm seeing zero indication he learned anything from his Twitter fuckups.
"strongest correlations for couples were for birth year and traits like political and religious attitudes, educational attainment"
All of those come off as massively confounding variables when discussing personal compatibility. By that I mean those variables very likely affect the chance for folks to meet at all.
Started playing Halo 3 (MCC version) and it's pretty decent. It's got probably the gentlest difficulty ramp of all the Halo games I've played so far. Going on memory:
Halo CE: kinda all over the place IIRC
Halo 2: don't remember mostly, high charity was appropriately hard
ODST: jumps around but does ramp mission to mission
Reach: very harsh ramp up at the start before dropping, quite swingy
Halo 3: still playing
Halo 4: haven't played
Halo 5: don't have
Currently working on fixing the player character "falling" off of slopes on reaching the crest.
The green dots show when fall checks happen.
Green = on floor
Red = in air
The player is actually in air on the dot before the red one. I think this means that the check is firing one frame too late. The debug log also seems to show that collision contacts are updating after the fall check.
I find it kinda fun to look at tier lists for Vampire Survivors weapons. It's really easy to tell when it's by someone who's bad at the game vs a community production.
If Axe is rated in the low tiers you're looking at a poor guide. Axe is decent against hordes and great against early bosses IF you place your character correctly. Its evolution is also very good.
If rating starting weapons axe is a pretty easy A tier. All-round B tier.
Got last minute word that a memorial service is happening for a good friend who recently passed is tonight. The event overlaps with my 7pm stream time.
If I'm in the mood I may do a late guerilla stream but no guarantees.
Narrative games where you walk around to find story crumbs picked up the name "walking sims" but I don't think that's appropriate. Sims are about creating the experience of the thing. Flight sims are about being a pilot etc.
The only game I would count is Death Stranding. Load balancing and other mechanics are made to simulate actually walking. Mess up walking and you fall, dropping, and maybe wrecking, your cargo. Walking is the game.
I just love how Chrome will silently delete browser history so if I want to search my history for a URL for something I visit infrequently it's just fucking gone.
StyleCop rant:
What the hell were they smoking when they added a warning to require "using" statements inside namespaces?! Nobody has ever written C# that way.
Also ordering "using" directives alphabetically is a horrible idea. Doing that mixes up .Net, 3rd party and custom references in one big blob. Unlike the 1st it's at least in the same universe as sanity but it's still bad.
Given SA1208 exists (System.* should be before other stuff) it could just be a poorly named warning.
Problem: screen resolution varies, designers need a way to specify a consistent layout
"Solution" a "magic" unit with a completely subjective definition. Real fucking great job there. Also, in practice (I literally just tested this), the unit is not resolution independent so it's still useless.
Just use fucking points. Scaling (units) to pixels isn't a hard problem. Designing for varying aspect ratio is what's hard!
I really don't like programming practices that are followed blindly. Moving some properties from one class to another just because the original is "too long" is not always good. If you only access the split stuff via the original class then your split was a bad move.
Another example: Taking a complex operation and factoring pieces of it into functions isn't always better. If those functions are only referenced once each and tightly coupled then you dun goofed.
Toward the end the speaker walks through a refactoring of a piece of code. It's an example of the (anti) pattern of logging and throwing.
One part that was a bit 🤨 was stripping out code that grabbed configs and validated them since that ultimately led to the method being removed entirely. The problem is that he factored out the actual purpose of the function.
That one absurd leap aside the exercise did have a good point.
The entire problem with corporate executives in one sentence
"Well, as Sony president Hiroki Totoki explained in the company's recent financial earnings report, the PlayStation business is profitable, but not profitable enough."