Category Archives: indie life

The end is near!

No, I’m not talking about the Mayan prophecy πŸ™‚ Sadly, I’m not even talking about the Loren RPG, since I think will still take a few months before is finished.

I’m talking about two scary news I’ve read this week. They regard the upcoming MacOS Mountain Lion and Windows 8. As you might know, they both will come with a built-in appstore. But the scary news is that both will DISABLE BY DEFAULT “non signed” apps.

What does it means? It means that if you install the new MacOS and download one of my current games, you won’t be able to play it. Of course, at least in those first new OS versions, there will be a work around. For Windows, you’ll have to switch back to the “desktop mode”, while for MacOS you’ll have to enable the app by right clicking on it.

So, it’s not as scary as it seems right? No, it is. First, because it’s a first step towards a “walled garden”, which will probably lead to the impossibility to run non-certified apps at all in future versions. Second, not all users are tech-savy, so for them running the app might become too much of a trouble, which means that my niche will become even smaller. Others might even not trust installing non-certified apps anymore, despite they are completely safe.

But it’s not over yet, now comes the good part: from what I gathered reading those articles, even if I pay the annual fees to get my games certified (so they can run without any trick), Apple can still disable/ban any app remotely. Let’s say I make another RPG game like Loren, which has some VERY HOT romance scenes at the end. Some users don’t like that and complain. Apple might disable the game permanently! (not saying that they will for sure, but the possibility is there)

Of course, all of this is just a conjecture for now, and the danger is not imminent. I believe will take at least 4-5 more years before all of this will be very common. But still, the future is NOT promising at all.

Considering I sell mostly directly, I have really few options, and the most rational seems to abandon the downloads to move into webgames using HTML5 or Unity web plugin. I have to say that personally I DON’T like this, but is a kind of a forced choice. I don’t want to make more games, knowing that in a not distant future they might become obsolete, forgotten. I’d like people to be able to play my games for years and years to come in an easy way, and right now using downloads it seems a very risky path.

Loren The Amazon Princess beta demo this weekend!

Anyway, for now I’ll concentrate on finishing Loren RPG, since I definitely cannot port the game to another language now! Expect a demo tomorrow or Sunday. Will post the news on my twitter, on Facebook and will also send the newsletter.

How long will be the demo? Well, I am not sure if today will manage to finish chapter1 or not, but will try. In any case, considering you can take two paths early in the game (side with humans or elves) I believe that should be at least a few hours of entertainment.

As for the pre-orders I am not sure if I’ll start them with the demo or wait a bit more. Is something that I will decide in the next days based on how much work I can put on the game before the demo is live.

Grinding or not grinding, that’s the question!

Dsc00973

In the photo above, Gilda and Leon sleeping “head to head” πŸ™‚

I was hoping to announce the start of the beta pre-order for my fantasy RPG “Loren The Amazon Princess” but alas, I am going to delay it by a few weeks. I’m hoping by mid of February to have the full chapter 1 finished.

Below some screens of the vendor (WIP) and the battle with a 99% final layout:

Battle01 Battle02 Vendor

What’s left ?

You might ask what exactly is missing? The biggest part of the game is done, but there are a lots of small things missing. To be clear I could release the beta at the end of this month, but it would miss a several interesting features like:

  • working vendor – the vendor code is still half-done, and even if the coder probably could finish it in 3 days, it would be greatly untested. Also I would need to define the vendors inventory, check what kind of items they might have available, and so on!
  • side quests – I’m thinking what to have as side quests. In the game, there are already side-quests but they appear later in the game, in particular in the expansion when you can choose if to recruit Sauzer, Mesphit and Chambara. I want to add a few more, nothing complex since the game is already VERY long, but still…
  • map system – it will be a simple map system like Planet Stronghold (nothing complex) but still I am missing the art and good part of implementation (like random encounters, and so on)
  • battle effects – there are SOME battle effects done (nothing fancy!) but when you have 80+ skills to do, it starts to be a LOONG task. I don’t want to spend much time on this, because it doesn’t make sense to make lots of efforts for a 1-2 second animation, but still I don’t want it to look like a total crap πŸ˜€

