Banner
Views: 290,396,646
Time: 2014-04-20 10:50:46 AM
19 users online: cackletta, o Everest, GloriousWater, o HackerOfTheLegend, Hinalyte, Horrowind, Krazy Kremling, levelengine, MarioFanGamer659, Master S, Meirdent, o Mirann, Pikachu, Rockythetigre, rumpg46691, Serperior57, tcdw, o Underway, Vitor Vilela - Guests: 29 - Bots: 57Users: 24,799 (1,111 active)
Latest: Fabong
Tip: Make sure you can beat your own levels without savestates, slowdown, or rewinding.
Posts by smkdan
smkdan's Profile - Posts by smkdan
Pages: « 1 2 3 4 5 6 ... 88 89 »
The BVZ issue is my bad. Again, I copied a 'bad' copy from another directory. It's fixed now. Also fixed a minor issue with taptap, one of the frames of his shoe had a BVZ tile in it.



I honestly don't know what the deal with taptap is. I've never encountered any glitches with it. Well, if I messed up the same way I did for BVZ, it was from the wrong directory. This one has never glitched on me in quite a few tests.

EDIT: If you have no issue with it you can send me a ROM /IPS and if you can, a save state before the crash occurs so I can see what is really happening. I may have overlooked something but I can't find anything wrong that would cause random crashes.
Last edited on 2007-10-22 01:30:56 AM by smkdan.
Let me know how it goes Remnic.

I fixed a few issues, the most serious ones being the sprites hoarding memory (again). It should be fine now. Forgot that the BVZ makes sound too. Also, I added a needlenose (bouncy green cactus) BVZ. It's set for custom sprites, so that particular one can be used as a base for them. again, you have to set it up in the .asm file.

Oh, and A YI Boo is coming next. The 32x32 one that provides a nice gap between a resourcing hogging big boo and the originals.
Last edited on 2007-10-23 06:37:37 AM by smkdan.
Change 3 bytes at 103F (headered) to EA. It simply won't tick.


OK, YI boo is done. Also fixed up another issue in the other sprites...BVZ can be set to comeback or stay erased when it drops it's load with the extra bit.

MrCheeze: ???

Boing: A tweaked graphics routine will do that. I already have 2 defaults and a YI Shy Guy will be one of them. I'll just have the default spritetool YI shyguy, but with GFX in my file.

Those sprites in Mario Fantasy are already out there. Except the flower thing I think. I might make whatever the author keeps to himself. And no, I don't care for beta sprites.
Thanks for the feedback. I think I'll make this my 'permanent' thread for new sprites from YI. There's still a load of them to do.



I added one that holds a shyguy. It generates the default one from spritetool, just with a tweaked tilemap.

Few things in mind for later on:
-Green pirhana plant that shoots at you
-Flower that acts like a dragon coin
-A new fly guy with alternate approach
-A bandit if I can get a few things out of the way

Change the needlenose one if you want it to drop custom sprites. Change the Goomba one to drop standard sprites.

Code
SPRITE_NUMBER = $02	;SET THIS TO THE SPRITE OF NEEDLENOSE
SPRITE_GFX = $0E	;Set this to the GFX of the sprite you want it to hold
SPRITE_PROP = $1B	;palette, GFX page etc.


In the .asm you'll find this. SPRITE_NUMBER is the number of the custom sprite you want it to generate. It's the same as the number you put into the input .txt for sprite tool. SPRITE_GFX is a tilemap entry for a 16x16 GFX that it will hold until it's generated. SPRITE_PROP is the general properties in the 'Xyppccct format'.

EDIT: I have to lookup the dissasembly to figure out how the line guided sprites work, but don't count on the circular blue hypno platform since it would be really taxing on GFX space.
Last edited on 2007-10-26 09:13:29 PM by smkdan.
@anonimato
Your background rocks!


A HDMA ripple effect on the water would look great on those backgrounds.


I have no issue getting it to hold + generate one of them. So I can't provide any help beyond asking you to redownload it...I don't recall fixing an issue like that but I can't think of anything else. You are reinserting the sprite when you change the variables, right? It sounds silly but there's no other logical reasons I can think of why it would do that.

Code
 	LDA #SPRITE_NUMBER	;load sprite to generate...
	STA $9E,y		;into sprite type table

Code
	LDA #SPRITE_GFX
	STA $0302,y	;sprite to gen GFX


These bits take the values in the variables you just posted and put them into action. The variables aren't being changed if it makes the same sprite.
Originally posted by darklink898
Why does that shy guy hides in the bush so weirdly?


