As I've mentioned previously, locomotion in VR is always a challenge. For games with a smaller game area, you might not need any form of movement; Games with larger worlds, however, have to either use teleportation or artificial locomotion (when the player's head camera is essentially moved. Similar to how FPS cameras work, just in VR). Teleportation can sometimes break immersion, and artificial locomotion (AL) can cause motion sickness, so what do we do?
Well, after much trial and error with different types of movement systems, we've decided on "Walk in place" locomotion. While this might sound ridiculous (and the implementation in many games have been quite silly *ahem* LA Noire VR *ahem*), but with some tweaking, it can prove to be really cool. It's highly sensitive, so you don't need to swing your arms wildly to go anywhere, you can sorta just sway in place to move. Because your body is actually moving in the real world, there is less vestibular disconnect when the camera is moving. (Which causes motion sickness.) As someone who is usually extremely sensitive to VR motion sickness, I must say that it works really well. The other issue is jumping: I've noticed that very few VR games have a jumping mechanic. Doom VFR has a really good jumping implementation, where if you move your hands up by your head quickly, you'll jump. This works well and feels great to do, but its easy to confuse normal movements for jumping movements, and that gets annoying fast. What I've done with this game is if you hold the grip buttons on both controllers at once, then essentially pull yourself into the air, you'll jump. Almost as if you are propelling yourself from an invisible slingshot. The amount you jump is directly proportional to the amount you pull yourself, so it's easy to get the hang of and is very accurate when jumping from building to building (*spoilers!*). In terms of objects, unlike in Oh Captain VR, where objects just become a child of the controllers, allowing them to clip through other objects, the objects in this game track with the controller movement, meaning that they move with physics and collide with each other and other objects in the scene. This means you can duck behind cover, holding a gun against walls/corners/counters and shoot blindly at enemies--it's a ton of fun. I'm super excited to share more info with everyone as the development progresses! Thanks for reading, - Judah So, after the unfortunate debacle that was the demise of Oh Captain VR, I started working on my next project. Though I won't reveal what it is exactly just yet, it is something that I've wanted to do since I first started working with VR and I am super excited about it.
I do have a level mockup that I will show sometime, but I've been focusing on finalizing the core gameplay mechanics of the game in a "greyboxed" level. It has a heavy focus on parkour in VR, with running and jumping across rooftops, along with shootouts, stealth elements...flash bangs, telekinesis, steampunk robots, and more... As someone with a surprisingly weak stomach for VR motion sickness, the way locomotion is handled is important to get right. I'll be explaining exactly how it works in the next post. It's gonna be super cool, I promise... PS: Yes, I know there's the annoying "Weebly" branding on the site. As of a few days ago, they changed something that breaks the custom code I added to remove it. I'm working on a fix currently. Thanks for reading! - Judah Today I ran into the biggest problem I have ever encountered while developing a game...
...The entire Unity project of Oh Captain VR is corrupted. I've tried everything and nothing seemed to fix the problem. Any previous backups of the project, locally or in the cloud, are either broken, or too outdated to be usable from this point on... At this point, it seems like Oh Captain VR will have to be delayed indefinitely. I've put a whole year of work into this project, and though I still am having a difficult time believing that all my work is gone, and as disappointed as I am, I am happy to say that over this past year I have learned a lot to become a better artist and programmer, and am super excited to move on to bigger and better things. In addition to now finally using Unity 2019 after being stuck with 2017 for Oh Captain due to VRTK APIs, I have a few really cool ideas I can't wait to share. More info will be coming soon about my new project, and I promise it will be worth the wait. Thank you for reading, Judah I just have no words.
The past few months have been ridiculously difficult, all due to Apple. Yes, I have been using a PC for my VR development, but I've been using Macs since I was 7. Aside from accidental damage, I've never had any issue--Until now. As some of you may know, I got a grant to develop The Jeremiah VR Experience prototype. Part of this grant allowed me to purchase a Macbook Pro 13 with Touch Bar. It had 16gb of RAM and 256gb of storage. This machine became my primary non-home/non-VR computer that I took to school, used for all Photoshop and Illustrator work, and some light video editing, 3D modeling, and programming. (I also used it to remotely access my VR rig when I'm not at home.) Then came the keyboard issue. It was (and still is) mentioned all around the internet, but I never thought much of it--until it hit my machine. Oh well. I took it to my local Genius bar and had it fixed at no cost. Yay. After being delayed twice, I finally got it back. A week later the touch bar was acting weird, and then stopped working completely. Just my luck. I took it in again, waited a week, picked it up and brought it home, again at no cost. The second I took it home and turned it on, I noticed two things: There was a loud clicking sound whenever I opened or closed the lid, and a white splotch on the screen. Crap. Okay, fine, I took it in again, waited another week, then, finally, I got it back again. The Genius handed me the laptop, and I immediately noticed that the lid was misaligned. Yes, it was shifted to the right. This is the third time I am left with a defective product that was truly their fault. Their policy is that after three botched repairs they replace the laptop. Okay, fine, if that's the best I can do, so be it. They told me that I can either wait two weeks for a refurbished laptop of the same model number, or take what they had in stock at the store. After all that, I refused to risk accepting a refurbished computer, so I went with what they had in stock at the time. All they had that was comparable was a 13 inch Macbook Pro with 512gb of storage and 8gb of RAM. Not the same as what I had originally. After all the waiting, I gave up and took that machine. It's still acceptable for the Adobe Suite, though the extra 8gb of RAM I had before would have been helpful.. oh well. I now have enough storage to dump my entire movie library on it, so that's good! Please Apple. Don't let this happen again. People trust in your (mostly) superior build quality, great software, and, more importantly, your customer support as being some of the best in the business. But, if incidents like these keep happening, it's hard to maintain that trust. Thank you. As I've mentioned before, I am using the Dell Visor WMR Headset, running on Microsofts "Mixed Reality" software, but developing for SteamVR. This has worked great and hasn't caused any issue before. (Except when Steam tells me my boundaries aren't set when they are, just through the WMR home.)
Because of all of the issues plaguing the Windows October Update, my computer didn't get it until yesterday. The update includes a few new cool features for the WMR platform, and I figured I'd break them down and discuss what they mean for SteamVR Developers! You can see the full list of updates at the link at the bottom of this post, but with that being said, let's see what's included! First we have one of the coolest features, the "Mixed Reality Flashlight." This allows users to "Open a portal into the real world to find your keyboard, see someone nearby, or take a look at your surroundings without removing your headset!" This is super useful if you need to quickly make changes to something on your computer screen... but for that, it does make more sense to just flip up the headset. For people walking into the room, however, this is actually perfect. The question is, can we turn it on while in a SteamVR App? ...Well yes you can, because one of the other new features is that you can 1) launch SteamVR apps from the WMR home! While this isn't a huge benefit to developers, it is extremely useful to VR game players because launching SteamVR just to play a game is a little annoying. And 2) The Windows button on the controllers now changes function depending on what you're doing! This means that it can launch the SteamVR menu, turn on the flashlight, or go back to the home! But, more technical stuff, developers can now use QR codes in their apps to scan outside objects. Additionally, there is now hardware DRM support for WMR immersive apps. Devs can also have the Mixed Reality Capture UI directly in their apps, so users don't have to start it in the home. As cool as these features are, the problem is that they only work for WMR apps, and won't have any affect in normal SteamVR apps. In any case, we'll have to see what cool stuff people come up with! You can see the full changelog here: https://docs.microsoft.com/en-us/windows/mixed-reality/release-notes-october-2018 Thanks for reading! - Judah You may have noticed that the past two posts used a color block behind the text unlike the usual all black background with white text. Though I much preferred the white text on black, when taking the RSS feed and publishing it elsewhere, the white text color carries over, making the text invisible on white backgrounds, which the majority of websites use...
I didn't realize this until yesterday so for now on this will be the way it is. No big deal, just thought I'd mention it. EDIT: Now, for some reason, the RSS feed is picking up the HTML code of the color block, so that's out. I can't change the theme of the site to have a white background, because then, unless I go back and change the text color from every post, older posts will be invisible! So then, I guess I'll be sticking with this grey text on black. It translates well to any other background color, so that's good. Additionally, my overall workflow has been set back for a bit. My setup usually consists of a gaming PC for VR, and a Macbook Pro for other art creation for the game. A few weeks ago, my Mac suffered from the same damn keyboard issue that plagued many other machines. After being delayed twice by Apple, I finally got it repaired... BUT, since then the Touch Bar has been acting strange, until a few days ago where it just became completely unresponsive. So, once again, I am eagerly awaiting my laptop to be back from the Apple Repair Center. Very frustrating. In any case, despite these issues, I have been working as hard as I can, implementing new features and fixing old bugs every day. Be on the look out for a new post detailing exactly what I've been working on specifically, and maybe even a rundown of my entire game dev setup! Thanks for reading! - Judah First of all, we now have an email newsletter! Be sure to subscribe via any email box on the site! But okay, back to the main content... So, in contemplating where to go next with Oh Captain VR--publishers, crowdfunding, etc--I realized something: In focusing on the bigger picture of the whole game, I've been overlooking my main priority at the moment, the demo. I've been trying to either work on the save system, the open world, modding, or other features that won't be in the demo, when I need to be making the demo the best it can be. No, this post isn't some grand announcement about some change I'm making, it's merely an insight into how I work. Now, technically speaking, the question is, what does this entail? I know there won't be a save system in the demo, I don't think that's necessary for something that is meant to be only a taste of the full game. However, all the mechanics will be the same. This means that when someone plays the demo, they know that the full game will be like this, but so much bigger and better in every way. Another thing that's been bugging me is profiling. Profiling in Unity3D, I mean. When playing other VR games, I'm realizing that my game doesn't run as smoothly. Everything works totally fine and is comfortable to play for long periods of time, but it seems like my VR tracking has a little more latency than other games. This is just an optimization issue that I have to work on. Just like any game, it's a balance between performance and visuals. While Oh Captain VR does have a low-poly aesthetic, because of the amount of stuff in the scene, there definitely can be better optimization on my part. Since I only have one main realtime light (the sun/moon), this shouldn't be a problem, but I will continue to work on it. Any thoughts? Leave a comment down below! Thanks for reading! - Judah Yes, it's another blog post!
Over the past few days I've been recording my screen while working and hope to soon publish a timelapse/voiceover video going over what I've been working on in a more visual way. But, just to summarize here: When the player presses the Left Grip Button, a map UI will appear (either as a held object, or a static object in front of you). This will have the player's stats (health, stamina, gold amount, etc), along with some options as to which object to be building (Walls, stairs, etc). I am also experimenting with making the game moddable via Json data. Then, the player can easily go into the files and alter the way the AI works, the players stats, and effectively use "Cheat Codes" (a rarity nowadays) to change the way the game plays. Hopefully this should extend the life of the game in ways that I didn't think possible previously. Any feedback is appreciated! Thanks for reading! - Judah So, I just got back from an awesome vacation in Costa Rica, but unfortunately (or fortunately, depending on how you look at it) I didn't get much work done...
But, I do have some new ideas that I will be implementing into Oh Captain VR asap! These include:
For the roguelite aspects of the game, your stats, levels, and the like will persist from game to game. However, when you die, the worlds you create will be lost, only saved in a snapshot, viewable from the "Captain's Logbook." Overall, there is a lot more to come, with exciting updates coming regularly. Thanks for reading! - Judah Short post today:
After messing around a ton with the lighting in the scene, I finally got things looking better, AND running better/smoother, so that's pretty great. I am experimenting with changing up the island design, but that's another post in the coming weeks. Additionally, I do intend on improving the enemy AI, so there's better combat physics, defense, etc. More info to come. Thanks for reading! - Judah Mantell This year I got a lot done, and with that time, I was able to hone the mechanics of Oh Captain VR into the playable demo I have now! Once again, it still has a ways to go before I release it for free through the Steam Page (Coming soon though!), but it will be well worth the wait. After fixing the building mechanics, the one challenge is to find a good way to save and load the player's creations and progress. (More on this in the "Techy Stuff" below.) I also plan on adding other shapes to build like stairs and things, to allow for multiple floors in your fortresses! I'm quite happy with the Enemy AI's movement, but not their combat. Yes, they will attack you, but sword combat can be much improved. I also want to have them attacking your fortress, weakening it and possibly even breaking it unless you kill them.
In terms of the enemies themselves: For the demo island, I made sure there is always ten enemies in the scene. After experimentation, I found that's the right number to not take a hit on performance, and still make the world feel alive. I also plan on adding wandering cattle just for effect. You can't kill them for anything like in Minecraft, but I think it will help with the ambiance. Techy Stuff: Saving and loading numbers and strings isn't too difficult (and is perfect for saving how much wood and gold you have), but with this game I have to save and load every instantiated object (built blocks) the player has spawned. It's not possible to serialize objects in the scene, so I have to save every instantiated item in a list, their transforms, then re-instantiate them in those positions. It's not too difficult, but just time consuming. Additionally, if I will be adding other types of blocks (like stairs, etc), I'll have to do the same with those--again, possible, but time consuming. Thanks for reading, happy new year! - Judah Woah! Two posts in two days?!? ...Somehow, yes. All kidding aside, I've been working hard on the game, perfecting the building system in every way I can. It's now ready enough that quickly and accurately building large structures is not only possible, but super fun! You can build fortresses, trap enemies, and more! Techy Stuff: While building was possible before yesterday, there was one major problem: You could only rotate blocks flat or facing away from you. (In other words like this: __ and like this: | -- Sorry if that doesn't make any sense! I currently don't have any visual aids at the moment.) On the player's left hand, if they touch the touchpad, a little radial menu shows up with three directions: Up, Left and Right. (The "Up" direction puts the block flat, making it useful for floors and ceilings.) For the left and right directions I just kept adding 90 degrees to the Y quaternion, in hopes of just having it turn 90 degrees each time, but this wasn't working. I ended up writing two methods, as shown below: This worked exactly as I had hoped. Now all I gotta do is add sound effects, stylize the cursor a bit more and it should look pretty great!
Thanks for reading! - Judah
Hey everyone!
Yes, yes, I know it's been a while, but it's not for nothing! I've been focusing on polishing what I have of the game as much as possible, to get ready for a free demo release. Aside from adding SFX, particle effects, and refining controls, I've been working on making the building system the best it can be. This means making sure it's intuitive to use, looks good, and just works the way it should. You can check it all out in the video below! (Watch on YouTube for full screen)
Techy stuff:
I'm working on valid/invalid states for the system to ensure that players don't build on top of existing blocks. The cursor will be transparent green when you can build, and transparent red when you can't. Simple enough. Additionally, I have to make sure every placed block carves out a small section of the AI Navmesh so the enemies know to either go around or try to break through the fort created. Say what you want about Fortnite, the building system it has is pretty great, and that's what I'm trying to replicate, but in VR. At the moment there's only one type of "block" you can use, a single wall panel, but it can be rotated any way you like, making it usable as walls, floors, roofs, or even simple barricades to ward away enemy skeletons! Thanks for reading! - Judah I should preface this by saying once more that the demo I'm working on now will be released for free via the upcoming Steam Page.
Since the last post, I mainly just added some sound and particle effects. Not too much technically, but wow do some added particle effects make the difference. Killing enemies feels so much more satisfying, and swinging the sword around and chopping down trees is so cool! The one "feature" I've added (or currently working on, rather) is treasure. To put it simply, when enemies die, they drop treasure, which you can then grab and add to your overall treasure amount. For the demo, the focus will be more on arcade-y gameplay (rather than a full open world like in the finished game), with all the same mechanics, where you try to last the longest, and collect the most treasure for high-scores. In terms of timing, because I'm very busy with college applications, development will slow down a bit for the next month or so, but after then, I plan on having so much more content! (*Ahem* Local Multiplayer *ahem*) Techy stuff: There's currently a bug that prevents the spawned treasure from being destroyed in the scene which is causing a bunch of trouble. It's trying to destroy the original asset, rather than the instance in the scene. In any case, this will be worked out eventually. Thanks for reading! - Judah As mentioned previously, I am working on perfecting a demo to release on Steam for free!
It has all the same mechanics and features of the full game, just in a more arcade-y, smaller, more enclosed environment with a focus on getting high scores. While the full game is much more expansive (literally ten times the size of the demo), this demo should give players a taste of what's to come. In terms of what exactly is in the demo, well, here's an informal list in no particular order!
As to when the full game will be released... well, it's still in active development as we speak! As stated on the game's page, I might go for an early access approach, releasing a full, albeit smaller, game, adding content regularly until it becomes what was originally planned. This would allow players to get their hands on more content faster, expecting updates frequently. As always, more to come! Thanks for reading! - Judah This past Thursday I had the pleasure of attending Playcrafting NYC's Demo & Play event at Verizon's Alley FiDi.
It was my first Playcrafting event, and I hope to attend more in the future! I got to show Oh Captain VR to a room of about 50 people, along with 9 other amazing developers showing off super cool games. (Shout out to Game Revenant's Where Shadows Slumber, an awesome puzzle game now on the App Store.) I showed the trailer, explained what I've been working on, and answered a few questions. The response was super positive, and I got some great feedback about both VR game design, and adventure/survival game design in general. After the presentations everyone split up into little stations for people to play the games. Because I needed some space for the VR game, I was lucky to get a whole office to myself! Most of the people there have never tried VR, so I had to explain what to do a little more than with a regular game. Because of this, I realized (and this really applies to any game) that, while the developer might know exactly what to do in a game, that doesn't necessarily mean the people playing the game will. After the event, I ended up rearranging the demo environment so the player starts out in the Tavern, where they can pick up weapons, teleport around, and get a general sense of what to do before venturing out into the island. Since then, along with those environment changes, I've made some more modifications to make the game easier to play. While the full game still has quite a ways to go in development, I hope to release the demo for free soon... More info about the demo to come! Thanks for reading, Judah So, it's been about a month since my last post...
But, that's only because I've been working hard on Oh Captain VR! The biggest change right now is the building system. I mentioned the idea briefly in the last post, but now it's almost finished! By pressing the left touchpad, a new cursor will appear showing the log and your amount of wood. Then, by pressing the grip button, you build a new log in that position. This allows for quick building for when you are trying to ward off enemies and deliberate, meticulous building for creating large structures! The combat is another thing that I worked hard on this month. While there is a lot of fine tuning to do, it is a ton of fun with a good difficulty level. It's more hack and slash than realistic melee combat, which I think is perfect for the tone of the game. Also, there is now a demo! It's being shown for the first time at PlayCrafting's Demo & Play event in NYC this Thursday night! (If you're in the area, come check it out!) Then, by the end of the week, It will hopefully be released online for anyone to download! But, it still is in Beta, so there might be bugs! More to come soon! Thanks for reading! - Judah So, hm...
What's new? Almost everything. You can now teleport wherever you want, as opposed to only fixed points. After much playtesting, I see now how annoying it is to not be able to walk that extra inch to get somewhere that looks cool. So now there's that. Also, instead of multiple mini islands that I used for testing, everything is now in one giant island. This means that you can easily go from place to place, but also poses challenges for the player: surviving in the jungle, for example... There also now is swimming! Yes, you can actually swim in VR! Trust me, its cool. It's essentially climbing horizontally. You grab anywhere in the water and pull yourself forward. It works well, feels great, and is a ton of fun. I'm considering adding in a building mechanic so you can upgrade your fortress/ship, etc. Techy Stuff: To make the larger island perform better in VR, I used Unity's built-in occlusion culling. This actually works really well, speeds the game up, and is not noticeable when in VR. But, because of the size of the island, I have to merge some meshes together to get around having ten thousand (literally, 10,686) grass meshes. For that many it takes a while... Along with that, there are three new screenshots on the webpage! Check it out! Thanks for reading! - Judah This week I mainly focused on combat, creating a fully working grappling hook system for going from ship to ship, and making the teleporting enemy AI, along with the basics of what will become the naval combat system.
My biggest challenge this week was working on the inventory system, but it seems like, because of the way the game is structured that I was overthinking it. The game is level based (though not explicitly called so), with each location being a level. Going from level to level follows a story that makes up Oh Captain VR's campaign. In addition to this, there will be a free play mode where the player can explore the islands and fight baddies, loot shops, hijack other ships, and more! Thanks for reading, Judah Yes, I haven't posted in a while...
No, this post isn't about how to annoy your animated characters, (though if people want it, I can post my methods) it's about how frustrating they can sometimes be in Unity!
Because the characters in the world are specifically supposed to be robots (more details to come soon!), using traditional animated FBX models didn't give the effect I wanted. So, instead what I did was export the characters' bodies separately from their limbs, eyes, and mouth, and animated them using Unity's built-in timeline. This actually worked much better than I had hoped, and allows for that robotic, R2-D2 movement. Thanks for reading! Judah Mantell, President, MidnightCoffee, Inc. So, I know I haven’t posted in a while, but rest assured, I’ve actually gotten a lot done on Oh Captain VR. After some basic play testing of the main mechanics of the game, players have shown to hate the parrot… so yeah.After much trial and error, I’ve landed on an idea that actually works perfectly: Make the captain… a captain! I know, right?!
I did some basic modeling and actually came up with a character that works pretty well. He’s a short, stubby little pirate captain (think Reginald Van Winslow from Telltale’s Tales of Monkey Island) that kinda just does his own thing while you do all the hard work. This turned out to be much funnier than the parrot (who was just plain annoying). Having another human figure in VR is not so easy to get right. If it’s too realistic, you get into uncanny valley territory. But, because we’re going for a low-poly aesthetic, this isn’t an issue, and the captain fits right into the world Sadly, bringing animated meshes into Unity was pretty taxing on my laptop (GTX 1050), causing it to overheat and shut down randomly more than once. This wasn’t fun. I do save after almost any change I make (a little crazy about it), so I didn’t lose that much at all. Hopefully in the coming weeks (months?) I’ll be getting a more powerful machine that can handle VR much better. Thanks for reading! - Judah Mantell, President, MidnightCoffee, inc. After much deliberation and hours of playtesting, I finally got the helm (the ship's steering wheel, for lack of a better phrase) just right!
I originally thought the helm would control the ship, like the driving mechanic in LA Noir VR, but from what I've seen, it causes motion sickness, and the player will just get lost in the open sea. Now, instead of moving the ship directly, when the player grabs the wheel, a little menu pops up above it, and an arrow appears at the top of the wheel. The menu consists of miniatures of the different islands you can go to, and turning the wheel highlights the one the arrow is pointing at. If you hold the wheel pointing to a place for a certain amount of time, you, along with the ship, will "teleport" to that island. Thanks for reading! - Judah Mantell, President, MidnightCoffee, inc. Short, mini-update for you guys: 1) Oh, Captain VR now has its own page! Yes, yes, this is only a coming soon page, but it does have our new logo! 2) ...Oh Captain VR has a new logo! 2 new logos to be exact, but they're both variations on the same one. Check it out! (Click to enlarge.) Thanks for reading,
-- Judah Mantell President, MidnightCoffee, Inc. Originally the boat the player is on had only one main deck (floor) along with a climbable mast with a crows nest. This worked fine because the ship seemed to float in the water, with the lower part of the boat resting below the water for a convincing illusion of displacement and buoyancy.
I recently modeled a below-deck area (also called a Hull) that the player can climb down to and it adds a ton to the level. On a real pirate ship, anything below the main deck is effectively underwater, with the water displacing around it (a basic property of water). In game engines this isn't so simple. Unless there's a complex liquid simulation, there is no displacement. The water is just a flat plane (a flat piece of 3D geometry) that will show up inside an object when it's collided with. This means that the hatch to get to the Hull looks like its submerged in water. Not what we want. My solution: Add water tiles as child objects of the boat placed carefully around the boat so that A) it doesn't interfere with the Hull, and B) that it gives an illusion of the the boat being surrounded by water. This means that when the boat moves, the water around it moves too. Additionally, this means I don't have to manually place water down throughout the world because the water will always follow the boat. There is enough water around the boat to convincingly make it look like there is water as far as the eye can see. Enough techy Rambling, what does this mean for players?! It simply means that there will be more parts of the ship to explore! Nuff said. Thanks for reading! - Judah Mantell, President, MidnightCoffee, Inc. |
About MeAside from being a game developer and CEO of MidnightCoffee, Inc, Judah teaches game design to middle and high school students. He is also a professional magician and retro game enthusiast. Categories
All
Powered by
Powered by
|