Tuesday, 24 February 2015

Another Update (a while later)

So this should be a reasonably short update, just putting this here for reference reasons.

Sorry for neglecting this update blog for so long, it's really a valuable resource and should be something I use more often, definitely.

Since the last update, updates in team members:

jackjt8's been given the role of Community Manager and has been doing valuable research for me, and really helping hold this project together.

Liddy's helping with the 2D Graphical Design and has made some brilliant banners for me, which I have put in the first post on the pi forums thread: go look there for more frequent updates, also.

That's all the roles currently assigned, but a few other people have been exchanging emails or PMs with me and are interested on working on the project, which is great, so thanks for all the support and interest!

Programming progress:

There still isn't a first 'version' of the PI-MMO, but I've been working on a back-end for the project by creating smaller test versions of various features.

I've managed to get some 3D simple colored graphics that can be moved around, and are moved by the server. However, I've got both machines on a local network and it's still rather slow, as I'm just using a couple of Bs at the moment.

Graphics progress:

Rather slow. We've only just got our first person who's happy to do graphical stuff, and we've got some banners, but that's it, but we've got some graphics on the pipeline, to make a feasible prototype.

MAJOR UPDATE:

This project is going to be pi2 based, and for the pi2, so pi1s might not even be able to use it as at the moment. While in very early development, we're just doing one version for the pi 2 that would work on that, and seeing what we can do for the pi 1 after a few stable builds are released with a feasible game: the in-dev umstable versions will only support the pi 2, but might run on the pi 1: to summarise:

WE ARE ONLY STARTING BY SUPPORTING THE PI 2 WITH RASPBIAN

Sunday, 1 February 2015

A Starting Point

Every project needs a starting point, especially one as big as this. Well, first, I should probably introduce what this project is aiming for, and what I am trying to accomplish.

I am trying to create an open source MMORPG for the Raspberry Pi community to use, only accessible through Raspberry Pis. The pi has an ARMv6 processor, and very low specs. My goal is for this MMO to run smoothly upon any model of pi with an average internet connection.

The pi community will be able to submit content to be added to the game, maybe even create new areas, graphics, etc. In the long run, I hope to create an API for this, or at least simplify the programming involved, and making it be programmable in any language. For now, I'm creating the project in C++ with the OpenGLES 2.0 libraries used for graphics.

Each pi connected to the system will be used to host a small amount of the content currently being used, probably content being used by them if not many players are online. This will reduce server stress, as EVERYTHING is being handled by pis. The central server is going to be a smallish cluster of 16-32 B+s.

Anyway, the first step any developers need to take that are working on the project is to get acquainted with the OpenGLES 2.x libraries, and create a few small programs. The libraries do not have very good tutorials available, especially for the pi, I have found, so maybe in future some basic guides will be posted here as I become more comfortable with it: I'm only used to OpenGL  3.x, which is for x86 processors and not compatible with the pi.

Artists will need to make sure they can 3D model to the required size (I have not decided yet, I will need to have various sizes tested) and in the right format.

So far, I have learnt some basic skills in OpenGLES, in the space of a few days. The product of this is a program with a triangular prism (coloured with different gradients on each side) which can be orbited with the mouse or the keyboard.

These will be needed for character control, and rendering of an object, though I still need to learn how to import models to the program, if that is what will be used, and establish some basic server-client programs that work with the pi, before I can begin upon the actual project.

Obviously, this is a huge community project and WILL need the support of the community. Anyone interested in developing even a small part of this project, doing artwork, helping with server-client connections, or even hosting, can comment here, email me at kierantribe@gmail.com, tweet me @chaotic_coffee, or post on the raspberry pi forums thread (http://www.raspberrypi.org/forums/viewtopic.php?f=78&t=98193) as help is much appreciated, and needed.

Thanks for reading, see you guys soon in the next update!