It is currently Sun Dec 17, 2017 10:24 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 138 posts ]  Go to page Previous  1 ... 6, 7, 8, 9, 10  Next
Author Message
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Mon Sep 18, 2017 10:15 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
Oh my @#%(@# ... Wow, Finally squashed that one, turns out, it was in this part of the code:

Code:
 void handle_player_in_field(void)
 {
-  if ((stamps[STAMP_X(i)]==PIXEL_BOX_X(a)) && (stamps[STAMP_Y(i)]==PIXEL_BOX_Y(b)))
+   if ((stamps[STAMP_X(i)]==PIXEL_BOX_X(a)) && (stamps[STAMP_Y(i)]==PIXEL_BOX_Y(b)))
     {
       // We are aligned.
       if (PLAYER_PAD_RIGHT(i) && stamps[STAMP_LAST_STATE(i)] != STATE_PLAYER_RIGHT && !BOX_WALL_RIGHT(d))
-       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(i)]=STATE_PLAYER_RIGHT;
+       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(i)]=STATE_PLAYER_RIGHT;
       else if (PLAYER_PAD_LEFT(i) && stamps[STAMP_LAST_STATE(i)] != STATE_PLAYER_LEFT && !BOX_WALL_LEFT(d))
-       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(i)]=STATE_PLAYER_LEFT;
+       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(i)]=STATE_PLAYER_LEFT;
       else if (PLAYER_PAD_UP(i) && stamps[STAMP_LAST_STATE(i)] != STATE_PLAYER_UP && !BOX_WALL_UP(d))
-       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(d)]=STATE_PLAYER_UP;
+       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(i)]=STATE_PLAYER_UP;
       else if (PLAYER_PAD_DOWN(i) && stamps[STAMP_LAST_STATE(i)] != STATE_PLAYER_DOWN && !BOX_WALL_DOWN(d))
-       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(d)]=STATE_PLAYER_DOWN;
+       stamps[STAMP_STATE(i)]=stamps[STAMP_LAST_STATE(i)]=STATE_PLAYER_DOWN;
       else if (PLAYER_PAD_IDLE(i))
-         handle_pad_idle();
+         handle_pad_idle();




I was accidentally using (d) as an index into the stamps table, which in this case, literally was returning 0 if the opposing player had just aligned with the box.

*BLUSH* :)

welp, we all make mistakes, don't we? :)

Now it's on to shooting the phasor cannons and then to implement monster to cannon and monster to player collision. (I need to study the last one, it's not a bounding box detection, nor is it pixel detection, but I suspect it literally is a direct box alignment, need to observe.)

**WHEW** :)

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sat Sep 23, 2017 11:12 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
my OCD has gotten the better of me, and I'm spending the next couple of days shifting the maze downward, so that it can fit properly within NTSC overscan. which in my case means a minimum of one tile shift, but I'm doing two, so that the bottom of the dungeon will meet flush with the dungeon text, like it does in the arcade.

This does mean, that I had to make copies of the tops of my A-Z tiles, and paint horizontal rules above them to match the bottom of the dungeon. This also means that there currently is some attribute clash that I am working out, but the result will look a LOT better, when I'm done.

once this is done, I will start to implement player shooting.

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sat Sep 23, 2017 11:22 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6540
Location: Seattle
Could you adjust the Y scroll instead?


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sat Sep 23, 2017 11:39 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
lidnariq wrote:
Could you adjust the Y scroll instead?


Not in this case, I'll post a before and after, and you'll see why i'm doing this.

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sat Sep 30, 2017 11:10 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
I was going to post this earlier, but nesdev was being moved. :)

So, I've managed to shift the playfield a bit down so that it looks a LOT better (there isn't that goofy gap between the dungeon and the dungeon name, and the radar, anymore.). I also color coded the player countdowns, and implemented teleporting (both players, as well as the enemies can utilize the teleport, which, given that it has a delay, definitely makes things interesting.)

https://www.youtube.com/watch?v=qYrk4bJcSeo

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sat Sep 30, 2017 11:13 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
Now i've got an interesting problem, I'm running out of CHR-ROM space for my sprites. Shit.

Basically, I need space for two things:

