Sunday 27 October 2013

Hardware talk

I've moved Teemu to my laptop, but I just don't seem to get anything done, because the laptop itself is just so crappy. It's Fujitsu-Siemens and it has extremely poor keyboard and bad screen with shiny surface (reflecting everything like a mirror). I never understood why they invented that kind of screen surface type.

My main computer (Acer desktop) is a bit noisy, but LG Flatron has proved to be an excellent monitor and I also have great Filco Tenkeyless keyboard. The reason I need another computer is music and for that you really need a silent computer like most laptops compared to basic (cheap) desktop computers. I have of course replaced the hideous default power supply of Acer, because it was ridiculously noisy, but still you would need extra equipment to make desktop computer silent.

I've planned to get another computer for music and one of the options could be Apple Mac Mini desktop. It's not too expensive, but the downside is a need for another HD monitor. So it would be around 1000€. (Or it could be iMac that has monitor included.) Since I'm currently unemployed that kind of money is not something to spend carelessly. But possibly selling some of my guitar gear will make it less difficult.

The reason why I'm thinking of Apple is Windows Fucking 8. I'll never going to use it and most new Windows computers have pre-installed 8. Besides I've heard that MacOS has much less those usual problems Windows has.

The best solution would be that hardware development would be updated to space age so we wouldn't need to struggle with computers like PC and operating systems like Windows. But I guess it's better to keep things crappy so people spend more money on equipment.

Sunday 20 October 2013

The control

When roguelike project gets past a certain limit in size it can become difficult to understand the project as whole. What I have noticed is that in some point I lose control of the project more or less. Relationships between different parts of the source code can become hard to follow and you can start to build structures that closely (or strictly) copy some of behaviours in other place. In pure game design point of view it's also difficult to track relationships between features, especially if they are not yet defined in a plan.

Modular design is a handy tool to reduce complex relationships, but it can only solve some of the issues and on top of that it also requires planning to work nicely. Sometimes modular design can become unwieldy and complex itself. But it's something you can do to reduce refactoring, because usually independent modules rarely require refactoring at all. They can also be reused in other projects.

I've always used open source or free editors to write source code, but they are missing better tools to control the source code. Something like graphical browsers for relationships between classes etc. Or simply a graphical representation of classes to see how bloated they are. The percentage of public and private exposure. Things like that.

Of course you could view a graphical output of classes by drawing them on paper, but it feels a bit outdated method and backwards when you already have programmed the class hierarchy.

Sometimes it could be something really simple like setting the color of the name of class or file in the project browser. That way you could for example use green color to mark files that are ready and red color to set files that still require work. In similar way there could be a list for unfinished functions to recall. Simple tools that totally are missing in VC Express and Code::Blocks, two of most commonly used IDEs.

Saturday 19 October 2013

Abura Tan project page

In case you missed it:
http://koti.mbnet.fi/paulkp/articles/aburatan.htm

Anssi moved the project to github and he has done something to it, but I don't know how serious he is about developing it.
https://github.com/anylonen/abura-tan

I'm focused to a 3D modeling project and keeping a break from programming. But last night I had an idea (again) of a new project that could be also a kind of framework at the same time with the new SDL 2.0 version included.

Framework programming is.. nice. I like it when there is no pressure to create an actual game, just a framework or engine to it. I wish some day I could create a good framework as a platform to real games with the main idea of having a small core that can be extended easily without getting into usual roguelike programming troubles.

I don't know when Teemu is going to be in release condition. It doesn't need much work, though. It's more about what I still want to add in it.

Saturday 5 October 2013

Abura Tan project update

I have now fixed all warnings in Abura Tan source project, changed the font a bit and also fixed a major bug that was made by me. It was a key name issue (keytostr function) which needed new data in form of a string rather than some kind of magic AT was using in that routine. I also fixed CppCheck cases that were suspicious, but not all warnings or other lesser issues.

So it's kind of ready. I'm still angry about the gameview routine bug (also created by me), but I'm sure someone knows how to fix it. I'm going to create a project page on my homepage with adequate information of what was changed.