Language…
15 users online: autisticsceptile1993, Duraner Hawkeye, edgar, Ice Man, JezJitzu, Knight of Time, mason, NegaByte, Nitrogen,  patcdr,  RussianMan,  Sayuri, Steven Atauchi C., Thiago Salsa, TonyversoTV - Guests: 128 - Bots: 106
Users: 69,286 (2,420 active)
Latest user: sixsceptres

Posts by Major Flare

Major Flare's Profile → Posts

  • Pages:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 111
  • 112
  • 113


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.





Dream team (feed them, please):








Use xkas.





Dream team (feed them, please):








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.





Dream team (feed them, please):








So use xkas. It's a patch.





Dream team (feed them, please):








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





Dream team (feed them, please):








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





Dream team (feed them, please):








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!





Dream team (feed them, please):








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






Dream team (feed them, please):








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






Dream team (feed them, please):








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





Dream team (feed them, please):








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.





Dream team (feed them, please):








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





Dream team (feed them, please):








You can use paint to solve your problem.





Dream team (feed them, please):








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???





Dream team (feed them, please):








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...





Dream team (feed them, please):








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???





Dream team (feed them, please):








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...





Dream team (feed them, please):








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





Dream team (feed them, please):








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???





Dream team (feed them, please):








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?





Dream team (feed them, please):






  • Pages:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 111
  • 112
  • 113