So as you can see, nothing really ESSENTIAL to the game, but I don’t want to rush out the beta, and have people test an already outdated version, since I will add most of the things above.

What about the grinding?

The term grinding, as defined by Wikipedia:

Grinding is a term used in video gaming to describe the process of engaging in repetitive and/or boring tasks not pertaining to the story line of the game. The most common usage is in the context of MMORPGs in which it is often necessary for a character to repeatedly kill AI-controlled monsters, using basically the same strategy over again to advance their character level to be able to access newer content.

As you might know, I make heavy story-based games. However, Loren is the first game that has a very solid RPG gameplay. It’s much deeper, detailed and also complex than Planet Stronghold. And you can reach up to level 30 (I decided to lower the level cap from level 60 !).

I know that some people hate grinding, while other consider it an essential part of RPGs. Of course, not an excessive grinding, but if the battle is well done, it’s cool to kill monsters to gain more experience and unlock new skills.

In my case though, it also helps the game. As much as I can test it, and even if I offer different difficulty levels, I cannot know every single player skills. So even if I give out more experience points at Easy difficulty level, I cannot know if it will be enough for everyone to win the battle with Jul in chapter 4 of the game (it will be a hard battle!).

A solution is to leave some zones of the map with “wandering monsters”, so that if the player is stuck in a battle and cannot seem to win it, he can visit those places and fight some grinding battles to gain more experience and level up. As consequence, he can retry the previous battle but with a strongest party, increasing the chances of winning.

I think done this way, grinding is not a bad thing anymore, but is a sort of “approved cheat mode”. You can win most battles at your selected difficulty level? Good. You can’t? Try playing in a easier mode. You still cannot win that specific battle? Try grinding a bit, and then come back with a strongest party and kick the enemy’s ass!

The other games

I know recently I’m completely absorbed into Loren and haven’t updated much the other games progresses. This is because Loren is a very long and complex game to make, and I want to finish it soon. However don’t worry, since after it’s finished I’ll release some new dating/life sim, including Heileen 3 (probably this summer).

Here’s a picture of Marie with the “new look”. I find her very cute:

Newmarie

And she is a romance option πŸ˜‰

Old school vs modern RPGs

Dsc01420

In the image above, my cat Orfeo (italian for Orpheus) on the bed.

Today I want to talk about some differences between “old school” and “modern” RPGs, since I’m working right now on Loren Amazon Princess that is what I would define a “old school” RPG for some aspect, while “modern” for others.

Below a gallery with some preview images, showing several aspects of the game:

Damageprediction Levelupscreen Newactions Postbattle

One of the main differences between oldschool and modern RPGs is the turn-based / real-time mechanics. Most modern RPG use real-time. Unfortunately, I was kind of forced to use turn-based because making a real-time game needs lots more animation/art, and in general is harder to make.

I still have a battle movement order though, which is dynamic. If you see the column on the right, shows the movement order, and as you hover the mouse on the possible actions, it gives you a “preview” of how your decision will change the order. So beside the power/effects of a skill, you’ll also have to ponder the delay that the same skill gives. Sometimes for example, is better to use a skill that does less damage but lets you kill two goblin thieves already injured, than “waste” a skill that does more damage but pushes you back on the movement order list.

Another difference is auto-mapping. In my game I don’t have dungeons with map, so there will be just a main map of the world, with easily accessible places. But I remember some oldschool RPGs that didn’t have an automap, and you had to write down on paper the map of the dungeon. Seems crazy thinking about this now !

The user interface is also something that was greatly improved over old RPGs. Last year I bought Temple Of Elemental Evil, and was shocked by the clumsy interface: no mouse over, so simple button to change view/move object between players, and so on. Most modern RPGs use a “shared inventory”, that means all player have immediate access to all item owned by the party. If someone has an item equipped you usually need to unequip it to put in the pool, but before every item (even unequipped ones) was carried by a specific player, so the user had to do a much bigger amount of clicking.

The vendor / items comparison wasn’t automatic like now. In most new games, you have a way to immediately see if an item you just looted is more or less powerful than the one you’re carrying. Before instead you had to look at all the statistics and decide for yourself! It was crazy, right? πŸ™‚

Also, with a RPG featuring only one character is quite easy, but if you have a party things starts to get complex: what if there are two warriors in the party? you need to tell the player if the new longsword you just found is better or worse than the weapons equipped by both warriors. This is the problem we’re facing right now with the loot and the vendor in Loren Amazon Princess game!

The difficulty level is also something that changed radically over time. Most old RPGs were very hard, while modern ones offers at least several different difficulty levels, so people that just want to have easy combat and progress in the story, will be able too. In Loren there are three different difficulty levels, and they have a big impact on gameplay rules. At easy level, enemies are easy and the elemental resistances have a marginal impact on battle. At hard level, enemies are tougher and the elemental resistances have a key role: hitting an enemy vulnerable to fire with a fire-based skill will have a much bigger impact.

Lastly, the level progression was completely different. Even if I have to say that JRPG were always different from western RPGs, but in general leveling up after the first early levels was a big achievement. In AD&D games, already getting from level 5 to level 6 could take a LOONG time! Recently, beside the already mentioned JRPG, even in modern MMORPG like Everquest or WoW, you’re going to see the levelup screen much more often.

In Loren, I have decided to use this system: each character has a main class (Warrior, Thief or Mage) and a specialization (unique) class. Each class has 5 different skills, and each one has 3 levels of power. So as you see, each character has 30 different skills that can learn. So I have decided (though this might change during testing of course!) to have a level cap of 60, and give a skill point every 2 levels. This way, at level 20 you could have learned all the skills for every character, but at the basic level of power: so will add some more strategy since the player will need to think which skill to raise up to the maximum power level?

Every level up instead you get 3 attribute points, to spend on Strength, Skill or Will attributes. Will write about those three attributes next friday since the explanation is long and beside… by that time I might be about to announce the open beta preorders! (crossing fingers)

Professional developer’s look at Ren’Py

Editor

In the image above, some Ren’Py code (people familiar with python might recognize some keywords/syntax) from my current project Loren Amazon Princess in my preferred editor, SciTe.

Ren’Py was created by Tom Rothamel, as a tool to help everyone to create visual novel games, with very little or no coding knowledge required. I first learned and started using it around Summer 2008, and since that year it has evolved quite a lot. So it’s been 3 years and half since I started using it, and right now I can prototype many games rather quickly, even if works better for certain kind of games: heavily story based, with no real-time animations and of course 2d, since Ren’Py is a 2d game tool.

Currently Ren’Py is available for PC, Mac, Linux and is still experimental on Android, though it should be available sometimes in the future. There’s no iOS version planned at the moment of writing, even if the author seems to be thinking about it.

The language

Ren’Py, as the name suggest is based on Pygame and Python, which I consider the most advanced language available today. Simple, concise, but at same time powerful and easy to use.

It was love at first sight for me: I was used to type the Divine Comedy in C/C++ to load a .csv or do string operations, and when I realized how quick was to develop with python I immediately started to learn it, and it was very simple process (thanks also to the online documentation).

Ren’Py is NOT a visual tool. You don’t use the mouse to place UI. You use an IDE, currently available are SciTe or Jedit. This might discourage many people who first approach it, especially if they’re not coders but are used to play with Flash, Gamemaker, Stencyl or other visual creating tools. However, you soon realize that for certain kind of games there’s nothing better than Ren’Py and you don’t actually need a visual editor at all.

As I said the language was designed with visual novels in mind: though you can use it also for any story-based game like dating sim, RPG games, or adventures with some extra coding.

