#Bubbits

597 messages ยท Page 1 of 1 (latest)

proud violet
#

A Puzzle Bobble Royale. Hey guys, it's still early days and nothing is finished really but this is what I have been working on. First time showing this to people other than family and friends. If you like it, follow this space and I will update you in here about development progress, topics and questions you might have or test sessions someday, playing vs bots does get old haha!

proud violet
#

How it all started a few years ago and what libraries Bubbits could not live without:

  • Phaser3
  • Colyseus
  • random-js (tons of random libs out there, this one had 2 things I needed: seedability+stateful)
  • @mathigon/euclid (everything game logic in Bubbits is done via math and geometry. there is no moving or simulation part to minimize issues with fluctuating framerates, lag, ping and enable lightweight server authorization)
#

If someone is interested in the math part I will be happy to prepare a bit of info on that side ๐Ÿ˜Š

proud violet
#

today i got some of the good stuff for you guys!

midnight wedge
proud violet
#

Thank you sir! ๐Ÿ˜Š

Sure thing, I will do some broad strokes but if there is anything in particular that interests you dont hesitate to ask ๐Ÿ™‚

I started out going the normal way, which means you have some bubble entities, they have circle entities tied to them, you shoot a bubble at a certain angle, that bubble gets a velocity xy, reflects on the outer sides if need be, gets checked for collision, if it does collide calculations are done in which playfield position the bubble should be slotted into, done.

When i thought more about sanity checking client shots on the server, i was convinced that there had to be a better way than to just do the whole simulation on the server. in theory, the whole flight path, collision, and end result of the playfield changes of the shot should be able to be calculated in one go as soon as the shot is fired.

I am happy to report that it did work out and the end result is what you see in the last video. its a graphical representation of the math that makes up the playfield and shots. basically its ray casts, intersections and angle math stuff.

There are a lot of intricacies that you wouldnt think about at the start if you want to calculate the flight path like the side reflections happening a bubble radius sooner because if you cast a ray, you dont take the bubble radius into account by default. same goes with shooting a bubble that flies in between other bubbles. i ended up using 3 rays working in tandem to know where a bubble fits through or not and i can tune that just by changing a value now (it didnt feel good if the bubbles hitbox is the actual bubbles radius!)

The end result of firing a shot now is the whole shebang of data you need:

  • Normalized Flight path
  • EndPosition
  • Bubbles that get Popped
  • Bubbles that get Dropped
  • data if we fired a powerup bubble that has special behaviour

After that we just need to scale those paths to fit each users resolution and pull the bubbles along on that path to their destination!

#

i hope that was somewhat interesting to read ๐Ÿ™‚

midnight wedge
#

I see! You're right there was no point in simulating everything, nice usage of raycasting ๐Ÿ’ช, gave me a lot of thoughts. Thanks for the explanation ๐Ÿ™‚

Is it a last man standing where you can just watch as others struggle or can you actively mess up their gameplay somehow?

proud violet
#

You're welcome!

It's similar to Tetris + powerups. If you clear bubbles they get sent to your current target and there are both, powerups that help you and powerups that distract your target!

midnight wedge
#

I'll be following your progress, feel free to ping me if you need somebody to come and play ๐Ÿ˜„

obsidian vault
#

Hello!
I'd like to work with you. let me know the details.

proud violet
proud violet
#

Not too interesting to look at but for me personally, it was a huge milestone to get all the tech lined up to have steam integration and go through the whole steam purchase order flow for microtransactions ๐Ÿ˜Š

#

it isnt rocket science but there is a bunch of stuff in a lot of places that can go wrong if you don't really understand what you're doing and dont line all the pieces up properly

proud violet
#

Another Steamy update today. I planned to keep the whole party system ingame across platforms, but apparently you cannot get the friends of a player on steam. not even friends playing the same game.

thus, i tried weaving their lobby invite system into my own and to my delight, i got it working! phaser + native steam friend invites, awesome!

magic sparrow
#

Where did you source the art assets from? I trust you didn't fall foul of Valve's new policy against AI art?

proud violet
magic sparrow
#

I am not looking forward to that battle if it happens to me. I am relying heavily on Midjourney.

proud violet
#

damn i can imagine ๐Ÿ™ˆ for me personally i dont worry about it much

proud violet
#

Steam Technology implementation wise, I am now feature complete! really happy about that ๐Ÿ˜Š Also did some groundwork regarding Menu Overhaul and implemented a proper working resolution picker for the electron build.

To put it bluntly, getting that to work properly was a nightmare. Many times during development, using web technology made my life easier and feature iterations were quick. Not this time ๐Ÿ‘€ I am too lazy to properly write that up but if anybody runs into issues trying to do the same thing i will be happy to help out.

As a side note for anybody using Spine, I sadly had to cut my losses and revert back to the previous phaser spine 4.1 runtime. there were just too many issues in my project that neither mario nor me could fix in that new runtime. Biggest was scaling, but also animation playback and positioning. basically, nothing was working right and it didnt look like i could change that in a reasonable timeframe. really sad about that and it came unexpected as i didnt have any issues going from the older spine phaser runtimes of 3.8 to 4.1.

#

The resolution picker and scaling work was all worth it to me though, all the sprites and even .text() looks super crisp now and i love it โค๏ธ

proud violet
#

hello people, long time no see โค๏ธ

today I have got a little something for you once again! Been working on a little match results screen (big ups for rexUI!) and desync handling. Before the switch from socketIO to Colyseus, i had a pretty thorough mechanism to detect desyncs and force sync the client again if client and server had different truths. however, those desyncs and thus force syncs happened rather frequently so i wasnt happy with that.

In general, i think that Bubbits needs to have a rollback netcode. Aiming and shooting your cannon in general should feel like you play offline and should not feel laggy in any way. that introduces a lot of challenges if you still want to have an authoritative server that can validate gameplay on the fly, or rather, even before it happens on the client.

There are still some kinks to work out here and there but for the most part, the netcode feels pretty robust and desyncs that cause a visible force sync happen rarely.

To get the spectator mode working again, i needed a working force sync mechanism to create a working playfield within an already running game. now that i have that once again, i reenabled the spectator mode. there was one thing i didnt like, you can see it in the first video. its a splitsecond in between switching spectated that can occurr if the playfield switch doesnt happen in the same frame. second video shows a solution that makes sure that the new specated playfield gets created and shown before the old spectated playfield gets deleted, looks a lot cleaner!

proud violet
#

for the special people that read my stuff over here, i have turned on all the graphics stuff for a quick video to see how much that makes my fps tank. answer to how much is: yes.

patent kiln
#

love me some aquatic ambiance.

#

is that from your game's soundtrack? or just something you had on in the background when you were making the video

proud violet
#

nice remix though!

patent kiln
#

the solo overdoes it a bit with the pitch bends, but yeah it's pretty nice

pine ridge
#

Hi, just joined the party. Amazing job, on every aspect! Just to make it clear, you built a game with a web stack, packaged it with electron and published on steam?

proud violet
pine ridge
#

and you plan the same approach with other stores? Just package the web app in a container that works with the store?

proud violet
pine ridge
#

nice

#

which means basically, that you have already cross-platform play?

#

did you have to do any platform specific tweaking for the networking code on the client

#

?

proud violet
#

Yes ๐Ÿ˜Š Android test was more of a packaging and tooling test I didn't play much.

Don't expect any change in networking code, what will need to work differently is the party system as steam doesn't allow to query friend list data (I first planned to do party invites with an ingame invite system for every platform but that would be cumbersome for steam users)

pine ridge
#

i meant the gaming code. I saw taht use Colyseus, which I'm not familiar with, but I see it's nodejs. So, the inner works of that will work in any app container? Electron, APK etc?

proud violet
#

Colyseus has a nodejs backend library and a Javascript frontend library. ๐Ÿ’ฏ

pine ridge
#

nice

#

exciting stuff man, keep us posted!

patent kiln
proud violet
#

Valve doesn't tell. There are a bunch of people in steam dev Forums complaining that their games got rejected or are on hold

patent kiln
#

that's a bit of a damocles' sword situation, i imagine

#

do you have a backup plan?

proud violet
# patent kiln do you have a backup plan?

Man I got so many other topics to worry about to get to a release worthy state. I don't worry about that one.

If they do reject me because of that, remove those assets, procure new ones, done. It will be pain, it will cost more money but that's pretty much it

magic sparrow
#

It would be funny if they use AI to check for AI assets.

#

I am not even considering Valve tbh. I can publish the PWA on my own site and market it myself.

proud violet
magic sparrow
#

Agreed. I can always pivot later if I need extra marketing.

white nymph
#

Wow, congrats on your fantastic progress towards release! ๐ŸŽ‰ I'm dreading attempting all of the Steam integration on mine. ๐Ÿ˜…

proud violet
jade raft
#

This will be paid game

proud violet
#

Running on Steam Deck amiga

proud violet
jade raft
#

You designed GUI yourself?

magic sparrow
#

Those are pretty!!

proud violet
#

On another note, there has been a huge addition to the gameplay loop which is an event system. at certain points in the Royale mode, the server can start an Event which every player participates in. Events could be anything that makes the game more difficult or more fun, like getting a powerup at every shot or a more drastic change of the rules.

Best event yet: Squid Game. First Game. Love it!

proud violet
#

Hello you lovely humans. 2 things:

I would be absolutely delighted to be able to test a real Bubbits match with 25 human players sometime. But I don't know 25 humans. So, if you read this and would be willing to participate (would take ~10 minutes, you can choose if you'd like to get the steam version or just use the web version), please react to this post. I dont know if that many people read this, but you would definitely make my month ๐Ÿ˜Š

On another note, I am currently rewriting how remote playfields get synced. This is a perfect example of why coding in teams or with a sparring partner is the best. Because I'm sure if I did, i would have done that change a year ago or earlier.

Up to now, the colyseus state got sent to the client, in there is data from all players and for important actions like a shot happened, a player used a powerup, etc, i had array with the latest shots, latest used powerup etc tied to shotIndeces to be able to compare what still needs to happen. This approach works most of the time, but it will never be as robust as I'd like it to, no matter how much I polish that.

now, every player has an action log of all the relevant permutations that can happen (shot, receive bubbles, use powerup, receive powerup, event related stuff) which gets written on the server. The Bubbichain. Now the remote playfields just need to make sure, that they 1 by 1 execute these actions (still a bit tricky, but doable) and if need be resync to a working state and then proceed through the log. this should give me the robustness i want to handle how remote playfields get operated by data.

It is obvious. this should have been the way it worked all along. somebody should have told me. have a nice week ๐Ÿ™‚

proud violet
#

Hey guys, long time no video! And no hard feelings that nobody EXCEPT @midnight wedge wants to test, i still love you โค๏ธ

Rework from Spine to SpriteSheets has been almost completed but there is more: Today I brought you some footage of one of the new Events that can occur in the Royale Matches: Red Light Green Light!

proud violet
#

in playtests the events were pretty well received because they add variety to the gameplay and make every round different, i think having powerups together with an event system like this is a solid gameplay foundation!

Game logic wise, implementing events like red light green light have been a challenge because they influence both backend and frontend and gameplay wise they need to integrate/change the most inner workings of the gameplay loop. In the end, all worth it I think ๐Ÿ˜ƒ

PostFX made the newest event Possible: Bubbits Noir. really happy with that one, maybe i can get some footage of that also for you guys!

jade raft
#

Its funny no one is interested in your game

#

May be because it is a old concept

#

I am interested in testing though

proud violet
#

Hey guys, you wanna help out? Tell me your top 3 thinkergunsleft

midnight wedge
#

top row - cat and bird on the right
middle row - angry bird on the right ๐Ÿ˜„

proud violet
#

your vote has been registered ๐Ÿ‘

glacial lodge
magic sparrow
#

Top 2nd, top 4th, middle 4th

proud violet
#

Final Poll results

#

Thanks for your participation!

proud violet
#

UI Overhaul powered by RexUI slowly coming together

proud violet
#

Hey guys, today i got down into a rather math heavy (simple math) topic: Enabling playing with a dynamic number of Players in the Royale Mode.

Its a mixture of pure math and artistic choices you have to take along the way, but it's a solvable issue: Maximizing the bubble size of the mini playfield for any given number of players up to 25 for a dynamic stage size (how many bubbles are in a playfield horizontally and vertically) for a screen with a varying aspect ratio so they all fit nicely on the screen in a grid of varying size.

I expect that at especially at the beginning and in playtests, there will not be 25 people in the queue at all times to play which made this topic that has been in the back of my mind so important. The people who want to play should be able to, and also if you want to play with just a big group of friends, Bubbits should be able to accomodate. Visually appealing, not with half baked AI to fill up the screen. Its not fully finished, still some issues to tackle, but I'm happy with how its working out already!

Kinda doubt it but if anybody is interested in any specifics or has any questions feel free to tell! Without further ado, here are some screenshots!

proud violet
proud violet
#

Hello you beautiful human! Revisited my debug draw and added some new features to show off the logic behind the visuals, lots of new things to see in there, hope you enjoy!

proud violet
#

sometimes, its the small things that improve a UI, can you spot the changes? ๐Ÿ˜Š

midnight wedge
#

Stroke and margins? Anything else? ๐Ÿ˜„

proud violet
#

exactly! the little things ๐Ÿ˜Š technically i used setShadow ๐Ÿ‘ it really brings more contrast to the white letter on light blue background

proud violet
proud violet
#

And yeah, you saw that right you guys, I pondered for a few days and then decided to localize Bubbits ๐Ÿ™‚ huge decision, a new kind of workload added to the project, but I am really happy that I took it!

Using Rex's Translation Plugin, it took just 1-2 days to adjust most of the text objects to seamlessly translate. That paired together with brand new functions for the @pale quail DropDown List so it can be controlled easily by keyboard/gamepad! โœจ โœจ โœจ

#

To everyone reading this: I am looking for gaming people from Japan/China who would be willing to help me doing those translations properly, I wouldn't want to have machine translations that sound silly in the end ๐Ÿ˜„ Please get in touch! (For other languages also if you feel like you'd be happy to help!)

proud violet
#

hey guys, its just a small update today but one really dear to my heart. its been some time but now we have finalized the first character concept for Bubbits.
Meet Kitsune ๐Ÿ˜Š

proud violet
proud violet
#

Steam Rich Presence working ๐Ÿ˜ƒ

proud violet
#

Toasts!

#

And the final concept for our new Flow her design has changed quite a bit from her initial rugged outfit to better reflect that she is done running and dying and is now living her retirement life on Bubbits Island

#

Its hard to show, but I have been working a lot on netcode the past few weeks. I think I'm on the right track now to keep desyncing to a minimum and desync resolves as clean as possible, but building a multiplayer game is hard blinky

proud violet
#

๐ŸŽ‰๐ŸŽ‰ Locales ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰

fiery juniper
#

This looks amazing!

#

Is it released?

proud violet
proud violet
#

As a little something for you awesome humans who watch this space:

45GMC-XKIXT-3GTDQ
5837R-0PEPQ-0DJB5
BYMJH-9WIBI-G56AH
PYYVI-RCG6V-5DTQN
X25BX-00JAP-C6T73

A few steam Keys for Bubbits. The game has bugs. The game is unfinished in various places. If you grab a key, let the others know if you may ๐Ÿ™‚ And if you have a play, i would love to get some feedback about the game in general and how your first use experience was!

#

Oh, and please activate the technical test beta branch to get the newest version ๐Ÿ‘

fiery juniper
#

I am not able to use my PC (and steam) right now unfortunately, will this ever be available for iOS or the browser?

proud violet
#

Dev version runs in browser, mobile is planned after the steam release sorry my guy!

proud violet
#

please give a wet welcome to our first finished hero: Felix jigglywow

proud violet
#

the whole bubbits crew is together now. i didnt do a single of these brush strokes but let me tell you it has been a long way to make that happen ๐Ÿ˜ƒ who's your favorite?

proud violet
proud violet
#

New Bubble Pop Animations!

proud violet
#

The VS Mode has not been updated in forever, up to now it basically was a barebones way to 1v1, one round, back to menu. That has now changed! Now the mode is worthy of being called VS. 2-4 players, dynamic Playfield positioning and scaling, and it is now a BO5 style game where you need to get 3 wins to win a match.

it was a bit more work than anticipated because up to now, a match wasnt meant to last for multiple rounds and I took the route to not destroy and recreate all playfields but to reset them without having to recreate them. Both roads would have needed some work to make it look good, but resetting playfields was indeed a big endeavour. a lot of moving parts in there that needed to be resetted properly ๐Ÿ˜„

proud violet
#

Options Key bindings now rendered with the Prompt font according to the currently active input device. Rebinding gamepad buttons would also be nice, but maybe i will wait until someone complains about it to implement it later on ๐Ÿ‘€

proud violet
#

I posted a lot of Bubbits content in here throughout my time developing this game, why not go for something different today. If you are up for a little challenge, read on:

In this block of code is an error. You should be able to deduce what is wrong without any knowledge of other parts of the code. This is a part of the backend code that gets called if a player uses his powerup Best of luck! (it is a silly mistake really and it lead to very strange things in the game haha)

sonic plume
#

I just came across your Bubbits thread and have been trying to digest all of the great knowledge sharing. Thank you for that! I'm getting back into Phaser dev again after a few years away and I have been staring at my game's codebase often. I'm going to say your mistake was in line 131? Missing 'room' from this.room.state.activeEvent?

proud violet
sonic plume
#

Ohhhhh, line 138, the last parenthesis is outside the curly bracket! I added an extra period to my code value the other day and took me forever to find the issue lol

proud violet
sonic plume
#

Ohhhhh! Well, I tried lol.

tough coyote
proud violet
tough coyote
#

Ahh I see. We may need that as well. Can you bring it into phasers random library somehow. Or will I need to write my own random choose from algorithms as well?

proud violet
#

I wrote a small wrapper around it with the functionality I need, has nothing to do with phaser (i dont use phaser in my backend ๐Ÿ™‚ )

tough coyote
#

ahh makes sense. Thanks for walking me through that

#

was just coming back to ask if you had an example XD

proud violet
#

I am really happy with my solution, hasn't failed me yet!

proud violet
#

Tonight I have the pleasure of revealing the logo for Bubbits to you. Overall it's not an important thing, but feels wise, it feels absolutely awesome to finally have a logo after working on a project for a long time ๐Ÿ˜ƒ

mental crater
#

yoo

proud violet
proud violet
#

Now this has been a long time coming. I have thought about a UI Element like this for 2 years and now finally implemented it. Every player who logs onto Bubbits for the first time will get their very own Bubbits ID. This document can be customized in various ways and represents their journey. Art is placeholder. With that came a second customization screen tab. Thats awesome because the previous versions only customization tab now has 2 fewer buttons and is a bit less cluttered.

A huge change visible in the video is that a few of the Bubbits ID Customizations allow to have multiple items activated at the same time. the menu was absolutely not made for that and needed some proper convincing to allow for that ๐Ÿ™‚

mental crater
proud violet
proud violet
#

Hey guys, I got something for ya! video too big for discord ๐Ÿ˜ฆ so youtube unlisted it is!

https://youtu.be/OjytFDPQVTQ

Video is a bit longer than what you've seen up to now showcasing the new menus, steam mtx integration (looking at that transition from game to steam overlay makes my inner monk very satisfied), and some royale gameplay to top it off! Have a nice weekend!

proud violet
#

Hey guys, you know me a bit by now, I really like the small things in life. Like the most recent UI Element I built, art not finished, but i really like the functionality ๐Ÿ˜Š

proud violet
#

First real Character animation test ๐Ÿ˜Š

proud violet
#

Hello you beautiful people ๐Ÿ™‚ long time no see! bad health sucks. what does not suck however is the brand new Bubbits Daily Challenge mode! Really like how the first version plays already, its a survival kinda arcade mode with ramping difficulty and a daily highscore leaderboard ๐Ÿ˜ƒ

#

A big challenge to make this mode happen was to find an efficient way to still validate a singleplayer game mode on the server with reusing a lot of the core server functionality without having to create a new game room for every players that plays his daily challenge ๐Ÿ™‚

empty gyro
#

Looks really cool!

proud violet
#

Hello again you beauties, today I am very happy to show you our first animated Outline Block, Lava Deluxe! I wasnt sure if animating the outline distracts too much from the gameplay but I think this is subtle enough to add to the visual fidelity but not take away from the gameplay, what do you think? ๐Ÿ˜Š

onyx quest
#

Hi, nice to meet u
Am looking for a phaser developer
Are u a phaser developer?
if so that, plz dm me

proud violet
magic sparrow
#

Hey @proud violet , how did you end up implementing those Steam microtransactions?

proud violet
#

its got some bits and bobs though to get a grip on the data flow required for it to work

#

if you face anything major feel free to reach out!

magic sparrow
proud violet
magic sparrow
#

Apparently you need an intermediate API like this?

#

Or did you do it a different way?

proud violet
#

ah, at first sight, i think what that is, is what I use my backend for ๐Ÿ™‚

#

i implemented the necessary calls for that in my backend myself yeah, no third party anything for that end of the flow

#

i think what they mean is, you shouldnt call these things from your game itself but rather from a trusted resource (your own server)

#

start of the transaction flow happens at the client side through steamworks.js, then gets routed to the backend for validation and finalization

magic sparrow
#

Right so given I am using Firebase I should probably look into some library that connects Steam and FB

#

I guess I need that anyway for user auth

proud violet
#

do you use steamworks.js in your frontend? (the user auth server part i also do in my backend without any third party lib)

magic sparrow
#

I havenโ€™t started yet so I am open to suggestion.

proud violet
#

well i dont know about you, but for me it was like: Am I comfortable with talking to a WEB API from my backend? sure thing. Am I comfortable writing a wrapper myself around the c++ steamSDK myself? absolutely not. there are not a lot js steamsdk wrappers out there. there is greenworks and steamworks.js really. however, as i was just looking up greenworks because i didnt know the name, it seems they have started updating it again now (when i looked at it last year, it was pretty abandoned since 2018).

Long story short: i dont know if greenworks is a better choice now or not. steamworks.js does most of what i need without any issues.

magic sparrow
#

Fair enough, thanks for the tip.

proud violet
magic sparrow
#

My other option is to use Xsolla I suppose.

#

They also have a Steam solution.

proud violet
magic sparrow
#

I have had a Zoom with the local Xsolla guy. Given I will be running MTX on the .io site as well, it makes sense to go through them even though it is an extra cut to pay.

proud violet
proud violet
#

Gotta be able to tell the players whats new in the game!

The last weeks have been interesting working together with freelancers to get the ranked crest assets done. wasnt easy (is it ever) but I'm really happy with the outcome, have a look at the diamond rank!

proud violet
#

Steamdeck build wasnt launching for reasons unknown to me at some point in the past months, tried to get to the bottom of it today.
Good news: its working again. Bad news: if you launch it, then close it, then launch it again, almost all images display as black boxes. if anybody has any clue what might or could cause such a behaviour, please do tell! I have no idea to be honest.

proud violet
#

hey guys ๐Ÿ˜Š today i got some love for the Bubbits ID Ranked Crest for you, some timelines, some fx

proud violet
jade raft
#

You are still working on this? Its more than a year?

proud violet
#

For sure! Been working on it on and off for 5 years total now and for the past 2+ years more intensely!

proud violet
#

Today I got a more dev log kind of post for you guys ๐Ÿ™‚
Rewriting Gameplay Systems that are tightly integrated into the core gameplay loop that needs to get replicated to other players perfectly is always very scary for me. This week I rewrote parts of the sending bubbles to opponents system to allow for more varied gameplay options. if you take something like that apart, the game does not work until its all put together again, so you can only start testing after quite a lot of changes.

of course, things broke here and there and some fixes were quickly found. other fixes required a more thorough investigation and I found myself in a place no programmer ever likes to be in: race condition hell. needed a bit more diving, logging and thinking to get to the bottom of this one, but it seems like i got it all working again in the end ๐Ÿ™‚

sly shale
#

How to play? The site say is coming soon, any possible date?

proud violet
magic sparrow
#

Race conditions do suck. ๐Ÿ˜ฌ

proud violet
#

I'm a very happy boy to show you the first 2 finished character animations for Bubbits, meet: Jackie Pan ๐Ÿ˜Š

Idle is a simple frame by frame animation, the action is a frame by frame animation that works in tandem with timelines influencing him and other sprites ๐Ÿ˜ƒ

proud violet
#

Today I would like to present to you the new powerup ui, you could already see the backdrop in the last video. for the past years i had shitty icons i made myself and i am soo happy to finally be able to get rid of them, have a look!

proud violet
#

today i worked on a long running topic, which is the algorithm that calculates all the positions where bubbles you receive are placed.

what you dont want is that it just fills every hole there is from top to bottom. its very boring. what you do want is that you start adding the bubbles to the bottom edge of existing bubble structures. also, you want to add them in random x position places if its just a few bubbles.

did a bit of refactoring, and finally solved an issue that prevented some free places to be filled when possible. however, there is still one kink i'd love to solve, but at least for today, i didnt get a good idea on how to approach that one. it is apparent in the right video, can you spot it? ๐Ÿ˜ฎ

proud violet
#

I had one more idea and managed to fix it. I am elated ๐Ÿ˜Š

if(x == this.matrixSize.x-1){ // Outer column where only every 2nd row has a position in the playfield
            if(y%2 && this.smallLineIsOdd) y--;
            while (
                this.isPositionInPlayfield(x, y - 2) &&
                this.isPositionFreeInPlayfield(x-this.smallLineY(y-1), y - 1) &&
                this.isPositionFreeInPlayfield(x, y - 2) &&
                !isPosInArray({x, y: y-2}, alreadyReceivedBubbles.map(recBubble => recBubble.pos))
            ) {
                y-=2;
            }
            if(this.isPositionFreeInPlayfield(x-this.smallLineY(y-1), y-1) && this.isPositionFreeInPlayfield(x-this.smallLineY(y), y)) return undefined
        }else{
            while (
                this.isPositionInPlayfield(x, y - 1) &&
                this.isPositionFreeInPlayfield(x, y - 1) &&
                !isPosInArray({x, y: y-1}, alreadyReceivedBubbles.map(recBubble => recBubble.pos))
            ) {
                y--;
            }
}```

Its the content in the first condition part of this if clause. madness. ๐Ÿ˜ฌ
sonic plume
#

I love it when I fix something that was broken! Nice work!!

proud violet
#

On we go, another bit more complex issue that I avoided to work on for 3 years.
It's about handling 2 types of special bubbles properly in edge cases. one of the bubbles is called levitate, another one stone, its the blinking and non blinking "tech" looking object in the playfield. levitate can only be cleared if you clear every other bubble around it, otherwise it keeps levitating all the bubbles its connected to. Previous solution: try to avoid that situation in generation. I did manage that for the most part, but technically, super rare edge cases could still occur.

Issue: Levitates right next to other levitates or stones. if that ever happened, the only way to clear is a certain powerup because they would keep levitating each other.
Solution: Make them pop/drop if the whole cluster they create only consists of levitates/stones. It's of course not rocket science, but because all the functions that have to do with finding clusters are recursive, it's a bit more difficult to fully wrap my head around it. ๐Ÿ™ˆ

proud violet
proud violet
#

Ah, refactoring jigglywow

proud violet
#

what you need to be able to access attributes like that:
interface YourInterface {....., [key: string]: any;}

proud violet
#

So stoked to share the first new Cannon design since 2022 with you. I think the artist did a superb job, it looks absolutely stunning ๐Ÿฅน

proud violet
proud violet
proud violet
proud violet
#

https://store.steampowered.com/app/2483270/Bubbits/

The Bubbits Steam Store Page is now officially online ๐Ÿ‘ฏโ€โ™‚๏ธ ๐ŸŽ‰๐Ÿ‘ฏโ€โ™€๏ธ

It's been a long 5 years since the first lines of code were written. It would literally mean the world to me if you human who reads this considers helping me by putting Bubbits on their wishlist and might also consider sending this along to family, friends and colleagues who might like the game. This game has been my life for the past years and I have tried my hardest to put the very best of me in there, every day anew.
โค๏ธ
I am very grateful for all the help I got on this journey and especially in this discord. A Special thanks goes out to @ocean rover @pale quail @tacit falcon @kind arch @magic sparrow and many, many more who had words of wisdom or guidance for me and helped me A LOT in one way or the other. I appreciate you guys very much.
โค๏ธ

Get ready for a fresh take on the classic Bubble Shooter Genre with Bubbits! Wishlist now and join the bubble-popping revolution today!All Game ModesBattle it out in massive 25-Player online Battle Royale matches or go head-to-head with friends in the intense 2-4 player VS Mode. Take on the world in the Daily Challenge, or embrace the timeless C...

Release Date

Coming soon

โ–ถ Play video
proud violet
#

But only because the WHOLE world now knows about Bubbits wont mean my Phaser Crew stops getting to see things first. on todays Menu: Snap Bubble Visual overhaul!

ocean rover
#

I'd like to say I know what's going on there, but I don't have a clue. Very pretty though ๐Ÿ˜„

proud violet
# ocean rover I'd like to say I know what's going on there, but I don't have a clue. Very pret...

This is how they looked before, basically a slightly visible beam of light. Mechanically, the Snap Bubbles itself are pretty interesting for a Bubble Shooter though, let me elaborate!

Usually, even special bubbles just have a certain behaviour they have at all times, no matter when you shoot them. The Snap Bubble pops bubbles in a line when hit, but the line that gets popped rotates every second which introduces an element of timing into shooting that bubble to cut where you want it to cut!

Code wise its even more interesting, because as Bubbits shots are calculated without simulating the flight bit by bit but at once, the shot calculator must take into account the time the bubble flies until it hits the snap bubble (could have already rotated again and again by the time the bubble arrives!)

ocean rover
#

gotcha! and blimey ๐Ÿ˜„

proud violet
proud violet
proud violet
proud violet
#

Fingers crossed we make it guys ๐Ÿคž

proud violet
#

About time that I finally built that. Bots in Bubbits (Bubbots!) now also feel the whale if you whale them and perform worse. Take that AI!

proud violet
#
rankText is a number between 1-25, sufftext is either rd, nd, st or th. sufftext should be displayed right next to rankText and the tops of both texts should be aligned. the fontsize of rankText should be double of sufftext and I would like the font for ranktext to be as big as possible so both texts still fit within this.bg with a margin of this.bg.displayheight*0.1```

Cursor understood that and delivered. I am somewhat disgusted and amazed at the same time. we are so doomed ๐Ÿฅน
proud violet
#

Oh, and I have been a smart boi this week fellas! Instead of working on very much important robustness things, I built a new powerup. smart!

proud violet
#

rewrote some of the mini playfield scaling and layouting service, really happy with the outcome โœจ โœจ โœจ

proud violet
#

Guys we going places

proud violet
proud violet
#

deciding to overhaul the main menu 1 day before demo release has been one of the more stupid decisions i have made during the development

#

not fully finished, but what do you guys think? all worth it? (new one is the one with the logo in it)

magic sparrow
#

I would use all caps on the top line, or add some height

#

