Showing posts with label graphics. Show all posts
Showing posts with label graphics. Show all posts

Saturday, September 14, 2013

Cautions and issues with iOS 7

I've been working on OttoJotts quite a bit over the past few weeks, making some great progress. One thing I've had to do is perform all of my testing in iOS 6 and earlier because I'd been seeing weird display problems with iOS 7. I thought it might have been just some issues with the betas of iOS but now that I have the gold master of iOS 7, I'm seeing the same problems. And now you can too:
iOS 6 on left, iOS 7 on right
What you're seeing is what the screen looks like in iOS 6 and 7, side-by-side comparison. Each letter is a label and I load a box and place it behind each label. On everything but iOS 7 it displays properly as you can see. I thought it might have been a problem with the background color on the label being something other than clearColor, but that doesn't seem to be the case either. I don't know why the boxes aren't displaying at all right now. Definitely going to require some additional work before I put this out to the App Store.
I am pretty surprised by this pretty major change in iOS. This seems like pretty basic functionality that has been changed. I know that a lot of it is because of the new UI paradigm that Apple is trying to introduce, but this seems like quite a major change in implementation from previous versions. What this seems to me is that every app developer is now going to have to be extremely careful about this upgrade and what it means to their apps.
Good luck with your apps.

Monday, January 21, 2013

UITableViewCells and Forgotten Wisdom

I've been playing around with a new game for my daughter based on an old game called Electronic Detective. I'm actually making a version of it for her to play (since my old solid state system, for some reason, only plays about half a game before crashing out). I had originally planned on making everything fit onto a single screen (which would have been better on iPad, but I'm a sucker for pain which is why I'm making it for iPhone), but decided to be considerate and moved from a single UIViewController view to a new UITableView layout. But the new version of Xcode makes creating UITableViewCells a little, um, wonkier than I remembered.
NB: I'm sure this is all 1,000,00% easier with storyboards, but I'm not using them as I'd like to target devices more than 6 months old. And yes, that was some slight sarcasm.
The first thing I ran into is that when you add a UITableViewCell .h/.m to your project, it doesn't allow you to create a .XIB with it. You need to create the .XIB separately. Then, the thing I've learned, is that you need to set the class for the VIEW to be the new .h/.m class name you selected. Do not set the File Owner to be the new class - leave it as UITableViewCell.
If you don't do that and leave the view as the UITableViewCell or if you set the File Owner to be the new class, you're likely to run into a dreaded "this class is not key value coding-compliant for the key XXXX" error. This is not terribly useful but some searching on slashdot and other places guided me in the right direction. If you've come here because you searched for that and you're using UITableViewCells, then here is likely what you're seeing as a problem.
This is one of those problems that I continue to stumble upon as I work through things only periodically. I forget some of the tricks and tips I've learned previously. But as my spousal unit and I have decided that she will not be returning to her job at Lockheed-Martin (as they have recently changed their leave-of-absence policies denying her the ability to take a second year off to watch our illness-prone son), I need to start getting some more titles in the App Store - and quickly. Given that, I will be working more feverishly to get things completed and released and will be sharing far more on this blog than I have been of late. And I will hopefully be retaining more of this forgotten wisdom.
Wish me luck!

Friday, September 21, 2012

New glyphs are done!

So I spent a little time finishing off the glyphs for the app. I think they look "okay". At least "okay" enough to be in version 1.0. And, for me, they're "freakin' amazing". *sigh* As I said, my graphic artist skills leave MUCH to be desired. Anyway, without further ado, here are the glyphs I made for the app.
The glyphs for my app

Not bad, eh? Yeah, I think they'll suffice. I did spend quite a bit of time making them and hope that they'll be met with approval by the community. It was definitely not something I felt at all comfortable doing, but sometimes it helps to get out of your comfort zone.
I'll point out that these are the original drawings - I haven't cleaned them up at all. I will be extracting the individual glyphs and improving them before incorporating them into the application. From personal experience with other graphics exercises, this will take several hours. I just hope I'll be able to get enough time strung together to make it happen. I also need to get the description written for the application, so that's something else I need to get a block of time to accomplish.
So, there we are. Hope you like the preview here. Once I'm done and submit everything to the App Store, I'll post a link.

SLIGHT delay on Maya Calendar App

So as I was going through the submission process to get my Maya Calendar application onto the App Store (yes, that was actually happening!), I needed to create a description of my application. I decided to go see some of the other applications in the space to see what they had crafted for their descriptions - check for inspiration, really, not plagiarism. No, seriously - no plagiarism. I think I might just like typing that word...
Mine on left, theirs on the right
Anyway, as I was going through looking at "maya calendar" (as opposed to "mayan calendar") I stumbled upon an application - using the exact same graphics. In fact, their icon was the same idea (with a different glyph - see right for comparison). Well, *(^*&!@. And AS I WAS SUBMITTING MY APP! I found that the website I'd "borrowed" the glyphs from was the same site that had the application I found. *facepalm* O.M.G. Bad me for thinking they wouldn't be used somewhere else.
So what did this mean to my calendar app? It meant that I needed to have some new glyphs. I asked my daughter if she'd be inclined to draw them (there were 44 required) and she agreed. Then she drew the first one and decided "um, no thanks - that was HARD". So it fell to me to draw some new ones. I used some different sources to get ideas for what they looked like (including the ones that I can't use now), but I've redrawn all but five of them. Next will be scanning them in, then cleaning them up, then integrating them into the app. The nice thing is that integrating them is a piece of cake - I just need to replace the existing files with the new ones. Also, I'll have higher-quality ones to use for an iPad app (if I do that). While they will be similarities to other glyphs on the web, they're hand-drawn (by yours truly) and lacking the funding to fly to Central America to tromp around Maya ruins looking for samples, I have to do it virtually. Which means other peoples' pictures.
So I'm close to having that app in the store. I'm really hoping that I'll be able to get it done by the end of the weekend. We have a very busy time planned, but here's hoping that I'll have a little time during those two days to get this sorted out and submitted. In the meantime, I'm working on getting a description put together so I can just copy/paste it into the submission page and go from there.
Fingers crossed for a successful submission. Then it's the waiting game for approvals. I'll post more on that as we go through that process.

Wednesday, August 29, 2012

Nearing completion

Current launch screen for the app
So I've been working a few hours every night trying to get closure on the Maya Calendar application - and I'm almost there. Except for a marathon Bejeweled Diamond Mine session this evening (I didn't want to quit until I'd topped 200k) I've pretty much been working on finishing up the application. I've got the backgrounds all changed - they look very nice now - and am working on the final touches. I was going to do a universal application - both iPhone and iPad - but the size on the app was making it ridiculously large. Like 60 MB large. Wow. Um - no.
What's left you ask? Well, I've got some "about" kinds of things to finalize. Need to get the application version information in there as well as information about HOW to use the app. Plus I wanted to put in some text about the long count calendar - where did it come from, how was it used, etc. Once I get those things in and working as expected I think I'll be ready to build it for distribution. I don't have an iPad version yet at all. I think while I'm waiting for the App Store approval process to complete I'll work on the iPad version. I've got all of the graphics and logic - just need to change up the display. I think.
Things have been coming together over the past few days. I feel that I've been productive - moreso than in weeks past. In order to get things finished I need to do something I haven't ever done before, so I do still have a little more work to do, but I feel now that I'm closer than ever to having something completed that can be submitted to Apple. And that will be a huge boon to my self-esteem these days. I also made some adjustments to the graphics that, for a non-graphic artist, I feel pretty good about.
Anyway - just a quick update. Looks like things are getting close. Now to sprint to the finish line and be done with this.

Sunday, August 26, 2012

Oddness with the Maya Calendar

