7dfps 

caveat: starting late and already overworked, so the odds of me finishing are not high.

that said: i've been doing non-stop client work for a few months and i am itching to get back to fun game dev, so i am giving it a shot!

what ive been thinking about is a first person shepherding game, inspired by videos like this youtube.com/watch?v=tDQw21ntR6

i'll post updates in this thread unlisted so as not to spam the local timeline, follow along if you're into it!

7dfps 

ive been interested in non-shooting FPSs for a while, and watching our german shepherd play at the park is a big inspiration.

FPSs are interesting to me for a variety of reasons, one of which is the capacity for fluid motion in 3D space constrained to a surface. the world record half-life speed run really drives this home youtu.be/VtI5HM7GVGY?t=746

so the idea is a game where you can run and bark to shepherd sheep where they need to go. the sheep are driven by a boids-like flocking algorithm

7dfps 

mechanically its a 2D game played in 3D, like early FPSs eg Doom and Wolfenstein. so my plan is to prototype it in 2D and then reproject that into 3D with a basic terrain, trees as obstacles, fences marking out boundaries and goals. i think i can skip any skinned mesh animation too and just model one sheep and make them bobble procedurally as they move around, and that's what we call a game dev production hack kids 😎

7dfps 

mechanically im thinking that your position will repel the sheep near you, and barking will increase the velocity of the sheep within earshot. so you're running around and barking at them to get them where they need to go. that's the jumping off point at least.

7dfps 

ok im back, now we have neighborhood centroids

7dfps 

hmm why are they all going to the corner...

7dfps 

hm my implementation is probably off. im going to refactor following processing.org/examples/flocki which seems to get it right

7dfps 

basic boundary avoidance. they kind of get caught between avoiding the boundary and following the flock, might clean that up later

7dfps 

boundary avoidance works against arbitrary line segments, so i have the tools to design levels

7dfps 

so I'm reworking boundary detection to not be based on a ray cast forward from the sheep but rather from a circle around the sheep which is more like how the other flocking rules work. I expect that to be a little bit more fluid, I don't like how janky the current thing is. I was hoping to get boundary detection and the dog in by tonight but that might have to wait until tomorrow!

Follow

7dfps 

@nasser my fav cheap and dirty way of doing line collision is just sweeping it with circles

· · Web · 1 · 0 · 0

7dfps 

@ivan sweeping with circles how so? 👀

7dfps 

@nasser just walk the line on some interval and do circle-based collision with that point

7dfps 

@nasser like point / line collision just becomes distance to the point from N points along the line, and you can easily adjust the distance and sweep coarseness to suit your needs. naturally this can get janky/slow for certain cases, but i've used it more times than id like to admit in load bearing situations

7dfps 

@ivan yeah I guess if you do distance squared it's potentially not that heavy?

7dfps 

@nasser ya. also computers are fast now :)

7dfps 

@ivan no need be good, computer fast 🙏

7dfps 

@ivan tell that to my purely functional lisp compiler 🥁

Sign in to participate in the conversation
coolkids.house

this is where the cool kids live