Silly and inexperienced.
About wcarss of United Federation of Planets
The game hasn’t visually changed much in the last several hours — I’ve been figuring out how Phaser does camera scrolling in a world larger than the screen, how to dynamically add/remove platforms at random, how to tell what platform the protagonist is currently standing on, and a myriad other little things.
So, now comes the hard part, I guess. I’ve managed to get over the technical hurdle of “just getting anything to do anything”, which has traditionally stumped me. I still have game states and a victory condition to add in for sure, and more art assets to create, but first is the true meat of game design: making this into a fun, compelling experience. I have several ideas for mechanics, but I won’t know until I’ve tried them whether they really work, and a lot of them are just preliminary thoughts. Some of them I don’t even know how I’d implement.
The basic premise is neat, with platforms coming and going regularly and having to jump between them. I think some more visual variety among them will help make things even more compelling. Probably the next thing to do is to make their spawn locations a bit smarter, so that there’s less time spent waiting for options to open up, and more time spent doing stuff. The controls are still a little uncertain, but I did manage to get “hold to jump longer” to work, which is quite pleasing.
This evening I’ve got some plans, and I’m near to considering dropping them to keep working. It’s probably best to go be social in which case I’ll get cracking again tomorrow morning.
Until next time!
It took a surprising amount of doing, and it certainly isn’t much to show this far into the compo, but: here is a screenshot of a dude standing on a platform with some stars behind him. He can run and jump and stuff, but he isn’t animated. So basically, I’ve got the platformer example from phaser’s website with my own art and minor tweaks. A small sojourn into defining my own character movement by messing with acceleration and stuff went very… um, poorly. I’ll just leave it as is now and start working on random platform generation and longer levels.
Having settled on an idea and a framework and completed the chief tutorial for the framework, and it being 6:25 AM my local time, I think it’s time to visit the land where I’m a viking. I’ve been fading in and out of consciousness while reading the last bit of that tutorial, and while typing this, so yay! sleep. See you tomorrow, #LD48.
I recall making some basic 2D platformers a few years ago (warning: code rot! broken in my FF) with CraftyJS. A quick peek at its page shows that it was last updated in January, which isn’t exactly inspiring me to go back and use it again. So I googled, and wound up at Jaws.
Jaws really captured my attention for a bit: it seems to do all the things I want, and I like the philosophy it’s taking off the bat. But… some of the 10 examples are buggy (like blocking right-clicks pagewide when the mouse isn’t used), and there is no “structure of a Jaws app” page. There are just pages telling me to make gamestates and how some of the constructors work. The lack of documentation makes me think I’d be in for a bad time, so on to greener pastures.
This list hilariously says “no, look here instead for an updated version!”, then says “but also, that version is broken” — a bunch of the table doesn’t fit onto the screen. The ‘notes’ don’t aren’t super useful anyway; I’m looking for subjective evaluations, here. I can find out an engine’s features by just clicking on it, but I can’t find out if it’s widely regarded as sucky or great, has a good community, has useful docs, etc. That which would help me a lot.
This list finally came to the rescue. The rating system is exactly the kind of meaningless number I need to have to deal with the insane amount of choice in engines. Then there are tags like “WebGL” and “free”, rather than paragraph-style notes. I can quickly use them to tell if something is worth a deeper look.
Not entirely surprisingly, the top-rated and most popular entries are not-entirely-free or outright paid and are more or less “no programming required” deals, with a lot of drag-and-drop and learn-the-UI stuff. Those are cool, and you can make good games with them. GameMaker is a great example of that. I personally get frustrated when making a game in something like that, because I feel like too much is being hidden from me, and like the skill I’m learning is “how to use this app”, rather than “how to make a game”. If I ever decide to move to another platform or don’t have this app available, I won’t be able to make a game, because I won’t know how.
Which is stupid of me, because seriously, when will that ever happen or be a need I have? But alas, hamartia.
Anyway, the next engine, Phaser, looked great — until I saw the book that wants me to pay $129. “Sounds like a scam!” I thought. Then I wondered, “what’s below the hundred billion news post links on the main page?” and guess what, it’s USEFUL THINGS. There’s a “Getting Started” section and it links to a blog post that takes you through a whole minimal first game. They have some number in the hundreds of examples. They have a section explaining that you need a web server and how to get it and why, and what editor to choose! My kind of people, they are. It looks to be fully functional and have the community usage to prove it, along with the documentation to help me get off the ground in a reasonable period of time.
So, Phaser it is. That only took two more hours. 1 day, 15 hours, 40sih minutes left.
PS: okay so ALSO, just gushing now: the Phaser README on github is crazy-comprehensive and has a ton more links and GUESS WHAT, they seem to name all of their releases after locations from the wheel of time universe. I was like “I wonder if Amadicia is a real word that Robert Jordan just used for the name of a place?” and bam, they’ve got Tarabon and Illian and all kinds of great names. Cool cool cool.
“Connected worlds. Sounds really good — that’s a lot to work with. Awesome theme.”
Cue 6 hours of frustrated thought, punctuated by occasional naps and bowel movements. Still not totally settled. On an idea, I mean.
Connections: links, bridges, passages, communication, transfers, shared points
Worlds: planets, types of game, lands, fictional universes, times, planes of existence, or even just “places”
So… linked planets (like osmos or neptune’s pride), or communication between two types of game (like where text adventure goes graphical in an old LucasArts game I forget the name of), or transfers between planes of existence (man, fucking eversion), shared points between fictional universes (as in the comic the unwritten, or kingdom hearts), passages between places (snakes and ladders… or minecraft).
Lots of ideas. Maybe too many! Would a snakes-and-ladders style platformer be any fun? Could I even make it? Would a mashup of 2-3 (or more) totally different styles of game be *remotely* possible in a weekend? What about some kind of hacker game where you make connections between electronic things? Maybe I should just default to literally making lines between planets — some sort of quick resource-management game..
Know what would be a great connected worlds game? Fez. That shit was clutch.
Hey, what about a game where, every single time you make a move, you’re in a totally different world? You take a step, and the world changes around you. You jump, it changes. Blocks fly around, jumps materialize or disappear. Ramps change direction. Blocks decide to be moving. Art shifts dramatically. Enemies join forces with you or swap spots or gain wings or simply disappear. That … could be really cool.
I don’t know if it would be better to have it be pre-planned, or random, but I don’t trust myself to pre-plan that sort of thing. So random it is for now. What would a boss fight be like in a world that never stays the same? What sort of powers could the hero bring to bear on that universe? Can I even code a barely functional platformer, let alone something so ambitious? (hell no)
Well, here we go. Ludum dare 30. Jackson said it best, I think: “hold on to your butts“.
After a mishap with my ankle involving a cartwheel, I decided to get some sleep last night. Now, I’m ready to get started. Very simple concept – escape mazes and collect things along the way. The mazes will have ways of making sure you move quickly. I learned a bit of pyglet before I fell asleep, and I’m going to try to figure chrono-lapse out now, and I just installed kolourpaint. We’ll see what I can make before I fall asleep again!