All Projects â†’ vgrichina â†’ near-lands

vgrichina / near-lands

Licence: MIT license
Decentralized 2D multiverse project in development using NEAR protocol

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects
HTML
75241 projects

Projects that are alternatives of or similar to near-lands

Generator Phaser Plus
[🛑 DISCONTINUED] It has been a long journey but development of `generator-phaser-plus` is now over. I recommend you have a look and fork `yandeu/phaser-project-template` instead.
Stars: ✭ 148 (+169.09%)
Mutual labels:  phaser
Navmesh
A plugin for path-finding in JS using navmeshes, with wrappers for Phaser 3 and Phaser 2
Stars: ✭ 186 (+238.18%)
Mutual labels:  phaser
dungeonz
Everything for the game Rogueworld.
Stars: ✭ 88 (+60%)
Mutual labels:  phaser
Slither.io Clone
Learn how to make Slither.io with JavaScript and Phaser! This game clones all the core features of Slither.io, including mouse-following controls, snake collisions, food, snake growth, eyes, and more. Progress through each part of the source code with our Slither.io tutorial series.
Stars: ✭ 168 (+205.45%)
Mutual labels:  phaser
Phaser Ui Tools
Functions for creating a UI in Phaser. Rows, columns, viewports, scrollbars, stuff like that.
Stars: ✭ 187 (+240%)
Mutual labels:  phaser
Phaser3 Typescript Project Template
A quick-start project template that uses Phaser 3, TypeScript and Rollup for bundling
Stars: ✭ 201 (+265.45%)
Mutual labels:  phaser
Phaser Project Template Es6
Phaser 3 - Starter Template with ES6 (ESNext features included) and webpack.
Stars: ✭ 142 (+158.18%)
Mutual labels:  phaser
badassquest
RPG / GTA-style game engine built on top of Google Maps Javascript APIs
Stars: ✭ 26 (-52.73%)
Mutual labels:  phaser
Phaser Project Template
🕹ī¸ Phaser 3 - Starter Template with TypeScript and webpack.
Stars: ✭ 186 (+238.18%)
Mutual labels:  phaser
Crypto-Car-Battle
NFT (ERC721) based HTML5 game with Crypto Payouts to the Winner.
Stars: ✭ 90 (+63.64%)
Mutual labels:  phaser
Phaser State Transition
State transition plugin for Phaser.js
Stars: ✭ 169 (+207.27%)
Mutual labels:  phaser
Slick Ui
Lightweight Phaser UI plugin
Stars: ✭ 184 (+234.55%)
Mutual labels:  phaser
phaser-manifest-loader
Phaser Manifest Loader
Stars: ✭ 28 (-49.09%)
Mutual labels:  phaser
Ion Phaser
A web component to use Phaser Framework with Angular, React, Vue, etc 🎮
Stars: ✭ 152 (+176.36%)
Mutual labels:  phaser
phaser3-typescript-starter-kit
This repository contains the code necessary to start making a game in Phaser 3 using TypeScript.
Stars: ✭ 94 (+70.91%)
Mutual labels:  phaser
Phaser Collection
phaser h5å°æ¸¸æˆéĄšį›Žé›†é”Ļ
Stars: ✭ 147 (+167.27%)
Mutual labels:  phaser
Phaser Input
Adds input boxes to Phaser like CanvasInput, but also works for WebGL and Mobile, made for Phaser only.
Stars: ✭ 191 (+247.27%)
Mutual labels:  phaser
phaser-particle-editor-plugin
This plugin creates particles based on JSON data generated by Phaser Particle Editor
Stars: ✭ 28 (-49.09%)
Mutual labels:  phaser
phaser3-plugin-pathbuilder
Draw and edit Lines, Bezier Curves, Splines at runtime, explore your scene and export your paths to Phaser
Stars: ✭ 67 (+21.82%)
Mutual labels:  phaser
phaser-plugin-scene-graph
Prints the display tree. Phaser 2/CE
Stars: ✭ 32 (-41.82%)
Mutual labels:  phaser

NEAR Lands

This project demonstrates how you can use NEAR blockchain for user accounts, storage and turn-based game logic. It also demonstrates usage of simple-peer to enable real time peer to peer communication between users (used to share location of every user).

It also allows users who are close by on the map to communicate via voice chat.

Requirements

Node.js is required to install dependencies and run scripts via npm.

Available Commands

Command Description
npm install Install project dependencies
npm start Build project and open web server running project
npm run build Builds code bundle with production settings (minification, uglification, etc..)

Writing Code

After cloning the repo, run npm install from your project directory. Then, you can start the local development server by running npm start.

After starting the development server with npm start, you can edit any files in the src folder and Parcel will automatically recompile and reload your server (available at http://localhost:1234 by default).

Important files / directories

  • static/ – static assets that gonna be copied as is to dist/ folder. Includes lpc-character folder which contains character spritesheets provided by https://github.com/jrconway3/Universal-LPC-spritesheet project. You can use http://gaurav.munjal.us/Universal-LPC-Spritesheet-Character-Generator/ to explore available sprites.
  • src/assets – static assets that can be included from .js files and processed by Parcel (including tile images)
  • src/index.js – main JS entry point and game logic
  • src/near.js – boilerplate related to NEAR blockchain
  • src/p2p.js – common code to establish peer to peer connectivity – src/player.js – logic related to player characters (including remote)
  • src/phaser-plugin-virtual-gamepad.js – virtual gamepad plugin for use with touch screen devices
  • index.html – entry point for webapp build

Customizing the Template

Babel

You can write modern ES6+ JavaScript and Babel will transpile it to a version of JavaScript that you want your project to support. The targeted browsers are set in the .babelrc file and the default currently targets all browsers with total usage over "0.25%" but excludes IE11 and Opera Mini.

"browsers": [
 ">0.25%",
 "not ie 11",
 "not op_mini all"
]

Parcel

Check out https://v2.parceljs.org/ for documentation on how to customize configuration and common recipes.

Deploying Code

After you run the npm run build command, frontend code will be built in the dist/ folder along with any other assets you project depended.

To deploy frontend code using web4 you can use npm run deploy:static. You can set target contract name in src/config.js file or through CONTRACT_NAME environment variable. This is using web4-deploy to upload static files to IPFS, pin it and update the hash addrssed by the smart contract.

Note that smart contract needs to be already deployed on the given account using npm run deploy.

Deploying on account like lands.near results in corresponding .near.page website like https://lands.near.page.

Roadmap

  • Game features

  • NFT gallery support (custom images placed inside world)

  • Portal support (world coordinates)

  • Portal support (websites)

  • Music/sound source support

  • Grouped UI for build material selection

  • Quick access bar for material selection

  • Larger choice of building materials

  • Trade tokens with users you are closed by (like in Civilization, etc)

  • Load land content from custom smart contract

  • Interact with smart contracts through in game items

  • Land sale

    • Own land parcel as NFT
    • Enforce restrictions on other users on your parcel
  • Voice chat

    • Push to talk to limit bandwidth and noise
    • Experiment with adjusting pan in spatial audio
    • Use multiple rooms to scale?
    • Use server-side mixing to scale? (estimate how much gonna cost to operate)
  • Future direction

    • Multiple interconnected worlds
    • Native mobile apps
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].