Impact

This forum is read only and just serves as an archive. If you have any questions, please post them on github.com/phoboslab/impact

8 years ago by Janix

First let me start off with a little background. I bought ImpactJS a few years back and was at that time learning Javascript while playing around with the engine in one of my earlier college classes.

Fast-forward a few years and I am now employed as a software engineer, using lots of PHP, some Javascript, some NodeJS, and of course HTML5/CSS3. At my job, we use Laravel for most of our projects so I am pretty familiar with that framework as well.

Now to my actual question..

In present day, what are considered bulletproof technology stacks for creating a 2D sprite-based browser mmorpg? Something like https://www.youtube.com/watch?v=08bLSByOajM, but in the browser vs. an executable client.

I have been wanting to try my hand at creating a fairly basic implementation of such a game for a long time now, but up until this point I didn't really have the coding knowledge to actually follow through. Now, I believe this could actually be a possibility and gives me something to do in my downtime, while also improving my overall value at my job.

I have discussed this a little with my co-workers and they mentioned a few options that I should consider. We are thinking that a combination of Laravel, NodeJS, Socket-IO, and MySQL would be a good starting point.

Anyone have any thoughts or suggestions on this plan of action? Alternatives are absolutely welcome. I just want to make sure that I cover my bases, ie. security, speed, scalability, etc. This will start out as just a fun project to flex my coding prowess, but hopefully, eventually, it could turn into something a few hundred people could enjoy together.

8 years ago by Joncom

In a nutshell. NodeJS and Socket IO for the server. You can run a copy of ImpactJS on node, and then leverage physics to prevent walking through wall hackers, etc. An API to store player accounts, and persist data such as inventory and entity positions is probably essential. This could be written in a PHP framework. I like Slim. MySQL could work for the database.

8 years ago by dillybob

You want to make sure you use Redis for pub sub as node will be a bottleneck if you are really creating a 'MMO' :). You will need to be running multiple instances so make sure you design to scale. But as Joncom has stated, I recommend the ws module and not socket.io. WS is far faster and requires no client library.

I also recommend using JXcore instead as they take advantage of libuv and use multiple threads as compared to the stock node.

I don't even own Impactjs, I am WombatTurkey on HTML5 game forums and I just saw this thread and decided to chip in :)

8 years ago by Janix

Thank you Joncom and dillybob. You have given me some things to think about. I will post again if I come up with any other questions.

I have a lot of planning to do, before I even input a single line of code. My scope may change once I start getting into the details.

8 years ago by hallsofvallhalla

if it helps and it if it still works I made some videos on Impact and Nodejs
https://www.youtube.com/watch?v=adwOLUpQF0I&list=PLdHEXh0zjhQWqLPujnSj3lbjNirxucFFc&index=2
Page 1 of 1
« first « previous next › last »