I have been working on several aspects of this project this week… actually, I had the week off from from work and I’ve been doing a lot of things.
I finished Assassin’s Creed 3. I still have to go for full sync, and do some of the nautical missions, but I’m pretty pleased with myself.
I’ve been working on a couple pieces of fiction. (One for Game of Slaves, and one for Acteon.)
I’ve been looking at the Inform7 interfic processor (since there’s a Java applet which can be embedded into webpages), and I don’t think it’s what I’m aiming for. I want to avoid the noun-verb text parsers.
I cannot find an easy to use Flex IDE that won’t cost me $800, so I guess Flash/Flex are out of my league for the time being.
Looks like I’m back to Java, unless someone out there has a cheaper / better alternative for me.
-C
(P.S. Still alive and kicking. I will have more to show for my time, soon.)
As I sit here, waiting for something VERY boring at work, I had some time to ponder this project. Truth be told, I ponder this thing quite often.
When I first realized how I could do this, and make it work from a design standpoint, I was quite fired up and ready to go. So much so that I paid for the domain name and started reserving the userID on various social networks. Not all of them, I know, but the ones which are most important to me.
I had certain goals in mind with this game, and I hope to accomplish the most important ones, but I don’t want to give up on the smaller ones. Maybe I’m just greedy. (Okay, no “maybe”.)
As development stands, I’m at a bit of a standstill. I’m seriously torn between Java and Flex. Anyone have any ideas? (I’ll be posting the question to Fenoxo’s general “Adult Games” forum. If you’re reading this from that site, WELCOME!)
I’m working on a piece of short fiction to help present some of the content I’ve been working on. It’s pretty generic now, but it will tighten up with time. I think I’ll post the fiction before I post my general question on Fen’s forum. (Sneaky me? Maybe. We’ll have to see if my ploy works, first.)
– Cam
It’s been over a week, so I’m pushing a public post for one and all to see.
I’m still looking for the key tools to make this work.
I’m also still working on ways to balance my desire for detail versus my desire to have a playable (not slow) game.
Also, NOBODY (at the time of this posting) has answered my Poll. Little frustrating.
So, development continues.
And a big thank you to those who have subscribed, and those who keep coming back to see if I’m posting releasable code.
I updated my “About” page a few weeks ago, and… umm… I never actually published the updates. This means that everyone was left looking at a fairly non-informative page.
So now I have to wonder how many people didn’t get info about the project… and won’t come back.
Bummer.
Once things pick up, I figure I won’t hurt for traffic. 🙂
It’s frustrating that I’m putting so much into this and I don’t have much to show for it, yet.
The flipside is that it’s an “investment”, of sorts. I’m banking time and energy on the expectation that there will be a big payoff down the line. Like many investments, it may not pan out as I expect (and hope)… but I am an optimist. 🙂
This weekend (between playing Assassin’s Creed III), I spent some time looking at stats/attributes I wanted to keep and those I figured I could actually use. I have so many nice ideas and details, but I don’t want to become bogged-down by those same details.
There are plenty of games which are fun, yet simple. So why do I relish the notion of tracking so many details?
One thing I learned about making programs, was that each feature (especially the ones that seem really small and simple) can be among the hardest and most investive* on the part of the programmer. (Example, from years back — Putting a mouse cursor on the screen can be a challenge, but adding a shadow-effect to make the cursor look like it’s floating above the screen doubled the size of the code — for a single feature, which most people didn’t use because (at the time) it slowed the computer!)
My goal for this game is to have it be simple on the player, yet detailed. More detail means potentially having a more unique and engaging story and playing-experience, which happen to be things I like. As I’m re-discovering, more detail means a lot more work on the part of the programmer. What can I skip for now, but leave room to add later? It is tempting to drop a lot of detail to begin with, and then add it in later.
I foresee another poll!
*– Huh? Investive isn’t a word? Bah. I learn something new, every day. …or maybe I just like making up new words. Maybe I should start another blog: “Words I use, but aren’t in my spellcheck dictionary.” WHAT?! “Spellcheck” fails my spellcheck, too? Wow. I guess there are some days when you double-up on that learning thing. 🙂
Just a quick blurb about numbers and expectations.
OUCH.
I spent a couple of hours playing around with one of the Interactive Fiction engines. I generated a single encounter and a set of interactions which utilized a Skill-Attribute set for the Player and the Antagonist, each. I then generated a random number pair (modified by skill) against a target difficulty (opponent’s attribute) to get a “SucceedBy” value. I then compared the SucceedBy value and whoever succeeded by more (if a positive value) succeeded.
Example: Player is not very attractive (Beauty=8) but has Seduction skill at 3. Trainer has SelfControl of 12, but he’s pretty horny which gives him a -2 to that stat. Player’s combined roll is 9 (+ 3 for skill) = 12; she succeeds against his 10 (12 – 2) by 2, giving her a SucceedBy of 2. Trainer’s combined roll is 14 (-2 for horniness) = 12; he succeeds against her Beauty of 8 by 4, giving him a SucceedBy of 4. He wins at 4 to 2. He shrugs off her crude attempt to get his brain to travel below his shoulders.
Fairly involved math, but should be quick. It took the InterFic parser 1.6 seconds to process the math. (Actually, I did ten iterations and it took about 16 seconds.)
UGH.
I’m not sure if:
- my math process was faulty;
- I’m expecting too much detail from a “simple” game; or
- the parser just can’t handle that much behind-the-scenes data manipulation.
The main reason this is a concern for me is if I try to get into repeated contested challenges (like above) for something like combat, then the parser will crawl to a near standstill and that doesn’t make for a very engaging experience.
I’m currently playing an InterFic that runs on RAGS. It’s a transformation-themed game so when you shift by too far then your clothes stop fitting properly. (Cool feature, btw!) You can get this resolved by visiting the Tailor and having your clothes adjusted to fit your new form. (Cooler feature!) Makes sense! However, were I’m at in the game it’s frustrating that I have to visit the tailor every game-day… because it takes 25+ seconds to adjust my entire wardrobe (30+ items).
One second per item is no big deal, until you engage in a series of actions that cause game experience to shift into slow-motion from an otherwise smooth flow.
So my research continues as I look for ways to make a good experience without sacrificing my desire for realistic(-ish) detail. 🙂
Thanks for reading!
When I started this project, I made a personal commitment to keep current on my public posts here. Since it’s been a smidge over a week without a public post, I felt it was time for an update.
It might be a fluff update, but this is still an update. (A “fluff-date”? Did I just coin a new word? Hm…)
I am pursuing my research on this project, and I don’t intend to let go.
I am still torn on what methods I want to use, but I suspect a Flash/Flex front-end on a PHP back-end might work really well.
While I’m researching my interface style / process engine, I am also working on the internal math to be used with the user interaction and the character attributes.
At first, I had planned to hard-code all the encounters. It didn’t take much thought for it to make more sense to work on a coder / decoder that will interpret encounter info and process it. (Sorry for the grammatically crazy sentence!) This way, I will just have to focus on writing the encounters once I get the core and interface completed.
So maybe this this isn’t as much of a fluffdate as I originally thought. 🙂
Thanks for reading! As long as there are updates, this isn’t a dead project!
(P.S.: There are non-public posts being made, but they’re mostly for me so I can keep track of my thoughts as I develop the game.)
Latest news: Research continues
Wait. I think I covered that in the post title. I guess I believe it bears repeating. I digress, so let me get back to the update. (Note to self, consider deleting this paragraph. It is fluff !)
(History lesson about me: I have been coding / programming since my teens. I took to it quickly, and learned a variety of full programming and scripting languages. (I can still code in COBOL, but I’d rather not.) During that time, I found several options that worked well for me and I stopped taking on new ones. Then, the Internet arrived. I’ve been able to get my programs to work within the environs and work along with them, so I still had no need to learn new languages. I simply adapted my skill-set. I am not a programmer by trade, but I kept my skills sharp with various activities.)
I spent a good portion of my week (when not working) studying more about web app development and such. I started off with a pretty good idea of what I wanted to do, and was fairly open to ideas on how to achieve it. …with one exception: I didn’t want to use Flash. My reasoning was pretty solid at the time: it’s proprietary; it’s not an open standard; it won’t work on iPhone / iOS, which happens to be pretty popular, I hear; did I really want to study and learn a limited-use language; speaking of limited, it’s for graphics-based and arcade-style games; and, of course, it was “Just Flash”.
Mea culpa. (Tr: I’m guilty / my fault.)
So I got curious and went to Google (my long-time friend), and asked about Open Source alternatives to Flash.
Hello, Flex!
Flex is Open Source, based on a standard, works on iOS, is being used to create Rich Internet Applications, and is far from being limited to games. …oh, and it creates Flash executable files in the .SWF format. (Thanks, Google! Sorry, Flash!)
To summarize, I’ve been learning the basics of Flash / Flex, after covering PHP in some depth, too. Also, I strengthened my weakened database skills and built up a good familiarity with MySQL.
I can seriously see building Game of Slaves in Flex / Flash / ActionScript 3. With the tools provided, and my creativity, I can build the primary engine and spend more of my time focusing on content.
– Cam
My planned processes for how things will work in Game of Slaves will require a lot of random number generation and database access. Fortunately, MySQL can handle the database hits like a champ. Unfortunately, random numbers are hard on the host server. One suggestion I found was to generate a good sized list of random numbers, then have the game engine just pull from that list.
There’s definitely some merit to that notion, but I am concerned about repetition once you reach the tail end of the list and loop around to the head again.
I guess I’ll have to wait to see if realtime generation of randoms has an actual impact on server performance.
…of course, this is not an issue if I use Java… Hrm.
(As a side note, up until now, I was leaning toward using PHP or Perl. BLAST IT!)
– C
