Show Posts

You can view here all posts made by this member. Note that you can only see posts made in areas to which you currently have access.

Messages - AJA

Pages: 1 2 [3] 4 5 ... 27
Now's the last chance before I may or may not be contractually forbidden to release our Summerbatch game...

Stemshock Interactive



Somewhere along the east coast of Africa, pirates have attacked a luxury yacht!
They have taken a few seemingly wealthy passengers as their hostages, a family and an old man,
hoping to collect a hefty ransom for each of them. When the hostage negotiations go awry,
the rescue duties land on the weak shoulders of an unlikely hero.
Little does he know that the ship's crew, that stands in his way,
is composed of some very weird and silly individuals.


Hostage negotiator extraordinaire.

This diarrhea ain't gonna cure itself.

Impress youths with your inability to sing.


[embed=560,315]<iframe width="560" height="315" src="
" frameborder="0" allowfullscreen></iframe>[/embed]

[embed=560,315]<iframe width="560" height="315" src="
" frameborder="0" allowfullscreen></iframe>[/embed]

Making of Barely Floating - a video podcast series

A preview of the amazing soundtrack by Sine Cadenza!

- The first 1280x720 resolution AGS game?
- 18 wacky characters!
- 15 rooms to explore!
- Lots of lazily made animations!
- Bingo!
- Karaoke!
- An inflatable lady!
- Hitting bad guys with a cane!
- Based on early alpha playtesting, at least two hours playtime!
- Some technical magic that nobody really cares about.

System Requirements
- Higher than usual due to the higher resolution!
- Anything better than a cheap notebook should run it OK, I hope.
- Requires a DirectX 9 capable graphics card with support for 1280x720 resolution!
- Download ~160 MB
- The game itself ~1,250 MB

  • Aki Ahonen(AJA) -- Game design, writing, programming, character art and animation, background design, project leader
  • Joni Ahonen -- Game design, writing, character and background design
  • Ari Huuskonen (MadReizka) -- Background and cutscene art, music, sound
  • Tommi Kivistö (Ishmael) -- Scripting, writing
  • Joni Karvinen -- Music
  • Sini Haapanen -- Background art

Special thanks
  • Denzil Quixode -- For the amazing Lua plugin and the even more amazing tech support!
  • Screen7 and other Summerbatch participants -- For motivation and finally luring me into making a game that's not for an OROW competition!
  • SkyGoblin folk -- For the custom resolution branch of AGS!
  • Everybody who nominated us for the Best Programming and Best Puzzles AGS Awards (2012)!

Hints & Tips / Re: The Cave
« on: 19 Feb 2013, 14:30 »
I had the same problem, it's a bug in the game.

Spoiler: ShowHide
I think restarting the game fixed it for me.

Wow, 2012 was a great year for AGS games. I'm so proud to be able to mention our "little" game in the same thread as all these other great ones. :)

Without further ado, for your consideration:

Barely Floating

A Summerbatch Game

Somewhere along the east coast of Africa, pirates have attacked a luxury yacht! They have taken a few seemingly wealthy passengers as their hostages, a family and an old man, hoping to collect a hefty ransom for each of them. When the hostage negotiations go awry, the rescue duties land on the weak shoulders of an unlikely hero. Little does he know that the ship's crew, that stands in his way, is composed of some very weird and silly individuals.

- The first 1280x720 resolution AGS game?
- 18 wacky characters!
- 15 rooms to explore!
- Lots of animations!
- 2-3 hours playtime!


[embed=560,315]<iframe width="560" height="315" src="
" frameborder="0" allowfullscreen></iframe>[/embed]

[embed=560,315]<iframe width="560" height="315" src="
" frameborder="0" allowfullscreen></iframe>[/embed]

