🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Teamwork on a VR game in Unity

Started by
8 comments, last by rh_galaxy 3 years, 7 months ago

Hi, I'm seeking people interested in help making "Galaxy Forces VR" a great game.
I'm currently alone and like someone that can create simple 3D-models, and a programmer to join the team.

The project is being developed using Unity/C#. It's a 2D game, but viewed in 3D.

The game is based on my project "Galaxy Forces V2", but this will be single player only, and support the game modes race and mission. There will be global hi-scores on the website with replays of the record scores and ranking of top players, as it adds a lot to the game. And also keeps players interested for longer time.
Everything is not written in stone, there are possibilities for someone creative to add their own ideas. In fact I encourage any team member to test and think about different options of how to make the game better.
A change to the original is that this will be easier to play for beginners to make it more attractive but not easier to master fully.

This is the original complete version: http://www.galaxy-forces.com/

I'm new to Unity, and only have a little knowledge of how to create 3D models. I know C++ fully, but C# is mostly the same. I might get the coding done myself, but it would feel better to have one more person coding and testing their ideas.

I share a picture from the development, and a demo version in current state, so you can decide if you want to join. The plan is to release it on the Oculus Store in half a year. I have a todo list, and I promise to do what I can and spend much time on this to get it done to completion. I like to share the profits with those who want to join and have actually done something that pushes the project forward. The demo runs on Windows without VR, but Oculus Rift is recommended to be able to choose level in the menu (otherwise press Return to play the default level)...

Galaxy Forces VR v0.1
https://drive.google.com/open?id=1GpcfMzAsgsBPkht_RV3lTJcRR0zI3AKo

The presentation right now may not be the final result, especially the menu needs a new look with more contents.

It is true that it is a hobby project, but I think it has great chances to get accepted by Oculus. There is a large contents of 50 levels for one thing, and the levels don't need much work to reuse for this project. Also since VR is not main stream, and there aren't so many games released, it will not drown in the noise as easily. And I think VR people buy more games than most, at least I do.


This is the full TODO list, that covers most of the needed work from now to release. I think the time plan is realistic...

  • Map elements
    - Landing zone, hangar building - low poly model (only visual)
    - Landing zone, antenna - low poly model (only visual)
    - Map decorations, trees - low poly model (visual, and collision in map)
    - Map decorations, barrels - low poly model (visual, and collision in map)
    - Map decorations, red/green house in 3 parts (left, center, right) - low poly model (visual, and collision in map)
    - Z-objects for decoration. Objects that can be placed in a map that are larger and sticks out towards the player to make it more visually pleasing to play VR, for example brick walls in different shapes (only visual, placed inside walls not accessible to the ship)
  • The levels
    - Now there are 23 race levels and 23 mission levels. There also exist levels for dogfight and mission_coop, take these levels and convert them to race and mission to get 50+ levels
    - Need to fix the editor to make it possible to place the new Z-objects in the maps and go through each map and add them
  • Door element
    - A low poly model for the end points of the door (only one needs to be created, can be rotated in 4 different angles to make all parts)
    - Implement the door element in code
  • Enemies
    - Create them in 3D [enemy 0..6]
    - Implement them in code
  • Game Status
    - Race: show Time, Current checkpoint, Current lap/Total laps, Health bar
    - Mission: show Lives, Health bar, Fuel bar, Cargo bar, Score
  • Sound
    - Add existing music to the menu and game
    - Add existing sound fx in the game
  • Menu
    - More contents (could be Game Name text/logo, animated objects, clouds, anything really)
    - Better gfx (different textures for the level select elements)
    - Show your score vs the world best on each level, also show your rank (gold, silver or bronze)
    - Make part 2 of the menu - after a level is selected in part 1, shows 3 options - play, play your best replay, play the world record replay
    - Settings to turn the music on/off (+a minimum of other settings).
  • The VR room around the player
    - More contents (could be clouds and a skybox, or a room, or blackness in space, anything really)
  • Replay
    - Implement replays in code
    - Online hiscores - that is, be able to send/load the replays to the website (either HTTP or HTTPS if possible, maybe easy to do HTTPS with C# ?)
    - The hiscore implementation on the website. (mostly done already)
  • Website
    - www.galaxy-forces-vr.com exists.
    - Better/more contents + the hi-scores
  • Release
    - Images in different sizes for release on the Oculus Store
    - Game play promotion video
    - Test/fix it working on minimum req hardware

The demo + the todo list should help get a picture of what this game will be and help you decide if you want to join and if you have the skills needed.

Hope to hear from you.

unity4.jpg

Advertisement

I have made and uploaded demo v0.2 on the website http://www.galaxy-forces-vr.com/
New in this version is

  • Emulation of HMD movement with F and G keys, together with mouse move. Much zoomed out compared with the real VR view. (This means you can select any level in the menu).
  • Fixed garbage collect FPS spikes by compiling with Unity 2019.1a (luckily this exist!)
  • Fixed FPS freeze while loading the level (the code got uglier but it works by loading level during ~700 frames)
  • Set cursor to show a waiting-image in the menu while loading a level.
  • Added borders around the Map.
  • All levels now displays fine (problem with normals on some)
  • Fixed bullets going through walls sometimes.
  • Added game status in the bottom of the view.

So now there are no real show stopping issues left, just a matter of getting the work done.

This is a new TODO entry - Add Oculus API achievements:

  • Survivor - Finish a mission level without damage [normal unlock]
  • Hellbent - Finish the same level 8 times in a row [normal unlock]
  • Speedster - Full throttle from start to finish in a race [normal unlock]
  • Cargo beginner - Finish mission level 00 [normal unlock]
  • Cargo apprentice - Finish mission level 03 [normal unlock]
  • Cargo expert - Finish mission level 06 with no life lost [normal unlock]
  • Cargo master - Finish mission level 09 with no damage [normal unlock]
  • Race beginner - Finish race level 00 [normal unlock]
  • Race apprentice - Finish race level 03 in under 200 seconds [normal unlock]
  • Race expert - Finish race level 06 in under 60 seconds [normal unlock]
  • Race master - Finish race level 10 in under 104 seconds [normal unlock]
  • Fuel burner (Stoker?) - Burn 15 minutes worth of fuel [counter unlock, set after each level?]
  • Ravager - Destroy 100 enemies [counter unlock]
  • Doom - Destroy your ship 100 times [counter unlock]
  • Racer - Finish 12 race levels [counter unlock]
  • Loader - Finish 12 mission levels [counter unlock]

Also making the Oculus Store version might not be the end of it... Steam/Vive and other platforms is a possibility.

Ok, It has come to my attention that the game didn't work without having an Oculus Rift... this time it is fixed and tested that it works on computers without VR... v0.3 can be downloaded from the website http://www.galaxy-forces-vr.com/.

New is
* F and G keys + mouse emulates headset movements.
* 55 playable levels.
* Enemy 4 implemented, a blue dangerous thing.
* Gameflow implemented - that is you can win a level.
* After a level has been played and are back at the menu, you can press R for replay.

On 1/21/2019 at 2:35 PM, rh_galaxy said:

Sound
- Add existing music to the menu and game
- Add existing sound fx in the game 

Hey! Did anyone take this on yet? I'd gladly do it!

The game is now finished and made it to release!
Now on Oculus Store for Rift, and on Steam for others (Index, Vive and WMR, Rift)

It took me 8 months, but I had help with music and some 3D-graphics.

 

I have now released the Unity source as public domain.

https://sourceforge.net/projects/galaxy-forces-vr/

Have been thinking about adding multiplayer to GFVR, and I'm wondering if someone want to help me? It is possible to code and run from Linux, Mac and Windows without VR. But VR-accessories are good to have.

What should be done is

4 players
Race (existing levels) players do not collide
Mission (existing levels) co-op transport cargo
Dogfight (4 new levels that I will make) player vs player

GUI for multiplayer in Menu.cs (a first shot is on the way)
Connection logic by php-db on the web-server (might it be done better?)
The plan is that whoever creates a game runs a php-page once a minute that puts to a table:
player-name(from Steam) (external)IP current_time
Whoever wants to join loads this list and can see what games are open
(a port must be forwarded for those with a router - can it be done in a simpler way when one has no external server?)

New classes
OtherPlayer.cs - like Player.cs but replays other players movement/actions, other ship color but else the same.
SendRecv.cs - create/join logic, recv and send messages, a little like Replay.cs but with network communication.

The game will always be a little out of sync - it may be possible for a bullet to slip past a closing door on one machine, but special messages for kill_player and kill_enemy will make the game behave properly.

The game creator becomes the master/server and will control computer enemies and doors.

It is on github, the multiplayer-branch is new but right now the same as master https://github.com/rh-galaxy/galaxyvr
We should use Unity 2019.2.10f1 (loaded with Unityhub at https://unity3d.com/get-unity/download/archive)

There is not much Unity specific coding/handling needed, One thousand lines of C# code may do it.
I will help as much as I can.

Just to follow up on this, a SideQuest version is now live (for free). It has been developed with my Quest 2, so it's not tested on Quest 1, and also gamepad support is untested. The source will be released later. I'm still interested in making a multiplayer version or otherwise improve the game, and want others in on it.

https://sidequestvr.com/app/2058/galaxy-forces-vr

If you are interested in helping with multiplayer you can come to the Discord server for this purpose, https://discord.gg/cjptxT5JCb

This topic is closed to new replies.

Advertisement