Autarc

Members
  • Content Count

    19
  • Joined

  • Last visited

About Autarc

  • Rank
    Member

Contact Methods

  • Twitter
    Autarc
  1. Like puritanner mentioned, it depends on what you like to achieve. Accesing the system clock for retrieving the current time can be done via the browser implementation of the Date Object. Storing information for offline usage can be done via AppCache in combination with a web storage solution. Besides Local- or SessionStorage, you could also leverage a real database in form of IndexedDB with proper transactions. A former SQL based solution is deprecated and won't be supported by most clients. If you like to keep the data synchronized beween multiple systems, you will need an additional server. This one won't be restrained by the different browsers and therefore be able to use SQL approaches as well.
  2. Are you comfortable with another language aside of PHP in the backend as well ? Nowadays I would recommend you to use CouchDB or MongoDB for more complex systems. Both are neglecting SQL and purely based on JSON objects, which can be stored and retrieved easily. Wrapper & connectors exist for various environments - although I am using mainly NodeJS with additional modules. These take care of most aspects and allow a basic setup in a few steps. If you don't require a full query driven persistence layer, I second the idea of a simple key-value storage like redis.
  3. @Travis: I am the author of PeerGaming and although its created for the exact purpose of helping devs to create multiplayer games without regarding an additional server, I currently can't recommend to use WebRTC (~ PeerConnections / DataChannels) in real applications or games yet. Unfortunately the browser support is quite limited and a cross-browser communication between at Firefox and Chrome still need some fixes (Desktop & Mobile). As reliable channels are implemented and getting stable for proper data exchange, I will update the framework and create proper examples for showing its usage. So far it broke already a few times because of these changes. It will be official announced as soon as the vendors adapt the browser internals according to the latest specs and finalize their API @Paul-Andre: For the basic understanding of creating a realtime multiplayer game with socket.io could you take a look at this article of buildnewgames. In a previous thread were also various ideas & hosting options mentioned.
  4. As I like the idea of an efficient & flexible ECS while currently tinkering around - I've got a few questions: Is there a particular reason or advantage of refering component properties with an additional function call ? Couldn't you just access the object and its values via "this.Position" ? Althought some components are merely container for simple data, other provide additional methods used in system iterations. As multiple instance of an entity with the same set of components are created, wouldn't it be better to assign these functions just to the prototype and re-use the definition ? Could you find a proper solution for inter-system/component communication, e.g. inserting another iterating system just at the end of the current loop ? Previous solutions included an additional observer, which got used as messenger to send messages and trigger calls.
  5. Kudos for the exposure on RPS Just tried the demo so far and it was quite good - especially as it reminded me on the old-school Realms of Arkania series.
  6. Did you already took a look at voxel.js ? Base Modules, Engine and Demos are seperated to provide a good start Otherwise here is an article about smooth terrain generated by voxels.
  7. A few weeks ago, the head of development of Bigpoint gave a presentation about porting large C/C++ code bases to the browsers. Although there is no live record - his slides are available and provide a good overview about the latest approaches Slides: http://www.slideshare.net/andreweissflog3/quovadis2013-cpp-ontheweb
  8. You can find a few provider in this thread as well. Depending on your plans (e.g. open vs. closed source), you can probably find one which fits your needs As for the database handling, I would recommend to use Firebase - still free during the beta - which allows you to store and retrieve the required data for the account managing quite easy. The security issue shouldn't be a problem, as you will probably just access the records from your backend and not send them directly from the client
  9. Well, especially as it's not just for Chrome - but also limited for "Packaged Apps". The user has to install the extension on their system for local usage, which would probably scare potential players who expect an easy setup of a browser based game... Despite the fact they are still rough and in development unreliable DataChannel are based on UDP and partial implemented in Firefox Nightly & Chrome Canary. So far I wouldn't recommend you to use them for production - but at least there will be a technology which should be useful for multiplayer games in the future
  10. Depending on your motivation/purpose of the project - you could apply for a free tier on Nodejitsu (if its just for fun and open source)
  11. It is and shows what will be possible - just that the demo shows an specific use case with an hard coded implementation for their needs (as they used BananaBread, their emscripted port of Sauerbraten 2 compiled from native "C" code) With Chrome M28 reliable DataChannel should be available as well and with the latest changes in Firefox Nightly - we hopefully can work towards a cross-browser solution for gaming. As no one likes to use an additional server setup, the bootstrapping process + P2P brookering should be included in the initialization. So let's see how to tackle that as well as persistent network-data for late join & reconnects
  12. Same goes for the Multiplayer implementation in BananaBread - Cube 2 Matches via PeerConnections. Shows what we can expect from WebRTC usage in gaming, even though it's still emscripted and hacked together
  13. @ZippoLag: Unfortunately it's quite the opposite: most browsers doesn't have it implemented yet - especially for accessing it directly. To send arbitary data/messages, you need create a DataChannel which can be created after a PeerConnection got established. So far DataChannel are only available using a Commandline Parameter in Chrome 26 (+ without in Canary). Other WebRTC features like MediaStreams via getUserMedia() or solely PeerConnections are also available in Firefox & Opera (~ probably the reason it's not listed at caniuse.com). As you also still need an additional signaling channel, it's more complex to handle these connections compared to WebSockets + the current implementation doesn't provide reliable candidates. If you are still interested in P2P via WebRTC I would recommend you to take a look at PeerJS or PeerGaming. Hopefully in a few months PC/DC will get better support
  14. Well, many people nowadays just lean towards Three.js as an abstraction layer for common tasks. But I prefer to understand the code behind as well, so I can recommend these sites for an introduction: - Learning WebGL: http://learningwebgl.com/blog/?page_id=1217 - WebGL Essentials: http://net.tutsplus.com/tutorials/webgl-essentials-part-i/ - Getting Started with WebGL: http://docs.webplatform.org/wiki/tutorials/getting_started_with_webgl
  15. Not true at all - besides the latest node effort, it was almost 20 years ago used for this purpose: https://en.wikipedia.org/wiki/Server-side_JavaScript#Server-side_JavaScript The good part of using a Node.js backend for gaming, is the simplicity and community support. In case you want to do realtime communication, you can just leverage the complex part and use a WebSocket library via npm. Many people here could probably help you with the setup etc. Other environments are great as well - but as you will probably use JavaScript on the client side, so you get the chance to re-use some code or at least exercise your scripting skills