as it is the text looks off centre

proud violet
proud violet
magic sparrow
#

The capitalised letters are centred but the lower case ones are not

magic sparrow
#

I feel like this is why such links are almost always icons. Camel case text is hard to make look nice, and all caps tends to look shouty.

#

Numbers are fine but beyond that itโ€™s usually best to keep it minimal with icons imo.

proud violet
#

I'm still not sure I understand sorry ๐Ÿ™ˆ๐Ÿ™ˆ

proud violet
#

Battle for the Daily Challenge crown today, INTENSE https://youtu.be/VSFfVr2gyVc

https://store.steampowered.com/app/2483270/Bubbits/
Pop your way to victory in a colorful next generation Bubble Shooter. Perfect for casual and competitive players alike! Compete in a 25 Player Battle Royale, Play VS with friends or go Solo. Customize your Playfield, unleash Power Ups and experience crazy battle events that shake up the game!

โ–ถ Play video
proud violet
#

VS Mode 2.0 pickaxe

proud violet
#

I may or may not have once again gone on a coding spree to maybe get a new feature in before Steam Next Fest hits. It may or may not be that VS Mode 2.0 thing.What I can say is: Refactoring online systems that were tailored to one player to allow for multiple is hard. ๐Ÿ‘€ SO HARD JESUS.

I basically overhauled the whole way devices control the game to allow for both keyboard and multiple gamepads to be active and control different parts of the game. to also allow for online vs to have multiple local players on the host: insanity. what i did to colyseus today, nobody can ever know.

white nymph
#

Well done! ๐ŸŽ‰ I had a similar experience when I had to support single player with AI players via Colyseus. I think supporting local play would be too much for me. ๐Ÿ™ˆ

proud violet
# white nymph Well done! ๐ŸŽ‰ I had a similar experience when I had to support single player wit...

thank you ๐Ÿ™ im not done yet though and there is still no end in sight for the overhaul. its one of these projects where you begin not knowing what the whole undertaking really entails haha.

For AIPlayers I basically build an AI Entity i can use in both front and backend. for now i just use them in the backend so for colyseus they are pretty much like normal players except the client+connection part.

What I wanna allow for the VS Mode 2.0 is basically almost everything thats physically possible. the one thing i currently am HIGHLY unsure if i can make it happen is that 2 game clients connected together can both join with 2 local players. right now only the host can add local players.

I hope in the end it will all work out somehow ๐Ÿ™‚ right now you can mix both, host+ more local players on host + bots + multiple other remote clients. it's a headache topic thats for sure awkward

proud violet
#

Pfew. Busy weeks it have been. VS Mode 2.0 is now live on the steam Demo. Local. Online. VS. Coop. Teams. CPU/Bots. Adjustable CPU Difficulty. Player Customization. Different Playfield Sizes. Keyboard+Gamepad(PS,Xbox,Steam Deck) Support.

It's all there.

tacit falcon
#

I see you live on steam right now ^_^

proud violet
proud violet
#

Steam Next Fest Day 1 ๐Ÿ”ฅ ๐Ÿ”ฅ

Is what i say on twitter. however, phaser fam, we can be real here can we not. its still very low numbers, fighting for visibility in the gaming market today is hard as a nobody. but we shall venture on! onwards and upwards!

proud violet
proud violet
#

the points of impact of the bubble are random spots on her umbrella realized through getting random points of a triangle that matches her umbrella

proud violet
#

Steam Next Fest has come and gone and in the meantime I have been cooking up something new!

I wondered how much work I'd have to put into Bubbits to mimic how every single Mobile Bubble Shooter works today:

To break it down, it's basically a Playfield thats a lot higher than whats visible on screen and as you clear stuff, it descends until you can eventually see the top row and clear that.

Of course, it didn't just work, I had to adjust some systems here and there, but nothing too special (except I have now finally come around to adjusting the playfield layout algorithm to be 100% dynamic. Before, it worked well enough for all the playfield sizes I used in the game, but didnt work on some bigger ones. I will attach ugly whiteboard sketch below!)

See in Video: The new Bubbits Puzzle Mode!

#

It's absolutely no rocket science, but fully dynamic playfield scaling and layout of everything in it is not as straightforward as one might think. If I have something like that at hand, it really helps me to visualize it to be able to fully think it through ๐Ÿ˜ƒ

proud violet
proud violet
#

Just a really small thing i simply didnt do for years: Outline Resize memory. Before, if a playfield got resized, the outline blocks got recreated and every block was a random block id again. now, every block gets the same id again, looks a lot more clean ๐Ÿ™‚

proud violet
#

I don't wanna go too far with analysis takeaways as players numbers were low, but it does say something. whats your take guys?

proud violet
proud violet
#

I cannot upload the video here because my nitro ran out, but have a look over here for some World Map Prototyping I did the last 24 hours! Nowadays I show you rather polished features most of the time, this one is a lot different.
https://twitter.com/TeamFlowOfcl/status/1851659016893497371

I think every programmer will know this very well in one way or another: If you develop a product and you are in the second half of development, you work a lot of hours and have only little visible progress most of the time. It's not that satisfying, but necessary if you try to shoot for a certain level of quality and complexity. It felt great to once again just prototype something, get your hands dirty and have that rapid progress for every hour you put into it ๐Ÿ˜Š

Usually I present to you polished features, let's change that up a bit today: First prototyping footage for a World Map / Level Select (Adventure Mode?)! Got any wishes fam? #gamedev #indiedev #worldmap #levelselect Bonus points if you like @Creepy_Nuts_

proud violet
#

How it starts when I'm working on something new? Singleplayer 2.0 Brainstorming Session: Adventure Mode

proud violet
#

This? Oh thats nothing. Just Bubbits running as a Discord Activity. cooldoge

white nymph
#

Very nice! ๐Ÿ™‚ I looked at the guide for getting started but it looks like too much work for me.

proud violet
white nymph
stark sierra
#

I build a whole app a while back,honestly found Disc awesome. They use circular Defs, so like, there is no global this, just a Discord object. I guess Phaser does the same thing, but different? this.scene.parent.scene == this.scene

proud violet
#

Bubbits got mentioned in a Phaser Announcement in the Announcement Channel am I fame now jigglywow

ocean rover
#

We had some good rounds of it! Was fun ๐Ÿ˜€

magic sparrow
#

I am getting Connection error - Wrong Version on Steam even after restarting and DLing latest version

stark sierra
#

Yall so deep, where's the 1/2/3 for starting a Bubbits game in Disc, lol

#

@ Flow, just post the link every so often in here so peeps don't have to scroll up ๐Ÿ˜„

proud violet
proud violet
proud violet
#

Bubbits Saturday Daily Challenge! Take a shot at me! ๐Ÿ˜Š The Daily challenge is a one attempt per day mode that gives everybody the exact same Challenge to compete for the highest score! For somebody thats not familiar with how Discord activities work:

  • Join the games voice channel on this Discord
  • Click the Start an Activity button on the bottom left
  • Look for Bubbits!
proud violet
#

Pop pop jigglywow Working on overhauling the Level Editor. I really dont like it much to spend time on building tooling for myself, but now that Singleplayer Content will be a thing, it's a necessity to have a not pretty but working environment to create content ๐Ÿ™‚

stark sierra
proud violet
#

Level Editor 2.0

proud violet
#

from sketches to another completed set of animations! Todays star of the show: Leo ๐Ÿฆ

proud violet
#

Hey fam ๐Ÿ˜Š Lets start the year off with something fun! Something unnecessary! Something you shouldnt spend precious time on but do it anyway because your inner voice told you so.

So the cool cannon have an effect called ripple pop. it leads to bubbles not popping all at once but after one another.

For V1, the pop delay was calculated via distance from start bubble to popped bubble.

For V2, the pop delay is calculated based off the numbers of connected bubbles in between which leads to what you see in the second part of the video. My inner voice told me I needed it to be that way.

proud violet
proud violet
#

First Cannon that brings their own Special fx with them ๐Ÿ˜ƒ I really like that ๐Ÿ™‚

proud violet
tulip frost
#

listen to your inner voice ^^

proud violet
proud violet
proud violet
olive fulcrum
#

Seeing that everybody uses midjourney/ buys assets I am beginning to think I am the only idiot who draws his own stuff...

Great thread tho. Lots of info especialy i learned a ton about steam side of things which does not look so 'easy peasy' after all!

proud violet
olive fulcrum
#

That supports what my colleague (from work but we both are into gamedev) said lately... "Discord and forums are flooded with artists who dont draw but use midjoruney or stable dif spinned locally" .

I mean I don`t say I am great artist. Most of my games look just tad better than the flash games I used to play as a kid haha

#

but it`s cheap.

#

btw @proud violet do you have some exp in posting game on platforms like itch.io or lets say kongregate? I am thinking of those to post my 'blood and sweat' and if it happens to generate some tiny income that is even better.

proud violet
# olive fulcrum That supports what my colleague (from work but we both are into gamedev) said la...

"That supports what my colleague (from work but we both are into gamedev) said lately... "Discord and forums are flooded with artists who dont draw but use midjoruney or stable dif spinned locally" ."

yeah people wanna make a quick buck. if you used those things yourself before you can see pretty quickly though when you look at portfolios.

sadly cant help you with itch or sites like kongregate. even though i only ever built an endless runner and a bubble shooter, the only platforms i have experience with are Steam, Google Play and the App Store :9

olive fulcrum
#

i was considering to release my game to mobile too but:

  • i suck at **implementing **the nipple (ok that sounds odd)
  • scaling the ui gonna be a *itch since developed mianly for desktop
  • performance is key. I am really afraid game wont work well on mobile forcing further caping of objects in the scene
proud violet
olive fulcrum
#

hah, good advice.

proud violet
#

I truly cant wait to find out what causes that. I tried to hook into everything that has to do with color and play animation and still dont see it. houdini bug.

olive fulcrum
#

happens evritim? or my favoruite kind of bug (random)?

proud violet
#

guess we will never know what it was

olive fulcrum
#

Very odd... Haha yeah well if you got a WA then it aint a severe bug like we used to say

proud violet
#

testing a new feature on how to project receiving bubbles. currently you just had that ui on the bottom right with red and yellow bubbles like the old bust a move titles.

The new feature projects where bubbles would be added to the playfield. IF it stayed the same. As the bubbles get added after each shot fire and added to the playfield, it never stays exactly the same. taking all that fact entails into account was quite an intricate matter, but I think it works pretty well now thumbsupdraw

proud violet
#

Working on Bubbits Light currently. Project 5%. Normal asset size is around 250MB, for Bubbits light I am down to 25MB now. Gotta go lower. Resized the base images for my 3 slice Button solution. they do look kinda funny now ๐Ÿ˜‚

proud violet
proud violet
#

The Daily Challenge is out now, 1 try per day, playable on web, 25MB package size down from 250MB+ package size. was a wild past few weeks, but I think I didnt compromise too much on quality ๐Ÿ˜ƒ

proud violet
#

so that happened. thanks to @rigid forge for that one MoriEyes

proud violet
proud violet
#

hey guys! I rarely wanna ask for something thats not phaser me stupid issues, but today I would like to ask for something: Your Help. If you'd like to help a dude who spent the past 5 years and a chunk of his life savings on his phaser project, read on blobthumbsup
So I talked to marketing humans in the past couple of weeks and got some more insight into various topics and with one thing, I need your help! For the Bubbits Steam Demo to get considered by the Steam Algorithm, it needs to have at least 10 reviews.
So if you'd like to help out, it would be superb if you:

That would help me out greatly ๐Ÿ™‚ โค๏ธ thank you so much!

olive fulcrum
#

I need to remember to not show it to my wife or she will get sucked into the game!

#

I will give it a shot tomorrow

proud violet
proud violet
green skiff
#

whoa just saw this thread -- this is nice! definitely the type of game i would have gotten addicted to as a child (and probably now if I didn't learn how to moderate myself lol)

proud violet
#

Sooooo I programmed my ass off for the past month and participated in the Reddit Hackathon 2025! Reddit x Bubbits - Puzzle Challenge. head on over to https://www.reddit.com/r/Bubbits/ and have a play will you blobthumbsup DanceDogDanceDogDanceDogDanceDogDanceDogDanceDogDanceDog

stark sierra
proud violet
# stark sierra What's the motivation here? I'll leave a review, actually @Phaser would maybe b...

Let me first address the review ๐Ÿ™‚ That would make me very happy! Also: This is literally the only place I have publicly asked for help. This discord and more specifically this thread has been the place where I have been sharing my Bubbits development journey with you guys for the past couple of years. I don't have the funds to run big ad campaigns and not the wit to go viral. But you know what, you just added the 300th Post to the thread ๐Ÿฅณ Who would have thought it would get that long?! haha, I certainly didnt. That said, up to now, nobody helped. Which is fine ๐Ÿ™‚ (No really, it's fine.)

Now onto the good stuff: Motivation: Bubbits lacks visibility. Both overall and on Steam.

What can I do? What could work? Idea: Leverage what phaser actually is and does best: Web. Build something that people can play wherever whenever (that includes not having to load 300MB for the game to start).

First Step was: Bring the asset size down. Completely remove customization (asset heavy) from the game. Only enable Daily Challenge Mode. That was the Bubbits Daily Challenge Demo

Second Step: Try and optimize asset size while bringing back customization and more. I am not where I wanna be size wise, but size to first load is now at ~33MB. Customization is back with ~40% of the full customization options in there. I rebuilt how music is loaded (from preload all tracks to dynamic loading), built a way so full and Demo players can both play in the same royale matches despite having different customizations.

That all lead to the third step: Release Demo 2.0 on https://bubbits.io/ 25 Player Royale Mode included, Customization, Daily Challenge, and Adventure Mode. And not just that, Bubbits is partnering with https://playlight.dev/ and has been one of the launch titles for the Playlight launch 2 days ago! There never was a better time to play Bubbits JediDance

Bubbits

Play the best free online bubble shooter game! Enjoy the 25 player battle royale mode, daily challenges, or the classic adventure mode. Play now in your browser!

#

(wait what, IS THAT THE NEW BUBBITS KEY ART IN THERE?!??! woah )

proud violet
#

Started working on a controls Tutorial that integrates into the game without hindering gameplay

stark sierra
#

Awesome stuff! So, idk, it's inspiring to watch you work....it's like the opposite of LinkedIn techhustle motivational canards, but it has the exact intended effect: your devlogging inspires me to keep thinking about the future in realtime. I think that's what fights creative burnout, you set goals and see them through and there's some friction to setting more goals that didn't exist when you first had the idea. Integrating controls and demos and just the incredible slog of adding allllllll the art

So,ya, thanks!

PS: great answer, but I meant what were you thinking with "lightweight" and reducing stuff...were there issues or you're just optimizing for load sake?

proud violet
# stark sierra Awesome stuff! So, idk, it's inspiring to watch you work....it's like the opposi...

blobheart

"PS: great answer, but I meant what were you thinking with "lightweight" and reducing stuff...were there issues or you're just optimizing for load sake?"
oh! im not sure i understand ๐Ÿ˜„ I mean like for Steam, a Package size of 300MB is barely anything. For web, a 300MB Package size to load on site visit is crazy, at least if its not a big game where people expect that size when loading up the game (even then, 300MB I think is very big).

rigid forge
#

Remember us when you are famous and ridiculously rich!

rigid forge
#

๐Ÿ˜„

proud violet
#

Fingers crossed!

rigid forge
proud violet
#

thanks again @simple hedge , i might hit you up tomorrow for some tuning help ๐Ÿ˜‚ still WIP, but its coming together. see design vs in engine

simple hedge
#

Looks great sluglove

proud violet
# simple hedge Looks great <:sluglove:971762409469530152>

haha thank you sir. the dot pattern is very different to the design, im not sure yet what i like better. so many things that can be tuned differently (and i still havent fully understood all my possibilities in that update function lol)

#

math can be pretty cool!

proud violet
# simple hedge Looks great <:sluglove:971762409469530152>

hello! do you have an idea on how I might discern whether all dots are currently invisible? the way i see it is i should be able to empirically determine a value area that if i modulo it, it should always match that point of the animation?

simple hedge
#

It's about math, really. If you use a custom timer variable that starts at 0, you have to think about the cycle in terms of pi. If you for instance only want to display the wave N times, you'd want to clamp the timer+offset to something like 2N*pi such that the sine stops spinning

proud violet
#

i might be close enough, thank you blobheart

simple hedge
#

Another possibility is that you pull out the time variable and tween it, allowing you to decide the wave movement yourself using easing or yoyo

#

You could think of it as variable T determining where the peak of the wave is

proud violet
#

or not. different aspect ratios different timings. well, cant always be perfect ๐Ÿ™‚

simple hedge
#

No, I mean you use one tween for the time variable used in the sine. Time normally just ticks up so it's linear

#

But yeah, first thing to look into would be the sin(clamp(time+offset, 0, n*pi)) or such

simple hedge
#

Still starts that 3rd cycle and then aborts it

#

Should be fixable if you limit whatever is inside of the sin to like max 4 pi since then it won't do more than two "rotations"

#

Looks fantastic though โœจ

rigid forge
#

Soundtrack gives me serious Super Smash Vibes or Meeting Bowser.

#

๐Ÿ‘

proud violet
# rigid forge Soundtrack gives me serious Super Smash Vibes or Meeting Bowser.

oh yeah thats some videogame bgm mix. i often listen to those while coding. here is my favorite one. so gud https://www.youtube.com/watch?v=_pEdP-zCwbw

Recorded from Sega Genesis, Model 2 w/discrete YM2512 + line out mods + MegaAmp via Tascam US-1x2 @ 24/44

00:00:00 Valis - Deja-Vu
00:00:54 Arcus Odyssey - Map
00:02:21 Final Zone - After the War
00:06:47 Mega Anser - Bank Menu 2
00:09:05 Light Crusader - Status Screen
00:09:56 Tanglewood - Storm Warning
00:12:32 Batman - Ending Theme
00:15:05 ...

โ–ถ Play video
proud violet
# simple hedge Still starts that 3rd cycle and then aborts it

it doesnt look great because it doesnt go into the third cycle enough, then the "reverse" run until its gone would look better. but if i wanted it to go further that would change the overall timing with the text and all at the beginning ๐Ÿ˜ฆ

#

i will keep that in mind, hard capping the overall value is smart!

simple hedge
#

It's all about the timing, yeah. Like if you want to cycle through exactly two waves, you just need to time it with the total duration of your thing

proud violet
#

Today I have something else prepared for you guys though. I have had that piece of UI in my mind for a year now since i implemented cannons that work differently. up to now that did all work, but players could really see it on paper whats up. that is finally different now ๐Ÿ™‚

proud violet
proud violet
#

So I built this cool feedback system so players can easily send feedback to me! It gets used very rarely ๐Ÿ™‚ but this morning i woke up to new feedback blobthumbsup

rigid forge
#

It's a great game Flow ๐Ÿ˜ญ

#

I mean come on, this person assumes you are a whole studio, plural!

stark sierra
#

I did the same thing in my actual dogshit not live but literally live game, and I do expect to get literal ASCII dick pics. ๐Ÿ’ฏ

#

It's the bravery of accepting feedback. Keep it up.

#

Again this "dogshit" is a constant inspiration to us all. #1111032126217912400

#

For the record, I'm a huge Bubble Bobble fan. TAITO for life.

#

You're keeping that spirit alive and well in this century, better you than some rando third party "remastering it" for a one time IP-stripmine.

#

Anyway, facts are facts:
0/10 Feedback Integrity
10/10 dudeman there played the game
10/10 Feedback Functionality

proud violet
proud violet
#

The next big thing blobthumbsup it's very normal for io games, for bubbits, the thought of doing this came pretty late. It will be a major undertaking but I hope that it will bring players together as long as there are not enough players to effortlessly meet them when queuing for a royale.

btw, that text gradient animation does look pretty sweet if i might say so myself jigglywow

proud violet
#

The Live Join feature is slowly coming together ๐Ÿ™ the amount of stuff that the game needs to do for this to work is absolutely crazy.
I work with Colyseus and use Colyseus Schemas for the net sync. Fun number: a single Player Object has around 95 top level data points. the whole playfield matrix is just 1 of that.

#

Interesting Topics in the live join:

  • Creating a playfield from a data snapshot at the current latest entry in the action log of a player (that entails all the current power ups like active whales, perfect aim visuals, special bubbles like two face and their current state, etc)
  • updating the whole playfield customization visuals seamlessly
  • Being able to create playfields properly that are already game over and adjust the nameplate and rank for that
  • Biggest thing: Making it possible for a Bubbot AI Player to get transferred to a human Player
  • adjusting various parts to map that player to a new colyseus session id, making sure all calls to the old session id are still routed to the new one and don't just disappear
  • seamlessly hand over control to the player with a full sync at that point in time where the hand off needs to perfectly switch from AI on server to Human on client
proud violet
#

Guys I love a good Training Montage in movies. This is not that, but maybe a little bit. Live Join Feature Code Montage. sound on for vibes

proud violet
proud violet
#

Bubbits has cracked the 1000 Wishlists mark on Steam blobthumbsup

proud violet
#

After lots of integration work, I am super happy to share with you that Bubbits is now featured on https://www.crazygames.com/game/bubbits blobthumbsup

Bubbits is a vibrant bubble shooter that blends classic popping fun with fresh, high-energy twists. Compete in a 25-player Battle Royale, tackle unique daily puzzles, or dive into a solo adventure. Use power-ups, customize your playfield, and adapt fast as wild events keep every round exciting and unpredictable.

stark sierra
#

Whats that look like for you, is it a store or do they pay you outright?

proud violet
rigid forge
#

Are there plans for ads on a platform like this for bubbits?

proud violet
proud violet
#

Launch Day. 611 Players. 1930 Singleplayer Levels Completed. 96 Royale Matches. dogdance

proud violet
stark sierra
#

Ok, bad news first:

#

Seemed to happen after beating stage 1 in solo, after doing the Daily and my internet is being spotty, so on me maybe. Hitting Exit shutdown Steam.

#

Thats it, everything else was absolutely amazing.
Music, graphics, the wave screen wipe.

I did have some like, granular feedback if you wanted a DM!

proud violet
#

thank you!

stark sierra
#

Hrmm, Windows search... Is it in Steam or in my user folder?

proud violet
stark sierra
#

Ill get it in an hour or so.

proud violet
#

Crazy Day 2

stark sierra
#

I get nothing on Search.

#

Windows File Exploer is garbage for decade now ๐Ÿ˜ฆ

proud violet
#

go to your windows explorer

stark sierra
#

Users just has like, the Docs/Videos/Pictures etc folders

proud violet
#

the address bar

#

type

#

%appdata%

stark sierra
#

Yeah, my bad, I bailed after 2 minutes of searching ealier.
The only so far is this

#

Ok, there it is

#

4 minutes later.
But thats where I looked, so, it must be hidden.

proud violet
#

your windows does strange things haha. you should not put it in a search bar

#

but in the address bar ๐Ÿ™‚

stark sierra
#

So, thats the path

proud violet
#

yes

stark sierra
#

And I checked properties, but I cant see how to find hidden, let me go ask the robot

proud violet
#

it should just go there

stark sierra
#

No like

#

No "appdata"

#

Yet.....

proud violet
stark sierra
#

Ok, we're even. I reinstalled a while back and it hid hidden files, because rEaSoNs???????

You gotta go to this menu, and then options, because hey, why would we have settings like this in PROPERTIES of the actual folder, where they've been for 30 years. /rant

#

@proud violet
Alright, in your folder, what you want?
I could zip/email the whole thing if thats preferred?

proud violet
#

logs

#

whats in the logs folder ๐Ÿ™‚

#

just put it in here

stark sierra
proud violet
#

thank you blobheart

stark sierra
#

Lmao oh no

proud violet
#

dangit

stark sierra
#

all this work for that!

#

Sorry man.

proud violet
#

๐Ÿ˜„ thank you!

stark sierra
#

Good luck!
Want me to delete all these messages in here about it?

proud violet
#

nah its all good

#

Crazy Day 2ยฒ

stark sierra
#

I'm gonna go beat that singleplayer!
Is there an end?

#

IDK if I'm ready for BR yet lol.

proud violet
proud violet
proud violet
proud violet
stark sierra
#

Finished the Demo!

#

Where to leave a review for the Steam?

#

Got three high scores, one Time Attack by 10 seconds (Leo!) and two Least Shots, one by four shots.

proud violet
stark sierra
#

Review to you:

  1. Is it intentional to not have at least the first bubble visible on round start?

  2. Are the controls remappable?

  3. Where to learn about game mechanics?

  4. Specifically, how do paddles and rainbows work?

proud violet
# stark sierra Review to you: 1. Is it intentional to not have at least the first bubble visib...

1: I dont think I understand, could you elaborate? When the game starts, all the bubbles in play should be visible.

2: Serious question: Did you try? If so, where did you get stuck?

3: In Singleplayer, the game introduces the special bubbles and basic powerups. For the rest, it's learn as you go as of now. Which parts did you have a hard time understanding?

4: What are paddles? Rainbows are special bubbles that act like they have all colors in 1 bubble

stark sierra
#
  1. The first and or second bubbles you'll be shooting.

  2. No, just wanted to remap for personal preference

  3. Sure, just kinda wanted to browse and make sure its fully understood

  4. The Special Bubble that looks like a paddle spinning around?

proud violet
#

Playstyle update is out now and first numbers from new players choices are in.
Classic: 53
Modern: 109
Not sure if I should cry or be happy ngl

proud violet
#

30 ๐Ÿ”ฅ ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰๐Ÿฅณ ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰ Thank you guys โค๏ธ
Let me show you something special today. I'm working on something super unique, I think it has never been done before

proud violet
proud violet
proud violet
stark sierra
#

Hey, how does the Least Shots + Time high score work?

proud violet
stark sierra
#

Is the last level of every stage timed?

proud violet
stark sierra
#

Within the rounds of a stage?

proud violet
#

I'm not sure if I understood the question ๐Ÿ˜‚

stark sierra
#

Im not sure I understand it while in game.

What differentiates a 1 stage and 3 stage level?

proud violet
# stark sierra Im not sure I understand it while in game. What differentiates a 1 stage and 3 ...

yeah it is not ideal :/ the game doesnt do a very good job teaching for that one. let me first tell you the why, maybe you got a good idea ๐Ÿ˜Š

why: gameplay variety. a stage that takes 15 seconds to complete would be no good as a whole level. however, it can still be fun to play if it flows nicely. hence 3 stage levels, so small stages like those also have their place in the game.

what: every level has a 3 star grading. for 3 stage levels, beating all 3 stages grants the 3 stars. for 1 stage levels, there is a challenge like least shots, time etc that gets you a 3 star grade on completion ๐Ÿ™‚

stark sierra
#

So, hard agree on game theory: I get it, level design, 100%.

That being said, its like, just let me go into "LOVE THIS GAME, user mode":
I just want to shoot bubbits man. I want the game to make that as cool as possible, and, confusion is not cool. I don't mean stage or board to board, like, I just need to really be effortlessly aware of how to succeed.

If every stage has 3 stars, then thats that.
If every star is worth your performance on that level of that stage, then, banging.

#

Its just about the confusion: You select levels from the world map, right? Thsoe have one scoreboard. That scoreboard should be super clear about what it represents....I don't mean how you calculate ties between X and Y, but more like as a player I know what I'm aiming for when I'm playing?

#

I don't know if having combo "time/move" levels wihtin stages is a good user experience. Theres no limit to stages, right? I'd completely separate those, and only have three timed stages on Time levels, and three no-time stages on Lowest Move levels.

#

I went into the demo with the intent to get #1 on every stage.

#

The best experience would be me being aware of why I succeeded or not on each stage.

#

I'd say it was like <50% where I felt aware of what I was being judged on, time vs move count.

#

Amazing game, and, I hope this rambling feedback helps! You're the best!

stark sierra
#

The user doesn't care about how many levels there are, I'd offer, at any point in time? The user is always just playing their best level to level. This would be bubbit to bubbit but you've created the powerups/nerfs + hold that make it deeper than shot to shot, but the user is only ever playing the screen theyre on, right?

proud violet
proud violet
#

Still WIP, but I have been cooking for quite some time on this: The Launch Capsule. Enables combo wombo and also addresses a long running issue: players not really knowing whats going on. I feel really good on this one ๐Ÿ™‚

proud violet
mighty fractal
#

Sooooo polished! Really crazy awesome!

proud violet
proud violet
#

slowly getting there. at first i thought i will base everything off an arc but then i pivoted to using a cubicCurve as base and then specify several tuning thresholds to move, rotate and scale the line on it. now i need to rework the arc mask to instead be produced by the curve line data and i think that might all work out in the end!

#

i use a path follower again and have run into the same freak frame on start follow issue cry

#

there's gotta be something im doing wrong

proud violet
proud violet
proud violet
proud violet
proud violet
mighty fractal
#

Great stuff!

proud violet
proud violet
#

I present to you: an abomination of a commit message. I post this so you may not be too hard on yourself the next time you do something you know might not be the best way to go about something.

Refactors sounds to only be in light folder, add async loader (working semi good) change remote playfield state picking, fix xp backend bugs, fix shield sound bug, sparky overhaul, fix bubbits id level not visible in customization screen, change showmessage to RevealBounceText, add new voice over sfx files, roll out trail to all sent bubbles, fix launch capsule outside positions wrong y, fix Match Results pre match EUP fetch

mighty fractal
#

Sounds good to me....

proud violet
#

the divsion star path follower rewrite is done, sweet! big ups to our resident phaser magician @acoustic copper for the idea to go from path followers to tween chains to avoid all these issues i was having, was a great idea! now i just gotta stop these stars from rotating like they are drunk. but sadly, that is an issue i cannot solve myself ๐Ÿ˜„

#

always a great feeling to go from something more complex to something more simple that does the same job as good or better

proud violet
proud violet
proud violet
proud violet
mighty fractal
#

Gorgeous! Really awesome looking!

proud violet
proud violet
proud violet
proud violet
mighty fractal
#

I like the second one - if that's what ur asking - chaos.

proud violet
#

15.000 players played the Bubbits Demo party_parrot sorry for happy post, next post will be proper content again!

mighty fractal
#

Wow that's great - tho not surprised seeing how polished and beautiful it is.

mighty fractal
#

๐Ÿ˜‰

proud violet
#

I wish I never had to spend time on stuff like this ๐Ÿ™‚ (look at top left bar and then look where the particle emitter thats supposed to match the bar actually is)

I already used this whole setup on another screen. only difference being is that for the other screen, the bubbits id gets added to a container (the container did not get moved in any way).

mighty fractal
proud violet
mighty fractal
#

Been there many times...๐Ÿ˜’

proud violet
proud violet
#

WIP Time! Building out a new system to create cutscene like sequences. that is a lot of building things and then fiddling with it for what feels like AGES until it starts to look like what you want it to look hahaha

proud violet
proud violet
odd turtle
#

Hey nice you got some nice water movement?! Looks great!

proud violet
proud violet
#

(I also did something thats not in the video though! which is making it possible to trigger dialog within a cutscene that plays alongside or pauses the cutscene until its done. tricky!)

proud violet
#

I didnt try to build it like this, but i take it ๐Ÿ˜‚ (first is current item selected border, second is new version). with the old one it was sometimes not easy to see where your selected item cursor is, this one is apparent enough I think!

proud violet
#

new bubbits demo update is out now ๐Ÿ‘€ come play, see animated water and tell me its not gud enough froge_sad https://bubbits.io

proud violet
#

today I got to finally implement a fullstack feature that was on my bucket list for half a year now: Island Champions. For each level of the singleplayer adventure mode there is a highscore list, buuut wouldnt it be cool if all of those highscores lead to something more? become an island champion, your name on a billboard that just stands around somewhere in the world map (visuals still WIP)

proud violet
proud violet
#

My goal for the whole quest ui is to make it as simple as it could possibly be while being as juicy and entertaining is possible. Having played the CoDs and other F2P titles, the menu diving you gotta do to get to and claim stuff can be pretty insane. I don't want that for Bubbits. Starting the design as simple as possible, only get more complicated if its truly needed.
Overall, fullstack designing a flexible quest system with questlines, quest rewards, and tasks ranging from surviving a certain amount of time in a royale match to just customizing your avatar has been pretty challenging and a lot more complex than I hoped for/anticipated ๐Ÿ™‚

proud violet
proud violet
proud violet
proud violet
#

whatever it takes hungryyy

proud violet
mighty fractal
#

Great stuff.

proud violet
#

Bubbits Demo Update 4 - Starter Quests, Rewards, Island Champions and new Avatar FX

Big features:
Starter Quests
Customizations overhaul, grab yourself something nice with your quest rewards!
Adventure Mode - Island Champions leaderboards

Small features and Bugfixes
New Avatar FX
Shop music (!!!) and a shiny turntable
A ton of quality of life enhancements and bugfixes

I am very curious about your experience with the starter quests if you have a play! Ran into any issues? Feel like something is missing from the Island Tour? Loved it? Do Tell!

We even have a special phaser discord member in our Island Champions right now! Big ups @stark sierra ! blobdance

rancid copper
#

I left some comments in showcase - but as I got through the quests I did feel that difficult ramps up pretty significantly. They first 6 or 7 I think were pretty trivial, then it jumped quite a lot.

Leaderboards are cool, but the values on them were not clear to me... as in - how do I get on to them.

And feature request - I'd like to be able to pan aroundt he island, see how big it is, how many quests do I need to get through to finish the section

#

Great experience overall though - strong feeling of power and early mastery as I started with the quests, very satisfying to quickly power through the early levels.

#

Would be interested to see how it feels to zoom out on the map a little, the leaderboards/scores do obscure a lot of the screen.

stark sierra
proud violet
# rancid copper I left some comments in showcase - but as I got through the quests I did feel th...

Thanks for the feedback my man! Really appreciate it! Would you be able to pinpoint where the quests started to "feel different"? the questline does ramp in difficulty but I want to try and ease players in as good as possible without things feeling repetitive ๐Ÿ™‚ I can also provide a quest list with all the objectives if that helps!

As far as the world map camera goes, I did have discussions with my peers about that a few times. being able to zoom in/out by choice would be kinda cool I think, for the panning its a bit more complex. I think you can make a case for both, being able to view and spoil yourself of what awaits, or not being able to and seeing the things you see when you get there. I'm not exactly sure where i stand on the matter whaale what I do know is that it all needs to function very intuitively for it to make it in the game.

I'm thinking about moving the leaderboards into the "start level info" screen thats currently not implemented, basically an info dialog about the level that pops up when you hit enter on a level before actually heading into it, that way you'd not obscure a big part of the screen while traveling ๐Ÿค”

proud violet
#

my life on bubbits island these days: lazy load EVERYTHING. When I have done everything I possibly can to the brink, initial load might get even down to 10MB. absolute crazyness considering i started out at 300+MB for the Steam version to be carefree afterwards in loading images and animations like i want to.

Edit: Just measured, I'm at 13.2MB initial load now with more and higher quality assets in than ever hungryyy

proud violet
proud violet
serene rain
#

Wow had a lot of fun considering im not a fan of these games that much. and loved the controller support. super sick and well made!

proud violet
serene rain
#

Well it was unintentional ๐Ÿคฃ, my controller is plugged jnto my PC and I noticed my keyboard wasn't working on the game. Only to realize that the on-screen controls look geared towards a controller, which was the moment I realized you made the game with controller support. I never would have imagined PC games using it so it was a cool surprise. Controller support for web games really makes it feel like we are making the jump from little fun apps, to immersive console-like titles which helps with player satisfaction and retention. Will want to add it to my game down the line after my experience with yours!

proud violet
proud violet
#

Best news for me: We had only 1 server crash and since then, smooth sailing. there was not a single client desync, which does make me really proud ๐Ÿฅน it was a really long path this year to overhaul the netcode with a lot of hardships and headaches, but now, there are fewer desyncs than ever AND the controls are way more responsive which would have been impossible with the old design. blobdance

serene rain
proud violet
#

DanceDog dogdance dancedoge 33 Players online, that's a new record!! DanceDog dogdance dancedoge

edgy basin
proud violet
# edgy basin Why not mobile on Crazy Games? It seems to work well on <https://bubbits.io/>

Haha I appreciate it Pat! blobheart The current mobile experience isnt living up to my own standards. it sort of works okayish at some sizes, but the buttons are old placeholder buttons, no portrait mode, i dont currently test on mobile, etc. My plan is to go for a proper mobile version next year!

(and i dont want my rating there to suffer because of mobile players not being happy if something is broken whaale )

edgy basin
proud violet
proud violet
proud violet
#

Bubbits Phaser 4 Migration Log - in progress

Breaking Changes & areas of interest:

  • Math stuff (Phaser.Geom.Point.GetCentroid->Phaser.Math.GetCentroid)

  • Masks:
    e.g. Rex RoundRectangle/Sprite/Image + Geometry Mask based on a Rectangle

