Welcome new followers! A little context on our game, Nightshift Galaxy!
I've developed it part-time for a year, solo, but we're in the process of forming a development team. Official updates
@tinygalactic
(discord link-in-bio)...
#indiegamedev
🎶 Dogfight (Macross OST) 🎶
There's a baseline drift developing action games where you get used to it in waves and have this tendency to want to make things faster. Whenever I get those thoughts, I load up generic FPS maps to remind myself, no, like, our movement is already insane.
#indiegamedev
Working on flying in tight spaces & over/under bridges. Remove some of my overly-cinematic camera moves, and also added an "air cushion" so you don't have to micro-adjust to avoid walls (not strong enough to prevent a head-on collision)
#screenshotsaturday
Actually dogfighting in my dogfighting game!!!
To avoid "shooting wee pixels on the distant horizon" style of play, I'm working on enemies making more dynamic high-speed close-passes.
#IndieGameDev
🎶緊急事件発生! (Kenji Kawai)🎶
@xewlupus
I actually think an FPS map is a perfect testbed for that stuff because it catches all of the necessary terrain to test movement. Sharp corners, swooping corners, long lanes, verticality.
✨ Added cel-style sharp-shadows & gloss, to really push the classic-anime look. ✨
This is with a custom lighting model, not a post-process filter, so it's cheaper, handles multiple colored lights, etc.
#indiegamedev
🎶 Heroic Gundam 🎶
More refinement (still a few artifacts with the shell to sort-out, and I'm improving the SDF-preprocessor still). Handles zoom out/in legibly. Next step is probably to add a cell-shaded gloss?
#indiegamedev
#techart
#anime
Still in "vacation mode" and just goofing around. Went a bit daffy with the copy-paste key and made a big centipede?
#ScreenshotSaturday
🎶 CROSS FIGHT! (Haja Taisei Dangaioh OST) 🎶
Extremely petty pet-peeve about retro-style rendering. The vertex-wobble on PSX was due to fixed-point quantization + error; it wouldn't happen on static objects when the camera isn't moving.
Last little update of 2023 -- starting plumbing for a system to add reactive environmental vfx. First sample: splashes when you fly close to the water.
#ScreenShotSunday
🎶 Port Town (F-Zero OST) 🎶
Updated FX and poses for the Spider Tank. Goes tippy-toes when clinging to differentiate it from normal walking, and to handle uneven wall-geometry a little more nicely.
#indiegamedev
Optimized the sh*t out of pathfinding in order to enable realtime path-tracking from multiple aggro units. Notice also how I have two NavAgents on the player now -- one on her position and another projected on the ground, for when she's flying.
#screenshotsunday
If anyone in LA wants to try the Starfighter prototype, I'll be at
@GlitchCityLA
's BYOG Playtest this evening.
#ScreenShotSaturday
🎶ドッグ·ファイター (Macross OST)🎶
Updated FX and poses for the Spider Tank. Goes tippy-toes when clinging to differentiate it from normal walking, and to handle uneven wall-geometry a little more nicely.
#indiegamedev
"What's the point of the robot, why wouldn't I just stay a jet?"
Idea: the robot has a guard/shield action. Not sure if it's better on an explicit button, or auto-activated whenever you're a robot and not shooting or dashing?
#indiegamedev
Playing with a dynamic camera lock for minibosses (to make 3D bullet hell more legible). There's a few character control wrinkles to iron-out, but it's working much better than I expected 🔥🔥🔥
#gamedev
#indiegame
Overdue prototype from the checklist: slashing weapon. Thinking each fighter might have their own special attack, and this is unique to Kit's Rabbit?
#ScreenShotSaturday
🎶 Zero (Megaman X) 🎶
Feeling pretty good about this blockout for the city arena. Time to start adding bullet-hell and combat-spawners to really kick the tires.
#indiegamedev
WISHLIST NIGHTSHIFT GALAXY:
🎶 Boss Appears (Bulk Slash OST) 🎶
Quick sewer-drain mockup. Doing the tunnel is relatively easy in
#Blender
using curve bevels w/ a custom profile + the solidify modifier, but cutting holes in the terrain and chambers with the knife tool is a PITA, is there a better way?
🎶 Technodrome (TMNT Arcade) 🎶
Sorry it was a little boring/code-heavy this week. But as a follow-up, here's what we accomplished at least: signed distance field generation! pink = white pixel's distance to closest black pixel, green = black pixels distance to closest white pixel.
Doing maintenance on the enemy system before adding new types. Improvement: running the state machine for a bit after health expires, for custom death behavior. Seen here: jets crashing before they explode. There's AOE on impact, so they'll destroy tanks if they crash into them!
A little improvement on the rail camera/control -- orienting to the spline's direction slightly ahead of you, for natural look-ahead and early-steering.
#indiegamedev
🎶 Gall Force Suite 🎶
Some "Itano Missile Circus" Polish:
- Added path wiggle (octave of perlin noise)
- Cooldown before despawn to give trail time to fade
- Arm-aiming in robot form.
#indiedev
#gamedevelopment
#マクロス
More refinement (still a few artifacts with the shell to sort-out, and I'm improving the SDF-preprocessor still). Handles zoom out/in legibly. Next step is probably to add a cell-shaded gloss?
#indiegamedev
#techart
#anime
#gamedev
#stream
starts in 30 minutes (11am PST) -- we're demoing at a playtest event tomorrow evening, so we're burning down our last-minute TODO list.
🎶 Nexzr (Stage 1) 🎶
Gamedevs will be forever vexed that for every feature we ship with a game there's a half dozen more which don't make it, and players never see. Getting to pull back the curtain a little and show some of those explorations yesterday was gratifying.
#solarash
Been developing a better workflow for in-game motion-comics. I like this method because it involves minimal export-markup from illustrators, and mostly renders through the shader at runtime.
#indiegamedev
Between auto-aim and thumbstick-aiming accuracy, the zipline controls were challenging with gamepad, so I added our trigger-hold mechanic from Solar Ash where it enters bullet-time and disables auto-aim to let you pick the target.
#screenshotsunday
#indiegamedev
Indulging in some action design after working on hub menus for a week: playing with a framing bias to avoid the fighter overlapping the reticle.
Notice how it scoots over whenever you try to cover it up, so you always see what you're shooting.
#indiegame
🎶 Dirty Pair ED 🎶
A little mathematical flexing from
#SolarAsh
preproduction that I was pretty proud of: a method for positioning a camera -- given two heads and a not-blocked-by-UI viewport subregion -- that's balanced for an player-controlled view rotation.
#gamedev
Overdue prototype from the checklist: slashing weapon. Thinking each fighter might have their own special attack, and this is unique to Kit's Rabbit?
#ScreenShotSaturday
🎶 Zero (Megaman X) 🎶
Mostly done adding "IsZeroGravity()" branches throughout the movement code to support deep-space scenes where there's no horizon / "up" -- getting strong "Omega Boost" vibes.
#indiegamedev
🫖Utah Teapot for orientation reference 🫖
Ported the window smear effects from the old instance static mesh system to the new geometry script buildings. Plus side, it's way more optimized; downside I need to redesign how enviro damage works since the baked result isn't modular at runtime...
#screenshotsaturday
Quick 3D run-through of the layout before moving on to blocking out the sewer and subway tunnels. (Took a few iteration adjustments -- was feeling too cramped at first)
#indiegamedev
🎶 Rush Hour (Sim City 4 OST) 🎶
Working on how we author buildings -- toying with the idea of placing boxes into a single object in blender, and then using a geometry node to scatter kit pieces for each with a random seed.
#indiegamedev
WISHLIST NIGHTSHIFT GALAXY:
I'm not actively designing for online multiplayer yet, but I do poke my code from time to time to validate it isn't so painted-into-a-corner that it would require a full rewrite.
#indiegame
#netcode
Gameplay test footage from yesterday's stream, after enabling all the enemy spawners at the same time. Real "chaotic battle" vibes, haha.
#screenshotsaturday
Quick sewer-drain mockup. Doing the tunnel is relatively easy in
#Blender
using curve bevels w/ a custom profile + the solidify modifier, but cutting holes in the terrain and chambers with the knife tool is a PITA, is there a better way?
🎶 Technodrome (TMNT Arcade) 🎶
Quick 3D run-through of the layout before moving on to blocking out the sewer and subway tunnels. (Took a few iteration adjustments -- was feeling too cramped at first)
#indiegamedev
🎶 Rush Hour (Sim City 4 OST) 🎶
Mostly done adding "IsZeroGravity()" branches throughout the movement code to support deep-space scenes where there's no horizon / "up" -- getting strong "Omega Boost" vibes.
#indiegamedev
🫖Utah Teapot for orientation reference 🫖
Did quick skin with the new model on our current rig and it's already looking so good!! Here's a test in the moonbase scene I've been devstreaming the last few weeks.
🎶 Bulk Slash OST // Boss Theme 🎶 (for action-tempo testing)
#IndieGameDev
Spider Tank got a lot of love yesterday, updated the high-speed Falcon today. Better auto-leveling, better bank-strafing, better drift-recovery, and juice the hell out of the missile circus.
#indiegamedev
🎶 Megaman X4 (Slash Beast) 🎶
Multi-way intersections added; think I have about everything I need to make "sewer" gameplay 😎
#ScreenShotSunday
#Indiegamedev
🎶 OP Kamen Rider BLACK 🎶
I extended my fillet-style corner generator to handle arbitrary cross-sections and I have an *okay* tunnel tool, but it still uses too much fine-tuning for my taste, so I want to experiment some more...
#ScreenShotSunday
Blast from the past: the original prototype for Starfighter, before the devil cursed me with ambition. I'm reminded, now, as I redesign the "Shield Projector" from this version for 3D.
#IndieGameDev
Added "Moving Ground Contact" support (long overdue), and an "Enemy Cruiser" blockout (which keeps reminding me of the Planet Express rocket?? LOL ??).
#ScreenShotSunday
🎶Uijin ! Dangaioh 🎶
Some more destruction effects, posted as an excuse to describe one of my favorite little
#gamedev
/
#vfx
tricks: Semirandom Timing with the Inverse Cumulative Exponential Distribution! 🧵
Camera Lock-On Progress
- handles edge-cases (far-away, directly above/below, etc)
- alternate soft-locked jet camera (for steering), but hard-lock again on midair drift
- procedural UI system for heads-up reticle
🎵 Gallant Char from MS Gundam 0079
#gamedev
#indiegame
After some prototyping I've landed on the explicit button, so that it can interact with a new "heat" system where boosting, guarding, and heavy-weapons fill up a heat-meter, which staggers you on overflow, to rein in button-mashing dodge and turtling.
#indiegamedev
"What's the point of the robot, why wouldn't I just stay a jet?"
Idea: the robot has a guard/shield action. Not sure if it's better on an explicit button, or auto-activated whenever you're a robot and not shooting or dashing?
#indiegamedev
I actually really flubbed this math, by mistakenly thinking that (U⋅V)² = U²V² = (U⋅U)(V⋅V) (WRONG, oops). It introduced a small error that I didn't notice until I made the chain long and it compounded. Here's the correct line/sphere intersection formula.
Show me your water art! 🌊
FX I've been working on lately:
- Skyline Planar Reflection
- Color-Transition from Drainage-to-Sewage
- Knee-High Fade/Refraction
- Waterfall/Stream flow (with forking!)
Testing an "Aim Assist" system when playing with a gamepad, which uses the right stick and is significantly less precise that mouse-aiming
#IndieGameDev
#SolarAsh
is out today (PS + EGS). I'm very emotional, having seen this through all the way from the first prototypes five years ago (!!!) through testing/final-polishing on the day before release. It wouldn't have been possible without the incredible team at Heart Machine.
Added the Pirate fighter, as well. Took longer than expected to coerce particle trails to actually touch their emitters at high-speed 🚀🚀🚀
#UnrealEngine
Wild character control is fun, but play emerges from harmonizing it with the setup.
- reworked movement to conform to the arena scale
- dialed-down field-of-view to limit aiming
- stabilized camera pitch & added dynamic framing on ascent/descent
#IndieDev
#GameDevelopment
I like the fight choreography in the new Ranma½ adaptation. It's modernized, but it still uses a steady camera, like a Jackie Chan fight, rather than the now-ubiquitous hyperactive/flying Dragonball/Naruto-style crane camera.
Messing around with warp FX. Here's a two-layer idea: a ProceduralMeshComponent tube w/ depth falloff + a SplineMeshComponent leading you and matching the local neighborhood ahead of you.
#ScreenShotSaturday
Today's Aiming Adventure(tm) -- I added automatic dead-reckoning. Bullets automatically shoot in front of moving targets, not directly at them.
The alternative was to always see an offset between the reticle and the impact explosions, which felt wrong.
#indiegame
#gamedev
Interesting demonstration of
#gamedesign
trade-offs: open-world impose inherent limitations that opinionated arcade-action don't share, because we can curate the arena.
Not only can we play with extreme character framing & distance, but we can even shoot out of the screen!
I've been capturing footage of all the movesets in our game, Nightshift Galaxy, and was compelled to edit a quick sizzle reel. Enjoy!
🎶
@troupegammage
🎶
#indiegame
#gamedev