Jump to content

nanochess

+AtariAge Subscriber
  • Posts

    7,035
  • Joined

  • Last visited

  • Days Won

    21

nanochess last won the day on October 27 2022

nanochess had the most liked content!

Profile Information

  • Custom Status
    Coding something good
  • Gender
    Male
  • Location
    Mexico City
  • Interests
    MSX, Colecovision, Atari VCS/2600, Intellivision, Sega Master System, TI-99/4A, NES.
  • Currently Playing
    Mr. Chess for Intellivision ;)
  • Playing Next
    I should make something new! ;)

Recent Profile Visitors

53,028 profile views

nanochess's Achievements

Quadrunner

Quadrunner (9/9)

7.7k

Reputation

  1. If you use a label inside CVBasic it is added the prefix cvb_* For example, game_bitmaps becomes cvb_GAME_BITMAPS. CVBasic turns all names into uppercase. So maybe you need to provide these to your editor. I don't know about compatibility with the MSX/Coleco sprite editor. Maybe @Tony Cruise can test a little with CVBasic.
  2. Hi everyone. I've been working in this game but not for making a cartridge. It's one of the games that will appear with full source code in my next book Stay tuned for more info!
  3. These were never displayed on any computer, except if you POKE'ed directly on video screen, or you used CHR$(1) (not available in CVBasic because there exists VPOKE)
  4. This game was made by @newcoleco maybe you should chime to ask for help.
  5. If you want to change only a single text, you need to copy the letters for this text into another part of the character set and change their color. In this case, I define the letter A as character 1 (the portion 0-31 is unused in the default mode 0). You could copy the whole alphabet if required. DEFINE CHAR 1,1,letter_a_bitmap DEFINE COLOR 1,1,letter_a_color VPOKE $1800+72,65 ' Normal A letter VPOKE $1800+104,1 ' Colored A letter WHILE 1: WEND letter_a_bitmap: BITMAP "..X....." BITMAP ".X.X...." BITMAP "X...X..." BITMAP "X...X..." BITMAP "XXXXX..." BITMAP "X...X..." BITMAP "X...X..." BITMAP "........" letter_a_color: DATA BYTE $90,$90,$90,$90,$90,$90,$90,$90 It depends on your approach to horizontal scrolling. For my next book, I'll show how to make fast horizontal scrolling with platforms and obstacles. The design eases scrolling as only two characters need to be updated per item (two floors and two obstacles). Also, it isn't noticeable that the scrolling is in tiles because it scrolls at 30 frames per second and that's enough to look like smooth scroll. If you want to make a full-screen scrolling with graphics you can use a map in memory that you could copy with SCREEN, and switch hidden pages like I proposed here.
  6. I see what you required. RESTORE currently doesn't allow for variable pointers. Another option is using: size = PEEK(#pointer) : #pointer = #pointer + 1 That's a very nice game! Kudos!
  7. Sorry, I didn't see this post earlier. The problem here is that your label definition says level_pointers instead of #level_pointers (the # makes it a different label), besides the VARPTR is wrong. It should be: #level_pointers: DATA VARPTR level1(0), VARPTR level2(0) This is because your VARPTR is giving a pointer to a variable, instead of an array, and also the names were wrong.
  8. I still cannot understand how I enjoyed at the time Burgertime, Donkey Kong, Congo Bongo, Columbia Invaders, Double Dragon, Space Quest, and others! And I'm talking about CGA 4 colors and only the internal speaker sound! I was in awe!
  9. Yes, the most common detection is in one direction, for example, for bullets. x = (sprite_x + 7) / 8 ' Getting the center of the sprite y = (sprite_y + 7) / 8 c = VPEEK($1800 + y * 32 + x) ' Read character.
  10. I've gone again over this. Remapped the right analog stick as keypad numbers. This time I think I got right L3 and R3 as 0 and 5. coolcv_retroarch_mac_pi.zip
  11. Just post it again, and state that it replaces your previous submission.
  12. The FRAME variable is a 16-bit variable that is updated each time a video frame happens. There is no VDP collision support because it is barely useful as it only detects sprite vs sprite collision but cannot distinguish sprites. The better way is doing a comparison of player coordinates against enemy coordinates. A Donkey Kong clone? Maybe you have seen this (soon to be published) but basically it would be enough to determine the current platform of both the player and the sprite, and if the player is jumping, and the sprite is in the same X-coordinate, it has jumped successfully over it and it can score.
  13. If the mallet was swing you jumped over the joystick movement code, but also over the time counter for the Byrons, so these stopped moving.
  14. Wow! It looks pretty cool. You already coded the game like separated state machines, so that's excellent for game pace. The MalletSwing label should be located just above the TimeForTimer label. That's the cause the Byrons don't animate when the mallet is swing. Or alternatively, the GOTO MalletSwing statement should jump instead to TimeForTimer
×
×
  • Create New...