Level unlock logic is working... nice.

by midge 3. December 2014 02:45

I took a screenshot with the intention of putting it on the blog, but I guess I forgot to move it over to my desktop, where I usually write this blog from. Oh well.

So this is really just a continuation of yesterday. The logic was simple and straight-forward, and it was really just building off of things I made earlier.

Now, as you beat levels, the next one unlocks. You need to beat a level 10 times to unlock all 3 stars. Really no surprises, I'm just glad it's working and was nice and easy.

I'm running out of things to procrastinate on, haha. I really have to start thinking hard about the aesthetic, and just start cleaning things up and generally make it look less amateur.

12 Levels probably is not enough. I'm glad I stopped working on levels at 12 and moved onto other things, because I was getting sick of level design, but I should really really go to at least 16. This isn't a game that people are going to play for months and months, but I'm hoping that the achievements will make determined players put a lot more time into the game. I think game center integration is a  must. If anyone beats the last level 10 times, they're going to want recognition for that.

I'm not working on this tomorrow, I'm drinking beers then. Maybe I'll work on it again on Thursday.



Gentrifying the level select screen

by midge 2. December 2014 04:12

Oh how am I doing? I'm just killing it, thanks for asking.

I had a really good and productive night tonight. I was getting tired of the level select screen just looking like default labels, so I started working on that. I thought about the level states and decided I'd have the following:


locked, NoStars, OneStar, TwoStar, ThreeStars.

Locked means the level has not been unlocked yet, you have to beat some other levels before it is unlocked. (or maybe purchase an unlock?)

No stars means you haven't beaten the level yet.

1 star means you've beaten the level at least once.

2 stars means you've beaten the level at least 5 times*

3 stars means you've beaten the level at least 10 times*.

*Subject to change.

I really like the idea of achievements, it makes people WANT to play my game more and think of it as a little bit less disposable I think.

Getting the level states and images working were actually really easy, and really pleasant to work on. It's fun to be able to use the LevelProgress code I was writing earlier. That was boring code to write, but blah blah fruits of labor or something along those lines.

I used an outlet collection for all the buttons, that was the fist time I had used them, but that was very convenient and helpful. I was originally going to subclass UIButton, but I read somewhere that that was a bad idea, so I just went with what was available with the methods for customizing them.

The level progress stuff is not all hooked up yet, and I'll have to test that, but I think it will be really trivial.

I'm thinking of renaming the game to "Something copter" or something tongue in cheek like that.

The new images are not final, they are placeholder. Honestly though, I think I'll go rounded edges and maybe adjust some colors, but I'll mostly just keep them. Keeping it simple is keeping it moving.




Killing the bugs.

by midge 1. December 2014 02:30

I actually worked on this one time that I didn't blog about. I think I had just stayed up later than I should have on a work night, and I just skipped the blogging part because I didn't realize I had forgotten to do it until I was already in bed.

Anyways... I was very relieved to find out why the Level Progress files were not writing properly on the actual iPhone. It was really just sloppy coding and it was completely my fault. I just had to get things in the debugger and step through to see what the code was actually doing vs what I kinda sorta hoped it was doing. Once I had the patience to take that on, it was really no big deal.

I do still have some more level progress stuff to work on, all I have working right now is the high score for the level that shows up. I still have to add in the win/attempt counters. Attempts counter will really only be for debug and stats. Win count will probably be for achievement unlocks.

I added a button on the preferences screen to clear all progress, this will not be in the final version.

I may switch to a percentage based level high score, since all of the level high scores end on ugly numbers. Or I could make all of the levels slightly longer, to end on nice round numbers. I dunno, we'll see.

I'm really really trying not to lose momentum. I would love to finish this thing up by Christmas. That feels like a stretch goal now. Maybe xmas without the iPad version.

I need to start taking the finalized look seriously as well, maybe do some pixel artwork for the menu screen.

So long!


All I do is increment the win counter

by midge 25. November 2014 03:10

So I resumed in the place I left off yesterday. It's good to get back to working on this with some regularity, even though progress subjectively feels slow at the moment.

Ha. I'm working on the LevelProgress plist and I said progress was slow. Unintentional. So basically all the code I wrote tonight was boring file I/O stuff. I took my time and it seems to be working. I'll have to test the hell out of it to make sure some write error won't blow away all of the progress.

I hate to say it, but I just thought of a super low tech, easier solution than all I just did. It would have been easier and probably saved me time. Oh well, at least I got some more practice with plists.

I'll be able to use all the stuff I just wrote in game pretty soon. That means locking/unlocking levels and keeping track of stats and high scores. Weee!


//TODO - Resume here

by midge 24. November 2014 03:05

I probably put about an hour of time in tonight.

I was making pretty good progress but I have to be in work early tomorrow, so I decided to cap the time.

I was just working on the file structure for saving level progress, really nothing too exciting. I'm able to reuse a lot of the previous code about the level meta data, the read only plist.

I was making good progress, but I don't know how this week is going to play out as I'm trying to fit a good deal of social stuff in and it is thanksgiving this week. We'll see.

Well, that's all for tonight.



A little bit more!

by midge 23. November 2014 03:38

I should get an award for procrastinating today. I meant to work on this thing but did everything but.

I was at a tech conference in Orlando all last week, so I didn't really have the energy to work on stuff during the week. I was pleasantly surprised to learn that there was a session on Game Development. Mostly C# stuff. It was very interesting, and made me want to start using a lot more Unity (ahem, compared to the not using it at all at the moment). A lot of cool stuff in that session.

Anyways, I continued working on my game at like 1am, and it took me a little while to get moving. No real game stuff, just generic programming.

File I/O in objective-C is super not fun. Just everything is so non-intuitive and verbose it's kind of ridiculous. So that's what I was working with tonight.

Previously I had written the read only level meta data pList for level info, now I'm working on storing the level progress which will obviously have to be writable. This stuff would be really simple for someone more practice in objective-C stuff, but I'm a little rusty.

Nothing tooooo interesting here. Hopefully I can get a little bit more done in the morning tomorrow.


yep yep.


A little bit is always better than nothing

by midge 16. November 2014 03:58

I got started much later tonight than I should have.

I did some very minor code clean up, then I wrote a header for a class to keep track of level progress. I probably want to have a stats screen to be able to read in some of this stuff for beta testing purposes.

I'm going to try to get up early tomorrow and get working on this stuff.


Training Wheels and Level info

by midge 14. November 2014 04:26

Phew, back to working on this game. Breaking the chain of failure that was not working on the game for... however many days I went without doing it. Momentum matters. Doing a lot of one thing makes it easier to do more of that thing. Not doing some thing for a long time makes it easier to continue to not do that thing.

Anyways, not to get too meta, but I did work on the meta data a little bit today. So the levels now have a "DisplayName" that shows up whenever you start any level and then fades away. This was fun because it gave me the opportunity to Name all of the levels I had made so far. I think the most entertaining to name was "Slopes For Dopes".  Naming the levels gives the game a little more character.

I made a very simple very first level called "Training Wheels". You can pretty much just hug the bottom of the screen and you have  jump over 2 little obstacles then you're done. It's a little longer than the old starting level but actually easier. It will give people more of a chance to get used to the controls.

I feel like right now, I'm working on fixing the things that annoy me most before proceeding. The display name thing helps because it lets you know what level you are on if you don't go back to the level select screen. Plus it has that sweet little fade going for it.

So that makes 12/12 levels! But it doesn't feel done. I think I'm going to add some more medium and maybe one more really long level before I call the level design done.

That's all for tonight, I'm glad to get a little work done on this thing again.


but i'm le tired

by midge 6. November 2014 05:14

I stayed up too late tonight/this morning... But I got a lot done.


Made a new easy level, I didn't even plan on doing that today. 11/12, booYa. I may add more easy ones to pad it out, since the easy ones are much simpler to create.

I found a nasty bug that only showed up on one level. I resolved the bug, but I wasn't sure exactly what was causing it. Just through blind experimentation. It was an annoying and serious bugger. On that level, you could just drop the bottom and as long as you stayed there... none of the hit detection would go off when you hit things from the side.

After much experimentation, tweaking a constant fixed this. I_DONT_KNOW. oh well.

I got beers last night with a few friends. That was very valuable playtesting for my little game. The consensus was: "Level 2 is waaay too hard". They were right. I moved it to be level 8 now. So it will be a short, but somewhat challenging level that shows up later in the list.

Nap time!



Now everyone just calm down.

by midge 4. November 2014 04:18

I got some good work done tonight.

I was actually quite bothered by the problem with the touch not working in certain areas on the phone, especially towards the bottom of the screen in landscape. It makes sense for my game to use that if you want to play right handed and still want to see most of the level coming up.

Turns out it was just a setting on the iphone. I don't know if I can disable it programmatically, but you can change it from the phone settings. I'll probably put it in the instructions. Disabling the control center from within apps will do it.

I didn't work on any levels, but I did actually write some code! Only a very little bit, but it was very productive. I think putting the game on testing devices will speed me up a lot. Now I want to show my friends, and I don't want to have to explain away why things look messed up or certain things don't work yet. I just want them to work.

I made it so the "play now" button works... it just goes to the first level. I may make it use some logic or whatever based on your progress. But for now... just the first level, deal with it.

After beating a level... the "Next Level" button now works. It just takes you to... you guessed it... the next level. I might put some logic around this to have some more complicated behavior, but if if this works, I might just stick with it.

I added a working title to the Main screen "CAVERN COPTER".

I made the buttons much larger so they were easier to hit, and especially much wider so you can use your left or right hand to reach them quite easily.

Then some very minor stuff for button placement. Very good progress.

I like switching around tasks once in a while, it makes it feel "new" again.

The future is now.



About the author

Hi, I'm Midge.

Month List

Page List