Please consider for any categories you see fit. Here's some suggestions:
  • Best Game / Dialogue Writing / Puzzles
  • Best Player Character / Non-Player Character (take your pick but my favorite's the agent :))
  • Best Background Art / Animation
  • Best Programming
  • And especially, Best Music by Sine Cadenza (listen for yourself!)

Unfortunately, this game is no longer on sale (but will hopefully be again later this year) but you can still play the entire first act of the game by playing the demo:
Download demo via the AGS Game DB

The Rumpus Room / Re: Happy Birthday Thread!
« on: 30 Dec 2012, 01:12 »
Thanks, Ponch! That's got to be the first time for me to be included in this thread. :cheesy:
Special thanks to AGA for all the confusion!

And yes, I check this thread every year, realize nobody cares that I exist and then cry myself to sleep. But not this year! Whee!

Adventure Related Talk & Chat / Re: AGS-Lua Evangelism
« on: 26 Dec 2012, 20:03 »
Nope. Can't remember why, though. It had something to do with the design of the language.

Adventure Related Talk & Chat / Re: AGS-Lua Evangelism
« on: 26 Dec 2012, 15:20 »
Good points from both sides.

Here are my thoughts, based on my experience working on Barely Floating, which has around 10 lines of AGSScript and slightly over 32000 lines of Lua code. Excuse me for my excessive babbling.

So, why did I try the Lua plugin? Basically, I was sick and tired of AGSScript. It had serviced me fine for the many years I'd made games with AGS, but having to jump through all sorts of hoops to create workarounds, even for some simpler things, had become a nightmare. Back when I was working on this, I tried to script a custom dialogue option system that would give me a bit more freedom to do things my way. In the end, I had a global script full of all kinds of crap because I couldn't do forward declarations for some things and spread them all neatly inside modules. I think that was the last straw. The next games I worked on were OROWs so I didn't have the time to experiment with the Lua plugin until I started work on Barely Floating.

In the meantime, I had also made a remake of one of my OROW games with an engine made by myself. That thing was scriptable with Lua so I already had some ideas how the framework should be organized on Lua's end (dialogue systems, interactions, etc.). So, my mission statement for Barely Floating was to write a framework (based on my earlier work) that required you to do only a minimal amount of scripting in AGS. Everything should be in Lua scripts. Everything should be modifiable without even opening AGS: adding hotspots (rectangles), working with hotspots, regions, characters, dialogue trees, etc. It took a while to make but in the end, I don't think I would've finished the game if I'd had to rebuild the game every time I made a change in AGSScript. In the end, the executable was over 1 GB in size, so rebuilding was not instant, even if I made no changes to the graphical assets.

Since most of the discussion has been about the low level features of AGSScript vs Lua, I'll concentrate on things you can build with the Lua building blocks.

Here's some things the Lua framework did that I couldn't live without:

1. Script console. One of the first things I made for the framework, and one of the things I used most: press a button, an input box appears, write some Lua code, hit enter and the code gets executed. Want to jump forward to a specific puzzle? Easy. (Check #6 aswell.) Quickly test calling a function. Move things around. Pretty much anything you could do with one line of code since AGS doesn't support multiline input boxes.

2. Reload interaction scripts. While the game is running. Seriously, what a time saver. Found a typo? A character walked to the wrong spot? Fix it in the script, press a button to reload it, and test again.

3. Coroutines. This has been mentioned many times in this thread and it really makes seemingly multi-threaded interactions really simple to make. Of course, you'll eventually run into problems with concurrency, like a background thread controlling a character and then the main thread needing to control that character at the same time.

4. Return self and being able to chain method calls. Here's an example of what my interaction scripts are full of. The methods seductive/concerned would change the character's facial expression accordingly.
Code: Lua
  1. cDude:seductive()
  2.      :say( "What's up, love?" )
  3.      :say( "How about we go for a walk?" )
  4.      :concerned()
  5.      :say( "Do you think I'm asking too many questions?" )

5. Edit mode. Press tab and you can move characters, objects and hotspots, create new hotspots and finally export the room's Lua script so you can do simple AGS editorey things within the game.

6. Puzzle tracking. All the game's puzzles are defined as simple state machines that also modify the game environment when certain states are reached. I was pretty lazy about this, so basically, when you reach the end of a puzzle the puzzle's end state makes sure the game is in the correct state: hotspots are turned on/off, objects moved, etc. And then comes the best part, you can skip puzzles, and the game will be in the correct state, as if you'd played through the puzzle. Very handy when debugging. Of course, you need to be careful that the puzzle script actually changes the game state correctly.

7. Making a table (~array) log any changes made to its indexed values. Very handy for debugging.
Code: Lua
  1. cDude.state.happy = true
  2. -- Prints to the log something about key happy being set to true

As with most things, there are drawbacks:

1. You need to be really careful with interpreted languages like Lua. You don't get a neat list of errors when you compile your game, informing you of critical typos and such. Nope, you only get a crash or an error message or worse, nothing at all, when you reach the part of the game where that invalid piece of code gets executed. This is, in my book, the greatest drawback of interpreted languages, however the flipside of it is also their greatest asset: not needing to wait for it to compile, ability to reload scripts, etc.

2. Until there is a publicly available AGS-Lua framework, most of the advantages I listed earlier would have to be created from scratch which is going to take some time depending on what you need. I still haven't had the energy to clean up my framework for public release, unfortunately, even though I promised months ago. :(

Can't think of any more major drawbacks right now. Learning new syntax isn't really a drawback. You usually get the hang of it quite quickly when you start scripting. Syntax only becomes a drawback when it prevents you from doing things. There's one such thing in Lua that annoys me: not being able to do "value++", instead you have to do "value = value + 1".

Many of these things I've mentioned are most likely not of much interest to beginning scripters but to more experienced ones, I'm sure they'll find at least one or two things they wouldn't want to pass up on.

And since the coroutines are a hot topic right now, here's my Thread class from Barely Floating (comments are in Finnish but I hope you get the idea): http://www.serpentpictures.net/randomia/Thread.lua

Yes, thanks everyone for your support! I'm glad so many people seemed to enjoy our little games. :)

I don't think there'll be an Old Man Adventure 2. He's earned his rest. ;)

Nor a prequel. He's past should remain a mystery. Every player can fill in whatever they think he's been through in his long life.

Thanks, Paul! Happy to hear you enjoyed Barely Floating! ;D
(And sorry about the karaoke puzzle since you seemed to have slight problems with that one based on your tweets. Be thankful, though, that we simplified it quite a bit from its first iteration. ;))

I see the one review for BF that I've come across hasn't yet been mentioned in this thread, so here goes:

Since the sale is getting close to its end, we'll release some more stuff in a couple of days to try and persuade any who haven't yet bought the batch to do so. :)

