Author Topic: Contra  (Read 94581 times)

0 Members and 1 Guest are viewing this topic.

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Contra
« Reply #75 on: December 23, 2010, 01:24:09 am »
Sounds awesome :D Nice to hear everything is running faster, and congrats on rewriting the engine, i know that can be quite an undertaking O.O

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Contra
« Reply #76 on: December 23, 2010, 02:45:36 am »
Personally I like using horizontal commands :P But if redrawing speed isn't an issue, collision detection will be easier to deal with because the offset value is probably also easier to deal with using a redraw method

Well, no matter what, I have a portion of the tilemap (the portion on the screen) stored in an 70-byte array at L5 (it's 9x7 plus another column that gets scrolled in). It's really easy to work with, so redrawing/horizontal doesn't really matter at all. It's just a matter of which turns out to be faster (and which one looks better). I just tested redrawing every single frame (even without scrolling), and it's already pretty slow (even without enemies x.x), so that definitely won't work...

What about using Horizontal to move the bulk of the image, then just drawing the new line that's shifted in?
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Contra
« Reply #77 on: December 23, 2010, 05:20:03 am »
I don't have a screenshot, but

Update

Completely started over (again). It's now a lot better than before (several times faster, even with scrolling implemented). Bullets now work perfectly, and I'm adding the enemies right now. So basically, the engine is pretty much done :D

EDIT: Oh, yeah, and it's still full grayscale. And fixed all those bugs in the earlier screenshot too: the character lands upright (instead of staying in a ball), he doesn't stop in the middle of a platform if he falls there, and scrolling with bullets actually works.

Nice job, grayscale, enemies, bullets, faster :)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Contra
« Reply #78 on: December 23, 2010, 12:24:15 pm »
Personally I like using horizontal commands :P But if redrawing speed isn't an issue, collision detection will be easier to deal with because the offset value is probably also easier to deal with using a redraw method

Well, no matter what, I have a portion of the tilemap (the portion on the screen) stored in an 70-byte array at L5 (it's 9x7 plus another column that gets scrolled in). It's really easy to work with, so redrawing/horizontal doesn't really matter at all. It's just a matter of which turns out to be faster (and which one looks better). I just tested redrawing every single frame (even without scrolling), and it's already pretty slow (even without enemies x.x), so that definitely won't work...

What about using Horizontal to move the bulk of the image, then just drawing the new line that's shifted in?
Well as he said in his new post, (that one you quoted is from November) he changed the way things are drawn. Seeing as he mentions a huge speed increase, I wouldn't be surprised if this is what he is doing now.
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Contra
« Reply #79 on: December 23, 2010, 04:11:50 pm »
Cool to hear. WIll it make it harder to draw enemies and bullets, though?

Yeah, whenever it scrolls it has to loop through each enemy/bullet and change their X values, so there's a bit of slowdown when there are moving objects on the screen. Can't really do anything about it, though :( Except use a shorter Pause when it scrolls.




Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Contra
« Reply #80 on: December 23, 2010, 04:14:19 pm »
Well as he said in his new post, (that one you quoted is from November) he changed the way things are drawn. Seeing as he mentions a huge speed increase, I wouldn't be surprised if this is what he is doing now.

Didn't notice the necroquote :P
« Last Edit: December 23, 2010, 04:14:51 pm by Qwerty.55 »
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Contra
« Reply #81 on: December 23, 2010, 04:18:42 pm »
Whoops, completely missed the next page when I posted :P

Personally I like using horizontal commands :P But if redrawing speed isn't an issue, collision detection will be easier to deal with because the offset value is probably also easier to deal with using a redraw method

Well, no matter what, I have a portion of the tilemap (the portion on the screen) stored in an 70-byte array at L5 (it's 9x7 plus another column that gets scrolled in). It's really easy to work with, so redrawing/horizontal doesn't really matter at all. It's just a matter of which turns out to be faster (and which one looks better). I just tested redrawing every single frame (even without scrolling), and it's already pretty slow (even without enemies x.x), so that definitely won't work...

What about using Horizontal to move the bulk of the image, then just drawing the new line that's shifted in?
Well as he said in his new post, (that one you quoted is from November) he changed the way things are drawn. Seeing as he mentions a huge speed increase, I wouldn't be surprised if this is what he is doing now.

Yeah, that's pretty much what I'm doing, except that I wrote my own Horizontal routine to only move the stuff I want to move (the 9x7 map in the middle of the screen). So I don't have to redraw everything else, which is great.




Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Contra
« Reply #82 on: December 23, 2010, 04:54:11 pm »
Quote
Yeah, that's pretty much what I'm doing, except that I wrote my own Horizontal routine to only move the stuff I want to move (the 9x7 map in the middle of the screen). So I don't have to redraw everything else, which is great.

Great in what point of view??

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Contra
« Reply #83 on: December 26, 2010, 01:25:50 am »
Oh that's cool, less stuff to scroll means much faster. :D

Is it hard to scroll smoothly, though?
« Last Edit: December 26, 2010, 01:26:38 am by DJ Omnimaga »
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Contra
« Reply #84 on: December 26, 2010, 01:37:28 am »
Oh that's cool, less stuff to scroll means much faster. :D

Is it hard to scroll smoothly, though?

Nope, still pretty smooth. I'll try to get a screenshot to post when school starts again :)

EDIT: And maybe a demo.
« Last Edit: December 26, 2010, 01:37:45 am by Deep Thought »




Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Contra
« Reply #85 on: December 26, 2010, 02:14:35 am »
Ah nice, but I mean how do you handle drawing sprites outside the area without erasing everything around the map where stuff is drawn? I mean the sprite clipping and such things.
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Contra
« Reply #86 on: December 26, 2010, 08:55:15 am »
Oh that's cool, less stuff to scroll means much faster. :D

Is it hard to scroll smoothly, though?

Nope, still pretty smooth. I'll try to get a screenshot to post when school starts again :)

EDIT: And maybe a demo.

Nice! I can't wait for it, since I'm a Contra fan (web browser SNES emulator)
« Last Edit: December 26, 2010, 08:55:35 am by ScoutDavid »

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Contra
« Reply #87 on: December 26, 2010, 01:27:39 pm »
Ah nice, but I mean how do you handle drawing sprites outside the area without erasing everything around the map where stuff is drawn? I mean the sprite clipping and such things.

Moved the actual Contra screen to the right side of the display, and let the sprite commands' own clipping do their magic ;D

The left side'll be used for scores and stuff.

Oh that's cool, less stuff to scroll means much faster. :D

Is it hard to scroll smoothly, though?

Nope, still pretty smooth. I'll try to get a screenshot to post when school starts again :)

EDIT: And maybe a demo.

Nice! I can't wait for it, since I'm a Contra fan (web browser SNES emulator)

Great :D warning though, the first demo might be in the middle of January (still don't have my link cable).




Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Contra
« Reply #88 on: December 26, 2010, 04:28:28 pm »
As some of you might know:

http://www.nesplay.com/play/Contra.html

Contra is one of the hardest games ever and the ony human way to finish it is using:

http://www.neoseeker.com/Games/cheats/NES/contra.html

How will lives work in your game Deep Thought? Just like in the original game with this cheat, or human playable from start?

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Contra
« Reply #89 on: December 27, 2010, 03:10:10 am »
Yeah I tried it before and it was really hard. However it was on the NES, not SNES. I hope you get a link cable soon Deep Thought.
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)