Eigentlich sollte man eine große Fläche Zement Blöcke für das "gute" Leveldesign nicht machen. Ich habe für mein Level (welches ich in den Screenshots-Thread gepostet habe) durch (kleine) Röhren ersetzt (einfach weil's besser aussieht
).
Ungezählter Edit: Du kannst aber auch die Palette auf eine andere Zeile umkopieren und die "nötige" Farbe aus einen anderen Level kopieren.
Was vergessen: Notenblöcke nutzen die
gleiche Palette wie die Zement Blöcke. Tja, man kann also die Palette der Zement Blöcke nicht auf die Notenblöcke verschieben. :/
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Zitat von WYE: Einfach erklärt:
Mit Hex-Edits änderst du den Code des Spiels, der schon da ist. Um eine Änderung aber nur für ein Level gelten zu lassen, musst du eine Überprüfung einbauen ("ist dies das gewünschte Level?"), und dazu musst du neuen Code einfügen. Das wiederum ist nicht das, wofür Hex-Edits gemacht sind. Dazu solltest du ASM können und dir einen Patch schreiben.
@jakob14: ^ Siehst du. Hex Editoren wurden für
kleinere Änderungen und nicht für große gemacht.
Immerhin
kann ich ASM und du kannst mir einen kleinen "Request" geben.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Alter, irgend was ist an diesem Code schief.
Code!Level_Low = $05
!Level_High = $01
header
lorom
org $00D663
autoclean JSL Mymain
NOP
freecode
Mymain: LDA $010B
CMP #!Level_Low
BNE Not_Changed
LDA $010C
CMP #!Level_High
BNE Not_Changed
LDA Modified,x
BRA Store
Not_Changed:
LDA Original,x
Store: STA $7D
RTL
Original:
db $B0,$B6,$AE,$B4,$AB,$B2,$A9,$B0
db $A6,$AE,$A4,$AB,$A1,$A9,$9F,$A6
Modified:
db $B6,$BC,$B4,$BA,$B2,$B8,$AF,$B6
db $AC,$B4,$AA,$B2,$A7,$AF,$A5,$AC
PS: Wieso ich beiden Bytes separat prüfe? Ganz einfach.
Code REP #$20
LDA $010B
CMP #!Level
BNE Not_Changed
SEP #$20
geht nicht (eigenständig geprüft und
das war der Grund für das Problem).
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Zitat von WYE: Zitat von MarioFanGamer659: PS: Wieso ich beiden Bytes separat prüfe? Ganz einfach.
Code REP #$20
LDA $010B
CMP #!Level
BNE Not_Changed
SEP #$20
geht nicht (eigenständig geprüft und
das war der Grund für das Problem).
Schon mal mit CMP.w probiert? Vielleicht weiß der Assembler nicht, dass du einen 16-Bit-Wert nehmen willst.
Nein! Ich habe ausdrücklich geschrieben:
ZitatCode REP #$20
LDA $010B
CMP #!Level
BNE Not_Changed
SEP #$20
geht nicht (eigenständig geprüft und
das war der Grund für das Problem).
Das Problem ist im
ersten Code.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Alter, das hilft mir doch gar nicht weiter.
Diesen Code
Code!Level_Low = $05
!Level_High = $01
header
lorom
org $00D663
autoclean JSL Mymain
NOP
freecode
Mymain: LDA $010B
CMP #!Level_Low
BNE Not_Changed
LDA $010C
CMP #!Level_High
BNE Not_Changed
LDA Modified,x
BRA Store
Not_Changed:
LDA Original,x
Store: STA $7D
RTL
Original:
db $B0,$B6,$AE,$B4,$AB,$B2,$A9,$B0
db $A6,$AE,$A4,$AB,$A1,$A9,$9F,$A6
Modified:
db $B6,$BC,$B4,$BA,$B2,$B8,$AF,$B6
db $AC,$B4,$AA,$B2,$A7,$AF,$A5,$AC
habe ich gemeint.
Nicht den hier:
Code REP #$20
LDA $010B
CMP #!Level
BNE Not_Changed
SEP #$20
Alter, wie dumm seit ihr denn.
PS: Beide Codes werden (logischerweise) mit Asar gepatcht.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Funktioniert aber trotzdem nicht
:
Code!Level = $0105
header
lorom
org $00D663
autoclean JSL Mymain
NOP
freecode
Mymain: REP #$20
LDA.w $010B
CMP.w #!Level
BNE Not_Changed
SEP #$20
LDA Modified,x
BRA Store
Not_Changed:
SEP #$20
LDA Original,x
Store: STA $7D
RTL
Original:
db $B0,$B6,$AE,$B4,$AB,$B2,$A9,$B0
db $A6,$AE,$A4,$AB,$A1,$A9,$9F,$A6
Modified:
db $B6,$BC,$B4,$BA,$B2,$B8,$AF,$B6
db $AC,$B4,$AA,$B2,$A7,$AF,$A5,$AC
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
[edit]Ach,[/edit] Vergiss/Vergessen Sie es.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Sorry, geht nicht mehr. Ich kann dir leider nicht helfen?
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Tschüs und viel Glück!
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Die OW ist genial (wie immer von dir) aber die Palette...
Edit: Aber das mit dem Hügeln und den Bäumen ist schon genial (andere Graphiken).
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Zitat von Der, der mich gesperrt hatte: Zitat von MarioFanGamer659: Alter, wie dumm seit ihr denn.
Sorry, aber das muss ich mir echt nicht anhören. WYE mag damit vielleicht kein Problem haben, aber ich lasse mich sicherlich nicht beleidigen, weil ich versuche, jemandem zu helfen. Das ist deine erste Verwarnung und eine Sperrung für 24 Stunden!
Also dass mit dem "dumm meinen" ist nicht wirklich ernst gemeint sondern weil die ganze zeit über den zweiten statt den ersten Code geredet wurde (sprich man sollte nicht alles wörtlich nehmen und bei mir ist es in dem Fall nicht wirklich beleidigend). 'tschuldigung, habe nicht auf die Wortwahl geachtet.
(Warum habe ich nicht "dämlich" geschrieben?
)
Noch was:
Zitat von Der, der mich gesperrt hatte: Das Problem ist hier eben gar nicht der Assembler, sondern der Compiler. xkas kann überhaupt nicht wissen, wo und wann welcher Code als 8-Bit und wo als 16-Bit ausgeführt wird. WEIL es eben von den Prozessor-Flags abhängig ist und es dem Prozessor aber eben möglich ist, jederzeit an jede beliebige Stelle der ROM zu springen und dort Code auszuführen. xkas kann deshalb nur Vermutungen anstellen, welcher Code wie interpretiert werden soll, und tut dies zwar meistens, aber eben nicht immer, richtig.
Und was ist mit Asar? Ich hatte auch noch die Befehle "autoclean" und "freecode" benutzt (und die kann man nur mit Asar benutzen).
Und statt
Code!Level_Low = $05
!Level_High = $01
header
lorom
org $00D663
autoclean JSL Mymain
NOP
freecode
Mymain: LDA $010B
CMP #!Level_Low
BNE Not_Changed
LDA $010C
CMP #!Level_High
BNE Not_Changed
LDA Modified,x
BRA Store
Not_Changed:
LDA Original,x
Store: STA $7D
RTL
Original:
db $B0,$B6,$AE,$B4,$AB,$B2,$A9,$B0
db $A6,$AE,$A4,$AB,$A1,$A9,$9F,$A6
Modified:
db $B6,$BC,$B4,$BA,$B2,$B8,$AF,$B6
db $AC,$B4,$AA,$B2,$A7,$AF,$A5,$AC
zu verbessern, verbesserte ihr das:
Code!Level = $0105
header
lorom
org $00D663
autoclean JSL Mymain
NOP
freecode
Mymain: REP #$20
LDA $010B
CMP #!Level
BNE Not_Changed
SEP #$20
LDA Modified,x
BRA Store
Not_Changed:
SEP #$20
LDA Original,x
Store: STA $7D
RTL
Original:
db $B0,$B6,$AE,$B4,$AB,$B2,$A9,$B0
db $A6,$AE,$A4,$AB,$A1,$A9,$9F,$A6
Modified:
db $B6,$BC,$B4,$BA,$B2,$B8,$AF,$B6
db $AC,$B4,$AA,$B2,$A7,$AF,$A5,$AC
Und das war nicht der Code den ich meinte (und fals jemand schreibt: "Warum hattest du es nicht geschrieben?". Ich habe es
extra geschrieben und ihr hattet nicht darauf geachtet.
). Könntest du mir eine zweite Chance geben? Und ich habe beim VVR-Thrad vergessen zu schreiben, dass ich autistisch bin (dummer, DUMMER Manuel) (und somit mein Gehirn anders arbeitet als bei
mir den meisten von euch) .
(Und ich lüge
gar nicht. Ich könnte dir meinen behinderten Ausweis per Photo zeigen.
)
Edit: Immerhin bist du und WYE ein bisschen lustig. *Zwinker-Smiley*
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Es
gibt so einen Patch?
Ups.
PS: Es kam zu spät weil ich gesperrt wurde.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
geschrieben am 10.08.2013 6:22:47 in
RISE
Bevor ich mich in SMWHacking.de angemeldet habe, sah ich einige Bilder von die und sie sehen echt gut aus (und das z.T. weil mein Leveldesign schlechter ist
). Zum Video: Eigentlich ganz gut aber... naja... um 0:15 das Wasser und wie hast du den Wasserfall um 0:45 gemacht? Zu 0:25 und 0:35 sage ich nichts weil mir nichts eingefallen ist.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Du weißt doch, dass man besser nach schauen soll.
PS: Guck doch mal auch bei SMWCentral.net.
Edit: Wenn du hier nichts findest.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Zitat von Reggiamoto: Zitat von MarioFanGamer659:
Vielleicht überprüfst du die Download-Links auch mal, bevor du sie verlinkst, denn
Zitat von SMWHacking.de: Diese Datei existiert nicht!
Moment mal. Diese Datei existiert nicht, steht aber trotzdem als DL erhältlich auch wenn die Datei nicht existiert? Oh man, WYE hatte es (vielleicht) echt vermasselt.
Edit: Oder es sollte als troll sein.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
CodeJMP MarioBelow : JMP MarioAbove : JMP MarioSide : JMP SpriteV : JMP SpriteH : JMP MarioCape : JMP MarioFireBall
MarioAbove:
MarioBelow:
MarioSide:
LDA $19
BNE sonst
INC $19
BRA shatter
sonst:
LDA #$01
STA $0DB3
shatter:
LDA #$02
STA $9C
JSL $00BEB0
PHB
LDA #$02
PHA
PLB
LDA #$00 ; Set to 01 for rainbow explosion.
JSL $028663
PLB
SpriteV:
SpriteH:
MarioCape:
MarioFireBall:
RTL
Einfach mal
diesen Code am Ende einfügen und weil du die anderen Offsets eh nicht genutzt hattest, löschte ich "JMP MarioCorner" "-HeadInside" und "-BodyInside".
Edit: Vorher: [...]
diesen am Ende[...]
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Verdammt. Ich gebe sowieso auf.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Mario ist ein sogenannter "dynamischer Sprite" (sprich, er wird anders geladen) und man braucht dafür ASM.
Dieser oder
dieser Patch
sollte könnte dir helfen.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Zitat von kooooopa: Zitat von mzünni: du solltest auch bedenken ,dass wenn mario den Block 2 frames lang berührt er auf jedenfall Luigi wird...
Auch wenn du nur rum probierst, denke ich, dass es hierfür auch eine Lösung gibt.
Der Block ist einfach ein ganz normaler Teleportblock ins SELBE Level und in diesem Level wird mit Hilfe von LevelASM bzw. über ASM mein gezeigter Code zum Levelstart NUR EIN MAL ausgeführt.
Damit sollte dieses Problem doch umgangen werden
@Koooopa: Du weißt doch, dass ich beim Block einen Stück Code am Ende eingefügt habe, nicht?
Zitat von MarioFanGamer659: CodeJMP MarioBelow : JMP MarioAbove : JMP MarioSide : JMP SpriteV : JMP SpriteH : JMP MarioCape : JMP MarioFireBall
MarioAbove:
MarioBelow:
MarioSide:
LDA $19
BNE sonst
INC $19
BRA shatter
sonst:
LDA #$01
STA $0DB3
shatter:
LDA #$02
STA $9C
JSL $00BEB0
PHB
LDA #$02
PHA
PLB
LDA #$00 ; Set to 01 for rainbow explosion.
JSL $028663
PLB
SpriteV:
SpriteH:
MarioCape:
MarioFireBall:
RTL
Einfach mal
diesen Code am Ende einfügen und weil du die anderen Offsets eh nicht genutzt hattest, löschte ich "JMP MarioCorner" "-HeadInside" und "-BodyInside".
Hierbei wird der Block
zerstört wenn man ihn benutzt.
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->
Joa, es sieht nach "etwas" aus. *Zwinker-Smiley* Ich finde es gut, dass es etwas detailreich ist aber einige Stellen könnten besser gemacht werden. *Zwinker-Smiley* Was mich stört, sind die gelben !-Blöcke. Die könnte man weglassen. *Zwinker-Smiley* Was mich auch stört, ist die Stelle unten links am Goomba. *Zwinker-Smiley*
PS: Es sind zu viele Sprites auf den Screen, nämlich zwölf (was die grenze des Sprite Limits ist und es gibt logischerweise Slowdowns
).
Du kannst auch gerne zu mir MFG659 sagen (ich heiße übrigens in CreepTD wegen dem limitierten Platz wirklich MFG659)
Ich kann einige (ASM)-Codes fixen. <!-- s:) -->:)<!-- s:) -->