Link-Me

Link-Me LunarMario!


Conectar-se

Esqueci minha senha

Estatísticas
Temos 129 usuários registrados
O último usuário registrado atende pelo nome de Maverick Hunter

Os nossos membros postaram um total de 202 mensagens em 47 assuntos
Galeria


Social bookmarking

Social bookmarking Digg  Social bookmarking Delicious  Social bookmarking Reddit  Social bookmarking Stumbleupon  Social bookmarking Slashdot  Social bookmarking Yahoo  Social bookmarking Google  Social bookmarking Blinklist  Social bookmarking Blogmarks  Social bookmarking Technorati  

Conservar e compartilhar o endereço de Lunar Mario em seu site de social bookmarking

Conservar e compartilhar o endereço de Lunar Mario em seu site de social bookmarking

Últimos assuntos
» ajuda porfa
Dom Set 13, 2015 10:28 am por kokeke

» OW Show Off
Sex Fev 03, 2012 12:40 am por vuthiouo

» Imagens/Vídeos de Sua Hack!
Seg Dez 19, 2011 1:29 am por jicloupr

» Mudamos para o SMW Tech
Qui Nov 10, 2011 6:53 pm por FD Manuz OW Hacker

» Porque Nenhum Custom Music Funciona
Seg Nov 07, 2011 4:03 pm por Giga Gaia

» É isso....
Sex Out 28, 2011 6:25 pm por -Undefinied3-

» Qual é o nome dessa musica? Onde a encontro?
Seg Out 24, 2011 7:53 pm por Breno

» Perguntas Rapidas
Sex Out 07, 2011 5:55 pm por FD Manuz OW Hacker

» Projeto de tradução do arquivo de ajuda do Lunar Magic
Ter Out 04, 2011 10:17 pm por FD Manuz OW Hacker

» Recrutamento de moderadores.
Ter Out 04, 2011 10:09 pm por -Undefinied3-

» Projeto de reforma grand finale
Ter Out 04, 2011 6:01 pm por FD Manuz OW Hacker

» Esse fórum necessita de participação URGENTE
Seg Out 03, 2011 2:00 pm por FD Manuz OW Hacker

» Sobre este fórum
Dom Out 02, 2011 12:27 pm por FD Manuz OW Hacker

» Galeria do Lunar Mario
Dom Out 02, 2011 12:25 pm por FD Manuz OW Hacker

» Programação em C, C++
Sab Out 01, 2011 8:00 pm por Vitor Vilela

Flux RSS


Yahoo! 
MSN 
AOL 
Netvibes 
Bloglines 


Quem está conectado
1 usuário online :: Nenhum usuário registrado, Nenhum Invisível e 1 Visitante

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 41 em Dom Ago 30, 2015 11:37 am

Ground Pound

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Ground Pound

Mensagem por Taven em Sab Maio 14, 2011 9:38 pm

Bom, primeiramente, faz tempo que não entro no Forum, tava fora do SMW "Hacking World" agora eu decidi criar uma nova hack, mas só que o patche Ground Pound que eu tenho aki, qndo eu dou o Pound a música para e qndo eu morro, ou saio de tela, não vai pro OW, quebra arom, aki esta o código
Código:
!Freespace = $108000

;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Pointers
;;;;;;;;;;;;;;;;;;;;;;;;;;;;

!RAM = $0660 ;------------point this to an EMPTY RAM address
!FreezeMarioTimer = $0F ;-this is how long (in FRAMES) Mario pauses in the air
!AirSFX = $61 ;-----------this is the sound effect Mario makes in the air
!PoundSFX = $37 ;---------this is the sound effect Mario makes when he pounds the ground
!GroundTimer = $29 ;------this is the speed Mario goes when ground pounding
;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Header
LoROM

;-------------

org $108000
db $00, $00    ; |
org $108000
db $00    ; | aquired from Bio's post
org $108000
db $03,$01,$33, $00, 55   ; /

;These are the hex edits, in ASM form
;org $01A928    ; \
;   db $AD,$7A,$18,$F0,$08   ; | Disable boosting Mario if he is spin jumping
;org $01A92D ; |
;   db $A9,$F8,$85,$7D   ; /
;org $01A928    ; \ This makes Mario rise almost unnoticably
;   JSL NewRise    ; /

