Vielleicht hilft dir das hier:
http://www.youtube.com/watch?v=PtLn2PSnQCY
In der Videobeschreibung ist auch der Downloadlink enthalten.
Ich finde die Overworld so wie sie ist in Ordnung. Sicher, sie ist nicht herausragend, aber ich kann damit gut leben.
Ich konnte leider nichts finden, was die Sprites anhalten lässt.
Ich selbst suche auch etwas, und zwar das hier:
Einen Block, der sich in eine Rauchwolke auflöst, wenn er durch ein Sprite (Schildkrötenpanzer, Throw-Block) seitlich oder von unten getroffen wird.
Außerdem suche ich einen Block, der dasselbe wie der obige tut, aber so, dass der Throw-Block weiterfliegt und somit eine ganze Reihe dieses Blocks hintereinander zerstören kann.
Mir gefällt das auch sehr gut. Da in dem Level anscheinend keine Maulwürfe vorkommen, würde ich die dazugehörigen Löcher entfernen.
Schick, wirklich sehr schick. Wieder eine Verbesserung. Das mit den Bäumen und dem dazugehörigen Schatten gefällt mir, auch diese Steinsäule.
Der HDMA-Effekt passt durchaus, ich würde aber die einzelnen Farblinien etwas breiter gestalten, da der Übergang von hell zu dunkel meiner Meinung nach etwas zu kurz ist.
Was muss ich an folgendem Block ändern, damit der Block-Effekt eintritt, wenn Mario ihn von jeder Seite berührt anstatt nur von unten?
Code; on/Off Block (Updated)
; By Shog
; If you touch it from below, it will play sound effect, change either on or off and change to block right!
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;SOUND TO CHANGE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
!Sound = $0B ; Sound effect used when Mario obtains the item from the block.
!SoundPort = $1DF9 ; Sound port used when Mario obtains the item from the block.
;;;;;;;;;;;;;Sound TO CHANGE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Supported values for "!SoundPort" are $1DF9, $1DFA, and $1DFC
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Links:
; http://www.smwcentral.net/?p=thread&id=6665 - List of all sound effects.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
JMP Main : JMP Return : JMP Return : JMP Return : JMP Return : JMP Return : JMP Return
Main:
LDA $14AF
BEQ Add
LDA #$00
STA $14AF
LDA #!Sound ; Play a sound..
STA !SoundPort ; And store it.
REP #$20
LDA $03
CLC
ADC #$0001
STA $03
JSR ChangeMap16
SEP #$20
RTL
Add:
INC $14AF
LDA #!Sound ; Play a sound..
STA !SoundPort ; And store it.
REP #$20
LDA $03
CLC
ADC #$0001
STA $03
JSR ChangeMap16
SEP #$20
Return:
RTL ; Return
Zunächst danke, WYE, für die Hilfe zum Custom Block.
Nun hab ich zwei andere Probleme:
Ich hab den Disable-Throwing-Items-Upwards-Patch angewendet und möchte den deaktivieren/rückgängig machen. Was muss ich dazu tun?
Falls das wichtig ist, hier der Code:
Code;Disable Throwing Items Upwards Flag Patch
;By: Chdata & Fakescaper
!FreeSpace = $55F904
!UpFlag = $7C ;If non-zero, disable throwing items upwards
header
lorom
org $A21F
JML Main
org !FreeSpace ;
db "STAR" ;
;dw End-Main
;dw End-Main~ ;Yes this does the same exact thing as ^#$FFFF
dw End-Main-1 ;smkdan note: the above does not work, see hex editor for what really happens
dw End-Main-1^-1
Main: ;Start of Patch
PHA ;Code Preservation
;LDA !UpFlag ;If freeram flag is not set ;COMMENT THESE TWO LINES
;BEQ .NotCarry ;Skip throwing an item upwards disabling ;IF YOU JUST WANT THIS TO BE GLOBAL
LDA $1470 ;Carrying an item flag
BEQ .NotCarry ;If zero you aren't carrying anything so don't disable pressing the up arrow
.DisableUp ;Disable throwing items upward code below
REP #$20 ;16-bit A
;LDA $15 ;Load controller data
LDA #$0808 ;NOT!!!
TRB $15 ;Remove pressing up
SEP #$20 ;8-bit A
.NotCarry ;Label
PLA ;Code Preserved
BEQ CODE_00A242 ;Code
LDA $1493 ;Restoration
JML $00A224 ;Return
CODE_00A242: ;Label
JML $00A242 ;Return #2
End: ;End of Patch
print "I'm psychic, I knew that you would patch this."
print "-Chdata-"
Zweites Problem:
Ich habe in meinen Hack Bullet Bill (Sprite 1C) als Custom Sprite eingefügt und ihm eine andere Tilemap gegeben. Es wird auch das neue Tile angezeigt, wenn Bullet Bill abgeschossen wird. Aber sobald ich draufspringe und Bullet Bill tot runterfliegt, wird das alte Tile von Bullet Bill angezeigt. Wie kann ich das ändern? Hier die Einstellungen in der asm-Datei:
CodeTilemap:
db $C8,$C8,$C8,$C8
TileProperties:
db $42,$02,$03,$83,$03,$43,$03,$43
Frames:
db $00,$00,$01,$01,$02,$03,$03,$02
XSpeed:
db $20,$E0,$00,$00,$18,$18,$E8,$E8
YSpeed:
db $00,$00,$E0,$20,$E8,$18,$18,$E8
C8 ist das Tile, was angezeigt werden soll. Hat das falsche Tile beim toten Bullet Bill etwas mit den Frames zu tun?
Der letzte Screenshot sieht mal wieder sehr gut aus. Weiter so!
In meinem Hack verwende ich Layer-3-Hintergrundbilder wie in diesem Beispiel hier:
Damit der Hintergrund hinter Layer 2 ist und noch langsamer scrollt, verwende ich diesen Code hier:
Code REP #$20
LDA $1C
LSR A
LSR A
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
RTS
Leider scrollt dieser BG vertikal immer mit Mario mit. Was muss in den Code eingefügt werden, damit der BG das gleiche vertikale Scrolling hat wie Layer 1?
Nicht schlecht, das Level. Allerdings musst du noch an den Secondary Entrances beim Hauptlevel arbeiten. Bei 0:51 und 1:37 ist die Kamera zu hoch platziert. Ansonsten ganz gut.
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.
@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
Der Dirt gefällt mir schon mal ganz gut, allerdings könnten zur Ausschmückung im Boden hier und da mal ein paar gesonderte Dirt-Tiles auftauchen.
Gefällt mir wirklich gut, das Ganze. Die Farben des Himmels sind schick.
Und was deine Langsamkeit angeht: Gut Ding will Weile haben!
Hmm, schon 8 Zugriffe und keine Antwort? Dann will ich der Erste sein.
Also ich weiß nicht warum, aber die Bilder erinnern mich irgendwie an ein SMB2-Höhlenlevel. Ist keinesfalls negativ gemeint. Ich würd's auf jeden Fall mal spielen. Allerdings finde ich, dass beim Boden bzw. bei der Decke ein vernünftiger Rand fehlt.
Was ich als Problem an diesem Forum sehe, ist, dass das Forum zu wenig für den eigentlichen Zweck genutzt wird, nämlich SMW-Hacking. Vieles spielt sich eher im Off-Topic-Bereich ab. Die Zahl der aktiven SMW-Hacker hält sich in Grenzen, erst recht die Zahl derer, die regelmäßig neue Sachen aus ihren Hacks zeigen. Und auch die Zahl der Antworten auf Gezeigtes ist oft nicht besonders üppig. Leider muss ich zugeben, dass ich selbst in letzter zeit auch nicht besonders aktiv hier war.
Ich werde in den nächsten Tagen versuchen, meinen Anteil dafür zu leisten, dass in diesem Forum wieder mehr das Augenmerk auf das Hacking gerichtet wird.
Du meinst bestimmt, dass das Layer 3 Bild vor allen anderen layern sein soll, oder? Dazu musst du vor dem Zeichnen in Terra Stripe im kleinen Fenster Priority aktivieren.
Kann mir bitte jemand sagen, warum hier beim Freiwerden des Weges das freigewordene Level-Tile nicht zu sehen ist:
Das Level-Tile ist aber da, ich kann das Level spielen. Erst nach Bestehen ist das Level-Tile dann sichtbar.
Danke, es lag an dem angegebenen Level-Event.