• Content count

  • Joined

  • Last visited

Community Reputation

151 Neutral

About Phuein

  • Rank

Personal Information

  1. MMO Preferences Survey

    Err, the percentage part is annoying. Better use preference scales. Maybe it's just me.   I did fill it up properly. :-)
  2. NodeJS: Virtual Game World Framework

    I have returned to update the first post with relevant project updates.  Lots of changes for the benefit of client-sided people! Scroll up!   As per the continuing conversation about the usefulness of Node World...     Just because only I find this project useful and meaningful, and only some others may think and feel the same, does not mean that it is useless. Subjectivity has its' place in the entertainment and education world.   Maybe a better approach to this topic would be by selecting the major downfalls of modern online virtual game-worlds, and then seeing how Node World can respond with possible solutions. Do excuse me for speaking in present-tense, while the project is hardly in alpha stage.   The Issue With MMO's & Node World's Response   ISSUE: The modification and alteration of virtual game-worlds is currently limited by the constant need of managing 2D or 3D graphics, even before the actual representation of objects is relevant.   RESPONSE: Node World seamlessly integrates different clients into the same world, in such a way that modifications can occur in real-time and without graphical input, but still exist, and be available for testing and conceptualization. Going even further, Node World can borrow from other existing graphical elements, and use their properties as a template for new additions.   ISSUE: Content, interactions, and events can only be managed by the developers, or in rare cases - a select few moderators, which limits the "developers to players" ratio. It is common to have only a handful of developers maintaining an entire game-world, for hundreds, if not thousands of players.   RESPONSE: Node World modulates and abstracts this hierarchy of content & functionality management. While it is still true that for many things, actual coding by reliable developers must take place, there is now the possibility of creating, destroying, modifying, and toggling the game-world's content, by the players, and without modifications to the code base.   In practice, players that have proven themselves reliable to the developers, can gain Master, or even Builder status. With that status, they can now freely modify the world's content, under the watchful, and mostly automatic, eye of their superiors. In short: User -> Player (registered) -> Master -> Builder -> God (generally developers.)   Masters can do minor tweaking work, such as making the world's content seem more individual and unique. Each part with slight changes that make a difference to the players.   Builders can even destroy existing content, thus making the world feel actual and imminent. Builders may create new content, by relying on the very basic templates the developers make. This removes a load off the hands of the developers, while letting actual players make meaningful changes to the game-world. A Builder may summon ingenious creations into existence, and then only need let the Masters put their hands into work, modifying and tweaking, so as to breathe life into those creations.   ISSUE: Modern games either require the use of an existing graphical, and even gameplay engine, or the creation of one, for a new game. This adds work for indie developers, where solutions have already been made, but have either not been made available, or are not practical, due to each engine's specific limitations. The game engine market itself is a factor, for the indie developer.   RESPONSE: By utilizing the power of NodeJS, Node World makes itself hospitable to all modern browser libraries, for the client's presentation and functionality. While a Node World client can be made with any compatible programming language and library that support Socket Networking, it is the fact that new technologies are developed daily, openly, and freely, in the browser application market. For example, a client may utilize the power of a WebGL graphics engine, or enjoy the comforts and simplistic animations of jQuery.   ISSUE: Very few games actually let the player run their own virtual game-world, or an extension thereof, without the game itself becoming outdated or unsupported by its' own developers. This causes stagnancy and repetitiveness in most MMO's, both in the community, and in the gameplay itself. A game-world will, at most, offer different servers, which function as load-management, more than anything useful to the players.   RESPONSE: Node World is extremely flexible, drawing from NodeJS, Javascript, WebSockets, and modern Databases, such as MongoDB. A Node World game-world can be infinitely stretched, divided, and combined. The sheer amount of abstraction in the server code goes all the way to allow this. Unlike common server code, which is made to be functional, and must not be touched by amateurs, the Node World server code expects amateurs to tweak it, edit it, remove parts, and add completely new parts to it. It does this, by keeping functionality not only relatively abstract, but by adding guards against mismatching arguments ahead of time - and relying on fallbacks, and by modulating its' own parts, as much as logically possible.   Node World, as a project, is aimed at modification. Even if it means less functionality, more unexpected results (bugs) to handle, and a harder time on client developers. Even if it means that, for a while, Node World will not be able to handle everything we have grown to expect of modern MMO's. This is to ensure that content and gameplay remain the two leading factors in Node World development.     There is doubtless more to clarify in regards to Node World, and the ideology behind this project. Naturally, the difference between ideas and practice is vast, which is why I prefer to keep my attention on the code and testing. If it turns out that Node World could only produce very limited results, well then, I would be proud to see an indie project "that could", by trying - as Monty Python put it - "something completely different." 
  3. Bad experience working on Indie game

    When you join a team, it's probably better to try and get detailed answers about when and why other developers had "left" the team. You might just get a bad vibe from the answers, and realize that the guys and gals who left, were right about doing so.    If you don't, however, just remember that art (including coding) is like any need. Once they get it, they develop higher expectations, and become less appreciative of having it.   It takes effort, awareness, and a positive mental attitude to avoid the apathy downfall.  So don't let this be about your art. It's not.
  4. I sense the uncomfortable vibe this topic brings to some, and I have recently ran into this little video: Charlie Crane: Game server development in node.js -- JSConf EU 2013   These good Chinese fellows are pretty much tackling this topic, in a serious scale. Open source, too. Great stuff. Video has some interesting statistics towards the end. I don't know any details, personally. Their code seems clean.
  5. NodeJS: Virtual Game World Framework

    Live version now available on:   This is a developers-only version, not meant for actual usage, but only for testing purposes and fun. You will notice that it looks like a chat room, mostly.  I use it for live testing, even though it takes a minute more, doing the 'git push' every time. I don't mind, and this way, everybody can see (and suffer) changes, as they come.
  6. NodeJS: Virtual Game World Framework

      I am, naturally.  server.js shows this explicitly.     I suspect that this argument comes down to "moderator versus random guy", so I don't expect to get a lot of fans out of this.    I do stand for my views, though. My premise is not wrong, because it is subjective. We have no scale in which we measure how single-or-multi a game is. Any person who feels that multiplayer games are not too "singleplayer" oriented, would have no personal interest in this project.   By making this project, I need not prove my bias; rather only show the differences.   This is a serious project.  It is so, for me. Actions speak the truth; and the code is my action.   I am almost done having a more representable version running live on OpenShift, so bare with me, and notice future updates in the first post (link to first post in this thread)!  
  7. Is story important in games?

    I still don't understand, how can there be a roleplaying game without a story. What would the player be roleplaying? A famished Pacman?   The problem with stories and games is how they are combined. With a single player linear game, it's sort of like a book. But, with a massive multiplayer, it's more like D&D, only pen&paper is so immensely flexible, when compared to computer games.
  8. NodeJS: Virtual Game World Framework

      If you disagree with the emotion behind this project, then it is not for you. I don't appreciate having my feelings disputed, simply because you don't feel the same.   If you disagree with the logic behind this project, at its' current state, then you are welcome to become an active developer. I am not the "abstract complaint" department.   I am happy to clarify.  Now...   I welcome any interested developers to contact me, or comment here, and join me in working on this, so that this unique project can reach its' intended goals.  
  9. NodeJS: Virtual Game World Framework

      There is no lack of virtual game world system that are already robust and scalable. So I have no interest in achieving that. The project is currently small scale and has no need for this.    However, I did say why games are built the way they are. It is because the current trend is taking old single-player games, and making them into multi-player games. That's how they mostly feel, too. Like playing a single-player game, surrounded by lots of other single-players.   The purpose of this project is making a game that puts emphasis on player-to-player interaction in the virtual world, online. Does it have to be massive? No. It does, however, have to present players with a world that is full of unique possibilities. Unique, in the sense that the content feels alive and intricate.   By giving the users the tools to influence the world, such as toggling MOB and NPC AI's from the client, it is possible to make such a world. I have seen this work, in small scale, in other games. Wherever game dev's build the tools for the players to use, the results are interesting and fun, instead of repetitive and unoriginal.   I think it's time to make such a world framework that goes all the way, having such tools as part of its' basic structure, instead of as add-ons.   I do thank you for showing interest in this project, and hope that more people show their interests, as well. 
  10. EDIT 11.2.2014: Within the week, I will link to the live version of the project on OpenShift. Git link has been updated!   EDIT 15.2.2014: Live developers' testing version is now available!   EDIT 3.3.2014: The project is being updated regularly, and some developers have already shared their ideas and solutions, in private. The project's client has been severely updated, to accommodate for the client-side testing of things. It is still available at   I have been working on and off, for the past several months, on this project of mine.   The purpose of this project is to create a flexible & stable virtual game world framework, server and concept clients, so as to answer the inflexibility and common limitations contemporary games suffer.   It seems that current games, even the massive (well funded) ones, are still designed over the single-player framework of the past, without taking into account the special needs of a virtual world full of live (meat) players (heroes.) At least, it seems so to me, and so I have made clear goals that answer this need.   More details in the README.   The scale of the project has become overwhelming just for me to work on. I thought I could get a good concept out there, just by myself. And although I have done much & good, I find myself stunned. The code is very orderly & clean, even at the expense of some efficiency, for the sake of readability / accessibility.   It is NodeJS. It is very modular. It is designed for modularity. Details in the README.   It has two main purposes:   1. Compatibility between all client types: Text, 2D, & 3D. The server parses between them, as best as it can.   2. Modular world modification & creation, so much so that even AI functionality can be toggled on and off, from the client, with user permissions. This is meant to replace grinding & storyless quests, with constant community made requests and events, live, without anyone needing to touch the code.   I am looking for help with this project! Anyone who would review it, and feel that they want to contribute and join in.   You can also contact me at: Or on skype: Phuein