Allgemeine SMW Hacking Fragen

geschrieben am 30.09.2011 16:08:35
( Link )
Habs auf die gleiche Position gesetzt und es funktioniert. :3
(Hätte ich auch selbst drauf kommen können.. )
Nur was mich noch nervt, ist die Tatsache, dass die Teile erst ab einen bestimmten Screen so schnell werden. x.x
Ist aber auch im Original so. o:

Also vielen vielen danke für eure Hilfe und ich werde euch auch in Zukunft belästigen. :b
geschrieben am 30.09.2011 21:12:18
( Link )
Wie kann ich 2 Monsterarten in einem Level haben?

z.B. Geister und Drybones.
geschrieben am 30.09.2011 21:28:32
( Link )
Die GFX Dateien Mischen.

Random Musiktitel:Branchez - Shake
geschrieben am 01.10.2011 11:37:07
( Link )
Spoiler anzeigen
Gibt es eine möglichkeit dafür zu sorgen,dass man zu jeder zeit start+select drücken kann um das Level zu beenden? (also auch wenn das lvl noch nciht geschafft wurde)
denn ich weiß ,dass man sich desöfteren in situationen bringen kann wodurch das Level unschaffbar ist und ich möchte nicht das man sich jedesmal töten muss...
oder man bringt sich in situationen in denen man nicht mehr sterben kann und hängt dann endgültig fest denn mein timelimit steht auf 0 ...

ok ich habe wye reset patch mal einbischen abgeender tdamit er zur die adresse 100 zu 0b setzt und somit die OW lädt aber ich weiß nicht welche tasten start + select sind...
ich will das ja nicht auf L+R liegen haben
ich hoffe ihr könnt mir helfen
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 02.10.2011 16:46:37
( Link )
kennt wer vielleicht ne einfacherere (bzw. ein tutorial auf deutsch) möglichkeit als diese : http://www.smwcentral.net/?p=viewthread&t=42271 , custom layer 3 Bg´s in roms einzufügen ?
geschrieben am 02.10.2011 16:57:28
( Link )
Genau das wollt ich auch grad fragen.



Grade arbeite ich an: Nichts
geschrieben am 02.10.2011 23:11:23
( Link )
Ich habe eine andere Möglichkeit, allerdings habe ich dabei die Original-Layer3-Grafik durch Custom Grafiken ersetzt. Also wer auf die SMW-Layer3-Grafiken verzichten kann...
Das hört sich jetzt beim Durchlesen vll. auch nicht ganz einfach an, ist aber auf jeden Fall schaffbar!

Ihr öffnet GFX28 bis GFX2B (am besten in AllGFX) mit yy-chr, und zwar im 2BPP GB-Modus. Dort fügt ihr eure Custom-Grafiken für Layer 3 ein, speichert und insertet die GFX anschließend wieder mit Lunar Magic. Diese Grafiken verwendet ihr später zum Zeichnen des BG.

Dann öffnet ihr das Programm Terra Stripe, öffnet darin die Rom und wählt euch ein Tileset aus, merkt euch dieses Tileset, da dieses Tileset auch in LM im jeweiligen Level verwendet werden muss. Rechts daneben steht was mit "water", ihr solltet aber grundsätzlich "Beta Cage" auswählen. Deshalb nicht die Tilesets auswählen, die schon in SMW für Layer 3 verwendet werden (Goldfish, Mist...).
Anschließend könnt ihr loszeichnen. Wer wissen will, wie das mit den Layer-3-Paletten funktioniert, sollte das hier lesen (mittig): http://www.smwcentral.net/?p=viewthread&t=13448
Dann speichern. Dann LM öffnen, Layer 3 aktivieren (Tileset specific). Fertig!

Denkt dran, in LM ist der Layer-3-BG nicht zu sehen. Für bestimmte Scrolling-Eigenschaften des BG müsst ihr entsprechende Codes mit Level-asm patchen.
Wer solche Codes braucht und wer sich evtl. für Layer-3-Hintergrundbilder aus SMB3 interessiert, kann sich an mich wenden.
geschrieben am 03.10.2011 11:56:15
( Link )
danke für die tolle hilfe chris
hab schon nen custom layer 3 bg eingefügt, jedoch scrollt der eben extrem beschissen und die codes von der von mir oben genannten seite mit level asm einzufügen bringts auch nicht. bewirkt irgendwie nur das die layer 3 status bar nun "variable" scrollt aber der layer 3 bg denn ich eigentlich so scrolen haben möchte natürlich nicht >_>
wär nett von dir wenn du mir da ein paar funktionierende codes geben könntest :3
geschrieben am 03.10.2011 12:02:35
( Link )
Kann mir mal schnell jemand sagen,wo ich die Muncher GFX in YYCHR finde bzw. in welcher Datei der Grafiken die vorhanden sind?
geschrieben am 03.10.2011 12:07:56
( Link )
in gfx 33 ;D
musst eben nur all ihre animations abläufe ändern^^
geschrieben am 03.10.2011 12:11:06
( Link )
Vielen Dank.
geschrieben am 03.10.2011 14:29:40
( Link )
@benvvv:

Wenn du einen BG haben willst, der sich hinter dem normalen BG befindet und noch langsamer scrollt als dieser, dann nimm diesen Code:
Code
	REP #$20
LDA $1C
STA $24
LDA $1A ; Scroll four times as slow as Layer 1.
LSR A
LSR A
STA $22 ; Layer 3 X.
LDA #$1F1F
STA $212C
SEP #$20

Sprites mit low Priority wie Piranha-Pflanzen verschwinden aber hinter dem Layer-2-BG.

Für einen Layer-3-BG, der langsamer als Layer 2 scrollt, aber sich vor Layer 2 befinden soll, nimm den Code:
Code
	REP #%00100000
LDA.w $1462 ; horz:
LSR #2 ; the higher this number, the slower it will scroll. Remove for same speed as FG
CLC : ADC.w #$0000 ; (offset, change this to whatever you want, or remove it if you don't need it)
STA.b $22
LDA.w $1464 ;vert:
LSR #0 ; the higher this number, the slower it will scroll. Remove for same speed as FG
CLC : ADC.w #$0010 ; (offset, change this to whatever you want, or remove it if you don't need it)
STA.b $24
SEP #%00100000


Ich kann jetzt nicht genau sagen, ob diese Codes in levelcode.asm oder levelinitcode.asm oder beidem verwendet werden müssen, musst mal testen.
Wichtig:
In Levels mit Layer-3-BG empfiehlt es sich, die normale Statusbar durch die Sprite-Statusbar zu ersetzen. Hierzu gibt es einen Patch, bei dem man einstellen kann, in welchen Levels eine Sprite-Statusbar aktiviert werden soll und welche Sprite-Palette diese haben soll.
Hier der Link: http://www.smwcentral.net/download.php? ... pe=patches
geschrieben am 03.10.2011 14:34:54
( Link )
ne kleine frage :
ich benutze in einem level den auto move sprites und möchte jetzt einen block der beim durchlaufen das leben um eins erhöht
Code
JMP return : JMP return : JMP Main : JMP return : JMP return : JMP return : JMP return 
Main:
INC $00DBE
return:
RTL

also sowas in der art...
aber wie kriege ich es hin das beim durchlaufen der block nur einmal aktivirt wird?
(ich habe niht viel ahnung von asm...)
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 03.10.2011 14:56:16
( Link )
Erst mal solltest du eine Null entfernen - $0DBE heißt's.

Der einfachste und speicherschonendste Weg, das nur einmal auszuführen, wäre, den Block sich selbst zerstören zu lassen. Das geht mit folgendem Code:

Code
LDA #$02
STA $9C
JSL $00BEB0

Einfach vors "return"-Label packen, dann sollte es funktionieren. (Das sieht natürlich ziemlich hässlich aus, wenn der Block Grafiken hat, aber na ja.)
geschrieben am 03.10.2011 15:03:46
( Link )
Auch nochmal eine Frage von mir..

Und zwar geht es um Custom Music.
Ich hab nicht das Problem sie einzufügen, dass ist kein Ding..
Es geht eher darum, dass sich die eingefügte Musik, die sich eigentlich gut anhört (Also im SPC file), sich im Spiel echt mies anhört, bzw. man hört gar nichts.
Ich hatte nie wirklich Porbleme mit Custom Music aber seit neulich.. >.<
Auch Musik die sich frühr bei mir ganz Normal angehört hat funktioniert nicht.. (Btw Nicht nur bei bearbeiteten Roms, sondern auch bei cleanen.)