So I've been reading up a LOT on the Maya* calendar over the past few months. There are two different calendrical systems - the Long Count (which is what we hear about when people talk about the end of the world in 2012). The current date in Long Count (as of this post) is 12.19.19.12.0. There's another calendar is called the Sacred Round and uses what are called Tzolk'in and Haab dates. This calendar was more religious in nature and had a full cycle of about 52 years. When doing calculations for Long Count or Maya calendars it's common to include both the Long Count and the Sacred Round dates.
One thing that seems clear is the basic calculations to get the Sacred Round dates. The Wikipedia article describes pretty clearly the arithmetic required to derive these. The regular Sacred Round cycle is 360 days and there are 5 Wayeb days (that were considered unlucky) to make the calendar 365 days long. Close to the 365.2422 days our tropical calendar is, but it means that the Sacred Round shifts one day forward compared to the tropical year every 4 years.
One problem is that I would like for my application to work for dates all the way back to 9999 BCE (and forward to 9999 AD/CE). Most calculations are done using Julian days as a baseline, but the Julian dates start in 4730 BCE, a little later than my 9999 BCE desire. What's a developer to do? Well, one option is to try to address the negative values that come from going before the start of the Julian dating scheme, which is what I initially thought of doing. Then I realized that since there is a higher-order cycle above the currently accepted five values, I could add what's called a piktun worth of days to the count, in essence moving back the Julian calendar about seven thousand years. I did this and it worked great for the Long Count calculations - I just subtracted out a piktun if it was past the beginning of this cycle or not - it all worked out. The Sacred Round, however, was a different story.
The reason is that the Sacred Round starts at specific values for tzolk'in and haab. Moving back a whole piktun, though, means I needed to recalculate the tzolk'in and haab values. I figured out what the new offsets were and after resolving some oddness with displaying the correct glyph for the tzolk'in and haab I seem to have gotten everything working.
The only things I have left to do to get this thing out the door is finish the polish for iPhone and get the iPad version looking reasonable. All of the testing I've done to date is solid. I still have a few things left to validate, but I actually have a high confidence that it will work pretty well. Then two versions - one free and ad-supported and one for $0.99. Then I'll have broken my 3.5 year drought of getting apps into the App Store. Yay?

* You'll note that I'm not using "Mayan" anymore. I learned that Mayanists (scholars who study the Maya history) use "Mayan" for linguistic elements (the language) but use "Maya" as an adjective for "things that are from the Maya culture"). I will bow to their superior expertise and understanding in this particular matter. 

Sunday, August 19, 2012

More Mayan Madness and Inspiration

So it's been a while since I've posted. Unfortunately in the weeks since then I've had a hard drive "almost" fail, a Time Machine restore TOTALLY fail, the hard drive FINALLY fail, and lots of restore pain. In short, it's been a hell of a few weeks. But now I'm mostly back to normal (well, the laptop is) and running again.
19 Aug 2012 in Long Count
I've been working on the Long Calendar app for the past few days. So far I've added a lot of better graphics to it so it looks better than it did before (see picture to the right). I think it's starting to look a little better. I wasn't planning on working on the glyphs until I had completed everything else, but I'm actually really close now. I have two remaining bugs. For some reason the Haab and Tzolkin calculations are incorrect. I'm guessing I messed something up when I fixed some +1/-1 problems earlier. And BCE dates aren't working correctly right now. Again - I think I managed to break them at some point during development.
One thing I'm not doing much and need to be doing a lot more is the unit test. Xcode 4.2 integrated a unit testing framework into the system, which is awesome. I need to spend some time really beating it up and understanding it a lot. With this applet I feel that it could be beneficial (it would have caught the changes that broke the calculations), but I'm also pretty far down the path. I've got a set of tests that I do whenever I make changes, so I'm not totally out of sync with current development methodologies, but still feel that with all of the agile experience I have that I'm not being "true" to the methodology by not doing it for my own projects. Especially since Apple has done the "right" thing by encouraging developers to do it. Next project I must do it.
Regardless, things are starting to come together with this. I expect that I'll be able to get this completed this week, I hope, and get it into the AppStore next weekend. Earlier would be better, but there's a lot going on right now - lots of swirl and lots of stress.
On a good note, though, I spoke with a friend from my HP days - Cooper. He works at Microsoft right now and I was in Seattle last week and rang him up. He's one of the most talented engineers I know (perhaps the most talented). He's also one of those people who is completely committed to whatever it is that he's working on at the moment. He inspired me to work on things that made me happy when we worked together. We actually started talking about starting our own company before MS offered him riches that would make Solomon blush. But it's Coop who really encouraged me to dream bigger and work harder to achieve those dreams.
I've sort of lost sight of that in the doldrums that are everyday development. It's easy to forget the why of what you're doing in the day-to-day of doing. What do I want to have? The ability to be with my family when and where we want to be. To be able to provide for them while not being beholden to a time clock at a wage-slave job. To not be a sarariman. As you probably know, I have a 9-5 at Comcast. The "job" is good - challenging to be certain, but I'm well-compensated and enjoy working with my coworkers. But it's not what I want to do in the long-term. Before I got this job I told my wife that I wanted my next job to be my last one - that I would make this Otto Von thing work come hell or high water. And what's happened in the 2.5 years since I started at Comcast? Not a whole lot. I've managed to learn a lot but at same time waste a lot of effort not focusing on the end goal.
Talking with Cooper has really re-focused my energies on that end goal. I was reminded of the possibilities we had back at HP. Of the things we talked about doing and the places we'd go. Of the games we'd write and the lives we would change. Of the paradigms we'd create with our innovation. We'd be the Nintendos of the game world. And that's gotten lost.
So, here we are in August. What will the next few months bring? I don't know, but I do know that I'm reconnecting with those "halcyon days of my youth". I'm remembering WHY I'm doing this and why I need to make this more than just a hobby. It just takes a look at my family and a chat with an old friend to bring everything back into focus with a clarity I could scarcely recall. Almost like a haze that slowly dims your vision. Over the years it just seems fuzzier than it used to be. And then you clean the haze away. Now I just need to keep the haze away.

