Thwomp Bomb.. Thwomp Right: Shake-effekt

geschrieben am 27.03.2011 19:06:54
( Link )
Hey Leute, ich mal wieder.. und wie so oft, eine Sprite-Frage:

Ich habe mir von SMWC den Thwomp Bomb (es gibt zwei, habe beide versucht) heruntergeladen, aber irgendwie benutzen beide andere Grafiken wie der normale Thwomp.
Ich habe in die ASM Datei bei graphics routine geschaut aber die scheinen mit einem normalen Thwomp übereinzustimmen.

Ein Bomb Thwomp von beiden (ich glaube der von dahnamics, nicht der von Quick Quack .. oder so) benutzt einfach nur statt SP3 statt SP4.
Was muss ich umstellen?

Exits done: 42, Overworld: 80%

To do list: Castle #5... fast fertig... Danach gibts endlich die Demo
geschrieben am 27.03.2011 20:03:30
( Link )
Bei den Tilemap Werten $80 dazuzählen.
Code
TILE_MAP            dcb $0E,$0E,$2E,$2E,$48 

wird also zu
Code
TILE_MAP            dcb $8E,$8E,$AE,$AE,$C8 

Hoffe ich doch zumindest.
geschrieben am 12.04.2011 17:22:23
( Link )
Bump!
Habe bezüglich des Thwomp Bomb und Thwomp Right nochmals je eine Frage. Wie viele Fragen hat exit1337 dann insgesamt? *shot*


Thwomp Bomb:
Ich kann leider auf die Explosion des Thwomps spin-jumpen!! Wie kann ich das so ändern, dass die Explosion Mario immer schadet? (Kann man auf Bob-Omb-Explosionen spin-jumpen?? Glaube nicht..)

Thwomp Right:
Wenn er gegen die Wand knallt, gibt es keine "Erschütterung" wie bei normalen Thwomps. Das würde ich gerne ändern.

Exits done: 42, Overworld: 80%

To do list: Castle #5... fast fertig... Danach gibts endlich die Demo
geschrieben am 12.04.2011 19:25:28
( Link )
Man kann auf Explosionen Spinjumpen, wenn man richtig trifft. Liegt nicht am sprite.

Code
                    ;LDA #TIME_TO_SHAKE      ;shake ground
;STA $1887

;LDA #SOUND_EFFECT ;play sound effect
;STA $1DFC

Die Semikolons bei diesen 4 Zeilen entfernen.
geschrieben am 12.04.2011 19:32:00
( Link )
Schien völlig logisch, also hab ich es gemacht und gespeichert, dann reinserted.
Funktionierte dann aber nicht mehr.. "Thwomp_right didn't assemble correctly"

Exits done: 42, Overworld: 80%

To do list: Castle #5... fast fertig... Danach gibts endlich die Demo
geschrieben am 12.04.2011 20:12:47
( Link )
ist die explosion ein extra sprite? Wenn ja kann man das mit dem spinjump doch mit cfg editor ändern. Aber ich geh mal davon aus dass das kein extra sprite ist
I'm a Brony and I'm proud!



Hier gibt's nette 8bit Remixes, Klavierzeugs und Acapella: <!-- m --><a class="postlink" href="http://www.youtube.com/user/timmifutzelchen">http://www.youtube.com/user/timmifutzelchen</a><!-- m -->
geschrieben am 12.04.2011 20:25:13
( Link )
Zitat von exit1337:
Schien völlig logisch, also hab ich es gemacht und gespeichert, dann reinserted.
Funktionierte dann aber nicht mehr.. "Thwomp_right didn't assemble correctly"

Dann lass mal die Definitionen weg, vielleicht geht das.

Code
LDA #$18
STA $1887

LDA #$09
STA $1DFC
geschrieben am 13.04.2011 15:34:17
( Link )
Nope, auch nicht.

Exits done: 42, Overworld: 80%

To do list: Castle #5... fast fertig... Danach gibts endlich die Demo
geschrieben am 13.04.2011 16:05:57
( Link )
Dann zeigt er immer einen Fehler an? Und ohne geht's?

Poste mal dein temp.log.
geschrieben am 13.04.2011 19:22:19
( Link )
Das hier kommt, wenn ich RealLinks Methode nehme:

Code

65816 Tricks Assembler Version 1.11 (C)opyright 1994 1000 Miles [Tricks]
Internet: norman_yen@idream.tfbbs.wimsey.com, IRC: minus

Memory available: 2147483647
Starting address defined as $92EA05

Pass 1

Pass 2
Error in 90.1/71: Branch out of range

Pass 3
Error in 90.1/71: Branch out of range

Source code assembled.

Although the source code was assembled, the program may not run
properly due to errors detected during the assembling process.

[$92EA05-$92ECD1]
Lines=495
Statements=416
Symbols=73
Errors=1




Und das hier wenn ich WYE's Methode nehme:

Code

65816 Tricks Assembler Version 1.11 (C)opyright 1994 1000 Miles [Tricks]
Internet: norman_yen@idream.tfbbs.wimsey.com, IRC: minus

Memory available: 2147483647
Starting address defined as $92EA05

Pass 1

Pass 2
Error in 90.1/71: Branch out of range

Pass 3
Error in 90.1/71: Branch out of range

Source code assembled.

Although the source code was assembled, the program may not run
properly due to errors detected during the assembling process.

[$92EA05-$92ECD1]
Lines=495
Statements=416
Symbols=73
Errors=1


Wenn ich bei RealLinks Methode vorher die Semikolons lasse, funktionierts, hat aber dann keinen Knall-Effekt!

Edit:
Also in Temp steht bei beidem das Gleiche drin.

Exits done: 42, Overworld: 80%

To do list: Castle #5... fast fertig... Danach gibts endlich die Demo
geschrieben am 13.04.2011 20:27:33
( Link )
Branch out of range heißt das zwischen dem Branch zu viel Code steht. BEQ und die ganzen anderen branch opcodes(?) können nur über eine bestimmte Anzahl Bytes weiterleiten.
Pack oben unter diesem Block aus Semikolons in dem steht "sprite main code" folgendes:
Code
RETURNING:
JSR NewRETURNING

Dann gehst du runter zu
Code
RETURNING           LDA FREEZE_TIMER,x      ;return if it's not time to move the sprite
BNE RETURN2

und änderst das RETURNING in NewRETURNING um.
geschrieben am 13.04.2011 20:30:05
( Link )
EDIT: Okay, RealLink war schneller, aber da ich einen anderen Lösungsvorschlag anbiete...

Hm, okay, das heißt, der Code macht die Lücke zwischen Label und Sprungbefehl zu groß. Dann probier mal folgendes:

An besagter Stelle fügst du statt den vier Zeilen Code jetzt
Code
JSR Wumms

ein, und ganz am Ende der ASM-Datei dann
Code
Wumms:
LDA #$18
STA $1887

LDA #$09
STA $1DFC
RTS

.
geschrieben am 13.04.2011 21:31:29
( Link )
Funktioniert wunderbar. Habs mit WYE's Methode gemacht!
Danke!

Exits done: 42, Overworld: 80%

To do list: Castle #5... fast fertig... Danach gibts endlich die Demo