org $00D093 ; \ disable fireball while spin jumping
db $80 ; /

;the following 6 ORGs are for disabling spin jump
org $00D63E ; \ disable normal spin jumping
db $80 ; |
org $00D643   ; |
db $80   ; /
org $00EA80 ; \ Disable spin jumping out of the water
NOP #18 ; /
org $00F5E8 ; \ disable spinning when hit while gliding
db $00 ; /
org $01A8D3 ; \ disable boosting Mario when spin jumping
db $AD ; /
org $01E68F ; \ disable spin jumping off of a springboard
NOP #11 ; /

org $00F5F3 ; \ Keep Mario from spin jumping when hit
JSL NoSpin ; /
NOP ;delete the extra byte

;The following is the actual code stuff

org $00A21B ; \ hack the routine neccesary to start
JSL Routine ; /

org !Freespace

!CodeSize = Ending-Routine ; \
db "STAR"    ; | All code preservation
dw !CodeSize-$01 ; |
dw !CodeSize-$01^$FFFF ; /

Routine:
;---------------------
LDA $187A    ; \ Doesn't work if you are on Yoshi.
ORA $1470 ; | Or if you are carrying an enemy
ORA $148F ; | Or if you are carrying an object
ORA $75 ; | Or if you are swimming
ORA $14A6    ; | Or if you are using your cape spin
ORA $1493 ; | Or if the level is cleared
BNE Clear1 ; /

LDA $72    ; \ If Mario's on the ground..
BEQ CheckStomp    ; / Check for the pound flag.
LDA !RAM    ; \ If the RAM is already set...
CMP #$FF ; | and it's to be cleared, go to the clear routine (indirectly)
BEQ CheckStomp ; /
LDA $73    ; \ if you are ducking, the ground pound doesn't work
BNE Clear ; / I put the code here so it won't mess up the stomp routine
LDA !RAM ; \ If RAM is set, skip the initiation routine and start pose coding
BNE Set ; /
BRA Label ; \
Clear1: ; | This is to keep the Clear branches working
BRA Clear ; | (the BNE Clear)

Label: ; /
LDA $16 ; \
AND #$04 ; | Only works if you press the DOWN button.
BEQ Return1 ; /

LDA #$0B ; \ set Mario's flying to 0B, which is springboard default
STA $72 ; / it makes the pose not look weird if the ground pound is negated (and Mario dash jumped)
JSR DisableController ; disable the controller
LDA #!AirSFX    ; \ Set sound when pound activated.
STA $1DFC ; /
STZ $7D    ; \ Temporarily freeze X
STZ $7B    ; / And Y speed.
LDA $76 ; \ Store Mario's direction, for later use
STA !RAM ; | This also sets the RAM. It is increased because the direction is ALWAYS 1 or zero.
INC !RAM ; / If it was 0, the RAM still wouldn't be set, so it is increased.
LDA #!FreezeMarioTimer ; \ Freeze Mario for a defined period of time.
STA $18BD    ; /
LDA #$01 ; \ Set spin jump flag...
STA $140D    ; /
LDA #!GroundTimer ; \ Set speed on coming back to ground..
STA $7D    ; /
BRA Return1

Clear:
STZ !RAM ;Clear the RAM
STZ $140D ;Stop the spin jump
BRA Return1

CheckStomp:
LDA !RAM    ; \ If the flag hasn't been set..
BEQ Return1 ; / Skip.
CMP #$FF ; \ Clear flag (for the block).
BEQ Clear    ; /
LDA $72    ; \ Skip pound if in air again.
BNE Return1 ; /
JSR DisableController ; disable the controller
LDA !RAM ; \
CMP #$50 ; | Clear the RAM if Mario's ground pound was negated midair
BEQ Clear ; /
LDA #!PoundSFX    ; \ Set Pound SFX...
STA $1DFC ; /
JSL YoshiStompRoutine ; make the yoshi smoke come out original code is from the Code Library
LDA #$FF    ; \ Set #$FF to flag
STA !RAM    ; / to clear it later
Return1:
LDA $16    ; \ Restore the
AND #$10    ; / Hijacked code.
RTL