* The Wizard of Wor needs 36 CHR tiles (2x3, all different, can't reuse bits, 3 frames horizontal, and 3 frames vertical.)
* The between level messages need approximately 32 tiles a piece, of which there are basically four.

I've made the concession that the between level messages always wind up on their own screen. (instead of in the arcade where some of the messages appear over the playfield)

So basically, I need...two more CHR ROM banks. How can I best pull this off?

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Oct 01, 2017 6:09 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19355
Location: NE Indiana, USA (NTSC)
I've got a solution in mind, but to pull it off, I need to know the following:

  • Are there any pairs of enemies that never appear at once?
  • How much background manipulation are you doing during vblank?
  • How much PRG ROM space is free?


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Oct 01, 2017 8:23 am 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
The Worluk and the Wizard of Wor appear only once on the playfield, no other enemies present.

I'm doing my background manipulation very much interleaved, I spin between four background updating states:

* score (28 tiles)
* teleports (6 tiles)
* Doors (12 tiles)
* Box timers (up to 4 tiles)

and the memory map: https://i.imgur.com/ZoXgCe7.png .. which shows 14K of PRG left (but I haven't implemented the rest of gameplay yet.)

-Thom


p.s. And maybe the sprite CHR rom has enough space, because I calculated the space for all 6 different sprites, with 6 tiles each, with 6 possible states + 36 tiles for the player shooting, so that means 252 tiles... which once you add in the 3 radar dots and the laser, that's all the cells....wheee.)


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Oct 01, 2017 8:30 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19355
Location: NE Indiana, USA (NTSC)
You should be able to store the CHR data in PRG ROM and copy it to CHR RAM, following these instructions. Then in levels with normal enemies, you can load their tiles, and in levels with the bosses, you can load their tiles.


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Oct 01, 2017 3:44 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
tepples wrote:
You should be able to store the CHR data in PRG ROM and copy it to CHR RAM, following these instructions. Then in levels with normal enemies, you can load their tiles, and in levels with the bosses, you can load their tiles.


Cool! Thanks! :)

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Mon Oct 16, 2017 10:08 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
Am A/Bing my game/vs the arcade...not happy with the walk cycles.. going to mess with the delay and the frames so that the walking tweens are close enough.

Yeah..yeah...procrastinating on the shooting...but this is part of me trying to make sure what I have so far will withstand later testing and polishing.

Some may think this is nuts, but I _really_ want this to be good.

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Dec 17, 2017 3:38 pm 
Offline

Joined: Mon Jul 03, 2017 4:37 pm
Posts: 101
Am curious.

What do you guys do, to rekindle motivation? This year has been very stressful, and I'm having difficulty jumping back in to work on this, even though, I really want to see this completed. What do you guys do when you're faced with a deficit of motivation?

-Thom


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Dec 17, 2017 4:19 pm 
Offline
Formerly WheelInventor

Joined: Thu Apr 14, 2016 2:55 am
Posts: 1135
Location: Gothenburg, Sweden
Quote:
What do you guys do, to rekindle motivation? This year has been very stressful


Don't i know it. What i don't know is the proper thing to say here, but...

I do find it helpful to collaborate on projects. Not as much because it's a joint effort but because it feels more "real" than when doing something alone, and because i'm held accountable, which feels good in my case. The realness might be important or nonimportant to you, but it's a theory (i think it was Hegel perhaps?) that people need to "mirror" themselves in their productive/creative output in order to not feel alienated. Having someone you for certain know is interested in the project means you can help each other mirror back and forth. My individual projects may sag behind, but that's ok to me as long as i do something with that sense of realness and recreation. I don't think everyone needs a partner like this, but i think that mirroring (even for oneself) and self-creation is pretty important. Does that resonate with you in some way?

Though if the underlying problem is too much background stress and it won't go away on its own sometime soon, i think the solution might be a structural one. No easy way around that. Not that it's an either or case, thankfully.

If tingering with wizards of wor gives you relief or has given you relief at some point from that stress, then that's good.


What made you think about porting it in the first place?

_________________
http://www.frankengraphics.com - personal NES blog


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Dec 17, 2017 4:36 pm 
Offline
User avatar

Joined: Wed Apr 02, 2008 2:09 pm
Posts: 1047
I keep my motivation by making the tasks on my todo list smaller.

Code:
Make enemy one
Make enemy two

Might be overwhelming.
Code:
Make enemy one
   Add timer to stop it from smiling before attacking
   Add data for its attack
   create a new attack state
      make it slide while attacking toward the player
Make enemy two

It's may seem more stressful because it's longer, but you're much more likely to be able to "add a timer" than "make enemy one" in one sitting. And sometimes the reason I don't do something is like, "Well, I don't have time to do *task* right now, so I will do nothing." This makes *task* smaller, so it's more likely to fit in a smaller block of time.
Edit:
I guess it also helps to define what you actually want. Sometimes you think you know what you want for enemy one, but the vagueness of what's in your head is actually what's stopping you from making it. The small tasks force you to define what's needed in a real way. "Add ladders" vs "Handle these 5 real cases ladders will need." You're forced to think about the problem.

_________________
https://kasumi.itch.io/indivisible


Top
 Profile  
 
 Post subject: Re: WIP: Wizard of Wor
PostPosted: Sun Dec 17, 2017 5:16 pm 
Offline
Formerly WheelInventor

Joined: Thu Apr 14, 2016 2:55 am
Posts: 1135
Location: Gothenburg, Sweden
kasumi wrote:
but the vagueness of what's in your head is actually what's stopping you from making it.

This is so relatable, in my experience.

Also with a bit of luck, doing the tiniest/least threatening task you can find sometimes starts off an avalanche of creative pushes. Don't force it. A tiny task here, another there. Maybe with a lot of time in between, maybe not. When the avalanche comes, you rarely realize you're in it before the midpoint.

_________________
http://www.frankengraphics.com - personal NES blog


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 138 posts ]  Go to page Previous  1 ... 6, 7, 8, 9, 10  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group