Phyoke

Phyoke

@phyoke.bsky.social

Indie game dev, occasional Twitch streamer, even occasionaler artist. 🚫 No AI. linktr.ee/phyoke

309 followers536 following350 posts

First fully-working platforming challenge! Wired up mini cutscenes to switches and to golden moons spawning in. Feels like a real game now 🥳 Getting closer to being done grayboxing this level, full speed ahead #indiegame #gamedev #indiedev #godot #lowpoly #n64

It's not an #N64 inspired game if there aren't rings of alternating colors that spin and shrink as you jump through them. Also built a system to reveal challenges at the press of a switch! #indiegame #gamedev #indiedev #lowpoly #godot

I love the process of making #lowpoly objects out of renders of high-poly objects. #gamedev #indiegame #indiedev #blender #godot #n64

Been a minute since I've posted an update, life's been busy but I've also started whiteboxing my game's first real level 👀 #gamedev #indiegame #indiedev #godot #lowpoly #n64

He has no style, he has no grace, this Kong has a funny face (used squares for the treetop platforms because I haven't modeled proper climbing trees yet lol) #gamedev #indiegame #indiedev #godot #lowpoly #n64

Phyoke@phyoke.bsky.social

I want my game to have climbing like DK64, where you can climb curved trunks and circle around them freely, I THINK I've come up with a plan but need other #gamedev folks to tell me if it's a dumb idea, my plan is in the replies (1/2) #godot #indiegame #indiedev #n64 #lowpoly

Now THIS is climbing! #gamedev #indiegame #indiedev #godot #lowpoly #n64

Phyoke@phyoke.bsky.social

I want my game to have climbing like DK64, where you can climb curved trunks and circle around them freely, I THINK I've come up with a plan but need other #gamedev folks to tell me if it's a dumb idea, my plan is in the replies (1/2) #godot #indiegame #indiedev #n64 #lowpoly

I want my game to have climbing like DK64, where you can climb curved trunks and circle around them freely, I THINK I've come up with a plan but need other #gamedev folks to tell me if it's a dumb idea, my plan is in the replies (1/2) #godot #indiegame #indiedev #n64 #lowpoly

Path3D following the trunk with a Node3D offset by the trunk radius under the PathFollow3D, and the player under that Node3D when climbing. Vertical movement handled by PathFollow3D progress, horizontal movement handled by Node3D z-rotation. Good idea? Over-complicating it? (2/2)

HEARD. Added a clean little leapfrog hop to get up ledges 🐸 #indiegame #gamedev #indiedev #godot #lowpoly #n64

Phyoke@phyoke.bsky.social

Ledge hang! So far I don't have a clamber-up action...but the jump has enough movement where you can get up with it? I'm 50/50 on leaving it as is or making some kind of hop-up. 🤔 #indiegame #gamedev #indiedev #godot #lowpoly #n64

Ledge hang! So far I don't have a clamber-up action...but the jump has enough movement where you can get up with it? I'm 50/50 on leaving it as is or making some kind of hop-up. 🤔 #indiegame #gamedev #indiedev #godot #lowpoly #n64

RigidBody3D vs CharacterBody3D on the slide, and MAN I'm happy I was able to make them work effectively the same way. Should make for some fun challenges! #gamedev #indiegame #indiedev #godot #lowpoly #n64

One of the last parts of Snork's base moveset: carrying things! Tried to lean as far away from a "modern game engine's physics object" feel and as close to what feels like #n64 physics as I could (the weird egg is a placeholder lol) #indiegame #gamedev #indiedev #godot #lowpoly

Wanted to put some personality into the different fidget animations that play when Snork talks, I'm happy with how they turned out! #gamdev #indiegame #indiedev #godot #blender3d #lowpoly #n64

Oh yeah, we can talk now. Talking animations, speech bubbles, and zooming camera are all working! So many moving parts in a full dialogue system 😫 #indiegame #indiedev #gamedev #godot #n64 #lowpoly

WIP: conversations are all coming together! I'm using Snork's walk animation as a placeholder for talking (the Woolie NPC will have one too) and I still need the camera to move, but we're getting there! #indiegame #gamedev #godot #lowpoly #n64

I'm using a custom dialogue system that breaks up long lines into sizes that'll fit the speech bubbles and treats each new line as a new bubble. I'll be adding Camera/Animation/Movement/etc DialogueActions to dynamically handle speech "cutscenes" entirely via these resources.

Got the stem working on the speech bubble! Going to add thought bubbles next but it should use the same code. Usually you won't have movement control during speaking scenes, so it'll just let me not have to manually position the bubbles. #indiegame #gamedev #godot #lowpoly #n64

Set up a speech bubble that moves so it won't cover the speaker's mouth! Don't have the stem yet to point to the speaker, working on that now. #indiegame #gamedev #godot #n64

Making speech bubbles that move dynamically to not cover the speaker’s face, thinking I’d need some complicated math to get the speaker’s 3D position mapped onto the 2D view. Nah, cameras just have an `unproject` method. I love #gamedev haha #indiegame #godot

Phyoke@phyoke.bsky.social

The more I do #gamedev the more things I assumed would be complicated turn out to be really simple (working with #godot 's particle emitter right now) I'll still get stuck on something dumb for hours, but it's nice when something I expected to take a while is done in minutes

My #godot player and enemies kept getting stuck inside a new piece of terrain so I swapped from Default to Jolt physics. Which broke is_on_wall()?? Had to make a DumbWallRaycast just to keep my wallslide state functional, smh #indiegame #gamedev #lowpoly

Seems like there has to be a consistent force against the wall to keep is_on_wall(), which is 100% not how my (and most, I think?) character controller works. Changing the 3D physics solver settings didn't change anything. What a weird quirk for a physics library.

Me learning #godot, very dumb: Forward is -Z, not +Z? I'll flip the character model so it faces +Z and base all my physics on that, there's no way that'll bite me a year from now. Me now: Huh getting some weird bugs when I adjust the model's sliding angle #gamedev #indiegame #lowpoly #n64

Been busy but found time to work on sliding! Being on terrain in the Slide group triggers it, and it'll be a forward or backward slide based on how he's facing at the start. Adding the animations now, should make for some fun levels! #indiegame #gamedev #godot #lowpoly #n64

Moving platforms 🚫 Easily-configurable moving platforms ✅ Settings for looping, boomerang-ing, flickering/lingering before despawning, respawning after a delay, auto-starting, and exposing sub-scene shapes and mesh to the parent scene! #godot #indiegame #gamedev #lowpoly #n64

I'M not procrastinating on my devlog video, YOU ARE (but I need good b-roll, which means I need a fleshed out gym scene, which means I need more than just static shapes, which means I need moving platforms, which means I need to make a robust tool script to make dev work smooth, right?)

Working on a devlog + being on-call at work + kiddo having a couple rough nights of sleep + brainstorming about the backend of a dialogue system without having any UI yet = a real lack of updates to post about huh lmao #gamedev #indiegame

First devlog script is done! Now to record a lot of B-roll and the actual voiceover. Then learn the basics of editing in DaVinci Resolve 🤨 #gamedev #indiegame

More Pokopia 🥳 New Xenoblade 😮 "In a kingdom ruled by the gods--" "In a land where one kingdom remains--" "In a world where kingdoms rise and fall--" Thumb wrestling 👍 Link with RTX on 🫪

Bit the bullet and fully replaced the AnimationTree with a custom tool script. I needed: - some animations to auto-advance when they finish - simple centralized custom speeds for certain animations Best time to code it right: from the start. Second best time: right now. #godot #indiegame #gamedev

Phyoke@phyoke.bsky.social

I love #godot but man I've got to believe there's a way to make animation trees usable or at the very least legible once you need more than like ten animation nodes. Most things in my game so far don't, but my player character is ROUGH. #indiegame #gamedev

Hadn't done a ton with tool scripts or property list overrides, it was fun figuring out how to make the dropdowns populate with all the available animations! This Animation Manager isn't a full AnimationTree replacement by any means, but it meets *my* needs and now I can add to it if I need to.

I love #godot but man I've got to believe there's a way to make animation trees usable or at the very least legible once you need more than like ten animation nodes. Most things in my game so far don't, but my player character is ROUGH. #indiegame #gamedev

Each node is a BlendTree that has an Animation -> TimeScale -> Output inside. Programmatically it's super convenient to call .travel() or .start() or adjust the playback speed and not have to worry about micromanaging blend speeds. But adding animation nodes is a paaaaain.

Adding all the different combinations of damage recoil animations is taking longer than I expected. I think they're looking good though! Grounded hit backward, aerial hit backward with a landing and getup animation, etc. Halfway done! #gamedev #indiegame #godot #lowpoly #n64

Eventually (after doing the forward-facing versions of these animations) I'll need to add things like swimming versions, animations of him getting flattened, burned, etc. but I'm for sure waiting until I've got enemies coded that actually deal those damage types first.

Upping the effects in my game! Sparkles, dust clouds, and bonk stars. I'm using #godot 's particle system for the passive sparkles on coins and moons, and I made a custom particle manager for the circular moving effects. #gamedev #indiegame #lowpoly #n64

Dust clouds when the bellyflop lands: 10 dust clouds spawned in a circle, spaced with a radius of 0.6 units, moving away from the center at a speed of 1.5. Sparkles when collecting a moon: 6 sparkles spawned every 0.25 seconds, appearing in a random direction 0.3 units from the origin.

The more I do #gamedev the more things I assumed would be complicated turn out to be really simple (working with #godot 's particle emitter right now) I'll still get stuck on something dumb for hours, but it's nice when something I expected to take a while is done in minutes

Bellyflops so big they cause a crater! I think my next task will be to update my effects and particles, adding passive sparkles to coins/moons, adding impact dust/pow-stars/etc to the bellyflop landing, maybe a screen shake as well #gamedev #indiegame #godot #lowpoly #n64

Wall Jumps Will Work! Simplified the jumps from games like Mario64 where you'd bonk and fall if the timing wasn't tight; I want it to be a tool in the player's kit, not a hard skill check. You'll slide down the wall rather than bonk and can jump at will. #gamedev #indiegame #godot #lowpoly #n64

Added another jump type, the sideflip. For sure the trickiest one to nail down the animation look for, and to figure out how to balance the turning around angle + the angle at which the animation starts. His base moveset's close to done! #gamedev #indiegame #godot #lowpoly #n64