bfg.gamepassion Posted November 6, 2011 Share Posted November 6, 2011 Hi Folks ! I have paused Coleco dev during 2 months ... After this long pause, i'm back in better condition to develop a new ColecoVision game : Helifire. You can follow (in french) the dev process of the game at this adress : http://bfg-gamepassion.blogspot.com Here is in video the explanation (in french) of the water wave scrolling : http://www.youtube.com/watch?v=Rtu6YPexgZ8 Quote Link to comment Share on other sites More sharing options...
youki Posted November 6, 2011 Share Posted November 6, 2011 It would be more optimized if you change let the NAMES table as is , and just change 2 patterns dynamically. You don't need use put_frame , just define your animation for the 2 pattern that define your wave. (that is repeated in row) ,and change dynamically the pattern definition just for these 2 patterns. As result you will have a scrolling on the entire row without changing the NAMES table on screen. 1 Quote Link to comment Share on other sites More sharing options...
Pixelboy Posted November 6, 2011 Share Posted November 6, 2011 Quite interesting. It was hard to read your source code in the video, but I think the reason why your first scrolling algorithm wasn't working is that you didn't account for "double pointers" in your call. You had one (byte*) for each tile pattern, and another (byte *) for the master list that combined all the tile patterns into a single table. So when accessing a specific tile pattern in that kind of structure, you had to do something like (* * var). That's what I think anyway... Quote Link to comment Share on other sites More sharing options...
bfg.gamepassion Posted November 6, 2011 Author Share Posted November 6, 2011 (edited) It would be more optimized if you change let the NAMES table as is , and just change 2 patterns dynamically. You don't need use put_frame , just define your animation for the 2 pattern that define your wave. (that is repeated in row) ,and change dynamically the pattern definition just for these 2 patterns. As result you will have a scrolling on the entire row without changing the NAMES table on screen. Very excellent idea ! Quite interesting. It was hard to read your source code in the video, but I think the reason why your first scrolling algorithm wasn't working is that you didn't account for "double pointers" in your call. You had one (byte*) for each tile pattern, and another (byte *) for the master list that combined all the tile patterns into a single table. So when accessing a specific tile pattern in that kind of structure, you had to do something like (* * var). That's what I think anyway... No, i have : byte pattern1[] = {1,2,1,2,...} byte pattern2[] = {2,3,2,3,...} No pointer for the animation frame but a pointer for the global animation : byte *animation[] = { pattern1, pattern2 }; and put_frame(animation[0],x,y,w,h) didn't work ... And that's the same thing i use in Commando (in more complex way ...) and it works ... Anyway, my last solution works, and Youki's solution is even better !! Edited November 6, 2011 by bfg.gamepassion Quote Link to comment Share on other sites More sharing options...
bfg.gamepassion Posted November 7, 2011 Author Share Posted November 7, 2011 Wip of the day : http://www.youtube.com/watch?v=JhnabiVJwZo There's slowdown on wave 2 when the player shoot ... Surely collision detection issue. Note that the goal is to have 2 player at the same time playing on the screen if possible. 5 Quote Link to comment Share on other sites More sharing options...
+Yurkie Posted November 7, 2011 Share Posted November 7, 2011 Looking good. Thanks for the wip video. Quote Link to comment Share on other sites More sharing options...
ChuckH Posted November 8, 2011 Share Posted November 8, 2011 As far as I know, there is only the Arcade version of Helifire. You can play it in MAME and would be a good addition to Colecovision. Your version looks good so far and good luck to you to finish it. Quote Link to comment Share on other sites More sharing options...
bfg.gamepassion Posted November 9, 2011 Author Share Posted November 9, 2011 As far as I know, there is only the Arcade version of Helifire. You can play it in MAME and would be a good addition to Colecovision. Your version looks good so far and good luck to you to finish it. It's unplayable under Mame :( There's only 2 Helicopter, and when you shoot them ... nothing more. The only thing i have to adapt the game is the only video we can found on youtube. But the project is on a very good way ! :) Quote Link to comment Share on other sites More sharing options...
ChuckH Posted November 9, 2011 Share Posted November 9, 2011 bfg, You have an earlier version of MAME. Helifire was broken as you say but it was fixed in version .141u1. Get a newer version like 142 or 143 and it will work. If you don't want to mess up your current version of MAME, just make a new folder for the newer version for that game only. Chuck Here's the cool bezel. Quote Link to comment Share on other sites More sharing options...
bfg.gamepassion Posted November 9, 2011 Author Share Posted November 9, 2011 My god, you are right !!!! I sure i had test a new version of Mame last week ... But i haven't put it in a new folder, may be i've lanched the bad executable. So yes !! It's playable !! THANKS ! Quote Link to comment Share on other sites More sharing options...
youki Posted November 9, 2011 Share Posted November 9, 2011 Just a crazy idea .. It could be cool to let the sky black and not red. And then provide an overlay with the cartridge to put on screen! (like vectrex's game) to have the same color effect than the original arcade game. (ok, the problem is to find a standard say for the overlay....) Quote Link to comment Share on other sites More sharing options...
ColecoDan Posted November 9, 2011 Share Posted November 9, 2011 Just a crazy idea .. It could be cool to let the sky black and not red. And then provide an overlay with the cartridge to put on screen! (like vectrex's game) to have the same color effect than the original arcade game. (ok, the problem is to find a standard say for the overlay....) I think the red looks ok it probably just needs to be a little darker like it is on the example picture above, but I don't know maybe the colecovision can't do this ? Quote Link to comment Share on other sites More sharing options...
Pixelboy Posted November 9, 2011 Share Posted November 9, 2011 Just a crazy idea .. It could be cool to let the sky black and not red. And then provide an overlay with the cartridge to put on screen! (like vectrex's game) to have the same color effect than the original arcade game. (ok, the problem is to find a standard say for the overlay....) I think the red looks ok it probably just needs to be a little darker like it is on the example picture above, but I don't know maybe the colecovision can't do this ? He's already using dark red, the ColecoVision doesn't offer a darker red than that. At best, he could do a dithered gradient from dark red to black up into the sky. Quote Link to comment Share on other sites More sharing options...
+Yurkie Posted November 9, 2011 Share Posted November 9, 2011 I wouldn't worry about the sky. If anything, change the player submarine to black. Quote Link to comment Share on other sites More sharing options...
youki Posted November 9, 2011 Share Posted November 9, 2011 May be something like that. Quote Link to comment Share on other sites More sharing options...
retroillucid Posted November 10, 2011 Share Posted November 10, 2011 May be something like that. Top part look excellent ..... but I would not change the water part though Quote Link to comment Share on other sites More sharing options...
Pixelboy Posted November 10, 2011 Share Posted November 10, 2011 Top part look excellent ..... but I would not change the water part though Agreed. Quote Link to comment Share on other sites More sharing options...
+Yurkie Posted November 10, 2011 Share Posted November 10, 2011 May be something like that. As much as I love your work youki, I don't like the look of that mock-up. Quote Link to comment Share on other sites More sharing options...
youki Posted November 10, 2011 Share Posted November 10, 2011 May be something like that. Top part look excellent ..... but I would not change the water part though Yes, it is what i was thinking just after having posted. Or may be, keep the light / Dark blue part at the bottom but let the darker part (blue/black) only blue . Quote Link to comment Share on other sites More sharing options...
ColecoDan Posted November 10, 2011 Share Posted November 10, 2011 The sky part is awesome, the water part is confusing. Cool to see it looking more like the picture of the game though. Quote Link to comment Share on other sites More sharing options...
youki Posted November 10, 2011 Share Posted November 10, 2011 This version is better , i think Quote Link to comment Share on other sites More sharing options...
Pixelboy Posted November 10, 2011 Share Posted November 10, 2011 This version is better , i think Yeah, it's better, but then you won't have any scrolling stars in the red-to-black dithered portion, not unless the star pixels are red also. Quote Link to comment Share on other sites More sharing options...
youki Posted November 10, 2011 Share Posted November 10, 2011 This version is better , i think Yeah, it's better, but then you won't have any scrolling stars in the red-to-black dithered portion, not unless the star pixels are red also. Correct, but you don't need to have it here to have good rendition of the star scrolling effect. And if really you want, you can have it anyway... use sprites for star in that area... Even if you put 8 sprites in a row (i think you really don't need to do that, 3 star in a row is enough anyway) with flickering for the stars i think the result will be correct. Just don't put Helicopter on that row.. Quote Link to comment Share on other sites More sharing options...
+wood_jl Posted November 10, 2011 Share Posted November 10, 2011 Very cool! Is that C++ code there (1st video)? Just curious. I don't know anything myself, but I had just assumed the older systems were always programmed in assembly language. If you can use C++ (or something close) that is amazing!!! Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted November 10, 2011 Share Posted November 10, 2011 Is that C++ code there (1st video)? Just curious. I don't know anything myself, but I had just assumed the older systems were always programmed in assembly language. If you can use C++ (or something close) that is amazing!!! You can program several of the older systems in "C". I develop most of my 7800 games in "C" (combined with an assembly language library of routines) using CC65 (visit http://www.cc65.org for more information on the other 6502 platforms supported). Anything that needs optimising gets rewritten in assembler. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.