CodeWalrus

Development => Calculators => Calc Projects, Programming & Tutorials => Topic started by: pimathbrainiac on November 13, 2014, 08:25:42 PM

Title: nVVVVVV
Post by: pimathbrainiac on November 13, 2014, 08:25:42 PM
I'm putting this topic in this section because nReuben is my active and this project is now officially on hold. Basically nVVVVVV is an Nspire port of VVVVVV for PC, 3DS, iOS, Linux, OSX, etc.

Repository here:
https://github.com/pimathbrainiac/nVVVVVV

Screenies:
(http://img.ourl.ca/test-4.gif)
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 14, 2014, 07:14:10 AM
Sorry to hear this is on hold, but I understand with Reuben progress. When this progress further, I'll add a sub-forum for it. It will most likely deserve one, like VVVVVV 84+ if you still work on it.

Also make them walls moar colored. :P
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 14, 2014, 02:23:55 PM
Quote from: DJ Omnimaga on November 14, 2014, 07:14:10 AM
Sorry to hear this is on hold, but I understand with Reuben progress. When this progress further, I'll add a sub-forum for it. It will most likely deserve one, like VVVVVV 84+ if you still work on it.

Also make them walls moar colored. :P

They are colored, but I only have a GS image (Because I only have a GS calc).
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 14, 2014, 05:35:32 PM
Oh I see now. I hate the gs Nspires because of the motion blur x.x
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 14, 2014, 06:35:46 PM
I hate the blur, too. I'm just glad I have an Nspire, tbh.
Title: Re: nVVVVVV
Post by: aetios on November 14, 2014, 07:14:58 PM
Get a CX! 65535 colors are waiting for you!
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 14, 2014, 07:17:37 PM
My parents won't let me. They barely let me get a GS as is :P
Title: Re: nVVVVVV
Post by: novenary on November 15, 2014, 11:14:58 AM
Hmmm I hope you can focus on a project eventually lol. How many did you drop ?
Look at me talking as if I wasn't in the same situation...
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 15, 2014, 02:39:39 PM
This isn't dropped :P Just on hold. So currently that is 2 on hold and 1 active. Not bad, imo.
Title: Re: nVVVVVV
Post by: novenary on November 15, 2014, 02:56:39 PM
Which one is the other on hold ? :P
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 15, 2014, 02:57:52 PM
VVVVVV z80. I think I made an announcement on the omni thread at some point. nReuben is a little less work, so I can focus on school more.
Title: Re: nVVVVVV
Post by: novenary on November 15, 2014, 05:18:15 PM
Oh right zVVVVVV. :P I thought you'd completed that one tho ?
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 15, 2014, 06:49:59 PM
It wasn't completed. It got featured on ticalc because it was close. All that really needs to be done is level design, but I don't have time to do that, since it takes the longest.
Title: Re: nVVVVVV
Post by: novenary on November 15, 2014, 10:35:57 PM
Did you publish a level editor with it ?
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 15, 2014, 10:40:28 PM
Yes, yes I did. If you want to finish the overall level map, I'll give you writer's credit in the README (although for some reason I can't add authors in the ticalc page D:)
Title: Re: nVVVVVV
Post by: novenary on November 16, 2014, 06:01:01 AM
Hmmm nope sorry I'm not going to finish it, but at least the editor gives some value to the game. :)
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 16, 2014, 07:24:48 AM
By the way, when this gets resumed, I was planning to have both VVVVVV and nVVVVVV in one sub-forum, much like how Illusiat will eventually have its own sub-forum for every single Illusiat/Reuben project worthy of mention. What do you think?
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 16, 2014, 11:56:56 AM
I think that would be a good plan, since they are the same game, of course.
Title: Re: nVVVVVV
Post by: Keoni29 on November 19, 2014, 12:10:01 AM
Will it have the same map or a different mao than the z80 version?
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 19, 2014, 12:19:32 AM
It will have the same map as the computer version. My plan is a full clone.
Title: Re: nVVVVVV
Post by: Keoni29 on November 19, 2014, 12:22:58 AM
Awesome :D So there will be dialog and a map system as well?
Title: Re: nVVVVVV
Post by: pimathbrainiac on November 19, 2014, 12:31:32 AM
Dialogs, yes. Maps, I don't know yet. First I have to get the base engine done.
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 19, 2014, 12:32:09 AM
Would the original map and graphics fit together in the Nspire memory? That seems like a massive undertaking O.o. Good luck for sure!
Title: Re: nVVVVVV
Post by: Keoni29 on November 19, 2014, 12:38:57 AM
Graphics are pretty small. Most gfx are re-used tiles with a different color. The map is gonna be quite large though, but you might be able to compress it.
Title: Re: nVVVVVV
Post by: novenary on November 19, 2014, 06:35:09 PM
Quote from: keoni29 on November 19, 2014, 12:38:57 AM
Graphics are pretty small. Most gfx are re-used tiles with a different color.
If that's the case then you totally should copy an n2DLib sprite function and modify it so that it uses colors as an argument. Or maybe add palette support to n2dl. That would help a lot (especially since iirc VVVVVV is a monochrome game).
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 19, 2014, 11:09:03 PM
Quote from: keoni29 on November 19, 2014, 12:38:57 AM
Graphics are pretty small. Most gfx are re-used tiles with a different color. The map is gonna be quite large though, but you might be able to compress it.
Oh right, kinda like my HP Prime game's floor blocks. And yeah using paletters would make the tilesheet much smaller and more versatile, but I wonder if it would be slower?
Title: Re: nVVVVVV
Post by: novenary on November 19, 2014, 11:19:15 PM
It wouldn't really slow it down. Just modify the transparency test a bit to instead change the color.
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 20, 2014, 02:19:32 AM
Oh right I forgot about transparency. On the other hand, this would mean that only 1 color can change, right?
Title: Re: nVVVVVV
Post by: novenary on November 20, 2014, 10:25:05 AM
Not really, it depends on how you do it. ;)
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 20, 2014, 02:20:04 PM
On the HP Prime, doing this involves storing sprites differently: in some binary string, list or matrix, and then displaying each pixel one by one. If you want to change a pre-made sprite hue you need to change it pixel by pixel too. That can be slow-ish if you do it in real-time, so you really need to do some pre-rendering.

I should check how Han did it for Columns...
Title: Re: nVVVVVV
Post by: novenary on November 21, 2014, 09:35:04 PM
Well, the Prime has hardware acceleration and I believe it supports paletted graphics but I don't know if it can easily be implemented in ppl.
On the Nspire, everything is drawn pixel by pixel by the CPU so it is extremely easy to add transparency (compare each pixel to a reference color) or palette swapping (which allows compressing the sprite data too) though that would need support from n2dlib or a custom drawing routine.
Title: Re: nVVVVVV
Post by: Dream of Omnimaga on November 22, 2014, 12:21:22 AM
A long while ago I made a program that divided the color value of each pixel by half one by one every frame. It took 4 seconds, if I recall correctly, but we're talking about 320x240, not a 16x16 sprite. It doesn't need to be done in real time, since you can simply pre-render your graphics then cache them into GROB's, so speed should not be a problem. HP PPL graphics also supports transparency but with no alpha-blending. Maybe there's an even faster way to do this anyway.
Title: Re: nVVVVVV
Post by: Duke "Tape" Eiyeron on November 26, 2014, 06:07:54 AM
I look forward your game and I hope to see more screenshots and playble demos!

For the Mao compression, a RLE should do enough justice as the game map doesn't have a lot if different tiles and that they are usually quite plain.
Title: Re: nVVVVVV
Post by: novenary on November 26, 2014, 01:41:05 PM
Yes of course rle should work for compression. What we were saying is that since all tiles are monochrome with different palettes you can make them reusable.