Benutze Romi's AddMusic. ._.
geschrieben am 03.10.2011 15:06:11
( Link )
hm naja die grafic für den block wäre kein problem die würde ich dann auf layer 2 packen aber
(ich benutze es als bonusraum) ich habe dafür gesorgt das sobald ich gegen eine wand laufe er den bonus lvl counter auf 44 setzt und stehen bleibt ... das passirt nur leider jetzt auch bei den lebens blöcken...
EDIT:
habe es jetzt grade nochmal mit anderen werten versucht z.b. 3 sollte eine vine erschaffen
wenn ich eine vine normal im lvl platzire klappt es wunderbar aber wenn ich sie deinen code benutzte der ja eine ranke macht (wenn mans auf 3 ändert) dann bleibt mario an dem block stehen...
Code
;================================;
;Autowalk, version 99999.9999999 ;
;Made by Iceguy ;
;================================;

;Uses Extra bit: YES
;If set, you'll walk left instead.

!Speed = $2f ; Speed to walk at.
; 00 = Stationary.
; 01 = HORRIBLY slow.
; 08ish = standard walking.
; 20ish = really fast.
; Don't go beyond 25 or so, might glitch through walls.

!DisableControls = $00 ; Disable spin-jumping, jumping etc. (00 = No, 01 = Yes)

;===========================================================================================================================================


print "INIT ",pc
LDY #$00
LDA $7FAB10,x
AND #$04
STA $1588,x ; Store the extra bit in $1588,x so we can use it later.
LDA $1588,x
BEQ LOLno ; If bit = clear, use left.
INY
LOLno:
STY $76
RTL

print "MAIN ",pc
PHB
PHK
PLB
JSR Control
PLB
RTL

;==========;
; Main ;
;==========;
Control:
LDA #!DisableControls
BEQ Left
LDA #$FF
STA $0DAA
STA $0DAC
Left:
LDA $1588,x
BEQ Right
STZ $76
STZ $7B
LDA #$FF
STA $0DAA
STA $0DAC
LDA $14AB
BEQ Timer
BRA END
Timer:
LDA #$44
STA $14AB
BRA Left
Right:
LDA #$01
STA $76
LDA #!Speed
Check:
STA $7B
LDA $77
AND #$03
BEQ END
LDA $1588,x
EOR #$04
STA $1588,x
STZ $77
BRA Left
END:
RTS


das ist übrignes der code den ich im bonusgame benutzte um mario laufen zu lassen und ihn wen er gegen eine wand leuft zu stoppen ... (eigentlich das autowalk sprite von Iceguy nur leicht abgeändert...)

und was auch sehr interessant ist ,3up moons und yoshi coins funktioniren ganz normal...
auch dieser block würde gehen
Code
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;1-UP Block
;
;Set it to act like tile 130
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

JMP return : return : JMP MarioSide : JMP return : JMP return : JMP return : JMP return


MarioSide:

JSR SetSpriteCoord1
LDA #$78 ;Sprite number
JSR SpawnSprite
LDA #$03
STA $1DFC
REP #$30
LDA $0003
CLC
ADC #$0001
TAX
JSR ChangeMap16
SEP #$30


SpawnSprite:
PHX
PHP
SEP #$30
PHA
LDX #$0B
SpwnSprtTryAgain:
LDA $14C8,x ;Sprite Status Table
BEQ SpwnSprtSet
DEX
CPX #$FF
BEQ SpwnSprtClear
BRA SpwnSprtTryAgain
SpwnSprtClear:
DEC $1861
BPL SpwnSprtExist
LDA #$01
STA $1861
SpwnSprtExist:
LDA $1861
CLC
ADC #$0A
TAX
SpwnSprtSet:
STX $185E
LDA #$08
STA $14C8,x ;Sprite Status Table
PLA
STA $9E,x ;Sprite Type
JSL $07F7D2 ; reset sprite properties
INC $15A0,x ;"Sprite off screen" flag, horizontal
LDA $9A ;Sprite creation: X position (low)
STA $E4,x ;Sprite Xpos Low Byte
LDA $9B
STA $14E0,x ;Sprite Xpos High Byte
LDA $98 ;Sprite creation: Y position (low)
STA $D8,x ;Sprite Ypos Low Byte
LDA $99 ;Sprite creation: Y position (high)
STA $14D4,x ;Sprite Ypos High Byte
LDA #$3E
STA $1540,x ;Sprite Spin Jump Death Frame Counter
LDA #$D0
STA $AA,x ;Sprite Y Speed
LDA #$2C
STA $144C,x
LDA $190F,x ;Sprite Properties
BPL SpwnSprtProp
LDA #$10
STA $15AC,x
SpwnSprtProp:
PLP
PLX
RTS

SetSpriteCoord1:
PHP
REP #$20
LDA $98
AND #$FFF0
STA $98
LDA $9A
AND #$FFF0
STA $9A
PLP
RTS

PrematureEnd:
PLX
PLY
PLB
PLP
RTS
ChangeMap16:
PHP
SEP #$20
PHB
PHY
LDA #$00
PHA
PLB
REP #$30
PHX
LDA $9A
STA $0C
LDA $98
STA $0E
LDA #$0000
SEP #$20
LDA $5B
STA $09
LDA $1933
BEQ SkipShift
LSR $09
SkipShift:
LDY $0E
LDA $09
AND #$01
BEQ LeaveXY
LDA $9B
STA $00
LDA $99
STA $9B
LDA $00
STA $99
LDY $0C
LeaveXY:
CPY #$0200
BCS PrematureEnd
LDA $1933
ASL A
TAX
LDA $BEA8,x
STA $65
LDA $BEA9,x
STA $66
STZ $67
LDA $1925
ASL A
TAY
LDA [$65],y
STA $04
INY
LDA [$65],y
STA $05
STZ $06
LDA $9B
STA $07
ASL A
CLC
ADC $07
TAY
LDA [$04],y
STA $6B
STA $6E
INY
LDA [$04],y
STA $6C
STA $6F
LDA #$7E
STA $6D
INC A
STA $70
LDA $09
AND #$01
BEQ SwitchXY
LDA $99
LSR A
LDA $9B
AND #$01
BRA CurrentXY
SwitchXY:
LDA $9B
LSR A
LDA $99
CurrentXY:
ROL A
ASL A
ASL A
ORA #$20
STA $04
CPX #$0000
BEQ NoAdd
CLC
ADC #$10
STA $04
NoAdd:
LDA $98
AND #$F0
CLC
ASL A
ROL A
STA $05
ROL A
AND #$03
ORA $04
STA $06
LDA $9A
AND #$F0
REP 3 : LSR A
STA $04
LDA $05
AND #$C0
ORA $04
STA $07
REP #$20
LDA $09
AND #$0001
BNE LayerSwitch
LDA $1A
SEC
SBC #$0080
TAX
LDY $1C
LDA $1933
BEQ CurrentLayer
LDX $1E
LDA $20
SEC
SBC #$0080
TAY
BRA CurrentLayer
LayerSwitch:
LDX $1A
LDA $1C
SEC
SBC #$0080
TAY
LDA $1933
BEQ CurrentLayer
LDA $1E
SEC
SBC #$0080
TAX
LDY $20
CurrentLayer:
STX $08
STY $0A
LDA $98
AND #$01F0
STA $04
LDA $9A
REP 4 : LSR A
AND #$000F
ORA $04
TAY
PLA
SEP #$20
STA [$6B],y
XBA
STA [$6E],y
XBA
REP #$20
ASL A
TAY
PHK
PER $0006
PEA $804C
JML $00C0FB
PLY
PLB
PLP
RTS
return:
RTL


kann mir das iegendwer "zusammen packen"?
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 11.10.2011 20:13:04
( Link )
Gibt es in smw ein Teil wo man von oben nach unten kann, aber nicht, bzw. nur mit einer Ranke nach oben?
Oder kann man sich eins aus 8*8 Blöcken zusammen basteln?
Es gibt ja den Boden wo man drauf laufen kann und das Seil man kann immer nur von unten nach oben.
Leider ach wenn man das teil um dreht. Die funktionsweise dreht sich komischerweise mit um.

Ich weiß es gibt customblöcke die einen nur in eine Richtung durch lassen aber, die will ich nicht unbedingt verwänden.
geschrieben am 11.10.2011 20:19:02
( Link )
du musst aber Custom Blöcke verwenden...
mit dem 8x8 editor / 16x16 edito kannst du nur die Graphic verändern und eine schon vorhandene kommplette Funktionsweise angeben wenn du also eine andere Funktionsweise haben willst brauchst du Custom Blöcke
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 18.10.2011 17:13:04
( Link )
Ok. Danke.

Noch ne Frage.
Hab ein paar Blöcke so umgebaut, dass sie wie eine Röhre funktionieren.
Tut auch alles.
Wenn ich jetzt aber in die Röhre gehe, wenn ein p-switch aktiviert ist kommt black screen und die p-switch Musik wird endlos.
Wieso?
geschrieben am 18.10.2011 18:20:55
( Link )
ähm wenn ich mich recht erinnere war das irgendein Addmusic problem ...
ich bin mir aber nicht sicher aber die frage hat schonmal wer hier im forum gestellt ^^
ich guck ma ob ich es finde...
viewtopic.php?f=19&t=227
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->