Saturday 24 December 2016

Seasons Greetings, Goodbye 2016

Hi!

Wishing you all warm and happy holidays in the next few weeks
and all the best for the coming year!

Let's make this a year to never forget!

~The Catbyte Team

Sunday 13 November 2016

Like a boss: AI-Vendetta fully leveled.

Hi!

Today we are very glad to announce that we finally have built all of the levels,
including ALL boss fights, that we are going to feature in the game!

With this we are getting closer to reaching a beta stage product! All that still needs to be done feature wise is an overhaul for our UI and Menu (with full controller support) and an all new unlockables system. At the same time we are also working on transforming the game visually, we can't just keep those grey boxes there!
And of course we will also be fixing and tuning the game till we think it's really great!

As you may notice, there is still a LOT to be done before we are going onto the market with our game. Until that point we would love to keep in contact with you, especially if you are interested in trying out the demo (link below) because your feedback really matters! And of course, after the launch we still like to hear from you and we will be there to make sure your game experience is the best possible.

So what can you expect from us in the near future?
For starters, we will keep up our social media presence, especially on twitter with weekly screenshots.
Major announcements such as the, to be expected, beta stage announcement will of course still be primarily done through our blog, but we will keep you posted through social media as well of course!

~The CatByte Team


Playable exclusively in one of the following browsers: Internet Explorer, Firefox, Safari & Opera.
Requires installation of the Unity Webplayer plugin.

Wednesday 9 November 2016

AI Vendetta: The gamedev story

Hi!

Some of you that follow us on Twitter or Facebook may have already seen it, but today we are very pleased to share a lovely story on the development of AI Vendetta here as well! A while ago we were very happy to speak with Ninichi, a talented game music composer and marketing consultant. She made a very cool article about our game and we are so thrilled and honoured by all of her support!

She has been doing these articles for many other indie games as well and has been showing such amazing love and support for the indiegame community, so please check out her website or follow her on twitter for more cool indiegame development news!

P.S. Stay tuned for some more exciting news later this week as well!


You can find the article on her website by clicking the link below:

"introducing the game AI-Vendetta" by Ninichi

Wednesday 17 August 2016

Status Update

Hi Everyone!

It's been a while since our last update. A thing I've been saying a lot, but don't worry!
We are still alive and very active in the production of AI Vendetta.

So where are we currently and what do we still need to do?

Currently, we have a whitebox version of 23 out of the planned 25 levels. This means they are fully functional, but are created with a minimum amount of visuals so we can focus purely on creating, validating and tuning the levels. Doing so makes it easier for us to guarantee quality- and bug-free (as far as that is possible) gameplay. This also ensures that we don't get distracted by the aesthetics of the game and instead focus on its quality. Another advantage of whiteboxing levels is that it allows you to do functional playtesting and easily tweak and alter levels. Something I would absolutely recommend to other developers!
Once this process is fully done, we can start decorating the levels and writing character dialogs. Next to the initial 25 levels, we are also working on 5 Boss fights of which we currently have 3 fully functional.

Because nearly all levels have been created, content wise the game is nearing completion! Which is something we are really proud off, especially after such a long journey. However, this doesn't mean we are nearly done!

Even after these levels have been whiteboxed, they still need to be decorated. This requires art assets to be made and hand-placed in every level to create a unique feeling for the game. The crafting of this feeling also goes hand-in-hand with the soundtrack and sound-effects, as created by Rens. Besides that, most of the characters and enemies will require some modelling work.
So yeah, there is a LOT of artwork that needs to be done.
This is something that we can do ourselves, but it will take a lot of time as we are primarily trained as programmers and designers. So we may also be interested in taking on a new member in the team, buying art assets or delegating it to an external service.

Here's a few of the recent (art) updates we made:


Some Official/Unofficial programmer (placeholder) art by Thom


Lots and lots of whiteboxes!


Rounding up:


OK, so we still need to make the game look nice, then what?
Well, to make sure our players get the best experience possible we need to do a lot of testing and bug fixing. Creating a game not only about creating a fun experience, it's also about making it work good. And it is our mission to make it so! And to do so, we can use anyone's help! In fact, we absolutely need it. When creating a game or experience, you only know what you like about it and what you want to get from it in the end. But this is an experience we are sharing with the world, and we are not making it just for ourselves, so your opinion really counts!
Not only that, we also need your support. We are doing our very best in posting regular updates on several social media, mostly on Twitter and Facebook. We also do an occasional twitch session where we show a bit of the process we go through in creating the game. Simply sharing or following our process as we do this would mean to world to us. So please feel free to check out our social media or play the demo!


Discover us on






(Demo playable exclusively in the following browsers: Internet Explorer, Firefox, Safari & Opera
requires the Unity Webplayer plugin to work)

Tuesday 31 May 2016

Behind the scenes #2: Making the Rules


Hello!

Today we present a first mini-blog in a range of upcoming blogs to show you the second episode in the How it’s made video series: Making the Rules. Our colleague Rens is making these videos and we hope that they help give you more of an idea and insight into how we work and also show you a little of the work itself!

So what is this video about? It actually goes more in-depth on a previous topic where we discussed how we come up with features and prototype them before actually adding them to the game. To do this we make use of a feature matrix (remember it from a few blogs back? Image below the video). Using this matrix we can recombine existing features and combine them into new topics for mechanics or puzzle designs. We can also use this matrix to test out new idea proposals to see if they actually match with the existing content, of course you don’t want a new feature that completely breaks the balance of the game!


AI Vendetta Dev Video #2: Making the Rules

As you’ll see in the video, we usually start of brainstorming together to generate ideas. Our designer then further develops these in a concept and at the same time also validates them with the existing game content using the feature matrix (image below), among other tools. After the concept has been developed and an official design is made, the idea is then prototyped in a safe testing environment where it can be tested in various situations. Finally, when it has been completed and approved by all parties involved it can be polished and added to the game.
[ FEATURE MATRIX ]

This concludes our mini-blog. We hope you enjoyed the video and if you’d like to play the game for yourself, you can do so by clicking on the following LINK. Remember that the web demo is playable in Internet Explorer, Firefox, Safari and Opera after installing the Unity web plugin. Feel free to let us know your thoughts on the video and the game! We’d also love to stay in touch if you have any questions or suggestions, especially with our fellow developers from all around the world!

See you all next time!


~Thom de Moor, CatByte Games

If you are interested in following our progress, follow us on Blogger, Facebook, Twitter, YouTube and Google+ as well as our individual members on Google+, Twitter and Indie Gamer.

Sunday 22 May 2016

How do they do it? - Programming

Hello!

Here is another dev blog in the How It's Made series! Today we are going to talk a little about Project Management as well as a little bit more in depth about programming the game AI Vendetta. We will also give you some useful tips that are not just applicable for programmers but for designers and project managers as well! This part may feel a little bit like a lecture but bear with us and you might get some useful tips out of it for your own projects! But don’t worry, we won’t go into too much detail when it comes down to the programming part!

Before we start however, I’d like to announce that a new and improved version of the AI Vendetta demo went live recently. It contains many fixes, tweaks and visual changes which we think you’ll like! And of course, we’d also love to hear what you think about it!
Remember that the game is playable in the following browsers: Internet Explorer, Firefox, Safari and Opera. The web demo will not run using Google Chrome unfortunately.


So what is this dev blog all about!?


You might just be wondering that! Well since programming is a very large subject we are going to talk a little bit about what we learned in past projects and how we are applying that to AI Vendetta. As we mentioned in previous posts, Iteration is key to development and iteration is also what drives us and me as a programmer to develop smart and flexible solutions for AI Vendetta. This allows the game to grow without increasing the complexity of the code. In the long run that allows me to better change existing features as well as add new ones. Which saves me time, a lot of bugs and other worries as well!

