Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Lummox JR

Pages: [1] 2
1
Other Announcements / Re: Advanced magic, freeform system
« on: June 23, 2008, 06:37:25 PM »
I've been working on a system for this and it's slowly starting to come together. The language is based on the idea of using prefixes, where you'd enter a verb name or such first and it dictates to the engine what is expected in terms of followup. These are the language primitives I have in mind:

Verb: A command, followed by ancillary info like objects it acts on, etc.
Object: A person or thing.
Place: A location; some verbs provide a location relative to an object.
Number: A number.
Ntype: A property that can be described numerically; this includes life, power, speed, etc. and any elements.
Otype: A property that is not numeric, such as shape, material, color.
Ovalue: A value that can only be described by a hierarchy, i.e. human.tall.male or such. This is something like a huffman tree where one encoding might mean "wolf" and another might mean "stone", but levels of specificity are available so you can have different kinds of wolves and stone. Every ovalue has an otype and is incompatible with different otypes.
Meme: An emotion, like love, fear, etc. The memes for a given object are a set of ovalues.

Using parentheses to help describe how the language works, this is a spell to conjure an illusion of a foe's worst fear, seen only by that foe:

Delusion (Value Fear Shape FOE) (Beside FOE) FOE

The first argument is a sub-command, which finds a shape (otype) the foe fears (meme) and converts it into an appropriate ovalue; the olvalue is the illusion. The second argument is a place. The third is the foe itself.

And this is a possible taming spell, whose effectiveness will vary depending on the creature:

Gain Power +3 (Impress Love ME FOE)

The Gain verb adds to a numerical type (power) belonging to the spell itself. The +3 might not be a real +3 but an exponent, which could mean 2^3 so this spell is 8x as powerful. However much power the spell gains, it will cost that much more in mana and possibly speed; that can be offset by deliberately sacrificing something else, like speed or area of effect. The rest of the spell is the actual taming, which inserts ME (the caster) into the foe's meme list for Love. The foe will start to love me in particular, my shape, my material, my color, etc., everything that describes me, which in turn will affect its preferences for similar beings because my specific ovalues are just subsets of less specific ones.

2
Other Announcements / Re: Advanced magic, freeform system
« on: June 16, 2008, 02:40:53 AM »
Heh, I see what you mean about Perl. My boss would say that's probably not a good thing, but then the difficulty of "maintaining spell code" would be a good thing in any given RPG.

By overlapping tokens I was referring to the idea that you might have, say, letters A-Z where A could in one case be a verb and in another be a noun. However this is probably unimportant and it makes constructing any kind of realistic syntax that much harder.

I've never heard of Redcode, but I like that hardware idea. In a magical sense it might be that each object has a set of "registers" (corresponding to various elements, stats, etc.) that could be altered. A spell of polymorph, then, could involve "poking" a specific value into the shape register, or a random poke. However, I would think in terms of spells the "distance" of change matters a lot, so it really shouldn't be possible to create a "health=0" spell.

Already though, I've got an idea forming based on the prefix/postfix idea that should be viable. I think something along those lines has the most potential.

3
Other Announcements / Re: Advanced magic, freeform system
« on: June 14, 2008, 05:00:11 PM »
Exactly what I'm getting at, Rabiat. Some kind of functional language that operates on a level just above the game engine's direct variables, where each "token" of the language is interpreted positionally. Ideally, it'd be refinable to the point where once you had a set of game variables down pat that could be changed (possibly with shorthands for groups of them), you could encode the entire thing as symbol code like DNA. One of the issues I've been struggling to figure out is how I'd handle complex syntax like grouping clauses, but it occurs to me that the way programming languages do this is with a prefix or postfix notation.

This almost guarantees, though, that the verbs, nouns, and operators have to all be separate tokens or else there'd be no way to tell what was going on at a given point; it does somewhat harm my idea of overlapping their meanings but maybe that's not important. And for constants, either that has to be encoded somehow (perhaps by a special constant token) or constants would have to be drawn from some relative scale.

If a spell parses incorrectly, my thinking is that any unexpected token should be skipped or partly skipped. If it's partly skipped, and a token was, say, a 3-amino chain like DNA, only one of the aminos would be skipped and the spell code from that point would be interpreted in a way the caster never anticipated. There could also be a penalty to mana requirements for a screwed-up spell, so that if you found a valuable spell by accident it'd be worthwhile to try to refine it. This could also apply to popping stuff from the stack, so that if you were to transfer air (add 5 5) which produces an invalid "receiver" for the transfer, the code could reset to the "add" token and then move forward by 1 amino, reinterpreting everything after. A clever spellcaster might be able to achieve multiple effects with something like this, though at the expected cost of mana.

