Join us on Discord!
You can help CodeWalrus stay online by donating here.

[CSE Basic] Flatforme

Started by 123outerme, January 09, 2015, 11:52:46 PM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

123outerme

Flatforme is a 2D, single-screen based platformer in development for the TI-84+CSE. Platform your way to the Goal Coin and collect it! Fend off enemies who will happily stop your progress.



[spoiler=Todo:]
*Level design
*More enemy AI (?)
*More puzzles than just "grab the thing" (?)
*More abilities (?)
[/spoiler]

Edit January 31st: Attached a new beta with the level editor!
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

Dream of Omnimaga

Ooh I like how the graphics are laid out. :) how many screens per level is there? And how is level data stored?

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Snektron

Looks nice! I always like what people can do with limited resources :p
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


123outerme

#3
Quote from: DJ Omnimaga on January 10, 2015, 12:29:56 AM
Ooh I like how the graphics are laid out. :) how many screens per level is there? And how is level data stored?
Thanks! Just for the sake of completing the demo, I hard-coded the collision detection. I plan to have a sort of lookup table with all of the collision and level data storing itself into variables. There will probably be 3-4 screens per level, but it could change.
Quote from: Cumred_Snektron on January 10, 2015, 01:02:56 AM
Looks nice! I always like what people can do with limited resources :p
Thanks!
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

Dream of Omnimaga

Aah ok. What would be nice is if you could come up with a system where each screen have the top platform starting and ending at various locations, same for the bottom one, and have the color be different (not hard-coded either) in each world. For collision, you could check if the character is at a certain height on the screen then check the list to see if you're inside an area with no floor.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

123outerme

Quote from: DJ Omnimaga on January 10, 2015, 06:52:40 AM
Aah ok. What would be nice is if you could come up with a system where each screen have the top platform starting and ending at various locations, same for the bottom one, and have the color be different (not hard-coded either) in each world. For collision, you could check if the character is at a certain height on the screen then check the list to see if you're inside an area with no floor.
Thanks for the tip! The way I did it was get the Y value of the top of the platform, where you would stand, and have it turn my gravity flag off. For hitting the bottom of the platform when under it, I added in a conditional in the jumping code that reset your Y value after the next one was calculated if you were directly underneath it. The collision to the side basically reset the X value when you attempted to go left near the side of the platform.

As for the different levels, I imagine that the color schemes will change, and the difficulty will change. But, the more that I think about it, the more I realize that level layout data will be hard to do, the way I'm currently imagining it. I'll have to put some thought into it.
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

Dream of Omnimaga

Good luck with what you decide. Also since the sky is white I assume you could use pxl-test for collision detection, but since erasing a character with a space doesn't turn off those pixels, you would need to apply a pxl-off to 1 pixel inside the space where your character previously stood.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

123outerme

#7
Quote from: DJ Omnimaga on January 10, 2015, 07:11:52 PM
Good luck with what you decide. Also since the sky is white I assume you could use pxl-test for collision detection, but since erasing a character with a space doesn't turn off those pixels, you would need to apply a pxl-off to 1 pixel inside the space where your character previously stood.
Actually, I've got it now. Like I said before, I'm using lookup tables to store the collision data into some variables like so:
(platform)
                                                         -- this Y position is a variable (let's call it A)      [  ] --the goal's X and Y are another two variables
                                    XXXXXXXX
                                    XXXXXXXX
Y minus the height of A --             I
                                    I   The right and left bounds are two variables

Instead of checking a number, I check these variables, and since the lookup tables modify them, they change every level.
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

123outerme

I've been working on a lot of stuff, like the ability to place platforms wherever you want, not just on the left side. I also added color scheming and started on making levels.[spoiler=Images:]



(Level 3.1 doesn't have it's own level yet, so it's using Level 1.1's data)[/spoiler]
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

LD Studios

Nice work, I like how the player squats down before jumping



123outerme

Quote from: LD Studios on January 10, 2015, 10:59:00 PM
Nice work, I like how the player squats down before jumping
Thanks! That was partly out of necessity, since it's otherwise impossible to tell when to press left/right to get the horizontal momentum. I added that cue in to telegraph when you need to press those keys.
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

Dream of Omnimaga

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

123outerme

Quote from: DJ Omnimaga on January 11, 2015, 04:00:44 AM
Looks very good :)
Thanks! I've also added in a Mario Sunshine-esque menu screen, and I'm almost ready to release a demo. I would suggest playing the demo on an emulator, since it doesn't have enough content yet to justify waiting for TI-Connect to work. ;)
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

Dream of Omnimaga

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

123outerme

#14
Quote from: DJ Omnimaga on January 11, 2015, 03:13:53 PM
Cool, I can't wait :)
Thanks! I added the demo now, it's in the first post. I'm still tweaking the levels. Please report any bugs you find!
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

Powered by EzPortal