On the other hand, this also costs you more time to set up and stands in the way of prototyping an idea right away when you just start a project. So why do this? Well that brings me back to several valuable lessons I once learned from my teacher, mr. Dino Dini, as he explained the dynamics of a project. This is something that is really relevant to development and not just for programmers but everyone involved.

Basically, whenever you are working on a project, you are dealing with Unknowns in one way or the other. And Unknowns cause Risks for your project that can be pretty harmful, and unfortunately, you are almost guaranteed to run into them! So how can you mitigate these so that when they occur, you can at the very least minimize the damage? The key to this is to maintain Flexibility.

I know Flexibility is a very abstract term and you can apply it in many forms, some more desirable than the other. The way to maintain Flexibility in programming is through architecture, structure and abstractions (and staying away from programming (anti-)patterns, for which I can advise a few good books).

But how can you maintain Flexibility as a project manager? Well the truth to that is… it is very hard! Especially if you have limited experience. But there are some tips we can give you and likely scenarios you’ll encounter in game development.

1.    The first rule is, stay on top of your project! In game development all sorts of things will happen, so staying connected with your team and the current state is really important. We often try to do a weekly meeting so we can discuss what we did that week, how well it went and what our plans are for the next week (and the near future). This really helps so you can monitor issues before they arise and support each other with any difficulties you encounter.

2.    The second thing is to document your work. Usually when starting a project or a component of your project you’ll start off with developing a high level concept (Abstract idea). Next you process this concept into the actual design or steps that you are going to take in order to achieve that concept (Concrete). At that moment you are already breaking down your project into manageable steps, so that is a great start! As you do this, you can start identifying issues and unknowns in the concept. As a designer you are usually already doing this by creating Concept- and Design documents for your projects, so hats off to you!

As a programmer, you may want to consider writing technical documents; these are essentially the design documents for your code. And I know this is probably not the most fun thing you can think off, and to be completely honest, I don’t do this every time either! But this has certainly helped us in validating an idea or approach. Besides it also helps convey what you are trying to do to your colleagues.

A good example of this was when we decided to completely redesign how the Playable character in our game works on a technical level. As we were working longer on the game, the functionality of the player started to increase and with that the complexity of the internal workings as well! At one point we really wanted to refactor the way this system worked so we could compartmentalize all the mechanics of the player whilst also increasing the flexibility of the system. Because this was such a large procedure we decided to work it out on paper first. …A few drafts and changes later we were able to implement it smoothly into the game.


    


3.    As a third piece of advice, keep in mind the Scope of your project. The scope is directly related to unknowns in your project. As you work on your project, the scope always tends to increase as you may want to push features that are deemed necessary for your project to work that were not thought of initially, but projects also tend to “feature creep”.

Of course you still want to deliver the best product you possibly can, but sometimes you have to be a little bit hard on your team for the sake of the project. Projects going out of scope and out of budget are a few of the main reasons why a project may fail. Finding a good balance will keep your team happy and your project healthy!

4.    And the fourth and final piece of advice. As a project manager, especially with small teams, try to stay on the same level as your team. People often look at each other for advice and responsibility. So always maintain a problem solving state of mind and work together to avoid issues and solve problems as they occur.

5.    Bonus advice: make lists, I love making lists so you get an idea of where you are and what is still left to do. What we tend to do is make use of bug reporting tools to create a list of not only bugs but also features that we want to implement, for example when preparing a new demo. Because of the list everyone can stay up to date with the current status and personally, I love it when everything gets crossed off from the list :D

    


So where is that programming talk I was waiting for!?


Well, as I mentioned, programming is a BIG subject, but I hope that some of the things discussed above in some way help you with your project. It is probably all very straightforward but creating games is a big and complex process and I really admire everyone who sits through that process!

But before we start rounding off this blog, here are some technical specs about the game!
As you may know, AI Vendetta is being built in Unity3D. To do this we make use of C# as both Rens and I have a C++ background, so C# was the closest thing to our comfort zone. And as you may come to discover as well, C# is a really great programming (and scripting) language!

What I personally really like about Unity is that it is a very great and easy tool to learn, whilst still providing lots of support and possibilities for advanced users. Another great thing about Unity (and many other modern game engines) is that they are also really accessible for designers and artists. In the past I was used to creating tools and editors myself, but Unity has made it really easy to expose data to an interface. So while the programming team creates the game, they can expose the tweakable data to designers and artists so that they can set up and tweak the game and its components.

But here is a short list of what we especially like in C# in particular:
1.    Memory Management. In C++ this is a really hard thing to get right, you probably need to write a memory pool and you have to keep track of everything that you “new”, you also “delete”. In C#, at least short term, this becomes a bit easier with the Garbage Collector; however, you still want to keep an eye on your memory footprint of course ;)

2.    Reflection. This is an amazing feature of both C# and JavaScript, it allows you to instantiate an object, just knowing the its type, you can even convert a string name into a type and then instantiate it (useful for example in serialization).

3.    Pointers, or rather the lack of them. When working in a language such as C++ you really need to keep track of the scope in which your objects are declared. And then there is a difference in memory (it can static-, stack- and heap memory), but in C# you really don’t have to keep track of that. And the really nice thing is, every object or variable is maintained as a reference, so you can freely share and pass them along in your code.

4.    The final thing I personally like about C# is that inheritance and virtual functions are a bit easier to declare and manage. In C++ I would usually create Macros to make things a little bit easier, actually approximating how C# exposes base objects and functions.

So yeah, C# is definitely easier than C++ and there are some very cool features in C# which don’t exist in C++. So why do people still use C++?
Well, there are very good reasons to do so. C++ gives you a lot more control over your application, but it also allows you to make very in-depth optimizations. You could even go as far as partially writing your application in Assembly if you like. But not only do you have more control, C++ is simply faster because C# in Unity is a scripting language and it is being interpreted. Whereas C++ is directly compiled into instructions that your computer can execute, making it inherently faster. However, with the speed that current computers run at, C# with Unity is still an excellent choice for creating games! And not to forget the multiplatform support Unity offers.

But I can go on about this for a long while...

    


What can you expect from us in the next Blog?


Well, for our next blog we would really like to discuss some of the results from the play tests and perhaps introduce some new features as well that are currently in development.
There is also a new “How it’s made” video coming up in the next few weeks, so stay tuned!

We would also love to hear what you think about the project so far and if you haven’t yet, give the demo a go let us know what you think! If there are any questions or comments that you have, or maybe a subject you would like to hear more in-depth about, please let us know in the comment section below! Of course you can also contact us through various other media (Check out the Contact tab on the top of this page).

And perhaps you are working on a game of yourself as well? We’d always love to share experiences and help others if we can, so stay in touch!

That’s all folks! Be sure to try out the demo and let us know what you think.
Thank you very much for reading and we hope to see you all again next time!

~Thom de Moor, CatByte Games


If you are interested in following our progress, follow us on Blogger, Facebook, Twitter, YouTube and Google+ as well as our individual members on Google+, Twitter and Indie Gamer.

Sunday 3 April 2016

Demo Time - Part II

Hello!

Welcome to another AI Vendetta blog! It has been a while since our last post, but today we have exciting news! We have been working very hard since our last post to not only polish the current state of the game, but to also put together a completely new demo! The new demo features three levels showing you much more of the features and mechanics that AI Vendetta has in store for you! And not to mention, a much more smooth and polished experience!

So... here it is! The new demo, play it using the link below or the link in the menu bar above. Just as last time, this is a web demo which will only work using Internet Explorer, Firefox, Safari or Opera. The web demo will not run using Google Chrome unfortunately.

(Supports Internet Explorer, Firefox, Safari and Opera using the Unity WebPlayer.
If you need help with the plugin feel free to contact us!)


So what happened since last time?


Many things actually, so many things that we can’t even show them all in the above demo! We have been focussing on getting a lot of the new content out of alpha stage and ready for play. While at the same time fixing many issues, including some physics issues. However, as you may have noticed, the demo has been expanded to 3 levels now featuring a lot of new content! Besides that we’ve also been working hard on tweaking and polishing in order to make sure that the overall experience is better and smoother!

Next to that, we also changed the appearance of several elements in the game, including a complete overhaul of the playable characters. And while we do not currently have an artist, we think that these new visuals at least give a little more insight into what direction we are going. At the same time, the visuals also show a major improvement over the former “whiteboxed” character models.

To put that all in a list, these are the new things you’ll encounter in the demo:
  • Playable character visuals changed
  • Playable character tweaked and made physics smoother.
  • Introducing mobile enemies
  • Introducing conveyors
  • Introducing terminals
  • Introducing new types of triggers and other switches

Some screenshots of those changes:


    


    

Where do we go from here?


While we are already a long way into development, there is still much to do before we can reach a beta stage product. Right now we have roughly 15 playable levels for the actual game, out of the initial 30 we intend on making. Most of the features that we want to roll out have already been implemented as well, so that’s all very good news!
However, to create a fun and polished game, we need to put in many, many hours of testing and tuning to make every bit of the game feel right. And besides that, we need a lot of art in order to visualize and decorate the currently very stale and empty levels. Next to this, we are also working on bringing the story element of the game more to light by adding dialogs and cutscenes, which are now on their way.

To summarize, we are doing quite well for ourselves and even though we are purely working in our spare time, we have found a good pace to work in. Right now we are almost midway from an alpha stage product towards the beta product. We hope to reach beta stage in roughly half a year, up to one year from now. (Creating games takes a long time!)

In that time however, we could really use your help! Most things we can do ourselves, but at the end of the day we are very biased towards the game. Therefore we need your opinion to help guide the game towards something that is enjoyable and tailored to a wide variety of gamers!

What can you expect from us in the next Blog?


Our next blog will arrive in about a month or two from now so we have chance to make more improvements to the game. In the meantime, we greatly appreciate any comments, suggestions and tips you may have (and all general criticism for that matter) so we can put that towards making the game even better! We’ll also do our best to answer any questions that come up and if you want more in depth information let us know! We would love to feature some community picked questions and topics in our next blog, so be sure to let us know in the comment section below (or any other media).

If nothing else, then for our next blog we want to show you a little bit more about how we are creating AI Vendetta. Next to that we’ll also discuss how the different aspects and professions come together in the process of creating games in general.
Are you working on your own games? We’d love to share tips and experiences, so be sure to stay in touch!

And with that, we end this blog. Please feel free to play our game and as always, any comments are greatly appreciated! Thank you very much for reading and we hope to see you all again next time!

~Thom de Moor, CatByte Games

If you are interested in following our progress, follow us on Blogger, Facebook, Twitter, YouTube and Google+ as well as our individual members on Google+, Twitter and Indie Gamer.

Saturday 23 January 2016

How do they do it? - Level Design


Hello! And welcome back!


First of all, another (slightly belated) happy new year to all! We hope you all had a nice holiday and perhaps made some good new year's resolutions?
Last time we blogged, we introduced the first playable demo of the game to you. It's been a whole month since then and we have been keeping busy. Right now we are working on a whole new set of levels and mechanics for the game! We also updated the webpage slightly, so for those who haven’t yet played the game, be sure to check it out here.
(The web demo works in Internet Explorer, Firefox, Safari and Opera, you may need to install the Unity Webplayer plugin first in order to play the game)


So, let’s move on to the topic of the day!
Today we would like to continue on our “how it’s made” blog from last week, and with that also introduce a short video series on how we are producing the game. The video series will show you some of the methods we use in the production process, but also exclusive in-game content! Although we intend to make this informative, we’ll try to keep it on the lighter side. ;)







Acquiring the Matrix!



Any game typically takes shape starting with a design. This can just be a cool or fun idea that you have, but usually in game development you want to write it down and refine it into what is called a concept document. These are the barebones of your game and allow you to pitch your game idea to others either to sell it or acquire (human) resources. Next to that, the concept document is a means for verifying your idea before you take it further into development.
Although this part is sometimes skipped by developers, please make sure that at some point you verify your ideas, otherwise you might end up with a game that is absolutely amazing, but only tailored to what you like. You may find that there is no audience to play your game, which would be a waste of all your hard work! That being said, it is important to always try and make games that you yourself would want to play if you are in control of the design because at the end of the day, you are the one who has to defend your game and show everybody how great it is! Finding a balance between what you would like and what others would like to play is therefore essential.


Luckily for us, we already made a prototype as proof of concept for the game as a school project. This allowed us to create a basic design, pitch it to teachers (with game industry experience!), and build a basic prototype. We’ve come a long way ever since and have now completely rebuilt the core game (in a new engine) and lots more!


As we’ve mentioned in our last blog, iteration is key in game development and it is best to do that right from the beginning. Even when you are uncomfortable with pitching your ideas to others, start with showing it to your friends and family. But keep in mind the target audience you are trying to reach.


So, as you saw in the header above, using a matrix (not The Matrix) can be quite useful to developing both new game ideas as well as the actual development of a game. So what is this Matrix thingy? Well, one day, a colleague of mine explained this to me and I immediately fell in love with the idea. Basically, you start with a two dimensional grid (matrix). On both axes, write down all ideas or mechanics you can think of for your new game (or the existing mechanics of the game you are creating). The diagonal line in the middle where the same ideas match is usually not used, but you never know! So what you do next is you lay down each mechanic next to another and see if that would lead to a promising new mechanic or game idea. You can also use this for level design; that is where we are using it for at this very moment! It makes sure you don’t forget about your mechanics, and it allows you to recombine them and create whole new mechanics and game experiences.


Here is a screenshot of what the matrix would look like:
You can do this on paper but you can also use office applications such as Excel to visualize it.


Example Matrix


 Simplified Matrix as we used it for our game.
As you can see, not all combinations lead to (useful) outcomes.



Level Designs, how do they do it?



As we’ve already mentioned, we like to use this matrix method for coming up with level designs. However, to come up with these levels, we first split up the game into several sections. Each section consists of about 5 levels and introduces one or two new mechanics. So for each section of the game, we already know which mechanics we are going to use. We then add these mechanics to a matrix and use that to design (small) individual puzzles. With all these puzzles and the general storyline of the game we decide on a level layout and implement the puzzle designs into it. Eventually, this leaves us with a level design.
You can design these levels on your computer using a drawing application, but you can also use Excel if you are building a tile-based game as we are doing with AI Vendetta. However, we personally prefer to do this on paper, because it, in the long run, is quicker for us and allows us to write comments and explanations as we go. (Although you can of course also achieve this with a lot of computer applications.) Or... you can even build your own level design tool if you have the time!


As we’ve mentioned before, we are working on a short video series on how the game is made. Today we can introduce to you the first video of this series, created by our very own Rens van der Meijs!



What can you expect from us in the next Blog?



And with that we are running towards the end of this Blog. We hope it may be of use to all of you who are interested in the games industry or are (starting with) developing games of your own! If you have any comments or questions, please let us know! We are always interested in helping others out or giving advice!

Again, if you haven’t already, you can play the game using this link. We are always happy with any feedback you may have and will do our best to implement it into the game! We may be posting updates to the playable demo as well, although we will probably not feature the actual levels and story that will end up in the final game as to not spoil it for anyone!
If you are interested however, we may be able to set you up for closed testing once we are well on our way in the Beta phase of the project.

That’s all for now, thank you for reading! In our next blog we will continue on how the game is made and let you in on other tips, tricks and methods that we use. We hope you enjoyed this blog and we would love to see you all again for our next blog!


~Thom de Moor, CatByte Games

P.S. If you are interested in following our progress, follow us on Blogger, Facebook, YouTube, Twitter and Google+ as well as our individual members on Google+, Twitter and Indie Gamer.