Corporate Drones

All your browser are belong to me

Angstron Micro Edition updated

Finally got some time to get this up and running again

grab it now!

http://batterypoweredgames.blogspot.com/2009/11/angstron-micro-edition-v11.html

November 19, 2009 Posted by nomadsoul | H4X0|2, announcement, anuncios, defective-by-design, do-it-yourself, english posts, gamedev, gaming, java, jogatina, mobile | | No Comments Yet

It came from the cave – EGM

Sim sim, estou a meses parar postar isso.

Yeah, I’ve been stalling this for a long time.

November 17, 2009 Posted by nomadsoul | Maemo, announcement, anuncios, do-it-yourself, english posts, gamedev, gaming, jogatina, kudos, linux, mobile, ubuntu, windows mobile | | No Comments Yet

Angstron 2 – finishing touches

UPDATE: wanna try this? so follow this link - http://batterypoweredgames.blogspot.com/2009/05/angstron-2-droid-hunter-beta-test-2.html

Finishing the last debugging, improving speed (for the first time, Im quite satisfied with most of the game speed. but level 3 is still my concern) and – to my shock – solving some plataform specific issues:

- Sound in maemo. I dont know whats wrong, but the sounds is not working with the 770. I will look over the old angstron1 code @ garage to see whats wrong…

- Memory footprint in EZX. The A1200i handle the first two levels graciously, but the game dies when loading the third, after a lot of time loading.

- Also on EZX: The chapter screens need some serious re-work .Ok, they need some re-work on all plataforms, but on EZX  its far worse.

- And finally, on EZX, I dont seem to get the icons working on the menu again. I had it working in the past. I dont know whats wrong now.

For desktop PC and EeePC  everything is fairly done.

And now, some teasers!

My plans is to have the game finished and released for the Rio Game Show 2009

May 6, 2009 Posted by nomadsoul | EZX, Eee, Maemo, announcement, anuncios, do-it-yourself, english posts, gamedev, gaming, jogatina, linux, mobile, ubuntu | | 1 Comment

Angstron 2: Droid Hunter finished-almost

UPDATE: ITS FINISHED!!! http://corporatedrones.wordpress.com/2009/07/22/angstron-2-released/

Hello folks.

I guess I’ve finished all the ingame  assets for Angstron 2: droid hunter. Sure the render is not ready for prime time (but it does perform decently in most cases), but this is a matter of time.  In any case, I’ve got a OpenGL version of it fully working and a OpenGL ES version is on the way.

My previous decision of scrapping level 2 was aborted (hence you will see the horde of morcegos in all its glory), but almost all the levels need some better POV-BSP-prunning during rendering before shipping. There are several points with some minor visible artifacts , some culling errors here and there and a few slowdown spots. While for a freeware game where there’s no compromise, I cant simply allow this to be released.

The game play remained unchanged from the previous beta releases, with some adjustiments still to be made.

The 2D artwork is seriously faulty and in need to be re-drawn. This is going to be a looong paper-and-pencil-than-flatbed-scanner-then-inkscape process. Dont hold your breath.

