Tuesday, May 28, 2013

Source code experience

Not so long ago I was though about how the code gains its own "experience" over time, You could also refer to this process as „leveling up” mechanics featured in most of RPG games. At first this may sound irrational , but I believe that it's a very common phenomenon and most developers, experienced it at last once during their programming adventure (of course I cannot be sure).

It is possible to go even further, and compare code writing to a RPG game character building and its developement. Your code when you design it is simple, have functionality that you know that are need or you think that they will be need. It's is like creating characters in some RPG games you decide on gender, class, look and some basics parameters. In this point we programmers decide about path that we want to follow with this piece of code and this decision will influence everything later.

Of course hardly ever first decisions are 100% correct. With gaining experience we learn how avoid bad choices but still there are always some mistakes and to overcome them we start to do change in initial plans. In game we would tweak characters so they could pass next enemies. Code is exactly the same you always need to do modifications and cleanups so it be more usable, stable and things like that. Of course you can throw it away and start from scratches but you will loose all this small elements, functions that only wraps some simple operation, error validation and things like that. I called them in this post "source experience" you can call it whatever you want.

They make your code reliable, you know that they not only work but work correct. I don't talk here about hacks because if you have them in your code that mean you cannot relies on it to much. And earlier or later they will remind about themselves.

But what about "Level Up" ? I had such'a situation whit my file system which in some point of development was so stable that I almost didn't do any change in it. But on some point I decide that it could be nicer and do some wrappers that make it's usage easier (your "Level Up"). After that came again time of making small tweaks that make this code really usable.

And I see this pattern often. You code grow with time ( isn't something bad if you do re-factoring ) and your experience. At some point you will catch that you don't touch some things and use them as something natural. Everything because you know that you have there everything you need.

Till next week.

Tuesday, May 21, 2013

Story about cold coffee ...

Another week of hard work behind me. As you can seem, there are done some changes in blog and a lot of others changes planned. Of course I didn't forgot about development of game. Right now I thinking about direction that I should choose. It's important moment because it will decide about next few months. So I decide to mostly focus on bug fixing and finishing topics that are on my "to do" lists that lie next to my cold coffee.

And it's pretty funny to look at it :] not only because there is a lot of finished tasks. But because it's story about how I create my game. Some pages have some coffee mark because I sometimes put my cup on it. On others you can find some quick notes, calculations and weird pictures that describe ideas that came to me in meantime of doing somethings. As you can see some my notes are maybe a little chaotic but this just like myself and that's why I like them so much.

Till next week.

Sunday, May 12, 2013

Preview 13

After so long time here it come LBA preview 13. So as you can see I try very hard to keep my promise about more frequently updates. But what Is going on:

LBA was added to "indie crashe" so if you want this project to get more attention please vote on it here:     
There is not too much time but I gotten info that LBA remake participating there very late.

In game itself I do a lot of work on AI behaviors and try create this fully playable prison with all the details and events. There is still a lot to do but it's worth it mostly because I think about releasing something like "alpha techdemo" where you will be able to play this first location and give me some feedback what could be done better or what will not work.

Other thing that I done this week were work on my pipeline to create assets. I done a lot of improvement in this mater one of it was plugin "verbose" mode other tweaks to exporter so time to create and export mesh to game was as short as possible. And of course there was a lot of small fixes and changes in editor so everything was even more intuitive and stable.

And that's all in this week, have a nice watching and till next week.

Thursday, May 2, 2013

Pirate Crystal's released

I contacted with people from Pirate Cristal's team (with this that I had contact to) and after talk we decided to release game. I'm not 100% sure if this is the final version but it's only I have on my disk so there is no big choice. I think that game is pretty polished but there is small exception:

English translation is done today thanks to google translator. I didn't even read them only do them quick and recover installer script (it's still taken me few hours). So text in English version can be weird and to tell truth I'm not feel enough confident in my linguistic skills to do it correct. So if anybody want help and do some normal translation PL->EN or do correction of English version I'm open on proposition and can help with explanation how to do it.

So after this short explanation I present you: Pirate Cristal's Download

Progress update

This time still without any movie but not without anything :] In this moment I spend a lot of time on development so sorry for this long silence. So short what is happened with game in this long time:
  • Animation system changed so it's use was a lot easier in use and effects were better. So moment of playing sounds of steps, action on hits and shooting is a lot better synchronized with animations. 
  • Done support of 3D sounds so everything started to live.
  • Added multiple lights support.
  • Nice water effect.
  • Worked on AI for enemies and they behaviors.
  • Falling from heights have nice effects.
  • Game support multiple CPU (Moved on multithreaded code).
  • A lot of fixes so everything was stable and work nice.

Thanks to GIT history I can say that from last post about development in 29 november 2012 I done:
  • Uploaded 144 revision with only code (I often upload change list with multiple things in them).
  • Modified 7577 files.
  • Changed 121890 lines (without files I added and removed with them 820442 lines)
So as you can see I done a lot. Of course not everything is done directly in game a lot changed in technology on which it's created :

I know that for some people developing of own technology is not the best way of do things. For me it's big playground (seriously right now it's really big) where I can do what I want and how I want. So resuming I still don't know if decision of creating own technology was correct but I know that I won't regret it because I learn a lot making it and I will learn a lot in future development.

I will try to upload a lot more stuff so there was no more such a long break in posts.