Omnimaga
Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: Happybobjr on September 27, 2011, 10:49:59 pm
-
not sure what this game is or even if it exists yet, but it probably does as it is simple.
99.9999% if this ode is quigibo's
Actually only about 80%
Basically you are a ball. You roll down a track and.... I really can't explain... so i made screeny.
Features.
*ball
*map
*ramp
*83+ mode (ish.)
Oh and a note to newer members. Don't expect much from me.
-
That looks pretty epic! Is there any way to alternate the checkerboard pattern of the floor to give a greyscale effect like in Quigibo's mode7 example?
-
that is 95% where the code came from :P
Ya, I can do that. I figured speed over other stuff right now, but i think i found a way for both speed and grey.
Can I post source, or should i get permission from quigibo first since he technically owns more of the game than i do,
Edit: i am stupid, it was open sourced. I will upload code either tonight or tomorrow, depending on how well my idea works.
-
nice, that looks great. A little hard to see what's what, but that's how it is with all 3d calc games.
-
do you really think so?
Maybe i have tested it so many times that i am used to it :D
-
Is it like SkyRoads? Either way, it looks great!
-
Awesome! Reminds me of that Ti-89 game, forgot what it's called :/
-
This loos pretty nice. Great job! :D
-
do you really think so?
Maybe i have tested it so many times that i am used to it :D
Hm...initially I thought so, but I'm sure it won't be a problem after using it a bit.
-
Well that was easy. Got the grey in with speed improvements :P
Screeny sucks. Since it doesn't use a grey routine and just alternates pixels, wabbit wouldn't pick it up.
Demo is BALLZ
Sources is A12
You can't die right now, but that is literally one line of code. (testing purposes)
Also please post feature requests.
-
Awesome! Reminds me of Skyroads
-
Here's a screenshot that shows the grey more solid.
(http://img.removedfromgame.com/imgs/BallzScreen.gif)
-
That looks great! So you are trying to stay on the gray track?
-
In the new screenshot, the ball animation looks a lot better. I like how it move in the direction you are moving. :)
-
Nice, this reminds me of the old plainjump for ion, but this one has better graphics ;D
Keep it up!
-
not sure what this game is or even if it exists yet, but it probably does as it is simple.
It does exist, but In my opinion what you have already is a huge improvement XD. I liek grayscale!
(http://www.ticalc.org/archives/files/fileinfo/67/6707.html)
-
In the new screenshot, the ball animation looks a lot better. I like how it move in the direction you are moving. :)
It actually doesn't.
That is just luck in the screeny. sorry.
Thank you for your interest everyone.
Also, DT's screeny is too prefect compared to reality. Just to let some of you newer mems understand. I used to think my calc was broken because the grey looked different.
-
It looks nice. Well done.
-
HappyBobJR, It would maybe be better, if the grey parts on the "ball" would be white!
But it's really looking Great!!
-
Eh, Meishe just made the screenshot. HappyBobjr made it.
-
oh... ok!
-
HappyBobJR, It would maybe be better, if the grey parts on the "ball" would be white!
But it's really looking Great!!
I have no clue on how to efficiently do that, but it will be added eventually.
* Now has edges dark not grey.
* Added new tiles. Now has a section that shows ramp coming up.
Will probably be adding soon...
* Slow motion.
* Death.
-
Here is a screeny of the outline and the speed improvement. My screeny abilities are still lacking though :P
-
HOLY THAT IS LITERALLY THE SHIT!!!!
-
Very nice. :)
-
Can there be multiple levels of ground?
-
Good idea.
I was thinking about it for a while and I think I shall add it. I will, however, have to rewrite my map code anyways, so adding it won't be much of an issue. Although map size will increase. Also not sure on the displaying of it.
-
Good idea.
I was thinking about it for a while and I think I shall add it. I will, however, have to rewrite my map code anyways, so adding it won't be much of an issue. Although map size will increase. Also not sure on the displaying of it.
uh, uh.....Fourscale?
-
I don't think that would work overly well as I draw pixels one at a time. Having anything more in the drawing routine would be scary slow.
I might have an idea though.... but it will have to be tested first :P.
Also. Can someone think up a name for this?
-
What? Does "Rolling Ball that Jumps with Tracks in 3D and Stuff" not do it for ya? ;)
Um, realistically..."Trackstar" or "Track Star?" I know stars have like nothing to do with it...but it's catchy :P
-
how about trackball? ;D
Or balltrack?
Or Jumpball?
Or Rollerjump?
-
PlainJump. :P
-
SKY ROADS. Read this on ticalc.org somewhere.
-
Plains of Existence
-
cool idea.
-
cool idea.
I don't think that name describes the game enough.
Found a large optimization.
I changed <768
to
-256/512
It may not seem to be much, but it saves much over 1000 cycles per frame. And looks the same.
-
HOLY THAT IS LITERALLY THE SHIT!!!!
... what does that even mean concerning this?
I *know* what it means in english, but *why* use it here?
-
SKYROADS on Google Images (http://www.google.be/search?hl=nl&q=skyroads&gs_sm=e&gs_upl=431l3059l0l3208l8l7l0l0l0l0l626l1439l3-1.1.1l3l0&bav=on.2,or.r_gc.r_pw.&biw=1473&bih=785&um=1&ie=UTF-8&tbm=isch&source=og&sa=N&tab=wi)
Look what I found: http://itunes.apple.com/us/app/sky-jump-lite/id353356849?ty=9 (http://www.omnimaga.org/index.php?action=arcade;game=15)
SKY JUMP.
If the link wouldn't work try this one :http://itunes.apple.com/us/app/sky-jump-lite/id353451429?mt=8
-
I really want to figure out a good way to do depth like this...
http://t2.gstatic.com/images?q=tbn:ANd9GcQOmuEtGaBUZJtI3HHQSax1Dm_KXc54MnuJKiflYb64yKplZXcbIA
-
think... if the platform is four points, draw lines to those points minus how close you are to those points. that way it will look thicker when you are closer.
-
I don't think that would work overly well as I draw pixels one at a time. Having anything more in the drawing routine would be scary slow.
I might have an idea though.... but it will have to be tested first :P.
Also. Can someone think up a name for this?
"Girl You Ain't Seen My".
-
think... if the platform is four points, draw lines to those points minus how close you are to those points. that way it will look thicker when you are closer.
The problem is that will make the game at about 1 frame per 3 sec or so. Lines are not an option :/
-
What if you updated every other frame or something? Would that speed it up enough or would that still be only one frame about ever second?
-
Already doing that. The changes would have to be in the way i draw things, not an addition.
-
if lines are not an option, than how are checker patterns?
-
What about drawing each point individually using a line algorithm? Would that be any faster than the line commands? I don't know how fast they are now.
-
boot2490, that's just basically how Quigibo's mode 7 axe demo works. (HappyBobJr, am I correct in assuming you used a lot of his axe code for this? ;) )
-
boot2490, that's just basically how Quigibo's mode 7 axe demo works. (HappyBobJr, am I correct in assuming you used a lot of his axe code for this? ;) )
"99.9999% if this code is Quigibo's"
Yes you are correct.
I modified it a bit for speed and optimizations though, so i don't feel too bad :P
I have gotten it quite fast now.
This project is going on hold (ish) for a few days.
I am now working on tiles and a map maker for the game to make it easier to test, and more fun to play.
I guess that really ising putting it on hold, but i won' be working on gameplay.
-
Golly the map editor is harder than i thought.
I have the writing to ti-basic program part down, but i can't figure out how to actually make the editor :/
-
How are you storing the level?
(1 byte/tile, 1 bit/tile, etc)
-
Data(.......)->GDB1
-
Ok, so i figured out my problem. I was using the variable Z for two things :/
Also do not do Fill(L3,1,30)
It causes weirdnesses
-
Ok, so i figured out my problem. I was using the variable Z for two things :/
Also do not do Fill(L3,1,30)
It causes weirdnesses
Are you using the back buffer?
-
I am using L3 just as free ram for the map maker.
-
I am using L3 just as free ram for the map maker.
Well then, I suppose that's a bug. Better report it then!
-
Nope, i doubt that is a bug.
I was doing
Fill(loc,#,quantity)
instead of
Fill(loc,quantity,#)
Got the maker finished :)
-
Nope, i doubt that is a bug.
I was doing
Fill(loc,#,quantity)
instead of
Fill(loc,quantity,#)
Got the maker finished :)
Lol, nice.
In that order.
-
source is 1600 bytes
Compiled is 1916 bytes
To do, in this order.
*Optimize and remove unneeded variables. about 750 cycles per frame i think.
*Fix rolling ball sprite.
*organize code.
*Add more tiles. ie Slowdown and conveyor belt tiles, anti gravity and such.
*Say hi to Frey.
* Request someone finds some more optimizations.
* Code death.
* Publish.
Edit: Best easy optimisation ever.
from
1,3
to
1,+2
-
Nice so far. My only complaint is that the map seems to be hard to see. Like, you can only really see clearly the tiles that are like 2 rows in front of you, before that the edges aren't too well defined :(
-
That is fixable to some extent.
It costs speed though. but it looks like i shouldn't have problems with that.
Only side effect is that it makes it go to slow with edges bolded.
-
This looks pretty nice. It reminds me a lot of <a href=http://www.ticalc.org/archives/files/fileinfo/96/9687.html>this</a> game by Andreas Ess. It was originally for the TI-85 I think... I really like the addition of grayscale. Are you going to add objects on the map? For example: A tile that temporarily increases speed, a tile that launches you into the air and propels you forward, or spikes? Just some ideas. I'm also unsure if the outline is necessary. It looks a bit distracting to me.
-
Thank you for your interest. That is what keeps projects like mine alive and well.
I thought the outline made it better, but you can disable it by holding down enter at the start of the game.
When changing viewing distance to 48 pixels, there is a major increase of visibility, but it is much slower and lags with the outline mode.
I do plan on having more tiles.
Also, I just made an awesome speed optimization :D. Any optimization withing drawing routine is huge :P
-
Haha. Downloading this when finished.
-
thanks.
progress is slow due to me being busy, but it is coming along. Not sure how well it will turn out in the end however ;)
Made a few more slight optimizations by lowering the quality. the funny thing is that the top pixels aren't shown anyways, so the quality is exactly the same.
My biggest problem is making the sprites for the tracks right now :/
-
It looks done now, from the screenies. What in the world do you have left to add?
-
thank you for the kind words, but it really isn't close to finished :(
My most immediate problem is compatibility with 83+. I am currently running in Full mode.
-
Oh. Use lines instead of checker patterns! Less draw time.
-
lol, quite the opposite.
Just trust me. the way i am doing it is much faster. Not sure how to explain it.
-
That, is illogical.
I'm all ears :3
EDIT: Not literally, that would be WEIRD
-
Crazy Idea: rotation and velocity control. Think like the chocobo Screen in FF6
-
That, is illogical.
I'm all ears :3
EDIT: Not literally, that would be WEIRD
Only every other pixel gets chosen to be checked to be if drawn. It cuts out half the routine.
Crazy Idea: rotation and velocity control. Think like the chocobo Screen in FF6
could you explain that one?
(Never played FF6 as i didn't have a supported system)
-
I think he means you can turn. THAT would be cool
-
I think he means you can turn. THAT would be cool
You two seem to think I am smarter than I am. I will try to teach myself real 3d sometime then...
-
Don't take that too seriously.
I think it is fine as it is. How is drawing over 100 pixels in one frame faster than drawing four lines for each platform? That would have a decent framerate in BASIC.
-
Well, it's still not real 3D
Another example = F-zero, either calc's version, or the SNES's. Basically rotating Mode7, with the jump physics. You could make a puzzle game of sorts!
@boot2490 Axe's Pixel drawing is blazingly faster than Basic's, while its line drawing routine isn't nearly as improved. Keep in mind that in Basic, the main slowdown is the fact that it has to be interpreted by a crappy interpreter, so everything is slow. Line drawing is fairly complex, since it has to determine slope in a form that it can draw on-screen per pixel. I can see why Pixel drawing would be faster in some cases.
In fact, in axe it's faster for vertical or horizontal lines to be drawn with a 1-pixel wide rect() command than the line command, even though it draws the pixels twice.
-
Huge optimization thanks to Runner.
Using his LCDKIT Axiom, I can remove "+32".
That is 21 cycles removed per pixel shown. :D
-
Epic. Is there also size win?
the game
-
WOW, that is awesome!
-
(@ TIOS) Nope, the code is slightly larger. But it isn't very noticeable.
The program is currently 1927 bytes. which is only about 300 more than the source ;)
-
Thats not too bad
so the program runs way faster now?
-
It runs smoother and quite a bit faster from last update.
-
Nice. Can you now also add new features or don't you want to do that?
-
Lol, my problem is getting a strong amount of time for only programming :P
I only get a few min here and there between homework, Karate, Pole-vault, and boyscouts. (and trying to teach myself about rotating 3d ;) )
I think the first features i will add are new tile types, including an anti-gravity block.
Edit: here is the latest build (and if someone can make a screeny, it would be appreciated. I can't get wabbit to make the screeny smooth grey)
-
Cool. could you maybe upload your current version?
-
i did http://www.omnimaga.org/index.php?action=dlattach;topic=10657.0;attach=9799
I do it separately out of habit. There used to be a bug where it would fail sometimes, and i didn't like rewriting things :P
and here is source if u want to look for optimizations.
-
Ok, I might actually be able to implement rotation in
the game this game. Haven't tried it out yet as i have to move some buffers around :/ but i will be working on it.
Anyone know a way i can do...
Data(768 0's)->GDB2
other than typing them in manually...
-
Ok, I might actually be able to implement rotation in the game this game. Haven't tried it out yet as i have to move some buffers around :/ but i will be working on it.
Woo! Do you mean ground rotation? If so, that would be great!
-
Ya I do, Not sure if this will be the same game from start to finish ;) Goals in it may change along the way.
I didn't realize that i wouldn't have to rotate the whole screen, just what the user could see.
Time to make some calculations for depth seen, then use that to determine how much of the screen should be rotated.
Also, about time for bed. (to dream about Mariokart on calc)... (oh and dream about the Nspire's RSA keys to be factored)
-
I'm just curious. How would you rotate the image?
-
here is the unoptimized version...
:For(X,0,95)
:For(Y,0,63)
:cos(A)->D
:sin(A)->E
:If pxl-Test(X,Y)^r
:Pxl-on((X*D-(Y*E)//128,Y8D+(X-16*E)//128)
:END:END:END
What I am planning to do about speed is only checking aprox, a 32*32 area.
If that is too little, i will change it to a 48*48 area, or change depth perception.
-
Wow. I didn't realize that rotation was that easy. I'm looking forward to playing your game and seeing all of the visual effects.
-
Anyone know a way i can do...
Data(768 0's)->GDB2
other than typing them in manually...
Zeroes(768)->GDB2
And I can make you a screenie:
(http://img.removedfromgame.com/imgs/Rotating_Ball.gif)
(the screenie doesn't look great, but it's something for people to see)
-
i want to play BALLZ.8xp
-
I love how this looks like, plus the gray ish platforms makes it easier to see the ball. I also like how it's not just the ball moving up/down with no camera height change like in other PlainJump clones, but rather the camera moving with the ball.
-
thanks DJ :)
The platforms are much better grey than the screeny. I just can't figure out how to make wabbit show it :P
Wow. I didn't realize that rotation was that easy. I'm looking forward to playing your game and seeing all of the visual effects.
Ya i was surprised too. Keeping good speed is a problem though. But I feel I have a good chance of getting it in.
-
WOAH that is awesome!!!!
-
Ya... just learned I have to rewrite a ton of stuff. I ran out of variables :banghead:... but i think i can cut 10 or so out.
I need to change the whole displaying routine so i can have a 32*32 block around the ball so I can add rotation support.
Need to change allot of coordinates around so things will still work after transitions. So probably about 2-7 days to get this working well if I have time and things go well.
I will also need to completely change the way maps are done, and/or learn smooth scrolling :/
-
Ok, so i have very rude rotation in right now, and it's not going over so well. It isn't smooth at all :/
This is highly likely to be split into several different projects.
-
what do you mean, you ran out of variables? also, wouldn't it be faster if the ball was white with a black outline, and the tracks were black? No need for greyscale?
-
Not sure why it would be faster with white ball.
The tracks are black.
My code was sloppy, and i ended using all variables A-Z + theta (although I worked most out :P)
Rotation routine is extremely slow, so I am currently working on fixing that.
-
you can use L1 or some other location in RAM for Variables, and the tracks should be black, not grey to havee more speed. But in order to distinguish the ball from the track, you need a white ball. ;)
-
but then it'll look like a Plain Jump D:
-
The track is black though, only every other pixel is drawn.
@yeong: there is still a good chance i can implement rotation, even if it's just a little. think about cube runner ;)
-
You might want to consider (just a suggestion) using Pt-Off instead of Pt-On or Pt-Change to display the ball itself, so it's easier to see the ball (not that it's hard to see right now)
-
no, that looks awful. its fine now.
-
Ok. Just a thought.
-
you could also use a black ball with white outlining.
-
you could also use a black ball with white outlining.
You could use Pt-Invert for that
-
Pt-Invert? Is that a new command, or did you mean Pt-Change?
-
Pt-Invert? Is that a new command, or did you mean Pt-Change?
Pt-Invert x.x
-
What, I should maybe check the readme included with axe 1.0.5 :P
-
WTH, Frey?/me meant Pt-Change both times
/me smacks himself
-
lol. I thought so.
-
Any news on this by the way?
-
Nope. Supper busy with my life right now.
Other than homework, I have an eagle project and...
I am in love with a girl, and dating another... I didn't even ask her out. She basically told me "i am your gf now"..... And i don't really like her, but i don't want to hurt her at all.
So ya, I will try to get back into this, but there seems no chance at rotation as some pixels become lost, and when expanded as they are... just doesn't look right.
Edit: Single :D
-
This looks really awesome, nice job!
-
I hope you don't give up though. Good luck with life, hoping things are already going better now.
As for rotation I think you should just have the game move forward, with no wireframeness. If you use Quigibo's mode 7 engine it didn't support rotation anyway I think.
-
I have worked on this a little more, but only as a side thing. some optimizations on rare occasions.
I got rotation down quite well, but speed wise it wasn't feasible, and there were missing pixels, so i scratch it out.
The past week i have been emotionally unstable and my life had went down quite a bit, but that's all under control.
And i have been spending a good amount of time making Jetpack Jerome for the competition, so that takes a little time.
This is looking a little bit smoother too so... :)
-
Bad screeny, but it is much faster :D
Edit: Runner you are great.
-
Wow, cool O.O
-
What did you make that screenie with?
-
Wabbit.
This game's grey doesn't work with it :P
This game is becoming much better, but it is difficult to change around because it has been so long since i was messing with it.