AJA you should replace the audio on that YT video with a louder one. The other episodes are louder.

Also, in case anyone's interested, here's an additional podcast that showcases our new 3D game prototype, Electroballs!, made with Unity:

[embed=640,360]<iframe width="640" height="360" src="
el=0" frameborder="0" allowfullscreen></iframe>[/embed]

Thanks, Fitz, I'm glad you enjoyed the game (and the podcast)! :)

Fixed the link.

It's a visualization of the different source files being modified in our version control system. The vertices are files and the edges are directories. It was made with gource. At first, we used mercurial as our version control system but then changed to git when the file sizes got too big for mercurial.

And the final episode, number 3, is out now! Check the first post!
Slight spoiler warning might be in order: There is stuff in this episode that I'd rather not show to people who haven't yet played the game. It's probably not a big deal for anybody else but there's just some things I'd rather have you experience in the game first.

If you have any comments or suggestions for future podcasts, please do let us know so this thread will stop being a duolog between me and MadReizka. ;D
And more information on our upcoming project can be found on our forums: http://www.stemshock.com/forum/index.php?topic=7.0

Episode 2 is here! Check the first post!

Hints & Tips / Re: Barely Floating
« on: 28 Aug 2012, 08:08 »

Hint 1:
Spoiler: ShowHide
Have you tried the other button?

Hint 2:
Spoiler: ShowHide
You can get there quickly by running.

Spoiler: ShowHide
Wait for the captain near the floor hatch. When he catches you, Joe will hopefully run away near the button. Press it while the captain's standing over the hatch.

Thanks for the kind words, everyone! Didn't expect to find them in the hint thread. :P

Thanks, Daniel!

Does it contain spoilers?

Only very minor ones, like puzzle structures for different acts with the puzzle titles blurred out. And the layout of the ship and its rooms. There might be some bigger ones in our brainstorming stuff if you know Finnish. :) We tried to avoid spoilers so there should be no major ones, not in the first one at least. Can't remember what exactly we talked about in the next two.

Thanks! Always happy to know people are enjoying the game! (And the podcast.) ;D

Hello, people of Earth!

We have just released the first episode of our three episode Barely Floating Podcast series in which we talk about the making of our game, Barely Floating! (Buy it now as part of the Summerbatch!) If you can't understand a word we're saying because of our lacking ability to speak English, you can at least still watch the pretty pictures go by: photos of the production, early screenshots, designs, etc.

Episode 1 - Preproduction & Design

In the first episode, we talk about the beginning of the project, including the game design, assembling the team, project management and so on.

[embed=640,360]<iframe width="640" height="360" src="
el=0" frameborder="0" allowfullscreen></iframe>[/embed]

Episode 2 - Production

In the second episode, we speak about some technical mumbo jumbo, including the Lua scripting language and the custom resolution version of AGS. And what would it all be without all the behind the scenes drama of the darkest days of the production! Plus some stuff about character art and animation.

[embed=640,360]<iframe width="640" height="360" src="
el=0" frameborder="0" allowfullscreen></iframe>[/embed]

Episode 3 - Graphics & Music

In the third and final episode, we take a closer look at the background art and turn our floppy ears towards the music, the game's fabulous soundtrack by Sine Cadenza.

Slight spoiler warning: There are some things in this episode that I'd rather have you experience in the game first. Probably not a big deal for anybody else but at least I've mentioned it now. :)

[embed=640,360]<iframe width="640" height="360" src="
el=0" frameborder="0" allowfullscreen></iframe>[/embed]

Enjoy! And if you have any comments, please let us know, so we can improve for our upcoming podcasts and whatnots. :)

And if you haven't done so yet, go check out the Summerbatch bundle!
Also, visit our website for more information and some free games: www.stemshock.com!

Got mine aswell, awesome! First boxed AGS game I've ever owned! :D

Finally got round to publishing my modifications of this branch. Note, they're all just hacks to get the game Barely Floating running properly. I've disabled stuff I didn't need and changed some bits, like the default sprite cache size. So, I don't recommend using any of these modifications. Plus, they're all just one commit and there's no record of what's been changed other than the changes themselves. Like I said, it's all done just to get that one game running. ;D

Anyway, here's the git patch:

Pages: 1 2 [3] 4 5 ... 27