I also like your concept of a fallback spell. That would be fairly intuitive to build into the spell language, e.g. fallback spell1 spell2.

Although I'd rather avoid any verbs with commutative or associative properties (such that two spells would not be identical), I think doing so may be impractical. Any kind of exchange verb would be commutative by nature unless it represented an uneven trade, and the fallback verb presented above would be associative. Not much getting around that, I guess.

4
Other Announcements / Re: Advanced magic, freeform system
« on: June 13, 2008, 02:06:09 PM »
I generally like the positional idea, but more as a grammar that can be modified by its contents--the idea being that certain letters/runes/words in key positions can change what's expected next. In this format, a spell can be complex, maybe even taking hours of character time to recite or perform, and depth has no limit. But being able to say that one position is a verb-type and another is a noun-type means transposition greatly alters a spell's characteristics, which I like. Or a postion might be noun-or-adverb, so you might have say 20 verbs and 12 nouns, 5 adverbs, and some other misc. modifiers or "dead code". Words in certain positions could even be treated as a jump, turning the spell into a sort of Turing machine.

5
Other Announcements / Advanced magic, freeform system
« on: June 13, 2008, 04:36:34 AM »
I'm not sure how relevant this is to Roguelikes in particular as to RPGs in general, but I've been thinking lately about magic systems. I had an idea I wanted to write up as an article on my own Roguelike development blog, but every time I try to pin down a good design the whole thing falls apart.

Essentially, it struck me that a more reasonable, well-recognized form of magic in fantasy worlds would be one that requires study, has arcane and hidden knowledge, and in which new things can be discovered. Most fiction puts magic in those terms, but when translated into a game it always ends up as a preset list of spells that do specific things, often attempting balance but never achieving it. So I thought, screw balance, let's just think of magic in more practical terms: an alphabet, or RNA sequences, spelling out the building blocks of a spell. This alphabet would be deterministic, such that transposing letters would produce a different spell, using certain sequences would affect the mana and time requirements differently, and spells have to be discovered.

Where I ran aground is that it's fairly difficult to contain an entire set of spells in a single alphabet. Key concepts would be elements to act on, targets like people and objects, spell action as in a transfer of energy or a change of physical properties or some kind of transformation or illusion etc., and method of spell delivery. It should also be possible to, via another spell, bind a spell into an item or person, so you could create an enchanted weapon or some such.

Perhaps a better analogy, different from an alphabet, would be chemistry. In chemistry many compounds are formed by taking smaller molecules and forming them together in a certain way to create a unique topography. So the spellcrafter would, in trying to design a Wall of Ice spell, want something that would act on thin air, drain heat, do so very rapidly, and pick a target location and orientation of his choice. The latter might be swapped out, for ease of use, with a way of forming the spell directly between the caster and a chosen target. An explorer wanting to brighten a dark underground room would want a spell that acts on the nearby walls, summons bright light, and lingers for a certain time (perhaps hours).

I know there are various magic systems out there, but I suspect few of them require players to essentially become "magic programmers", which in a very real sense is what fictional wizards are: mana hackers. I'm thinking some kind of simplified grammar could be used to convert freeform spellcasting from a problem of natural language interpretation into a problem of simple parsing, not unlike the way a text adventure operates.

In adventure-game syntax, this is how I picture some spells would work:

Heal: Transfer life from air to target
Incinerate: Summon much heat at target for 10 seconds
Terrify: Show target's greatest fear to target
Break: Rupture target moderately
Shatter: Rupture target greatly
Teleport self away: Jump me to any large empty place

I think my own mental picture of the possible lists of spells is fairly incomplete, and without that it'd be hard to describe such spells in consistent terms. Feedback and related thoughts are much appreciated.

6
Traditional Roguelikes (Turn Based) / Re: Dwarf Fortress
« on: October 31, 2007, 06:26:43 PM »
This is worthy of a front-page post.

7
Other Announcements / Re: stupidest thing youve ever done on a roguelike
« on: October 11, 2007, 06:52:35 PM »
Agreed, EliG. I've lost more characters to stupid fountain deaths. On the flip side of that though, I've also found it's often a good way to gain something of value (like a wish).

8
Other Announcements / Re: Ranged weapons that don't suck?
« on: September 29, 2007, 04:46:21 PM »
Well ZZT wasn't exactly a Roguelike, although gads, a Roguelike based on MZX would be awesome. I love the firing slot idea for quick access to a ranged weapon, while of course being sure the weapon isn't that powerful. I'd also prefer to be able to choose a target instead of just a direction, which is something a lot of Roguelikes don't do.

My original conception that ranged weapons suck is based almost entirely on Rogue. There the limited number of projectiles available, and the limited damage they do, makes the bow and arrow useful only on rare occasions where you see a monster far enough away and have time to switch weapons and fire off half a dozen shots or more, and switch back to your regular weapon in time for the next melee. Not having to switch takes out part of that problem, maybe much of it. To my mind the major balance issues are 1) the need to change weapons, 2) the damage of the projectiles, 3) the quantity of projectiles available, 4) the ability to fire at any target or just in a direction, and 5) the ability to see your target. (Rogue also screws players on that last one.) The question is, what is the ideal formula--or at least what are several possible ideals?

If Rogue had better visibility of targets (not so many dark rooms) and a better chance of finding arrows or bolts, that would probably be enough to un-nerf its ranged weapons.

9
Other Announcements / Re: Hey ^_^
« on: September 24, 2007, 03:09:44 PM »
Looks like we have a similar background in games, Tidus. I've played Rogue and Nethack quite a bit but never won either game, and I've played a little Crawl too. I've tried ADOM but I never get very far into it; sometime I need to give it a more serious look.

10
Other Announcements / Re: Alternatives to hack and slash for roguelikes
« on: September 18, 2007, 07:14:23 PM »
I have a feeling that to handle "explorable", extensible magic or potions properly, you'd need some set of basic reactions or interactions that are possible.

In the case of potions, it'd be desirable to have some sort of formulaic basis for knowing how things react rather than relying on the programmer to hard-code it. Something like if you have Wolfsbane+2*Duckroot (this would have to be in some sort of standardized format) you could hash it to get 3*(reagent HPO). A different hash would provide the reaction time at a standard temperature. I'm not sure how catalysis would work here, though, and it'd be nice to be able to show some sort of A+B=>C+D reaction. If formulas could be developed to handle all that, then in theory you have a complete chemistry that needs no programmer intervention, and can even hold major surprises for the author.

For magic, I'd think it'd be crucial to come up with some basic "laws" that spells must use to act.

- Law of domain: Stats of incompatible nature (very different ranges, for instance, or very powerful vs. not very powerful) must undergo conversion.
- Conversion laws: e.g. 500 Gold = 20 HP = 1 St/Dx/Co/etc.
- Law of elements: Any element can be changed to any other, but at a fixed cost by volume.
- Law of exchange: Change must be made at a 2:1 ratio. To add +1 to one stat, -2 must come from another.
- Law of binding: Magical effects can be bound to an item permanently, with their cost determining how often the magic can be used.
- Law of giving: Stats can be given at a 2:1 ratio, meaning the recipient takes 2x the amount. This can be for temporary stats like HP, or permanent stats like max HP.
- Law of taking: Stats can be drained at a 4:1 ratio. The taker recieves only 25% benefit from what they take.
- Law of sacrifice: A spell doubles in effectiveness, halves in cost, etc. when the caster gives up -1 to a stat. (This is a family of laws with different responses to sacrifice.)

By this system for example you could make your own wand by creating a spell, and binding it to a stick. The wand could be reusable indefinitely but only rarely (as it would take time to recharge), or you could enhance the spell with the Law of Sacrifice so that while the wand could be used as often as you want, each shot permanently drains some of its magic capacity just like in Rogue. The Law of Giving however could be a basis for recharging the wand, but you'd have to do it via a scroll that had its own magic capacity to give up. A scroll of charging then is simply (Max MP + Law of Giving).

11
Other Announcements / Re: Alternatives to hack and slash for roguelikes
« on: September 17, 2007, 04:02:25 PM »
My "magic DNA" idea would probably be an interesting way to handle potion mixing, although even cooler would be devising several paths to get to the same result. I.e., if you mix four ingredients in a certain way you get reagent GXH, needed for your potion, but if you mix two of those ingredients differently along with a third, you could get GXH that way too. And if GXH and QJI have to be mixed a certain way to get a certain potion, perhaps two different reagents (with similar ingredients) can create the same potion.

Catalysis and purity issues would make this more interesting, requiring potion makers to precipitate out impurities or catalysts they don't want in the final mix, and this would add steps like boiling the potion for 6 hours or running it through a distiller for 4, etc. Purity could also be a factor in toxicity, like if one of the source ingredients is poisonous on its own, requiring the mixture to be extremely thorough or that a catalyst be used to speed up the mixing process.

12
Other Announcements / Re: Alternatives to hack and slash for roguelikes
« on: September 13, 2007, 02:31:17 AM »
I dunno, it seems to me that while you could perhaps get away with cutting out a little hack-'n'-slash, moving into a full RPG arena puts you more in the realm of Dwarf Fortress or something. Being able to farm implies a fairly reasonable expectation that something's not going to come around and eat your brain, at least not for a few months. Even in game time that could be depressingly long. But then again, I've always thought it'd be cool in a Roguelike to be able to research new spells and mix potions, which would be much of the same except that you'd have to search for reagents and perhaps seek out arcane magical knowledge as well. (For such a system to work well, the repertoire of possible magic effects would have to be enormous and perhaps nearly unlimited, allowing control over almost every conceivable variable in the game.)

As to composing music, perhaps a similar idea to my spell theory would work with music, giving bard-type characters a certain power, where the melody determines the general effect, instrument or tempo could have subtle effects on that, and efficacy would be determined by the skill in playing. (This sounds like a job for Fudge dice.) Certain strands of melody would act like a sort of DNA, encoding actual script instructions which, if they function at all, can have dramatic effects on the environment.

13
Other Announcements / Re: Any fiction out there?
« on: September 02, 2007, 05:35:58 AM »
I've recently been reading a nonfiction book that suggests storytelling is a key ingredient to communication, and the communication I'd most like to foster is getting some ideas flowing for Roguelike development. So over in my guild at BYOND (Dungeon Crawlers), I've posted the first part of a serial story whose main purpose is to get people thinking about what they'd do in their own games. This part is really just an intro, and doesn't really offer much in terms of inspiration just yet except some set dressing, but we'll see how it goes.

14
Other Announcements / Re: Any fiction out there?
« on: August 19, 2007, 04:43:51 AM »
Quote from: Anvilfolk
Thinking about it, I'm not surprised. Roguelikes lend themselves to short stories. REALLY short stories. A novel-length roguelike story? Wouldn't that be sort of the list of all monsters you killed, with some slight movement descriptions in the middle? Maybe a story-line, not too complex (get the amulet anyone?)
I think the shortness of a lot of stories I've seen is just a lack of ability (or perhaps will) to inject the setting and characters into the writing, focusing mostly on the action. A good Roguelike story, I'm convinced, would need a healthy mix of those. Setting is one of the major keys to the genre, because it's all about the underground complex. Another is strategy, which manifests in what the characters bring with them or find along the way, and even inserting some odd discoveries can provide direction on how to fill in a plot. Items get lost or destroyed, new ones found or taken.

My story is actually the first I've written of novella length (I've done novel length before, and short stories aplenty), so there's definitely room to include a lot of story. But one of the major reasons was that I made one unusual choice: I included multiple characters. Most Roguelikes, I know, are single-player only, just you against the dungeon, but from the start I tried to inject some sense that the ruins could be a real place, that real people would live near and would be tempted to explore. It was sensible to me then that most expeditions would involve multiple people, and having multiple characters gives you the advantages of dialogue, intra-party conflict, and death to flesh out the story. I don't think most fan-fiction writers think to do that with Roguelikes because it doesn't seem proper, but to me it's always been about the setting and the strategy, both of which are easily included no matter how many characters you've got. I ended up sending in a party of 11.

That's not to say that multiple characters are necessary. I could quite easily see building a convincing story around the same plot as Larn, where a father goes to find the potion that will save his daugther's life. Lack of dialogue, though, means that other literary devices will be needed. It'll be rare for a lone character to talk to anyone, except maybe an intelligent creature living in the dungeons. A story like this one would benefit from following the protagonist's survival tactics, learning his state of mind, getting deep into his head.

From what I learned by writing in this genre, I feel quite confident that an entire novel could be built around it. And who knows, maybe a D&D story is the way to go to read more, though I would rather see something with "realism [and] credibility" than without. (One way to do that, I think, is not to limit the story to a specific game.) It's just such a rich trove for fiction, there has to be something good out there.

15
Other Announcements / Re: Any fiction out there?
« on: August 18, 2007, 06:09:49 PM »
I looked into Penance a bit. It seems a little too slow-paced as Webcomics go, and I'm not fond of the art style (which borrows heavily from anime/manga conventions). I think I'd rather see something with stronger pacing like 8-bit Theater or Order of the Stick, maybe even something similar in format to 8-bit Theater in that uses the graphical conventions from Rogue but fills in dialogue around it. That would seem a lot more Roguelike than what I saw in Penance; despite it calling itself Roguelike there was too much set in the modern world.

I'm still surprised that after scouring Google several times over, I've yet to find any evidence that anyone else has written a proper story in the genre--at least, nothing beyond a couple thousand words at most, not even enough to count as a short story.

Pages: [1] 2