A big world and lots in it
Besides all of the AI flying around Cyberstream, the world looked a bit empty. My intention was always to add more content to the world through walls and other such things and this weeks was spent getting that into the world.
The first thing you should know is that the world of Cyberstream is big, very big. It’s not infinite but it is large enough to take time to get from end to end if you should try it. In fact, in adding content to the world I frequently have to go to the extreme edges in order to test stuff out and it takes ages to reach them.
In order to fill all that space I needed a lot of content. At the moment this content is pillars and walls and in the end I filled it with 7500 of them. On top of that I added in 2000 AI units that each wander around the world. Which brings the total to 9500 things in the world. Of course you can shoot the AI so that does reduce the numbers somewhat
The next stage is to introduce variety in those objects by supplying different textures. This ironically is what takes the longest time for me.
You can see what it looks like at the moment in this video, if you look hard you will notice some other stuff that changed:
read moreA new forum and community lead development
I’m very much of the mind set that I make games for myself and others and that means I very much welcome feedback on the games I make. I also like the idea of getting that feedback as early as possible so that I can build suggestions into the game to make something that doesn’t just appeal to me but also to others. With this in mind I decided to add a forum to the website to give you all the chance to give that feedback. You can find it at xiotexstudios.com/Forum – please feel free to join and add to the discussion.
My ideal scenario is that the development of Cyberstream is community lead and that everybody can have a say in what goes in and what gets left out. I have ideas on where I want to take the game but some of you out there might have better ideas and I’d love to hear them. Should the game contain RPG elements or should it just be a shooter? Does trading work or does it just get in the way of a fun experience – all decisions that would benefit from your feedback.
read morePersonality – an experiment
Each of the AI inhabitants of Cyberstream have a personality and I needed some way to express this. As it’s got some RPG elements to the game I had always envisaged some ‘chat’ from the AI characters but had always struggled with how to effectively do that. Thing is, I want the chat to inject a bit of humour into the game and the way it’s displayed has to reflect that. Check the video below to see how I’ve done that:
The video is a bit choppy – not sure why, the screencast software I use sometimes does that. The actual game runs at a solid 60fps but I may need to drop that to 30fps as that’s the rate I seem to be able to get rock solid screen casts.
Back to the experiment…
Each character will display certain chat messages that reflect their current internal mood, some will be important to the player – as in ‘keep away’ while others are just there for fun. I have space for 512 messages so there’s plenty to go around.
If you look hard you will also notice another change I made. When you rotate the camera also leans into the rotation to add an extra bit of feel to the motion, but I may need to test that on a few people before making it final just in case it induces motion sickness – I’ve had that in a PS2 games I once worked on, nearly made one of the other coders throw up
Shooting stuff!
I’ve mentioned before that Cyberstream is a mixture of different game types, well, one of them is arcade so it’s important to get that bit right and in this case it means shooting things. So today I mostly worked on being able to fire bullets at the AI and getting them to react. It’s still in early stages but check out the video below to see how shooting things in Cyberstream currently looks.
At the moment they just fly through the world checking to see if they collide with any AI units and if they do they take that unit out of the world and then terminate themselves. Hopefully tomorrow I will have particle effects in so that I can do a small explosion when hitting the AI. It’s also all still very early coder art – the final version will look much better than this.
read more
Walls, shadows and Claustrophobia
Today was an extremely productive day, three new things went into Cyberstream.
The first was that the objects in the world such as AI needed a shadow to show that they were floating above the floor. This was easy to add and comes in the form of a simple blob shadow, cheap to render, and considering that all the moving elements in the world are made from viewer facing polys and therefore have no silhouette, appropriate.
The second thing to go in was walls. At the moment they are using the same texture on all four sides and no lighting but they do slot neatly into the collision model so the player can’t just go through them. The AI doesn’t look at the collision map yet but that will happen soon. The walls are important to the game because it means I can section off the world and give the player an incentive to explore rather than just present a huge space to look at.
The last thing to go in was a change of theme for the actual world which is a lot closer to my original vision of the game and it gives over a feeling of claustrophobia quite nicely.
You can check it out in this video:
Share read more
Prototype conversion and frameworks
Up until yesterday Cyberstream was mainly ugly prototype code. That means it’s mainly a spaghetti junction of code as I try out new things or modify the way something works. I say up until yesterday because all of that code was tidied up into production code. For me that means breaking it up into modules and is the most exciting stage for me because it means I end up with re-usable code that I can plug straight into another project should I choose to. Some of those modules will be game specific while others get integrated into the framework.
While prototyping Cyberstream the 3D engine modules were build into game code and once it was working I start to think about ways that the code could be made easier to work with should it be used in further projects. There’s nothing I hate more than code I have to fight with. If something is difficult or fussy to use then it hasn’t been designed correctly and whenever possible such code should be changed until it becomes easier to use.
I use my own frameworks. I’m not against using third party frameworks or middleware – in fact if I could I would in a heartbeat. The main problem is that all of the contracts I’ve been on have clauses that forbid the use of any open-source or other type of code. This presents an issue if I am the only code, which has frequently been the case so I took to offering the clients a licence to my existing frameworks in order to jump-start the project. This also benefits me because I get to expand the capabilities of the framework and each project it’s used in allows me to further bullet proof the code and fix and bugs that are found.
Share read more
2012 – A new year and a new game
Did you ever play the arcade version of Battlezone? If so, then chances are you tried to explore the vast world and even though there was nothing there you still pushed ahead and tried to find out of there really was something to be discovered. In fact if you look up Battlezone on Wikipedia you will find this:
“There was a persistent rumor/myth that one could actually drive to the erupting volcano in the background, up the side, into the crater and discover a castle inside. This was false, but plans to include such a feature in future versions were inspired by this myth.[8] A similar rumor insisted if one kept driving in the same direction for at least an hour without dying, one would eventually reach the mountains and see a “tank factory” pumping out enemy tanks.”
Back in 1990 I made an intro for the Amiga under the name ‘CW90’. Intros were mini tech demos used to show off coding skills and in this particular one I had put in checkerboard floor and ceiling. While coding this particular effect it evoked those similar feelings of exploration, I wanted to be able to go and find the hidden gems out there in that virtual world – even though as the coder I damn well knew there wasn’t anything! Little did I know it at the time but this would eventually blossom into a 22-year journey to create such a game.
There have been a few aborted attempts to create this game in all those 22 years but before Christmas 2011(around about the 24th of December) I started a tech demo using stage3D in Flash that has evolved into another attempt at creating this game and this time I think I’ve cracked it. The design and gameplay is cemented in my brain and at last I know how to achieve what I had originally envisaged.
The problem with the aborted attempts was the visual style, which in turn led to the theme of the game. A sort of form follows function dilemma if you like. All around me were games being developed that were leaning towards ultra-high-tech lighting and photo realistic graphics when in reality I wanted to make something a bit more low-tech, almost leaning towards 8 bit style graphics.
The reason for the retro style was that I always imagined the game world would be inside a computer in a plane of existence called ‘cyberstream’ – this partially comes from one of the reasons I got into computer programming in the first place: Tron. Popular taste has kind of gone full cycle and it’s very common these days to find so-called ‘indie’ games that use an 8-bit graphical style. This means I can no longer feel constrained to have to make the game photo-realistic and can actually render it in the style I always wanted without fear of it being simply written off because of that style.
Cyberstream, the current working title, is a mixture of an arcade, RPG, crafting, trading and exploration game. That sounds bold but from a technical point of view it’s just a collection of systems that when bolted together form an emergent gameplay experience. The key is in the balancing of that experience and providing enough to engage the player and hopefully have them wanting more. My only worry at the moment is the monotony that could result from the ‘plane’ nature of the environment but I hope that the actual content and story will offset that somewhat. I am not opposed to exploring environments with more details.
As it stands 2012 is going to be an interesting year for Xiotex Studios and I hope the conclusion to a 22 year ambition!
Share read more

