Language…
7 users online:  BeeKaay, Daizo Dee Von, DashGamer, E623, Guido_Keller, Isikoro, kasoku - Guests: 236 - Bots: 448
Users: 64,795 (2,377 active)
Latest user: mathew

Official Portuguese Thread! v2.0 [Ajuda Em Português v2.0]

Link Thread Closed
o.00000000000, essa musica nao usa nenhum instrumento do SMW, é CERTEZA que precisaria de N-SPC patch e sample bank se quisesse faze-la ficar QUASE parecida, realmente é muito dificil portar essa musica. E nao, ninguem nunca portou e vc vai ter que usar o SPC2MID mas vc ja sabe né.. corrompiçao 100%...


Bom, agora é minha vez de fazer uma pergunta


Como alguns sabem, exist o arquivo cfg pro sprite. No arquivo cfg, tem um lugar que voce muda o sprite clipping value certo? Isso muda o campo de interação do sprite. Eu tinha feito 1 boss mas ta dando 1 erro nisso, veja o video:


<object style="height: 344px; width: 425px"><param name="movie" value="http://www.youtube.com/v/aKEo1u6s7QM"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="http://www.youtube.com/v/aKEo1u6s7QM" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="425" height="344"></object>


Como voces podem ver, algumas horas quando ele encosta na parede, só um camp 16x32 que interage com a parede, porém, com o mario é 32x32 (o correto). Como eu arrumo isso? Qual o valor do sprite clipping? Por acaso o codigo de interação do sprite tem que ser diferente? Serio, eu gostaria MUITO que alguem me ajudasse pois isso sempre me da trabalho e eu nunca soube arrumar isso de sprites 32x32.
Bem... mas se eu portar pelo SPC2MID tem como arrumar a música depois?

Olha, eu não entendo nada sobre isso da sua pergunta, mas eu tenho uma ideia, e não custa nada falar. O sprite 6D é um bloco invisível. Como esse shell interage normal com o Mario, talvez ele interaja normal com outros sprites, e como o 6D é um sprite transparente, não ia alterar em nada na aparência do cenário. Sei lá se isso pode dar certo, mas você pode tentar colocar o sprite 6D por cima dos blocos da parede e ver no que dá. Eu acho que você se esqueceu de fechar alguns tags ali, hein.

Aproveitando a situação, vou fazer uma pergunta, simples e direta:
Como se fazem custom bosses?

OFF: Viva! Eu não sou mais um peixe saltitante!

Nossa, essa ideia é genial cara! Valeu mesmo, deve dar certo, sou muito grato!!!

Quanto a sua pergunta de Boss:

Bom, voce precisa ter um grande conhecimento de ASM (bom, depende do boss que voce quer fazer), tem que ter paciencia, mas enfim, voce precisa saber MUITA COISA de ASM, leva horas, dias para fazer 1 boss. Eu por exemplo para fazer esse fiquei 3 dias fazendo e ficou com 1605 linhas de code, mas enfim, o resultado final é sempre bom. Uma recomendação minha é voce nao fazer todo boss e dps testar e concertar os erros, faça aos pouquinhos, por exemplo, adicione a rotina de pular, teste, adicione a rotina de correr, teste e assim vai, se nao voce nao sabe onde está o erro. Bom, mas deu pra entender que fazer boss nao é tao facil, é como 1 sprite só que interage mais e é mais forte.
#w{O.O}Só falta não dar certo#w{=P}

Eu não sabia que era tão complicado assim, mas... será que é possível colocar algum custom boss de algum lugar sem ter sido feito por mim (tipo baixar o sprite ou coisa do tipo e colocar na minha ROM)?

EDIT: Só me dá um conselho: Criar um custom boss é DIFÍCIL ou TRABALHOSO? (é que eu to pensando em aprender a fazer um, sabe como é, tirar as ideias do papel)

Bom, na verdade a dificuldade é relativa, eu por exemplo nao axo tao dificil, mas trabalhoso tambem nao deixa de ser. Se voce quer fazer coisas complexas, voce vai ter mais trabalho, montar as rotinas e os pointer e etc. Tem uns bosses aqui na SMWC que voce pode baixar, tmb tem o Ultimate n00b boss do iceguy, ele é o melhor pra quem quer fazer seus bosses porém nao sabe muito de ASM.
Eu tenho uma dúvida: Existe algum bom tutorial sobre ASM em português?

Mais uma: Se eu baixar uma música que precisa de sample bank, como eu adiciono esse sample bank? (eu não baixei a música ainda, mas eu to perguntando só pra saber, caso eu precise algum dia).

1-Sim, mas nao explica alguns comandos muito avançados como PEA, PER, etc..

http://lunarmario.forumbrasil.net/asm-f15/tutorial-quase-completo-de-asm-t230.htm

2- Veja uns posts atras, eu tinha ensinado 1 cara sobre isso.
Ah, tá, valeu

Eu tenho uma dúvida sobre ASM (eu não sei se aqui é o lugar certo pra perguntar sobre isso, mas vamos lá):

Vamos supor que eu crie um código que faça o mario cair "sentado" (que nem no SM64) toda vez que eu apertar determinado botão enquanto ele estiver no ar. Como eu aplico esse código na minha ROM, fazendo ele funcionar em todas as fases? (É que o tutorial que eu to vendo só ensina a usar o BTSD para colocar códigos na ROM).

Mais uma dúvida:
O valor $7E140D, segundo o RAM Map aqui do SMWC, é a flag do spin jump. Para que valor ela é "on" (sei lá se é on mesmo, mas quer dizer quando o mario está realizando o spin jump), e para que valor ela é "off"(o mario não tá fazendo spin jump)? Eu quero saber o valor em número. Só pra deixar mais claro, eu to começando o código assim:

LDA $7E140D ;flag do spinjump
CMP #? ;esta fazendo o spinjump?
BEQ acao ;s/n(?), prossiga
RTL ;s/n(?), termine

o que eu ponho no lugar do "?"?

Tem algum sprite que quando o tempo chega em 0 faz o Mario(Luigi no meu caso)ser teletransportado pra outro level?(como se fosse um cano).

Deixa eu ver se eu entendi... você quer que, quando o tempo chegar no zero, o mario seja teletransportado pra outro level, tipo entrando numa porta automaticamente? Que eu saiba, não. Mas você sabe, né? "Com ASM tudo é possível".

DSC:

1- Isso se chama patch, voce deve fazer hijacks e etc.. Eu nao sei se isso funciona, mas tenta isso aqui como 1 patch (eu nem testei MSM):

!FreeSpace = $xxxxxx ;COLOQUE AQUI 1 FREESPACE!!!!

org $8E7B ;Hijack some routine
JSL PatchCode ;Jump to the code
REP 2 : NOP ;Use the rest of bytes


org !FreeSpace
db "STAR" ; Write RATS tag
dw End-Start
dw End-Start^#$FFFF

Start:
PatchCode:
LDA $13EF ;Checa se o mario está no chao
BNE Return ;Se estiver, nao execute o code.

LDA $15 ;\Checa se o mario está
AND #$04 ;/apertando para baixo
BEQ Execute ;Se estiver, executa o code
RTS

Execute:
LDA #$40
STA $7D

RTS

IsntOnGround:
RTS
End:

2-Infelizmente isso nao adianta, mas o principio é esse. Isso nao adianta porque é 1 monte de coisa junta que faz o mario dar 1 spin jump... Mas respondendo sua pergunta, flags sao como On/Off. Se for 0, vai ser off, se for 1, vai ser on. Entao, caso o valor seja 1, o flag está ativado. O code é esse:

LDA $140D
BNE NotActivated
;Coloque aqui o code
NotActivated:
RTL


MajiLuigi:

http://www.smwcentral.net/download.php?id=406&type=sprites
1. #w{O.O} db, dw, org... Cara, eu não entendi metade do que tem nesse código (bem... olhando pelo lado positivo, eu pelo menos entendi a metade do código #w{=P}). Mas... então pra colocar meus códigos (sem ser blocos, claro) na ROM, eu preciso criar um patch, certo? Este patch tem que ter a extensão .asm, certo? Mais uma dúvida: como eu faço pra saber onde tem algum freespace? (eu não faço ideia de como ver isso).

2. Bem... na verdade eu quero usar essa flag pra saber se o mario está fazendo o spin jump, não pra fazer ele dar o spin jump (na verdade eu queria o pulo normal, mas eu não achei na RAM Map)

Bom, para achar freespace, use o slooger, basta arrastar sua ROM nele e pegar 1 address da segunda fileira que na terceira mostre 0x8000 e colocar ali (veja que eu dei uma pequena editada no code, entao copie esse novo caso vc usar).

