Homebrew [WIP][Game] Bottomless Block Barrage - a Tetris Attack/Panel De Pon/Pokemon Puzzle League clone

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
Thanks for considering my feedback! I totally understand about the minimal design for focus on functionality. I'm looking forward to future updates! Regarding characters/game overall feel, I was hoping for a "japanese-esque, cute" approach, maybe something akin to 100% Orange Juice by fruitbat factory? although I don't mind whichever direction the main skin goes for! (Perhaps I could ask some art friends to contribute? I can't promise I can follow through with that, though...)

In general, having various characters like Puyo for this game would be absolutely fantastic, and I'd love to see where this project can go with that!

Cool I am open to adding anything as long as I have the assets, but at the same time I would like to keep everything customizable.

@TricksterGuy

Just a suggestion and question: Is it possible to add a complete adjustable block timing tweaker via in-game menu? The block flash delay just before it disappears seems off when compared to Tetris Attack, side-by-side. Thanks for sharing this -- it's looking better everyday.

that'd be some work, and by that I mean busy work because of all of the UI work needed to add it, and I wouldn't want to keep such a setting in the final project.

The speed settings are controlled by 6 constants.

struct PanelSpeedSettings
{
int swap;
int pending_fall;
int falling;
int pending_match;
int first_removed;
int subsequent_removed;
[...]
};

swap is the number of frames it takes to swap a panel
pending fall is the small delay in frames when you swap a panel over a gap before it falls
falling is the number of frames before a panel moves down 1 row
pending match is the number of frames for blinking
first removed is the number of frames before the first panel disappears.
subsequent removed is the number of frames to remove the next panel that has been matched.

Below is the current settings for these per mode

PanelSpeedSettings easy_speed_settings = {4, 6, 4, 66, 33, 11, ...};
PanelSpeedSettings normal_speed_settings = {3, 5, 3, 45, 25, 9, ...};
PanelSpeedSettings hard_speed_settings = {2, 4, 2, 33, 17, 6, ...};

The numbers are in frames and the order matches up with my struct above (e.x. in easy a swap takes 4 frames, pending_fall is 6, falling is 4, etc).

About how much of a difference is it?


Yes, it was a 0.1.5 replay in 0.1.5. Granted, it's over 28 minutes long, but getting over 100K in Normal isn't the fastest thing.

I was wanting to be sure I was getting some chain types, even if their timings are unreasonably strict., 'cause I know I've done late slips, grounded midair switches and even late drops (but the timings seem off, especially on late drops).

While composing: Yep. Replays are borked. I tried to save a replay losing immediately after achieving a late drop chain, and there's no hint of it.

Next, C-Links seem to make transferring chains just a little too easy. In TA, if a 'C-link' doesn't start to actually pop before the chain hit ends, it will be counted as a x1. In BBB, I've had chains seeming to continue out of nowhere because a C-Link takes on the full properties of the chain.

Another thing that needs revisited is stop timers. I've had stacks start moving much sooner than I'd logically think it should, and I think it's because a shorter stop timer from when the stack is lower is somehow overwriting the longer stop. Maybe checking to see if the remaining timer is greater than the current bonus's timer and discarding it if it is would fix this seemingly errant behavior.

Finally, it may be a pretty simple thing to implement Time Attack. You've already got a time counter, and if you let it run for 00:02:00, and then have it switch to Game Over after that, there's Time Attack.

Yeah as a reminder the whole replays thing I added only for my debugging, so the code for this I would say isn't production ready code. I was playing with it yesterday and it seems to work for me. Can you try with a shorter replay. I have never saved anything that was more than 2 minutes of gameplay.

And I saw that with my playtesting yesterday, it does allow you to extend a chain, but it shouldn't. This may require some extra thought as to how my code determines if something is a chain or not.

That is the main piece of logic behind time attack. I can really have the mode implemented with no fancy things in about 30-50 lines of code or less, the timer would have to count down instead of count up.
Extras would be stats display at the end (number of combos, number of chains, etc.).

The stop timer I may have broken at some point. For each match you make I make some calculation on if it is eligible to cause a timeout and how much seconds of timeout you should get. Right now if you are already in timeout and you create a match the two values of the remaining time you have left and the amount of time you have earned are compared and the timer is reset to the greater of these two values.

Hey, so right now the lift should behave as if Exploding Lift was off, right? Well you're gonna have to disable the lift when blocks are falling then, because right now it's only disabled when blocks are popping.
Also, when blocks start dancing from being too close to the top, only the columns that are too high should be dancing (it helps draw attention to them)!

Alright fast rise should only be allowed if all blocks are currently idle. Got it.

You learn something new everyday! Misconception on my end I always start by flattening the stack and then rising the blocks to the top then making my matches, so that's where that incorrect behavior came from. Actually that makes a lot of sense why the blocks would do that by columns and not the whole board. That is a nice user interface thing.
 

cots

Banned!
Banned
Joined
Dec 29, 2014
Messages
1,533
Trophies
0
XP
1,952
Country
United States
88807c8532913c08f3e8.jpg


02b672944303a8e73bad.jpg


I made this in hopes you will use it for the game icon instead of your current low resolution icon.

By the way, it's a really good homebrew.

Do you plan on adding music in the background soon? If so maybe we can add our own MP3/OGG files?

EDIT - I made a banner. I hope you like it.
 
Last edited by cots,
  • Like
Reactions: NCorp.

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
I'm all for customizable! I'll see what I can do about making a set of characters/story/assets to work with for a "default", though.

I started listing everything required for a character. Just need to transcribe it in a document somewhere.


88807c8532913c08f3e8.jpg


02b672944303a8e73bad.jpg


I made this in hopes you will use it for the game icon instead of your current low resolution icon.

By the way, it's a really good homebrew.

Do you plan on adding music in the background soon? If so maybe we can add our own MP3/OGG files?

EDIT - I made a banner. I hope you like it.

Yeah right now the icon is just WolfBunnys one scaled 300%
Can the icon be more metallic looking, rather than a flat gray color?
The color of the ! should be white to follow with TA style.
Also your icon is too big, I believe the correct dimensions are 48x48. (I think it can go up to 64x64 can't really find the source for this though).

As for the banner Its better than what I can come up with (I literally made the current one in 5 minutes with gimp).
My only issue is that feels mostly black/dark. I think it would be better if it had more color.

Thanks
 

SRKTiberious

Well-Known Member
Member
Joined
Sep 4, 2014
Messages
240
Trophies
0
Age
41
XP
404
Country
United States
Are homebrew titles capable of using 3D banners with animations? If so, what format do they need to be in?

I can't see it being too terribly difficult to make a 3D banner, especially one for a game like this.
 

Bynniock

Member
Newcomer
Joined
Aug 20, 2015
Messages
17
Trophies
0
XP
193
Country
Belgium
I found a bug with slips which should (hopefully) be showcased in the replay I've attached to this post (they basically don't register as a chain when performed mid-air and slightly late).

This is more of a minor nitpick, but could you have the panel style stay the same when you "try again" after losing? It's already a bit annoying that ← and → don't work to select them in 0.1.5...

In PPC, there's a training mode that's just a slow-mo version of endless. I see in the main post that you didn't plan to include this, but I feel like something like that could be a very valuable playtesting tool! If the engine allows it, you should really consider it!
 

Attachments

  • Replay.zip
    3.3 KB · Views: 255

cots

Banned!
Banned
Joined
Dec 29, 2014
Messages
1,533
Trophies
0
XP
1,952
Country
United States
Yeah right now the icon is just WolfBunnys one scaled 300%
Can the icon be more metallic looking, rather than a flat gray color?
The color of the ! should be white to follow with TA style.
Also your icon is too big, I believe the correct dimensions are 48x48. (I think it can go up to 64x64 can't really find the source for this though).

0293ba90d932231e1841.jpg


5a7a8b6b312bb8e0c4dc.jpg


How about these?
 
  • Like
Reactions: NCorp.

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
As promised some UI mockups I did on my bus ride home.

The bottom screen is pretty much the tetris attack layout (why fix what isn't broken?). There is the problem of the top screen and how much free space I have to play with, and I made a proposal for what info I could show there.
Pretty much a stats view showing the number of each combo/chain/clink you've made along with other things like panels cleared, lines raised, number of matches you've made, points per second, panels cleared per sec, etc. I want to flesh out this UI based on the different modes (you don't really care about stats in puzzle mode for instance).

The rest are just mock ups for Versus mode. I believe I could snugly fit up to 4 players on both screens (maybe 5). Well it will be a stretch goal to be able to play with 3-4 people over the internet.

Anyway yeah next release probably won't be for a minute (surely by next tuesday at the latest). I have pages of feedback I want to get into the next version (and messages from people as well). I would like to address every concern everyone had.

Are homebrew titles capable of using 3D banners with animations? If so, what format do they need to be in?

I can't see it being too terribly difficult to make a 3D banner, especially one for a game like this.

banners are 128 x 64 thats all the information I found on 3dbrew. I don't know how you would make an animated one.

I found a bug with slips which should (hopefully) be showcased in the replay I've attached to this post (they basically don't register as a chain when performed mid-air and slightly late).

This is more of a minor nitpick, but could you have the panel style stay the same when you "try again" after losing? It's already a bit annoying that ← and → don't work to select them in 0.1.5...

In PPC, there's a training mode that's just a slow-mo version of endless. I see in the main post that you didn't plan to include this, but I feel like something like that could be a very valuable playtesting tool! If the engine allows it, you should really consider it!

Yeah forgot to copy over the panel graphics when you lost. Will be fixed next release.

And left and right does work you just aren't on the set that has 16 recolors of them. Like I said in an earlier post there needs to be a hint to the user if there are more panels of that type just recolored.

I don't remember saying that there wouldn't be a training mode? If you want it its not a problem.

0293ba90d932231e1841.jpg


5a7a8b6b312bb8e0c4dc.jpg


How about these?

I am digging the icon.

Can the text not be italicized?
Can the B block be blue instead of yellow
 

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
Sure, will get right on it.

-------------------------------

Here you go. Will this suffice?

top_0000v3.png

now make a 400x240 version and then I can replace all of my crappy 5-minutes-in-gimp images with yours. Thanks!

Also if anyone else wants to do a title screen feel free to I can have the game rotate out title screens every so often so everyone's work gets used :)
 

cots

Banned!
Banned
Joined
Dec 29, 2014
Messages
1,533
Trophies
0
XP
1,952
Country
United States
now make a 400x240 version and then I can replace all of my crappy 5-minutes-in-gimp images with yours. Thanks!

Also if anyone else wants to do a title screen feel free to I can have the game rotate out title screens every so often so everyone's work gets used :)

Here ya go.

top_0000_400x240.png
 
Last edited by cots,

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
EDIT: I have a doc now explaining all of the different types of images and the requirements for them. Hopefully this document will organize things

Image types and requirements contributing

Also my UI mockups

I know it is possible, since FBI, CHMM2 and GameYob use animated, 3d banners for their cia versions. You could try asking those guys how they did it
Hahaha wow never noticed FBI's box icon rotates.

And their codes's up on github I can figure out by looking at their code :)

Appears to use a cgfx file... ok thats enough to go on.
 
Last edited by TricksterGuy,

enderer

Well-Known Member
Member
Joined
Jul 19, 2015
Messages
381
Trophies
0
Age
34
XP
1,652
Country
United States
.3dsx version does not run, it hangs with junk on top screen and red on bottom. i'm running menuhax gamma on 10.3 us o3ds
 

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
And small update I have more UI mockups but I won't post until I have every screen completed.

Puzzle mode is almost complete, after that I will do the Time/Score Attack and address as many issues people as possible.

.3dsx version does not run, it hangs with junk on top screen and red on bottom. i'm running menuhax gamma on 10.3 us o3ds

Works fine for me, however I am using hb_launcher_loader.cia on 10.7 us a9lh new 3ds

@enderer

Apparently you need to update your homebrew starter kit - please copy over the files from the kit download from here - http://smealum.github.io/3ds/

Source (https://www.reddit.com/r/3dshacks/comments/3hc4ga/psa_for_everyone_get_red_screens/)
 
Last edited by TricksterGuy,

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
Here is an update on my progress towards 0.2.0. I plan to release the next version around tuesday/wednesday next week and will address as many of the issues that have been reported to me so far as I can possibly fix.
It will include the following new things (I have monday/tuesday off next week so a lot of time!)

- Time Attack.
- Puzzle Mode.
- Save Data
- High score display for all modes
- Stats display at the end of endless/time attack



Puzzle mode is almost done, just a few more tweaks. Here is a screenshot.
And a reminder that I do have a level editor available to create these.

XM6d6vo.png


I could use more backgrounds, tetris attack backgrounds would be a little hard to work with since the areas for the displays are in specific locations in the images, but for now I'm just going to keep reusing the menu background image until I get more.



Also @cots was nice enough to provide a title screen / banner / and icon and has been improving it over the past couple of days.
title_screen.png


banner.png



icon.png
 

enderer

Well-Known Member
Member
Joined
Jul 19, 2015
Messages
381
Trophies
0
Age
34
XP
1,652
Country
United States
i downloaded the starter, transferred all files, uninstalled and reinstalled menuhax and i'm still on hax 2.7 gamma and it still freezes on all 3 of my 3dses
 

SRKTiberious

Well-Known Member
Member
Joined
Sep 4, 2014
Messages
240
Trophies
0
Age
41
XP
404
Country
United States
Hmm... any news to share with us? Keeping this thread on the front page will be useful to keep the awareness up, so posting a status update daily is a good thing.
 

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
Yeah kinda lost a full day there debugging and work begins again tomorrow morning :/. I did get a lot of things done, just not really things I could show off.
Really hate to do this I'm gonna have to push this back a few days and as a note to myself I should add some slack. Friday seems like a good day, but I can post everything I have tomorrow night as a pre-0.2.0 release.

Here's puzzle mode, included with this is all of Tetris Attack's 120 puzzles. I'll probably do Pokemon/Planet Puzzle League's puzzles, but thats for another day. Just like in TA if you press Y you can undo previous moves, it was definitely a confusing thing to do things such as What if you make two moves in quick succession? Or make a move during a match? Pressing Y will bring you to the last state where none of the blocks are doing anything so sometimes it will undo multiple moves.

And the background here is just so that something is there. If I was more of an artist I could do what Planet Puzzle League does and make the backgrounds simple and animated, like an android live wall paper.


Also learned while debugging you can run the app in citra-qt, just make sure hardware renderer is enabled otherwise its unplayable, this will definitely make things a little faster for development.


9o85GCY.png


And if either of the two of you want to help I need buttons.

One that says "Press Start".
Another that says "Start".

Both should be 128x64.


i downloaded the starter, transferred all files, uninstalled and reinstalled menuhax and i'm still on hax 2.7 gamma and it still freezes on all 3 of my 3dses

Does this happen with other 3dsx homebrew?
Did you try other homebrew from the starter kit?
Find other homebrew games others have made (best if you find some that also use sf2dlib) and try those?

You mentioned earlier that the firmware version was 10.3. Are you on emunand? Which CFW are you using?

I'm pretty certain its not anything I did in my code.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Veho @ Veho: The cybertruck is a death trap.