Search the Community

Showing results for tags 'websockets'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • HTML5 Game Coding
    • News
    • Game Showcase
    • Coding and Game Design
  • Frameworks
    • Phaser
    • Pixi.js
    • Babylon.js
    • Panda.js
    • melonJS
    • Haxe JS
    • Kiwi.js
  • General
    • General Talk
  • Business
    • Collaborations (un-paid)
    • Jobs (Hiring and Freelance)
    • Services Offered

Found 15 results

  1. I'd like to announce a tool that helps you to build multiplayer games in JavaScript. Colyseus is a JavaScript server (for Node) and client (for the browser) It handles WebSocket connections, has multiple room support, handles room state synchronisation and allows clients to create, join and leave rooms. Here's an overview of how it works: Match-making cycle: - User asks to connect in a specific room, with optional "join" arguments. // (client-side)var Colyseus = new Colyseus("ws://localhost:3553");var battleRoom = colyseus.join('battle', {options: 'here'}) - Server will loop through all spawned room handlers named 'battle' and call requestJoin method against that handler. // (server-side)// only accept new users if limit isn't reachedrequestJoin (options) { return ( this.clients.length < 12 )} - If requestJoin succeeds, a method named onJoin will be called with the client reference and client options given. // (server-side)onJoin (client, options) { // setup new player here}- If requestJoin fails on every available room, a new handler will be spawned if requestJoin succeeds in a fresh handler state. In case it fails again, an 'error' event will be dispatched on client room instance. // (client-side)battleRoom.on('error', function(message) { console.log("error triggered on battle room:", message)})Room state handling: Once the player received the room state upon it's connection, he only needs to receive the state difference on later broadcasts, called patches. By default, room handlers will deliver the patched room state to all clients each 50ms. // (client-side)battleRoom.on('update', function(newState, patches) { console.log(patches) // array of patches console.log(newState) // newState with patches applied})The array of patches usually look like this: (JSON-Patch format) [ { "op": "remove", "path": "/players/2" }, { "op": "add", "path": "/players/3", "value": {"x": 10, "y": 10} }, { "op": "replace", "path": "/players/1/x", "value": 5 }]// JSON-Patch Spec - RFC6902You can take a look at patch handling on tanx project to see how it looks like. Here's some prototypes using Colyseus as a game server: - PlayCanvas tanx fork (original game is here) - Redneck River Race (made in 72h for LD34) - CubeClub Soccer Colyseus's code base is quite straightforward, which is good for it's growth as a library, I believe. It doesn't do much, but it tries to do really well what is meant to. Thanks for reading until here, and feel free to ask anything here or on gitter chat channel. Cheers and happy new year!
  2. embracethebunny.org is an experimental website being built with the vision of allowing people to create and share their own 2D adventures with the world. Basically, what i'm going for is the ability for people to create simple point-and-click adventures by just visiting the site and using the site's web interface, without having to learn any coding. Just share a link with other people to share your adventure. Built-in multiplayer support would be there as well, so people could just drop-in/drop-out with ease. Right now it's just a rough POC. You can't do much with it other than create glorified chat rooms. Here's a test thing i created using the site (it's a little homage to Legend of Zelda): https://www.embracethebunny.org/main/10223ce6-281b-4aee-95d2-b5644fd70b38/poc-1/sandbox You can poke around the environment anonymously just by visiting the link. As a guest can create your own Link avatar and chat with anyone else visiting at the same time. Creating an account will persist your avatar between visits (admittedly not very useful at this point). I created the whole environment using the website admin tool. Video showing the current admin interface: https://www.youtube.com/watch?v=ePolUmEN91E. Site uses HTML5 and web sockets. Any feedback is welcome. Thanks!
  3. Hi forum, I am trying to get into developing online web multiplayer games. At first I had no idea where to start but after a lot of searching, I found I can achieve what I want using HTML, Javascript and websockets. I have programming experience in html, php, python, java, and mysql and Im just looking to learn something new! What I want to achieve is to build a game similar to the already existing game Habbo hotel (www.habbo.com). What I want to be able to do is create something where a user can go on, load the client in their web browser, and then be shown a navigation guide that shows them different rooms. They can then enter the rooms with their character and move around, etc. (If you have played the game you know what I am after.) I want this to be real time which is why I want to bring in node.js and socket.io (both I have to still learn how to use.) Since I have just gotten into this, I have no idea where to start.. I have read many forums that suggested Impact is a good canvas to build off of but all the tutorials I have seen haven't shown what I want to do. Can anyone confirm Impact would be a good choice for me to continue with this project? What I am asking for is some direction on where to start, and what tools I need to get this project started. Any help is greatly appreciated!
  4. Hi. It is my first post in the forum. I was looking for a specific category for server-side topic, but found nothing related. I have some experience using PHP with Laravel to create web applications (even I have created some SPAs with Ajax calls), but now I see that Node.JS is the better choice to create multiplayer games (because it provides a realtime interaction between server and connected users). Some days ago I found Firebase and was using it for a bit. I see that the realtime database is really easy to use. The only bad thing is that the validation rules in firebase are strange. We have to validate defining a JSON with the rules. But in general, we can use the realtime feature very easy. We don't need to configure servers with Node.js or socket.io My question is, why nobody is using Firebase? When I look for realtime games, always see people using Node.js and Socket.io (I haven't used it yet but I think that Firebase = Node.js + Socket.io + MongoDB + the necessary steps to set up all of this). Thank you.
  5. LMI Technologies, recognized as one of Canada's 50 Best Workplaces, is a medium-sized technology company built on a culture of openness, respect and professional excellence. At LMI our staff work passionately toward the common goal of designing and delivering innovative 3D machine vision solutions to OEMs and System Integrators working in industrial factory automation around the world. The result of this teamwork is high-performance, easy-to-implement and cost-effective 3D sensor technologies that deliver the best results in even the most challenging 3D inline inspection applications. LMI is seeking a software engineering or computer science graduate with a background in client-side web application development and a strong interest in WebGL and WebSockets. As part of LMI's agile team you will be responsible for leading design initiatives and implementing new features in an embedded web GUI using an application framework developed in-house. You will work in a multi-disciplinary engineering team (software, electrical, mechanical/optical) that develops new sensor products and supporting infrastructure (manufacturing and test equipment). Successful candidates should be professional, resourceful, and can work well autonomously yet still communicate effectively with a close-knit group of about 10 engineers. LMI's office is based in Vancouver, however we are willing to offer relocation assistance. Remote work is also an option if you'd prefer to stay where you are. Want to try out the product that you'd be working on? You can do so here: http://lmisandbox.com/products/gocator/emulator/scenario-selector REQUIREMENTS Must be a Javascript expert. Experience with jQuery is great, but ideally you could write jQuery yourself if you had to. Successful candidates can speak at lengths about the advantages of some frameworks over others. Experience with WebGL API's including shader programs. Experience with other GL's (such as OpenGL or DirectX) is considered an asset. Experience working with source control tools such as GIT, SVN, etc Ability to work in a team and be accountable for your performance and documentation Superior English communication skills - both written and verbal Degree in Computer Science or Software/Computer Engineering SKILLS OF VALUE Experience with unit/integration testing. Ideal candidates would have experience working with web unit testing frameworks such as JsUnit ActionScript 3 and Flash Builder IDE experience is highly desirable. .Net and WPF development experience Experience working with Google Closure library and compiler, gulp, grunt, and other javascript libraries.
  6. Hey there. I was just curious how many people were using long polling or WebSockets for their online games. I'm working on a turn-based game that feels a bit like a board game in the browser, and for the early prototype I've opted to use long polling because it was easier to setup. At some point I'd like to make the switch to WebSockets, but if enough people seem to be having success with long polling then I'll probably de-prioritize the effort. Currently my game uses a 7 second refresh interval so there's a _bit_ of lag, but most of the time it isn't too noticeable. I was hoping to hear other people's thoughts on the matter. Thanks!
  7. Check out BlockTanks, a simple yet addicting MMO Tank Game made with nodeJS and Websockets. In BlockTanks, you move a tank and shoot players on the opposite team, getting as many kills as you can. No need to create an account, just type in a name and play! The game's features include: Real time player combat A maze-like map that two teams of tanks can navigate through Three types of power-ups Chat features Tank Skins Play the game at: blocktanks-kevdude749.rhcloud.com Hope you like it!
  8. I am a total amateur in games, decent in programming but not very good in javascript. BUT, I want to learn and Babylon just seems very easy and intuitive. I understand most demos and was able to make a few scenes myself. So my question: I would like to try to make a game that talks with my desktop computer using websockets. I am used to programming parallel for scientific use, so I know how to handle it on the server side (going to use julia for fun on the server side..). But where in the general structure of the babylon code would I define the function to make a websocket connection and where do I put the functions to listen and write (listen to server sending position update, write keyboard events and mouse x,y coordinates) and update babylon objects such as camera position etc. Sorry for asking such a dumb question, but if anyone would be able to just give a quick idea of how to do this efficiently that would save a few days of googling and reading (would be great to have this in the tutorials too!). I can make a playground demo to share the knowledge then. Anyhow, I am fascinated by the opportunities of babylon, not the least for scientific visualisation! Best, Jon
  9. Hello! I have the following task to do in the next following 3 weeks: create a real-time multiplayer strategy game. I have no experiance in making multiplayer games, no experience in phaser io, node js or using web sockets. But I am a fast learner and I already learned a few things about those libralies. I am thinking of using Angular and phaser for the client side. Nodejs and socket io for the server side. The thigs I need to be done: -multiple game rooms -states for the game(menu, playing, game) -user authentication -interacting on a MySQL table for users (connecting two servers) -building logic for the game -real time syncronisation between every player, every unit(when it shoots, move) Ok so the first 5 issues won't be such a dificulty for me and if it was a single player game I probably wouldnt ask this question. I am really asking for help for building the base thing and some "proof of concept". I need to connect the two players in one room, need to when a single unit is moving and shooting to some building, and the building(tower) shoots back this to be sincronized and to work for lets say a 100 units. Where do I start? What metod do I use? 1. Shoud I have game state on the server and this logic to be in the server so everything is syncronized? So when two player start playing the game, the server also (plays the game) in some kinda loop until the game ends. And sends to the users JSON lets say 30times/second. And the user interact to the game logic with controllers, which sends the info to the server and server updates it's state, mean time the client still gets every second a lot of json objects, and rerenders on every change. 2. Using Observer pattern with syncronizable interface, for keeping track of enemy possitions on your client. The server is only used or transfering data and authorising, nothing else. Have sepparate game states on each client, which you syncronise with other clients? So which method would you advice me to start with for my prove of concept(I accept other sugsestions)? How should I build my archictecture? The prove of concept is the basic thing that I should start with but is the most hard one. I am way over my head. I would really use some help. Thanks!
  10. Hi, Which Javascript based game engine would be best and easiest to make online game based on (maybe) websockets ??
  11. I have a good enough sense of how to make single computer games, but network games just throw me off. I tried making a few simple multiplayer online games with html5, node.js websockets, and it's so different from making single computer games. You can learn to make games, (html5 games especially) by actually doing it. You can make a small non-online game and make it grow. For online games, I feel that it's much more complicated. It also feels more fragile. If a normal game runs on your target devices, you're okay. But with online games, so much things can go wrong. I feel that multiplayer games is the edge to what you can get without getting formal education. To not look sound a noob trying to make a MMORPG, I'll start by... pong, since most people know how to make pong. Let's say I want to make online pong. I'll need to have a server program. Players will be put together two by two so they can play against each other. So in that case, the server will be simulating multiple pong games. So, at that point, all those clients would need to communicate with the server and veci-versa. What would I use, a single port on the server? A single websocket? Multiple websockets? Would all the pong games work in a single program/thread, or would each pong game be there own mini server? Another consideration is the fact that game s may be created and destroyed every second. Now, let's say a MILLION people would want to play on my epic-pong-online-4-free.com site at the same time? It's not really a Massively-Multiplayable-Online-Game,since none of these million people will see more than one adversary at a time. Still, half a million pong games would need to be running! I would need to have more servers. In that case, how would more than one servers work? In a game like Minecraft, you have 1 game per server, but in the case of pong, a good computer might run at least a few dozen games of pong, witch makes it even more confusing. Also, I've heard about cloud hosting, where the point IS to have lots of computers working for you. But in that case, wouldn't you need a central computer that controls the others? I'm I fan of learning things by doing them, and unlike with html and javascript, it's hard to do with server side stuff, especially when considering more than just my puny little desktop. I tried using nodejs because I felt too lazy to learn another language and another way of doing things. But if there is something that would be more convenient, I would switch to it. I just would like to sort things out and maybe use html5 for the client, and by obligation use websocket for commmunication(and websocket isn't such cool of a protocol anyway, isn't it?) Oh shit, I am so wordy so late at night!
  12. Hello, Let me present you my game. This is a Multiplayer First Person Shooter set in a fantasy context. It runs only in Firefox and Chrome/Chromium browsers or any browser that fully supports HTML 5, pointerlock and websockets. So don't try with Internet Explorer. The game uses raycasting technics and looks like wolfenstein 3D or Heretic. The server program is written in Node.js and the client is written in javascript. No framework but mine is used. The game is located here : http://www.laboralphy.org/blightmagic/ You play a wizard with the ability to shoot magic missiles and read various scrolls. All players are fighting each other in an arena. As a wizard, you may : Read scrolls and use potions. those items grant you temporary effects like invisibility or reflection shield. Such items can be found in chest scattered throughout the arena. Basic controls : Use your mouse and keyboard (W.A.S.D) to control your character. Click on the left mouse button to shoot, click on the right mouse button to use the selected item (scroll or potion). Use the mouse wheel to select an item. Deathmatch only... Currently, the only objective is to earn points by shooting down your opponents. There may be "team deathmatch" and "capture the flag" modes in the future. Mobs : Pumpkin monsters may crawl in the arena so watch out ! They are nasty. The server : Hosted by friends of mine, the server is located in Europe and may not be optimized for network games, sorry about the high network latency you may experiment... Screenshots : Video : http://youtu.be/Y38TBVEE8g4 Game : http://www.laboralphy.org/blightmagic/ Game Manual : http://www.laboralphy.org/blightmagic/manual/index-en.html I hope you'll give it a try, please post some comments or suggestions. I'm thinking about improvements on this game, but I also have others projects in mind so ... If anyone knows one thing or two about making games a little more popular I'll be happy to read some advice. Thank you.
  13. Hi all, I've been working on Star Sovereign for a few months now, and it's starting to come together- but it still needs a lot of polish and new features. I would greatly appreciate it if you could give it a whirl and provide some constructive criticism, and maybe have some fun while you're at it. It's free, no email registration required, etc. The goal of the game is to work with your teammates to attack and destroy the opposing team's star, while defending your own. The control scheme can be found on the game's main page. Link to the game's website: http://starsovereign.com (just click "Play" from there to jump on in). Looking forward to participating here in the forum and trying out some of your games as well! Regards, SS
  14. Built a 2d, multiplayer fighting game. It's being hosted on a small server, but should still be playable. Would love your thoughts. It's open source, so you should be able to learn something from it too. Primary: http://nodekick.jit.su Mirror: http://node-kick.herokuapp.com
  15. Hello, I'm searching for a free hoster of a small HTML 5 game with node.js backend. Websockets support is required for the multiplayer part. I already checked out Nodester and it seems pretty cool, but I was wondering whether there are any alternatives. Greetings