Set:
LDA !RAM ; \
CMP #$50 ; | Don't set ground pound if it's negated
BEQ Return ; /
JSR DisableController ; disable the controller
LDA !RAM ; \
CMP #$03 ; | If Mario's ground pound was negated one frame before, keep him from turning
BCS Negate ; /
LDA $7D
CMP #$FE
BCS Skip
LDA $7D ; \
CMP #$80 ; | If Mario is moving up, negate the ground pound
BCS Negate ; /
Skip:
LDA #$1C ; \ and set the ground pound pose
STA $13E0 ; /

DEC !RAM ; \ Changes the RAM back to Mario's previous direction
LDA !RAM ; | This is to keep Mario from doing a strange looking boogy
STA $76 ; | and to keep him facing the way he was
INC !RAM ; / And fixes the RAM for this use

Return:
LDA $16    ; \ Restore the
AND #$10    ; / Hijacked code.
RTL ; and that's it! for the main code

Negate:
STZ $140D ; disable the spin jump
LDA !RAM ; \
CMP #$03 ; | If direction might need fixing, fix it
BCS Turn ; / (occurs right after ground pound is negated
INC !RAM ; \
INC !RAM ; | Set the disabled flag
INC !RAM ; /
BRA Return

Turn:
LDA !RAM ; \
SEC ; | set Mario's direction
SBC #$04 ; | back to first set
STA $76 ; /
LDA #$50 ; \ and disable ground pound
STA !RAM ; / and turn
BRA Return

DisableController:
STZ $15 ; \
STZ $16 ; | Keep the controller value zero, simulating no button press
STZ $17 ; | This is JSR to to because it saves space, keeping some branches working
STZ $18 ; / (BRA, BNE, BCS, etc)
RTS

NoSpin:
LDA !RAM ; \
BEQ Restore ; | If there is no ground pound right now,
LDA !RAM ; | just restore the code
CMP #$50 ; |
BCS Restore ; /
STZ $140D ; stop spin jump
INC !RAM ; \
INC !RAM ; | Set the disabled flag
INC !RAM ; /
Restore:
LDY.b #$04 ; \ restore hijacked code
STY.w $1DF9 ; /
RTL


YoshiStompRoutine:
LDA $1697
BNE ReturnR
PHB
PHK
PLB
LDA $94
STA $16D1,Y
LDA $95
STA $16DD,Y
LDA $96
CLC
ADC #$0F
STA $16D9,Y
LDA $97
ADC #$00
STA $16DD,Y
JSR ShakeGroundGenSmoke
PLB
ReturnR:
RTL ; Return

ShakeGroundGenSmoke:
LDA #$05 ; \ Set ground shake timer
STA $1887 ; /
LDA #$09 ; \ Play sound effect
STA $1DFC ; /
STZ !RAM
JSR Label4
INC !RAM
Label4:
LDY #$07 ; \ Find a free extended sprite slot
Label5:    ; |
LDA $170B,Y ; |
BEQ SpawnSmoke ; |
DEY ; |
BPL Label5 ; |
RTS ; / Return if no free slots

SpawnSmoke:
BRA All

All:
LDA #$15
STA $176F,Y
RTS ; Return

NewRise:
LDA $140D ; \
BNE LowBoost ; /
LDA #$F8 ; \
STA $7D ; /
RTL
LowBoost:
LDA #$FE ; \
STA $7D ; /
RTL

Ending:
Será que tem algo a ver com o Freespace?
avatar
Taven
Nível 0
Nível 0

Mensagens : 1
Pontos : 152
Data de inscrição : 18/12/2009
Idade : 22
Localização : São Paulo

Ver perfil do usuário http://smwbrasil.forumeiros.net

Voltar ao Topo Ir em baixo

Re: Ground Pound

Mensagem por FD Manuz OW Hacker em Dom Maio 22, 2011 1:44 pm

Pode sim ter a ver com o Freespace. Tente mudá-lo. Nota: use aquela tool de verificar os freespaces após expandir a ROM pra uns 2 ou 4MB (o nome da ferramenta me fugiu...)
avatar
FD Manuz OW Hacker
Nível 2
Nível 2

Mensagens : 48
Pontos : 2177
Data de inscrição : 21/12/2009
Idade : 23
Localização : Sombras Vertigo Vortex

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum