{"id":148,"date":"2010-02-08T09:18:01","date_gmt":"2010-02-08T12:18:01","guid":{"rendered":"http:\/\/rockbot.upperland.net\/?p=148"},"modified":"2010-02-08T10:30:41","modified_gmt":"2010-02-08T13:30:41","slug":"beta-4-kickoff","status":"publish","type":"post","link":"https:\/\/rockbot.upperland.net\/?p=148","title":{"rendered":"Beta 4 kickoff"},"content":{"rendered":"<p>[lang_en]<\/p>\n<p>In this last weekend, work on beta 4 has been started with great success. The new colision detector and movement handler are almost completed, and work much better than in beta3, and the code is cleaner and better too, I dare to say that there is only one bug that is very hard to reproduce.<\/p>\n<p>Also, we started testing sound, it works pertectly in Linux, but will need some work on Playstation 2 because our current implementation of key\/joystick reading (we are not using threads at this point of development) makes the music glitch, probally we need something to read input less often or put it on a thread.<\/p>\n<p>Another thing was that we finally fixed a but that made the game goes freeze. It was just that using short int for a timer is not a great idea, and after passing the 32k, the number goes negative and our timer testing, just were not released.<\/p>\n<p>So, here is the list of planned features for beta 4:<\/p>\n<ul>\n<li>Fix beta 3 bugs:<\/li>\n<li>a) projectiles are clearning the screen in the wrong position (above) &#8211; DONE<\/li>\n<li> b) sometimes the game freezes (animation still run, but player do not move) &#8211; DONE (CheckDelay)<\/li>\n<li> c) colision detection have a bug that allows player to &#8220;walk in the air&#8221; (1) &#8211; DONE<\/li>\n<li> d) player can fall to the left side of screen (1) &#8211; DONE<\/li>\n<li> (1)revise whole collision detection &#8211; INWORK<\/li>\n<li>try to hack SDL to disable bilinear filter (not possible currently) &#8211; CANCELLED<\/li>\n<li>fix SDL_Timer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=2842&amp;highlight=clock+tick) &#8211; DONE<\/li>\n<li>(2)fix SDL_mixer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=9798&amp;highlight=sdlmixer)<\/li>\n<li>commit SDL changes to ps2dev.org<\/li>\n<li>music (2) &#8211; DONE<\/li>\n<li>sound effects (2)<\/li>\n<li>editor: allow user to set p1 and p2 starting position (must be in same screen area &#8211; MAX_W and MAX_H of distance)<\/li>\n<li>editor: allow user to add boss door<\/li>\n<li>editor: add npc support (including a wizard to define it&#8217;s frames)<\/li>\n<li>editor: add line tool<\/li>\n<li>editor: add stairs (use locked 2)<\/li>\n<li>editor: allow second level of tiles (this will allow user to create transparent tiles, for stairs, etc)<\/li>\n<li>better &#8220;loading&#8221;: make it generic and allows two types:<\/li>\n<li> a) scroll messages up when new one reaches bottom of screen (for debug)<\/li>\n<li> b) loading with a progress bar and showing only the last message)<\/li>\n<li>add loading for all elements, including intro screen and such<\/li>\n<li>load NPCs from the game\/map file<\/li>\n<li>NPC movement types (wait, attack, loop, left to right and right to left)<\/li>\n<li>NPC can only execute acions that are defined in the frameset list (if do not have jump frame, can&#8217;t jump)<\/li>\n<li>NPC must return when killed and out of players vision<\/li>\n<li>create transitions between two differente stages (like a boss door, or a staircase)<\/li>\n<li>if the whole screen height have a wall (locked) ahead, do not scroll beyond it, hidding the contents after it\u00a0(this will allow us to use more regions in the map)<\/li>\n<li> make win32 version run from anywhere<\/li>\n<li>must find a way to determine the jump size by the time of button pressed<\/li>\n<li>create a new animation system, that have individual frames with duration [add_frame(posx, duration)]<\/li>\n<li>redesign whole game intro (use in-game like graphics)<\/li>\n<li>create graphics of players in several angles to improve graphics ideas<\/li>\n<li>add some animation using color cycle in intro by switching palettes<\/li>\n<li>working staircases<\/li>\n<li>indicate when a player is blocking the scrolling (using a P1\/P2 above it&#8217;s head)<\/li>\n<li>add boss (Apebot)<\/li>\n<li>make the screen rendering in real time, use a small part out of the screen to render when necessary instead of rendering the whole thing at onde<\/li>\n<li> (create function render line and render column) &#8211; memory should go from 226x63x256=3.600kB to 22x15x256 = 84kB (main app still uses ~1.5MB)<\/li>\n<li>compile the game for Nintendo DS (no real build yet, just start testing)<\/li>\n<\/ul>\n<p>[\/lang_en]<\/p>\n<p>[lang_pt-br]<\/p>\n<p>No \u00faltimo fim de semana, o trabalho na vers\u00e3o beta 4 come\u00e7ou com grande sucesso. O noivo sistema de colis\u00e3o e gerenciador de movimentos est\u00e3o quase completos, e funcionam muito melhor do que no beta 3, al\u00e9m do c\u00f3digo ser mais limpo e melhor. Eu ouso dizer que existe apenas um pequeno bug, bem dif\u00edcil de reproduzir.<\/p>\n<p>Tamb\u00e9m come\u00e7amos a testar o som, ele funciona perfeitamente em Linux, mas vai precisar de algum esfor\u00e7o para o Playstation 2, porque nossa implementa\u00e7\u00e3o atual de leitura de teclado e joystick faz a m\u00fasica ficar cortada, provavelmente vamos precisar ler menos frequentemente o dispositivo de entrada ou colocar a leitura em uma thread (n\u00e3o estamos as usando neste momento do desenvolvimento).<\/p>\n<p>Outra coisa que fizemos foi corrigir um bug que fazia o jogo congelar. A causa foi que, usar uma vari\u00e1vel do tipo short int para tempo n\u00e3o \u00e9 uma grande id\u00e9ia, j\u00e1 que ao passar de 32 mil, \u00a0a vari\u00e1vel fica negativa, e o nosso contador de tmepo ficava simplesmente preso.<\/p>\n<p>Ent\u00e3o, para finalizar, aqui est\u00e1 a lista de tarefas para o beta 4:<\/p>\n<ul>\n<li>Corrigir bugs do beta 3:<\/li>\n<li>a) proj\u00e9teis est\u00e3o limpando a tela na posi\u00e7\u00e3o errada (acima) &#8211; FEITO<\/li>\n<li>b) algumas vezes o jogo trava (a anima\u00e7\u00e3o continua, mas o jogador n\u00e3o se move) &#8211; FEITO (CheckDelay)<\/li>\n<li>c) a verifica\u00e7\u00e3od e colis\u00e3o tem um bug que permite andar no ar \u00a0(1) &#8211; FEITO<\/li>\n<li>d) o jogador pode cair para o lado esquerdo da tela (1) &#8211; FEITO<\/li>\n<li>(1) revisar toda a verifica\u00e7\u00e3o de colis\u00e3o &#8211; INWORK<\/li>\n<li>tentar desabilitar o filtro biliniear na SDL (n\u00e3o \u00e9 poss\u00edvel atualmente) &#8211; CANCELADO<\/li>\n<li>corrigir a SDL_Timer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=2842&amp;highlight=clock+tick) &#8211; FEITO<\/li>\n<li>(2) corrigir a SDL_mixer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=9798&amp;highlight=sdlmixer)<\/li>\n<li>enviar modifica\u00e7\u00f5es na SDL para o ps2dev.org<\/li>\n<li>m\u00fasica (2) &#8211; FEITO<\/li>\n<li>efeitos sonoros (2)<\/li>\n<li>editor: allow user to set p1 and p2 starting position (must be in same screen area &#8211; MAX_W and MAX_H of distance)<\/li>\n<li>editor: allow user to add boss door<\/li>\n<li>editor: add npc support (including a wizard to define it&#8217;s frames)<\/li>\n<li>editor: add line tool<\/li>\n<li>editor: add stairs (use locked 2)<\/li>\n<li>editor: allow second level of tiles (this will allow user to create transparent tiles, for stairs, etc)<\/li>\n<li>better &#8220;loading&#8221;: make it generic and allows two types:<\/li>\n<li>a) scroll messages up when new one reaches bottom of screen (for debug)<\/li>\n<li>b) loading with a progress bar and showing only the last message)<\/li>\n<li>add loading for all elements, including intro screen and such<\/li>\n<li>load NPCs from the game\/map file<\/li>\n<li>NPC movement types (wait, attack, loop, left to right and right to left)<\/li>\n<li>NPC can only execute acions that are defined in the frameset list (if do not have jump frame, can&#8217;t jump)<\/li>\n<li>NPC must return when killed and out of players vision<\/li>\n<li>create transitions between two differente stages (like a boss door, or a staircase)<\/li>\n<li>if the whole screen height have a wall (locked) ahead, do not scroll beyond it, hidding the contents after it\u00a0(this will allow us to use more regions in the map)<\/li>\n<li>make win32 version run from anywhere<\/li>\n<li>must find a way to determine the jump size by the time of button pressed<\/li>\n<li>create a new animation system, that have individual frames with duration [add_frame(posx, duration)]<\/li>\n<li>redesign whole game intro (use in-game like graphics)<\/li>\n<li>create graphics of players in several angles to improve graphics ideas<\/li>\n<li>add some animation using color cycle in intro by switching palettes<\/li>\n<li>working staircases<\/li>\n<li>indicate when a player is blocking the scrolling (using a P1\/P2 above it&#8217;s head)<\/li>\n<li>add boss (Apebot)<\/li>\n<li>make the screen rendering in real time, use a small part out of the screen to render when necessary instead of rendering the whole thing at onde<\/li>\n<li>(create function render line and render column) &#8211; memory should go from 226x63x256=3.600kB to 22x15x256 = 84kB (main app still uses ~1.5MB)<\/li>\n<li>compile the game for Nintendo DS (no real build yet, just start testing)<\/li>\n<\/ul>\n<p>[\/lang_pt-br]<\/p>\n<ul><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>[lang_en] In this last weekend, work on beta 4 has been started with great success. The new colision detector and movement handler are almost completed, and work much better than in beta3, and the code is cleaner and better too, I dare to say that there is only one bug that is very hard to reproduce. Also, we started testing sound, it works pertectly in Linux, but will need some work on Playstation 2 because our current implementation of key\/joystick reading (we are not using threads at this point of development) makes the music glitch, probally we need something to read input less often or put it on a thread. Another thing was that we finally fixed a but that made the game goes freeze. It was just that using short int for a timer is not a great idea, and after passing the 32k, the number goes negative and our timer testing, just were not released. So, here is the list of planned features for beta 4: Fix beta 3 bugs: a) projectiles are clearning the screen in the wrong position (above) &#8211; DONE b) sometimes the game freezes (animation still run, but player do not move) &#8211; DONE (CheckDelay) c) colision detection have a bug that allows player to &#8220;walk in the air&#8221; (1) &#8211; DONE d) player can fall to the left side of screen (1) &#8211; DONE (1)revise whole collision detection &#8211; INWORK try to hack SDL to disable bilinear filter (not possible currently) &#8211; CANCELLED fix SDL_Timer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=2842&amp;highlight=clock+tick) &#8211; DONE (2)fix SDL_mixer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=9798&amp;highlight=sdlmixer) commit SDL changes to ps2dev.org music (2) &#8211; DONE sound effects (2) editor: allow user to set p1 and p2 starting position (must be in same screen area &#8211; MAX_W and MAX_H of distance) editor: allow user to add boss door editor: add npc support (including a wizard to define it&#8217;s frames) editor: add line tool editor: add stairs (use locked 2) editor: allow second level of tiles (this will allow user to create transparent tiles, for stairs, etc) better &#8220;loading&#8221;: make it generic and allows two types: a) scroll messages up when new one reaches bottom of screen (for debug) b) loading with a progress bar and showing only the last message) add loading for all elements, including intro screen and such load NPCs from the game\/map file NPC movement types (wait, attack, loop, left to right and right to left) NPC can only execute acions that are defined in the frameset list (if do not have jump frame, can&#8217;t jump) NPC must return when killed and out of players vision create transitions between two differente stages (like a boss door, or a staircase) if the whole screen height have a wall (locked) ahead, do not scroll beyond it, hidding the contents after it\u00a0(this will allow us to use more regions in the map) make win32 version run from anywhere must find a way to determine the jump size by the time of button pressed create a new animation system, that have individual frames with duration [add_frame(posx, duration)] redesign whole game intro (use in-game like graphics) create graphics of players in several angles to improve graphics ideas add some animation using color cycle in intro by switching palettes working staircases indicate when a player is blocking the scrolling (using a P1\/P2 above it&#8217;s head) add boss (Apebot) make the screen rendering in real time, use a small part out of the screen to render when necessary instead of rendering the whole thing at onde (create function render line and render column) &#8211; memory should go from 226x63x256=3.600kB to 22x15x256 = 84kB (main app still uses ~1.5MB) compile the game for Nintendo DS (no real build yet, just start testing) [\/lang_en] [lang_pt-br] No \u00faltimo fim de semana, o trabalho na vers\u00e3o beta 4 come\u00e7ou com grande sucesso. O noivo sistema de colis\u00e3o e gerenciador de movimentos est\u00e3o quase completos, e funcionam muito melhor do que no beta 3, al\u00e9m do c\u00f3digo ser mais limpo e melhor. Eu ouso dizer que existe apenas um pequeno bug, bem dif\u00edcil de reproduzir. Tamb\u00e9m come\u00e7amos a testar o som, ele funciona perfeitamente em Linux, mas vai precisar de algum esfor\u00e7o para o Playstation 2, porque nossa implementa\u00e7\u00e3o atual de leitura de teclado e joystick faz a m\u00fasica ficar cortada, provavelmente vamos precisar ler menos frequentemente o dispositivo de entrada ou colocar a leitura em uma thread (n\u00e3o estamos as usando neste momento do desenvolvimento). Outra coisa que fizemos foi corrigir um bug que fazia o jogo congelar. A causa foi que, usar uma vari\u00e1vel do tipo short int para tempo n\u00e3o \u00e9 uma grande id\u00e9ia, j\u00e1 que ao passar de 32 mil, \u00a0a vari\u00e1vel fica negativa, e o nosso contador de tmepo ficava simplesmente preso. Ent\u00e3o, para finalizar, aqui est\u00e1 a lista de tarefas para o beta 4: Corrigir bugs do beta 3: a) proj\u00e9teis est\u00e3o limpando a tela na posi\u00e7\u00e3o errada (acima) &#8211; FEITO b) algumas vezes o jogo trava (a anima\u00e7\u00e3o continua, mas o jogador n\u00e3o se move) &#8211; FEITO (CheckDelay) c) a verifica\u00e7\u00e3od e colis\u00e3o tem um bug que permite andar no ar \u00a0(1) &#8211; FEITO d) o jogador pode cair para o lado esquerdo da tela (1) &#8211; FEITO (1) revisar toda a verifica\u00e7\u00e3o de colis\u00e3o &#8211; INWORK tentar desabilitar o filtro biliniear na SDL (n\u00e3o \u00e9 poss\u00edvel atualmente) &#8211; CANCELADO corrigir a SDL_Timer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=2842&amp;highlight=clock+tick) &#8211; FEITO (2) corrigir a SDL_mixer (see http:\/\/forums.ps2dev.org\/viewtopic.php?t=9798&amp;highlight=sdlmixer) enviar modifica\u00e7\u00f5es na SDL para o ps2dev.org m\u00fasica (2) &#8211; FEITO efeitos sonoros (2) editor: allow user to set p1 and p2 starting position (must be in same screen area &#8211; MAX_W and MAX_H of distance) editor: allow user to add boss door editor: add npc support (including a wizard to define it&#8217;s frames) editor: add line tool editor: add stairs (use locked 2) editor: allow second level of tiles (this will allow user to create transparent tiles, for stairs, etc) better &#8220;loading&#8221;: make it generic and allows two types: a) scroll messages up when new one reaches bottom of screen (for debug) b) loading with a progress bar and showing only the last message) add loading for all elements,&#46;&#46;&#46;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-148","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=\/wp\/v2\/posts\/148","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=148"}],"version-history":[{"count":5,"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=\/wp\/v2\/posts\/148\/revisions"}],"predecessor-version":[{"id":154,"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=\/wp\/v2\/posts\/148\/revisions\/154"}],"wp:attachment":[{"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=148"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=148"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rockbot.upperland.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=148"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}