Archive for July, 2009

Created a mini-rpg! Or the first level/stage of a full rpg, depending on how one looks at it…

Wednesday, July 29th, 2009

Created a mini-rpg! Or the first level/stage of a full rpg, depending on how one looks at it…

It’s here:

  • Play in browser (needs Java applets enabled; no save or restore)
  • Download z-code (needs z-code interpreter such as frotz or xzip, note that jzip doesn’t support restore)

I’ve put quite a lot of work into making it easy to use. For example:

  • Most things (in theory, everything, but I know there are surely slips…) report what you can do to it, when you “examine” them
  • Locations report location-specific things you can do, like “buy” or “save”, when you do “look”
  • The cave map… I wanted it to be more than one room, but I didn’t want some endless maze, since any complicated map will be hard to remember, so, well, you can see for yourself how well the method works ok?

The game includes, well I kept it as simple as possible, to make it something I could finish, rather than just some impossible-to-finish thing, but it has:

  • two different weapons
  • three monsters, plus a boss monster
  • a simple quest to complete
  • a shop
  • health potions
  • a simple village
  • a simple dungeon
  • a simple battle system

It’s heavily based on Final Fantasy III, but that’s not a bad thing I feel since it means it’s something I can finish, and because Final Fantasy III was, and is, fairly successful.

It’s not graphical, you can’t have everything…

Figured out a way to save/load games across game versions

Tuesday, July 28th, 2009

Figured out a way to save/load games across game versions.

It’s using the information on this page.

I put in place an architecture so that I my restore and save routines run off the same method, so I won’t accidentally restore xp from the location I saved health to:

[ GlobalSerialize;
xp = Pack( xp );
level = Pack( level );
gold = Pack( gold );
player.serialize();
];

I also assign each object a unique sid, so that changing the game will have no impact on the ability to restore an old game, unless I change a sid – which would be silly! and is easily avoidable – or modify the serialization routines, which might prove easy to violate, but hopefully is avoidable, or workable around.

There is a savefile version, and I make sure that an older game won’t try to load a newer version of the savefile. I will hopefully be able to use this to handle modified serialization routines.

Technically this is not writing at all, but it’s kind of related, since it’s interactive fiction, which is almost related to normal fiction :-D

New version of fanjiechaodan, with list of things you can do

Tuesday, July 28th, 2009

New version of fanjiechaodan, with list of things you can do

Old version:

>x phone

Blue plastic telephone with large white buttons.
As you touch the phone, it rings.

New version:

>x phone
As you touch the phone, it rings.

The phone is ringing. Pick it up!

Things you can do to the telephone: answer.

You can play it in your java-enabled web browser here or download the z-code file and run it in a z-code interpreter on your computer.

Using z-code for rpg, prototype

Monday, July 27th, 2009

I built a teeny prototype of using z-code to build a text-based rpg, which can be found at:

simple rpg prototype

It’s fairly easy to write a simple text-based rpg using z-code, but the experience of writing the prototype raised a problem that I can’t solve at the moment: how to handle saving and loading the game?

z-code has inbuilt functions for saving and loading a game, but they won’t load a game saved from a different version of the same game. I tested tweaking the game in different tiny ways, and it refused to load an old savegame file under those circumstances.

I’m sure very few people would want to have to restart an rpg right at the start every time there is some slight tweak to the game!

First adventure story! Fanjie chaodan: cooking a chinese dish

Monday, July 27th, 2009

First adventure story! Fanjie chaodan: cooking a chinese dish

I’ll let the adventure tell the story for now, other than what the title tells you.

I’ve tried to make it:

  • Simple enough to finish writing.
  • No pointless, stupid deaths. Actually, in theory, you can’t die.
  • I’ve tried to make it so that it is fairly easy to follow along, with enough clues, rather than random obscure puzzles with no clues.

You can play it directly from your web-browser if you have Java enabled, or you can download the z-code file, and an appropriate z-code interpreter.

Interpeters to play the raw z-code file:

  • For Windows, you can use Frotz
  • From ubuntu, you can use jzip, which you can get by doing: “apt-get install jzip”
  • For other systems (Palm, PocketPC, Mac…), you can check here

Adam Cadre’s Interactive Fiction

Saturday, July 25th, 2009

Just stumbled on this site, whilst looking for games I can play on Ubuntu on a seven inch netbook:

Adam Cadre’s Interactive Fiction

Looks interesting. Haven’t investigated very far yet. Intriguing concept. Is this a medium that could be interested to write for?

Finished last week’s story. 21,000 words of planning for 6,000 words of story…

Tuesday, July 21st, 2009

Finally finished the story I started last Tuesday. It’s based in the Borabo world, only hopefully it’s a little less sexual, and the plot is a little stronger…

It’s hard to write in this imaginative world. It took 21,000 words total of planning in order to produce 6,000 words of story…. Hard work! I thought I would never finish. 7 days of writing for one single story!

Got another rejection from Clarkesworld Magazine :-/

Monday, July 20th, 2009

Got my second rejection from Clarkesworld Magazine :-/

To be honest, I was kind of expecting this story to be rejected, since it wasn’t really technically sci-fi, but on the other hand I was kind of hoping to get a form rejection, and for that form rejection to be different from my previous rejection.

But it wasn’t.

Were they both “near misses”?

I checked on the Clarkesworld forums.

No, they both received standard form rejections. Crap :-/

On the good side, I guess that means if I do one day get a “near miss”, it will be worth celebrating :-)

Dean Koontz – Darkness in my Soul

Monday, July 20th, 2009

I read about half of “Darkness in my Soul” by Dean Koontz.

I felt that the writing style at a per-paragraph, per-sentence level was of a really high quality.

Nevertheless after reading about half-way through I stopped. I’m not sure exactly why.

I liked the premise, I liked the writing, but ….

I feel that possibly it is so chaotic that it just messes with my head.

Warning: spoilers.

The protagonist has these really cool powers, but rather than using them, letting us enjoy seeing him use them, Ploof! straight into some horrible dark scenario.

The people around him are not fun. There is a girl, but we barely glimpse her. She has no personality. She is just a face I feel, in fact, I feel, not even a face. Just a sexual object I feel.

The only person he is almost close to – his boss in fact – is fairly distant I feel. We don’t see them joke together, or go and try to find girls together, or anything.

He has I feel no soul mate. His only possible soul mate appears to be his nemesis. Maybe they get together later in the book, but I’m already half-way through, so it is a bit late for them to get together and hang out for a while ;-) though I’m not ruling it out.

I feel I would prefer the book if:
- he had a soul-mate
- he got to use his powers for a bit, have fun, chill out
- and then, at that point, maybe this nemesis comes along

I found the story a little bit too dark, a little bit too cold.

Criticisms versus Encouragement

Sunday, July 19th, 2009

Someone asked me the other day why I joined Critters. Well, I joined to make friends. Not only, but that was a primary goal. How’s it going? Pretty well actually.

The crits one receives are themselves fairly useful, but ultimately, if you receive 20 crits, and some of them say nice things and some of them say that the writing is not worth printing on toilet paper, what do you do? Well, ultimately, you have to make your own mind up about which opinions to listen to most, so really, it boils down to being one’s own judge …

I tried to start making a list of those critters who have given favorable reviews to manuscripts that I have enjoyed, manuscripts not written by me, but there’s a lot of critters, so that hasn’t got very far yet.

I feel that the greatest gift one can give a writer is encouragement. Ultimately, a writer has I feel to write stuff that they enjoy, that gives them personally pleasure, because there is I feel no “magic bullet” to suddenly make someone write brilliantly. There is a fairly surefire to get good, and that is: practice and persistence.

And that is why I feel that the greatest gift one can give a writer is: encouragement.