|
Title: Knots - multiplayer fast-paced puzzle game for iPad Post by: Belloch on May 12, 2014, 02:15:03 PM This is Knots. I've been developing the game solo over the last year and it is just now, after many wildly different iterations, starting to come together.
Warioware meets Twister, Knots is a multiplayer puzzle game for the iPad. Players guide their avatars around the screen, completing as many random challenges as they can before time runs out and without getting their arms and fingers tied in a permanent knots. Gameplay Each player controls one or more avatars with their fingers, one finger to an avatar. These avatars are then used to complete as many challenges as possible. Time is always ticking down, but successfully completing tasks awards extra time. The catch, players can never let go of their avatars for more than a second or two without being penalized time, and the longer the game goes on, the more avatars they have to control. The minimum number of avatars is 3, but as the game goes on that number can get as high as 8. Here are some gifs of gameplay. This is from a fairly old build of the game, but it still gives a good idea of how things work. Sorry about the player's hands in the way, but you have to see them to understand the game. (http://i.imgur.com/yJy4Cqe.gif) (http://i.imgur.com/I01HaPG.gif) (http://i.imgur.com/tV4S6tm.gif) Here is a link to the full video that these gifs were taken from. https://www.youtube.com/watch?v=B0qk9PlY4cI (https://www.youtube.com/watch?v=B0qk9PlY4cI) Sorry for the poor quality. It was made in a hurry. What still needs to be done The game is approach complete, so most of what I still need to finish is basic gameplay tweaking as well as a few icing features that could add some more variety to the game. Here as a basic list of what I'm still looking at doing in order of importance:
Even though the game is over halfway done (finger's crossed), I'm starting this devlog now because I've been slumping and losing motivation to continue. The devlog is to try and add a bit more discipline to my development process. Also, as I've been working on the game, it's been harder and harder to see the fun. I've been told this is normal, but as a first time developer, it is still discouraging. I'm hoping that getting Knots in front of some more experience eyes than my own will help me refocus. Playtesting I'd love to post a build for people to playtest, but since the game is for iPad, I'm not sure how I can get around Apple's restrictions on testing devices. How have people done it in the past around here? Take a few volunteers to add to their developer account? Posting the code on Github or elsewhere? Anyways, there is a whole lot more that I could talk about, but since this post is getting pretty long, I'll cut it off here and just answer questions that come up. I'll gladly answer any questions about the gameplay or the history of development up to this point. I'll be updating this thread every few days as features get completed. EDIT: I cut down the size of the gameplay section to make it more readable and replaced it was gifs and a link to a youtube video. Everything that was in that section is now in the post directly after this one. Title: Re: Knots - multiplayer fast-paced puzzle game for iPad Post by: Belloch on May 22, 2014, 11:05:43 PM For those interested, these are the 12 challenges that make up the gameplay.
Maze (http://i.imgur.com/AgxAHuA.png?1) Pretty straight forward. All avatars need to get to the grey escape zone. Also note, around the edge of the screen you can see the timer bar. Cross the Lines (http://i.imgur.com/zPys7ga.png?1) A player of matching color needs to cross all of the lines on the screen. This one seems pretty simple at first, but as you can see below, it gets pretty complicated later in the game. (http://i.imgur.com/kHDcibN.png?1) Math (http://i.imgur.com/mGJauVU.png?1) Each player has a number, and one of the numbers is the answer to the equation. Rhyme (http://i.imgur.com/oXg4fLi.png?1) A lot like Math, except you need to fill in the missing letter in a word. Untangle (http://i.imgur.com/sXTmZgo.png?1) All players are connected by lines and must be arranged so no lines are crossing each other. Spin (http://i.imgur.com/NqBQPlb.png?1) While still touching their avatars, the players need to physically spin the iPad to align the arrow with the green dot. Tilt (http://i.imgur.com/HKbe6L0.png?1[size=10pt][/size]) Like Spin, but instead the iPad must be tilted to slide the ball into the outlined hole. Color In (http://i.imgur.com/bto7WBK.png?1?9296) Shapes must be colored in by moving the avatars across them. Only avatars of the same color as an outlined shape can color the shape in. Erase (http://i.imgur.com/cVOApFu.png?1) All the colored lines must be erased by tracing them with the avatars. As with Cross the Lines, this challenge stars with a single colored line, but later in the game you get stuff like the chaos pictured above. Find (http://i.imgur.com/Ioku6V8.png?1) A simple word search. The line linking to avatars must trace the hidden word in the search. Puzzle (http://i.imgur.com/mCi1zcr.png?1?8648) Each avatar is connected to one of several puzzle pieces that need to be fitted together. For all of these challenges, no instructions are provided to the player outside of what you see in the screenshots. They need to figure out what needs to be done for each challenge, and how to go about doing it, on the fly. Currently, I don't plan to add anymore challenges to the game. In my experience testing the game, these 12 provide enough variety, and I fear that adding more would make the game confusing. Title: Re: Knots - multiplayer fast-paced puzzle game for iPad Post by: Belloch on May 22, 2014, 11:07:59 PM Sorry my first update took so long. A blackout and other issues delayed me working on anything for almost a week straight.
All of my work in that time has been improving the Erase challenge. Feedback from playtesters was that the lines overlapped each other too much making the challenge far too difficult. The other big issue was that creating and drawing the lines was so expensive that the game would lock up for a good quarter to half second while that was happening. (http://i.imgur.com/cVOApFu.png?1) While you can't see it well in the image above, the lines also look pretty gnarly up close. They aren't anti-aliased at all so there are lots of jaggies everywhere. My project since my last post has been trying to get these things sorted out. Spreading the lines out was pretty easy. The way the old algorithm worked was selecting a few random points on a grid, and then drawing a line between those points. Changing it was just a matter of restricting the code to only choose random new points near those already selected. The brutal part was getting the lines to draw well and fast. I tackled the issue by changing how I was actually drawing the lines (switching from using Cocos2D's CCDrawNode object to the CoreGraphics built into iOS) and to spin sprite creation for the lines themselves off into another object that could spread creation out over many frames rather than trying to do it all in one 1/60th of a second. After a number of experiments, such as trying to make the line sprites on a background thread, I settled on dividing each line up into multiple sprites, and then creating one of those sprites each frame until all the lines were done. Drawing pretty lines was a bit hard though. My old, very bad, technique was using a Catmull-Rom Spline (Google it cause I can't explain it, I just found code on the internet) to generate each point of each line individually. The issue with that: lines could reach over 10,000 points in length. Calculating and then drawing those could took a while. I decided to switch to using Bezier Splines instead (another thing you need to Google) since those are built into iOS. My initial attempts didn't go so well: (http://i.imgur.com/7dubhe1.png?2) While there is something aesthetically interesting about the straight lines, they also cover each other up awkwardly. The curved lines also force the players' hands into more interesting movements so I wanted to stick with those. My later attempts, after figuring out more about bezier lines, went a bit better. (http://i.imgur.com/Y23dfgY.png?1) While the lines were now curved, though, they had these strange little squiggles in them. They bunch up and curl in awkward ways and just look sloppy. Finally, I was able to get it working. (http://i.imgur.com/TFzL5bl.png?1) All told, it took me several days of work to get to this point. Now, though, I have prettier lines, better gameplay, and a game that doesn't lock up every 30 seconds or so while it tries to fumble through bad code. Title: Re: Knots - multiplayer fast-paced puzzle game for iPad Post by: OJ Navarro on May 23, 2014, 04:52:36 AM I haven't played it yet. But from a game design perspective, it looks fun to play.
Title: Re: Knots - multiplayer fast-paced puzzle game for iPad Post by: AegarPyke on May 23, 2014, 05:45:27 AM This is such a cool idea! It's too bad that it's only available for iPad. I could see this being a fun hit amongst my friends.
Title: Re: Knots - multiplayer fast-paced puzzle game for iPad Post by: Belloch on May 31, 2014, 01:55:00 PM With the work I did in my last update, I was finally able to figure out how to make CoreGraphics and Cocos2d play nice with each other. This is great since it means I've been able to move more of my graphics to being drawn algorithmically rather than in just importing sprites. Maybe it's just because my background is as a programmer (or because my Photoshop skills are nonexistent), but I've always preferred using code to generate graphics where possible.
I find it a lot easier to make changes that way. If I decided, say, that the color palette needs to be altered, I can just change one or two things in the code and everything is updated, rather than needing to make and import dozens of new sprites. Spin is a challenge that benefitted a lot from this. (http://i.imgur.com/edu1EM0.png?1) The indicator, target, and arrows are all drawn with code now. Ironically, the simplest parts of this screen, the hashmarks, could not be done this way. When I tried, I could not get antialiasing to look decent so all the diagonal hashes looked terrible. Either they were complete aliased and looked awful, or they were way to heavily antialiased and appeared fuzzy while the straight hashes looked crisp. The only way I found to make it look consistently good was to use sprites made in Photoshop instead. I also updated Maze. (http://i.imgur.com/tJ1qluw.png?1) The changes here were more than just aesthetic. Playtesting showed that the old design was confusing; players just did not understand where they had to go. I tried a more brightly colored and differently patterned exit, but that wasn't quite enough. I ended up just breaking down and explicitly labeling the zone "EXIT". Hopefully, that should be enough. There are some other changes that I made, but I won't go into much detail since a lot of them were backend changes that would be pretty boring to read about. The one worth mentioning is that I expanded the library of words available in Find to 1885. I wish it was something I could have done with code, but the list of words I had was from a Scrabble website and contained a lot of words no one ever uses. I ended up having to go through the list and remove words by hand. Title: Re: Knots - multiplayer fast-paced puzzle game for iPad Post by: ephoete on June 01, 2014, 04:55:30 AM "Warioware meets Twister" Pretty neat concept indeed! And nice design. Keep on man! :)
|