[Android] My first self-programmed game, under a working title, "Marble Run".

Slapshot136

Divide et impera
Reaction score
471
The "Info Dialog" is probably what you are referring to as the "screensaver", right? I'll try tweaking that a little bit.

no, basically after a minute or so, my screen turns dim (minor annoyance), but then after another 30 seconds or so it goes to sleep, and I must press the power button and then swipe to open to bring it back - OR if I tap on the screen during the dimming phase, then I need to also press on the menu that pops up to go back to the game
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Oh, guess I haven't test thoroughly enough. Thanks for the feedback.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Well, not quite as fun to strive to keep all the TODOs and issues low. :p
 

s3rius

Linux is only free if your time is worthless.
Reaction score
130
Just some advice from an ignorant person who doesn't even own a smart phone or anything else that runs on Android:

Multithreading is a wolf in disguise. I don't know how much experience you have with it or, more importantly, if you have profiled results pre- and post-optimized, but there are lots of unintuitive ways of making multithreading actually slow down your program more than it speeds it up.
Not only obvious things like data races and bottlenecks due to mutexes but also things like cache consistency and unfair mutex wakeups.

I'm not sure how much of it applies to AndroidOS, maybe it's no issue at all. But I thought I'd mention it.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Thanks for telling me about this.

I'm well aware of multithreading issues. I made my game design so that it is split into two groups, the Update group and the Render group. Each group contains only 1 thread, and they do not interfere with each other. The Update group only changes the variables, while the Render group only utilizes the variables, along with the "final" keyword attached to every single Render group methods.

Been testing this game design on my phone for some time, and the results are pretty good. If I keep it at the maximum of 2 threads, handled by Android's Handler class, I would then be able to fix some of the known multithreading issues, without much of a loss of performances. The design works to this day.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Updated to Alpha 0.2.

Changelog:
Alpha 0.2​
+ Refactored the MenuActivity code, so that the Garbage Collector is happy.
+ Fixed the art sprites from having artifacts not cleaned up.
+ Added screensaver flag. All Activities must include this flag.
+ Added borderline sprites.
+ Tweaked the borderlines for Cue.
+ Added primitive 2D culling.
+ Changed the Notes to actual text files.
+ Info dialogs can now parse titles and messages from a text file.
+ Added dialogues folder and the dialogue text file.
+ Gave the Stage class its own DialogInterface. Now, GC is happy with Info.
+ Changed how the winning condition works.
+ Added Stage 3.
+ Fixed Stage 2 pipes.
+ Made pipe collisions more accurately responding to collisions. Very accurate,
to the point that I'm considering something else to help it work smoothly.
+ Fixed jumping.
+ Added primitive scoring. It's not finished. (Ball, Cue, Marble, Stage, ???)​

- Performances have dropped significantly. Not a good sign.
- Disabled Cue Ball CurvePipe reflection, as it's still buggy.​
 

Slapshot136

Divide et impera
Reaction score
471
- Performances have dropped significantly. Not a good sign.

x2, it's nearly unplayable once you get to where you have 8 balls on the "map" at once..

on the plus side, the screen didn't go out on me
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
x2, it's nearly unplayable once you get to where you have 8 balls on the "map" at once..

on the plus side, the screen didn't go out on me

The real culprit is the 92 border objects you see on the screen. I'm still testing to see of I can create 1 big border, instead of using those.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Updated to fix the latest performance issues.

Changelog:
+ Changed the border from sprites, to a colored rectangle.
+ Boosted performances.
+ Added subtle "Loading" screen.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Updated to Alpha 0.3:

Alpha 0.3
+ Added Stage 4.
+ Tweaked the borders of each stage.
+ Tweaked wall collisions on Cue ball and Marbles.
+ Changed the RIGHT_TO_UP curved pipe's color.
+ Changed Stage 1 through Stage 3 to actual stages instead of DEBUG stages.
+ Changed the dialogues to actual dialogues.
+ Changed the local score to current total score in the Game Over dialog.
+ Made it so that total score keeps track of your overall score.
+ Made current total score the sum of the total score and the score received before Game Over.
+ Added "Back" button to the High Score.
+ When the game cannot load a stage, it will load the first stage, and throw Logcat errors. No warnings though.
+ Added "Level Selection" screen. No back button.​

Please report anything. I have sorted out a few known issues and game bugs, so if you see anything, let me know. :D Future versions will have more stages, and probably more stuffs to interact. I decided to take a few days off and focus on relaxation.

This Saturday, I'll be taking a train to go back to my college dorm. From there, it'll be a busy senior semester as an undergrad.
 

Slapshot136

Divide et impera
Reaction score
471
ive been busy as well, but I tested it yesterday - I managed to get from within the tube to outside, with the controllable marble, but not any of the target ones (which are damn near impossible to get into the tube in the first place.. any chance of like a "funnel" or something? (or is that what the green patch is there for? either way I had a lot of trouble getting it in there).. also for that one level I couldn't find any target marbles, it took me a bit to figure out I was supposed to move "my" marble to the end, as that is what loses the game normally..
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
The funnel thing is what's coming up, but it doesn't have top priority right now. Even I noticed that balls were unable to smoothly enter the pipes easily. Our current main goal is to finish up the Scoreboard, and then continue on with the GUIs, and then finally polish up the entities and improve the interactions between each one.

For the next version, there will be more objects to interact, and a lot more stages to play around in. I'm also considering some objects that should be avoided at all cost. More details will be revealed after our next dev meeting.

The green patch, the Tee, is your starting point, like in golf. The stage where you have to guide your main Cue ball into the hole is actually an error on my part. That stage should be placed near the front of the others, so that it gives players the first impression to aim for the goal, if there are no other Marbles to interact with.
 

Slapshot136

Divide et impera
Reaction score
471
any chance of like a "marble finder" that shows a colored arrow on the edge of the screen that points towards marbles that you can't see? (so you know how many marbles you have left to score with, or if there are none)

if you add bombs or similar, that sounds good.. but give me some sort of cheat to avoid them since I might not be that good at the game..
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
any chance of like a "marble finder" that shows a colored arrow on the edge of the screen that points towards marbles that you can't see? (so you know how many marbles you have left to score with, or if there are none)

if you add bombs or similar, that sounds good.. but give me some sort of cheat to avoid them since I might not be that good at the game..

Like a HUD? Yeah! There will be cheats, if we can actually flesh out everything.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Updated!

Next up, is some indicators, more content, etc. My hand is now recovering, so I think I'm able to catch up on the development pace.

Changelog:
Alpha 0.4:
+ Added the Void. Cue ball will fall through and die. Marbles are not affected.​
+ Added Stage 5.​
+ Added Stage 5 dialogue.​
+ Changed Cue's and Marble's wall collision.​
+ Fixed the Borders not aligned properly.​
+ Cue ball jumping to death is now properly implemented.​
+ Added Stage 6.​
+ Added Stage 7.​
+ Fixed game not displaying Game Over dialog when Cue dies in Stage 7.​
+ Made the Void have random backgrounds.​
+ Very trivial performance boost given to Cue ball jumping.​
+ Added Stage 7 dialogue.​
+ Added Bumpers.​
+ Added Stage 8.​
+ Added Stage 8 dialogue.​
+ Fixed Cue ball not dying when there is at least one Marble alive.​
+ Added a functioning Scoreboard. Can now enter names, and record points!​
+ Changed version to Alpha 0.4.​
 

Slapshot136

Divide et impera
Reaction score
471
I got a game logic error when I tried to load level 4.. (I don't know what it was supposed to do..) I also tried level 6 and 7, but as I said earlier, I have never been able to make my marble "jump", so I am stuck (dying in the abyss) - any way I can get a "cheat" that allows me to "fly" when I hold the search key down or something like that?

on the plus side, I like the level selector
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
It looks like jumping isn't intuitive... I'll fix that. And probably add some tutorials in the game.

The cheats have a priority just below bug fixes. There are a few bugs that I'm having a hard time tackling in order to get the game play experiences right and without being overbalanced. Especially in levels 1 through 3, where the marbles can just barely go into the pipes. Sometimes, it hangs midair, sometimes, it gets stuck and unresponsive. I don't know if you had ever experienced that, but I do, so they are counted as critical.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
There will be no update for today, possibly not in next week's time if I can't manage it. The 0.5 update will be pushed back until my professor and I deem it worthy of an update. I won't be adding any new Stages and new Objects until I fixed everything.

The reason for no updates, is that I felt it to be buggy. Partially because of the review after giving my professor a demonstration 2 hours ago. He told me the game was deemed too buggy, even when after I had added some more objects into the game.

I also noticed that continuous feature creeps hinders bugfixing, something I had been doing for the past 7 updates, which is not ideal for Alpha testings. I might have to reconsider the current release cycle, and possibly use a new release cycle of "When it's done, it'll be released" type cycle. I also benefit by taking things slowly and having fun programming. All of this makes me think that my current build of the game is not suited for being a new update.

I may put up a few notions about this and that in the Shoutbox for those wishing to check up on the status of my project. I think this explains everything clearly, and sorry for the inconveniences I bestow upon you.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
Updated to Alpha 0.5.

Alpha 0.5:
+ Added a Back button to Level Selection menu.
+ Added Funnel and Connector artwork.
+ Added Funnel collision to Cue ball. (Primitive) (All directions added.)
+ Fixed Cue ball colliding incorrectly when inside CurvePipe's inner bend.
+ Added Funnel collision to Marble. (Primitive) (All directions added.
+ Fixed Cue ball Funnel collision.
+ Tweaked Funnel Collision radius.
+ Added primitive Ramps and Ramp collisions.
+ Refactored some codes.
+ Added Connectors. (Primitive) (Not thoroughly tested...)
+ Fixed Toast not showing anything if Stage Loading procedures failed to complete.
+ Added HUD. (Simplistic.)
+ Added Compasses. They will point to Marbles in respective colors. The Red compass points to Goal.
+ Fixed Cue ball jumping over Hole counting as Game Over.
+ Fixed Cue ball Pipe collisions.
+ Almost fixed Marble Pipe collisions.
+ Almost fixed Cue ball CurvePipe collisions.
+ 80% fixed Marbles ball CurvePipe collisions.
+ Disabled Search button from interfering.
+ Fixed Cue ball Ramp collisions.
+ Fixed Marble ball Ramp collision.
+ Fixed empty names being added as entries to the scoreboard.
+ Fixed entry position numbers starting from 0.
+ Added initial ImageInfo, to display information via images instead of text.
+ Added initial ImageInfo information.
+ Replaced Stage 1 Info dialog with ImageInfo dialog.
+ Added Menu Button. Now, no need to touch the screen to bring up Menu again! (Positioning is untested.)
+ Menu Button is now pretty.
+ Added Settings button in the main menu.

Please note that there are new "Known Issues".
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    How can you tell the difference between real traffic and indexing or AI generation bots?
  • The Helper The Helper:
    The bots will show up as users online in the forum software but they do not show up in my stats tracking. I am sure there are bots in the stats but the way alot of the bots treat the site do not show up on the stats
  • Varine Varine:
    I want to build a filtration system for my 3d printer, and that shit is so much more complicated than I thought it would be
  • Varine Varine:
    Apparently ABS emits styrene particulates which can be like .2 micrometers, which idk if the VOC detectors I have can even catch that
  • Varine Varine:
    Anyway I need to get some of those sensors and two air pressure sensors installed before an after the filters, which I need to figure out how to calculate the necessary pressure for and I have yet to find anything that tells me how to actually do that, just the cfm ratings
  • Varine Varine:
    And then I have to set up an arduino board to read those sensors, which I also don't know very much about but I have a whole bunch of crash course things for that
  • Varine Varine:
    These sensors are also a lot more than I thought they would be. Like 5 to 10 each, idk why but I assumed they would be like 2 dollars
  • Varine Varine:
    Another issue I'm learning is that a lot of the air quality sensors don't work at very high ambient temperatures. I'm planning on heating this enclosure to like 60C or so, and that's the upper limit of their functionality
  • Varine Varine:
    Although I don't know if I need to actually actively heat it or just let the plate and hotend bring the ambient temp to whatever it will, but even then I need to figure out an exfiltration for hot air. I think I kind of know what to do but it's still fucking confusing
  • The Helper The Helper:
    Maybe you could find some of that information from AC tech - like how they detect freon and such
  • Varine Varine:
    That's mostly what I've been looking at
  • Varine Varine:
    I don't think I'm dealing with quite the same pressures though, at the very least its a significantly smaller system. For the time being I'm just going to put together a quick scrubby box though and hope it works good enough to not make my house toxic
  • Varine Varine:
    I mean I don't use this enough to pose any significant danger I don't think, but I would still rather not be throwing styrene all over the air
  • The Helper The Helper:
    New dessert added to recipes Southern Pecan Praline Cake https://www.thehelper.net/threads/recipe-southern-pecan-praline-cake.193555/
  • The Helper The Helper:
    Another bot invasion 493 members online most of them bots that do not show up on stats
  • Varine Varine:
    I'm looking at a solid 378 guests, but 3 members. Of which two are me and VSNES. The third is unlisted, which makes me think its a ghost.
    +1
  • The Helper The Helper:
    Some members choose invisibility mode
    +1
  • The Helper The Helper:
    I bitch about Xenforo sometimes but it really is full featured you just have to really know what you are doing to get the most out of it.
  • The Helper The Helper:
    It is just not easy to fix styles and customize but it definitely can be done
  • The Helper The Helper:
    I do know this - xenforo dropped the ball by not keeping the vbulletin reputation comments as a feature. The loss of the Reputation comments data when we switched to Xenforo really was the death knell for the site when it came to all the users that left. I know I missed it so much and I got way less interested in the site when that feature was gone and I run the site.
  • Blackveiled Blackveiled:
    People love rep, lol
    +1
  • The Helper The Helper:
    The recipe today is Sloppy Joe Casserole - one of my faves LOL https://www.thehelper.net/threads/sloppy-joe-casserole-with-manwich.193585/
  • The Helper The Helper:
    Decided to put up a healthier type recipe to mix it up - Honey Garlic Shrimp Stir-Fry https://www.thehelper.net/threads/recipe-honey-garlic-shrimp-stir-fry.193595/

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top