Beiträge von Nerdnussbutter

geschrieben am 05.08.2013 17:08:16 in 2 verschiedene HDMA Codes für ein Level
( Link )
Hallo zusammen,

ich arbeite gerade an einem Level, für welches ich gerne den "Gradient Shadow Bottom" von Ice Man, sowie einen anderen (normalen) Farbverlaufs- HDMA benutzen würde.


Bearbeiteter Shadow- HDMA:

Spoiler anzeigen
LDA #$17 ;\ Everything
STA $212C ;| is on main screen
LDA #$00 ;| Nothing
STA $212D ;| is on sub screen
LDA #$A7 ;| Affect layer 1,2,3
STA $40 ;/ back enable and subtract



REP #$20 ;\ Set processor 16 bit
LDA #$3200 ;| $4330 = $2132
STA $4350 ;| $4331 = Mode 00
LDA #Gradient ;| Get gradient pointer
STA $4352 ;| low and high byte
PHK ;| Get bank
PLY ;|
STY $4354 ;| Store to address bank
SEP #$20 ;/ Set processor 8 bit

LDA #$20 ;\ Enable HDMA
TSB $0D9F ;| on channel 5
RTS ;/ Return



Gradient:
db $64,$E0
db $04,$E1
db $04,$E2
db $04,$E3
db $04,$E4
db $04,$E5
db $04,$E6
db $04,$E7
db $04,$E8
db $04,$E9
db $04,$EA
db $04,$EB
db $04,$EC
db $04,$ED
db $04,$EE
db $04,$EF
db $04,$F0
db $04,$F1
db $04,$F2
db $04,$F3
db $04,$F4
db $04,$F5
db $04,$F6
db $04,$F7
db $04,$F8
db $04,$F9
db $04,$FA
db $04,$FB
db $04,$FC
db $04,$FD
db $04,$FE
db $04,$FF
db $00




Da ich uberASM benutze, habe ich zunächst den Shadow Code bei "Level_Init_code.asm" eingefügt und für Asar so modifiziert, dass er keine xkas- Commands mehr hat (siehe Spoiler).
Das hat dann auch alles ohne Probleme funktioniert. Was mir jedoch nicht gefällt, ist, dass dieser Hdma- Code, der sich hauptsächlich auf den FG bezieht, auch den kompletten Background schwarz färbt, und das Level so zu dunkel macht.
Aus diesem Grund habe ich einen normalen (blauen) HDMA Code ebenfalls über Level_Init_Code.asm" eingefügt, direkt unter den Shadow- Code.

Spoiler anzeigen
LDA #$00
STA $4330
LDA #$02
STA $4340

LDA #$32
STA $4331
STA $4341

REP #$20
LDA.w #.Table20
STA $4332
LDA.w #.Table19
STA $4342

SEP #$20

LDA.b #.Table20>>16
STA $4334
LDA.b #.Table19>>16
STA $4344

LDA #$18
TSB $0D9F

RTS






.Table19
db $80,$20,$40
db $60,$20,$40
db $00

.Table20
db $14,$81
db $14,$82
db $14,$83
db $14,$84
db $14,$85
db $14,$86
db $14,$87
db $14,$88
db $14,$89
db $14,$8A
db $14,$8B
db $14,$8C
db $22,$8D
db $00


-> Der Code ist nur provisorisch, eventuell nehme ich einen anderen Farbverlauf.


Obwohl mir Asar keine Probleme berichtet, erscheint im Level leider immer nur der eine HDMA- Code, nämlich der erste.

Anscheinend scheint das Ganze daran zu liegen, welche HDMA- Channels benutzt werden; Bei dem ersten Code steht als Kommentar des Autors, dass dieser Channel 5 benutzen würde.

Deshalb meine Frage: Wie muss ich den zweiten Code umschreiben, damit beide Codes im Level erscheinen, oder ist das eventuell gar nicht möglich?

Ich würde mich über Hilfe freuen. =)
geschrieben am 05.08.2013 18:26:48 in 2 verschiedene HDMA Codes für ein Level
( Link )
Erstmal danke für die schnelle Antwort.

Ich verstehe nicht ganz, was du mit "auf eine Palettenfarbe anwenden", meinst. Bedeutet dass, das ich den zweiten HDMA- Code vergessen soll, und einfach mithilfe einer
Palettenfarbe eine Art Fake- HDMA erstellen soll, oder dass ich den Code irgendwie "auf eine Farbe patche"? Wenn ja, wie soll ich genau vorgehen mit uberASM?
geschrieben am 05.08.2013 19:02:54 in 2 verschiedene HDMA Codes für ein Level
( Link )
Das Gradient Tool habe ich sogar schonmal benutzt, werde mir gleich mal angucken, ob ich das hinbekomme

Den Code habe ich mir mit Hilfe des HDMA- Gradient Rippers generiert.

Mir kommt da gerade eine Idee... Du sagtest ja, das Problem ist, dass das gleiche Register ($2132)
von beiden Codes benutzt wird. Es gibt bei dem Gradient Ripper aber auch eine Funktion, die einen HDMA Code auch für die Register $2121 und $2122 generiert.
Könnte das Problem so gelöst werden? Theoretisch müssten dann ja Code 1 und Code 2 unterschiedliche Register, sowie Channels benutzen, und dürften sich nicht mehr überschreiben.

Ich probiers mal aus.
geschrieben am 05.08.2013 19:21:09 in 2 verschiedene HDMA Codes für ein Level
( Link )
Okay, ich hab so ziemlich null Ahnung von ASM und erschließe mir den ganzen Kram nur mehr oder weniger nach Logik.

Soll ich diese Register ($2121 und $2122) benutzen, oder verstehe ich das grad völlig falsch?

Btw, bei dem Gradient Tool gibt es die Codes:
BothScrollGradient.asm,
ScrollGradient.asm,
ScrollGradientTables.asm,
SpecifyScrollGradient.asm

Dieser Code, von dem du gesprochen hast, ist der "SpecifyScrollGradient.asm"?

Ansonsten, wenn ich das jetzt gar nicht auf die Reihe krieg, nehm ich halt nen Fake HDMA
geschrieben am 05.08.2013 20:01:02 in 2 verschiedene HDMA Codes für ein Level
( Link )
Ahhh solangsam verstehe ich das Ganze..
Ich denke ich bekomme das jetzt hin, hab vorhin nen Test gemacht, bei dem das relativ gut geklappt hat, mit der einen Palettenfarbe.

Vielen Dank für deine Hilfe!

Falls ich doch noch für was zu blöd sein sollte, melde ich mich wieder
geschrieben am 05.09.2013 16:22:07 in Allgemeine Hex- und ASM-Fragen
( Link )
Hallo Leute,

ich habe mir mit ScrollBars diesen Parallax Code generiert, den ich gerne für mein Level nutzen würde.

Spoiler anzeigen
{InitCodeLabel}:
LDA.b #$00
STA.l $7FB006
STA.l $7FB007
LDA.b #$00
STA.l $7FB008
STA.l $7FB009
JSR {MainCodeLabel}_Grp1
RTL

{MainCodeLabel}:
LDA.w $13D4
BEQ +
JMP .skip
+ REP #%00100000
LDA.l $7FB006
CLC : ADC.w #$000C
STA.l $7FB006
LDA.l $7FB008
CLC : ADC.w #$0008
STA.l $7FB008
SEP #%00100000
.skip REP #%00010000
LDA.b #%01000010
STA.w $4330
LDA.b #$0F
STA.w $4331
REP #%00100000
LDA.b $20
AND.w #$01FF
STA.b $00
ASL
CLC
ADC.b $00
CLC
ADC.w #.HTbl2
STA.w $4332
SEP #%00100000
LDA.b #.HTbl2>>16
STA.w $4334
LDA.b #$7F
STA.w $4337
LDA.b #%1000
TSB.w $0D9F
SEP #%00010000
JSR .Grp1
RTL

.Grp1 REP #%00100000
LDA.b $1E
CLC : ADC.l $7FB006
STA.b $00
STA.b $00
LDA.b $00
STA.l $7FB000

LDA.b $1E
CLC : ADC.l $7FB008
STA.b $00
STA.b $00
LDA.b $00
STA.l $7FB002

LDA.b $1E
STA.b $00
LDA.b $00
STA.l $7FB004

SEP #%00100000
RTS

.HTbl2 db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B000
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B002
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $01 : dw $B004
db $00




Da ich jedoch nicht das LevelASMTool benutze, für das der Code ja eigentlich generiert wird, würde ich gerne wissen, inwiefern ich den Code verändern müsste, um ihn via UberAsm (mit Asar) einzufügen?

Am besten wäre es, wenn ich ihn über LevelCode.asm und nicht über LevelInitCode.asm einfügen kann, da ich bereits einen anderen Code im Level benutze.
geschrieben am 08.09.2013 12:02:56 in Allgemeine Hex- und ASM-Fragen
( Link )
Vielen Dank,

ich habe es aber noch nicht ganz verstanden..
Bedeutet das, ich soll diesen Code:

Code

{InitCodeLabel}:
LDA.b #$00
STA.l $7FB006
STA.l $7FB007
LDA.b #$00
STA.l $7FB008
STA.l $7FB009
JSR {MainCodeLabel}_Grp1
RTL


bei InitCode.asm einfügen soll und den Teil ab "MainCodeLabel" bei LevelCode.asm?
Wenn ja, wie spring ich denn dann zu dem MainCode Teil (hier noch mit JSR {MainCodeLabel}_Grp1 gekennzeichnet), da dieser sich ja dann in LevelCode und nicht in InitCode befindet?
geschrieben am 20.09.2013 22:44:05 in Offizieller Musik-Thread
( Link )
Hey Leute!

Ich zeig hier auch mal etwas von meinen ersten Ports, würde mich über Feedback freuen.
Einige der Ports sind jedoch relativ alt und deshalb auch verbesserungswürdig.

geschrieben am 21.09.2013 12:17:38 in Offizieller Musik-Thread
( Link )
Danke fürs Feedback!

1. Okay, das könnte ich nochmal verändern. Irgendwas hatte mir an dem Song nicht gefallen, ich wusste nur nicht was

2. Mich wunderts ehrlich gesagt, dass du den Port okay findest, ich wollte den fast noch rausschneiden.

3. Hab ich für nen Kollegen geportet und hatte nur ne ziemlich schlechte Midi als Grundlage, wird noch verbessert.

4. Ja, Rocksongs zu porten klappt leider nicht so gut.. :/

5. Was genau stimmt mit dem Port nicht D: Ich finde der gehört sogar zu meinen Besseren

6. Kann ich versuchen, das momentane Tempo ist das "originale" von Green Day.

7.Yay!

8. Mein allererster Port *-*


Ach übrigens, dein Tutorial auf Youtube hat mir geholfen, nach Noten zu porten, vielen Dank dafür!
geschrieben am 22.10.2013 20:17:14 in Eeriedescent - erste Screenshots!
( Link )
Hey Leute,

ich arbeite seit circa einem Monat an meinem ersten großen Hack. Obwohl der Hack auch kleinere ExGFX beinhalten wird, bleibt er dennoch Vanilla- Styled.
Diese ExGFX sind größtenteils Erweiterungen der Originalgrafiken bzw. kleinere Veränderungen, um z.B. Cutoffs zu vermeiden.

Der (vorläufige) Name "Eeriedescent" leitet sich von dem englischen Wort "iridescent" ab, was soviel bedeutet, wie: "leuchtend, schillernd", sowie aus den "SMW- Eeries".
Hierbei möchte ich aber noch anmerken, dass der Titel eventuell noch geändert wird- was haltet ihr von dem Namen?

Da die gesamte Story noch nicht ausgereift ist und noch nicht wirklich steht, werde ich darüber erst später nähere Informationen liefern. Was aber schon gesagt werden kann, ist, dass es sich um 5 Eeries (wer hätte es gedacht..)handeln wird, die eine feindliche Rolle spielen werden. Jeder dieser Eeries wird vermutlich eine bestimmte Fähigkeit besitzen, die es in den jeweiligen End- Castles der einzelnen Welten zu bezwingen gilt. Wie genau ich das umsetzen werde, steht noch nicht fest.

Der Hack wird vorraussichtlich über 5-6 Welten verfügen und insgesamt um die 40 Level haben. Die Level werden relativ anspruchsvoll und sind eher auf Savestates ausgelegt.


Bei "Eeriedescent" möchte ich mich hauptsächlich auf gutes Leveldesign konzentrieren und wahnsinnige optische Effekte eher selten benutzen, da mir zurecht oft vorgeworfen wurde, dass ich zuviel Wert auf Deko und zu wenig Wert auf gutes Design lege. Deshalb werde ich es mit diesem Hack versuchen, besser zu machen und nur dann Gebrauch von HDMA, Layer 3, Parallax, Cluster Sprites und sonstigem Quatsch zu machen, wenn es auch wirklich nötig ist.

Erste Screenshots einiger Level (aus verschiedenen Welten):
-(kleinere Cutoffs an Ropes o.Ä. bitte ignorieren! )




Ich hacke erst seit Anfang dieses Jahres, deshalb würde ich mich über ehrliche, konstruktive Kritik/Feedback sehr freuen.
geschrieben am 23.10.2013 13:50:38 in Eeriedescent - erste Screenshots!
( Link )
Danke für dein Feedback.

So ich hab mich zu ungenau ausgedrückt. Story hab ich zum Teil falsch erklärt und ausgereift ist sie sowieso nicht, also lassen wir das mal außer Acht. Ich möchte nur anmerken, dass selbstverständlich NICHT in jedem Level Eeries vorkommen, das wäre lame und unkreativ.

Zitat von Reggiamoto:
Nicht die Bombe, aber völlig okay. Kannst ihn so lassen.

Ich hatte mir hauptsächlich Gedanken darüber gemacht, das maximal 10 % der Spieler das aussprechen könnten.

Zitat von Reggiamoto:
Damit hast du mich leider schon zu 100% abgeschreckt. Sowas mag ich gar nicht und die meisten Leute auch nicht.

Hmm, mal wieder nicht gut von mir erklärt. Die Level sollen fordernd sein, aber weder Kaizo noch Item Abuse, noch aus unfairen Puzzles bestehen. Die Stellen, die man verkacken könnte, werde ich mit Reset Doors absichern und ich halte die Schwierigkeit so, dass man es auch ohne Saves spielen kann. Meine Meinung ist halt, dass man die Möglichkeit, Saves zu setzen auch nutzen sollte, damit das Ganze zwar fordernd ist, aber nicht frustrierend.
Mir persönlich wollen Hacks wie "Lunar Legends" überhaupt nicht gefallen, weil sie einfach null Schwierigkeit und Anspruch bieten. Naja, ist wohl ne Einstellungssache.

Zitat von Reggiamoto:
Okay. Die Screenshots machen einen relativ guten eindruck. Die haben akzeptables Leveldesign, und dennoch eine gewisse Atmosphäre. In Bild 11 musst du mir aber erklären, was der Schädel da oben soll, ist das ein fallender Spike mit anderen GFX? Das letzte Bild ist aber schon Kaizo. Das würde ich echt einfacher machen.


Der Spike war nur ein Test, hab vergessen, den raus zu nehmen, sorry. Aber was genau ist denn an dem letzten Bild Kaizo? Das spiel ich auch ohne Saves. Das einzige, was du tun musst, ist, im richtigen Moment die Wand hochzulaufen und den kurz bevor du die Spikes berührst, mit nem Spinjump auf die Ball 'n Chain zu jumpen. Sieht wirklich schwerer aus, als es ist, aber ich werde mir überlegen, wie ich das leichter mache.

Zitat von Reggiamoto:
Da hast du sie und ich hoffe, sie hat geholfen ^^


Jepp, dankeschön. Konstruktives Feedback hilft immer.
geschrieben am 24.10.2013 23:31:11 in Eeriedescent - erste Screenshots!
( Link )
Danke für eure Bewertungen.

Das Berglevel wollte ich eher leichter halten, weil ich oft relativ schwierige Sprünge und kleine Rätsel in meine Level einbaue aber (leider) auch simple Level für die erste Welt haben muss.
Dieses Level hat aber noch einen ziemlich "besonderen" Sprung, den ich noch nicht gezeigt habe. Ich setz mich nochmal an das Level ran und schau, was ich verbessern kann.

Die Screenshots bringen das aber natürlich auch nicht so gut rüber, wie ein Video. Werde demnächst auch ab und zu mal Videos vom Fortschritt posten, da man das Leveldesign so viel besser bewerten kann.
geschrieben am 09.11.2013 12:50:32 in Frage zum Brr porten (brr in txt einbinden)
( Link )
Hey,

das gleiche Problem hatte ich auch vor kurzem..
Das Problem ist, das keines der Tutorials intensiv darauf eingeht, wie man die Samples sozusagen abruft.

Ich bin kein Profi was das Thema angeht, aber ich probiere mal, das Ganze ein bisschen zu erklären..

Da du von einer blist redest, nehme ich an, du benutzt AddmusicM. Das macht das ganze sogar etwas einfacher, auch wenn die Qualität bei AddmusicK besser ist.

Angenommen deine blist sieht so aus:

20 samplex.brr
21 sampley.brr
22 samplez.brr

dann kommt an den anfang deiner txt: sXX (hier beliebige Zahl ab 5 (?) ) einsetzen
_20_21_22_FF

In die nächste Zeile kommen drei Hex Commands, um das Sample zu loaden und zu tunen.
Das sieht wie folgt aus:
$F3 $XX $YY
Zunächst der kommt der Command, um ein Sample zu loaden: $F3

Das $XX steht für die POSITION in blist.txt + 20, das bedeutet, würdest du Sample "sampley.brr" abrufen wollen, so müsstest du $21 nehmen. Es geht also NUR um die Stelle, an der das Sample steht. Das heißt, würde das erste Sample als "80" eingetragen worden sein, so müsstest du es trotzdem mit "$20" abrufen ( das erste gilt sozusagen als Wert "0"+20).

$YY steht für das Tuning, damit kenne ich mich nicht gut aus. Probier ein bisschen mit den Werten rum, das Ziel ist es, dass das Sample sich wie ein "C" anhört.

Also für Sample sampley.brr sähe das wie folgt aus:

s20
_20_21_22_FF

$F3 $21 $YY ( für YY Werte von Null bis circa 1F probieren.)

und dann ganz normale die Noten und der andere Kram.


Ich entschuldige mich im Vorraus, falls was falsch sein sollte. Ansonsten hoffe ich, dass ich dir ein bisschen helfen konnte, wenn du das Problem nicht schon selbst gelöst hast.
geschrieben am 09.11.2013 20:10:07 in Frage zum Brr porten (brr in txt einbinden)
( Link )
Also, die Channel Declarations "#0-#7" musst du auf jedenfall wie gewohnt setzen. Das Instrument aber auch.
Soweit ich weiß ist es irrelevant, welches @ Instrument du wählst, da du ja sowieso nicht die Default SMW Samples benutzt, sondern Custom Brr Samples. Also einfach die im vorherigen Post erwähnte AddmusicM Prozedur, die du auch richtig wiederholt hast, am Anfang des jeweiligen Channels setzen und eine Line darunter mit dem @x Vxx txx und so weiter normal fortfahren.

Gib bitte ne Rückmeldung, wenn das so geklappt hat.
geschrieben am 10.11.2013 0:35:13 in Frage zum Brr porten (brr in txt einbinden)
( Link )
Sehr gut, ich konnte jemandem helfen, obwohl ich selbst zu blöd bin, das richtige Tuning zu finden.

Es gibt nen Trick wegen der Größe! Öffne die brr Datei mit HxD Hex Editor oder Translhexion, whatever und geh auf "Edit -> Insert Bytes".
Bei Bytecount gibst du dann "2" ein, den Rest LÄSST du so. einfach bestätigen, abspeichern und neu Patchen mit AddmusicM.

Hoffe, das klappt.