Wednesday, April 25, 2012

OttoJotts and other stuff

Been working on the back-end pieces of OttoJotts over the past few weeks. It's been slower than I'd hoped, both because I'd run into a small issue that was keeping me from moving forward with the game views and because I was finding other things I wanted to do instead (like catch up on Reddit and watch some videos). I've been a bit demotivated the past few weeks. Lots of stuff happening personally and financially that have added more stress than I needed right now.
On the OttoJotts front, though, things have been progressing reasonably well given the time I've spent on them. Right now I've got the account information and the main game list showing up. I still have to get the game details (the guesses and such) showing up and the ability to start games. Still a lot of work left but once I get these things sorted out it's a lot of playtesting and hooking it up to the iPhone.
iPad is still something of a question. I don't own one so I'll need to rely on people who do to test it out. I'd like to make sure that it works and that I have a good set of graphics for it so it looks reasonable. Just hoping that at least one of my friends is willing to help out. *wink wink*
The other issue I've been running across has been my ADHD kicking in wanting me to work on another small project and get it out. That's kind of what OttoJotts was supposed to be, so I hesitate to jump through the hoops to get something started only to end up on month 15 with nothing yet to show for it. I need to take a Kanban approach and just finish the work in progress and then work on the next thing. It's something I've struggled with for years and is once again rearing its ugly head. I wish I were more motivated to finish OttoJotts and get it done. Maybe I'm unable to complete things. Maybe I'm afraid of what happens if I do complete it (total flop). I don't know - it's just frustrating and adds to my stress level.
Anyway, lots to do at the "real job" (for now). I have tons to do still but I can actually pull this out if I can just get some focus on it. Send happy, supportive thoughts!

Sunday, February 27, 2011

New OttoJotts UI Ideas

I was in the shower today getting ready to pick up Cathy from a birthday party (no, not that one - we unfortunately missed that one *headdesk*). This was not her cousin Zavi's party in Laramie but my best friend Dan's son Matthew's 6th birthday. It was at Chuck E Cheese's and now that I've wasted far too much time with off-topic over-explanation, let me get back to the point of this post - user interface ideas for OttoJotts.
So while I was in the shower I began thinking back to the days when I used to play Jotto and what usually had to suffice for Jotto sheets when we'd exhausted our supply. We opted for legal pads, a ruler, and a pen. So this made me wonder - what if I made the UI look like a legal pad (or at least just lined paper) and then had all of the buttons and letters be handwritten? I think it might be "retro", but I think retro is hip these days (it's so hard to tell sometimes). PLUS, it's something that I, with my limited graphic artist skills could likely pull off. That was a definite benefit.
I think it would be very cool to have a slick UI like, say, Words with Friends, but I'm just NOT a graphic artist. Been there, done that, got my wrist slapped. I may just need to accept my limitations on this particular point (not that I ever thought I was a graphic artist). What does this mean for Alpha 4? Absolutely nothing. I'm sure I'll find ways to try to derail myself from actually working on code and work on the cool new UI, but it needs to wait until Beta 1. The alphas are all about functionality; betas are about polish. So that's kind of the thinking for, say, April. And I've got a cool idea for the badges, but that's later as well.
I guess we'll see how well I can keep this "shiny new toy" on the back burner. I've actually managed to get most of the friend and game creation code done and in, which was surprisingly smooth. There's still a lot of hardening that needs to happen, but I think that once I get into that mode it will be straightforward to do pretty much the same thing to every file. Plus, I need to make the code a little harder to exploit, which I hope I can get done with a minimum of fuss. Let's just hope I can keep up some of the focus here to make this project FINALLY successful.

Saturday, October 2, 2010

Alpha 3 Release

The announcement on Facebook!
It's official - I just sent out Alpha 3 tonight. I wish it were a little more solid, but I've been testing it for a while and it seems stable. I've had a couple of bugs that I haven't been able to reproduce, so I'm going to spend a little time this next build working on using the Build and Analyze functionality. The next version is going to be HUGE, so it's important to get it all working solidly.
As I posted previously, the UI and game play changes for Alpha 3 are pretty good. I've added difficulty levels (making the game a lot easier to actually play), and the UI is cleaner. I've also captured some things and sent it over to a designer friend I'm hoping will be able to help with the graphics and the layout. I feel like there are places where it's pretty good but that there are far more places where it's just clunky and not working at all.
Of course the big thing is that this should let people play a little more frequently as the game won't be quite as impossible as the original. Jotto was a pretty niche product (and my mom and I were firmly centered in that niche), but I think it just couldn't really excel as a game because of it's difficulty. I expect that the game will be much more approachable now and to a wider variety of people.
There is still one thing I need to sort out with the word list, though, which is creating a simple word evaluation page so that people can rate words as Easy, Medium, or Hard. That should help segment some of the much harder words from casual players. I'm hoping that some of my Facebook friends will be able to help parse the list (it's pretty extensive) and provide a basic clumping of words by difficulty. It should be a quick change to the code to enable that in the code.
The next big step (and the next Alpha) will be to have two player games, which entails a TON. I need to get user accounts set up, figure out how to deal with people who change phones but want to keep their information, creating friend lists, getting multiple games working, and, of course, manage the basics of having a server-based game as opposed to a device-based one. Definitely a big challenge, especially the back-end piece. Still, I'm hoping that I'll be able to get it done in time for Christmas - that's my big goal. Hopefully before Thanksgiving - that would be awesome.
So, now that Alpha 3 is out the door, I guess I better get working on Alpha 4!

Saturday, September 18, 2010

Potential change for Alpha 3 UI

Original Jotto (tm)
sheet
I've been considering the conundrum I've made for myself with this text coloring issue. I've not be able to get the text to display as I wanted without having to almost completely draw it by hand (and make using the Cocoa Touch classes worthless). I did, however, have something of an epiphany while deciding what to do. What I considered is this - what if the word the player picked was EERIE. Would a blue "I" be that terribly visible to a player? It would like very much like this: EERIE (the I is bolded in that word). In other words, yes, the word EERIE looks good when it's laid out in regular text, but for the game, it might make more sense to instead display the letters independently in boxes/labels, rather than try to just change the colors of individual letters. Stumbling upon this epiphany was kind of interesting. I had been, just to get the bloody thing done, considering doing some "lights" under the letters to show which were correct/right position, etc. But then it dawned on me that it's not a fixed font - it's proportional. Which meant that some letters, like W, would be very obviously green or blue, but that others, like I and J, would be much harder to see with colors.
Detail of the Jotto (tm) sheet
I had been thinking of NOT doing this but in retrospect it's what the original game does as well (as shown to the left). And yes, that was lifted from Wiki. Using the boxes (which will need to be dynamic, based on the number of letters in the game) will change the look of the game a little bit, but I think it will make it a lot cleaner in terms of what the player is viewing and should help simplify the display issues I was seeing. I just kind of wish that I had thought of this sooner.
On an amusing aside, before the advent of real word processors, my mom and I used to play this game a lot. Unfortunately, we ended up going through a lot of sheets and had an issue where we couldn't play without making sheets of our own. The places where we would normally buy the game didn't carry it anymore (it had sort of petered out in popularity by then), so we were kind of out of luck. There's only so much time you want to spend making tally sheets versus actually playing the game. My grandmother lives in New York (on Long Island) and there was actually a distributor of Jotto there on Long Island.
The notice at the bottom of the sheet
I recall the two of us driving there to get what felt like boxes and boxes of sheets. I then took those back with me to Laramie where we probably played a full box in the first two weeks I was home. Ahhh, good times.
I'm hoping this new direction will make things a lot easier moving forward. It should simplify the work that needs to be done and only slightly complicates the code (need to figure out which labels I'll be using for the different length words). Beyond that, though, I'm actually thinking I might be able to get this puppy done by Wednesday if things continue going as well as they have. Which they won't, so we're likely looking at Halloween. Here's hoping!

Tuesday, September 14, 2010

Alpha 3 Update (redux)

Things are progressing well on the Alpha 3 front. I've redesigned the create game logic now, so it's a little cleaner in terms of creating single player games (the two player games are targeted for next release). Overall I'm pretty happy - spent about 3 hours and redesigned how games are created, including difficulty level. I've got a weird bug where it's not cleaning up completed games, but in retrospect I need to think about whether I should even do that as I plan on having those available after you finish. At the same time, that might be all server-based, so I'll punt for now and worry about it later.
I've got the levels sorted out for the game (the screen shot to the right shows the difficulty levels available). I still need to get the UI changes in place for the new difficulty levels, but I don't think it will take too long to get that sorted out. Nightmare is easy as it's just a simplification of what I've already got. It's Medium and Easy that are going to require the most revision. I did find out how to do what I want to do with them, which is good. I'm planning on having Easy show you the correctly placed matching letters in green and correct letters but in the wrong position in blue. Everything else will be black. Medium will just show you which letters are correct (in blue), not whether they're placed correctly. Hard will be the game the way it is now and Nightmare will be hella-hard (pun intended).
I'm hoping to make some good progress this week and maybe even have the new version available by next week. That would be just awesome if I can pull it off. Then, perhaps, it's time to spend a couple of months making Alpha 4 with two player games. OooOOooo. Ahhhhhh. Ohhhhhh. (For those of you who went to the Colorado Renaissance Festival when Dextre Tripp was there, it all makes sense; for everyone else, just nod your head.)

Saturday, September 11, 2010

Alpha 3 Update