Recently a new Screen Language and ATL (Advanced Transform Language) were introduced, making the creation of interactive screens and special effects (zoom, rotation, movement, etc) even easier.

The Good

Very simple cross-platform capability. Since python is an interpreted language, this means that you can build the game for the three platforms (PC, Mac, Linux) with ONE CLICK. This is simply amazing! And you don’t have to worry for different behaviors: if the game works in one platform, it will behave the same in another. This was a big plus for me since I was used to have mysterious bugs on Mac when coding in C and Xcode, that weren’t present on PC.

With Ren’Py, I went as far as copying new .rpyc (Ren’Py compiled source scripts) directly into the zip (Mac version) or the tar.gz (Linux versions) from my Windows computer, without rebuilding the games and it worked, I didn’t encounter any problem. So for example you can develop for Pc, Mac and Linux without the need to buy a Mac or have a machine with Linux installed.

Powerful language and syntax. The language is really simple and intuitive. Remember that it’s a tool specialized for Visual Novels, but you can effectively write most 2d games with it. Probably the only ones that I wouldn’t reccommend coding are those who rely on real-time movement, like a RTS, shooter, or similar. Note that is still possible to make that kind of games, but I would pick another tool honestly.

Still for any other 2d game it’s really a great solution. Very strong GUI system, combined with the ease of use of python makes this a great tool.

Easy to debug. In most other languages, debugging is a pain. Not just finding the bug, but finding out which line of code cause it. With Ren’Py thanks to Python you get very detailed crash reports, telling you exactly where the problem is.

Magic reloading and rollback system. Those are without any doubts the BEST features I’ve seen in ANY 2d development engine. Not even Unity has something so powerful. What is that, you might ask? First, the reload: since python is a scripted language, you can ANYTIME (and I mean literally anytime) hit shift+R and see immediately the changes you’ve made to the current screen.

The rollback system instead is something inherited by the visual novel mechanics, but that works surprisingly well even to debug. In practice, the program stores the path you have choosen, and memorizes XX amount of “steps”. This was doen so that the player could “rollback” with the mousewheel or keys, to a previous situation in the game story. But it works even for coding!

Trying to explain better: if you start the game, then visit in order: screen 99, do action 32, screen 32, click button 2, screen 12, type your name, screen 42, click button 5. Can you remember that? the game can, and provides you with a way to go back, a sort of “Undo” but you can use it when directly playing the game in debug mode!

I know that even in Unity you can modify the game world with the 3d world editor and see the changes, but here I mean something different: you can see the changes without having to EXIT the game, and restart.

A few simple examples:

case A: you’ve been testing for 6h a complex RPG. You see a visual bug. You look in the code, find that a button was aligned badly, change the code and reload. You see the change immediately, and go on testing. “Flawless Victory”.

case B: you’ve been testing for 6h a complex RPG. You click “done” and the next screen crashes. Thanks to Python built-in descriptive crash you see where the problem was, in previous screen you assigned a impossible value. You do a rollback, in practice executing an Undo of all executed code, then fix the bug in the source with the game still running, reload, and go on with the testing. “Epic Win”.

And the documentation? it’s good, at least for the basic features.

The Bad

As I said, there’s no editor apart an IDE. There is no intellisense/code completion, and you cannot browse classes or labels (some people managed to use Eclipse or other tools for python to code with it, but it’s definitely a hack). This is definitely something that could be improved, since in particular in the first weeks of use you can’t remember all the commands by memory and you’ll be looking at the documentation extensively.

Bad documentation for the most advanced features. How does Sprites work? What is im.ConditionSwitch? and so on. The documentation explains everything, but sometimes seems written like if the author assumes the reader is a good coder/clever as him, but often that’s not the case πŸ™‚ I consider myself an average coder but surely not a beginner, and sometimes I have hard time to understand how some of this stuff works. But it’s not bad as it was in the early days when documentation was really scarce!

It’s an hobbyst project. Don’t get me wrong: the author is doing an awesome job trying to reply to all the support requests, mainly done through the specific Lemmasoft forum dedicated to Ren’Py. However it still is, at least for now, an hobbyst project. The author doesn’t make any money from it, and so obviously there’s no guarantee that you’ll get an answer to your question. I repeat, he is doing the best he can, and sometimes other people help answering the most common questions, but still you must not expect to get immediate responses to your problems.

Personally, I’d love to see Ren’Py become a professional tool, with full support of deployment for Android/iOS, and maybe future porting to HTML5 and more. I am sure many other gamedevelopers even outside of the “visual novel / dating sim circle” would pick it up because of its features.

In conclusion

Ren’Py is a tool with double face. If you want simply to use it for what was made for, it will do the job without problems and is simply the best visual novel/dating sim system around, at least for desktop computers.

If you’re a more advanced coder and want to build simulation games, strategy games, rpg games, or any 2d game that doesn’t need a lot of things moving on the screen (but even in that case, you could make it) you’ll be surprised by the ease of use and powerful features that Ren’Py has to offer, combining the power of Python with one of the best GUI / scripting systems I’ve seen in modern 2d libraries.

Yes, to use it in advanced mode it has a steep learning curve, but once you get the grasp of it, is really hard to get back to… anything else. I had to do some C coding last week, and wondered why the “rollback” wasn’t working, or why I couldn’t just hit Shift+R to see instantly the changes I’ve made!

At least this was my experience. If I was able to release 12 games in three years and half (almost one every 4 months) it’s only because I discovered this powerful tool. Thanks again to Tom Rothamel for the incredible piece of software he managed to create!

2011 The Year Of Farewells

This year was… weird. It was bittersweet, crazy, successful, painful, happy, sad and… the year of farewells.

This year indeed I’ve said farewell to my beloved uncle, the person who helped me to become a game developer more than anyone else since I was a kid.

Imgp4027

I’ve said farewell to several pets: the last one, my dog ArtΓΉ, just a week ago. In the picture above I’m with him during a trip to Germany.

But it was also the year I said farewell to my old car. I know it might seem stupid: but I was somehow attached to it. It was the car I had on my first date. The car I used to go at the office for my first job. Was the car I used when I gave the first passage to my girlfriend, and when I went on my first holiday trip. So many memories, mostly good ones!

I’ve also said farewell to portals: or at least, to submitting to them. I’ve come to the conclusion that they get so many submissions that unless you make a perfectly “targeted” game, you won’t have any chances. Or you need to be featured on the most popular websites, which is something that seems forbidden to me for reason behind my control. So, from now on, I’ll just save my time and take care only of my followers!

How was business in the 2011

On the “business” side, this has been my most successful year ever since I was indie. This month was the best one, despite the various indie bundles, sales, and the crisis. I really hope business will continue like this month, would help me to relax a bit!

Of course, I’m not getting too much excited. Since I know that in a fast paced technology-related business things might change completely in just a few years (or even months). Still it feels good for once not being worried to pay the bills!! πŸ™‚

It’s interesting, if I think back about 2010 which was a rather disappointing year (mainly because of the two Vera Blanc games and Card Sweethearts, the worst-selling games I’ve ever made!). I was sad and angry because of the various failures, but I still had all my pets and my family members alive. I think this year taught me what really matters in life, not money or success – but love and being loved.

Next Year Goals

I really have big hopes for next year, since I’ll release many interesting new games of all kinds (RPGs, dating sim, otome, etc). The only thing I fear honestly, is that I might have to slow down a bit. I am not a machine, and this year for various reasons I was forced to be at home, and since at home I have my computer and internet connection… I worked! I didn’t have a SINGLE DAY of holidays. Of course I didn’t code or write all the year, but even managing people/sending emails takes lot of time.

And as a consequence I released 5 games in a year, which is something never happened before. I’ll try my best, but don’t expect 5 games next year! Even if who knows, maybe will still happen.

Happy New Year to everyone!!