Showing posts with label flashpunk. Show all posts
Showing posts with label flashpunk. Show all posts

Monday, February 11, 2013

Gravity duck tribute - first build

0 commenti
You can find my last game here

It's a duck, that inverse gravity, you know..
Disclaimer: I'm not original creator of Gravity Duck concept, you can find original here, purpose of this test is make a tribute to a great puzzle platform game!

So let's begin: use arrows to move duck and X to inverse gravity

Why develop this game? Because I love platformers and puzzle games and Gravity Duck is a perfect example of both. As indie developer it's a good exercise: develop my graphical (yeah, even animations!), level design and programming skills is awesome!

Duck loves eggs, you know...

So let me know what do you think and remember this is just a test build, not final game!

Features:
  • an awesome puzzle platfomer game involving change of gravity,
  • 15 levels of fun!
  • enemies and strange devices.. you should soon explore new surfaces to run,
  •  a beta build, so you can give me feeedback!
Play it here!


Thursday, December 13, 2012

FlashPunk 2 announced

0 commenti
a recent photo of Chevray, flashpunk creator


Flashpunk2 announcement!! Feature list is awesome and will be something like a "game studio" than a game library:

 Checked box. Stage3D-accelerated 2D graphics (via Starling)
 Checked box. Rigid body physics out of the box (via Nape)
 Checked box. Component-based architecture (design by component/inheritance is your choice!)
 Checked box. Easily extend Worlds/Entities/Components to add functionality (no privates)
 Checked box. Depth-sorted rendering & camera view that can rotate/zoom
 Checked box. Flexible asset & texture atlas loading (use embedded, dynamic, or external assets)
 Checked box. Rendering components (Images/Animations/Tiles/Text/Particles/etc.)
 Checked box. Physics components (RigidBody/Circles/Boxes/Polygons/etc.)
 Checked box. Timing components (Invoker/Scheduler/Tweens/etc.)
 Checked box. Tagging & grouping system to easily manage Entity collisions/interactions/querying/etc.
 Checked box. Comprehensive global utility classes for retrieving assets, object pooling, math functions, colors, saving/loading data, easing, managing input, handling filepaths, getting/setting/seeding random numbers, operating on strings, and tracking time


Most innovating topic is awesome component-based architecture (like in Artemis? we'll see, is a big topic) and camera view that can rotate and zoom!




Wednesday, September 26, 2012

Dna wars

0 commenti

Dna wars is more than a simple Ludum Dare entry. Made in only 48 hours with Flashpunk is a good strategic/puzzle game, where you have to destroy mutations. Gathering resources, planning your expansion carefully and link every part of your cell is crucial parte of your work.

My suggestion is.. play it now!

Bonus.. source code provided!!

Wednesday, August 29, 2012

Bot-Volution

0 commenti
Bot-Volution is a game made in 72hours by me and NickFla1.



Play it now!  and rate it on Ludum Dare 24 page

I will put online a proper post-mortem for this project for now what can I say is this. We made it using Flashpunk 1.4, Ogmo editor, all graphics are made by us and char spritesheet and enemy spritesheet are drawn by me.

Thanks for your playing !


Wednesday, May 30, 2012

LudumDare and me

0 commenti
Ludum dare is an international competition to make in 48 hours a game and I've partecipated with four game so far (you can play it all using link here on blog!):
And it's fun to make a point about my partecipation on Ludum Dare ( points are from 1 to 5):

#LD19 - Random LD19 #LD20 - S.H.T.G.H #LD21 - Escape in 60 seconds #LD23 - Childhood toys
Overall 2.55 2.18 2.75 2.82
Community 3.08 2.67 3.06 -
Coolness
6%
6% 13% 100%
Audio 2.39 1.33 2.00 1.96
Theme 2.95 1.86 3.18 2.42
Innovation 3.35 2.50 2.21 2.13
Humor 1.55 1.36 1.48 2.00
Fun 2.10 1.86 2.67 2.66
Graphics 1.50 2.83 2.11 2.61
Mood - - - 3.11


From numbers to words

An important lession learned from this number is that my overall score is increasing, like my coolness (just play enough games from other users). Audio and innovation could be together in a game and I can match theme and fun together. I'm not an artist, so my graphics is always same. I'm not sure about humor, because childhood toys has nothing about humor.. I don't know!
About overall score again, my target could be 3.00 for next Ludum Dare, I just need to concetrate in polish my gme on audio side and with some new gameplay.

Take motivation from numbers

One important lesson I've learned from last LD is that to build a game in 48 hours you need a decent framework (Flashpunk is best for me, 4/4 of my entry are made with it) a "vision" of your work and solid gameplay in place.

Sunday, May 13, 2012

Childhood toys - post mortem

0 commenti
click to play

Childhood toys is just an experiment, not a full game. Made in 48 hours for Ludum Dare 23, an international gaming challenge to complete a game in 48hours and fit a theme, this time "Tiny world".
After playing some great platformer (like Company of myself) and dedicated too much time on Java programming, I've decided to look back in my personal gaming programming path and try again with Flash and in particular, Flashpunk.

I've wrote before about flashpunk and made some games with it (Escape in 60 seconds, S.H.T.G.T.H, RandomLD19, Airheat and Zombie Employee) so I'm able to do a little game with it. This time I've decided to build a platformer, because there is a nice "expansion" of flashpunk: Advanced Platform Engine.APE is awesome because with some work already done let you concentrate on main part of your game: game itself.

a nice example of level design with paint
With "Tiny world" in mind and APE as tool, what kind of game do for LD23? I've decided to tell a brief story of a boy and his little world.
I've realized soon without a sketch of my level/levels I cannot do anything so I've decided to open up paint (yes, microsoft paint)  and have 9 zones: in each a toy to collect and some obstacles to jump around.

Yes, goldrake is in my game too

 Because I'm also in love with metroid and castelvania and a linear level design could be boring, I've decided to have a double jump power up, a teleporter and switchs to turn on teleporters, spikes and jump again.
Add some text and you have Childhood toys. For text I didn't spent too much time: just wrote it and see on screen. As I said before, story is written in my mind before starting working on game too: collecting some toys, main character find some memories of his past.


What went right
- APE, right tool to do the job,
- Gimp, perfect tool to have a little animation in no time, some texture for my blocks and so on,
- Ogmo editor,  for level design is perfect: works well, nice integration with Flashpunk
- twitter: follow game updates on #LD48 is fun and help to keep motivated

Switch is on


What went wrong
- from first comments, game could be frustrating after first teleporter, because you have to do a double jump in mid-air to reach a platform
- graphics is not so coold: I've planned to add a light effect, because all game is a kind of nightmare for a boy, but have no time for this
- flashdevelop: I didn't setup it correctly so debug wasn't working. So waste of time.. argh!


Conclusion
A nice ludum dare for me, mainly because I've completed a little game and tell a story about a boy.



Tuesday, August 23, 2011

Escape in 60 seconds, postmortem

0 commenti
Last weekend I've done little nice game (IMHO), Escape in 60 seconds for LudumDare21.
You can play it here and source code is here (License is: make anything you want with it!) and my ludumDare journal is here.

The story

When I think of Ludum Dare i know that there are 48hours, a good amount of time to make a little, limited-scope game... but I have a life and I want to live it :D
So my time is limited. Knowing this right choice was to find a little game with simple mechanics that match the theme. I've voted Stealth and related themes for all voting round and declared use of Flashpunk, punk.ui and some sort of lighting.
I've learned from previous Ludum Dare mistake so I was prepared in some sort of crappy-paint graphics made by myself, but I don't care because most rewarding thing in LD is the experience itself, not final product. I love the stream of ideas, posts, tweets and all this energy that spread over internet reaching some cool developer (like notch and kevglass): learn from others is a great and follow their attempts is cool too.
Anyway after reading the chosen theme "Escape", Saturday morning after 2 hours I've found a direction: some sort of rougelike/puzzle game with simple mechanics: player just run, avoid enemies, but if he need fight it and cure with a potion, here my first update.
Where come from this idea? I don't know. I thought about a flash rougelike before and have some unfinished demo on my hard disk, but with a different mechanics (enemy try to kill you, in this game they simple move randomly choosing a direction), maybe some inspiration come from Desktop Dungeon too.

I would spend some words about Flashpunk: build an anyone-accessible game in 2 hours is amazing and only using as reference flashpunk basic tutorial. With nothing spectacular here: grid movements, few sprites and two new features of flashpunk that I've discovered (I'm not a flashpunk master :P):

  1. GraphicList: useful to have one image as sprite for player/enemies and one for entity health status I haven't found a decent way to remove from a GraphicList an image to update health status, so I removed it all and add again bad coding here!

  2. Entity.moveBy: Flashpunk is incredible for this features. The problem: move entity in a given direction, but stop when collide with a given type (for example Wall). Usually my crappy code was:

Entity ent = collide("wall",x,y);
if (ent==null){
// 32 is my block size
x += 32;
y += 32;
}

My eye fall on a function on Entity class.. moveBy, just see code in action here: it's too easy to use and you can pass a list of types to check collision. If there is a collision, no move, here more info.

Adding monsters was easy because I've refactored a bit first 2 hour version of the game adding Enemy class and extending with various monsters (for example Spider). Now I think that could be better have one Enemy class only with a different type/sprite on constructor, than 4 monsters, dammit!
A nice pattern I've learned from flashpunk forum is having a Global class with static methods and variables, here's mine. Using this little trick your code is more clean and adding "general" stuff in one class help in this kind of compo: adding variables, sound stuff and embedding graphics help in keep other classes. I insist on this topic because in a compo like Ludum Dare get lost on your own code could be a risk you have in mind!