this.levelProgressBg.setMask(mask1)```
Instead of creating a mask beforhand and setting that, you directly use the rect in an external filter addMask as param ```this.levelProgressBg.enableFilters();
this.levelProgressBg.filters.external.addMask(this.levelProgressMaskRect);```

Edit2: Masks applied to Sprites as filters.internal need to be treated very differently to masks that are applied to a container or a camera. Masks Applied to sprites have the following rules (afaik):
- position 0,0 of the rect used to mask is the center of the sprite, not in world/on screen coordinates, but local coordinates. sprite origin 0.5,0.5, rectangle origin 0,0 leads to the rectangle beginning to mask the sprite at the top left corner of the sprite
- scale of the sprite matters, if you change the display size of the sprite, you cannot use that size to size your mask rect. the mask rect needs to be sized according to the base size of the sprite (if you resized, you can use e.g. displayHeight/scaleY of the sprite to mask in the correct sprite height)

Edit3: Before, you could mask with a rectangle that had alpha = 0. now, alpha gets taken into account for the masked objects, so alpha = 0 will lead to the masked object being invisble at all times.

Edit4: I had issues with internal container masks stopping to work correctly after resize. this is what I did to fix it:
```this.maskBufferContainer.filters?.internal.clear()
this.maskBufferContainer.filters?.internal.addMask(this.arcGraphics)```

- PostFX:
e.g. Glow
`const bloom = star.postFX.addGlow(0xffffff,3,2)` becomes `const bloom = star.enableFilters().filters.internal.addGlow(0xffffff,3,2)`

For Glow the params have changed a little so they were rendering very noisy for me. The quality param was previously different. Adjust that param to 10(default) to fix! Caution: if you are setting distance property after the filter has been created, it errors now!

Some of the PostFX I am using like shine or bloom do not exist with the new filters yet ๐Ÿ™ Apart from that, it feels easier than what it was before as long as you know what you need to do now! Directly using Images or rects as a source of a mask, even for e.g. a container feels great!

Edit1: One needs to be very mindful of using filters.external because they can get very expensive when used extensively.

- Particle Emitter:
This one took me way too long to find. I had an emitter i only use with .explode() and where I set a customized config before exploding. my init looked like `this.overlayFxEmitter = this.scene.add.particles(0, 0, "img")` with "img" being a big textureMultiAtlas

That lead to a still image from my atlas being displayed on screen on scene start and it took me way too long to find out that you now need to `this.overlayFxEmitter = this.scene.add.particles(0, 0, "img", {emitting: false})` This will most likely be a non issue for most, but for my particular config, I was baffled what my Desync Warning Image did on screen and where it came from haha.

List of sites I found helpful:
- https://labs.phaser.io/phaser4-index.html
- https://github.com/phaserjs/phaser/blob/v4.0.0/changelog/4.0/CHANGELOG-v4.0.0.md (and other mds next to that one, i dont know if there is one md with all the relevant p4 info, I couldnt find it)
- https://www.npmjs.com/package/phaser4-rex-plugins
- https://phaser.discourse.group/t/masks-in-phaser-4/15268
- https://phaser.io/tutorials/phaser-4-shader-guide
proud violet
#

okay it will need lots more work, but this power up has been sitting here for 1.5 years waiting for it to be technically possible to render in phaser. now it is sparkle (phaser 4 filter humans i need helps whaale right now, that magic works with a separate layer with duplicate images. if there was a way to do it without managing duplicate images....please tell me!!! that would make this a lot LOT easier to maintain)

#

seeing this idea i thought up so long ago rendered in engine now makes me really, really happy froge (and it fucks with your mind A LOT when actually playing. might need to find ways to tone that down a little)

Edit: I had the idea to use multiple cameras and use a filter combination on one of those. I hope that works!!

proud violet
#

i think im onto something there DanceDog MadgeClap dogdance
Edit: YES. It will need more work, but I think this approach will work. Sometimes you just need the right idea ๐Ÿ’ก

proud violet
edgy basin
# proud violet If you had a play, I'd love to hear the thoughts you had within the first 5 minu...

My first impression was: whao! it's nice!
The animated bubbles are really cute and give the whole thing a "living" feel.
My second impression is that the playing zone is small compared to the whole screen surface. The animated backgrounds are very nice, and this disposition make sense, regarding the battle royale mode. But that doesn't take away my feeling that I would like to expand the playing area.
That being said, the tutorial is well done, and the controls are OK (I play with mouse).
The adventure mode is perfect and I'll slowly progress this way.
My firsts battle royale was chaotic and, I was confused by all the mechanisms, it seems very rich in features, bonus, power ups...
I was too early for me, I'll be back ๐Ÿ˜‰
Keep up the good work! (wishlisted) ๐Ÿ‘

#

I need to try the Steam demo now.

#

PS: "invite invalid" on bubbits.io/play/ when clicking on Discord icon in main menu, same result with the bottom banner "Join Our Discord", "Say Hi" ...

proud violet
#

Awesome, thanks a lot for your feedback Pat, I really appreciate it blobheart we're currently working on some stuff that will teach some of the mechanics in a short form to hopefully help that overwhelming feeling you can get when seeing it all for the first time ๐Ÿ˜„ there will be some tutorial panels showing something like this https://cdn.discordapp.com/attachments/1341403944735477902/1444705708032397395/bb_stone_v1.gif?ex=692e574a&is=692d05ca&hm=e26792ff44ab21a1f46ffb8137f38559cf5768a507f712b7532247865c2a4f13&

#

also, I am really glad you appreciated the bubble visuals. it's been some time since we worked on these sprites, but when i started out this project and had a look at all the other bubble shooters currently on the market, I felt like they somehow didnt care much about how the star of the show - the bubbles - look and that I wanna do better ๐Ÿ˜Š

proud violet
#

Dimension Rift - Early Version vs Final Version. Powered by Phaser 4! what do you guys think? I'm pretty happy with it! whaale

#

short bit why it is as large as it is and moved down:

I tried playing with it being inside the playfield only. It was impossible, at least for me. having the bubble in cannon not match what you need to check in the playfield was extremely difficult for me. That was a hard hint for me to not do it that way. moving it down so the bubble in cannon is changed as well made it playable again ๐Ÿ™‚ if you now need to make the mental leap from changed cannon color to real color in the upper playfield, chances are that your playfield is pretty clean and you are not in distress, so it's not as bad if you mess up ๐Ÿ™‚

proud violet
#

perfect chefkiss

proud violet
#

Adventure Mode Island Overview. Early draft

#

It doesn't look like much yet and the programming part of course did not take long, but designing 6 of these mini islands was quite a challenge that took months to complete whaale

stark sierra
#

Ill take it for a spin later.

proud violet
#

yo, I'm back whaale first step in 2026: make a dropped daily connection be resumable even if the cat ran across the keyboard and closed or refreshed your browser (also featuring some of the p4 blendmode issues)

proud violet
#

Hi! Bubbits ID finally getting their Badges and Seals. the seals didnt look good with the placement i planned with sooooo I thought maybe we can dangle them down. looks better composition wise I think! still not 100% happy with how it behaves, but it's gotta have to do for now i can't get it to look better froge_sad

#

if you know your matter constraints and ropes and think we can get better results, hit me up whaale

proud violet
proud violet
#

Sneak Peek at a new special bubble (visuals not finished): Frozen. It's a mainstay in pretty much every modern bubble shooter in one way or another and I think I might have found an interesting take on how to integrate it to Bubbits! Further thoughts: Maybe also have a Frozen power up that can freeze an area of bubbles...could be interesting!

proud violet
proud violet
#

VS Mode has been deactivated and back in the workshop...until now! I think I'm happy now. The state of VS Mode was okay a year ago, but i had a few things on my wishlist and went for pretty much all of them. to name a few:

  • remote player join/leave when you are already in the vs menu screen
  • join via lobby id
  • staying in party after a match
  • being able to have battle events from royale
  • being able to use the heat system from royale
  • mouse controls for the menu
  • add mouse only player so 2 people without a gamepad can play together on a single pc

To put it into short words, my mantra has become to strive for one thing for the user experience: "It just works".

proud violet
proud violet
final peak
#

Wow, I didnโ€™t realize you had already released a demo. I just played it for about half an hour โ€” itโ€™s really polished and I couldnโ€™t spot any obvious issues.
Did you only release it on CrazyGames and your own site? Iโ€™m not sure if this is the right place to ask, but could you give me some advice on self-publishing a game?
I want to release it on itch.io, but Iโ€™m worried no one will actually see it.

proud violet
# final peak Wow, I didnโ€™t realize you had already released a demo. I just played it for abou...

Yes, thank you! Demo has been online for roughly a year ๐Ÿ™‚

A few more smaller portals like webgamer.io also as well as Steam ๐Ÿ™‚

Well, let me put it like this: Maybe I can give advice because I might have a bit more experience but am I the right person to ask? No. As of today, Bubbits is no success and there are no signs of that changing. Do I still believe in it? Of course I do, I think it's special froge

That said, I will share my views of self publishing a game these days. Is it possible? Absolutely, 100%. The most important thing is visibility. Market is oversaturated, like way oversaturated. People who dont specifically search for it have no clue how many games are actually released on Steam each day. Some days its 100+ games.

You need to find your audience. It will most likely not work the other way around. Foot traffic on steam or crazygames is minimal if you don't bring your own traffic, or at least big sparks of traffic at some point. I bring as many people onto my steam page as steam organically does, and I am a nobody. my 12 year old game on steam still gets as much traffic as bubbits does (basically none). I have seen countless titles in that nomansland, then 1 bigger influencer picks it up, instant change of organic traffic. and not just for that short burst, but in the long run also!

Having seen your game, my advice would be to give it your best shot to do tiktoks, youtube shorts or instagram. ad money from a place like crazygames (i dont have ads turned on) for a game with the current traffic of Bubbits on there would be enough for a package of yumyum a month maybe. I feel like visibility is everything, no matter how you manage to get that spark. Finding it is the main priority if you want to make a business out of it

final peak
# proud violet Yes, thank you! Demo has been online for roughly a year ๐Ÿ™‚ A few more smaller p...

Thanks a lot for the advice, I really appreciate it. It gave me a lot of insight.

English isnโ€™t my native language, so Iโ€™ve always felt a bit lost when it comes to promotion. But your explanation about visibility helped me understand it much better. Iโ€™ll definitely try some of the things you mentioned.

And honestly, I think Bubbits is special too. I hope it reaches more players in the future๐Ÿ”ฅ

proud violet
#

Ping me if you play and want some competition froge_evil

Bubbits Demo Update v0.9 is out now! VS Mode, Double Adventure Content, Bubbits ID Badges & Seals, a new Announcer and a lot more

Big features:
โ€ข VS Mode is back! It supports up to 4 players (Online and Local), Bubbots, Customization, Royale events, multiple stage sizes and the Heat difficulty system
โ€ข Adventure: Leo's Beach is fully unlocked! (Play it now, it will be completely overhauled in v1.0!)
โ€ข Collect Bubbits ID Badges & Seals
โ€ข We got a new announcer: Hi Jacob! whaale
โ€ข Accessibility Mode (turn it on in the Option Controls)
โ€ข Reconnect after your connection gets interrupted (even when your cat runs across your keyboard and closes your game!)
โ€ข Chill Mode (no highscores, no fluff, just you shooting bubbles)
โ€ข 300% more translations
โ€ข Cross Platform Parties (Join friends via LobbyID or share link!)
โ€ข Big Engine Upgrade(Gameplay 1500% more smooth!)
โ€ข New power up (Dimension Rift)
โ€ข New special bubble (Frozen)
โ€ข New Sound Effects
โ€ข All new tutorial panels
โ€ข The Duel Battle Event is back!

Small features and adjustments:
โ€ข Visual overhaul for K.O. Badge, Levitate, Stone & Bubble Hold
โ€ข Moved set username to click on Bubbits ID in Main Menu
โ€ข Overhauled bubble shield deflect
โ€ข Pixel Power Up visual overhaul
โ€ข New Daily Game Over screen
โ€ข Daily link share to challenge your friends
โ€ข Extra dangly strips to attach your new Bubbits ID Seals
โ€ข Remove ready check from Royale
โ€ข Add Environment customization and Yui's Retreat environment
โ€ข Added Adventure Island Overview Screen (Work in Progress)
โ€ข Performance improvements
โ€ข Further control enhancements
โ€ข Dialog button overhaul
โ€ข First time playstyle pick overhaul
โ€ข Further load time improvements (a lot more gets loaded in the background!)
โ€ข And a whole lot more!

Developer Thoughts:
This Update got a lot bigger than anticipated! Enjoy VS Mode! Instead of talking more about all these features, I would like to briefly talk about something that was not planned: Accessibility Mode. I met somebody who works with kids and creates custom devices so kids facing certain challenges can still interact with a PC and e.g. click a mouse button. I found that amazing and together we thought about what it would take to make Bubbits work for these kids. Welcome: Accessibility Mode. My goal for Bubbits is to bring smiles and laughter to everybody and this was a moment to live up to that.

proud violet
#

art matters.

edgy basin
proud violet
#

Sooo I think I have come to the conclusion that for this project, I will not stop being a little stupid. This time, it lead to a multiplatform accountmanagement including linking to different auth providers and account merging. And Statistics are back. they have been gone for a long time. let me show you the last time we had those

brazen dew
#

whoa this was made in Phaser? It looks incredibly polished. How'd you get the tree backgrounds to animate so smoothly?

proud violet
proud violet
#

When you push an update but forget to add a new atlas to your cache processing hidden_feelings

proud violet
#

King Ping reborn

proud violet
proud violet
#

I'm not good at spending time at something that is not enhancing the game itself, but for this plan I managed to convince myself that its really important to give it an honest try and spend the time necessary on it.

So: I spent the past weeks giving it all I have to overhaul the bubbits.io website and do one major push to have a chance at organic traffic. it's not live yet, but I would like to show my phaser peeps (blobheart) a before and after sneak peek at the frontpage froge I hope you like it

proud violet
serene rain
#

Looks fire ๐Ÿ”ฅ

proud violet
proud violet
proud violet
#

there is a share button now too to challenge your friends PeepoGiggle

proud violet
#

It's been a long time froge Getting the whole cast of Bubbits characters thought up, designed and animated was a lot more trouble (headaches x20), time (2.5 years) and money (MaxxoCry) than I would have ever imagined, but man am I happy to see all those guys in there now. To celebrate, here is an animation showcase of the whole cast for you blobheart

proud violet
#

Bubbits Demo Update 9 is out now ๐Ÿฅณ Adventure Mode 2.0 with a new info screen, slick looking platinum trophy, more platinum challenges and a new secret stage ๐Ÿคซ .Oh, and all 6 characters are now in the game! froge

proud violet
#

P.S.: For my Phaser family, if you take a liking to the game and like one of the characters, send me a dm with your id # and username and I will deliver your favourite (currently in no way obtainable) character directly to you whaale โค๏ธ

proud violet