News:

PlayBASIC2DLL V0.99 Revision I Commercial Edition released! - Convert PlayBASIC programs to super fast Machine Code. 

Main Menu

Clowns 'n' Balloons final released !!!

Started by micky4fun, April 24, 2009, 02:51:10 PM

Previous topic - Next topic

micky4fun

ok thats done , i raised it a little , as to high up did not look right i think , also looked a little odd stars and hearts going in to far under it ,

front splah did not look that much different , but left it in , just try some sounds now , then done i think

mick ;D

micky4fun

#106
Hi BlinkOk and all

well heres the latest , think it nigh on done now

http://www.zshare.net/download/60447227f193f40d/

please let me know your thoughts , was hard to try to find sounds that fitted in with game , not that i had a lot to choose from..

going to spend a little time now catching up on forum , then tinkering around with a few ideas for next game

ok ile say it again , because without this program and forum , well i would not be here now , i have had such great fun
i know its a simple game , but i must thank BlinkOK aka KAZOOWEE , without he's help and fantastic gfx , this game would not be as good as it is , ive been very lucky
also special thanks to U9 for all hes help to , great awning routeen , and Kevin for he's help all along , with some of my silly questions , but we are all not as cleaver as the master ,

ok sounds like a film speach , but i have no oscar , lol , but i have to say thanks to all of them as didnt think in a million years i could do anything like this 10 months ago
as you can tell im really pleased with what i can do with PlayBasic..

great stuff guys

mick ;D

OldNESJunkie

#107
Looks & plays well, didn't notice a bug, well, more of a graphical booboo. When you catch a star, bomb, etc, they don't go into the basket, but through the basket. I did notice the basket hits the bomb back into the air or at least starts going to hit before the bomb has touched it. Other than that OK. Almost forgot, need to add a way to flip the see-saw so you don't automatically lose a life if your clown on the right side of the screen, other clown flies to right side, you have no way to catch him. WOW, that was bad english.....

micky4fun

#108
Hi oldNESjunkie

Quotedidn't notice a bug, well, more of a graphical booboo. When you catch a star, bomb, etc, they don't go into the basket, but through the basket.
yes i raised the hand and it did not look right when collecting stars and hearts , so i have lowered it again now , as the stars and hearts where going into clowns head in the code and not green thing ,
it would have been hard for me to make it look correct for stars and hearts going into green basket thing , as it moves up and down as well and not a lot of depth to image to hide things behind it ,
QuoteI did notice the basket hits the bomb back into the air or at least starts going to hit before the bomb has touched it
i have lowered basket now and it looks ok i think , i ran code at 10fps and looks ok , when run at 60fps it does give the impression that bomb has not quite reached basket , but it has
Quoteneed to add a way to flip the see-saw so you don't automatically lose a life if your clown on the right side of the screen, other clown flies to right side, you have no way to catch him
yep i know this , im calling it the pinball effect , lose a ball on pinball when it goes far left or right , as it uses the mouse readings to move see-saw i wonder if there is a way of over scanning mouse readings so see-saw would go over screen a bit more both ways ,, but this would make game quite easy.. thats why i think is important to try and get hearts .. there would be another way to solve this by changing the on screen clowns bounaries..

thanks for you coments much appreciate
ps. will post a new code once any more coments and bugs have been reported

mick  ;D

BlinkOk

#109
nice work mick. bring on the next on. :)

ps: just a suggestion. if you learn this box2d plugin i reckon the sky will be the limit. you'll be able to make just about ANY 2d game.

kevin


micky4fun

#111
Hi Kevin ,,

ok thanks for that , i have now put this in the game , makes it easier now , so i up the level up a little plus the bonuses come out a little more often , to make it a little more confusing ,
a few more bugs found that ive addressed , ile give it another day or 2 for further bugs and then re-post game as final game..

Hi BlinkOk ,

The BOX2D looks very impressive , but to be honest it looks a little over my head , i think im very near my learning , well understanding limit now ,
i must now have a little muck around with the sprite collisions , the nextsprite being the main one .. as this did hold me back a little with this game..

i have a few other game ideas wether they work or play any good i dont know , but back very soon with another game i know ..

a million thanks again for all you graphics , unbelievable stuff , thank you very much..

mick ;D

micky4fun

#112
Hi Kevin

can you help me here , because it was the same problem i had with this game , i get sprite 0 out of range (1-1500) , i know sprites are 1 to 1500
but why does this program work ok when testing sprite number 1 as in your demo on spritehit , but i re-posistioned sprite 1 at 100,100 then used sprite 30 at mousex,mousey
when it test for collisions between all the other sprites 2-50 it returns them ok , but when it hits sprite 1 at 100,100 it comes up with the error , why is this , if you can explane it will help me a lot
as i cant to seem to suss out why

thanks mick :)

; ========================
; Part 1 - Create an image
; ========================
 
 Cls RGB(0,0,255)
 GetImage 1,0,0,32,32
 
 Cls RGB(0,255,00)
 GetImage 2,0,0,32,32
 
; =============================
; Part 2- Create some sprites
; =============================
 
; Create Sprite 1 and assign it image 1
 CreateSprite 1
 SpriteImage 1,1
 CenterSpriteHandle 1
 
; Set Sprite #1's collision Class to %0001 (1 in decimal)
 SpriteCollisionClass 1,%0010
 
 
; Create a bunch fo sprites to check collision against
 For Sprites=2 To 50
   
    CreateSprite Sprites
    SpriteImage Sprites,2
    x=Rnd(GetScreenWidth()-32)
    y=Rnd(GetScreenHeight()-32)
    PositionSprite sprites,x,y
   
  ; Set Sprites Collision Class to %0010  (2 in decimal)
    SpriteCollisionClass Sprites,%0010
   
 Next
 
 
 
; =============================
; Part 3- The Main Loop
; =============================
 
; Start a DO/Loop
 Do
   
  ; Clear the screen
    Cls RGB(0,0,0)
   
  ; Display a message
    Print "Checking for Collisions"
   
  ; Position the Sprite 1 at the mouses position
    PositionSprite 30,MouseX(),MouseY()
    PositionSprite 1,100,100
  ; Check if sprite #1 hit another sprite
  ; of this sprite class
    ThisSprite=SpriteHit(30,GetFirstSprite(),%0010)
   
  ; If there was impact, then we loop through and
  ; find any other sprites we might have hit also
    While ThisSprite>0
       Print "Hit Sprite:"+Str$(ThisSprite)
       
     ; Check if this sprite hit another sprite ?
    NextSprite=GetNextSprite(ThisSprite)
    ThisSprite=SpriteHit(30,NextSprite,%0010)
 EndWhile
 
; Draw All of the sprites
 DrawAllSprites
 
; Draw the screen
 Sync
 
; Loop back to the DO statement
 Loop



ahh think i have suss it out , i have added a few extra lines of code below , is this the correct way of doing this ?

; ========================
; Part 1 - Create an image
; ========================
 
 Cls RGB(0,0,255)
 GetImage 1,0,0,32,32
 
 Cls RGB(0,255,00)
 GetImage 2,0,0,32,32
 
; =============================
; Part 2- Create some sprites
; =============================
 
; Create Sprite 1 and assign it image 1
 CreateSprite 1
 SpriteImage 1,1
 CenterSpriteHandle 1
 
; Set Sprite #1's collision Class to %0001 (1 in decimal)
 SpriteCollisionClass 1,%0010
 
 
; Create a bunch fo sprites to check collision against
 For Sprites=2 To 50
   
    CreateSprite Sprites
    SpriteImage Sprites,2
    x=Rnd(GetScreenWidth()-32)
    y=Rnd(GetScreenHeight()-32)
    PositionSprite sprites,x,y
   
  ; Set Sprites Collision Class to %0010  (2 in decimal)
    SpriteCollisionClass Sprites,%0010
   
 Next
 
 
 
; =============================
; Part 3- The Main Loop
; =============================
 
; Start a DO/Loop
 Do
   
  ; Clear the screen
    Cls RGB(0,0,0)
   
  ; Display a message
    Print "Checking for Collisions"
   
  ; Position the Sprite 1 at the mouses position
    PositionSprite 30,MouseX(),MouseY()
    PositionSprite 1,100,100
  ; Check if sprite #1 hit another sprite
  ; of this sprite class
    ThisSprite=SpriteHit(30,GetFirstSprite(),%0010)
   
  ; If there was impact, then we loop through and
  ; find any other sprites we might have hit also
    While thissprite>0
       Print "Hit Sprite:"+Str$(ThisSprite)
       
     ; Check if this sprite hit another sprite ?
    NextSprite=GetNextSprite(ThisSprite)
    if nextsprite>0
    ThisSprite=SpriteHit(30,NextSprite,%0010)
    endif
    if nextsprite=0 then thissprite=0
   
 EndWhile
 
; Draw All of the sprites
 DrawAllSprites
 
; Draw the screen
 Sync
 
; Loop back to the DO statement
 Loop


thanks
mick ;D

ps  amazing i looked at code for a hour could not suss it out , but soon as i posted question , 2 seconds later , hey presto

kevin

Quote
when it test for collisions between all the other sprites 2-50 it returns them ok , but when it hits sprite 1 at 100,100 it comes up with the error , why is this , if you can explain it will help me a lot
as i cant to seem to suss out why

  That example is out of date in 1.63 and above revisions.  Sprites (and all media are stored in a linked list),  so when we traverse through the set  we get the sprite at the head of list (the first sprite) whatever it happens to be, Then  move through the set via the links between them (GetNextSprite).

  It's important to understand that the list order is not based on the sprites media index,  rather it'll be in the order that the sprites we're created.    So the sprites created first, will be last in the list and the most recently created sprite will be at the head of the list (the first sprite)

  The above errors on sprites #1, because sprite #1 was created first and is therefore the last sprite in the linked list.  When we use the GetNextSprite() function on the last sprite in the list it'll return a null (or -1) index, to signify we're at the end of the list.    This is what trips the error, since we're passing an invalid sprite index into SpriteHit().    Older versions of PB ignore this error, in fact it never used to check if the sprites existed.  Which could create all sorts of fun.

   As for is this is the 'correct' approach, there isn't one..  Although SpriteHit is built to help run batch collisions against various sprite classes, not just one.   

micky4fun

Hi Kevin ,,

Thanks , yes ive got to grips with it now , seems very easy now i understand whats happening , but at the time was frustrating , making mistakes takes up a lot of time trying to see what you are doing wrong , think you cant see the errors as you get caught up in the program , takes someone outside the program to see the mistake ,

ok i now going to put this into the game as i wanted to do in the first place , in the bonus items coming down , this will make more stars etc , but will leave the balloon collisions as they are otherwise you will clear a sheet in seconds..

thanks again Kevin

mick ;D


micky4fun

#115
http://www.zshare.net/download/605775835e2c2f8e/

hi all ,

above link to final version of game , theres a small cheat in the game i have left in on purpose as most games have a cheat

only 2 lives to start now as its a lot easier now with see-saw going to both extremes of screen , 50000 is a typical score

have fun ..

ok lets get going on another game..

mick ;D

kevin


Quote
ok lets get going on another game..

Well, before you do that, get some server space and throw up home page.. Just people can see all your games.



micky4fun

Hi Kevin

Quoteget some server space and throw up home page..
dont know a lot about home pages , as something im not really into at all
so a couple of questions ,
1.can i use microsoft front page to do this ?
2.where can i get sever space from or is it aviseable to use my own service provider as my homepage?

thanks

mick ;D

kevin


Quote1.can i use microsoft front page to do this ?

yes, and billion other tools..


Quote2.where can i get sever space from or is it aviseable to use my own service provider as my homepage?

  No don't use ISP (what happens if you changes ISP ?),  get a 3rd party WebHost ..  For example google Free Web HOsts...  ga-zillions  of them..




micky4fun

#119
Ok Kevin ,

thanks , yeh thanks for stopping me just as i starting a new game , haha
ok ile look into them

mick ;D