MMLL Development Diary

flash · 349825

Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #30 on: August 27, 2009, 10:08:16 am
These are not supported in Skale Tracker yet in that version I use, so I might move to another tracker for finalize it using these extended commands. The global volume was a quite too high in the Miner demo I got.

It would been nice to change volume directly as well using a seperate function, so volume can been controlled by a user example in a pause menu seperated for music and SFX...

Normally it only need to been started from contain position and let me doing which pattern that should been played on that position. The patterns in Miner module do also not fellow position directly and sometimes replay again for some patterns. That part works fine in the early miner demo.

« Last Edit: August 27, 2009, 10:09:19 am by spacefractal »

The Musician for the RetroBytes Portal Projects.


Offline sverx

  • RBP Member
  • IBM PC
  • *****
    • Posts: 516
  • "Ow!!! What's that ?!?!"
    • My NDS folder
Reply #31 on: August 27, 2009, 10:20:08 am
These are not supported in Skale Tracker yet in that version I use, so I might move to another tracker for finalize it using these extended commands. The global volume was a quite too high in the Miner demo I got.

I can suggest MilkyTracker... or maybe you just need to update your SkaleTracker to the latest version (sorry, I really don't know  :-X ).

It would been nice to change volume directly as well using a seperate function, so volume can been controlled by a user example in a pause menu seperated for music and SFX...

I totally agree, and that's on the development wish list already :) No deadline, btw...

Bye!




Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #32 on: August 27, 2009, 10:33:53 am
you can just use the same command like Gxx, just change it directly by the new function..... If the feature is added, then I have not a plan to use the Gxx command, so it would not conflict.

Im are also begin to do a simple version of An der schönen blauen Donau which also contain in the original sid. So I guess it should been in the game as well. Its sound very much a old mod now ;-D.
« Last Edit: August 27, 2009, 10:35:29 am by spacefractal »

The Musician for the RetroBytes Portal Projects.


Offline headkaze

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 7838
Reply #33 on: August 27, 2009, 11:19:23 am
Also just so there is no confusion I'm using MaxMod in TDG not libxm7. I think libxm7 is great but libnds uses MaxMod so that's why I'm using it. On the other hand libxm7 was the perfect solution for MMLL because it doesn't use libnds.



Offline sverx

  • RBP Member
  • IBM PC
  • *****
    • Posts: 516
  • "Ow!!! What's that ?!?!"
    • My NDS folder
Reply #34 on: August 27, 2009, 12:18:00 pm
Also just so there is no confusion I'm using MaxMod in TDG not libxm7. I think libxm7 is great but libnds uses MaxMod so that's why I'm using it. On the other hand libxm7 was the perfect solution for MMLL because it doesn't use libnds.

MaxMod is great, expecially if you need S3M/IT support or more than 16 audio channels. Anyway libXM7 works with libnds as well, using FIFO exactly like MaxMod does. Check the source example on my website (...and excuse my shameless self-promotion ;) )

Bye! :)




Offline sverx

  • RBP Member
  • IBM PC
  • *****
    • Posts: 516
  • "Ow!!! What's that ?!?!"
    • My NDS folder
Reply #35 on: August 27, 2009, 12:23:49 pm
you can just use the same command like Gxx, just change it directly by the new function...

That would be bad, because tunes use Gxx (and Hxy) to fade in/out and I should't disturb that. There will be a separate 'music' volume control... but I'm not working on that project actually, so you can't count on this feature been added soon, sorry.

Bye!




Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #36 on: August 27, 2009, 12:34:48 pm
I wont use Gxx extracly in this project, due these tunes I create does not need these at all. Normally I use use volume functions to do the fading (which is none in Miner tunes), so it would not break in this project.... Yes I know others tunes might do that.

The Musician for the RetroBytes Portal Projects.


Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #37 on: August 27, 2009, 08:57:10 pm
Another demo...

Well, you can now clear levels...

It is a start...

The game is slowed down, not sure if I prefer it faster?

Also, I have a strange problem, If I slow one level another may be faster for no real reason (ie. demo level 2)

I also have to add impassable conveyors. (these are needed on the Oric level 17 - level 1 here)

Oh, the bit at the bottom is for the story of the game - at some point.
« Last Edit: September 17, 2009, 07:19:26 am by Flash »

Coding for the love of it!


Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #38 on: August 27, 2009, 11:19:28 pm
I should not really post this here, but this is the original RetroGamer (Buy them all) article that spurred the conversion

(this will be deleted if requested by the Rev. etc)

Coding for the love of it!


Offline Lobo

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 3119
    • Spitoufs
Reply #39 on: August 30, 2009, 02:33:59 am
Didn't have time to test the latest version until now. I prefer the old speed (faster) much much much....much more.
This one feels very...dragging.   ;)
Other than that, what's the progress? I thought I said until Monday.



Offline headkaze

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 7838
Reply #40 on: August 30, 2009, 09:37:11 am
Maybe you could add powerups so you can go faster? And place them behind the character so people can decide to use them or not. The game is coming along really nicely though Flash. I have played a few games but really look forward to that per-pixel detection as it's really hard to judge things right now. I also think there should be per pixel detection on things like the plants but if it's not how it works in the original probably not worth doing.



Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #41 on: August 30, 2009, 10:35:26 am
The detection on the plants etc only detects the central 6 pixels (the original detected 8 pixels square - well the colour atribute for that char i believe), this is to make it easier because of the extra speed. Perhaps (after sprite per pixel) I may be able to do it if colmapedit only outputs pixel values for objects with a colmap value of 64 or greater? But.. this is quite a big hit on size for a pixel map for each level. Perhaps if I read the tile and use the bit pattern on the fly.. I will look into it mate.

Not sure about powerups, but... as you know, I was thinking of a "manic 'manic miner' mode" that uses a completely different control method that has inertia and acceleration. I will play with that when a few levels are done and the little tweaks are sorted. I am only spending around 1-2 hours a day on it, but hopefully have a bit more time tonight.

HK: Glad you like how it is going mate - means a lot to me. (thanks for the help with per-pixel ideas)
« Last Edit: August 30, 2009, 10:56:31 am by Flash »

Coding for the love of it!


Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #42 on: August 30, 2009, 10:54:22 am
Didn't have time to test the latest version until now. I prefer the old speed (faster) much much much....much more.
This one feels very...dragging.   ;)
Other than that, what's the progress? I thought I said until Monday.
I thought I said Tuesday?

Coding for the love of it!


Offline Sokurah

  • RBP Member
  • Cray-1 Super Computer
  • *****
    • Posts: 724
    • Tardis Remakes
Reply #43 on: August 30, 2009, 09:49:53 pm
Didn't have time to test the latest version until now. I prefer the old speed (faster) much much much....much more.
This one feels very...dragging.   ;)

I'm not sure where I stand on this one. After the first version this one does feel a bit slow'ish but on the other hand it's closer to the original games and I think the slower speed is better for the precise movement you need to be able to play it. Faster may be more fun (sometimes) but playing this version it found the speed was just right for planning and moving my way around the level.



Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #44 on: August 30, 2009, 09:53:33 pm
I am divided on this one also...

I like it faster, but... on later levels this may make them very hard (that is a good thing really LOL)..

Sokky: Just reallised how easy this would be to turn into Horace... <snigger> (I wouldn't)

But, I am thinking (not sure) of adding a manic mode with controls in the same fashion as Horace.. That could be fun, Manic Miner with acceleration etc..? Bit of a job to add, and also perhaps needing some level mods to support it (ie. enemy speed)... hmmm...

Coding for the love of it!


Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #45 on: August 30, 2009, 10:00:10 pm
Just spent the best part of 3 hours adding per-pixel detection to the game for sprites.

This turned out to be harder than I thought as the sprite flipping still has the sprite stored as data unflipped (obviously). So, I had to check the flipping of both Willie and the enemies first and use different routines based on their orientation.. Thank god I had not added vertical flipping also.. LOL

Perhaps I made it harder by creating the masks on the fly?

Well, this is the first time I have ever done this in ASM and I am sure someone will say how easy it is in C or something, but it was a major pain for me..

I am sure the code could be tighter, but it works.. and that is the main thing? Isn't it? LOL

Well, here is the code.. posted for the fun of it.. and perhaps someone will show a better way?

PS. Sokky, I did reply on the page back!

Code: [Select]
collisionMonster:

stmfd sp!, {r0-r10, lr}

@ first grab our x,y coord into r0,r1
@ then loop through all monsters (1-7)
@ and check boundries
@ if a boundry check is true, THEN do a per pixel check

ldr r0,=spriteX+128
ldr r0,[r0] @ player X
ldr r1,=spriteY+128
ldr r1,[r1] @ player y

mov r10,#65 @ monster number (65-71)

collisionMonsterCheckLoop:

ldr r2,=spriteActive
ldr r2,[r2, r10, lsl#2]
cmp r2,#0
beq colMonFail

ldr r2,=spriteX
ldr r2,[r2,r10,lsl#2]
ldr r3,=spriteY
ldr r3,[r3,r10,lsl#2]

@ r0,r1=willy x/y
@ r2,r3=monst x/y

@ first, if px+15<mx or px>mx+15, no possible collision
add r0,#15
cmp r0,r2
sub r0,#15
blt colMonFail
add r2,#15
cmp r0,r2
sub r2,#15
bgt colMonFail
@ next, if py+15<my or py>my+15, no possible collision
add r1,#15
cmp r1,r3
sub r1,#15
blt colMonFail
add r3,#15
cmp r1,r3
sub r3,#15
bgt colMonFail

bl pixelDetect

colMonFail:
add r10,#1
cmp r10,#72
bne collisionMonsterCheckLoop

ldmfd sp!, {r0-r10, pc}

@-----------------------------------------------

pixelDetect:

stmfd sp!, {r0-r10, lr}

@ clear cmap
mov r0,#0
ldr r1,=colMonMap
ldr r2,=576
bl dmaFillWords

@ r10= number of the monster you have collided with
@ we need to find what the sprite is ( we will also have to plot backwards for hflip=1)

ldr r0,=spriteObj
ldr r0,[r0,r10,lsl#2] @ r0= sprite object (0-max)

@ now get the pointer to the memory adress of the image (each sprite = 256 bytes)

ldr r1,=SPRITE_GFX_SUB
lsl r0,#8 @ image * 256
add r1,r0 @ r1 should = pointer to image (8*8 tl)
add r2,r1,#64 @ r2 = 8*8 tr
add r3,r2,#64 @ r3 = 8*8 bl
add r4,r3,#64 @ r4 = 8*8 br

ldr r9,=spriteHFlip
ldr r9,[r9,r10,lsl#2] @ sprite flip? 0=normal 1=reversed

cmp r9,#0
bleq maskNormal @ grab data and shove to centre of colMonMap
blne maskFlipped @ for normal and flipped sprites

bl displaySpriteMap

@ now we need to make your x/y 0-47 and alien is plotted in colMonMap at 16,16

ldr r0,=spriteX
ldr r11,[r0,r10,lsl#2] @ r11=monster X
ldr r0,=spriteY
ldr r12,[r0,r10,lsl#2] @ r12=monster Y

ldr r0,=spriteX+128
ldr r0,[r0] @ r0=your X

sub r11,#16 @ r2 is now a diff value
sub r0,r11 @ r0= x coord 0-47

ldr r1,=spriteY+128
ldr r1,[r1] @ r0=your Y

sub r12,#16
sub r1,r12 @ r1= y coord 0-47

@ r0,r1 = x/y coord of you 0-47, so all we need to do is check against colMonMap at the x/y coord created here
@ we need 2 checks, one for normal and one for flipped... GOD!!!

ldr r2,=spriteHFlip+128
ldr r2,[r2] @ r2 = flip status

cmp r2,#0
bleq pixelCheckNormal
blne pixelCheckFlipped

cmp r12,#1 @ r12 returned to say we have hit (0=false)
bleq initDeath

ldmfd sp!, {r0-r10, pc}

@--------------------------- Grab normal data

maskNormal:

stmfd sp!, {r0-r12, lr}

ldr r5,=colMonMap
add r5,#768+16
add r6,r5,#8
add r7,r5,#384
add r8,r7,#8

@ r1,r2,r3,r4 = 4 seqments of original sprite image
@ r5,r6,r7,r8 = 4 segments to store to

mov r0,#0 @ counter (0-63)
mov r10,#0 @ byte counter (0-7)
mNormalLoop:

ldrb r9,[r1,r0]
strb r9,[r5,r0]
ldrb r9,[r2,r0]
strb r9,[r6,r0]
ldrb r9,[r3,r0]
strb r9,[r7,r0]
ldrb r9,[r4,r0]
strb r9,[r8,r0]

add r10,#1
cmp r10,#8
moveq r10,#0
addeq r5,#40
addeq r6,#40
addeq r7,#40
addeq r8,#40

add r0,#1
cmp r0,#64
bne mNormalLoop

ldmfd sp!, {r0-r12, pc}

@--------------------------- Grab flipped data

maskFlipped:

stmfd sp!, {r0-r12, lr}

ldr r5,=colMonMap
add r5,#768+16
add r6,r5,#8
add r7,r5,#384
add r8,r7,#8

@ r1,r2,r3,r4 = 4 seqments of original sprite image
@ r5,r6,r7,r8 = 4 segments to store to
mov r0,#0 @ counter (0-63)

mov r10,#7 @ byte counter (7-0)
mFlipLoop:

ldrb r9,[r1,r0] @ need to read backwards?
strb r9,[r6,r10]
ldrb r9,[r2,r0]
strb r9,[r5,r10]
ldrb r9,[r3,r0]
strb r9,[r8,r10]
ldrb r9,[r4,r0]
strb r9,[r7,r10]

subs r10,#1
movmi r10,#7
addmi r5,#48
addmi r6,#48
addmi r7,#48
addmi r8,#48

add r0,#1
cmp r0,#64
bne mFlipLoop


ldmfd sp!, {r0-r12, pc}

@--------------------------
displaySpriteMap:

stmfd sp!, {r0-r10, lr}

ldr r0,=colMonMap
add r0,#768+16
mov r11,#0 @ x
mov r8,#0 @ y
mov r9,#1 @ digits
mov r7,#0 @ which display

mov r1,#0 @ counter (0-256)
dsmLoop:

ldrb r10,[r0,r1]

bl drawDigits

add r11,#1
cmp r11,#16
moveq r11,#0
addeq r8,#1
addeq r0,#32

add r1,#1
cmp r1,#256

bne dsmLoop

ldmfd sp!, {r0-r10, pc}

@--------------------------- check Normal

pixelCheckNormal:

stmfd sp!, {r0-r11, lr}

@ r0,r1 = position to start in the colMonData, convert to location
@ y*48+x

mov r2,#48
mul r1,r2 @ mul Y by 48
add r1,r0 @ add x
ldr r2,=colMonMap
add r1,r2 @ r1=colmap top left pixel
add r2,r1,#8 @ r2=colmap top right
add r3,r1,#384 @ r3=colmap bot left
add r4,r3,#8 @ r4=colmap bot right

ldr r11,=spriteObj+128
ldr r11,[r11] @ r11= object of sprite
ldr r5,=SPRITE_GFX_SUB
lsl r11,#8 @ image * 256
add r5,r11 @ r5 should = pointer to image (8*8 tl)
add r6,r5,#64 @ r6 = 8*8 tr
add r7,r6,#64 @ r7 = 8*8 bl
add r8,r7,#64 @ r8 = 8*8 br

@ ok, we need to loop through colmap and read the value if the players is not 0

mov r9,#0 @ counter 0-63
mov r10,#0 @ pixel counter 0-7

pCheckNLoop:

ldrb r11,[r5,r9] @ sprite top left 8*8
cmp r11,#0
beq pCheckN1 @ skip if set
ldrb r11,[r1,r9]
cmp r11,#0
bne pixelCheckNormalHit
pCheckN1:

ldrb r11,[r6,r9] @ sprite top left 8*8
cmp r11,#0
beq pCheckN2 @ skip if set
ldrb r11,[r2,r9]
cmp r11,#0
bne pixelCheckNormalHit
pCheckN2:

ldrb r11,[r7,r9] @ sprite top left 8*8
cmp r11,#0
beq pCheckN3 @ skip if set
ldrb r11,[r3,r9]
cmp r11,#0
bne pixelCheckNormalHit
pCheckN3:

ldrb r11,[r8,r9] @ sprite top left 8*8
cmp r11,#0
beq pCheckN4 @ skip if set
ldrb r11,[r4,r9]
cmp r11,#0
bne pixelCheckNormalHit
pCheckN4:

add r10,#1
cmp r10,#8
moveq r10,#0
addeq r1,#40
addeq r2,#40
addeq r3,#40
addeq r4,#40

add r9,#1
cmp r9,#64
bne pCheckNLoop

mov r12,#0

ldmfd sp!, {r0-r11, pc}

pixelCheckNormalHit:

mov r12,#1

ldmfd sp!, {r0-r11, pc}

@--------------------------- check Flipped

pixelCheckFlipped:

stmfd sp!, {r0-r11, lr}
@ r0,r1 = position to start in the colMonData, convert to location
@ y*48+x

mov r2,#48
mul r1,r2 @ mul Y by 48
add r1,r0 @ add x
ldr r2,=colMonMap
add r1,r2 @ r1=colmap top left pixel
add r2,r1,#8 @ r2=colmap top right
add r3,r1,#384 @ r3=colmap bot left
add r4,r3,#8 @ r4=colmap bot right

ldr r11,=spriteObj+128
ldr r11,[r11] @ r11= object of sprite
ldr r5,=SPRITE_GFX_SUB
lsl r11,#8 @ image * 256
add r5,r11 @ r5 should = pointer to image (8*8 tl)
add r6,r5,#64 @ r6 = 8*8 tr
add r7,r6,#64 @ r7 = 8*8 bl
add r8,r7,#64 @ r8 = 8*8 br

@ ok, we need to loop through colmap and read the value if the players is not 0

mov r9,#0 @ counter 0-63
mov r10,#7 @ pixel counter 0-7

pCheckFLoop:

ldrb r11,[r6,r10] @ sprite top left 8*8
cmp r11,#0
beq pCheckF1 @ skip if set
ldrb r11,[r1,r9]
cmp r11,#0
bne pixelCheckFlippedHit
pCheckF1:

ldrb r11,[r5,r10] @ sprite top left 8*8
cmp r11,#0
beq pCheckF2 @ skip if set
ldrb r11,[r2,r9]
cmp r11,#0
bne pixelCheckFlippedHit
pCheckF2:

ldrb r11,[r8,r10] @ sprite top left 8*8
cmp r11,#0
beq pCheckF3 @ skip if set
ldrb r11,[r3,r9]
cmp r11,#0
bne pixelCheckFlippedHit
pCheckF3:

ldrb r11,[r7,r10] @ sprite top left 8*8
cmp r11,#0
beq pCheckN4 @ skip if set
ldrb r11,[r4,r9]
cmp r11,#0
bne pixelCheckFlippedHit
pCheckF4:

subs r10,#1
movmi r10,#7
addmi r1,#40
addmi r2,#40
addmi r3,#40
addmi r4,#40
addmi r5,#8
addmi r6,#8
addmi r7,#8
addmi r8,#8                                        
add r9,#1
cmp r9,#64
bne pCheckFLoop

mov r12,#0

ldmfd sp!, {r0-r11, pc}

pixelCheckFlippedHit:

mov r12,#1

ldmfd sp!, {r0-r11, pc}

@--------------------------

.pool
.align
colMonMap:
.space 2304
« Last Edit: August 30, 2009, 10:03:11 pm by Flash »

Coding for the love of it!


Offline Sokurah

  • RBP Member
  • Cray-1 Super Computer
  • *****
    • Posts: 724
    • Tardis Remakes
Reply #46 on: August 30, 2009, 10:18:21 pm
Sokky: Just reallised how easy this would be to turn into Horace... <snigger> (I wouldn't)

I will comment with this only;

:D

Btw, the screenshot from Stigma I showed you the other day was from it running on a PC - I haven't received the iPhone yet. It may be months before I get it as my provider has trouble getting them. :(
Still, at least I'm not (too) distracted by it then. :)



Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #47 on: August 30, 2009, 10:23:25 pm
Loved the look of it mate..

Was gonna ring you, but had a bit too much wine to celebrate the detection LOL

(If you have anything to send to me - would love to see it?)

Coding for the love of it!


Offline Sokurah

  • RBP Member
  • Cray-1 Super Computer
  • *****
    • Posts: 724
    • Tardis Remakes
Reply #48 on: August 30, 2009, 10:37:57 pm
Of course, you'll be the first to know.

And I meant what I said the other day - it's your game and I don't want you to think I'm "reserving the right to remake all your games for myself" :D so while I'm having fun playing around with it I'd stop if you wanted me to. Damn, now I feel bad about that d*mn Horace game again. I need a kick in the butt. *sigh*

Anyway, what can I say - I'm from the Speccy camp so I love the monochrome look too, but I would modernize the graphics before thinking of releasing it.

Not much to show since that picture btw. Figured out the location of the exit and it now appears when all the orbs are collected. I've also worked a bit on the "level browser" that will give you a nice overview of the levels you've already beaten and allow you to load any of them if you want to play them again. I've also had an idea of how to control it but haven't coded it in yet (it's just using the arrowkeys right now but obviously that's no good for when it ends up on the iPhone.

I've only played about 10 levels on the original game so there's a lot of tiles I don't know who do and how they affect the player yet. It's far from finished (hey, perhaps I can tradmark that aspect as my slogan. :D
« Last Edit: August 30, 2009, 10:39:48 pm by Sokurah »



Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #49 on: August 30, 2009, 10:45:55 pm
Only 10 levels, ha ha, there are a few things to see yet - you know me by now LOL

I am just proud that you find my games playable after all this time...

I do have a couple of other games that were coded on the psion (1 unreleased) that would still make good conversions. One is a golf game, called 'Nasty Golf'. This is something that me and HK may well play with as yet.

Who knows?

Horace? What was that? LOL

Coding for the love of it!


Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #50 on: September 03, 2009, 08:22:23 pm
All music I create for this game would now been own xm, due I also change all instruments at once. Only if you want to create a jingle for each theme sharing instruments I would do that. There is some issues about level skipping the music might goo off or only plays some channels for some reason (did the music killed first?)

By now there is a space, light and dark versions of the very same song (just using deficient patches).

I also have send some feedback to Flash, about issues. The witch level, the top witch was painfull to avoid due timing and waiting required, but and after he moving the witch a little bit to right as start position, it help for me (elsewise the level was freaking hard and dying a lots). The dark tune actually works good on that level there. I hope this type of changes is actuelly ok for others as well. I want a great playable miner game.

Another thing, even some original (lost?) levels I doesn't like to die without first have moved miner, so you have a change to checkout level.  Hate to dying without reason and lost a life or 2 (even it did that on original level I heard, it a bit of design flaw I think), elsewise it its a very great level.

The Musician for the RetroBytes Portal Projects.


Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #51 on: September 03, 2009, 08:40:28 pm
The music that SF has done so far is GREAT!!! ;) Every level will not have a different tune, but a themed tune..

With regards to the levels. The first was too hard. This has been changed and I can explain why it was so hard. The Oric version of the game (on which the first level is based) used a different jump mechanic. In this version, when willy hit his head he fell at a slight angle in the direction he fell from. So, I have slightly modified the level to use the original mechanic.. is this best or should I implement the same fall code as the oric one and use it only on the oric levels? This is tricky as it makes it a bit of a mish-mash of game play.

I think slight modifications to levels to keep it the same throughout is perhaps best?

SF: the audio issue when skipping levels is me not flushing (ask the wife LOL) this will all be cleaned up when I add proper level completion.

Coding for the love of it!


Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #52 on: September 03, 2009, 09:01:49 pm
I doesn't like different jump mechanic on same game, and this might been why the level was a bit harder than its originally was think. Of course it should been close as possible to the original, but sometimes, you need a little mod or two, so it would been playable on this version too. Playable is for me the most important thing.

I even in Cave Heroes changed some minor things, like the HUD (due looked awul in some PC resolutions) and more important the H.E.R.O dosen't stop on a "tile" like on the original etc (was no reason to do that)...

Any plans to do original levels as well (like the 15 levels I did for Cave Heroes)?

I also really like the document on the bottom screen used as a little history.

« Last Edit: September 03, 2009, 09:03:58 pm by spacefractal »

The Musician for the RetroBytes Portal Projects.


Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #53 on: September 03, 2009, 09:15:20 pm
Not sure about doing the originals?

The original level 1 is in there (level 21 and I can soon add it back in for fun)

Coding for the love of it!


Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #54 on: September 03, 2009, 09:32:35 pm
I mean create original levels by your self and not just recreate some of the less known levels.

The Musician for the RetroBytes Portal Projects.


Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #55 on: September 03, 2009, 09:39:39 pm
Ah, create new levels?

Hmm....

I doubt it? Perhaps I will have a rethink when the 20 are done?

Coding for the love of it!


Offline Sokurah

  • RBP Member
  • Cray-1 Super Computer
  • *****
    • Posts: 724
    • Tardis Remakes
Reply #56 on: September 03, 2009, 11:04:18 pm
Okay, had a play on the latest version.

First thought was WOW!! - Lobo has really outdone himself with it. Beaut-ti-ful!
...almost too detailed though. Still, I'll point to this when I'm shooting an email with the word 'Horace' in the subject line off to him. ;)

Something is a bit off with the jumping. Most of the time it feels fine but sometimes it's like Willy isn't juming far enough. A very good example is the jump from the platform and up to the left, in the lower right hand side of screen 1. He is really struggling with that one block jump.

Screen 1 looks fantastic but is insanely hard. Took me a really long time to get past it.
Screen 2 is great. Plays really good. Pretty easy, as an early level should be.
Screen 3: see above.
Screen 4: This was the one with all the leaves blowing, right?...first thought was "Aargh...whu...whaa..." - SO much going on...and dead in 1½ second flat. Seems fun but only tried a few times. Bed time y'know. Is there a way of skipping levels and going directly to another level?

Really nice.



Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #57 on: September 03, 2009, 11:19:19 pm
Thanks for the comments mate,

You can skip to the next level with the R trigger.

Not sure what you mean aboult the jumping? If you skip levels, you can play the first original spectrum level. I used this to check the jumps (and have also compaired height and distance with the oric version). On spec level 1 at then end of the conveyor, you should only just be able to reach the upper of the two platforms on the left. Hmmm... I am a bit confused? You will have to explain more with pictures and diagrams and stuff with arrows and algebra.. ;)

Coding for the love of it!


Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #58 on: September 04, 2009, 05:26:46 am
I did have sometimes problems with that too. For me more problem was also the top witch. I would like you got the music flushed when you add more more levels.

Please note I have have a newer demo now with new levels and music came in.

Screen 1 got easier now after he moved the top witch to the rigth, since it was pretty hard for me too. Now I have no problems with that level. Yes graphics is neat here.
Screen 2 space music work much nicer now and have very much action music when drums starting :-D... and still only 6 channels used.
Screen 4 got fixed that problem now wouth the 1½ second dead. This was in the original too, but even HE diddent like that dead ever and changed it.

Need to test the new levels (glad you moved them after the first fore level, due whe have various demos) when I got home.

The Musician for the RetroBytes Portal Projects.


Offline sverx

  • RBP Member
  • IBM PC
  • *****
    • Posts: 516
  • "Ow!!! What's that ?!?!"
    • My NDS folder
Reply #59 on: September 04, 2009, 08:38:19 am
Can I join the betatest efforts? :)