Banner
Views: 790,774,447
Time:
9 users online: Adriel_Isaque, Dispace, Knucklesfan, Luigixhero, Ralshi02, Samantha, Teows, TetrisKid48, yogui - Guests: 35 - Bots: 280 Users: 41,287 (1,500 active)
Latest: Stephan
Tip: Add decorations to the overworld. Don't leave large empty grass or sea regions.Not logged in.
Posts by Major Flare
Major Flare's Profile - Posts by Major Flare
Pages: « 1 2 3 494 95 »


AEE Gente! Voltei.
Sou o Manuz, the OW Hacker. Infelizmente, minha senha foi "engolida", então tive que criar essa conta...

VEN keyblader: Recomendo que você tente o BTSD. É mais fácil e menos problemático.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Use xkas.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Okay, I'm back! Unfortunately, I lost my old password, so... Mods, please understand... But, now, more SHOTS!


5th world map


Warmless Lagoon


Bluyer Doom





Thwomps: We love this place, meh.


Pokoopa!




Diggers' Plateau.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




So use xkas. It's a patch.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




put your ROM in the same folder of SpriteTool, open it and type ONLY the ROM name then the txt file.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Take the code here and we'll be able to solve your problem.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




vitor vilela: Sendo franco, O Ultimate n00b Boss foi feito pra quem não sabe NADINHA de ASM.

undefinied3: Abra o arquivo asm e você verá isso:

Code
!Health 		= $0A   ; Health the sprite has. Can be anywhere between 0-99 (#$63 being 99). Don't be silly, though.
!FaceMario 		= $01 	; Initially face Mario?
				; 01 -> Yes. 00 -> No.

!SprAnimate		= $01	; Does your sprite animate? (i.e. flip between 2 frames)
				; 00 -> No, 01 -> Yes.

!SprAnimate2		= $00   ; Does your sprite animate for JSR Animate2? (In case you want to animate for other frames at a certain HP)
				; 00 -> No, 01 -> Yes.

!SprAnimate3		= $01   ; Does your sprite animate for Animate3?
				; 00 -> No, 01 -> Yes.

				; NOTE: If they animate, you specify the animation frames in the graphics defines below.

!FastAnimation		= $00   ; If you want your sprite to animate fast, make this an 01.
				; If you leave it as 00, the sprite will not animate fast (a bit slower). 
				
!DeathType = $01		; Type of Death:
				; 00 -> Fall down, as if killed by star
				; 01 -> Disappear in a puff of smoke.
				; 02 -> Explosion (bob-omb) style.

!DoFlash = $01			; Does the sprite "flash" when it gets hurt? Flashes through colors and cannot be in
				; Contact if it does.
				; 00 -> No, 01 -> Yes.

!ExitType = $02			; Type of exit when Boss dies:
				; 00 - Goal sphere style, normal exit (no walking).
				; 01 - Goal sphere style, secret exit (walking).
				; 02 - Teleport to whatever in the screen exit.
				; 03 - Fade to OW. (Exit specified below).
				; 04-FF - Nothing.

!TeleSFX = $05			; Sound to play when/if teleporting. ($1DFC)

!ExitSFX = $0B			; Type of music when boss is defeated (only applicable if !Exit is 0-2)

				; 0B - Boss defeated.
				; 0C - Normal SMW level complete music.

!OWExit = $02			; If using !Exit as option 03, fade to the OW..
				; 01 -> Normal exit. 02 = Secret Exit.

!NormalSprite = $02		; Normal sprite to generate (if generating one).
!CustomSprite = $00		; Custom sprite to generate.
				; NOTE: Generating a custom sprite that doesn't exist will (probably) result in a crash.

!Gravity = $10 			; Does your boss float in the air?
				; If so, leave it as 00. Otherwise, this is the gravity for the sprite.
				; Suggested value: any value from 00-50.
				; 10 = low gravity.
				; 50 = high gravity.

!Ledges = $01			; Does your sprite stay on ledges?
				; 00 -> No, 01 -> Yes.

SPRITE_TO_GEN: 			; For generating a random sprite, write the sprites here. Table must be 3 bytes!
 db $0D,$0F,$10			; Bomb, Goomba, ParaGoomba.

!INITSTAT = $01			; STATUS for above sprites. For stationary shells, make this 09 etc.
				; See $14C8,x in the RAM Map for all states.

!StunTimerA = $20		; How long the boss stuns the ground (only applicable if JSR'ing to Strong)
!StunTimerB = $40		; How long the boss stuns the ground (only applicable if JSR'ing to Strong2)


!JumpHeight = $D0		; New Jump height if posioned. $FF = mimimum, 80 = maximum.
				; Advisable - A0-E0

!PoTimer     = $03		; Time to poison Mario, in seconds. (If JSR'ing to Poision).

!Speed	    = $18		; Speed Mario gets when poisioned. 00 = No speed at all, 26 = Max running speed.	
				; Advisable values = 15-20.

!Col = $01			; Have a green face when Mario is poisioned? 00 -> No, 01 -> Yes.
				; NOTES:
				
				; IF NEAR THE STATUS BAR (TOP), THE COLORS REVERT TO NORMAL	
				; SAME IF THE PLAYER PAUSES.
				; THIS AFFECTS COLORS 86,89, 8C and 8E only.

!High = $45			; Color for Mario's face when poisioned.
!Low = $0E			; 4 digit RGB values, like this:
				; XXYY <- YY is !High, and XX is Low.
!High2 = $B6
!Low2 = $30			; Color for Mario's pants.

!FireballHealth = $01		; Does the sprite have fireball HP?
				; 00-> No, 01-> Yes.
				; NOTE-> For fireball HP, it's the normal HP * 3 (this is because it won't be easy	
				; .. to customise)

!CapeHealth = $00		; Does the sprite have cape HP? If so, it's normal health. (Not normal health*3).

!CapeFlight = $00		; Disable cape flight during the boss battle?
				; 00-> No, 01-> Yes.

!ExSound = $26 			; Sound to play when either a bone or hammer is thrown.

		        	; Uses $1DF9.

!PTimer  = $88  		; Timer for p-switch (if it's activated).

!FTimer  = $4F			; How long the sprite flashes for when hit.

!Dark	 = $0B			; Darkness to use when JSR'ing to Dark.
!Dark2   = $07			; Darkness to use when JSR'ing to Dark 2.

				; Can be from 00-0F.
				; 0F - Most brightness (also normal amount in SMW), 00 = Completely black.

!NoSpin = $01			; Should the sprite only be stompable if Mario spin-jumps on him?
				; Stompable like an eerie (bounces off Mario), but it doesn't reduce the boss's HP.
				; NOTE: If enabled, the sprite can be stomped on if using JSR ThrowHurt.
				; 00 -> No, 01-> Yes.

!Bouncy = $00			; "Push" Mario back after jumping on the sprite?
				; 00 -> No, 01-> Yes.

!RiseLoc = $00F0		; If making your sprite rise at a certain hitpoint (JSR Rise)
		 		; ..specify the height at which it should stop.

				; 0145 = 40% up of the screen.
				; 0130 = Halfway up the screen.
				; 0115 = 2/3 up screen.
				; 00F0 = Right below the status bar.
				; Must be 4 digits, otherwise the game will crash!

!RiseSpeed = $E0 		; Speed at which the sprite rises.
		 		; 80 - Extremely fast.
		 		; FF - Slowest.
		 		; Suggested: A0-E0.

!DropSpeed = $16 		; If making your sprite drop again, specify the speed..
		 		; ..at which it falls down.
	         		; 01 -> Slowest.
		 		; 7F -> Extremely fast.
		 		; Suggested values: 10-40.
		 		; NOTE, it stops when it touches the ground.

!PushMario = $22		; Speed to push Mario if the sprite touches him. (Only applicable if doing JSR Push).
!YPush     = $D5		; Upwards push movement if sprite hurts Mario.

;If making your sprite chase Mario..

MaxAcceleration: db $1A,$E6 	; Maximum speeds the sprite can chase.
MaxAccelerationY: db $10,$F0 	; Maximum speeds the sprite can chase.
AccelerationX: db $02,$FE	; Acceleration for X speed.
AccelerationY: db $04,$FC	; Acceleration for Y speed.

;If using messages, read below:

!Msg1T = $01			; Message one type. 01 = Message one, 02 = Message two.
!Msg2T = $01			; Same for the second message.
!Msg1L = $00			; Level of first message.
!Msg2L = $29			; Level of second message.

;These can be quite tricky. Up to level 24 = 24, but then it's 25 for level 101. 101 = 25, 102 = 26, 103 = 27, 104 = 28,
;105 = 29, 106 = 2A, 107 = 2B etc.

; Level 00 = 00
; Level 1A = 1A 
; Level 20 = 20
; etc.

; Level 24 = 24
; Level 101 = 25 ; After level 24 comes level 101, so that becomes 25.
; Level 102 = 26
; Level 103 = 27.
;================================================================
;Status Bar Stuff Here!
;================================================================

!A = $0A : !B = $0B : !C = $0C : !D = $0D : !E = $0E : !F = $0F : !G = $10 : !H = $11 : !I = $12 : !J = $13 : !K = $14
!L = $15 : !M = $16 : !N = $17 : !O = $18 : !P = $19 : !Q = $1A : !R = $1B : !S = $1C : !T = $1D : !U = $1E : !V = $1F
!W = $20 : !X = $21 : !Y = $22 : !Z = $23
!YMove = $1510
!InvTimer = $7F9989 ; Used for many sprite misc. stuff. Make it atleast 12 bytes.
;Don't touch that.

!ShowTiles	= $01		; Draw <Name>x<HP> on status bar? (E.g. Idiotx10)
				; 00 -> No. Anything else -> Yes.

NameTable:
	db !S,!M,!W,!C		; Name of boss. Write like this: !A for A, !F for F, !Q for Q etc.
				; MUST PUT THE ! AND COMMA (,) after each letter except the last one.
				; The db at the beginning is important, don't touch that.

				; db !F,!A,!I,!L will write "FAIL".

!NameSize = $03			; The number of letters you wrote for your boss -1. For example, If my boss was called
				; LOL, I would put a 02 here (3-1). (NOTE: must be 2 digit, so for 04 write 04, not 4)

!Position = $0EF9		; Position to draw tiles to.
				; Can be anywhere from $0EF9-$0F2F. See 1024's status bar for reference.

;================================================================
;Graphics Routine!
;================================================================

;Notes:

;This is a 32x32 Boss, so it has 4 tiles - Top Left, Top Right, Bottom Left and Bottom Right.
;If you didn't set your sprite to animate, it will NOT use the walking frames.

;By default, it will always animate between frames if it's set to animate.

;For each 16x16 tile (Top Right, Top Left etc.) , you specify the top-left part of that 16x16 tile. For example, the Mushroom
;Is a 16x16 tile. In the 8x8 editor it's tile 0x224. So you would right the last 2 digits - 24 for that and the whole 16x16 
;Gets drawn. Similarly, the fire flower graphic would be 26.

;NOTE: IF YOU CHOOSE "use second graphics page" in the cfg editor, it uses tiles from SP3 and SP4.

!TopLeft = $A0
!TopRight = $AB
!BottomLeft = $C0
!BottomRight = $C2

!WalkTopLeft = $E0
!WalkTopRight = $E2
!WalkBottomLeft = $E4
!WalkBottomRight = $E6

;If using more animation frames in the sprite, specify them here:
;NOTE: To use them, use JSR Animate2 and JSR Animate3 in your sprite STATES.

;For Animate2:

!TopLeft2 = $CC
!TopRight2 = $CE
!BottomLeft2 = $EC
!BottomRight2 = $EE

!WalkTopLeft2 = $6D
!WalkTopRight2 = $6D
!WalkBottomLeft2 = $6D
!WalkBottomRight2 = $6D

;For Animate3:

!TopLeft3 = $6D
!TopRight3 = $6D
!BottomLeft3 = $6D
!BottomRight3 = $6D

!WalkTopLeft3 = $CC
!WalkTopRight3 = $CE
!WalkBottomLeft3 = $EC
!WalkBottomRight3 = $EE

;================================================================
;Sprite X Speeds Are Configurable Here!
;================================================================

; Notes:
; If your sprite has 6HP, you need to write to the first 7 values of the table only (00-06), if it has 3 HP, write to the first 4 values of the table etc.
; Slowest speed is 01 and fastest is 7F. It's recommended to not go higher than 25 as it gets very fast from there onwards.
; 00 is stationary i.e. the sprite doesn't move.
; First value in the table is for 00 HP, last value is for 99 HP. Writing to values not used doesn't have any affect.

Tbl1R:  db $00,$11,$11,$12,$14,$10,$0F,$13,$18,$14,$10 ; 10
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 20
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 30
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 40
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 50
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 60
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 70
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 80
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 90
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 99

;===================;
;    Pointers	    ;
;===================;

MainPointer:
	LDA $1528,x
	JSL $0086DF
	dw STATE0 ; Dead state. Don't use for actions (ony RTS)
	dw STATE1 ; 01, last hit point.
	dw STATE2 ; 02, 2 hit points left ..
	dw STATE3 ; 03, 3rd last hit point.
	dw STATE4 ; 04, etc.
	dw STATE5 ; 05
	dw STATE6 ; 06
	dw STATE7 ; 07
	dw STATE8 ; NOTE! MAKE SURE YOU HAVE AS MANY DWS AS YOUR BOSS HP, OTHERWISE YOU MIGHT GET PROBLEMS!
	dw STATE9
	dw STATE10

STATE10:
STATE9:
STATE8:
STATE7:
STATE6:
STATE5:
STATE4:
STATE3:
STATE2:
STATE1:
STATE0:
JSR Move
RTS


Edite os valores de acordo com o que você quer no sprite, INCLUSIVE OS GRÁFICOS. Daí, configure os dw STATES (tem que ter o mesmo tanto do seu HP escolhido!), adicione tantas State labels quanto o HP e ponha seus pointers que existem no sprite. Suponhamos que eu quero um boss que solte martelos rápido, pule, tenha 3 de HP e é bem LENTO:

1)
Code
Tbl1R:  db $00,$11,$11,$12,$14,$10,$0F,$13,$18,$14,$10 ; 10
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 20
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 30
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 40
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 50
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 60
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 70
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 80
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 90
	db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF ; 99


Se o boss tem 3 de P, edite os 4 primeiros bytes ( o 1º tem SEMPRE que ser 00). Dicas:
Lento - 01 a 0F
Médio - 10 a 1F
Rápido - 1F a 25
Não passe de 25!

2) Mude o valor de !Health para 03

3) ponha nos pointers (dw STATES):

Code
dw STATE0
dw STATE1
dw STATE2
dw STATE3


e deixe como labels após o último dw:
STATE3:
STATE2:
STATE1:
STATE0:
RTS

4) Agora as ações. Como o boss que queremos solta martelos rapidamente e pula, colocamos como orientado abaixo dos STATES. Agora, pra esse nosso boss, temos:
STATE4:
STATE3:
STATE2:
STATE1:
STATE0:
JSR Move
JSR ThrowHurt
JSR Push
JSR HammerB
JSR JumpC
RTS

