Computer Science Canada

Chaser Minigame

Author:  Remm [ Thu Aug 10, 2006 8:33 am ]
Post subject:  Chaser Minigame

Very simple, mildly adictive little game. I know they flicker, offscreenonly was being evil and wouldnt work for me. Feel free to mill around in code and do what you will. Theres not much there anyways Very Happy

Made this because its been so long since I have posted, so gotta get out there somehow Wink

Read Later posts for Update Information.

(Removed code for a total revamp, will repost in not-so-near future. Sad )

Author:  Clayton [ Thu Aug 10, 2006 9:27 am ]
Post subject: 

okay, first of all...

Why are you using PROCESSES?!?!? that is why you are having problems with View.Update working, if however you had all of your processes re-worked into procedures (with some minor changes), your View.Update wouldnt be a problem, other than that, suggestions to improve:
1) Scoring System
2) Don't have your overlapping be so sensitive, when you are trying to have your square catch the cyan circle, make it so that you dont have to be perfectly overlapping it Very Happy
3) Make it easier to lose, right now you can go over the green circle without anything happening, unless you pass straight through the exact center, see number 2

other than that good job

Author:  Remm [ Thu Aug 10, 2006 9:44 am ]
Post subject: 

Superfreak;
<anger session start> ok... if theres some MAGICAL way to get these to run at the SAME time without using PROCESSES, be my guest. I KNOW that processes are crap, for their 1:1 output, but hell, it works well enough, does it not? Just because somthing is horrid, especially in large numbers, doesnt mean im going to forbid myself to EVER use the function AGAIN. It works, saves me from trying to figure out this way to make everything work in procdures, which existance has neglected to tell me. So please, make up a code that works the same way without using the process, or stop telling me to change it. I have no idea how, no resources to find out how, so deal with it or i will neglect to read your posts.
Now that thats over with... <anger session end>

Its very easy to get right on the circle. it fits into your square exactly, just run at it like a madman until you overlap it. Not hard at all. The bigger one, its stated in the instructions even that if you go through the centre, much like catching the cyan circle, you will be caught and launched 100x/y +/-.
Whatdotcolor is not one of my areas of expertise... hell, i know next to nothing about it, so this was the next best thing

Oh, and I will put a scoring system in.

I made this a little past midnight so its not as good as it could be, I'll try to make it a touch more... worthwhile?

Author:  Cervantes [ Thu Aug 10, 2006 11:03 am ]
Post subject: 

Please, calm.

Remm, can you explain to us why it is that you need processes for this? Or if you prefer, why is it that processes make this easier?

Remm wrote:
f theres some MAGICAL way to get these to run at the SAME time without using PROCESSES, be my guest.

