A programmer who makes games.
About Daniel X. Moore
Ludum Dare 26
Ludum Dare 23
Ludum Dare 22
Ludum Dare 21
Ludum Dare 20
Ludum Dare 19
October Challenge 2010
Daniel X. Moore's Trophies
Meow Meow! Use Of Kittens Despite The Theme Award
Awarded by bentosmile on May 2, 2011
Daniel X. Moore's Archive
Super brief post mortem:
- Time. I didn’t clear my weekend and had non-game programming events taking up most of my schedule
- Theme. The theme ‘Alone’ didn’t generate interesting constraints for me.
- Game is mediocre
I’ll be using PixieEngine (it’s finally getting good now) for everything except music, and probably Milky Tracker for music.
I’ve recently released an extended version of my LD entry SurfN-2-Sur5. It adds practically no new features, but inside it has tons of comments and details on how I actually made the game. The game is made in PixieEngine, an online IDE for creating games, designed specifically for rapid prototyping (ideal for events like Ludum Dare). So if you’re interested check it out and don’t hesitate to ask if you have any questions.
The scope of the game is very small, but that enabled me to finish something playable for the competition. It should be pretty easy to follow and I think that by reading other peoples code we can all learn a little.
Thank’s to PixieEngine’s one-click export feature I was able to publish SurfN-2-Sur5 to the Chrome Web store in minutes, just needed to upload the zip file and add screenshots. It’s as easy as filling in the LD competition entry page.
Currently the version in the store is exactly the same as the LD competition version, but in time it will improve.
I am the creator of PixieEngine, so I may be biased in favor of it, but I thought that it’s worth sharing. And while we’re on the topic, I also love that when I’m building my game in PixieEngine it’s already on the web, so there’s no extra packaging or upload step required, just click “Publish” and everyone has access to the latest version.
Did I mention that it is free? And that it runs on OSX, Windows and Linux? And that you can always export/download your game at any time? But wait! There’s more…! Actually, that’s most of it.
So please, check out PixieEngine for all your game development needs and give feedback with any questions or concerns. You can even start by messing around with the SurfN-2-Sur5 source, though the code quality isn’t super high since it was made for the competition.
Here’s the link to my final LD entry: SurfN-2-Sur5
Some helpful tips to get started:
- When starting out you’re falling from the sky, wait until you hit the water to turn.
- In order to have a successful landing you need to be facing in the direction you’re moving.
- Write down your longest time/distance and try to beat it (if you’re into that).
Arrow keys Move
Space or Enter restarts
I made the game in PixieEngine, the tools are getting better and these games keep getting easier and easier to make.
I finished the background music earlier using Aviary this afternoon and I think it’s pretty rad. Aviary was tough to get the hang of and was rough with importing loops into the larger song arranger, but once I got the basics down it was just a matter of toughing it out.
Here’s the link to the audio:
I was pretty proud of drawing the little pixel surfer guy. Originally I wanted him to have twice as many rotations as well as subtle animations, but you know combinatorics…
After hearing the theme I thought for a while about different kinds of escape games: escaping a prison, escaping a dull day through reading books, escaping reality… but in the end I decided on a simple falling out of a plane and then surfing style escape called SurfN-2-Sur5. I made a rough prototype of a similar game about a year ago, but never really did anything with it. Using what I learned from the surfing gameplay and adding the escape theme should lead to an interesting game.
I was in for the last two so I don’t want to break my streak. I’ll be using PixieEngine, as always, and testing out the new XNA export feature.
Dig some holes, plant some crops, and turn this dirt farm around!
Completed Game will include
House Area, Farm Area, Store
6 Crops (2 per season)
Hoeing, watering, harvesting
Using PixieEngine to create.
In the Beginning
Going into the competition I didn’t really have any direction. After hearing the theme and looking at the kitten meme and the Zelda text I figured I would start off with an elf kid going into a cave and receiving a kitten rather than a weapon, but other that that I had no idea for gameplay or anything. I knew for tools I would use CoffeeScript and the PixieEngine (I have been creating PixieEngine for exactly these kinds of competitions and wanted to put it to the test). If you’re looking to try out a new development environment for easy publication to the web I recommend checking it out. It’s free! It’s still a bit rough around the edges but with your feedback we can make it better.
It was quick to get the initial level and cave in but I wasn’t sure what direction to take the game. I spent several hours on animating the sprites, drawing the kitten from reference of the meme. Art isn’t my strongest suit but spending time on it gave me time to think and I definitely could feel myself improving. After sleeping on the theme the first night I knew that I didn’t want to just have the cat act as a weapon, because that would be pretty plain and boring. I decided that it would be cool if you had to take the cat around to different dungeons and work together to solve puzzles. I had the idea to make the water impassible for the kitten around this time so that the player and kitten would need to work together to access different areas. I also spent some time getting the mew to sound right in SFXR.
I really wanted to focus on the emotional attachment to the kitten and to make it feel like you were helping each other. It is for this reason that the initial cave the kitten goes into narrows symbolizing a feeling of cramped/claustrophobic danger. This culminates when the kitten becomes trapped in a waterfall and the player is required to submit to entering the water and becoming helpless. Then when the kitten floats back out down the stream the player is given control of the elf character and must rescue the helpless kitten. The relevant psychology is that we develop good feelings towards those who we do favors for (similar to Portal’s Weighted Companion Cube). These locations, actions, and even the sound of the mew, were all designed towards the goal of creating an emotional bond.
The bombs were an ok addition, but didn’t have very much depth. It seemed like near the end of the game (especially at the ending) there was plenty of room to create a wide variety of levels and puzzles, but I had just solidified the core mechanic and core emotional experiences and the clock was still ticking down.
My brother was in town and late Saturday or early Sunday, in the course of viewing the game he came up with the idea for the ending. I spent several hours Sunday grossly copy/pasting and hacking the functionality in. This cost me a bit in terms of level design. An additional cost of adding screens was due to some excessive manual steps (like hand coding doors). In the end there were maybe 1.5 dungeons and 1.5 puzzles, but people really enjoyed the ending so I think it was a decent trade-off. As the level editor and game object tools improve it should become easier to add more levels with fewer manual steps.
All in all it went pretty well. I didn’t stay up too late or stress out much, but the time limitations were significant. Next time I should make a stronger effort to discover a fun core mechanic sooner to leave more time for level design. The risk of this is that I may lock down the mechanic too soon, before it is actually fun, but I think that’s the main conflict throughout game design.
The pixel editor, level editor, and sound editor integration in PixieEngine really helped me get a playable prototype up quickly. I was able to get a guy on the screen and moving around in minutes.
The API for many of the core components was simple to use. If I wanted to play a sound I would create it in the embedded SFXR, then call it by adding
Sound.play("mew") at the appropriate place in the code. Similarly for loading sprites.
The engine Object Query Language was great for hacking together quick functionality
engine.find "Cat" all came in handy.
Experience with CoffeeScript and the PixieEngine system was also a big plus. I knew what the strengths and weaknesses of the system were and was familiar with the workarounds (like using git integration to copy files to get around the missing “Save As” feature).
Publishing to the web was immediate and 100% hassle free because the entire engine is online to begin with. I didn’t have to spend anytime thinking about packaging or distribution.
I actually got to make a serious attempt at sprite animation, and some of the two-frame walk cycles actually look decent. Also the things I was drawing basically looked like the things they were supposed to. Still room to improve immensely but so far a personal best.
As a home grown engine there were many parts that were still rough around the edges. The tilemaps and game engine had no built in concept of rooms, persistent entities, and transferring state from one room to another, so I had to just hack it in.
The file management was similarly rough: there was no “Save As” (though there is now because it was my #1 issue)
Our animation/model system isn’t as integrated as the sounds/images/tilemaps so I had to hack together my two-frame walk animations by hand.
Still don’t have an integrated music editor. I was able to do all the art and (most) sound effects from within the editor suite, but had no option for music. I really want to make some sort of online Mario Paint Composer style editor, but realize that it would be a pretty big project in its own right.
The lack of a shared “object toolbox” of all the classes of objects was a pretty big negative. This meant that for each screen I had to recreate the tiles by dragging them in, and manually setting their class and data properties. This especially sucked for doors where I needed to hand type the
destinationPosition. The good news is that this is the next feature on our list and once it is fixed things are looking great!
Because I coded in PixieEngine, everyone is free to view the source, fork the game, make alternate levels, and more. (Though the engine is not quite “easy to use”. Your feedback is greatly appreciated!).
Though I wasn’t able to get in all the levels and puzzles I had hoped for this was still a personal best LD for me. I have had a great experience this LD and am looking forward to the ones to come. Additionally, all the feedback was helpful and it was nice to see that people enjoyed the game. If you haven’t yet, please play through and let me know what you think!
I compiled a spreadsheet of all the games that can be played from the web for easy voting access.
Also, because I’m a fan of data, I was wondering if anyone would be interested in a technology and platform survey to gather stats on what tools, frameworks, and distribution channels LD participants are using. If there’s enough interest we can work together to get a survey up (and if something like this already exists, that’s even better!).
Here’s a link to a playable version of my progress so far (click it and go!):
Arrow keys move, spacebar deploys/picks up cat.
It’s still missing quite a lot of content (and quite a lot of gameplay for that matter!), tried my hand at sprite animations for the first time and I think they turned out pretty good.
My IDE is in the browser so it will automatically update as I add new features.
Please check it out and let me know what you think!
I’m in and announcing my tools and library code in case anyone else may find a use for it.
I’m going to use HTML5 and CoffeeScript and make use of these libraries that fix many missing core language features and add useful game components.
For tools I’m using PixieEngine.com a web based game development environment. It has built in code, sound, pixel and level editors as well as the capability to publish immediately to the web. (Full disclosure: I built pixieengine.com)
I’m looking forward to to the event!
I’ll be using HTML5 and CoffeeScript on the Pixie platform. Now that it has integrated pixel editing with the code editor things should go a little smoother than when I first used the platform for Mini LD #21. Also, CoffeeScript will take quite a bit of the awful JS taste away.
We received quite a bit of feedback, some positive, some negative, a lot of it useful. We also received a donation!
Something I wish I had done earlier would be to write down my expectations and try and guess what kinds of feedback we would receive, then compare that to the actual feedback and try and improve my intuition for what players care about. It is all too easy for ones mind to pretend it knew it all along once the evidence is in, so next time I’ll be sure to write down my hypotheses.
Another thing I learned is that not all feedback is equal. Some tells more about the player than the game. There will always be negative feedback and trying to modify the game too much to accommodate it may, in some cases, dilute the experience such that no one really loves it. On the flipside though, be sure that there is actual real positive feedback supporting the tradeoffs you are making. Our main one was that we chose to emphasize “being an awesome dinosaur, crushing your enemies” above “having balanced and tactical gameplay”. That’s not to say that there is no balance or tactics, just that “being an awesome dinosaur” came first in our priorities. In some cases it caused the gameplay to suffer and in an ideal world where we have infinite time the game would be extremely excellent in both regards.
The feedback we received often mirrored that choice. The players for whom “being an awesome dinosaur” was important really loved the experience. The more hardcore players who didn’t care about “being an awesome dinosaur” and wanted more complex and tactical gameplay were often disappointed. Some striking examples:
The gameplay literally consists of the character holding down the left mouse button and holding the right key. Once you get the jetpack you pretty much can’t die. The level design is non-existant, as every level (that I’ve played so far) is just a flat surface with enemies being constantly spawned on it. Overall, I think that you need to work on this game a lot. Currently, I’d say that it’s too boring, and few people will play it past the third level.
I can’t even begin to describe the awesomeness of controlling a jetpack powered dinosaur wielding twin chainsaws while fighting communists all to the midi-encoded tunes of Lady Gaga. The plotline was truly amazing, I totally didn’t see the ending coming.
Another interesting decision was that we chose to go the HTML5 route, rather than using an “established” platform like Flash. I think that, for us, it was the right decision. We don’t have much Flash experience, and if we’ll need to learn a new platform anyway we might as well go for one that appears to be rising rather than one that appears to have plateaued.
There are still tons of problems with HTML5 today, primarily cross browser audio, and crazy nearly impossible to reproduce crash bugs, as well as the standard cross browser web crap. The biggest pain was all the crash reports of running the game in Chrome, even though that’s the environment where for us, in development, it worked nearly perfectly. Additionally it was pretty much unplayable in FF, except on super-powerful computers, had control issues in Opera, only usable in IE via Chrome Tab, and crash reports on any of the browsers were not uncommon. This is the biggest issue right now with HTML5 but it is an issue that is currently being resolved and hopefully quickly.
In the end though the actual technology doesn’t matter at all to the player. The only thing that matters is that they can play the game reliably and enjoy the experience without issues.
the best flash game i have EVER seen play it http://contrasaur.us/
We’ve been working on Contrasaurus for some months now, and with the opportunity to partake in the October challenge we now have double the reason to push hard to wrap it up. The premise is your standard dino-action-thriller. You are summoned into the future to save America from the dark Communist forces that are amassing in Nicaragua. After completing the mission and receiving the highest honor a top-secret military dinosaur can receive a terrible truth is revealed. Finally you seek out those whom you depend on most, only to have your darkest suspicions confirmed.
The game is nearly complete. Although it’s been publicly available to anyone who knows the url for some time, we’re aiming for a real “launch” on Sunday. You’re all invited to the pre-launch, starting now, to help us find out any last minute issues and iron out any bugs. Please leave comments and let us know about any bugs or comments you have, we’ll really appreciate it!
The game is HTML5 based, so requires a modern browser to play. For best results I recommend Chrome. (Firefox “works”, but is generally unplayably slow, Safari and Opera may work as well.)
We added a donate button for now, though we’re not entirely sure of the best strategy to actually make money. Do we still win the challenge if we sell at least $1 but are still way in the red profit-wise?
This writeup is cross posted on my blog at STRd6.com
This was my first 2 day competition and I’ve learned some things. First, two days is a long time. Second, having real tools would make me very, very happy. Third, I thought that doing all the art and all the programming for a game would be hard, but it seems to use different parts of the brain, so when working on art the programming part of my brain is relaxing and vice versa.
This was the first moderately legit game that I’ve done all my own art on (title screen and chest graphics contributed by Lana). Also, my first game with a 4 color grayscale pallet. And additionally, my first major undertaking on the Pixie platform.
Using Pixie to make art is awesome, but the game “platform” is not fleshed out enough for me to recommend making an entire game in it to everyone yet.
A special thanks to everyone who helped playtest and discuss various elements of the game throughout it’s stages: Boltz, McGrue, DavMo, Lan, MW… props.
So check out the game and let me know what you think. By making heavy use of Pixie, especially in time limited competitions, I hope to really iron out the core usage scenarios and make it amazing.
The future is bright and full of meaning.