5)Insira com spritetool do ROMI.
6)Ponha seus PRÓPRIOS GRÁFICOS para o boss de acordo com o código. Se você botou, por exemplo, $00 para o Top-left tile, abra o 8x8 editor, vá a página 3 e edite os tiles 0x300 ($00) e os que ENCOSTAM DIRETAMENTE NELE (0x310, 0x301 e 0x311)! É um 16x16!
7) Selecione o sprite header pra 0E e teste!

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




undefinied3:

na label SPRITE_TO_GEN, os três valores são os que aparecem na janela de adicionar sprites do LM. Exemplo: Koopa verde sem casca é $00, chave é $80...

2)Seu bloco deverá ser mais ou menos assim:



Code
JMP Return : JMP Above : JMP Return : JMP Return : JMP Return : JMP Return : JMP Return

LDA $15       ;RAM do controle
AND #$02      ;Se o Mario estiver indo pra esquerda...
BNE GoRight
AND #$01      ;Se o Mario estiver indo pra direita...
BNE GOLeft
RTL

GoRight:
LDA #$01
TSB $15
TSB $16
LDA #$02
TRB $15
;TRB $16
RTL

GoLeft:
LDA #$01
TRB $15
;TRB $16
LDA #$02
TSB $15
;TSB $16
RTL

Return:
RTL


--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Originally posted by booblock
This is something I've been waiting for....
This tutorial is so easy to understand... you explained everything so shortly and easy... Thanks, a LOT...

One question:

Can people use the codes that you teached as a custom block????
(via BTSD, of course)

And don't ask "Do you know that BTSD JMP things..." etc.
I know it. I just think this:

JMP check: JMP check: JMP check: JMP check: JMP Return: JMP Return: JMP Return:

check:
LDA #$0A ;;;; ; |From tutorial...
STA $$7E0DBF ;/
Return:
RTL ;RTL works on Xkas...



As I can see, correct your block like this:

Code
JMP Check : JMP Check : JMP Check : JMP Return : JMP Return : JMP Return : JMP Return

Check:
LDA #$0A
STA $0DBF    ;Don't waste so many cycles, man...

Return:
RTL


--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Simple: There are two green paths and a blue one with a marked fish. Use them.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Quakquer um do Lunar Magic, mas de preferência, mos de 00-99. Se quiser, por exemplo, que se solte um casco vermelho, bote $05 e em INITSTAT coloque $0A.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




The generator "Layer 2 Falls" will help you. Set the level header to 8, and build your level all in layer 2.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




You can use paint to solve your problem.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




I'm with a problem. I made a custom sprite, but, when I test it, it falls behind the ground!

Here 1s:

The cfg file
The asm file

Any help???

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Okay, I'm having a huge problem with my custom sprite... When I test it, it simply FALLS BEHIND THE GROUND!!! Any Help?

Here is the entire code...

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




NOw another problem with my sprite: I wanted to get hitpoints to it, but when I test it, it dies in one jump! Any help???

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Okay.

Magmar, sorry for may incovenience. I had very mush trouble with my hack so...

Now, my vote:

RedToonLink = 8.5/10
I liked the player...
PercentN = 9.5/10
Ha,ha,ha, a very good castle GFX...
DragonFire6780=9/10
I liked your GFX, men...
Neutron's = 7.5/10
I couldn't see te palettes, but it seems to be a very nice GFX
Fakescaper's = 1/10
Horrible player, and The boos and P-Switch are really strange...
The bad hacker's = 10/10
THE BEST!! Really nice OW GFX, and FG... For me, the winner!!!
1UPDudes = 5/10
I liked only your player's replacement...

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Wait. As I know, .err files are error files by TRASM, not xkas. Xkas use .log extension to error files.

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Another question with my sprite: I've added hitpoints and I wanted to act like a spiny when Mario spinjumps it. But when I test it, it simple dies at first hit, and when I spinjump it, it dies too!!! Any help???

--------------------


Signed Major Flare, a.k.a Br OW Hacker.




Now some questions:
1) Is it necessary to put your ROM as smw.smc???
2) How do I patch levelASM without corrupt my ROM?
3) Is it REALLY Necessary to use long addressing mode?

--------------------


Signed Major Flare, a.k.a Br OW Hacker.


Pages: « 1 2 3 494 95 »
Major Flare's Profile - Posts by Major Flare

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

Copyright © 2005 - 2019 - SMW Central
Legal Information - Privacy Policy - Link To Us


Total queries: 7

Menu

Follow Us On

  • YouTube
  • Twitch
  • Twitter

Affiliates

  • SMBX Community
  • ROMhacking.net
  • MFGG