I quit after 6 hours, because after afternoon I went out with my girlfriend and some friends and play minigolf (quite fun, but don't say to anyone).

Second day's morning was dedicated to define levels with Ogmo: this editor is perfect for LD because you have to define first your level "template" (.oep file, you can find it here) and then make levels. It's powerful (not so powerful as Tiled but easy and fast to use. As you can see on oep file, I've decided to have small levels (480x320 is my desired resolution) to force player in a small space and put few enemies moving around with fast-run mechanics in mind. I thought were better to have all entities on screen as object in game, with no ground-layer: everything is 32x32 pixels so it's easier to handle and debug.
Level design was fun because with small resolution what I've to do is:
  1. add walls,
  2. add starting point,
  3. add ends points,
  4. addenemies
Quite easy and fun.. 10 levels made in one hour or so on!

After playing a bit I realize that I need some other game element: first Pit and then glass.
Why this addition? Because I want to force player in certain directions in some levels without using always walls (and use of istant-kill pits is right choice) and glass because I want to force enemies to stay in certain areas to break levels in smaller areas where player can think-run-think fast (Glass can be used as no-monster tile, if you play it). My hope was to find a balance in levels between find the right path, run, avoid monsters, go to save glass and fight occasionally.
After some beta testing of my girlfriend I thought to have found the right balance: 10 levels are enough, 60 seconds too and levels are never hard, you have always to keep in movements!

Another addition was the menu with some instructions (thanks punk.ui!), win/lose conditions, time/move trackings (all into GameWorld class) and some sort of ui (all done with Gimp)

Let's talk about sfx and graphics. After levels design and ui, I spend two hours in the effort to make my graphics better. I've discovered new ways to use Gimp as pixel editor, but for basic sprite design I'm stuck on Paint and this is bad. I need some decent pixel editor for future compos. Anyway, I'm happy with wall tile with some dirty pixels and shadows :D
Sfx was all matter of beautiful as3sfxr just use it and in minutes I've found all sfx I needed! I wasn't sure to have a decent result with music so I simply didn't add it :D

After playing a bit my game and found that is possible to finish it, I thought about distribution. First choice was obviously Kongregate because have a simple api for highscore and this game is perfect for highscore, so put few lines in it and the game was ready: upload process on Kongregate was also simple and fast (they love flash game!) and my game is really lighter (160kb!).. perfect!

In the meanwhile ludumdare website go down and I just enjoy some random tweets (nice resource for information on other people game progress and ideas!!) .. but for few minutes. So I was one of the first have submitted game :D

What went right

  • Uses of Flashpunk: my experience with this library (S.H.T.G.H. , RandomLD19 , Airheat and Zombie Employee ) is enough to have simple games in few hours! Forums and documentation is enough too and I could add more effects and find solutions in no time (and there are some other flashpunker on LD21)
  • Overall idea: I've found a fun idea in no time, yeah!
  • Simple gameplay: instead follow the difficult path of find a new kind of gameplay in 48h I decided before compo starts to have a simple game with simple mechanics and this is the way. Innovate in few hours require all the time and more important more experience in various games
  • Level design: I could add more gameplay elements, sure, but I love simplicity of this idea.. and power of make levels in minutes, test it, get errors, fix it, go to next levels!

What went wrong

  • graphics: I'm not ready for doing anything. I must decide to spend some time on pixel art to make at least one or two decent spites with animations!
  • music: I need to put some effort on this too.. lack of music (mutable of cours) ia always a mistake on my games :(
  • gameplay: oh yes, I'm happy with this kind of gameplay but some my decisions can't happy everyone. I thought about a stealth device to get unnoticed to monsters or a speed bonus or a better move mechanics, like move from (0,0) to (32,32) using a Tween l many ideas that need to be explored to keep game fun

Conclusion

I will not win, for sure, but enjoyed the overall experience: like in this game, Ludum Dare is a run against me, my limits and time. If you want to join to this kind of compo, you MUST decide first your scope and tecnology, for sure, but also find a simple way to complete your game. I mean: have time to level design, decide what kind of gameplay is right for your game and all of this no-programming stuff you have to do.
At the next LD22 (maybe with a Platformer? Who knows!)

Thanks for reading!

Sunday, August 21, 2011

Escape in 60 seconds

0 commenti

Ludum Dare 21 (theme "Escape!") is in progress right now and I've just finished my little new game: Escape In 60 seconds! (here my entry)
Games tell a story about a little hero that need to escape from a dungeon full of monsters before a bomb explode in 60 seconds.

Play it now on Kongregate!


For developers, I'll write a postmortem soon, source code is on github!

Wednesday, August 10, 2011

FPBehaviors

0 commenti
FPBehaviors is a behavior-based component system for Flashpunk, something anyone really want for their games, but no-one cn afford to do.
Idea is simple, but powerful: don't write same code all the time. In this library developers can found some really useful behaviours, for example like FourWayBehavior: given an Entity (something in flashpunk developer can use to match active/inactive objects in game) this behavior let player to control it using arrows keys.
There are another behavior and tests too, so no excuses, just try it ! (it's open source, of course!)