There's actually a flower behind the bush. The flower has BG priority set to be behind the bush. The shyguy has sprite priority to be behind the flower, but BG priority to be infront of the bush, so it gets obscured in a wierd way. It's just a quirk of the sprite rendering, I think.

E: Coming soon:



You'll set a sprite to generate like the BVZ and how many of the generated sprites can be on screen at any given time.
Last edited on 2007-10-27 01:52:05 AM by smkdan.
Naval Pirhana isn't happening. If it does, it's not me who's making it.



My take on Egg Plant is done. Extra bit decides on custom / standard sprite and Extra Prop 1 decides what sprite # to generate. Extra Prop 2 is how many can be on screen until it stops generating. THere's nothing to config in the .asm.
Throw block is sprite 0x53. I figured that would be a popular use for it.

E: Wierd...It generates nothing when set for throw block. Must need some special treatment. Not sure what it is yet though.

E2: And it's fixed. Turns out it needs the status set to something specific for it to work.
Last edited on 2007-10-27 06:36:52 PM by smkdan.
I believe indexing and counting, apart from just holding data are the most common uses.

Code
LDX #$40
LDA $1000,x


This addressing mode means that the contents of X are added to the supplied address of $1000. This means it will load from $1000 + $40 = $1040.

Code
LDX #$00
loop:
STZ $1000,x
INX
CPX #$40
BNE loop


This will zero $1000 - $103E. Since X is increment on each loop, it will store at the next address. Each loop it also compares X to $40 and if not yet equal to $40, it will loop again.

Also, X and Y are not interchangable in their use. While some addressing modes are shared, there are some that only work with either X or Y.

Code
LDA $123456,x
LDA [$12],y
Looks sharp, but I can't help but notice the 'severed head' on the rexes with SMB2 snake graphics (forgot the name).
That reminds me...I should've put a note in Grunt's file before, so here it is now.

Code
;IMPORTANT: Sprite clipping offset is 9 by default, but may be wider than you'd like.
;	    Sprite clipping offset 1 is a viable alternative, which is less wide.  This will cause the sprite to be unaffected by being
;	    hit from a block from below.


Minor issue but I guess it's still worth noting.
BVZ_shyguy is fixed (one byte mess up) and eggplant now makes a sound when spitting. No sound for the blowing smoke though. Can't think of anything for that. Did I miss the sprite release from MiOr, or is it just an observation?
Figures.

Minor update: egg plant's throw blocks are no longer permanent. They use to never fade to smoke.
It's missing the default sprite interaction routine...Don't know how I miss these things. I'll fix it in a little while.

Also:
Rotating level in Raven boss is ordinary mode 7, same with the giant koopa. And no, I'm not doing those either. Please stop requesting bosses...
I might close pack 2 with a Stretch and start on a shooting pirhana next. Well, whatever I feel like making I'll make.

Boing: I'm getting the stuff in your first post, actually. Shells kill, throw blocks pass through. It seems when you use a shell, it uses it's normal sprite clipping and acts normally. Using a throw block, it uses a different sprite clipping (???). If you throw a block across the floor, it will not harm it. But try throwing a throw block so it comes down on it's head. It'll kill. Makes no sense, really.

Random commentary follows...

I've been shown a problematic taptap that in the ROM I've seen it in, causes sprites to glitch throughout the level. When I've reniserted the sprites with no changes to the cfg, it works normally. What the hell? Taptap has been the most problematic apparently and it's stupid randomness like this that makes creating these more of a hassle than it should be.

EDIT: I confirmed the problem. When tap taps are encountered, all sprites loaded from there on are stuck in initialisation status. I don't think I even have control over that.
Last edited on 2007-10-29 04:59:52 AM by smkdan.
I count more than 5 sprites. Don't bet on it. Primary reason I abandoned goonies and poochy. There'd be the tedious task of compositing sprites (and that takes up up alot of GFX space) to fit in the tile count.
Code
CODE_02C7EE:        C9 03         CMP.B #$03                ;  | 


What you want is right below it. Change the #$03 and you're set. The stuff to the right of the semicolon is just comments. Ignored by the assembler.
Pages: « 1 2 3 4 5 6 ... 88 89 »
smkdan's Profile - Posts by smkdan

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2014 - SMW Central
Legal Information - Link To Us


Total queries: 27

Menu

Affiliates

  • Talkhaus
  • SMBX Community