Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: chickendude on September 27, 2013, 07:17:40 am

Title: [contest '13][asm] Digger
Post by: chickendude on September 27, 2013, 07:17:40 am
I don't know if i'll actually follow through with this, but i've been trying to come up with an idea for the contest. So far i've got a small engine written, i'm not sure what will really come of it though. Originally i wanted to try making one of those games where you have to dig in the ground to collect items/weapons, kill bad guys, etc., but i sorta tossed that idea. I haven't changed the name of the source file, though, so that's why the project's still called "Digger".

Now what i've got in mind is some sort of graffiti game, i was thinking you'd have to go around collecting paints, dodging police (and maybe rival crews), finding nice walls, etc. It's not all mapped out, but i'm thinking something like that would be feasible.

And a screenshot:
(http://www.mirari.fr/VLN4)

There are still quite a few glitches with the jump detection, but for now it supports tiles with variable (Z) heights (you can see the two tables, one has a height of 8 the other a height of 4, and the trash can has a height of 5).

Anyway, we'll see where it goes.
Title: Re: [contest '13][asm] Digger
Post by: TIfanx1999 on September 27, 2013, 07:25:28 am
By the title, i thought this was going to be a Dig-dug clone. I think your new idea sounds pretty cool though. I'd like to see how you implement it. Would it be goal based? Open world? Randomly generated? There's a lot of different things you could do with this. :D
Title: Re: [contest '13][asm] Digger
Post by: chickendude on September 27, 2013, 08:13:33 am
That's actually what i originally wanted to do, but i couldn't figure out a good way to implement erasing just part of a square. I may end up going back to it later.

I'm thinking you might have to achieve certain goals before passing a level (things like painting large murals, collecting certain items, etc.) or maybe adding in a points system based on the number of "colors", size, etc. Perhaps also the longer you stay in one area painting the more likely someone is to call the cops, and if you leave an area too long what you've started to paint will get cleaned up or you'll lose reputation points for leaving too many tags half-done. I'd also like to add in some action such as fights, chases, etc.

It's not all very clear yet, but i'll be trying to figure it out as a go along. :)
Title: Re: [contest '13][asm] Digger
Post by: Xeda112358 on September 27, 2013, 08:25:47 am
The graffiti game idea sounds fun and the variable tile heights are an awesome feature!
Title: Re: [contest '13][asm] Digger
Post by: Sorunome on September 27, 2013, 08:45:21 am
That is looking awesome so far, great job! :D
Title: Re: [contest '13][asm] Digger
Post by: Streetwalrus on September 27, 2013, 11:32:29 am
The graffiti game idea sounds fun and the variable tile heights are an awesome feature!
Yup. Now I feel like breakout is not gonna compete well. <_<
Title: Re: [contest '13][asm] Digger
Post by: chickendude on September 27, 2013, 12:14:22 pm
Well, i think you're much more likely to finish breakout than i am to finish this ;)

Anyway, for now i'm going to try to fix some of the bugs with the collision detection and add a little shadow to help make the jumps look a little better. I'm still a little unsure how to pull everything together, but i'm starting to get a vague idea. One thing at a time, i guess :)

EDIT: Also, i was thinking that this engine might work nicely for a skateboarding game...
Title: Re: [contest '13][asm] Digger
Post by: Streetwalrus on September 27, 2013, 12:23:59 pm
If you can add slopes then definitely. ;)
Title: Re: [contest '13][asm] Digger
Post by: shmibs on September 27, 2013, 01:10:33 pm
i love the behind-tile masking =D. how are you managing that? just drawing less of the player sprite if there's a tile in front?
Title: Re: [contest '13][asm] Digger
Post by: chickendude on September 27, 2013, 01:35:10 pm
Tiles that can be walked behind have a special mask. Walking behind the small table works, too, and you could also have something like a gate or a net where it's not exactly a straight line. Really i just check the tile(s) beneath the player and redraw those tiles if they are tiles that should be masked.
Title: Re: [contest '13][asm] Digger
Post by: AssemblyBandit on September 28, 2013, 01:12:37 am
That is an amazing engine! The first time I've seen jumping in a 4 way scroller!

Streetwalker: I don't think I want to compete with it either!
Title: Re: [contest '13][asm] Digger
Post by: chickendude on September 28, 2013, 04:02:15 am
Thanks, it's pretty simple and doesn't really slow down the engine any. I hadn't seen it in any games with jumping for the 83, either, but you've gotta check out Robot War 2 (http://www.youtube.com/watch?v=TeAXO-DW_Cw) for the 82, by DigiTan!
Title: Re: [contest '13][asm] Digger
Post by: Sorunome on September 28, 2013, 04:28:24 am
wow, just wow that game O.O
Title: Re: [contest '13][asm] Digger
Post by: TIfanx1999 on September 28, 2013, 09:39:30 am
That's actually what i originally wanted to do, but i couldn't figure out a good way to implement erasing just part of a square. I may end up going back to it later.

I'm thinking you might have to achieve certain goals before passing a level (things like painting large murals, collecting certain items, etc.) or maybe adding in a points system based on the number of "colors", size, etc. Perhaps also the longer you stay in one area painting the more likely someone is to call the cops, and if you leave an area too long what you've started to paint will get cleaned up or you'll lose reputation points for leaving too many tags half-done. I'd also like to add in some action such as fights, chases, etc.

It's not all very clear yet, but i'll be trying to figure it out as a go along. :)

That sounds pretty awesome, hope you can hash it out. :D I think this engine could potentially work for a skateboard game as well.
Title: Re: [contest '13][asm] Digger
Post by: Hayleia on September 29, 2013, 03:05:00 am
Wow, you've got a lot done already, and that screenshot sure is appealing. I hope you finish it one day, even if not in time for the contest.

I think this engine could potentially work for a skateboard game as well.
Or a(nother) MineCraft clone. You'd have to add camera rotation (not all angles, just 0°, 90°, 180°, 270°) but that could work.
Title: Re: [contest '13][asm] Digger
Post by: chickendude on September 29, 2013, 05:15:36 am
I'm going back to the US today so it'll probably be a few days before updates. See you all in a few days :)
Title: Re: [contest '13][asm] Digger
Post by: Sorunome on September 29, 2013, 05:16:13 am
Have fun in the us! Where are you heading? :D
Title: Re: [contest '13][asm] Digger
Post by: chickendude on October 02, 2013, 07:45:11 am
To Virginia.

On the plane ride i had a long layover so i managed to fix most of the bugs in the collision detection and added in a few other little things. I also started working on handling graffiti and figuring out its data format. I also keep writing for some reason "Graphi-TI" ;)

Here's the latest screenshot:
(http://www.mirari.fr/MVx4)
Title: Re: [contest '13][asm] Digger
Post by: Sorunome on October 02, 2013, 07:59:57 am
stop blowing my mind :P
Title: Re: [contest '13][asm] Digger
Post by: TheMachine02 on October 02, 2013, 11:31:52 am
Just WOW . Especially love the shadow Under the player  ;D
Title: Re: [contest '13][asm] Digger
Post by: TIfanx1999 on October 02, 2013, 12:22:27 pm
That's looking very nice! =D
Title: Re: [contest '13][asm] Digger
Post by: Streetwalrus on October 02, 2013, 01:19:32 pm
Yup, awesome ! :D
Title: Re: [contest '13][asm] Digger
Post by: chickendude on October 02, 2013, 02:18:29 pm
Thanks everyone :)

Someone suggested maybe moving the camera a little with the player, so i added that in quickly:
(http://www.mirari.fr/Gfho)
Title: Re: [contest '13][asm] Digger
Post by: TIfanx1999 on October 02, 2013, 02:31:05 pm
Not much to say other than "looks great!'. :D
Title: Re: [contest '13][asm] Digger
Post by: AssemblyBandit on October 02, 2013, 04:26:50 pm
Yeah it definitely looks good!
Title: Re: [contest '13][asm] Digger
Post by: Sorunome on October 02, 2013, 07:32:37 pm
that is awesome :D
Title: Re: [contest '13][asm] Digger
Post by: Eiyeron on October 03, 2013, 05:29:06 am
I specially love how the camera doesn't totally follow the player. Ut's a nice detail you added!
Title: Re: [contest '13][asm] Digger
Post by: chickendude on October 14, 2013, 06:34:19 pm
Hey, i've been super busy lately and haven't had much time to work on it, but i got the graffiti working alright today:
(http://www.mirari.fr/uSmU)
Title: Re: [contest '13][asm] Digger
Post by: Matrefeytontias on October 15, 2013, 03:00:16 am
Looks nice :D I wonder what it will look like at the end ...
Title: Re: [contest '13][asm] Digger
Post by: Sorunome on October 15, 2013, 06:02:38 am
wait, you an draw graffitty on grass? O.O

Anyways, it's looking nice! :D
Title: Re: [contest '13][asm] Digger
Post by: chickendude on October 15, 2013, 08:15:15 am
I've still got to implement the tile detection to make sure it's only being drawn on appropriate tiles (essentially walls) and i'd like to add a little sprite of a spraypaint can (and perhaps a little spray animation) when painting.

Due to the camera view, i'm not sure if it'll be possible to paint left/right/down. I don't know what you all think about that..? Or if you've got an ideas i'd love to hear...

I'll try to clean this up a little bit and add in cops.
Title: Re: [contest '13][asm] Digger
Post by: chickendude on November 06, 2013, 10:27:57 pm
Well, i just sent in my entry. It's definitely not complete or really even that fun, but the engine's pretty interesting i think. There're a couple bugs, namely with offscreen sprites. I spent the past week or so trying to write a nice pathfinding routine and in the end just gave up. I probably shoulda just left it long ago and worked on other things (levels, fighting, etc.). Oh well. Good luck to everyone!
Title: Re: [contest '13][asm] Digger
Post by: Matrefeytontias on November 07, 2013, 08:27:24 am
I'll always be amazed by those awesome camera movement. Amazing work :)
Title: Re: [contest '13][asm] Digger
Post by: Sorunome on November 07, 2013, 11:53:28 am
/me hopes you'll still finish it even though the contest ended

But seriousley, i only want to play around with those controls alone O.O
Title: Re: [contest '13][asm] Digger
Post by: chickendude on November 07, 2013, 02:12:16 pm
Thanks guys. I've still got a few other projects to finish up, but i'll get around to it. I also wanted to post another screenshot showing the different height levels you can have. It's still buggy, but here you can see it in action.

I'd also be interested in talking about possible pathfinding routines, i've been wracking my brains the past week or two and haven't come up with anything satisfactory.
Title: Re: [contest '13][asm] Digger
Post by: Streetwalrus on November 10, 2013, 05:42:15 am
my brains
O.O
Looking nice anyway. :D
Title: Re: [contest '13][asm] Digger
Post by: Xeda112358 on November 10, 2013, 08:16:22 am
For path finding, I have only successfully done it on a tiled maze. Essentially, I had the human player and the non human player 'chasing.' Chasing is done by moving in the optimal direction to be closer to the human player. The trick is when the chaser gets stuck, I would draw on some other buffer marking the position and the chaser would not be able to stay on that tile, so they would move backwards or left/right and each tile visited for the next 8 or 16 turns would be marked as well and they would remain marked for 8 or 16 turns (think of a snake from a snake game being placed on the other buffer growing for 8 or 16 turns, then shrinking).

This allows the chaser a little more intelligence to get unstuck, and when you have multiple chasers, the others can avoid getting stuck, too, while potentially taking other routes. I actually got the idea from a cellular automata experiment where I had a few hundred cells navigating a maze and the majority of them were able to find the exit. That, however, is too taxing on the CPU for use in a game on these calculators.

I wish I still had a working example :/
Title: Re: [contest '13][asm] Digger
Post by: chickendude on November 10, 2013, 11:21:55 pm
Hmm... thanks for the ideas. I thought of sending out "rays" to check for walls, and if you come across a wall walk towards the first walkable tile, but it's got a few weird quirks that don't quite work too well.
Title: Re: [contest '13][asm] Digger
Post by: ClrDraw on November 11, 2013, 12:38:29 am
That's cool   O.O will it do anything else? Different levels and more enemies?
Title: Re: [contest '13][asm] Digger
Post by: chickendude on November 11, 2013, 12:18:44 pm
I've been thinking of letting you fight the cops, upgrade your tags (make them bigger, for example) add a score system, and perhaps add in level objectives like in Tony Hawk (having a time limit to do certain things, like collecting paint cans, painting certain areas, getting X points, etc.). It's very much a work-in-progress, so we'll see. For other enemies, all i can think of are security guards or maybe a special anti-graffiti squad, rival crews, etc. I'm all ears to any ideas.
Title: Re: [contest '13][asm] Digger
Post by: TheMachine02 on November 11, 2013, 12:21:05 pm
For other enemies, all i can think of are security guards or maybe a special anti-graffiti squad, rival crews, etc.
It's sound very great !

How you want to implement cops fighting though  O.O  ?
Title: Re: [contest '13][asm] Digger
Post by: shmibs on November 11, 2013, 04:19:09 pm
I've been thinking of letting you fight the cops, upgrade your tags (make them bigger, for example) add a score system, and perhaps add in level objectives like in Tony Hawk (having a time limit to do certain things, like collecting paint cans, painting certain areas, getting X points, etc.). It's very much a work-in-progress, so we'll see. For other enemies, all i can think of are security guards or maybe a special anti-graffiti squad, rival crews, etc. I'm all ears to any ideas.

the "rival crews" thing is a great idea. when graffiti first started to be a big thing, there were fiercely competitive gangs fighting against one another to take all the best spots in cities. more established crews would "toy" with the upstarts (write over the top of them), but, if the young crews tried to "background" their betters, they could end up being killed. adding in different types (i.e. tags, burners, top to bottoms, back to backs) would also be fun.
Title: Re: [contest '13][asm] Digger
Post by: chickendude on November 11, 2013, 10:57:25 pm
For attacking cops/other enemies you would just pick up items (like bats or knives) as you go, maybe stash them in a backpack or just be able to hold one thing at a time. I initially wanted to add in other graffiti types, in particular larger tags and burners. The sprite routines and tag data is set to handle different sizes. I was planning on using [Y=] to [Graph] to let you pick/set different tags/burners. I'm wondering if there'd be a more interactive/fun way to go about it, right now you have to hold down that button (currently only [Y=] works) to continue painting. I was thinking if you spend too long away from a tag before finishing it it'll get washed away.

I'm also not sure if cops should attack you by default or only if they catch you doing graffiti. Also, attacking a cop might make them call in for backup, which might mean a spot gets hot for a while and you need to either lay low or leave the area for a while. I also like ideas of having attributes, again similar to Tony Hawk, where you can do things like paint faster, carry more paint with you, run faster/jump higher, etc.

Lots of ideas, just gotta start working them in.

EDIT: i'd also like to try to reuse this engine to set up a skateboarding-type game. I can foresee a couple problems (apart from probably being limited to 8 directions), but i think it'd be fun nonetheless.
Title: Re: [contest '13][asm] Digger
Post by: DJ Omnimaga on November 11, 2013, 11:07:26 pm
Very interesting idea. I also like the graphics. :D