“For the things we have to learn before we can do them, we learn by doing them.” ― Aristotle, The Nicomachean Ethics
Set the ADMIN_KEY in .env. This becomes your admin user password, username admin, password your ADMIN_KEY.
In the client-config.js set the values for:
- game name
- emoji following game name in browser tab
- favicon showing in browser tab
- login font family
- login font color
- login form background color
- login overlay color
- avatar array of face image URLs ( use .png with transparent background )
- avatar color used for button background
- avatar speed
- the text color for the messages
- sound file URL for playerJoined
- sound file URL for playerLeft
- BGM songs, volume and whether to auto play through all songs
- custom key bindings/behaviors
- sythesized voice settings
- physics gravity
- maximum grab distance for movable objects
- movable physics objects to be added to the scene
- environment settings
- thruster colors
- mobile thruster button icon
- vr mode enabled / disabled
Explore the different voice names by listing them in the game browser console with:
printVoices()
Test a variety of voices in the game browser console with the following pattern using the message followed by the voice name:
say("Do you like games?","Katy")
In the game browser console add users with the following pattern:
If you forget the Users you added, open the server Activity Log and reboot the server by adding an extra space after all the code in the server.js file. The user names and passwords will be printed in the Activity Log.
Select from a variety of environment presets. Add your chosen preset in the client-config.js.
Environment Presets
Move with WASD and ARROW keys. Jump with the SPACE key. Toggle music mute with 0 key. Play next song with P key.
Toggle the Message and Avatar UI with the EQUALS key on desktop, double tap right screen on mobile. Tab your way through the UI elements. Once you have finished typing your message or selecting a new avatar, hit ENTER to submit.
Grab and move objects with click & drag or click & move keys on desktop, hover & move or rotate on mobile.
Note: Users cannot be logged in more than once simultaneously!
Pressing the F key or clicking the VR Headset Icon, if enabled in client-config.js will take you to fullscreen mode. Note: in fullscreen mode only movement keys are enabled. Press the ESC key to exit fullscreen mode.
Try the LIVE DEMO with test users computer and science both with password 1234.
Thruster Animation
Screenshot with Four Players
Screenshot of Side Entrance to Sky Island (Click to see fullsize image.)
Performance Test ( 6 instances on 1 computer! )
Create your own .glb avatar models with Sculptris and Blender.
Sculptris for Easy Creation of Basic Model
Blender Bones Animation
Blender Export as .glb
( plugin for Blender v2.79 here. Note: Blender v2.80 will have built-in plugin )
- Joystick ( forward, backward, yaw )
- Pitch control ( touch drag right side of screen )
- Thruster Button ( up and forward )
- Message, Background Music, Avatar UI ( double tap right screen )
- Putting the cursor over a movable object for 2 seconds triggers 5 seconds of grab and move ability.
I would like to extend special thanks to ZOSK Studios for the creation of the sky island model used in this project.