Another week, another stream of almost getting NPCs done.
Actually, it's a lot closer to being done that it was last week. In that while last week we had a system for NPCs to move along a set path, it wasn't without its issues. Granted this system isn't quite complete, but at least the animations continue to play and our NPCs don't judder around the layout.
I could be a terrible human and take all the credit for this new system, which uses states as I'd wanted to. But, that wouldn't be true. In fact, this came about thanks to something that's becoming more common in my streams - co-op coding. (Thanks, by the way, to my usual co-op coding suspects, Nepeo, Kyatric, LukeNecklace, OhhBaby and Skymen <3)
What usually happens, is I try something, it doesn't work, then viewers come in with their own suggestions as to how to make it work. I originally thought this would be a really painful thing for people to watch - some muppet trying to code something, while her loyal viewers attempt to explain it as best they can over chat. But it's turning out to be a really fun way to interact with people. And because we're trying stuff, watching it break, and trying again, I'm hoping people are learning stuff too. I feel like I am at least.
The final bit of the NPC system in terms of movement is the 'Random Walker'. The idea for these ones, is they have no set path, they just wander around an area, until they walk into something. Then they pick a new direction and start again.
So broadly, it's:
- Pick a direction
- Pick how far to move in said direction
- Check if you can move
- Move there
Rinse and repeat.
I have some kind of idea of how to get that into Construct - getting the NPC to choose movement states, direction etc. I just need to make it all work together! (Then I need to put in some kind of system where they don't get confused by the fact that sometimes the player will be stood in front of them. Though thanks to TechBoxNorth I have some idea for that too.)
The good thing is, as I said last week, this is all being built in a small external project, away from the main game. So it should become a nice example project for a tutorial set! That's the aim anyway.
Also, you'll be glad to know (or you don't care, but tough) that I've done a rough design for the final building in Inott's Entertainment District - The Arcade!
I haven't put it in the game yet, so I'm not sure how it's going to look among the other buildings but whatever. I'll deal with that when I get there! I've also started scribbling down ideas for actual Divimals for the game, so I may start sharing some early sketches if they don't look awful. (They will.)
Anyway. Going to keep it relatively short this week, as there's not too much to report. But hopefully, I'll at least have a new tutorial for you soon. Last week's streams are up on YouTube if you missed them, and I'll be back on Tuesday with more development funtimes. And more of the wonderful Hypnospace Outlaw on Thursday!
And because I don't say it enough:
Thanks everyone who tunes into these streams, you guys make it worth it!