Navigate

Tuesday, October 23, 2018

Brain*Mart: On the Road to Playable Demo

Didn't make huge progress this week. I may, or may not, have been a little distracted by playing a Vanilla World of Warcraft server. I find the game really inspiring--while it also steals my free time, thus preventing me from acting on the inspiration. Point is--I didn't make the leaps and bounds I had accomplished on the first week.

I did do a few things:

1. Level Building: I put together an environment. It's about three screen-sizes squared--not so big that you get lost, but does require some work moving around and getting to the zombies. The level also includes a sidewalk. It's inaccessible to the player through MathF.Clamp. Anyway, the zombies come in off the street and then leave the same way. Speaking of...



2. Sliding Door: To create an entrance for the zombies, I decided to make a sliding door with four panels. Just for funsies. But it turned out more challenging than I expected. I think it's because the whole time I was writing the code, I kept thinking up future problems. So I spent a lot of time trying to solve problems that didn't exist yet. 20 lines of code later and I was so lost I didn't know what to do. So I started from scratch and it works.


3. Zombie Spawner -- This was essential. I needed a way to "design" the game without having to code every level. So the zombie spawner does more than just instantiate zombies. I have a max amount of zombies that can spawn ever, which can be overridden by clicking the "Unlimited" bool to true. I also have a limit on how many zombies can be in the scene at one time, as well as, how much time must pass before the next zombie can spawn.


I'm still contemplating on ways to mix it up. Should I create waves? Should I designate which brain each zombie should have? Should I set different berserk time lengths? Should it be random and influenced by chosen difficulty?

Definitely worth testing.

4. Nav Route Selector -- Gave me a little trouble. I have game objects I call "Routes". Each route has a list of "Nav Points". I fill the nav points with trigger boxes that serve to both be a target vector as well as set the zombie on a new target when it's reached.

Here's a video of a quick playthrough:


My next goals:

1. Clean up my code. I've been listening to Unity scripting tutorials at work and they advise keeping scripts short and focused. I agree--as my scripts have become a bit unruly. That's mostly from discovering what I need the script to do as I write it. Since I see how everything is working as a whole, I can hopefully streamline a lot of it.

2. Stand-in art. I want to get some 2D art for the player and zombies in the game. I feel as I start testing, that will make the experience more enjoyable for players. I think the environment can be more abstract, but seeing pills from Dr. Mario walk around is probably off-putting.

3. Create a demo. I want to get people playing this game asap. It's essentially playable--but I would like to have: a. A Menu. B. Tutorial--playable--to explain the mechanics. C. End screen with player score.

4. Click Controls. I ultimately see this being on mobile, so I need to start creating a control scheme that translates easily into touch. Hopefully I could do that before finishing a demo.

5. Stretch goal--some audio.

6. OH, and I almost forgot. I feel the floating brain cards and zombie clouds are little--weird. having them float about in 3D space isn't quite working for me. I'm considering making them UI elements on the 2D canvas. I found a video on how to accomplish that, so I want to play around with how that affects the experience.

Saturday, October 13, 2018

Brain*Mart: Collecting Brains and Feeding Zombies

I had really intended to do a post with the Brain*Mart's Game Design Document.

That didn't happen.

Maybe later.

But the reasoning is because of how quickly I've made progress on the prototype. Unlike with FP$, where I spent much of my time learning different components to Unity that would allow me to achieve my project--while also making sure it was structured to work properly, I've been able to push through quickly, easily adding each feature with minimal hiccup.

Though I do wonder if there's more efficient ways to handle a few things.

Here's a video of how it's coming along:

 
1. I got the player controller up and running. No problem, given that I just steal the script from Unity's Tutorial. (Is that considered poor form?)

2. I created a Brain Asset and can change its color based on a Switch Statement. The colors will need to match in order for the player to feed a zombie a brain.

3. I have "Cards" that hide which brain they contain. When the player nears the card, it reveals the brain (color) it's hiding. By pressing space, the player picks up the brain in their inventory--which is shown in the upper right corner. This creates a "memory match" aspect to the game.

4. The zombie has a thought cloud that is blank. When the player nears it, the zombie's desired brain (color) appears--and disappears when the player leaves the vicinity. This adds to the memory match aspect.  Pressing space, if the player has the matching brain color, removes the brain from the player's inventory and satisfies the zombie's hunger--causing it to vacate the premises.

So far, the project is running well. I want to create a zombie generator that will create zombies for the player to serve. I want to include zombie amount limitations and a random timer to space out the zombies.

My hope is to have a good look project within about three months. Given the progress within the first week--I don't think that's too out of scope.

Sunday, October 7, 2018

Moving On to Something New

I've decided to move on from FP$. For over five months I have been working on this project in my spare time. The process has taught me a ton about C# and Unity. Every new thing learned inspires 100 ideas. But this project is taking a long to complete and the end result...well I don't want to say it's not worth it, but it's not fully representative of the games I want to make. By that, I mean narrative driven games.

I say this, but I'm about to pitch my next project--which is minimal narrative value.

Maybe.

So RIP FP$.

...Wait. No.

I'm not killing it. Just putting it on ice for now.

Soooo, sweet dreams FP$. Until we play again.

Now, onto my next idea.

Brain*Mart!

BrainMart is an idea I developed when I first started working at Best Buy years ago. It’s based around meeting customers, discovering their wants, and then providing that want. But to be silly, it features zombies and brains.

As a stretch goal, I would like to explore relationships with Co-workers. But we’ll see.

My hope is to create a project that is Android Store Ready within about three months. To achieve that:

The first month will be devoted to building the systems. I want a fully playable prototype by the end of the first month.. The second month will be about adding in assets and making the project presentable. The third month will be about cleaning up the project--finding areas for improvement. I hope it works. See you at the grand opening! (That was some weak retail humor for you.)