All Projects → j-mendez → react-native-multiplayer-starter

j-mendez / react-native-multiplayer-starter

Licence: MIT license
Your next multiplayer game starter using react-native

Programming Languages

javascript
184084 projects - #8 most used programming language
objective c
16641 projects - #2 most used programming language
java
68154 projects - #9 most used programming language
ruby
36898 projects - #4 most used programming language
Starlark
911 projects
typescript
32286 projects
shell
77523 projects

Projects that are alternatives of or similar to react-native-multiplayer-starter

karting
A multiplayer racing example project in Unity using the SocketWeaver SDK
Stars: ✭ 39 (+44.44%)
Mutual labels:  multiplayer
colyseus-kotlin
⚔ Implementation of Colyseus client using Kotlin
Stars: ✭ 26 (-3.7%)
Mutual labels:  multiplayer
tomenet
TomeNET is an online multiplayer roguelike role-playing game
Stars: ✭ 59 (+118.52%)
Mutual labels:  multiplayer
PengueeBot
Automation tool, visit our discord channel if you have anything to ask
Stars: ✭ 27 (+0%)
Mutual labels:  crossplatform
UnityR
Unity3D, SignalR real-time multiplayer game
Stars: ✭ 49 (+81.48%)
Mutual labels:  multiplayer
sdk-for-unity-vr-starter-project
[Deprecated] SpatialOS SDK for Unity Virtual Reality Starter Project
Stars: ✭ 43 (+59.26%)
Mutual labels:  multiplayer
Tom and Jerry
A multiuser AR game based on ARKit 2 and MultipeerConnectivity
Stars: ✭ 24 (-11.11%)
Mutual labels:  multiplayer
NetMauMau
Server for the popular card game Mau Mau (similar to UNO®)
Stars: ✭ 16 (-40.74%)
Mutual labels:  multiplayer
AtomicX
Browse, Download and Install GSC Mods for Black Ops II (PlayStation 3 & Xbox 360)
Stars: ✭ 20 (-25.93%)
Mutual labels:  multiplayer
asciiarena
Terminal multiplayer deathmatch game
Stars: ✭ 34 (+25.93%)
Mutual labels:  multiplayer
df multiplay
Dwarffortress multiplayer scripts and stuff
Stars: ✭ 13 (-51.85%)
Mutual labels:  multiplayer
MafiaMP
Multiplayer experience for Mafia: Definitive Edition
Stars: ✭ 31 (+14.81%)
Mutual labels:  multiplayer
snake-server
Snake-Server is a pure Go implementation of the famous arcade game 🐍
Stars: ✭ 31 (+14.81%)
Mutual labels:  multiplayer
SpaceWar-ECS
A space war game made with ECS and JobSystem in Unity.
Stars: ✭ 26 (-3.7%)
Mutual labels:  multiplayer
ARMultiuser
this demo use arkit 2.0, realize multiplayer play together! The project refers to the official demo!
Stars: ✭ 30 (+11.11%)
Mutual labels:  multiplayer
togetherness
A virtual and 🕊liberated🕊 tabletop. Make, play, and share your tabletop games with dice, cards, tokens, and more.
Stars: ✭ 32 (+18.52%)
Mutual labels:  multiplayer
EuNet
Peer to peer network solution for multiplayer games.
Stars: ✭ 109 (+303.7%)
Mutual labels:  multiplayer
hacktrack
HackaTrack 🛤: Say goodbye 👋🏾 to stress and unproductivity in hackathons 👩🏾‍💻!
Stars: ✭ 61 (+125.93%)
Mutual labels:  crossplatform
gameframework2d
Core Example Program for 2D Game Programming Class
Stars: ✭ 16 (-40.74%)
Mutual labels:  crossplatform
liblast
A libre multiplayer FPS game created in Godot Engine
Stars: ✭ 92 (+240.74%)
Mutual labels:  multiplayer

Multiplayer

Your next casual multiplayer game with react-native.

Example

Getting started

  1. fork or clone the project
  2. yarn install
  3. cd ios pod install
  4. npm run ios or npm run android

Main Features

  1. online multiplayer (lobby creation (auto sustaining 10 players max per room))
  2. joystick
  3. game-pad
  4. environments - alter gameplay like water fall to hide under or fire to take burning damage
  5. reward system
  6. game settings
  7. admob (ads)
  8. basic attack collision
  9. simple shared state

Native Dependencies

  1. firebase
  2. sounds
  3. haptic-feedback
  4. 12-factor-config - app env secrets
  5. react-native-gesture-handler - gestures
  6. @react-native-community/async-storage - stores user settings disk

To change the firebase config location updated the google-services.json file for android at android/app/google-services.json and GoogleService-Info.plist at ios/ko/GoogleService-Info.plist for ios. For more information follow https://firebase.google.com/docs/ios/setup and https://firebase.google.com/docs/android/setup. You only need to do step 1-3.

WebAssembly

Web support aims for native speed so we try to use webassembly for this (Web support is in progress). For more info check out assemblyscript

Data Flow

The database used is Realtime Database by firebase. The game is controlled through a shared game state between the client/players.Currently firebase prevents updating the same properties between two clients at the same time which is the reason for state and the top level meta info seperation. Currently trying to push how far you can get with clients managing the integrity of the logic needed for game play.

Game Configuration

You can adjust most of the game settings at /src/logic directory.

State

The app is structured with a light loose top level state provider. To control updates on a component add a reducer onto the reducer.js file by merging into the main reducer or create your own. To lock down updates you can simply use memo and pass in the props from state you would need on your component. This setup allows for speedy development.

Environments

Alt-Example

License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].