If you want code to run at the "same" time, just one line directly after another. Assuming no interaction between the lines (like the first line doesn't change a variable needed by the second), they will appear to run at the same time.

Of course, they aren't. And it's the same with processes. Your code in your processes is not running at the same time, either. One line is executed from one process, then one (or two...) from the other process, and back, and forth.

Remm wrote:
saves me from trying to figure out this way to make everything work in procdures

If the purpose of something is to prevent you from learning something else, that something is very, very evil.

Author:  Remm [ Thu Aug 10, 2006 12:26 pm ]
Post subject: 

Confused yeah well i jus get angry when people (well.. mostly just superfreak, as in my FP too) tell me not to use processes, even though i know not to. they offer this way to do everything without it, yet never give even the vaugest hint of how to do such a thing. I guess i kinda snapped Very Happy

Anyways..
I'll try to find out how do do it without processes, but it may take me a little while -.- will repost the code again once its done.
As for now... back to dark deeds Very Happy

Author:  Remm [ Thu Aug 10, 2006 5:32 pm ]
Post subject: 

OK it has been massively fixxed.
Changes:

-Scoring system

-All movement code shoved violently into one procedure, aka less flickering.

-A little bit of sound, but it will probably just annoy you. Had to get a process in there somehow Smile

Future plans:

I plan on making a game filled with little pointless minigames such as this.

Author:  NikG [ Thu Aug 10, 2006 5:52 pm ]
Post subject: 

Not bad! Fun at first, but gets repetetive very quickly.

As SuperFreak has already mentioned, you could make it harder by making it so that you just have to touch the big green circle, not just its centre. Contrary to popular belief, using whatdotcolor is not the only method of accomplishing this. You could add a simple fcn or proc that checks the distance from the middle of the big circle to the sides of the square (using Math.DistancePointLine), and if the smallest distance is less than the radius of the big circle, you have a collision.
(If you do this though, make the penalty smaller. -100 is harsh!)

Author:  Remm [ Thu Aug 10, 2006 6:04 pm ]
Post subject: 

Yeah. I'm definately going to have to read up on some of that stuff. Anyways, of course its going to get repedative, your chasing around a frigin ball with a box, getting chased by yet another ball.
Ok, want difficulty? Im going to do a quick change that'll be implimented within the next 5-10 minutes. Every time you 'catch' the ball, your movement speed decreases (owch!) so soon you wont be able to outrun it as well, and you will have to watch for fatty mc'green over there. This will provide at least a touch of replayability past the first +25 points, hehe.
Oh, and -100 really isnt bad, you should be able to get 100 or more points before he gets you, depending on how you play. You move four(!!) times faster than them, so it shouldnt be a problem... but now... with my update, it may be... Twisted Evil

EDIT
<re-edited here, do we lose bits for editing?>. Mod edit: No. Anyways, we now have your speed reduced by 5 pixels every time you catch the cyan circle. I cant really use any other incriments, or you wouldnt be able to be hit by green circle // catch cyan. This means your speed drops pretty quickly as well. So, after three catches, your speed is reverted to normal, a... reward? for catching the third. Well, this difficulty fluxuation is better than nothing, hmm? Also reduced the point deduction for getting caught to 75 points, since going for the third, theres a reasonable chance of getting eaten.
Thanks for your feedback on such a rediculously crappy game! I have no idea why im improving it! (crap + crap = sparkly crap)

Author:  Remm [ Thu Aug 10, 2006 7:27 pm ]
Post subject: 

Very Happy Updates!
PLEASE REPORT ANY BUGS IN GAME OR MY UPDATES (somthing thats not acually IN the game, ect...)

--> Now displays current speed
\=> When 'up'(see below) captures the cyan circle, your speed increases by 5 (mercifully)
\=> Speed will not exceed the maximum of 20.

--> Now displays current level
\=> Level increases by .25 every time you capture a cyan circle
\=> Level lowers by .025 every time 'up'(see below) captures a cyan circle.

--> You now have a compeditor! His name is 'up'.
\=>from level 3 and beyond, a green circle-friendly catcher will be going after the cyan circle. He goes the same speed as your target, however, he can move diagnally, meaning he will be able to catch up to the cyan circle faster than you, depending on how the cyan circle runs from you.
\=> You lose 5 points if up takes the cyan circle. BE WARNED.
\=> If you notice that up has dissapeared, this means that your level has dropped below 3.

--> Secret cow level!!!
\=> Once you reach level 5.0, the secret (fuzzy) cow level will be displayed. it isn't much to see, but at least its a ending! For you anti-process cultists too, since its entirely made out of processes! enjoy!

--> New 'Mini-Game FRENZY' seal Wink
\=> Speaks for itself, will go ahead of all of my (worthy) tiny games from now on. At some point I will put them all into one, but thats for the future...

Feedbacck appriciated, especially about difficulty issues. I wouldnt be suprised if it is near-unbeatable now, since up is a evil killstealer Confused

EDIT
A few minor changes...

--> The big green circle now subtracts only 50 points, rather than the 75 before. This reflects the difficulty increase from levels 3-5.

--> Cleaned up the code a little, moreso around variable decleration

--> The cyan circle now appears above 'Up', rather than below. Now looks proper.

Remember, the point of the game is to get highest score possible by level 5.0, not just to beat it. Feel free to post your highscores with your feedback//comments, see who is victorious Smile .

Author:  Cervantes [ Thu Aug 10, 2006 9:10 pm ]
Post subject: 

Much better, for sure. The only question I have is, why is it so hard to catch the ball? Especially in the higher levels, it seems, moving directly over the ball (I'm not screwing this up -- I'm actually moving through the ball), the collision detection seems off. And speaking of higher levels, what's with there being a level 2.975?

Author:  Remm [ Thu Aug 10, 2006 9:17 pm ]
Post subject: 

The colision detection seems off because the ball moves at incriments of 5, whereas the players square moves in incriments of 20, 15 and 10. This is what i think is causing problems, and I have no idea how to get around it. Furthermore, if anyone has any idea how to fix this, it will be greatly appriciated.

A little tip for catching the ball would be catching it on the left or bottom, since it doesnt do that strange moving glitch. getting it at 0,0, is also quite easy, but the more time you take, the closer 'Up' will be so, its all up to you.

This '2.975' you speak of is you being right on level 3, then 'Up' came in and captured a cyan circle. this dropped you back down to 2.975 from 3.0 (up takes .025 of a level each time he grabs a cyan circle, as explained in updates). In doing so, he dissapeared when he took it, since your level dropped below 3, and he only shows up level 3 and above.

I think i'll work on math.distance or whatdotcolor for a new colision detection system to get it WAY more accurate.

EDIT
-->Changed MG-F seal a bit, not its not so simplistic. Also has a little slogan.
EDIT
ok.. i found some glitches and got rid of them

-->now at speeds 15 and 10, you cannot partially run through the top and right walls, making you invulerable and unable to get the cyan circle.

-->*MAJOR* the cyan circle no longer keeps pushing itself up against the top and right walls, making it next to impossible to catch it when its in those locations.

-->*MAJOR* sadly, i had it so you had to get level 5.0 right on to finish. that has now been changed, anything above 5 will grant you the endgame... cinimatic? Wink

Future Changes:
==> Difficulty selection: changing when 'Up' joins you, your maxspeed, and a point requirement for harder difficulties (need a set number of points when past level 5 also for completion)
==> Graphics update: Make the circles and whatnot look a little better. Shouldnt be a few second deal, but I will save it for the next update.
==> More minigames involving the cyan circle, up, and such.

Author:  Clayton [ Fri Aug 11, 2006 12:53 pm ]
Post subject: 

Ahhh this version is much better, however i still see some processes in there that dont really need to be Confused When you are proceduralizing your code, dont try and do one giant thing at a time out of the two or three things that you have to do, instead, do bits and pieces of each giant chunk in several procedures, and you will find your program works much, much nicer Very Happy

for your collision detection, why not use Math.Distance? put it in a boolean function (i find it easier that way) that accepts the two sets of points and the distance allowed between them before a collision, if its within that distance, the fcn returns true, otherwise it returns false. Using this method reduces the likelihood of bad collision detection tenfold at least Very Happy

Author:  Remm [ Fri Aug 11, 2006 2:55 pm ]
Post subject: 

.. sigh... OK. The processes that are in there are music and my endgame cinimatic. The cinimatic is a very old code put im porcesses because i felt like it. It (for some unknown reason) runs fine in this program, even though its SUPPOSED to be very messy. i.e. "your your cow houseyour cow is fuzzy"

I can state that there are no proccesses there that are not supposed to be.

With that out of the way... I will soon be looking into the math.distance and whatnot, so no worries. It will just be some time Smile

Author:  [Gandalf] [ Fri Aug 11, 2006 3:26 pm ]
Post subject: 

Remm, what you seem to not understand is that aside from processes being messy, they teach a method of programming that isn't appropriate for what you are trying to do. Your programs should be structured linearly, which processes interfere with. Processes are good for certain things, when concurrency is neccessary, but they shouldn't be used for your average task.

Author:  Remm [ Fri Aug 11, 2006 7:09 pm ]
Post subject: 

<Anger> I really dont think anyone understands this. like... REALLY.

The part with the processes, the so called 'secret cow level' is SUPPOSED to be all fked up. its SUPPOSED to output unproperly and is not supposed to be structured or work properly in ANY way. Thats what makes it FUN to look at.

In the final projects, I have my final gunner. Look at the same thing there. For some reason, IT works as it should, but this one isnt working unproperly, unfortionately.

Please, everyone, try to comprehend that the processes are supposed to be there. The point of that useless section of code is to be very glitchy. Accept that i found a nice improper use for processes and stop telling me to fix it. PLEASE

And for the other processes, the ones containing the music, there is nothing wrong with them. If i put them in the acual game, they mess with my delays and movement, so I have them seperate. they run fine. 'nuff said.

From this point on, if you want to bitch about my processes, dont post or i will just continue to C/P this post. Enough with this!! Sad

Author:  Cervantes [ Fri Aug 11, 2006 9:08 pm ]
Post subject: 

Remm, your argument is that we don't understand that you want the processes there.

We understand that. You want the processes there. See? I said it.

Now, understand our argument. You shouldn't want the processes there.

QED.

Author:  Remm [ Sun Aug 13, 2006 10:26 am ]
Post subject: 

(Removed corrupt code, ignore my blatent idiocy Embarassed )
[/code]

Author:  Cervantes [ Sun Aug 13, 2006 11:46 am ]
Post subject: 

Why is throwing away all linearity for wierd and glitchy code a good thing?

Disclaimer: I have not run your code.

Author:  Clayton [ Sun Aug 13, 2006 12:42 pm ]
Post subject: 

but what does that whole fuzzy process bring? if its supposed to look good im afraid that its a far cry away from looking "good" or "cool" all it does is hurt the eyes (or at least mine)

Author:  Remm [ Sun Aug 13, 2006 12:43 pm ]
Post subject: 

Because... its funny to read the output? Confused
IDK, its just a little maddening program I made during my time working on my final project. Sadly, that little malfunctioning program was more entertaining than a good few of my fellow classmates FP's Shocked

Oh, and superfreak. you are supposed to let it run on for a bit, click the X, then read some output while its frozen. Dont try to read it at crazy fast speed, you dolt Very Happy

Author:  Clayton [ Sun Aug 13, 2006 1:30 pm ]
Post subject: 

but it still hurts the eyes, all those colors flashing before your eyes, cant be good for all those epileptics out there...

Author:  Remm [ Sun Aug 13, 2006 4:23 pm ]
Post subject: 

Epiliptics... would they even take programming? Well, they knew the risks, if not then, they know now.

I guess its my way of putting somthing useless into my stuff without getting it locked.... hehe. Anyways, beats no end... cinimatic... eh?

Author:  Clayton [ Sun Aug 13, 2006 4:34 pm ]
Post subject: 

what do you think epileptics do all their life? turn their heads when they see a tv screen or computer monitor? things are programmed/filmmed a certain way for a reason, and purposely putting in something that could, in some circumstances, cause someone to have a seizure, is a very serious thing, the point is, its not that cool, it obviously didnt take very much effort to make, so dont post it, k?

Author:  Remm [ Sun Aug 13, 2006 8:53 pm ]
Post subject: 

Sad

Changed, Sorry.


: