MVP & Basic Tech


I tend to struggle pretty hard with fatal scope creep in pretty much every area of life, so I want to get started with determining, and then building, the most basic, baaaasic MVP for WINGMAN (WM) before digging into the more interesting features. I'll be using Unity and C# to create this project, along with some Adobe CS, Blender, and maybe some more niche software as we go along. 

From a mechanical perspective, a lot of the fun parts of my project pitch are not strictly necessary. The date/waiter, even the whole restaurant could be replaced by a black void. This experience COULD function simply as a one-man chicken wing eating contest. Not very interesting, but it is A Thing That Works and can exist as the starting point for all the other ideas. At it's very core, WM needs:

#1 -  A seated VR framework that allows the player to interact with game objects. No transportation system is required here; typically, I love room scale VR environments that you can walk around in and explore every nook and cranny but for this, staying seated is both necessary in-game (you're at a nice restaurant, behave yourself for once) as well as out-of-game (I am not going to chase someone around a room carrying a space heater). 

#2 - Chicken wing game objects that collide with the player's mouth zone and trigger increments in the UI elements and a water glass game object that triggers decrements in the UI elements. 

#3 - A UI that includes a timer, wing counter, bar to measure success (impressiveness), bar to measure heat.

#4 - A basic environment including a table and customary tableware. 

So, what is my approach to these elements at this stage?

#1 - I'm very much a beginner user when it comes to development overall and VR development specifically, so for the sake of creating something that works within the given time, I'll be leaning on some pre-made Unity assets to get there (thanks to OCAD for the residency stipend that will be funding this.) For the VR framework, I've been recommended this one by Bearded Ninja Games. I'll have to take some time to figure out the ins & outs of it but I am optimistic it will go smoothly. (famous last words) 

#2 - Eventually I want to create a custom wing model but we're going to start with something really simple. We'll start out with some basic block-y shapes (I think one of my packs has a water glass, which I am just now deciding to change to milk because that's much funnier and allegedly better for reducing spicy heat); however, there does need to be some sort of basic visual state change to indicate the wing has gone from a full juicy stick of meat to a cleaned-off bone (you can quote this in the official paper).  I'm planning on making a model that comprises of two shapes (bone and meat) and then just disabling the meat on collision with the PMZ. Down the line there will be some auditory and haptic feedback to indicate the consumption as well. (I've recently been reading about Meta's new Haptic Studio tool and am really excited to dig into that but am holding off until the MVP is done.)

Regarding the milk, I haven't decided how I want this to work. Should there be a fixed number of sips? Should it be unlimited, but takes time to lower the heat level? I love the idea of the waiter needing to come and re-fill your glass as an added chaos element but I think the whole waiter mechanic is going to be tough so I'm hesitant to design too many elements riding on it. For now I think I'll just have the water glass be unlimited but maybe add a forced waiting period between sips?

#3 - I've created most of this stuff before so I feel pretty confident in creating the simplest version of the UI. For now, no actual calibrating/game play optimizing will happen; I think one wing eaten will probably equal a flat 10% heat and 10% impressiveness or something like that just to get it running. Once the MVP is built I can focus on actually balancing the different elements.  I'll also need to build in a decay function, which I haven't done before but I have a very cavalier approach towards the anticipated difficulty of that. I think a nicely polished UI goes a LONG way in making something look good and you can sink a lot of time into it, so I will prioritize that in later versions. 

#4 - Similar to #1, I'm not a 3D modeler and although I'm working on it, I'm likely going to rely on some low-poly packs to make sure I can get this done in time. I'm also a little bit concerned about resource optimization and I think creating assets for VR is a whole other thing to learn, so I'm more confident in using some tested and proven models. We're going to start with just a basic room, table & tableware and some chairs, which is a pretty easy drag & drop situation. I am a born and raised player of The Sims and the idea of spending 20 hours finding the perfect models and building a perfect enviro sounds like an absolute treat but again I am holding myself back because there is more important work to be done.