Arquivo mensais:janeiro 2007

World Domination Battle

World Domination Battle

Estava um pouco cansado hoje e decidi ler algumas matérias….
E Passando pelo blog da Cuba Games vi este jogo World Domination Battle muito bom por sinal.

O objetivo do jogo é dominar o mundo com um dos “maiores lideres”, entre a seleção de personagens é possivel selecionar Fidel Castro, Bill Gates, Bush, Osama Bin Laden, Hitler, entre outros, todos com golpes relativos a suas caracteristicas, como por exemplo:

Fidel Castro : atira garrafas
Osama Bin Laden : atira avioes
Bill Gates : (não faz nada, rs) controla apenas seus robos “Windows”
Bush : age com um macaco e ainda tem auxilio de seu pai para matar o oponente.

Este jogo foi bem criativo, e você se diverte bastante com as comemorações.
Parabéns ao criador.
.

Biblioteca OSLib

OSLib Logo

Como comentei anteriormente a OSLib é uma biblioteca que facilita o desenvolvimento de jogos para psp.

Para instalar aconselho a baixar o pack completo já com o cygwin segue os links:

Parte 1 Parte 2

Mas caso você queira instalar do 0 (zero), você pode fazer o download em:

OSLib

Os passos da instalação você pode acompanhar no forum francês playeradvance:
http://www.playeradvance.org/forum/showthread.php?t=2172

Embora o texto esteja em francês com as imagens é fácil identificar, inclusive ensina como utilizar o visual C++ para compilar os projetos.

A OSLib possui alguns exemplos que te ensinam a manipular imagens, utilizar tiles, tocar sons, escrever textos, etc.
Como a biblioteca tem funções diferentes das padrões do PSPSDK, irei postar um novo HelloWorld, comentando apenas o que mudou (quase tudo):

Começando pelo Makefile :

TARGET = test
OBJS = main.o

INCDIR =
CFLAGS = -G4 -Wall -O2
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)

LIBDIR =
LDFLAGS =
STDLIBS= -losl -lpng -lz
-lpspsdk -lpspctrl -lpspumd -lpsprtc -lpsppower -lpspgu -lpspaudiolib -lpspaudio -lm
LIBS=$(STDLIBS)$(YOURLIBS)

EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = test
PSP_EBOOT_ICON = ICON0.png

PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak

No makefile a unica mudança radical está em STDLIBS , que agora tem todas as bibliotecas utilizada pela OSLib.

Vamos ao novo Hello World:

//include da biblioteca
#include

//os callbacks (lembram do tanto de linhas no anterior???)
PSP_MODULE_INFO("HelloWorld", 0, 1, 1); // titulo do seu programa
PSP_MAIN_THREAD_ATTR(THREAD_ATTR_USER | THREAD_ATTR_VFPU);

int main()
{
//iniciamos a biblioteca
oslInit(0);

//iniciamos o modulo gráfico
oslInitGfx(OSL_PF_8888, 0);

//iniciamos o console de texto
oslInitConsole();

//escrevemos hello world na tela
oslPrintf("Hello World");

//aguardamos algum botão ser pressionado
oslWaitKey();

//encerramos o aplicativo
oslEndGfx();
oslQuit();
return 0;
}

Deu para notar a diferença de tamanho do Hello World??
O código ficou bem mais limpo, porém tem a mesma funcionalidade do primeiro Hello World .
Se você quiser entender mais sobre a OSLib eu disponibilizei a documentação, parcialmente em Português-BR (quem quiser ajudar a traduzir, dá um toque).

Caso você tenha alguma dúvida, entre em contato comigo ou utilize o forum da PlayerAdvance embora esteja em francês tem um pessoal lá que fala inglês e estão prontos para responder suas dúvidas.

Boa sorte e até o próximo.

Créditos ao Yodajr da playeradvance pelo exemplo.

Mario Coins to PSP v.2.0 + OSLib