The game was somewhat delayed due to my lack of luck with UNIX this last weekend (http://corporatedrones.wordpress.com/2009/04/14/solaris-ubuntu-xandros-eeepc-problemas-meu-dia-de-azar-com-unix/)

The release will reach both Maemo 2.2 and the upcoming Maemo 5 (“fremantle”, powered by hardware acelerated OpenGL ES!), EZX , EeePC (this time, with a better packaging system, from the official SDK!)  and desktop linux.

April 14, 2009 Posted by nomadsoul | EZX, Eee, Maemo, announcement, anuncios, do-it-yourself, english posts, gamedev, jogatina, linux, mobile, ubuntu | | 4 Comments

Mid Feb 09 Report

I just realised how screwed up I am! I “released” Riddler about 6 months ago and consistently looked at it for most of this time (but still I dont consider Riddler a finished product, as I consider Angstron) and never got it:

a HUGE typo in the game logo!

fundo_alt1

I dont know I missed that for so long. But thats it. these last two days I had a really HARD work to adapt the menu system I wrote about a year ago (back in Toronto) to work with vector graphics and parsing its contents from a XML (very similar to WML). Maybe its time to ditch all the art, and maybe even change the game name. The game itself doesnt contain any riddle! More on that later.

Now, for something completely diferent

You probably heard it before: ” Never optimize it early. Always make sure it works from end-to-end first, and then optimize it”. I just saw it on a book Im reading (again):  “Data structures and program design in C++” by Kruse and Ryba. Its a nice book. kind of a encounter of the old school and the new tendencies from late 90s. Kind of a entry-level art programming book. You would rather read this before reading Cormen or Knuth ( Kruse->Cormen->Knuth).

But about this lemma, I have a counter-argument when we’re dealing with open source software.  Optimizing it early attracts attendion and helps gathering momentum to the project. And every possible consequence to the Linus Law. And goes in acordance with “release it early and release it often”. Others will come and fill the gaps on functionality and fix bugs. The important thing is to show something compeling.

Of course, dont take my work to the last extremes. As my wise teacher , Vinod Rebello ,from college once said in class: “there’s always a trade-off”.  Developers might get frustrated by the lack of functionality or maybe readable code. Indeed, Im very surprised on how people could actually read the Linux Kernel code.  Its very annoying! But thing is: Linus released a very 386-optimized UNIX-like kernel and that attracted atention. Plan carefully your releases, even when releasing often. Repetitive and irrelevant releases might also get away with help. I learned this the hard way…

As a last note:

From the last post, I said I was about to test World of Goo. Well…

HOLY SHIT!!!111 Too bad I cant buy it from Brazil. This game is AWESOME! I dont remember playing a Linux game so well finished. Unreal Tournament 2004? not even close! I felt like playing some fancy video game in a last generation game console.

Other game taking my time is Warzone 2100 – a former closed source comercial game made open source and ported to linux. The game is simple, but very inteligent (well, not its unit IA)  and very adictive!

February 18, 2009 Posted by nomadsoul | announcement, anuncios, english posts, gamedev, gaming, jogatina, kudos, linux, phallacy | | No Comments Yet

BZK_Vacuum2 for PocketPC – finally!

Thats right! I finally got it working!

And with minimal code changes!

Thanks for the CeGCC project for making this possible!

One thing worth of note:

Its extremelly slow (without any -O at compiling time and with gx.dll, on my iPaq 3660)

I must also add that the game menu is not very QVGA friendly. you cant really see the menu. Only part of the Angstron logo.

0212_2134150212_213424

This is actually a unfair comparission…with the Nokia 770. The build running on the iPaq was compiled with -O3 and the Nokia is running a -O2 build. The Nokia not only has a complete Linux OS, but also a lot higher resolution and sound. I didnt expected the iPaq to perform so slowly, but its quite proportional to their Quake versions. I probably have to rework the way BZK run on such plataforms…

February 12, 2009 Posted by nomadsoul | announcement, anuncios, defective-by-design, english posts, gamedev, gaming, jogatina, mobile, windows mobile | | 1 Comment

Global Game Jam update

Try our game!

http://www.globalgamejam.com/games/it-came-cave

dont forget to vote sincerely!

Ok,  now Im quite recovered from the big thing.

I’ve attended the Rio de Janeiro instance of Global Game Jam (it was on my university anyway!)

Anyway, after a lot of preparations, installing Windows XP, Visual Studio (from Academic Alliance) and XNA 3.0 and a Ubuntu 8.10 fresh dual boot I was “ready” for it. Kind of.

ggj13

Day 1:

In there I faced , in the first 5 hours of work, a unworkable enviroment. I didnt know where to begin. I wasnt used to create games creativily in such a crowded place. I rambled. And to complete my dispair: My XP got a virus from Carlos thumbdrive, the wireless only worked on Ubuntu (!!! more on this later) and this Ubuntu was very unstable.

Getting on track was a difficult step, but certainly a great step. Once I got the pace of things, it was very easy and after a faux start (I misundertood the theme), I started codding: The basic graphical core of the engine was done in about 2 hours!

After that, I spent another 4 hours on a SVG render for C# – Me and Rubia wanted sleek graphics that a sprite renderer couldnt provide. And SVG was the answer. Or at least looked like. After about another 2 hours since I started , I had a SVG (the BZK Logo) working on a GTK# window (code done in Mono!) and another 2 hours fiddling this code and the weird XNA polygon pipeline and I gave up. The SVG always laked a few vertices that made the image look wrong.

After dropping the SVG idea, I had to get some sleep. The sun was shinning again.

Carlos stood behind, still coding something like a random terrain generator or something like that.” He’s crazy anyway!”

Day 2:

After some 6 hours of sleep (looks like I had more sleep that some teams alltogheter and maybe I hold the sleeping record of the GGJ), I was ready for some more.

Time for some game mechanics. Carlos wants me to code it OOP, but Im all Structured-Programing here. There’s no need of OOP for such a project and such time constrainct. He kept complaining until very late of that day, while there still I had the chance to do it with classes, but I , as the captain, got as stubborn as I could to resist the idea. He wasnt really wrong at all. And neither was I.

By that time, the BZK gaming model came to my mind. Diferent states being diferent numbers and treated like different entities, but somehow related by a number range. The result is very buggy but its almost working.For the IA we had a very loose definition on how the IA should work and we settled on two basic algorithms , to make the monsters run into each other. One being very smart (“cheating”) and the other being dumb. (Angstron IA algorithm).

In the afternoon I decided to try to clean up Windows, as a new virus had appeared and was getting in the way. Unfortunatly, ClamAV couldnt solve the problem and I lost 2 hours on this. Damn it! I also finally came up with a good song for the game: We vs Death – And how we translate it. I already had this file in my computer, from a pack of CC music I downloaded. And after a quick check, their Creative Commons restrictions allowed me to use it! Great!

Also during this scanning time, I went out of the room with Carlos’s Palm Zire 72 to record some sounds. Mine got shabby, but then I discovered in Carlos a real voice talent! With him, we recorded some taunts the miner would say after killing the monsters. Carlos is a real Duke Nukem!

Almost in the end of the day, I finally had the smart IA algorithm working (after two tries) and everything else was in place. Rubia had just finished the artwork in SVG and during the final 30 minutes of the virus scan I was turning everything into sprites and adjusting the aspect ratio. After we got the final artwork in place, the thing started looking like a game! I got confident that  we could finish the game! Rubia was very excited. She never have seen any of her drawings turned into a interactive animation!

Carlos had just finished his algorithm and was getting it into the game engine (And he didnt test it before porting it from Delphi to C#!). He pointed that me the fact his algoritmo worked better with BIG maps and all I wanted was a small -no scroll- map. I was afraid the player would get lost in easily. But Erick (from the Torresminho Team) gave the idea of a minimap and showed me how to implement it. Finished! The sun shines very hot though the window – Time to get some sleep.

day 3:

Sleepy sleepy boy. Another 6 hours of sleep!I was working on the IA and the game mechanics. After a a while, I finally came up with a idea of a dumber IA algorithm. re-using a scraped IA and mixing it with the smarter IA. And it works VERY WELL!

Time to finish it up! Rubia got into creating still images for the “menus”, Carlos was fixing timming and I was finishing the game mechanics. In the end , we paired to fix the losing and victory conditions and we still had to code the game state for the tittle , game over and victory screens. In the end, we got it, but quite on mark. Almost 20 minutes to the deadline. And I perceive the gamestate as the only annoying bug in the code (aside from some defective “gameover detection code”). Quite good for a 43 hour gaming marathon. Too bad I overslept , lost too many time eating and scanning the computer. And there also the times I needed internet and I had to reboot for Ubuntu.

Aftermath:

The actually enjoyed this game more than I expected. While the code is messy, its functional and somewhat stable. Game Design-wise its  very solid(Carlos had the great idea) and entertaining. I want to port it right away! Carlos also told me so yesterday. Too bad XNA is not very cross-plataform on itself , but it should be very easy to port it to Java.

What I got from all of this:

- I can do more than I imagined

- I must trust Carlos even more (we always do our assignments togheter, as we know and trust each other’s methods)

- I got a SVG C# reader!

- I want to port Carlos map generator and make it generic

- Wireless is a bliss

- Audacity rocks

- Gimp and Inkscape too!

- Lack of sleep makes me moody

UPDATE: for a while, we were:

1º in Rio de Janeiro

1º in Brazil

4º in the Global ratings. Nice er?

Now the stats got completely scrambled again, but at least I had this peak!

February 5, 2009 Posted by nomadsoul | H4X0|2, defective-by-design, do-it-yourself, english posts, gamedev, gaming, jogatina, kudos, linux, ubuntu | | 2 Comments

playing with FSM and guns

It is possible to implement some good games with simple FSM and a good load of creativity.

To show you this, a simple exemple: using the actor FSM and a second FSM for the frames (I know, I should use only one FSM, but hey, one step at the time), I could reproduce a ROTT-like double gun effect:

the original:

my version (SVG guns):

December 13, 2008 Posted by nomadsoul | do-it-yourself, english posts, gamedev, gaming, jogatina, kudos | | No Comments Yet

Angstron paper toy 1

The first to come!

my next model will probably be the biker itself!

instructions:

- fold everything with a black line in it

- gently apply glue on the red marks and use it as sticky-tabs

finished model

all prototypes and finished version

just print, cut and assemble

October 21, 2008 Posted by nomadsoul | announcement, anuncios, do-it-yourself, english posts, gaming, jogatina | | No Comments Yet

The Riddler – public beta 4 – Release Candidate 1

A few friends had the chance to try it out, but now its time to a public release. The game is mostly done. There are only a few rough edges. And I also want to lit the game little bit more.

Please, test it and let me know of the results.

UPDATE: This revision RUNS on EeePC 2G Surf running Xandros AND in Ubuntu .

news from this release:

- since I lost the code from the newest version, I had to re-work everything from a snapshot on the EeePC’s SSD that was a little outdated. As a bonus, we got back the EeePC compatibility.

This is the final beta release. If this works out, I will remove some last debugging messages and package it properly.

some minor improvements in speed and now it runs on fullscreen.

the matches have all been lit!

the matches have all been lit!

update:

http://batterypoweredgames.blogspot.com/2009/07/riddler-final-release.html

Only Linux builds for now…Eee and Maemo builds will come later…

September 16, 2008 Posted by nomadsoul | Eee, announcement, anuncios, do-it-yourself, english posts, gamedev, gaming, jogatina, linux, mobile, ubuntu | | No Comments Yet