So I've taken a bit of a hiatus from Daimyo, but just briefly. I'm working on the prototype to a new game that I'll reveal when it's done. I'm going back to Objective-C for iPhone work and, honestly, it's been a bit of time since I worked on anything about it. Good thing is that things are coming back a little faster than I thought it might. I need to get back to some of my reference books, though, because I want to do something that's not really "standard" now (of course). Overall, though, it's coming along nicely as a prototype. I didn't actually think I'd be able to knock this out as quickly as it's been going.
Also had fun checking out an interview with Natalia and Keith at Imangi studios. Ready Set DC did a profile on them and it was quite nice to read about some folks I've been following on Twitter because, well, they're awesome but also the kind of people I could see hanging out with on a Friday. :) The link to the article is here.
So, things are progressing well with the prototype and Daimyo is after that. I think that the weekend may see the completion of the proto, which gives me a week or so to actually knock out the product and get it in people's hands. Then it's off to make the pay version (the proto is of the lite version) and then, maybe, get it up on the App Store.
So, there ya go.
The story of a small development company working on iPhone and Facebook games. You'll find the ups/downs/ins/outs of working on iPhones, Facebook, and general life. Come join the journey!
Friday, April 30, 2010
Sunday, February 21, 2010
OMG but time does fly...
Well, it has been a very eventful 7 months... First, my gig at Examiner took up MUCH more time than I thought it would. I guess the first day should have been a preview of what was to come - I came into the office at 9 AM and left at 9 PM. For a while there releases were taking a VERY long time - up until midnight a few times - but since December they've been very reasonable, mostly taking place during the workday where possible. I guess that's one thing I can look at postively. :)
On the down side, we've had a lot of shakeups in the group. First, we bought a company called NowPublic in October. Their management team became our management team. This isn't usually a terribly bad thing, but let me put it this way. NowPublic was a $10 million company. Examiner is a $100 million company. The NP management style is still a little on the nascent side and, honestly, with my having come from organizations like HP - they don't have a management style. They hire contractors and delegate tasks, but there's no employee development, no interest in the employee - because they're contractors. Unfortunately they inherited a team of 12 developers who are employees (well, for now). *sigh* Beyond that, my manager, the VP of Technology, was let go a couple of weeks ago. It was a bit of a blow to morale for the group because all of them had been hired by her and she was one of the original employees of the company - nearly a founder. Morale's been pretty crappy since her departure.
In the meantime, I am once again looking at making the Otto Von thing viable. I've put the iPhone apps on hold (temporarily) while I explore a couple of other ideas. I've published a game on Facebook called Secret Agent - East vs West. It's a spy game set in 1985 using Social Game Studios framework. Yes, you did read that correctly. I actually FINALLY published a game! It's been slow to get adoption, but I haven't really been advertising it strongly. I'm thinking that my work on the other game currently under development will be stronger and more viable. It's a feudal-era Japanese game called Daimyo. The goal is to try to conquer the different regions of Japan and become Shogun. It's coming along nicely, but once again I'm running into personal skill limitations. *sigh* A continuing theme. I've posted up a request for some help from both a UI Designer and a Web Developer on gamedev.net (link posted here). If you happen to know of anyone, please let me know. I'm looking to share profits on this - just need to get some people who can do a little of everything.
Anyway, it's all starting to come together. Slowly, albeit, but hopefully it will be picking up momentum in the short-term. I hope I can look back at this post and the 7 month gap and think - "wow, that's when it all turned around". *fingers crossed*
On the down side, we've had a lot of shakeups in the group. First, we bought a company called NowPublic in October. Their management team became our management team. This isn't usually a terribly bad thing, but let me put it this way. NowPublic was a $10 million company. Examiner is a $100 million company. The NP management style is still a little on the nascent side and, honestly, with my having come from organizations like HP - they don't have a management style. They hire contractors and delegate tasks, but there's no employee development, no interest in the employee - because they're contractors. Unfortunately they inherited a team of 12 developers who are employees (well, for now). *sigh* Beyond that, my manager, the VP of Technology, was let go a couple of weeks ago. It was a bit of a blow to morale for the group because all of them had been hired by her and she was one of the original employees of the company - nearly a founder. Morale's been pretty crappy since her departure.
In the meantime, I am once again looking at making the Otto Von thing viable. I've put the iPhone apps on hold (temporarily) while I explore a couple of other ideas. I've published a game on Facebook called Secret Agent - East vs West. It's a spy game set in 1985 using Social Game Studios framework. Yes, you did read that correctly. I actually FINALLY published a game! It's been slow to get adoption, but I haven't really been advertising it strongly. I'm thinking that my work on the other game currently under development will be stronger and more viable. It's a feudal-era Japanese game called Daimyo. The goal is to try to conquer the different regions of Japan and become Shogun. It's coming along nicely, but once again I'm running into personal skill limitations. *sigh* A continuing theme. I've posted up a request for some help from both a UI Designer and a Web Developer on gamedev.net (link posted here). If you happen to know of anyone, please let me know. I'm looking to share profits on this - just need to get some people who can do a little of everything.
Anyway, it's all starting to come together. Slowly, albeit, but hopefully it will be picking up momentum in the short-term. I hope I can look back at this post and the 7 month gap and think - "wow, that's when it all turned around". *fingers crossed*
Tuesday, August 4, 2009
Rough Few Weeks
I've been working on trying to get the Alpha 1 ready for release to my test team, but several things have blocked me. First was that I was in the process of interviewing for a project manager position with Examiner.com. The position sounded very exciting and challenging, so I thought I'd pursue it. I ended up spending quite a bit of time preparing and interviewing it - longer than I expected - but it was a good choice and I start tomorrow. Yay me.
The second thing is that I ran across some unfinished functionality in the app when I plugged in quests, mana pool regeneration, and leveling up. MP regeneration went as quickly as I expected, which was nice. Quests took a while longer because even though I was able to write the back-end code quickly and had it working where I could test it thoroughly, integrating it took far longer than I expected. Part of it was the UI, which didn't work the way I'd hoped, and the other part was that I ran into some memory issues.
The third and most major of the entire blockage has been my MacBook. I bought a MacBook in November to do iPhone development and it was working fine until just recently. I began seeing major slowdowns - to the point where it was unusable - and had trouble copying files and building properly. I was a bit concerned when I couldn't even boot it up one day. I took it into the store and they think it's a bad HDD so they've ordered a replacement. In the meantime I hit Best Buy and bought a MyBook external HDD (1 TB). I managed to back up everything manually - although I can't actually do a Time Machine backup. :( Regardless, when they replace the drive I can get things working quickly again, I hope.
So, I hope to have things ready this weekend. We'll see how that goes, of course. More to come!
Monday, July 20, 2009
Happy Moon Landing Anniversary
Just a quick note to commemorate the landing of Apollo 11 on the moon 40 years ago today. I was but 15 days old when they landed and there is photographic evidence of me watching the landing (live in color from the moon on our black-and-white TV set :).
Twelve men walked on another celestial body. Let's hope that we'll soon be doing it again. Congratulations not only to those twelve men (and the six that flew above them in command modules), but the thousands that designed, built, and maintained the ships that flew them to them and safely back again.
Labels:
personal
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. :)
Sunday, July 12, 2009
CodeSigning Hell
The best advice I can give to anyone who wants to develop iPhone applications is: When you get an error, READ THE ENTIRE ERROR MESSAGE VERY CAREFULLY. Here endeth the lesson.
I had decided to update my code signing certificates for the alpha that will be starting in the not-too-distant future. I also wanted to try to get it building for distribution on OS 2.2 devices because one of my testers is on an iPod Touch that costs $10 to upgrade to 3.0. Eventually I will need to move completely to 3.0 to get the in-app purchasing I require, but for now, compatibility is a good thing.
I made some new certs, read the instructions carefully on the Apple Dev Portal and things were going along smoothly. I had a bit of a hitch when I forgot to copy in the distribution and developer certificates to Xcode, but that wasn't too heinous. Then I tried building for 2.2. Error. And something that seemed completely odd. CodeSigning was complaining that I hadn't provided a certificate for 'Distribution' for SDK 'Device - OS 2.2'. Um, sure. Not terribly helpful. Can I build OS 3 builds? Yes - no problem. OS 2.2? No. I checked the build settings - yup, there's my certificate, it's setup for all iPhone Devices... What's your damage, Xcode? Okay, fine. You win. I'll ADD a special exception for OS 2.2. Bzzzt! Still not happy. What the HELL, man? C'mon, give me SOMETHING.
*sigh* After beating my head against it for a while, I went back and looked at the steps. Yes, I did that. And that. And thanks for the warning about making sure I did that - I did. Okay, let's Google it. I have to completely reset my Xcode to make it happy? I'm not sure that's the right answer.
Okay, one last time. Let's close Xcode, reopen, and try building it again. Nope. As expected, the same error. But wait. What does that error really say? Seriously? What configuration am I editing in the properties? DEBUG?!?! And it needs to be DISTRIBUTION?!?!?! *sigh* *facepalm*
So, let's make sure we're editing the configuration for Distribution and attach the certificate for all iPhone devices. Okay, Xcode, let's see if that makes you happy. And it does. And had I bothered to read the error message and double-check to make sure that I was actually editing the correct properties, life would have been better. But, thankfully, now it is.
Here endeth the lesson.
Friday, July 10, 2009
Good Progress
After resolving my problems with the modal view this morning (MUCH faster than expected), I spent a lot of the day working on integrating my server back-end with the app. Things have been working well there, but I've got a little left to get sorted out. I've written a lot of server code recently, but thankfully I had some code base to work off of, so it hasn't all been new code. As things stand now, I'm hoping to get questing started tomorrow. Once I get quests in I think we can start looking at doing an alpha. :) There should be enough stuff that people can start playing with it. There are still quite a few gaping holes, but there is a light at the end of the tunnel. I'm thinking that if I continue on with the rate of progress I've been making I should be able to stick a fork in this thing by the end of the month. A lot behind when I wanted to get it done, but about in line with how long iPhone apps take to develop and test.
Anyway, it's been a long week but I've managed to get some things accomplished. Now I'm into the more mundane database work that I know pretty well, so things may start to pick up a bit. That's my hope. And my hope, certainly, springs eternal. :)
Finally Working
The rabbit holes I went down were for naught. I found a much easier way to do what I wanted to do - presentModalViewController. I had been trying to hide the tab bar and swap the views and a whole lot of other rigamarole trying to get a very simple concept working. And one that I had seen other applications use before.
Regardless, it's all done and working now. I need to add a page with some verbiage about the game and the types of magic and such, but the main flow is in, working, and looking reasonably good. It just took a different Google search to find the answers I was looking for. :)
*sigh* I guess a good night's sleep really did help rejuvenate and restore.
Thursday, July 9, 2009
Differences Between Windows and Mac Development
Well, after beating my head against a problem for like 6 hours today, I have finally gotten back to where I was... 6 hours ago. *sigh* Okay, it's not that bad. I do have some other work that happened in that 6 hours that's still around, but I made one change in the program and Bam! I felt like Elzar cranked my head up a notch with a spice weasel.
I was creating the character creation screens which are shown only if it's your first time running the game. I need to make it so that it's modal - meaning you can't avoid it - so I needed to do it before you had access to the tab bar. And things were going along well. I had a root view controller that was handling both character creation screens. I got my locations displaying for people to select where they wanted to start... It was going along great. And then... BAM! Spice weasel.
I had added the root controller's view to the main window as a subview. This seemed reasonable and rational and worked wonderfully. But I couldn't seem to remove it and add the tab bar. The tab bar simply refused to display. So I went down a whole clutch of rabbit holes trying to figure out a way to get the tab bar to display AND have the character creation pages come up. And then I managed to get so far down the rabbit hole I got stuck and couldn't find the way out. I hit up a friend of mine who's on Facebook - Don Metzler. He owns his own consulting business and we've known each other for almost a decade now. He's a Mac programmer AND a Windows guy, so he's familiar with the benefits and detriments of both platforms. He and I went looking at the code and tried to get it back to where it was semi-working. And, thanks to the chat, we got it back there. Yay.
What this pointed out to me, though, was one of the things that I really have to laud (that's approve) Microsoft for doing. They make all of the MFC (Microsoft Foundation Classes) available as source code. So when you're deep in the bowels of a combo box you can figure out why your particular hook isn't getting called, you have the proverbial snowball's chance to figure out why. With Apple, on the other hand, there's a sort of mystique to the internals. You don't get to know what happens in there and some things happen so automagically you can't possibly figure out how to replicate it.
Case in point: when you attach a tab bar controller to a MainWindow.xib file, there's some special magic that happens inside Apple's foundation code that hooks everything up. You get all of your view controllers laid out, the tab bar looks good, and things happen without having to write any extra code. If you try to replicate that, though, things kinda go south quickly. I found a few people online trying to do what I was doing (albeit slightly differently), but they ran into the same frustration I did. Had I access to the source, I could have replicated it and avoided the spice weasel. Instead? BAM! Spice weasel.
I've finally gotten back to where I was 6 hours ago in terms of the main game play. I need to spend tomorrow morning going through trying to hook up the character generation screens but at least they're done - I just need to get them to display and that will hopefully not involve a spice weasel and my eyes. :)
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. ;)
Subscribe to:
Posts (Atom)