2- Ah tah =D
É tipo isso,mas não como se ele tivesse entrado numa porta mas como se ele tivesse tocado um "teleport block"(mas claro,sem o bloco|-O),e eu não sei NADA sobre ASM (n00b:().

COMPLETAMENTE OFF:alguém sabe como se joga de dois no Kirby Super Star Ultra no emulador?!:P

Magiluigi, leia o meu post....

2-Nao dá pra jogar de 2 em snes se nao tiver 2 teclados eu creio
OFF!? Mas será que isso é off mesmo?
Ahn, bem, se você estiver falando do joguinhoo pra NDS, você até pode emular ele com o NO$GBA (mas seu pc tem que ser bom, senão ele não passa dos 40 FPS), agora, multiplayer eu não sei se tem como não, viu? (mas duvido muito que dê pra jogar multiplayer).

@Undefinied3: Bem... eu apliquei o code que você postou, com o freespace e tudo, enquanto eu apliquei não deu nenhum erro nem nada, mas quando eu fui jogar, sabe o que aconteceu? Absolutamente nada!
Sei lá se eu fiz algo errado ou se o problema ta no code mesmo.

Sim, me desculpe, minha tolisse fez eu cometer 1 erro muito grave esquecendo de indicar o tamanho da ROM e o header dela, o que cancela o patch eu creio. Mas aparentemente aquilo nao deve funcionar nao '-'... Mas tenta colocar ANTES do "!FreeSpace = $xxxxxx" assim:


header
lorom

;resto do code

Veja se funciona.. Qualquer coisa eu faço um powerup msm....

EDIT:

É, testei e comprovei (exeto pelo fato que se vc apertar para baixo e pular, ele simplesmente nao pula '-')


header
lorom

!FreeSpace = $278000 ;COLOQUE AQUI 1 FREESPACE!!!!

org $A21B ; this runs every frame
JSL PatchCode ; delete 4 bytes

org !FreeSpace ; some free space
db "STAR" ; rats tag
dw End-Start ; where to start protecting from
dw End-Start^$FFFF ; where to stop protecting from

Start: ; everything after this is protected

PatchCode:

LDA $15
AND #$04
BEQ Return

LDA $7D
CMP #$80
BCC Return
BRA DoTwo

DoTwo:
LDA $15 ;\Checa se o mario está
AND #$04 ;/apertando para baixo
BNE Execute ;Se estiver, executa o code
BRA Return


Execute:
LDA #$40
STA $7D
BRA Return



Return:
LDA $16 ; aka the 4 bytes you deleted
AND.b #$10
RTL

End:
É verdade. talvez seja porque na parte que confere se o mario está apertando para baixo, se ele estiver, pula pra outra parte do code, mas se não estiver, ele vai pro return. eu ainda não aprendi muito bem isso, mas talvez o erro esteja no "Return:". Sei lá, eu acho melhor eu começar lidando com blocos mesmo. Eu não sei nem o básico e já tô tentando dar novos poderes ao mario #w{=P}.

Só uma curiosidade: foi você que fez esse code ou você acho ele em algum lugar?

Mais uma dúvida: onde eu acho esse slooger? Eu não achei ele na seção tools.

1- Sim, fui eu que fiz esse code do zero. Quando voce sabe asm vc consegue fazer coisas desse tipo =D. E quanto a sua extimativa sobre o erro, na verdade é porque esse code faz o seguinte:

checa se a velocidade do mario é a velocidade de manda-lo para cima e se ele nao está no chao. Caso isso seja verdadeiro, ele vai para o code que checa o botao apertado. Caso o botao baixo seja verdadeiro, ele manda o para para baixo. Porém, quando o mario ja aperta para baixo e pula, o code ja é executado por ele estar apertando para baixo, e entao no mesmo frame ele ja cai.

2- Aqui o tool:

http://www.smwcentral.net/download.php?id=239&type=tools
Valeu!

Eu tenho uma dúvida:
Eu tava olhando na ROM Map procurando pelo endereço dos botões do controle, e eu achei o seguinte:
Controller data 1
01=Right, 02=Left, 04=Down, 08=Up, 10=Start, 20=Select, 40=Y and X, 80=B and A

Mas, no meu codigo, eu preciso especificamente do botão A, não de A e B. Então a minha dúvida: existe um valor apenas para A, sem o b?

Outra coisa: Alguém aí sabe onde tem algum tutorial de ASM que ensine a fazer códigos que possam ser aplicados no SMW? (eu li um tutorial feito pelo iceyoshi, que ensina os comandos e tudo, mas não fala nada sobre como fazer o lugar pro freespace e sei lá o que mais).

Link Thread Closed