ranDM Solo v0.9.5
development and changelog stuff can be found here
the ask area
there's not much that you need to know to get started.
- If you want, you can type your list of PCs in the "PCs" area, your NPCs in the "NPCs" area, and any active threads to your story in the "Threads" area, one per line.
- You can ask a question from your chosen GM emulator system by typing a yes or no question in the "Ask" area, just hit <enter> or <return> when you're done. The answer to your question shows up in the "Answer" section. If you just type enter in the Ask area, it will re-ask your question for you and reroll an answer. For example, I could ask
do many people use this program?
Personally I'd expect some sort of "No" answer, like "No, And" or "Exceptional No", but I'm happy to be surprised.
- you can ask the program to roll dice by typing standard dice notation formulas in the Ask area and hitting <enter> or <return>. If you want to do some math in your dice notation formula, put a '#' sign on both sides of it. You can roll Fudge or Fate dice too, or keep highest or lowest of multiple dice.
roll 5d4
roll 1d6
roll #4d6h3#
roll #4d6h3+2#
roll #5F#
roll #2d20l1#
roll #2d20h1#
- There are some menus you can move around in the lower right of the screen if you want to change the odds of a yes answer for your question, raise or lower the chaos factor, and the like.
- if you click the 'new scene' button, the program will open a box asking you to describe the new scene. If you're using Mythic's Chaos Factor, it will also ask if you want to raise or lower the Chaos Factor.
- you can always get a Mythic Event Focus or Mythic Event Meaning by clicking on those buttons.
- you can toggle "night mode" on or off, which is easier on the eyes at night.
- you can log answers normally, or in reverse. Normal means every next answer goes to the bottom of the Answer area. Reverse means every new answer goes to the top of the answer area.
- if you have a lot of lists or tables, you can use this program to automatically pick something from those lists.
- if you want to save your current solo game, click the 'save' button, and the program will try to save your lists and answers to your browser's local storage.
- if you want to load your previous save, click the 'load' button.
the Oracle menu
The oracle menu will take your lists of random tables and generate a result on the fly. Instead of dumping to the log, it goes to its own section of the page. When consulting oracles, I tend to generate multiple results, that's the reason for this behavior. If you put in PCs, NPCs, or Threads in those areas, you could click the "Update Oracles" button, and it will store them, and you'll be able to roll one randomly by selecting which one you want from the "Oracle Menu". The oracle menu results area will also output and render html if you have tables with fancy text formatting.
If you wanted to have the program pick a random thread for you, you could type something like this:
oracle npc
oracle thread
oracle pc
some tips
- Oracle Shorthand: If you want to consult an oracle from the ask window, you can also start your question with ora, list, table, oracle, or | ^ or [ or ]
- Dice Shorthand: If you want to roll dice, you can also start your question with d, r, #, die, or dice
- Fudge Dice: you can see how many dice were positive, negative, or neutral if you have 'show dice rolls' toggled on.
- you can consult multiple oracles at once if you enclose the oracle names in square brackets, for example:
oracle [pc] remembers [npc] because [thread]
- you can draw cards from a deck and shuffle the deck, the program will keep track of it. It will automatically shuffle the deck if you run out of cards.
card
shuffle
- you can roll multiple dice notation formulas by using '#' and the oracle parser:
ora #2d20h1# #2d20l1#
- the dice notation system understands basic math -- addition, subtraction, division, and multiplication.
- the 'prep blog post' button takes the answers in your 'answer' section and tries to format them in a way that they'll look nice on a blog -- after clicking int, highlight the text in the 'blog copy' section and do a 'select-all' and 'cut' or 'copy'. you should be able to 'paste' them into an html editor on popular sites like blogger or blogspot. At least, that's the idea.
the Oracle Pastebin
If you like random tables, this is your section. We'll start with an example that many folks might be familiar with, D20-style character generation.
|menu
[rollcharacter-new]
[rollcharacter-osr]
|rollcharacter-new
[class] Str #4d6h3# Dex #4d6h3# Con #4d6h3# Int #4d6h3# Wis #4d6h3# Cha #4d6h3#
|rollcharacter-osr
[class] Str #3d6# Dex #3d6# Con #3d6# Int #3d6# Wis #3d6# Cha #3d6#
|class
Fighter
Mage
Thief
Cleric
Halfling
Elf
Dwarf
To test these tables, just highlight from "|menu" to Dwarf, copy it, and paste it into the oracle pastebin, then click 'Update Oracles'.
The Oracle menu should change to include two new menu options, "rollcharacter-new" and "rollcharacter-osr". If you select those menus, a new character should appear below the "Answer" area.
you should now be able to call those random tables from the ask menu too:
ora rollcharacter-new
ora rollcharacter-osr
ora class
- the pipe character '|' defines a new oracle table's name. everything below it is a possible random entry from that oracle, until it hits a blank line.
- you call a table by putting its name in square brackets, just like above.
- there are a few special tables: npc, pc, thread, and menu.
- Sometimes it might be useful to put more readable text in the menu:
|menu
Roll a Newfangled Character^[rollcharacter-new]
Roll an Old-Fashioned Character^[rollcharacter-osr]
and
|menu
[rollcharacter-new]
[rollcharacter-osr]
are the same thing, the only difference is that the Oracle menu will show you a more readable name instead of a table name, if you put a caret '^' in front of an item in the menu table, it will show you the readable name instead of the actual table name.
- you can temporarily erase things from an oracle once they show up as a result. If you want to do that, call the table with curly brackets instead of square brackets. Replacing [class] with {class} would ensure that if you rolled multiple characters, each one would be unique, until you ran out of options. At that point, the table will refresh itself automatically.
it might help to look at a nested table to get started on table creation. There is one at my dropbox here. It includes the lists that I use for testing.
What is Mythic / CRGE / CRGE-Kai / Scarlet Heroes / so1um / Tiny Universal / TSS Solo / randm questions
An explanation of CRGE, CRGE-Kai, Mythic, or Scarlet Heroes as GM emulators is beyond the scope of this help. Entire books have been written on the subject! I suggest buying them. For CRGE-kai, it's a mishmash of Mythic and CRGE, a clever ploy designed to get you to buy both books as well as read a good blog.
- Conjectural Roleplaying GM Emulator. Buy it here among other places.
- Mythic GM Emulator. Buy it here among other places
- Scarlet Heroes. This system includes a great way for playing solo D&D-style adventures. Buy it here among other places
- CRGE-Kai. An idea this powerful cannot be bought.
- Tiny Universal. A fantastic DW-style distribution of results in this one. If you're doing this but not paying attention to Sophia, you may be doing it wrong.
- so1um 0.5. One of the quickest and simplest engines I've seen. Honestly, using a computer might slow it down.
- Tiny Solitary Soldiers Solo RPG, a great solo engine from one of the solo blog titans, by request. That's right, I do requests. You gotta ask. :D
- randm questions, something I'm messing around with.
- Freeform Universal. I hadn't really heard of this one, but it was requested, and it's got some great mechanics, and the author completed it as part of the National Game Design Month. Who am I to say no?
- Fate Solo. It's a shame that Kenny closed down shop, but it was great of him to release his engine and posts for free. This engine is based entirely on Fate, which I haven't played but I believe it was perhaps once known as Fudge. "roll #4F#"
your privacy
everything here just runs in your browser. this program doesn't save anything to the internet and it doesn't use cookies or track you, though it can save some stuff to your browser's local storage, like your list of npcs, pcs, threads, and your answers, and your lists from the oracle pastebin.
add to home screen / play offline
If you're running this program in a browser on a tablet or smartphone, you can add it to your home screen, and it will run on your device.
If you do that, you don't need to connect to the internet to run this webapp, or you could play this in "airplane mode". You just need to be connected to the internet when you 'add to home screen'. It's a good idea to run it every once in a while so you get any updates.
Some instructions are available here.
variables
if you are familiar with programming, especially in Javascript or ECMAScript, you can use variables to do some pretty powerful random table stuff. There's more than one way to do it: the easy way, and the hard way. Both have merit.
variables the simple way
there are two (or three (or four)) steps to using variables.
- Defining that one exists and the method of setting it,
- setting a value to it,
- using that value, and
- destroying it.
you can skip step 2 if you want, the only downside to skipping the 'set' step is that it will display the value where it was called.
you can skip step 4 if you want, the only downside is that it won't give you a new variable on new calls until you close the browser window or reload the page.
definition:
|variable varname
[table] or {table} or #diceexpr#
variable assignment call, set it to something, perform the random table call or dice expression.
{init varname} or {variable varname} or {set varname}
refer to the value we set earlier. if it doesn't exist, init it and display immediately.
{varname}
variable destruction
{deinit varname} or {unset varname} or {delete varname}
variables the hard way
If you're a programmer, you can define and evaluate javascript code natively in your oracle tables. That means you can do function calls and definitions, define data structures, and more. If that's something that you're interested in, some ideas are in the dev/changelog page. If you're not a programmer, it might be black magic.
credits and inspirations
copyright
ranDM Solo is published by me, Mike Overbo, under a Creative commons Attribution-NonCommercial-ShareAlike 4.0 International license. Any portion of this program pertaining to any specific engine are assumed to be under the copyright of its creator or publisher.