Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

American Hare

Kingston

Arcane
Joined
Jan 13, 2007
Messages
4,392
Location
I lack the wit to put something hilarious here
I'm a sucker for codenames (Icarus, Achilles), so I liked it a lot. His motives don't make much sense, though. Why would he think the soul of the rabbit would take hold of his most succesful creation? How does he define the most succesful creation? Wouldn't he keep on making them forever?

I know its not serious business, its humorous aswell, but the motives could be worked a bit better. Icarus was a normal rabbit, if he was trying to recreate his favourite bunny why would he splice humans and shit together with him? Why an enhanced replacement, why not just try and get his old bunny back?

Perhaps he digged up the remains of his rabbit later, tried to clone it, but was unable to do so. The DNA had been too contaminated or whatever. So he tries to fill in the gaps in ye olde gene code with strips of different animal DNA (very Jurassic Park here), finds that human DNA works best and thus tries to make an intelligent version of his rabbit, with whom he could converse. I dunno, I'm no story creator, I just the motives don't exactly explain his actions.

I really like the idea of Icarus IV being confused for a demon by some mexican (I'd like him to be mexican or spanish) priest. That's plausible, actually, and somehow down to earth.

Anyhoo, sounds like something I would play.
 

cardtrick

Arbiter
Joined
Apr 26, 2007
Messages
1,456
Location
Maine
If I were to write you a game engine and an editor for this, would you re-consider making the game? Similarly, would anyone else be interested in making the same kind of game?

Elements of the engine I'm thinking about:

Text-based, but with menu options rather than an IF parser

Support for RPG mechanics/stats

Support for displaying static 2D pictures, possibly with some simple transitions/effects, but definitely not a full-blow 2D graphics engine

An open-source license, as flexible as possible while still allowing me to use existing libraries . . . I'd prefer to have it be public domain, or at least a BSD/MIT license, but may have to go for LGPL depending on the libraries I need to use. I'll try to avoid GPL (not that anyone would be selling a closed-source game like this in this day and age, so GPL is probably no big deal), but I'm not making any promises on this.

It would be written in C#. This is non-negotiable. Depending on interest, I might make it cross-platform (running on Mono, rather than .NET). On the other hand, if being Windows-only isn't a problem, that allows use of a much prettier, easier to modify, and more themeable WPF-based interface rather than WindowForms. Third option would be writing it to compile for Silverlight 2.0, which would mean the games could be run in a web browser (at least on Windows and Macs . . . Linux support is still forthcoming, although it should be here within a year).

On the other hand, I'm planning to include a scripting language. More than likely, this would just be Python, Lua, or Ruby rather than making one of my own.

Basically, I'm thinking about an engine designed to work for American Hare, a choose your own adventure game, a Darklands clone without its isometric combat, or King of Dragon Pass.

Is that appealing to anyone? As some people know, I've been learning C# and programming in general, in preparation for eventually working on a full-blown 3D game. But before I get to working with a "real" game engine again, I want to undertake a mid-scale project to get some experience with actually working with a lot of code at once and the development cycle as a whole. I was originally planning to write a general-purpose dialog editor for RPGs, but I think a game engine like this would be of similar complexity and might be both more fun and more useful. I would be learning as I went, so I wouldn't expect huge quality, at least not from the start. On the other hand, I'd be following an "agile" methodology, so I would be releasing versions of the engine and editor every few weeks with incremental improvements, which means someone could start working with the engine long before I finished it.

But I don't want to bother with this if there's no interest, since the dialog editor would probably be of more use to me personally. On the other hand, I'd love to have a playable version of American Hare, and it would be great to have a way for people to easily make interesting little mini-RPGs. Let me know your thoughts.
 

Jasede

Arcane
Patron
Joined
Jan 4, 2005
Messages
24,793
Insert Title Here RPG Wokedex Codex Year of the Donut I'm very into cock and ball torture
I like how people pretended that this really exists (as an idea) and played along with Chefe/Angler for eight pages. Really nice forum RP on both sides - for someone who doesn't know this place it might be hard to tell that Chefe never, ever intended to make a game like this. It's a joke, and a very good one. Salute!
 

Sovy Kurosei

Erudite
Joined
Dec 29, 2004
Messages
1,535
Angler said:
What did everyone think of the potential backstory? Good or bad?

Pretty much what Kingston said about the motivation behind creating animal-human hybrids instead of the good doctor just cloning his bunny whole.

cardtrick, whatever happened to your game development experiment?
 

cardtrick

Arbiter
Joined
Apr 26, 2007
Messages
1,456
Location
Maine
Sovy Kurosei said:
cardtrick, whatever happened to your game development experiment?

I decided to step back and learn how to program first . . . thus looking for a smaller project to attempt before going back to game development.

You know that advice about how you should start from the ground up, learn to do things the right way, design things before starting to work, etc.? Turns out it's true.

Jasede said:
I like how people pretended that this really exists (as an idea) and played along with Chefe/Angler for eight pages. Really nice forum RP on both sides - for someone who doesn't know this place it might be hard to tell that Chefe never, ever intended to make a game like this. It's a joke, and a very good one. Salute!

I actually don't care whether he intended to do it or was screwing around from the beginning (and that complaint he made about the "state of the rpg industry" certainly supports the idea that it was a joke). Whether it was a real idea or a fake idea, it was a good idea. I could have fun playing a game like this, and it's also easy to imagine a fairly normal RPG fan having fun making this kind of game, especially with a half-way decent engine and editor. It would be nice to have a community centered around building and playing of this kind of story-based text-and-picture RPG, the way there is for roguelikes and IF -- personally I find the thought of this kind of game more appealing than either of those.
 

Chefe

Erudite
Joined
Feb 26, 2005
Messages
4,731
Does it matter if the idea was a joke or not?

Kingston said:
I'm a sucker for codenames (Icarus, Achilles), so I liked it a lot. His motives don't make much sense, though. Why would he think the soul of the rabbit would take hold of his most succesful creation? How does he define the most succesful creation? Wouldn't he keep on making them forever?

I know its not serious business, its humorous aswell, but the motives could be worked a bit better. Icarus was a normal rabbit, if he was trying to recreate his favourite bunny why would he splice humans and shit together with him? Why an enhanced replacement, why not just try and get his old bunny back?

Perhaps he digged up the remains of his rabbit later, tried to clone it, but was unable to do so. The DNA had been too contaminated or whatever. So he tries to fill in the gaps in ye olde gene code with strips of different animal DNA (very Jurassic Park here), finds that human DNA works best and thus tries to make an intelligent version of his rabbit, with whom he could converse. I dunno, I'm no story creator, I just the motives don't exactly explain his actions.

I really like the idea of Icarus IV being confused for a demon by some mexican (I'd like him to be mexican or spanish) priest. That's plausible, actually, and somehow down to earth.

Anyhoo, sounds like something I would play.

Simple answer - Doctor Gold is mad. The way he keeps himself alive for so long is part of this, and his childhood is another. He joins forces with some rather unscrupulous governmental employees, creating a relationship where both parties believe they are exploiting the other to get what they want.

Some things have no solid answers, especially when dealing with madmen. With the right skill, you could convince him that there is no reasonable way to discern whether the soul of his first rabbit inhabited the body of one of his experiments. You could convince him to cope with the death of his dead rabbit and dedicate himself to the pursuit of beneficial science. Or maybe you're an evil bastard and convince him to kill himself for his failure and dilusional thinking.

Or maybe he could convince you to believe the mere fact of realization, and your desire to seek him out, makes his artificial prophecy true. Then one of the possibilities is that you can get my favorite ending, where you both commit suicide so you can be together forever - and no mortal boundary can break you apart again. Creepy.

Seeing as how you have lasted longer than his other attempts, it's apparent that he got something right with your creation.

cardtrick said:
If I were to write you a game engine and an editor for this, would you re-consider making the game? Similarly, would anyone else be interested in making the same kind of game?

Elements of the engine I'm thinking about:

Text-based, but with menu options rather than an IF parser

Support for RPG mechanics/stats

Support for displaying static 2D pictures, possibly with some simple transitions/effects, but definitely not a full-blow 2D graphics engine

An open-source license, as flexible as possible while still allowing me to use existing libraries . . . I'd prefer to have it be public domain, or at least a BSD/MIT license, but may have to go for LGPL depending on the libraries I need to use. I'll try to avoid GPL (not that anyone would be selling a closed-source game like this in this day and age, so GPL is probably no big deal), but I'm not making any promises on this.

It would be written in C#. This is non-negotiable. Depending on interest, I might make it cross-platform (running on Mono, rather than .NET). On the other hand, if being Windows-only isn't a problem, that allows use of a much prettier, easier to modify, and more themeable WPF-based interface rather than WindowForms. Third option would be writing it to compile for Silverlight 2.0, which would mean the games could be run in a web browser (at least on Windows and Macs . . . Linux support is still forthcoming, although it should be here within a year).

On the other hand, I'm planning to include a scripting language. More than likely, this would just be Python, Lua, or Ruby rather than making one of my own.

Basically, I'm thinking about an engine designed to work for American Hare, a choose your own adventure game, a Darklands clone without its isometric combat, or King of Dragon Pass.

Is that appealing to anyone? As some people know, I've been learning C# and programming in general, in preparation for eventually working on a full-blown 3D game. But before I get to working with a "real" game engine again, I want to undertake a mid-scale project to get some experience with actually working with a lot of code at once and the development cycle as a whole. I was originally planning to write a general-purpose dialog editor for RPGs, but I think a game engine like this would be of similar complexity and might be both more fun and more useful. I would be learning as I went, so I wouldn't expect huge quality, at least not from the start. On the other hand, I'd be following an "agile" methodology, so I would be releasing versions of the engine and editor every few weeks with incremental improvements, which means someone could start working with the engine long before I finished it.

But I don't want to bother with this if there's no interest, since the dialog editor would probably be of more use to me personally. On the other hand, I'd love to have a playable version of American Hare, and it would be great to have a way for people to easily make interesting little mini-RPGs. Let me know your thoughts.

If you would be up to doing that, then sure. It would be a pleasure. I would have to pick up a new user name here, though.
 

Hory

Erudite
Joined
Oct 1, 2003
Messages
3,002
hpmons said:
If you could direct me to a model which allows CYOA-style games as opposed to entering commands, Id be eternally grateful.
Yes, IF things may be very flexible, but they seem to incline themselves much more towards adventures than RPGs. I find typing in things, and then realising that Im too vague or I havent done things in quite the right order and Im told "You need to pick up the knife before you can use it" ruins any sense of immersion.
Well, there are plugins for showing "menus" or for choice-based conversations. I imagine that a whole CYOA game could be structured as a conversation. I'm not too experienced with IF myself, and the game I'm working on will not have menu-based dialogues, so I can't tell you more. I know there's also an online "engine" for developing CYOA-style games, maybe you can give it a try: http://www.chooseyourstory.com/
You should also try Ren'Py. It's an engine for making those japanese-style graphic-novels, which do play largely like a CYOA book. But you don't have to use images (especially not of anime crap).
As for programming, whenever I think about it I just feel so hopeless. Even moreso when I see threads like this where people have such good ideas, and more motivation to put them into practice than I do, and yet its seemingly abandoned.
Don't worry, I think it's better to be a good producer than a good programmer. Maybe it's easier for the programmer to immediately have results, but a memorable game also needs visual artists, music composers, writers and designers. If the producer's vision is great and he can bring all these roles to work towards it, a work of art can result.
 

Kingston

Arcane
Joined
Jan 13, 2007
Messages
4,392
Location
I lack the wit to put something hilarious here
"Simple answer - Doctor Gold is mad."

Mad people aren't stupid. There is reasoning behind their actions. I'm not saying it would ruin the game for me or anything, I'd accept it, but I think you could do better on this part. "Because he is crazy" feels like a copout. Creating believable crazy people is hard.

"It's a joke, and a very good one."

Yea, well, I'm not smart enough to discern something that subtle.

Edit: What made him go crazy btw?
 

cardtrick

Arbiter
Joined
Apr 26, 2007
Messages
1,456
Location
Maine
Angler said:
If you would be up to doing that, then sure. It would be a pleasure. I would have to pick up a new user name here, though.

I think I'm going to screw around with it for the next week or so and see how feasible it would be. If I decide to go through with it, I'll make a post here announcing it and asking for input.
 

Hory

Erudite
Joined
Oct 1, 2003
Messages
3,002
cardtrick said:
If I were to write you a game engine and an editor for this, would you re-consider making the game? Similarly, would anyone else be interested in making the same kind of game?

Elements of the engine I'm thinking about:

Text-based, but with menu options rather than an IF parser

Support for RPG mechanics/stats

Support for displaying static 2D pictures, possibly with some simple transitions/effects, but definitely not a full-blow 2D graphics engine

An open-source license, as flexible as possible while still allowing me to use existing libraries . . . I'd prefer to have it be public domain, or at least a BSD/MIT license, but may have to go for LGPL depending on the libraries I need to use. I'll try to avoid GPL (not that anyone would be selling a closed-source game like this in this day and age, so GPL is probably no big deal), but I'm not making any promises on this.

It would be written in C#. This is non-negotiable. Depending on interest, I might make it cross-platform (running on Mono, rather than .NET). On the other hand, if being Windows-only isn't a problem, that allows use of a much prettier, easier to modify, and more themeable WPF-based interface rather than WindowForms. Third option would be writing it to compile for Silverlight 2.0, which would mean the games could be run in a web browser (at least on Windows and Macs . . . Linux support is still forthcoming, although it should be here within a year).

On the other hand, I'm planning to include a scripting language. More than likely, this would just be Python, Lua, or Ruby rather than making one of my own.
Two years ago I would have almost agreed fully to this project. I was working on something like this myself, tho it was web-based, not in C#. The reasoning is simple: the web is more accessible, simpler but powerful enough to allow for a text & multimedia game. Here's a simple version I did back then.
(Yeah, it's music from Sam and Max over WoW art. I just put random resources in it.)

But for the last two years I have studied and refined my original idea. I came to have quite different beliefs about it, and I consider this kind of project to be insufficient. I hope you keep us updated on your project, because I'm interested to see in which direction you'll take it as time goes by.
 

Chefe

Erudite
Joined
Feb 26, 2005
Messages
4,731
Alright. I'll look forward to it, ct. Good luck.

Kingston said:
"Simple answer - Doctor Gold is mad."

Mad people aren't stupid. There is reasoning behind their actions. I'm not saying it would ruin the game for me or anything, I'd accept it, but I think you could do better on this part. "Because he is crazy" feels like a copout. Creating believable crazy people is hard.

"It's a joke, and a very good one."

Yea, well, I'm not smart enough to discern something that subtle.

Edit: What made him go crazy btw?

Three reasons.

Reason 1: His parents were heavy new agers with odd concepts of reincarnation. They had lost their first child and thought that his soul inhabited their second child - Gold. This tormented him because he thought that he was not his own person. Science helped him escape this religion for the most part, but he found himself soon sinking back into those beliefs, to the point where he went full-blown dogshit crazy, believing that his soul and his dead brother's co-existed in his body.

Reason 2: Because of his parents, he was a social outcast, and the only friend he ever had was the rabbit Icarus. The death of his rabbit caused him to spiral into an incredible depression, and already having a knack for science and machinery, he tried for months trying to revive the corpse. He is naturally persistant, and vowed at the age of 9 that he would find someway to combine science and religion - to channel the spirit of his lost friend into a new host body. These ideas largely dissipated during high school, but resurfaced several years after college.

Reason 3: He refuses to die until he can bring back his friend. This wouldn't be such a big deal if it were not for the fact that he's a genius in every sense of the word. He developed a serum that would stop the aging on his brain (it, of course, also caused unforseen consequences to his already bad mental health). He couldn't find a way to stop the aging on his body, though.
 

Kingston

Arcane
Joined
Jan 13, 2007
Messages
4,392
Location
I lack the wit to put something hilarious here
Why would he subject his own rabbit to the same torment he has?If he believes that two souls inhabit his body, surely sending his own rabbit's soul into another rabbit would cause the same dilemma.

Why hasn't he tried to help his own situation through science? Why hasn't he built some sort of soul-sucking machine or whatever. It seems to me that this whole doublesoul belief would overshadow the loss of his rabbit, and his first priority would be to fix himself.
 

SilasMalkav

Educated
Joined
Nov 30, 2006
Messages
78
Hory said:
I was working on something like this myself, tho it was web-based, not in C#. The reasoning is simple: the web is more accessible, simpler but powerful enough to allow for a text & multimedia game. Here's a simple version I did back then.
(Yeah, it's music from Sam and Max over WoW art. I just put random resources in it.)

That's actually quite good.
 

Chefe

Erudite
Joined
Feb 26, 2005
Messages
4,731
Kingston said:
Why would he subject his own rabbit to the same torment he has?If he believes that two souls inhabit his body, surely sending his own rabbit's soul into another rabbit would cause the same dilemma.

Why hasn't he tried to help his own situation through science? Why hasn't he built some sort of soul-sucking machine or whatever. It seems to me that this whole doublesoul belief would overshadow the loss of his rabbit, and his first priority would be to fix himself.

Good points. I should probably mention that the idea wasn't (isn't?) fully developed.

His whole soul thing isn't true unless you want to believe it (I personally don't intend for it to be true). I don't think he believes that the soul would coexist with the current vessel, but instead would replace it. His own "double-soul" has nothing to do with it his rabbit. The concept degrades his sanity, but he's not actually some sort of a schizo with multiple personalities.
 

cardtrick

Arbiter
Joined
Apr 26, 2007
Messages
1,456
Location
Maine
Haven't had much chance to work on it (been pretty busy at work, and then a family gathering/birthday party today). I've played around enough, though, to convince myself that it should be possible for me to make something workable.

What features would you require in an engine to make the game? What about the editor -- how removed do you want to be from coding? My plan is to support static images and text -- is there need for anything else, like simple sprites or videos? What kind of user interface features would you want/need? I spent a while thinking about how I wanted to implement maps and locations, and ultimately decided that it's hard to do better for a text-based game than using the "rooms" abstraction you see in text adventures and MUDs.

I have enough of a good feeling from screwing around for the past week that I want to give this a serious try. It's going to be a pretty long process, since I'm working full time and can't really spend too much effort on this, but I'll try to make it iterative and release working versions every few weeks.

Don't feel like you're obligated to make American Hare, just because I'm going to be working on an engine. I've been thinking about it a lot, and I want to make the engine for my own purposes as well -- I have a Darklands-inspired idea that I kind of want to screw around with, and the engine I have in my head will be flexible enough to support that kind of a project. But if you do decide to make American Hare, it would be great if you could provide me as many examples as possible of what features you need.
 
Joined
Jul 26, 2008
Messages
355
Hey, I don't want you to feel any pressure to put out an engine. If you do though, I'd gladly work on creating a game. I need to save some face around here... :wink:

As you know from this thread, most gameplay elements are in a constant state of flux. A text game with static images is still a good idea I think, but if you are more inclined to take a more "graphical" approach, that could work too. I'm pretty good with sprites, even though most custom sprite work on my comics was very shoddy. I could come up with some examples if you are even remotely interested in this idea. I have no idea which route would be easier, given the complexity and available resources/references.

Here is a basic outline for what it needs to do (in no particular order):
- Support for character statistics. Basically, a set of numbers that a text will check against to determine what dialog to display and the results. Example: Strength 4 = "Give me that ring before things get violent!" = Intimidation fails; Strength 5 = Intimidation succeeds; Strength 2 = "Please sir, can I have that ring?"
- Support for an extensive amount of dialog switch checks. What? Given the above example with STR5, a switch would be set if you got the ring, and a sub-switch that said you intimidated to get it. Later in the game, the switch(es) would be checked and give output in another dialog.
- Support for global reputations. It's pretty self-explanatory.
- Support for Bruce Springsteen and Carrie Underwood modules. Ideally, Peter Grabriel post-Genesis support would be included, but is unnecessary for the overall functionality of the project.
- There would be no combat engine, so if we were to go the graphical walk-around-with-a-little-isometric-avatar route, "combat situations" would still be handled with static images.
- I don't mind not being completely removed from programming, but I also don't mind the opposite. It's all up to you.
- Obviously, a journal, map showing your current location, inventory, and stats screen would be required.

I haven't given much thought to the interface. I'll have to get back to you on that.

Of course, since you'll be doing the majority (if not all) of the programming, it's your game too, so don't feel like you're restricted in regards to gameplay and story input.
 

Murk

Arcane
Joined
Jan 17, 2008
Messages
13,459
from the lie came reality awhaa?

godspeed you gents, godspeed
 
Joined
Jul 26, 2008
Messages
355
Here's a quick 5 minute mock up of a possible dialog interface.

ahscreeneu0.jpg


If you've ever played Radical Dreamers, you can tell it draws inspiration from that, albeit loosely because I need to have the menu options.
 

cardtrick

Arbiter
Joined
Apr 26, 2007
Messages
1,456
Location
Maine
Thanks for the details, Chefe. I spent some time at work today (yeah, I work Sundays) writing up some plans for how I'm going to approach the engine. My goal is to have a tightly integrated editor/engine combination that will allow a single person to make a text and picture based RPG. Making engines and editors takes a long time; so does making a game. In order to get around that problem, my plan is to move as quickly as possible toward having a finalized file structure for areas, dialogs, items, etc. To get to that point, I'm going to need rudimentary versions of the editor and the engine for testing purposes. So I'd like to get within a few weeks to having a barely usable version of the editor, a barely usable version of the engine, and an extensible but nearly full-featured specification for the various file types. (They're going to be human-readable XML . . . part of the reason for my insistence on C# is that LINQ makes C# 3.0 pretty much the easiest language around for dealing with XML files.) Once I hit that point, it will be safe to start working on an actual game -- sure, the editor will be clunky, and the engine won't actually be able to display all of the stuff in the game properly, and the GUI system won't be finished, and it'll all probably be ugly as sin . . . but once I've got the game file formats finalized, they'll be like a contract that the engine and the editor have to adhere to, so anything made with them will continue to work (and improve) as the editor and the engine are further developed.

As for all your requirements -- they all seem very reasonable. Things like global reputations and stats will all be definable as custom properties that can be added to any entity in the game. Eventually, that will all be able to be done in the editor; in the early stages, they might have to be entered by hand into the XML files. The dialog files will follow the typical tree structure, but custom attributes will be able to be inserted in the text (like HTML tags or BBCode) that modify either the surrounded text or the entire dialog option. Any tags that the engine doesn't understand will be ignored, making it possible to define custom tags and mark up the dialog with them before setting up implementations. The XML behind the fourth option in your mocked-up "screenshot" above might look something like:

{dialogoption requirement="player.hasItemOfType(IGun)" resultlabel="RaulShot"} {modifier type="action"}Shoot him in the leg{/modifier} I'm through playing games, Raul!{/dialogoption}

The RaulShot is the identifier of the resulting dialog branch; that branch would have the logic for dealing with what actually happens after choosing this. That piece of the XML file might start out like:

{dialogresult label="RaulShot"}
{reputationmodifier reputation="viciousness" modifier="+15" message="Shoot first, screw the questions! Word of this will spread."/}
{branch condition="yadda, yadda, put a condition here"} {script src="../../scripts/raulshot.script" /} Put text here to display if the condition is true. {modifier type="emphasis"}Put emphasized text here.{/modifier}{/branch}
. . . . etc.

The XML would be generated by the editor, but could also be edited by hand, since it should be pretty legible. It's going to take a while for me to work out the best way to do the XML, and how much to include in the XML files versus including as separate scripts or defining in the game engine itself.

Anyway, just a quick update to let you know I'm thinking about this.

EDIT: the forum software though I was trying to post HTML and screwed with my example, so I replaced the "<" and ">" with "{" and "}" respectively.
 

hpmons

Novice
Joined
Jun 17, 2007
Messages
29
If you do continue with this engine cardtrick, you may find this useful to look at (or not):
http://au.geocities.com/jemann75/

It was an application for turning the Fabled Lands gamebooks into a text game (though its restricted to Fabled Lands only, a fairly generic fantasy genre, so the stats and system are restricted specifically for that). It also uses XML files, so the documentation may give you ideas.
 
Joined
Jul 26, 2008
Messages
355
Question
Are you just making a general purpose engine, or do you also want to be an integral part of American Hare?

cardtrick said:
Thanks for the details, Chefe. I spent some time at work today (yeah, I work Sundays) writing up some plans for how I'm going to approach the engine. My goal is to have a tightly integrated editor/engine combination that will allow a single person to make a text and picture based RPG.

Another question, and an idea
How do you feel about part text/picture based and part isometric? For example, the previous screen would be during a game event. Travelling around the world, however, would appear similar to a regular isometric game with your avatar running around.

exprt4.gif


When you went inside that building, it would turn into a traditional text based game like this idea was originally. Also, if you were to talk to any of those people, it would go to the dialog screen as well. This would be simply a visual representation of the world that you could walk around and would connect the various parts of the game.

Don't worry, I'm not thinking about pedestrian AI. The people would either be static (street vendor, bum, prostitute) with a repeating animation, or be part of a walking crowd that walks along pre-defined paths. However, each person would have a seperate collision detection, and if you needed to get past them you would need to wait a second for an opening. Ideally, I'd like to create a "thrown back" animation when you do collide into something or someone that pushes you back a few paces.

As for the player, you would click on a location and your avatar would go there. You click on a world object (door, person, etc.) and your avatar would "use" it if possible. The only player animation would be a walking (and possibly running) animation.

If players were allowed to stretch their legs, I think it would eliminate the cramped feeling that most text games have, and made travel a lot easier and less tedious and more enjoyable. This is how the "locations" would look. The world travel would be done similar to Fallout and Arcanum in that an icon gradually moves towards a destination. There would not need to be any exit grids, because in American Hare you can't travel to different world locations without a vehicle of some sort (and no, you can't stop between destinations to look at the landscape, unlike FO and AC).

One more note about that image I just put up. Obviously, it was thrown together to give an example. I'm not wanting stick figures and plain 3D boxes. I also don't want the indie stiff and black outline pixel look. However, I do want to know if this idea is feasable before I start on any "real" sprites.

Also, as you can see, everything would be built on a 2D grid. Each object would have their own four-sided gridspace and would be either checked true or false for collision. The parts would all be interlocking, like legos. People would have to be done differently, with some sort of a moving collision mask, but I haven't thought about that yet. I'd need at least two background layers and two foreground layers, each with the option of moving at a different speed in comparison to the player screen, in addition to the "main" layer. Ever used the Jazz Jackrabbit 2 CS? Something similar would be ideal for world building.

Again, this approach would, I think, be ideal, but I have no idea if it's workable for you, or even if anyone else thinks its a good idea. Like everything else, feedback would be great.

Making engines and editors takes a long time; so does making a game. In order to get around that problem, my plan is to move as quickly as possible toward having a finalized file structure for areas, dialogs, items, etc. To get to that point, I'm going to need rudimentary versions of the editor and the engine for testing purposes.

So I'd like to get within a few weeks to having a barely usable version of the editor, a barely usable version of the engine, and an extensible but nearly full-featured specification for the various file types. (They're going to be human-readable XML . . . part of the reason for my insistence on C# is that LINQ makes C# 3.0 pretty much the easiest language around for dealing with XML files.) Once I hit that point, it will be safe to start working on an actual game -- sure, the editor will be clunky, and the engine won't actually be able to display all of the stuff in the game properly, and the GUI system won't be finished, and it'll all probably be ugly as sin . . . but once I've got the game file formats finalized, they'll be like a contract that the engine and the editor have to adhere to, so anything made with them will continue to work (and improve) as the editor and the engine are further developed.

That's probably the best way to do it. Continually release better types, but get the basics down so actual game production can start. Be sure to include some sort of a cheat menu that will instantly teleport you to locations (would work best with the above isometric world), change character stats and reputation, and jump to a specific point in the story.

As for all your requirements -- they all seem very reasonable. Things like global reputations and stats will all be definable as custom properties that can be added to any entity in the game. Eventually, that will all be able to be done in the editor; in the early stages, they might have to be entered by hand into the XML files. The dialog files will follow the typical tree structure, but custom attributes will be able to be inserted in the text (like HTML tags or BBCode) that modify either the surrounded text or the entire dialog option. Any tags that the engine doesn't understand will be ignored, making it possible to define custom tags and mark up the dialog with them before setting up implementations.

Actually, in AH only your character has reputations and stats. The position of the other characters is story based and displayed through the written dialog, so there's no need for any other entities. I thought I should add that the reputation thing is similar to the dialog system that's been talked alot about in this thread - replacing it and toning it down to a more manageable level, and changing it up a bit to include traditional reputations. For example, a text might check two reputations to see if you are a "goodboy" and "saved Julian" before a certain output is displayed, and if instead of being a goodboy you were a "maniac" then a different output would be displayed. If you were neither but still saved Julian, you would get something different. If you did not save Julian, the entire thing would be a moot point.

The XML behind the fourth option in your mocked-up "screenshot" above might look something like:

{dialogoption requirement="player.hasItemOfType(IGun)" resultlabel="RaulShot"} {modifier type="action"}Shoot him in the leg{/modifier} I'm through playing games, Raul!{/dialogoption}

The RaulShot is the identifier of the resulting dialog branch; that branch would have the logic for dealing with what actually happens after choosing this. That piece of the XML file might start out like:

{dialogresult label="RaulShot"}
{reputationmodifier reputation="viciousness" modifier="+15" message="Shoot first, screw the questions! Word of this will spread."/}
{branch condition="yadda, yadda, put a condition here"} {script src="../../scripts/raulshot.script" /} Put text here to display if the condition is true. {modifier type="emphasis"}Put emphasized text here.{/modifier}{/branch}
. . . . etc.

All looks good, readable, and easy to work with. I do have two problems with it. I know it's not set in stone and only an example, but I'll bring it up anyways.

The "viciousness" reputation adds to a global variable that alters your current personality (dialog class) when it reaches a certain milestone. There should not be a message that follows. I see where you're coming from. Traditionally, each seperate reputation marker would be really specific and displayed, but in AH the player needs to gradually alter his personality, and only the overall point total will be displayed (through a certain name, of course). Other reputations, like "saved Julian" or "won foot race" would not be displayed. Reputations such as "human eater" and "infiltrator" would be displayed as is, with a description. "Human Eater - You have consumed human flesh. It was delicious." In that example, being a human eater would net you more options to eat people, eventually leading to a very unique end for the criminal overlord Don Leonardo.

These are the three reputation types in the game. Would a single reputation system be able to support them all, or would three different ones be needed?

The XML would be generated by the editor, but could also be edited by hand, since it should be pretty legible. It's going to take a while for me to work out the best way to do the XML, and how much to include in the XML files versus including as separate scripts or defining in the game engine itself.

Sounds really good. So, in your example, which called on my previous example, let me see if I understand were you are going with the idea of a generator. The code you listed would be displayed after you input these variables (I messed around with it a little)

To display the text option
Name (the text item's name, which would be ShootRaul) (can't be NA)
Condition (you previously chose to charge the door, so let's say ChargeRaulsDoor) (can't be NA)
Required Player Item (it's IGun here, of course) (NA for none)
Required Global Rep (the amount of good, bad, or crazy points required to use this option, so let's say lunging head first into a door to get at your target would require that you have 5 crazy points and 2 bad points) (NA for none)
Required Special Rep (nothing immediate here. you took on the job for the Don, but that was already checked previously when you first got to the house, so NA) (NA for none)
Required S.Special Rep (the quest required that you had the reputation of DonsCronie, and it doesn't need to be checked again, so NA here) (NA for none)
Load Next (if this option is chosen, this calls the next text displayed, so here it would be IShotRaul) (can't be NA)

After you choose the fourth option
Name (the option's name, IShotRaul) (can't be NA)
Add Global Rep (points added to your personality score / dialog class, here you would get 2 crazy points) (NA for none)
Add Special Rep (the hidden special reputation, in this case would be RaulShot) (NA for none)
Add S.Special Rep (the traditional reputation, it would be NA, but given your specific example it would be Viciousness) (NA for none)
Display (the written text displayed)
Load Options (ten boxes for possible answers to load, based on their own criteria. at least one box must be filled in. for NA, just leave the box blank.) (this isn't the actual text question, but rather the name of the text question to call. previously, ShootRaul was one such option for the previous text)

Is this similar to what you were thinking for the generator? Completely different?

Anyway, just a quick update to let you know I'm thinking about this.

I appreciate the updates, and your thoughts on what I'm suggesting (if it's feasable, beneficial, complicated, etc). It looks like I might have to actually commit to this game now. :lol:
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom