JsMMO ~ (JS Basic Mmo Engine)

https://github.com/LexTheGreat/JSMMO

Demo:
Offline

Done

Working-On

To-do

Things:

  • Database
  • Saving And Loading Players (Name, Sprite, HP/MP,
    Stats
    , Position)
  • Login/Register
  • Movement
  • Chat
  • Fighting
  • Maps
  • Editors
  • And more

JSMMO is an Open source 2dMMO engine that used Node.JS, Socket.io, SQLite Databases and more. At the moment there is not much. There is the basics of multiplayer (moving around, login/register * While login’ in if the player does not exist then it creates one, players only show up and/or sent, on the same map), player saving is done in SQLite.

I’ve been working on this for a while plan to finish this one out. Just got done with all the IOS Apps I had planned and have some free time :S

JSMMO

Open source 2dMMO engine made with node/canvas with SQLite Database You need node.jshttp://nodejs.org/

Project Setup

How do I, as a developer, start working on the project?

  1. Check out the git git clone https://github.com/LexTheGreat/JSMMO
  2. Enter the directory cd JSMMO
  3. Run npm install

Settings

  1. Database name: In server.js replace server.db Database.open(“server.db”); with anything you want.
  2. Port: In app.js change 3232 Global.setupServer(“public”, 3232); with the port you want to use

Testing

  1. Enter the working directory and run node app
  2. Connect to yourip:yourport (localhost:3232)

How to setup the deployment environment

  • Requires Node and webrowser

Contributing changes

  • “Please open a github issues/pull request”

Nice man! Always great to see new languages and open source projects hitting the Eclipse scene.

Updated, made a list of things I wanted to add, also fixed the database stuff so that players load and save correctly :S 3da7913

Update 3a61d30 Screen Shots: http://imgur.com/a/7n9xt

  • Removed old files
  • Added in-game gui such as chat/chatbox

  • Type then press enter to send

  • Some server sided checks done

I’m curious if you have a running demo going on somewhere, but it seems like a pretty cool idea. 🙂 What does it use for a server? Or are you just writing and reading to a database every split second?

I’m curious if you have a running demo going on somewhere, but it seems like a pretty cool idea. 🙂 What does it use for a server? Or are you just writing and reading to a database every split second?

Uhhhh, good idea I could setup up a demo sometime today, creating this in school I have to go to my next class soon :S

It’s using Node.JS, the database is sqlite (a .db file)

Database is only used when saving or loading (Loging in or loging out) Should add an autosave every so often… I’ll add a demo later today!

So you’re building them as node apps, neat.

Has me curious on how you handle movement and the like. 🙂 I’ll probably doodle around with it a bit when I get home tonight.

http://192.3.201.95:3232/

Here is the demo! Don’t kill it :S

shows alot of promise 🙂 laggy tho

I’ve doodled with it a bit the other night, but the forums went down shortly after…

It looks good, seems to work pretty well for what it is. But why is it struggling to hold its 30fps?

I’ve doodled with it a bit the other night, but the forums went down shortly after…

It looks good, seems to work pretty well for what it is. But why is it struggling to hold its 30fps?

To be honest I don’t know. I think it is how I render or its becuse of the server is lagging… Gota tweek a few things

I think I fixed the fps lag. Did some chat stuff today 4db5c62c

It’s still struggling between 30-60 spiking like crazy, especially when it sends/receives data. (e.g. on movement events). On first load it’s on a solid 60fps, but moving once makes it spike rapidly again.

Hmm :S maybe I should rework how movement is done… I’ll look into it thanks!

Possibly! Nevertheless I still think it’s not bad of an attempt so far. 🙂 Better than I could do in a webbrowser for sure, haha.

Changed the movement system. Send a start packet and a stop packet. Less packets sent :S Less lag?

063c8d9
b3df1b9

PS:

The Not stable, quick update, while joining your player will be invisible, move to make him show up.

That’s much more stable! Sticking around 56-58 the entire time right now. Movement sometimes get stuck when you switch between directions too quickly, but the movement is definitely getting there. 🙂

Did some GUI stuff and swifter movement in this commit, along with a change of !anounce (Mod+ only) flashes on your top screen when used :S Pretty cool
7ae676e

Added some more gui stuff in this one, I like the animation :3
ad589bc

The demo is updated, have fun :3

This looks great! I would love to use it when its done.

Looking very nice. Excited to see where this goes!

Log in to reply