It's been over a month since I sent out Alpha 2 and the main comment back from testers was: this game is really hard! I've decided I need to focus for Alpha 3 on adding in game difficulty. It's something I wasn't really planning on doing quite yet (it was going to be after this next release), but I think that in order to get the most feedback and to make the game approachable I need to get difficulty levels sorted out.
There are two main changes I need to make to get it working. The first is that I need to redesign the "create new game" functionality. It's kind of clunky right now design-wise, so I'm going to delve into that and get it cleaned up and segmented a little better than it is. The second is that I need to change the main game screen UI to support the easier levels.
The current UI looks like the image on the right. It's obviously very basic (and not terribly helpful), but the idea is that you find out how many letters from your word are in the computer's word. For TOMBS, none of those letters are in the computer's word. FIRED and GLYPH both share one letter, but that letter may or may not be in the right place. (In case you're wondering, the "Debug" button in the corner will show you the word in case you get stuck - but just in the Alpha games.)
I'm envisioning 4 different levels of game play. The first - Easy - will show you which letters are correct and in the right place and also which letters are correct but not in the correct position. Medium will display which letters are correct, just not whether they're in the right position. Hard will be the standard game - you only see how many letters in your word are correct, but not which ones. And Nightmare (because I do love me some Quake and Doom) will only let you know when you place the right letter in the right position (but won't show which letter). Yeah - nightmare indeed.
This is going to require quite a bit of redesign to the UITableViewCell to display this additional information. Plus, the whole background for the game board is very bland and uninteresting right now - just white with controls on it. I think it makes sense to beautify it a bit so it's not so jarringly different from the rest of the screens. So Alpha 3 will be a significant release. I just hope that I can get it working in relatively short order. I guess I better get cracking on it...

Sunday, July 19, 2009

A Week?

It's been a week since I last posted an entry? Wow, time flies when you're behind the 8-ball. *sigh* It's been a rough week, but productive. Just not finding completion. The light is getting brighter, but I'm still surrounded by darkness. I have a deadline to get something out the door by Tuesday night. I hope that I can get questing done and perhaps get a stab at leveling by then. I believe that questing is close, but I haven't been able to finish it off yet. It's once again the integration with the iPhone code that's going awry. Plus I keep finding that I need to go back and re-factor a little more than I expected. It's good, in its way, but it's slowing progress.
One the alpha front, I do have several people signed up for testing. It's going to look reasonable for an alpha 1. There are obviously a lot more I want to do, but for an alpha it's a start. I do have several backgrounds in. Not exactly what I wanted stylistically, but they'll work as placeholders. I'm trying to write generic code since I expect to re-use some of it for a future endeavor, but that's also slowing progress. I know that one of the tenets of agile development is not to over-engineer things, but I find that it's not so much over-engineering as planning for the future development of the project. Since I know what still needs to be done and know that the game won't be released without those features, it makes it more of a necessity than one would normally expect.
Otherwise, things are progressing well but slowly. Inventory had a few gaps I needed to patch up before I could move on. I'd really hoped to have had more done (like the whole thing) by now, especially since Harry Potter 6 is out in the theatre (saw it last night). Still, if I can get something working in the not-too-distant future people may still be interested enough. And when the DVD comes out for Christmas (as is likely) I'll be well-positioned there, I hope.
That's the short of it. Questing is coming together and hopefully will be done soon. Then leveling. And then it's on to bigger, better things. And a LOT of testing. :)

Tuesday, July 7, 2009

Gotta Love It

When my brain doesn't work, it doesn't work BIG. Here's the problem I've been having. I have inventory UITableViewCells that show information about a particular item. I wanted to reuse the cells in both the store and the player inventory (I know - how very C++ of me). Anyway, I used overkill to get it done with one cell. I had some trouble getting the item type images (wand, spellbook, etc.) to load on the fly in the cell, so I decided to just use the big ol' mallet and created several different UIImageView objects - one for each type. Then, when the cell was displayed, I was going to just remove the ones that weren't needed from the superview and it would all be happy. (For the un-Cocoa-initiated out there, I made several overlapping images and then hid the ones I didn't want seen). This worked fantastically the first time I tried it and I celebrated exuberantly. Until I scrolled down and scrolled back up. And my images were gone! WTH man?! I mean, c'mon - it JUST WORKED.
So I was trying to find some other less-desirable way of doing it. Not that the way I came up with was in any way, shape or form a good solution, but enough of that. So I was thinking - okay, maybe I can create a different cell for each type of item. But that means that I'll need that many different UITableViewCell classes. And my re-use of cells gets a little nasty. And then it dawned on me - re-use. Because we're using a simple object pool for the items displayed (a small collection of objects that are created when needed and stick around and are re-usable), each of my cells after the initial creation are going to be the same cells. What I had been doing was checking the type of the inventory item and then removing all of the OTHER images from the cell - but I wasn't putting back the one that was needed. So when I created a cell with a wand, say, it would show a wand. If that cell was then used for a spellbook, the wand image would get removed. And then if I needed the wand image back it wouldn't be available - it had been removed.
Eureka! So, now it's back to what I had before with a few minor modifications. I just hope that Xcode has a pretty substantial undo operation list... :) Overall, though, it is more than a little hacky at the moment and I need to clean it up and hopefully make it better before I release this puppy. And yes, that's a reminder to myself. ;)

Wednesday, July 1, 2009

Simple Tasks Gone Awry

I've been working a little bit on what I thought would be a couple of simple things, but apparently not. I created a very simple splash screen to display while my app is downloading the XML files (and before the game is actually playable). I read in a few places that all I needed to do was create a file called default.png (or Default.png depending on who wrote it) and it would work automagically. Apparently not quite.
My second task to to try to get the game running on my iPhone. Because, you know, that's like where it's actually going to be played. :) So I followed Apple's directions on how to create an "ad hoc" release (as opposed to an App Store release). I installed it on Windows and sync'd my phone. And was told that it couldn't install Wizards. *sigh* Some poking around leads me to believe that it's a problem with iTunes 8, of all things, and that until Apple fixes iTunes I'm pretty much SOL. :(
The third thing has been going much better, though, which was creating the images for inventory items. That seems to be relatively complete now (LOTS of trolling the web for images). I'm not sure that I'm providing enough inventory items, but it seems like it's coming together. At least ONE thing is going as anticipated. :)
Lots more to do, but I want to get the splash screen done (I found a tutorial to try out) and then I need to start looking at character creation. Then I think it's time to build the DBs online and start pulling data from the net. And then the fun stuff - combat!

Tuesday, June 30, 2009

Some Good UI Progress and YAP (Yet Another Problem)


I went through and modified the befuddlement icon yesterday a little bit to make it a bit more compatible with the cool parchment background I found on DeviantArt. I've got a shout-out to the author - Sinnedaria - in my credits page. It's nothing fancy, but it's more effort than I was willing to put into making something and since she offered it for free (with a request for credit) I thought "why the hell not?" :)
I've updated the UI with the parchment background and with the new icons as shown to the left.
I think it looks a lot better now with the parchment background and with the blue for the befuddlement icon. And as you can see in this picture I've updated the UI to remove the "Learn" button for those spells you're not allowed to learn yet (based on your affinity level). I'm still not sure about the text color on the top (or in the cells themselves). I've been debating several different colors for things. I'm a fan of subtle coloring (probably from my time at Anark when Danc designed the Anark Studio 1.0 product. It had a lot of subtle hues and cool colors (blues/whites) that I really liked. The parchment background is going to be a little interesting to work with from a coloring perspective, but I'll find something I like.
I did, however, run into a little snag last night. I've been using my Windows machine to sync my iPhone (because I use Outlook and such). I've found a way to allow it to sync to multiple machines, but it's not completely functional and what I've ended up with is that whenever I try to sync to my MacBook it erases my music and videos. *sigh* Even with "Manually manage" turned on. Regardless, I thought I'd try distributing the Wizards app to my phone finally to play with it on an actual device. But I ended up with a weird issue that kept it from working correctly. When I checked the forums I saw that there was a known issue (according to the posters, not Apple) about iTunes 8 and Windows ad hoc deployments. If this is truly the case, this is going to be a major problem for me. Not everyone I know (in fact, very few) who's going to be in the Alpha program have Macs. Which means that I need to find another way to deliver the ad hocs - or wait until Apple fixes the problem. Which really sucks. I'm hoping that an alternative delivery mechanism will work, but haven't yet tested it. *sigh*
So, lots going on and making some good progress - on UI things, which I have to admit I hadn't planned to work on yet. Still, it's been gratifying to see some things working properly and more like how I'd envisioned them. Lots more to do and I still need to get working on the server to, you know, actually make the game work. :)

Monday, June 29, 2009

New Icon for Misc/Befuddlement/Hindrance?

I think that I might have found an icon that represents what I'm talking about. :) Here's the icon:
And here's the icon in situ:
The icon is from a free site and then modified very slightly. :) 
What are your thoughts? Does this seem to resolve the quirkiness of this type of spell?

Slight Hiccup

I've been working on finishing up the look on the spellbook and the one thing that's hit me is that I wanted to have an icon for each of the spell types. There are currently 3 types: offensive, defensive, and miscellaneous. Offensive spells damage directly to your opponent. Defensive spells reduce offensive damage from your opponent. And miscellaneous spells reduce the number of casting points available to your opponent. They're like distractions - dancing lights, quicksand, etc. - that prevent your opponent from being able to use all of their casting points. The trouble is that I'm in a bit of quandary. I was trying to come up with an icon that would represent these miscellaneous/distractive spells. Or should I just lump them in with the defensive spells? For the icon at the moment I'm using just a question mark, but it seems both lame and ineffective at communicating what they are.

In this particular case, should "Dancing Lights" be a defensive spell or should I keep searching for a separate icon? If I remove the category there are some somewhat drastic consequences that I need to address, so I think I'd ideally like to find a way to iconify this concept.
Any thoughts?