Andei procurando alguma biblioteca que ajudasse no desenvolvimento de jogos para PSP, e acabei por encontrar a Oldschool Library (para os mais chegados OSLib), é uma biblioteca fantástica que abstrai bastante coisa em que não se precisa mexer, além de facilitar o desenvolvimento com suas funções bem feitas.
Bem não vou ficar falando muito da biblioteca, pretendo postar alguns exemplos, quem quiser se arriscar a utilizá-la você pode baixar aqui, eu comecei a traduzir a documentação (quem quiser ajudar entre em contato), e você pode checá-la em OSLib-PT_BR .

Voltando ao Mario Coins, para testar a biblioteca resolvi codificar novamente utilizando a mesma, no inicio foi meio estranho, mas logo me acostumei, foi uma maravilha não ter que lembrar dos CALLBACK (threads do PSP), na OSLib basta colocar um comando e pronto, não precisa daquelas 20 linhas de código..rs.

Melhorias da Versão 2.0:

– as sprites do Mario agora estão em uma sheet (1 unica imagem) não separadas como antes
– O menu foi modificado com som de seleção (achei mais bonito agora)
– O Loop do som foi corrigido, agora quando a musica termina, já começa a tocar novamente (nem parece que acaba)
– Na tela de game over agora é possível tirar screenshot, apertando SELECT, a mesma será gravada na pasta screenshots.
– Alterei os créditos
– agora tem splash screen (tanto meu, quanto da OSLib)

Bem é isso, espero que vocês gostem, segue abaixo mais algumas screens, agora com qualidade (rs):

Menu - Mario Coins 2
Novo Menu
Continue lendo

Tutorial PSPSDK – Movimentação de Sprites

Hoje iremos aprender como trabalhar com SpriteSheets (folha de sprites) no PSPSDK como esta abaixo:

SpriteSheet Ryu

O PSPSDK possui um biblioteca gráfica que trabalha com imagens png com canais alpha.
Baixe esta classe de graphics :

Graphics

O que vamos utilizar da Graphics?

– Image*
– blitAlphaImageToScreen(int sx, int sy, int width, int height, Image* source, int dx, int dy);

Apenas isto, sendo o Image* (ponteiro para o arquivo de imagem), e o blitAlphaImageToScreen (função que irá desenhar na tela a imagem)

Continue lendo

Mario Coins to PSP + Source

Mario Coins

Liberei a versão 1.0 não consegui fazer tudo o que eu queria, espero que alguém interessado consiga.
Junto com o jogo está disponível o source, caso alguém venha fazer melhorias, me avise para que eu possa atualizar os outros sites onde divulguei.
Por favor considerem os créditos,  o arquivo de licença está junto ao download.

Não consegui fazer a animação de morte, e também não consegui inserir o som de perda de vidas (começou a travar, então deixei quieto).

Bem no mais, o jogo está bacana, foi uma conquista tremenda para mim, ficou muito melhor que a versão para PC.

Talvez irei fazer as mesmas implementações na versão de PC também.

Boa sorte para quem for se arriscar a mexer nele, qualquer dúvida, estou a disposição.

caso deseje compilá-lo em seu ambiente, será necessário as seguintes bibliotecas:

– mikmodlib ( sons wav)
– libmad ( necessário para sons)
– freetype ( fontes true type)
– libpng ( imagens)

E aqui o download da versão 1.0 + src:

Para custom Firmwares:

http://www.badongo.com/file/2078046

Para Firmware 1.50:

http://www.badongo.com/file/2078039

Caso eu faça atualizações estarei postando aqui.

Mario Coins to PSP – Beta 03

Depois de 4 horas estudando como carregar som no PSPSDK, consegui colocar alguns sons no Mario Coins.
A música de fundo tem um bug, ela está sendo repetida pouco antes de terminar, depois eu arrumo isso.

Release Beta 03:

Musica de fundo no Menu (música retirada do jogo de Snes)
Musica de Fundo em Créditos (música retirada do jogo de Snes)
Música de Fundo em Instruções (música retirada do jogo de Snes)
Música de Fundo no Jogo (tema do Mário World)
Sound FX Coin (ao pegar a moeda)
Alterado o Som do XMB
Diminui a quantidade de pontos para passar de level
Você pode pegar a versão Beta 03 em:

http://www.badongo.com/file/2071065

Mario Coins to PSP Beta 02

Hoje pela manhã, fui jogar o Mario Coins no PSP e de repente, o PSP trava, logo me veio na mente:

– Putz, esqueci de deletar os ponteiros…..

Minutos depois:

– Ué, não está trocando de cenário…..

Bem, como é beta, estas coisas acontece…rs

Está disponível a versão Beta 02 para pegá-la acesse:

http://www.badongo.com/file/2049309

Para saber mais sobre o Mario coins, leia o post abaixo e veja o projeto:

www.neystrabelli.com/blog/projetos

Mario Coins to PSP

É com grande orgulho que consegui portar o Mario Coins para o portátil da Sony (PSP).

Depois de quase 1 semana quebrando a cabeça com a conversão, eis a primeira versão jogável, ainda não tem o som, o que deixa ele meio tosko…rs

Para matar a curiosidade aqui vão algumas fotos, tiradas com o celular, ficaram meio ruins mas está valendo:

Mario Coins

Continue lendo

Mario Coins By Old – FrameWork PopCap

Ao conhecer o framework PopCap fiquei deslumbrado no poder e simplicidade que a ferramenta tem, foi então que em paralelo ao desenvolvimento de jogos para as disciplinas da faculdade que decidi criar um jogo para meus sobrinhos, pensando no que iria fazer, acabei por encontrar um jogo chamado Mario Coins feito em Flash, que pode ser visto aqui: Mario Coins

O jogo ao meu ver é bem legal e para mim parecia fácil poder fazê-lo, foi então que comecei a procurar sprites, fundos, fontes, e comecei a codificá-lo, houve momentos em que pensei desistir de terminá-lo por encontar muitas dificuldades e devido a correria da faculdade, foi então que em um Sábado acordei cedo e disse a mim mesmo que iria terminar o jogo, e fiquei um bom tempo na frente do micro e consegui terminá-lo porém faltava alguns ajustes que fui reparando durante a semana na faculdade.

No dia 16/12/06 o jogo foi exposto no Ressaca Friends .
Este jogo foi uma grande conquista e só tenho a agradecer quem me incentivou a fazê-lo (meus sobrinhos), Leonardo Kasperavicius (prof° criador do TDJD Extensions for POPCAP ) que sempre me ajudou dando dicas, ensinando e quebrando a cabeça com algumas perguntas difíceis, Samara Tavares (namorada) por ter compreendido o quanto é importante para mim, e a todos meus amigos que testaram, reportaram bugs, etc.

O jogo possui alguns bugs que quando conseguir encaixá-lo em minha grade de projetos irei consertá-los.

O Jogo está pronto (versão 1.02) e você pode baixá-lo na área de projetos

Biblioteca TDJD Extensions 2.0

O que é?

TDJD Extensions foi criada para auxiliar no desenvolvimento de jogos simples, com uma implementação simples para controle de colisões em uma estrutura para gerenciar sprites e animações. Os exemplos incluem uma demonstração de integração do framework com a biblioteca Dynamo, que permite adicionar física nos jogos.

Junto com os fontes e a documentação, é instalado um template para o Visual Studio 2005. Este template (ainda em versão beta) cria um jogo vazio, com todas as configurações necessárias.

Está é um biblioteca de integração com a PopCap foi criada pelo Prof° Leonardo Kasperavicius (Unicsul)

Para mais informações acesse o site do projeto: TDJD Extensions