<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml'/>
<!--}}}-->
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected{color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.sparkline {background:[[ColorPalette::PrimaryPale]]; border:0;}
.sparktick {background:[[ColorPalette::PrimaryDark]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:'alpha(opacity:60)';}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0em 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0em 1em 1em; left:0px; top:0px;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0em 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 .3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0em 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0em 0em 0em; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0em;}
.wizardFooter .status {padding:0em 0.4em 0em 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em 0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0em; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em 0.2em 0.2em 0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em 0.2em 0.2em 0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em 1em 1em 1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0em;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0em 0em 0.5em;}
.tab {margin:0em 0em 0em 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0em 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0em 1em;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0em 0.25em; padding:0em 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0em; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}

.fieldsetFix {border:0; padding:0; margin:1px 0px 1px 0px;}

.sparkline {line-height:1em;}
.sparktick {outline:0;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em 0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em 0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0em; right:0em;}
#backstageButton a {padding:0.1em 0.4em 0.1em 0.4em; margin:0.1em 0.1em 0.1em 0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; margin:0em 3em 0em 3em; padding:1em 1em 1em 1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em 0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none ! important;}
#displayArea {margin: 1em 1em 0em 1em;}
/* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
noscript {display:none;}
}
/*}}}*/
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar closeTiddler closeOthers +editTiddler > fields syncing permalink references jump'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar +saveTiddler -cancelTiddler deleteTiddler'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser'></span></div>
<!--}}}-->
To get started with this blank TiddlyWiki, you'll need to modify the following tiddlers:
* SiteTitle & SiteSubtitle: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* MainMenu: The menu (usually on the left)
* DefaultTiddlers: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
These InterfaceOptions for customising TiddlyWiki are saved in your browser

Your username for signing your edits. Write it as a WikiWord (eg JoeBloggs)

<<option txtUserName>>
<<option chkSaveBackups>> SaveBackups
<<option chkAutoSave>> AutoSave
<<option chkRegExpSearch>> RegExpSearch
<<option chkCaseSensitiveSearch>> CaseSensitiveSearch
<<option chkAnimate>> EnableAnimations

----
Also see AdvancedOptions
<<importTiddlers>>
Auka es un mundo ficcional, de tipo medieval fantástico, y tendencia a resaltar los aspectos oscurantistas. Si bien tiene "magia" como la mayoría de los "mundos" ficticios creados anteriormente, la magia es débil. No hay razas sustancialmente diferentes a los humanos, por lo que los problemas principalmente son causados por la misma sociedad, y su relación con el ambiente. La sociedad hace su intento por sobrevivir a los [[Peligros]] en medio de poderes políticos monárquicos y religiosos, inquisición sobre poderes "no aceptados", y monopolio del conocimiento.

Utilizo ideas de "the order of the stick", Mythus, Ars Magica, DragonLance Saga System, Taoismo, D&D

 El aspecto "mágico-religioso" en Auka no está asociado al monoteísmo histórico que se vivió en el medio-evo, en contraste con culturas "paganas" con múltiples dioses, sino que está fundamentado en que todo viene de 3 "fuerzas", que podrían equivaler a Dioses.

 Ninguno de ellos es malo o bueno. Equivalen más o menos a las fuerzas Yin, Yang y Yin-Yang. Lo Yang, es coherente con la parte "Solar" de la religión de los Pemones, y con el concepto filosófico Yang del Taoismo. Lo Yin, es coherente con la parte "Lunar" de la religión de los Pemones. Para esta cultura indígena venezolana, la palabra usada para referirse a Dios, es la misma usada para referirse a los conceptos de "Luz" y "Energía", y tiene su faceta lunar, y su faceta solar. Lo Yin-Yang, es lo que surge de la relación entre ambas dinámicas, es decir: la vida, y por ello lo he relacionado con Gaia. Según los Taoistas, el mundo puede verse como Cielo (Yang), Tierra (Yin) y la Vida (Yin-Yang). Estos equivalen a los conceptos de Energía (Yang), Esencia (Yin) y Espíritu (Yin-Yang), que son los llamados 3 tesoros.

Cada zona de Auka tiene influencias de diferentes intensidades de las 3 fuerzas. Cuando la influencia es muy fuerte, puede haber un portal hacia el plano de esa fuerza, desapareciendo por completo del plano material.

Junto a la creación de este mundo, estoy creando las reglas para ambientar en Auka un Juego de Rol. En mi blog Otres (O3) Mundos, estoy registrando el proceso de creación. Todo el contenido de esta página web está conformado por las ideas que, habiendo sido ya expuestas en el blog, han tomado carácter definitivo,...  o al menos casi-definitivo!
!Sobre WikiAuka

Este esta "[[wiki]]" estilo [[enciclopedia]] es el repositorio de las ideas que he generado respecto al mundo ficticio que he creado con el nombre de "Auka". Mi intención es tener la información de forma organizada, ya que [[el blog]] donde originalmente estaba vaciando mis ideas y reflexiones se volvió inmanejable, y la estructura tipo "página web" me pareció muy rígida en comparación con la estructura tipo "wiki" enciclopédico. Como segunda intención, la [[wiki]] constituye un medio amigable para compartir esta "obra" con aquellos que estén interesados en conocerla. Es importante aclarar que acá no sólamente estoy definiendo un "mundo ficticio", sino también las [[reglas]] para eventualmente realizar un [[juego de rol]] ambientado en el mismo.

!Sobre el nombre "Auka"

Muchos me han preguntado de donde viene el nombre "Auka", y ciertamente no es algo que tenga que parecerle evidente a nadie. Sucede que [[mi papá]], tuvo que ir como investigador técnico de la [[Fiscalía General de la República]] a la región de [[Venezuela]] donde habitan [[los Pemones]], y convivió con ellos durante una semana. Allí aprendió mucho de su forma de pensar y de vivir. Para hacer el cuento corto, resulta que ellos viven su religión como un híbrido entre el Cristianismo y su propia religión, la cuál es instrumentada mediante "equivalencias" entre los elementos de ambas. En particular, a Dios lo llaman también Auka, que es como en su religión originaria ellos se referían a "Lo Supremo" o "La Fuente", o "Lo Divino". Según dijeron a mi papá, Auka es una palabra que adicionalmente se usa para referirse a los conceptos de Luz y Energía. El símbolo con el que usualmente representan a "Auka" es mediante una composición en la que está dibujado el Sol junto a la Luna, porque toda luz, explican ellos, proviene del Sol y de la Luna. En este mundo ficticio, Sol y Luna son los "dioses" más venerados por la sociedad "civilizada" (aunque también esta Gaia), así que me pareció apropiado usar el nombre para referirme a este mundo dominado por "La Luz".

!Agradecimientos

Gracias tengo que dar a los diferentes autores que han influido en mi, a mis padres, maestros y compañeros de juegos de infancia y de adultez, así como a quienes participaron en la creación de Auka. De verdad gracias.
!29 de Enero de 2008
*Instalación de Plugins de [[MonkeyPirateTiddlyWiki]]
*Cambios al [[MainMenu]]:
**Añadí la sección de [[Flora y Fauna]]
**En [[Geografía]] hice una especificación según tipo de lugar
**Añadí la sección [[Lenguajes]]
**Añadí la [[Bienvenida]]
**Agregué los subtítulos de "Secciones" y "Links Externos"
**Añadí el tiddler "[[Cambios Recientes]]"
Type the text for 'ClassicTheme'
/***
| Name|CloseOnCancelPlugin|
| Description|Closes the tiddler if you click new tiddler then cancel. Default behaviour is to leave it open|
| Version|3.0 ($Rev: 1845 $)|
| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source|http://mptw.tiddlyspot.com/#CloseOnCancelPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{
merge(config.commands.cancelTiddler,{

	handler_orig_closeUnsaved: config.commands.cancelTiddler.handler,

	handler: function(event,src,title) {
		this.handler_orig_closeUnsaved(event,src,title);
		if (!store.tiddlerExists(title) && !store.isShadowTiddler(title))
			story.closeTiddler(title,true);
	 	return false;
	}

});

//}}}
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
//{{{
config.options.chkHttpReadOnly = false; // means web visitors can experiment with your site by clicking edit
config.options.chkInsertTabs = true;    // tab inserts a tab when editing a tiddler
config.views.wikified.defaultText = ""; // don't need message when a tiddler doesn't exist
config.views.editor.defaultText = "";   // don't need message when creating a new tiddler 

readOnly = false;


// custom for mptw.tiddlyspot.com
config.views.wikified.defaultText = "This tiddler does not exist. If you are looking for an older plugin there is some chance you can find it over at http://mptw2.tiddlyspot.com/";


//}}}
Los "Sabios" predominan como miembros de la élite "eclesiástica" de ambas iglesias (Sol y Luna). Y debido a sus enseñanzas, los que veneran a Gaia son vistos como "profanos" por los dirigentes de las iglesias. Algo así como en la inquisición veían a los que hacían cultos druídicos y de "magia blanca", wicca, etc... Y por ende son vistos como "infieles" e "impuros".

A los Wizards les va peor! pues son vistos como en DarkSun... "torturadores" de los espíritus sagrados. Sin embargo, como paradoja, los "Sabios" tienen especial talento para ser Wizards, y muchos la usan en secreto. Si un jugador decide sacar un personaje de este tipo, no tiene por qué estar consciente de todo este secreto. El mismo es bien guardado en las esferas del poder eclesiástico, y sólo entre los de la raza de "Sabios". De hecho, entre ellos probablemente algunos inclusive sean Gaia Wizards (torturan espíritus de Gaia).

De esto de desprende que los druidas, rangers y seguidores de Gaia están recluídos de las grandes estructuras de poder.

Los poderosos "Sabios" harán lo posible por mantener en secreto la fuerza de Gaia. Sus razgos físicos degenerados son evidencia de la destrucción que han provocado al torturar a Gaia... reflejando en su cuerpo el daño que hacen a los espíritus y reservorios de energía de esa tercera fuerza.

Pienso que en un comienzo, posiblemente sólo había druidas, rangers y místicos.. más uno que otro sorcerer. Luego vino un grupo de humanos muy sabios, y descubrieron las fuerzas de Sol y Luna, y su poder creció enormemente. Se volvieron ambiciosos de poder, pero les estorbaban los que manejaban fuerzas de Gaia, por lo que trataron de diezmarlos con estratagemas, falsas acusaciones, y trataron de demostrar la "falsedad" de la fuerza de Gaia. En esas guerras (muy antiguas) los "Sabios" se refugiaron bajo tierra. En los poblados humanos predominó la barbarie. Cuando ya no quedaba nadie vivo en la superficie, que recordara bien por qué ocurrió todo, los "Sabios" volvieron a subir, y se presentaron como seres "superiores" portadores del conocimiento y "La Verdad". A partir de allí, nunca dejaron de tener el poder religioso y el mayor cúmulo de conocimiento académico.

Sin embargo, la mayoría de los "Sabios" no son culpables de las canalladas de sus ancestros.

Hmm... esto parece estar tomando forma...!!
/***
|''Name:''|CryptoFunctionsPlugin|
|''Description:''|Support for cryptographic functions|
***/
//{{{
if(!version.extensions.CryptoFunctionsPlugin) {
version.extensions.CryptoFunctionsPlugin = {installed:true};

//--
//-- Crypto functions and associated conversion routines
//--

// Crypto "namespace"
function Crypto() {}

// Convert a string to an array of big-endian 32-bit words
Crypto.strToBe32s = function(str)
{
	var be = Array();
	var len = Math.floor(str.length/4);
	var i, j;
	for(i=0, j=0; i<len; i++, j+=4) {
		be[i] = ((str.charCodeAt(j)&0xff) << 24)|((str.charCodeAt(j+1)&0xff) << 16)|((str.charCodeAt(j+2)&0xff) << 8)|(str.charCodeAt(j+3)&0xff);
	}
	while (j<str.length) {
		be[j>>2] |= (str.charCodeAt(j)&0xff)<<(24-(j*8)%32);
		j++;
	}
	return be;
};

// Convert an array of big-endian 32-bit words to a string
Crypto.be32sToStr = function(be)
{
	var str = "";
	for(var i=0;i<be.length*32;i+=8)
		str += String.fromCharCode((be[i>>5]>>>(24-i%32)) & 0xff);
	return str;
};

// Convert an array of big-endian 32-bit words to a hex string
Crypto.be32sToHex = function(be)
{
	var hex = "0123456789ABCDEF";
	var str = "";
	for(var i=0;i<be.length*4;i++)
		str += hex.charAt((be[i>>2]>>((3-i%4)*8+4))&0xF) + hex.charAt((be[i>>2]>>((3-i%4)*8))&0xF);
	return str;
};

// Return, in hex, the SHA-1 hash of a string
Crypto.hexSha1Str = function(str)
{
	return Crypto.be32sToHex(Crypto.sha1Str(str));
};

// Return the SHA-1 hash of a string
Crypto.sha1Str = function(str)
{
	return Crypto.sha1(Crypto.strToBe32s(str),str.length);
};

// Calculate the SHA-1 hash of an array of blen bytes of big-endian 32-bit words
Crypto.sha1 = function(x,blen)
{
	// Add 32-bit integers, wrapping at 32 bits
	add32 = function(a,b)
	{
		var lsw = (a&0xFFFF)+(b&0xFFFF);
		var msw = (a>>16)+(b>>16)+(lsw>>16);
		return (msw<<16)|(lsw&0xFFFF);
	};
	// Add five 32-bit integers, wrapping at 32 bits
	add32x5 = function(a,b,c,d,e)
	{
		var lsw = (a&0xFFFF)+(b&0xFFFF)+(c&0xFFFF)+(d&0xFFFF)+(e&0xFFFF);
		var msw = (a>>16)+(b>>16)+(c>>16)+(d>>16)+(e>>16)+(lsw>>16);
		return (msw<<16)|(lsw&0xFFFF);
	};
	// Bitwise rotate left a 32-bit integer by 1 bit
	rol32 = function(n)
	{
		return (n>>>31)|(n<<1);
	};

	var len = blen*8;
	// Append padding so length in bits is 448 mod 512
	x[len>>5] |= 0x80 << (24-len%32);
	// Append length
	x[((len+64>>9)<<4)+15] = len;
	var w = Array(80);

	var k1 = 0x5A827999;
	var k2 = 0x6ED9EBA1;
	var k3 = 0x8F1BBCDC;
	var k4 = 0xCA62C1D6;

	var h0 = 0x67452301;
	var h1 = 0xEFCDAB89;
	var h2 = 0x98BADCFE;
	var h3 = 0x10325476;
	var h4 = 0xC3D2E1F0;

	for(var i=0;i<x.length;i+=16) {
		var j,t;
		var a = h0;
		var b = h1;
		var c = h2;
		var d = h3;
		var e = h4;
		for(j = 0;j<16;j++) {
			w[j] = x[i+j];
			t = add32x5(e,(a>>>27)|(a<<5),d^(b&(c^d)),w[j],k1);
			e=d; d=c; c=(b>>>2)|(b<<30); b=a; a = t;
		}
		for(j=16;j<20;j++) {
			w[j] = rol32(w[j-3]^w[j-8]^w[j-14]^w[j-16]);
			t = add32x5(e,(a>>>27)|(a<<5),d^(b&(c^d)),w[j],k1);
			e=d; d=c; c=(b>>>2)|(b<<30); b=a; a = t;
		}
		for(j=20;j<40;j++) {
			w[j] = rol32(w[j-3]^w[j-8]^w[j-14]^w[j-16]);
			t = add32x5(e,(a>>>27)|(a<<5),b^c^d,w[j],k2);
			e=d; d=c; c=(b>>>2)|(b<<30); b=a; a = t;
		}
		for(j=40;j<60;j++) {
			w[j] = rol32(w[j-3]^w[j-8]^w[j-14]^w[j-16]);
			t = add32x5(e,(a>>>27)|(a<<5),(b&c)|(d&(b|c)),w[j],k3);
			e=d; d=c; c=(b>>>2)|(b<<30); b=a; a = t;
		}
		for(j=60;j<80;j++) {
			w[j] = rol32(w[j-3]^w[j-8]^w[j-14]^w[j-16]);
			t = add32x5(e,(a>>>27)|(a<<5),b^c^d,w[j],k4);
			e=d; d=c; c=(b>>>2)|(b<<30); b=a; a = t;
		}

		h0 = add32(h0,a);
		h1 = add32(h1,b);
		h2 = add32(h2,c);
		h3 = add32(h3,d);
		h4 = add32(h4,e);
	}
	return Array(h0,h1,h2,h3,h4);
};


}
//}}}
;Artículos
:[[Mitos]]
:[[¿WiseOnes cómo NPCs?]]
SpanishTW
/***
|''Name:''|DeprecatedFunctionsPlugin|
|''Description:''|Support for deprecated functions removed from core|
***/
//{{{
if(!version.extensions.DeprecatedFunctionsPlugin) {
version.extensions.DeprecatedFunctionsPlugin = {installed:true};

//--
//-- Deprecated code
//--

// @Deprecated: Use createElementAndWikify and this.termRegExp instead
config.formatterHelpers.charFormatHelper = function(w)
{
	w.subWikify(createTiddlyElement(w.output,this.element),this.terminator);
};

// @Deprecated: Use enclosedTextHelper and this.lookaheadRegExp instead
config.formatterHelpers.monospacedByLineHelper = function(w)
{
	var lookaheadRegExp = new RegExp(this.lookahead,"mg");
	lookaheadRegExp.lastIndex = w.matchStart;
	var lookaheadMatch = lookaheadRegExp.exec(w.source);
	if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
		var text = lookaheadMatch[1];
		if(config.browser.isIE)
			text = text.replace(/\n/g,"\r");
		createTiddlyElement(w.output,"pre",null,null,text);
		w.nextMatch = lookaheadRegExp.lastIndex;
	}
};

// @Deprecated: Use <br> or <br /> instead of <<br>>
config.macros.br = {};
config.macros.br.handler = function(place)
{
	createTiddlyElement(place,"br");
};

// Find an entry in an array. Returns the array index or null
// @Deprecated: Use indexOf instead
Array.prototype.find = function(item)
{
	var i = this.indexOf(item);
	return i == -1 ? null : i;
};

// Load a tiddler from an HTML DIV. The caller should make sure to later call Tiddler.changed()
// @Deprecated: Use store.getLoader().internalizeTiddler instead
Tiddler.prototype.loadFromDiv = function(divRef,title)
{
	return store.getLoader().internalizeTiddler(store,this,title,divRef);
};

// Format the text for storage in an HTML DIV
// @Deprecated Use store.getSaver().externalizeTiddler instead.
Tiddler.prototype.saveToDiv = function()
{
	return store.getSaver().externalizeTiddler(store,this);
};

// @Deprecated: Use store.allTiddlersAsHtml() instead
function allTiddlersAsHtml()
{
	return store.allTiddlersAsHtml();
}

// @Deprecated: Use refreshPageTemplate instead
function applyPageTemplate(title)
{
	refreshPageTemplate(title);
}

// @Deprecated: Use story.displayTiddlers instead
function displayTiddlers(srcElement,titles,template,unused1,unused2,animate,unused3)
{
	story.displayTiddlers(srcElement,titles,template,animate);
}

// @Deprecated: Use story.displayTiddler instead
function displayTiddler(srcElement,title,template,unused1,unused2,animate,unused3)
{
	story.displayTiddler(srcElement,title,template,animate);
}

// @Deprecated: Use functions on right hand side directly instead
var createTiddlerPopup = Popup.create;
var scrollToTiddlerPopup = Popup.show;
var hideTiddlerPopup = Popup.remove;

// @Deprecated: Use right hand side directly instead
var regexpBackSlashEn = new RegExp("\\\\n","mg");
var regexpBackSlash = new RegExp("\\\\","mg");
var regexpBackSlashEss = new RegExp("\\\\s","mg");
var regexpNewLine = new RegExp("\n","mg");
var regexpCarriageReturn = new RegExp("\r","mg");

}
//}}}
Hay una gran diferencia entre los Juegos de Rol y los demás juegos, y es que el objetivo final o meta del mismo: todo el mundo asume que un juego debe tener un principio y un fin, y que este llega cuando alguien gana. En los Juegos de Rol esto no se cumple, pues nadie gana por encima de los demás, sino con ellos. El objetivo no es ganar, sino divertirse y ocializar.

Usualmente una aventura tiene algún fin de algun tipo, como proteger al
pueblo de una invasión, rescatar a alguien, explorar unas ruinas antiguas.
Típicamente este fin puede ser obtenido en un tiempo que puede variar entre 8 horas y varias sesiones de juego.

Sin embargo, el juego no termina cuando termina la aventura, ya que los
mismos personajes pueden tener diversas aventuras, o esa anterior puede
conducir a la necesidad de otra de naturaleza distinta... la trama puede
ser tan complicada como el Director de Juego pueda imaginarla. Este tipo de aventuras en serie, a veces recibe el nombre de "campaña", aunque no es un término rígido.

En estos juegos, sin embargo, también existe un nivel de azar, ya que en
casi todos ellos están incluidos una serie de dados (a veces cartas) que se usan para determinar ciertas situaciones, en especial el combate, que puede ser, eventualmente, una parte importante de todo juego.
Tal y como ha sido explicado, durante la aventura, campaña o sesión, usted le dice al Director de Juego lo que quiere que su personaje haga. Él
describe sus alrededores mientras usted los intenta construir mentalmente.
Cierra los ojos y construlle las paredes del laberinto, el castillo o el
edificio en el que se encuentra su personaje.Imagina los seres con los que
se topas a medida que son descritos por el Director de Juego. Ahora imagine
que no es usted, con sus habilidades, posesiones y creencias, sino otra
persona con habilidades posesiones y creencias distintas y bien determinadas
previamente. ¿Qué haría en su lugar? ¿sabe su personaje lo necesario para
intentar eso que se le ocurre? ¿tiene los implementos o la ayuda necesaria?
¿le crearía un conflicto ético a ese personaje hacerlo? Todas estas son
preguntas que surgen al interpretar un personaje en un juego de Rol.
El tener un skill "mágico" (pero no directamente wizardry, priestcraft, sorcery, druidism o mysticism), te permitirá lograr efectos de muchas esferas distintas, que no necesariamente manejas con el skill requerido para ser Full Practitioner.

Por ejemplo: Con Herbalismo podrás emular un efecto de "Channeling" que te de sueño, una vez la persona ingiera un té, pero un menjurje podría actuar como droga que te permitiría ver auras durante un corto tiempo, que sería un efecto de la esfera de "Sensitivity". En todo caso, los efectos mágicos de estas profesionas que "manejan indirectamente" la magia, son hechizos de poco poder.

Una persona con Sun Wizardry, por ejemplo, podría tener sólo la escuela de "Enchantment", o tener máximo 3 escuelas. Pero podría lograr hechizos de 25 spellpoints! Estaría restringido en cantidad de escuelas, pero no en poder.

Mientras que un Herbalista, Alquimista, Matemático, etc... podría lograr efectos menores de un grupo de esferas o escuelas, pero poder efectivo muy limitado respecto a Wizardry, Druidism, Mysticism, Sorcery practicadas por un "Full Practitioner".

Falta definir si un "Full Practioner" puede lograr o no efectos más poderosos de los skills "canalizadores de magia" como Herbalismo, Alquimia y Matemáticas. Creo que puedo llamarlos Disciplinas Metafísicas, mientras que a Wizardry, Sorcery, Druidism y Mysticism, las llamaré Disciplinas Mágicas. Voy a modificar el título de este post según eso... jeje. Así no tengo que listar ejemplos para referirme a ellas!
[[MptwEditTemplate]]
<!--{{{-->
<div class='toolbar' macro='toolbar +saveTiddler -cancelTiddler deleteTiddler'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser'></span></div>
<!--}}}-->
Ahora mi próximo paso es definir qué pueden manejar los Sun Wizards, los Moon Wizards, Sun Clerics, Moon Clerics, Sun Sorcerers, Moon Sorcerers, Gaia Druids (sólo son de Gaia, no los hay ni Moon ni Sun)...

Es decir, qué tipo de "esferas" o "escuelas" de magia permiten manejar los espíritus solares, lunares y de gaia a los diferentes spellcasters.

Obviamente habrá roles tipo "rogue", "fighters", y todo lo demás... pero no son tan diferentes en habilidades debido a las 3 fuerzas, porque no son spellcasters.

También tengo que definir qué son los Místicos... Ya he dicho que no usan energía mágica de seres externos, sino la suya propia (y que todo el mundo tiene, pero no usa).

He estado pensando que los mystics descubran dentro de si las 3 fuerzas: en su coronilla el InnerSun Chi... algo así como el "chakra" de energía del "sol" interno, en el vientre el InnerMoon Chi... o "chakra" de la luna interna, y en el medio del plexo solar el InnerGaia Chi,... o "Chakra" de la Gaia interna.
Pero serían poderes que vienen del propio indivíduo, de él como espíritu, y no de otro externo. Un místico dado hacia el uso del Chi para su mejoramiento físico sería como un "monk"... posiblemente si hiciera un arte marcial "tipo Sun", haría cosas parecidas a un monje Shaolin (un estilo marcial "duro"). Si fuese "tipo Moon", sería parecido al "TaiChiChuan" (un estilo marcial "suave")... y creo que el "tipo Gaia" sería quizá como el "Sing-I" (difícil de clasificar entre las categorías "suave" y "duro", porque tiene de ambas).

Como en medicina china, cada "fuerza" tendría algo que ver con partes del cuerpo: posiblemente el Chi Solar Interno domina lo que es el Corazón (el fuego) asociada a la generosidad, y el sistema Hepático-Muscular (la madera) asociado al impulso de defender lo propio y el espíritu conquistador, el Chi Lunar Interno dominaría posiblemente el sistema Renal-Urinario-Inmunológico (el agua) aspociado a la actividad oculta y precavida, y el sistema Respiratorio (el metal) asociado a la expresión artística. Quedaría para el Chi de la Gaia Interna... el sistema Digestivo (elemento tierra) que tiene que ver con la creatividad y la concentración o foco, y unión de todos los elementos.

Veamos como termina de salir todo esto!
Para aclarar aún más lo que realmente sucede durante un juego de rol, lee
el siguiente ejemplo: Este es tipico del tipo de acciones que ocurren
druante una sesión de juego:

Poco tiempo antes de que el ejemplo empieza, tres personajes lucharon
fieramente con un hombre-rata (similar al hombre lobo, pero que se
convierte en una enorme rata en lugar de un lobo). El hombre-rata fue
herido y huyó por un tunel. Los personajes están en su persecución. Este
grupo incluye dos guerreros y un sacerdote (en un mundo medieval
fantástico). Guerrero1 es el líder del grupo.

''DJ:'' Y Lo han estado siguiendo por este tunel por alrededor de 120 yardas. El
agua en el piso les llega hasta los tobillos y está sumamente helada. De
vez en cuando sienten que algo roza sus pies. El mal olor se vuelve cada
vez más fuerte. El tunel se cubre gradualmente de una espesa y fría niebla

''Guerrero 1:'' No me gusta esto. Podemos ver algo que parezca una puerta, un
pasadizo o bifurcación?

''DJ:'' Dentro del rango visible que te proporciona la antorcha, el túnel es
más o menos recto. No ves ramales ni puertas.

''Sacerdote:'' El hombre-rata que herimos debe haber venido por este camino. No
hay otra alternativa a menos que se haya evaporado, cosa que creo poco
probable (sonrisa).

''Guerrero 1:'' A menos que hayamos pasado frente a alguna puerta escondida en
lo que llevamos de recorrido. Odio este lugar, me da escalofríos.

''Guerrero 2:'' Tenemos que rastrear a ese engendro. Yo digo que continuemos.

''Guerrero 1:'' Okey. Sigamos por este tunel. Pero mantengan sus ojos
abiertos... busquen cualquier cosa que parezca una puerta.

''DJ:'' Luego de 30 o 35 yardas de camino, encuentran un bloque de piedra en el
suelo.

''Guerrero 1:'' un bloque? Lo miro más de cerca... tendrá inscripciones?

''DJ:'' Es un bloque tallado de piedra, de 12x16 pulgadas y 18 de alto.
(observa la "percepción" en cada una de las hojas de personaje de los
jugadores, lanza un dado, saca mentalmente una cuenta sencilla antes de
decir lo siguiente) Parece hecho de un tipo de roca distinto al resto del
túnel.

''Guerrero 2:'' Dónde está? está en el centro del túnel o a un lado?

''DJ:'' Está justo pegado contra un lado.


''Guerrero 1:'' Puedo moverlo?

''DJ:'' (lanza un dado y mira la "fuerza" en la hoja de personaje del
Guerrero1) Si. Lo puedes arrastrar sin mucha dificultad.

''Sacerdote:'' Hmmm. Esto es obviamente algún tipo de marca o señal. Tanteo las
paredes en ese sitio para ver si hay puertas secretas, ladrillos flojos o
marcas en las paredes. Dispérsense y ayúdenme (mira hacia arriba y pide en
susurro iluminación de su Dios, antes de empezar).

''DJ:'' (lanza varios dados detrás de un libro de reglas, donde los jugadores no
pueden ver los resultados) Nadie encuentra nada inusual en las paredes.

''Guerrero 1:'' Tiene que estar en algún sitio!

''Sacerdote:'' Ayúdame Atenea! (mirando hacia arriba). Qué hay en el techo, por
cierto? hay bloques flojos?

''DJ:'' No puedes alcanzar el techo, te falta como un pie para alcanzarlo.

''Sacerdote:'' Por supuesto! El bloque no es una señal! es un escalón! Me monto
en el bloque y empiezo a tantear el techo.

''DJ'' (lanzando unos cuantos dados): Tu buscas, y a los 20 segundos o el medio
minuto repentinamente parte del tunel se mueve. Tu haz encontrado un panel
que se hunde hacia arriba ligeramente.

''Guerrero 1:'' Lo abro con cuidado.

''Sacerdote:'' Me asomo... puedo ver algo?

''DJ:'' Tu cabeza está todavía bajo el nivel de la abertura, pero puedes ver
algo de luz a un lado.

''Guerrero 1:'' Lo cargamos para que pueda hechar un mejor vistazo.

''DJ:'' Okey, tus amigos te levantan y tu entras a la cámara secreta...

''Guerrero 1:'' No, no! Sólo lo levantamos lo suficiente como para que pueda
sacar la cabeza por la abertura.

''DJ:'' Okey, lo levantan un pie. Cada uno de ustedes está sosteniendo una de
sus piernas. Sacerdote! tu ves un tunel muy parecido al de abajo, pero sólo
va en una dirección. Hay una puerta como a 10 yardas, por la que sale algo
de luz. Una línea de huellas de barro sale del agujero por donde estás
asomándote.

''Sacerdote:'' Perfecto. Pero quiero que los guerreros vayan primero (sonrisa).

''DJ:'' A medida que te colocan nuevamente sobre el bloque, cada uno de ustedes
escucha algunos gruñidos, y chapoteos, y armas de metal repiqueteando desde
más adelante en el túnel de donde vienen. El sonido se acerca bastante
rápido.

''Sacerdote:'' Arriba! Arriba! Empújenme por el agujero! Agarro el borde y me
trato de subir yo mismo. Ayudo al próximo a subir.

(Los tres personajes suben por la entrada)

''DJ:'' Dejan el panel abierto?

Guerrero 1: Lo empujo para que vuelva a su sitio.

''DJ:'' Se desliza de nuevo en su cavidad, con un suave sonido como "clunk".
Los gruñidos y gritos de abajo se hacen más fuertes.

''Guerrero 1:'' Grandioso! nadie nos oyó! (mueca sarcástica). Sacerdote, ven y
párate sobre el panel. Nosotros vamos a ver que hay por esa puerta.

''DJ:'' Sacerdote, escuchas gritos y murmullos abajo de ti. Luego se escucha un
golpe y el panel vibra fuertemente.

''Sacerdote:'' Están tratando de romper el panel!

''DJ'' (a los guerreros): Cuando se asoman, ven un cuarto pequeño y sucio con
una cama pequeña, y un par de mesas. En la cama está el hombre-rata hecho
un ovillo. Su espalda da hacia ustedes. Hay otra puerta en la pared más
lejana y un pequeño Gong en la esquina.

''Guerrero 1:'' Se mueve el hombre-rata?

''DJ:'' Ni un centímetro. Sacerdote, el panel es golpeado de nuevo. Puedes ver
que tiene una pequeña rajadura.

''Sacerdote:'' Hagan algo rápido muchachos!. Cuando se empieze a romper el
panel me voy a quitar e iré con ustedes!

''Guerrero 1:'' Okey, ya está! Entro en el cuarto y golpeo al hombre rata con
el escudo. Qué sucede?

''DJ:'' Nada. Vez que chorrea sangre sobre la cama.

''Guerrero 1:'' Es este el mismo hombre rata con el que peleamos antes?

''DJ:'' Quién sabe? Para ti todos los hombres-rata son iguales. Sacerdote,
nuevamente es golpeado el panel. La rajadura es realmente grande.

''Sacerdote:'' Okey... eso fue suficiente. Me quito del panel, y me voy al
cuarto con todo el mundo.

''DJ:'' Hay un golpe tremendo y escuchan rocas cayendo en el corredor, seguido
de siseos y chillidos. Ven luces de antorcha y sombras de hombres rata en
el corredor a través de la puerta.

''Guerrero 1:'' Bueno, Guerrero 2 vayamos y bloqueemos la puerta. Esa es el
área más angosta, sólo pueden venir dos a la vez. Sacerdote, permanece aquí
y prepara tus rezos... necesitaremos milagros de tu Diosa Guerrera.

''Guerrero 2:'' Por fin, una pelea decente!

''DJ:'' Cuando el primer hombre-rata aparece en la puerta con una lanza en sus
garras, escuchan un sonido fuerte como "slam" detrás de ustedes.

''Sacerdote:'' Me volteo rápidamente. Qué fue eso?

''DJ:'' La puerta de atrás del cuarto se ha roto. Parado en el marco de la
puerta está, sosteniendo un mazo en cada guarra, el más grande y espantoso
hombre-rata que han visto jamás. Un par de pares de ojos rojos brillan en
la oscuridad detrás de él. El se lame los bigotes en una forma que
realmente les inquieta.

''Sacerdote:'' Aaaaarrrg! Grito el nombre de mi deidad lo más fuerte que me lo
permitan los pulmones y volteo la cama con el cuerpo del hombre-rata para
 que el cuerpo caiga en frente del hombre-rata grande. Voy a necesitar algo
de ayuda muchachos!

''Guerrero 1'' (a guerrero 2): Ayúdalo. Yo me encargaré de este extremo del
cuarto. (Al PJ:) Ataco al primero que entra por la puerta.


''Sacerdote:'' Sostengo en alto mi váculo y lo bendigo en nombre de Atenea, y
deseo una batalla justa y poco cruel.

''DJ:'' El hombre rata te mira con extrañeza, y en ese momento... ya va...
(lanza algunos dados)... si... en ese momento tu báculo empieza a brillar,
y te sientes calmado. (A los guerreros): Mientras guerrero2 está cambiando
de posición, el gran hombre-rata mira el cuerpo en el suelo y su mandíbula
cae. Cierra sus ojos hasta formar unas rendijas de luz roja, ladea un poco
la cabeza y dice en una voz muy ronca: "Ese era Ignatz. Él era mi hermano.
Ustedes mataron a mi hermano." Luego alza ambas mazas y salta hacia tí.

En este punto, una feroz pelea cuerpo a cuerpo a inicio. El DJ usa las
reglas de combate para jugar la batalla. Si los personajes sobreviven,
pueden tomar cualquier camino que escojan. Pueden matar al hombre rata, o
sólo dominarlo e interrogarlo. Miles de opciones pueden ser tomadas. La
imaginación es el límite.
/***
| Name:|ExtentTagButtonPlugin|
| Description:|Adds a New tiddler button in the tag drop down|
| Version:|3.2 ($Rev: 2406 $)|
| Date:|$Date: 2007-08-08 22:50:23 +1000 (Wed, 08 Aug 2007) $|
| Source:|http://mptw.tiddlyspot.com/#ExtendTagButtonPlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{

window.onClickTag_mptw_orig = window.onClickTag;
window.onClickTag = function(e) {
	window.onClickTag_mptw_orig.apply(this,arguments);
	var tag = this.getAttribute("tag");
	var title = this.getAttribute("tiddler");
	// Saq, you're a genius :)
	var popup = Popup.stack[Popup.stack.length-1].popup;
	createTiddlyElement(createTiddlyElement(popup,"li",null,"listBreak"),"div");
	wikify("<<newTiddler label:'New tiddler' tag:'"+tag+"'>>",createTiddlyElement(popup,"li"));
	return false;
}

//}}}
!Fauna
!!Fauna "Normal"
Colocar acá los animales típicos y específicos de Auka
!!Fauna Mounstrosa
Colocar acá las criaturas anormales
!Flora
!Vida en los Planos
/***
|Name|FramedLinksPlugin|
|Source|http://www.TiddlyTools.com/#FramedLinksPlugin|
|Version|1.0.5|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides|createExternalLink|
|Description|clicking an external link opens an IFRAME following the link instead of opening a new tab/window|
This plugin causes clicks on external links to be rendered into inline frames (~IFRAMEs) instead of opening them in new browser tabs/windows.
!!!!!Usage
<<<
Just place an external link into your tiddler content using standard TiddlyWiki syntax.  When this plugin is enabled (see Configuration), an IFRAME will be created dynamically whenever you click the external link.  Clicking on the link again removes the IFRAME.  You can hold down a modifier key (shift, control, or alt) while clicking a specific link to ''temporarily'' bypass the plugin-enhanced IFRAME handling and use the standard link handling behavior for that link.
<<<
!!!!!Configuration
<<<
<<option chkFramedLinks>> display external links using inline frames
{{{usage: <<option chkFramedLinks>>}}}

IFRAME size  (use CSS units: %, em, px, cm, in):
>width: <<option txtFrameWidth>> height: <<option txtFrameHeight>>
>{{{usage: <<option txtFrameWidth>> <<option txtFrameHeight>>}}}
<<<
!!!!!Examples
<<<
Enable the plugin (see Configuration)... then try these links:
*http://www.TiddlyWiki.com
*http://www.TiddlyTools.com
*http://groups.google.com/group/TiddlyWiki/topics
<<<
!!!!!Revision History
<<<
2007.11.29 [1.0.5] added slider animation and improved CSS handling for IFRAME height/width to maximize display area
2007.11.29 [1.0.0] initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.FramedLinks= {major: 1, minor: 0, revision: 5, date: new Date(2007,11,29)};

if (config.options.chkFramedLinks==undefined) config.options.chkFramedLinks=false;
if (config.options.txtFrameWidth==undefined) config.options.txtFrameWidth="100%";
if (config.options.txtFrameHeight==undefined) config.options.txtFrameHeight="80%";

window.framedLinks_createExternalLink=createExternalLink;
window.createExternalLink=function(place,url)
{
	var link=this.framedLinks_createExternalLink.apply(this,arguments);
	link.onclick=function(ev) { var e=ev?ev:window.event;
		if (!config.options.chkFramedLinks || e.ctrlKey || e.shiftKey || e.altKey) return; // BYPASS
		var p=this.parentNode; 
		var f=this.nextSibling?this.nextSibling.firstChild:null; // get the IFRAME... maybe...
		var w=config.options.txtFrameWidth; if (!w || !w.length) w="100%";
		var h=config.options.txtFrameHeight; if (!h || !h.length) h="80%";
		if (h.indexOf("%")) h=(findWindowHeight()*h.replace(/%/,"")/100)+"px"; // calc height as % of window
		var showing=f && f.nodeName.toUpperCase()=="IFRAME"; // does IFRAME really exist?
		var stretchCell=p.nodeName.toUpperCase()=="TD" && w.indexOf("%")!=-1 && w.replace(/%/,"")>=100;
		if (!showing) { // create an iframe
			link.style.display="block"; // force IFRAME onto line following link
			if (stretchCell) { p.setAttribute("savedWidth",p.style.width); p.style.width="100%"; } // adjust TD so IFRAME stretches
			var wrapper=createTiddlyElement(null,"span"); // wrapper for slider animation
			wrapper.setAttribute("url",this.href); // for async loading of frame after animation completes
			var f=createTiddlyElement(wrapper,"iframe"); // create IFRAME
			f.style.backgroundColor="#fff"; f.style.width=w; f.style.height=h;
			p.insertBefore(wrapper,this.nextSibling);
			function loadURL(wrapper) { var f=wrapper.firstChild; var url=wrapper.getAttribute("url");
				var d=f.contentDocument?f.contentDocument:(f.contentWindow?f.contentWindow.document:f.document);
				d.open(); d.writeln("<html>connecting to "+url+"</html>"); d.close();
				try { f.src=url; } // if the iframe can't handle the href
				catch(e) { alert(e.description?e.description:e.toString()); } // ... then report the error
				window.scrollTo(0,ensureVisible(wrapper));
			}
			if (!config.options.chkAnimate) loadURL(wrapper);
			else {
				var morph=new Slider(wrapper,true);
				morph.callback=loadURL;
				morph.properties.push({style: 'width', start: 0, end: 100, template: '%0%'});
				anim.startAnimating(morph);
			}
		} else { // remove iframe
			link.style.display="inline"; // restore link style
			if (stretchCell) p.style.width=p.getAttribute("savedWidth"); // restore previous width of TD
			if (!config.options.chkAnimate) p.removeChild(f.parentNode);
			else {
				var morph=new Slider(f.parentNode,false,false,"all");
				morph.properties.push({style: 'width', start: 100, end: 0, template: '%0%'});
				anim.startAnimating(morph);
			}
		}
		e.cancelBubble=true; if (e.stopPropagation) e.stopPropagation(); return false;
	}
	return link;
}
//}}}
Type the text for 'Fuerzas'
Nombre de la Raza:
Hijo de Gaia

Comentarios Generales:
Humanos entre cuyos ancentros hubo sangre de algún espíritu de Gaia. Son gente hábil, resistente, de grandes pasiones internas, a menudo tosca en el trato interpersonal, y con gusto por la vida simple. En todo caso siempre hay despreocupación respecto a los convencionalismos sociales y la etiqueta. Su sabiduría no es reflejada por palabras, sino por su mirada al mismo tiempo salvaje y paciente. Tienen un don con los animales y plantas, y tienen una comprensión intuitiva de la naturaleza y sus ciclos. Se les hace difícil estar a gusto en ciudades. En combate son salvajes, apasionados, impredecibles, intuitivos y caóticos.

Descripción Básica:
No tienen una tendencia particular hacia ser esbeltos o robustos. Su piel puede estar lampiña o poblada de cabellos. Su rostro puede ser pristino, o con orgullosas barbas. La distinción no está en la forma física. Su mirada es insualmente profunda, llena de sabiduría, pasiones y una fiereza latente. Nunca un Hijo de Gaia esquivará una mirada, sino que penetrará la de los otros, la mayoría de las veces hasta resultando incómodo, si la persona tiene algo que ocultar. En caso contrario, en el fondo de los ojos, se descubrirá la compasión que tienen por todos los seres vivos.

Altura:
Igual que el resto de los humanos, pueden ser bajitos o extremadamente altos en ocasiones.

Peso:
Como ocurre con la altura, no hay tendencia definida.

Cabello:
Puede ser de cualquier color. En algunos casos puede haber remolinos que recuerden el aspecto del pelaje o plumaje de algún animal, o al follaje de alguna planta. No es infrecuente el bello facial o corporal abundante.

Ojos:
Son de color esmeralda con brillos similares a los del sol reflejado en las ondas de un lago. Sin embargo, este color puede pasar desapercibido la mayor parte del tiempo. Es fácilmente notable, sin embargo, cuando el Hijo de Gaia se encuentra expuesto a un atardecer o amanecer, y el cielo está despejado, o durante todo el día, cuando hay algún tipo de eclipse.

Piel:
Puede que refleje los efectos de la vida a la intemperie. De resto es totalmente normal. Puede haber vello abundante. Algunos Hijos de Gaia son aficionados a cubrir partes de su piel con pigmentos, en honor a las formas de la naturaleza, o para ayudarse en el camuflaje. También se usan unguentos para proteger del Sol y los elementos.

Espectativa de Vida:
120 años.

Notas:
Prefieren ropas, armadura y armas de colores y materiales naturales, demostrando poco interés por la moda o las costumbres locales de vestimenta. Prefieren las armas que no sólo ayuden en combate, sino que sean utilitarias en la vida en ambientes salvajes, ya sea como herramientas, o como apoyos en el desplazamiento, o como aparejos de caza. Usualmente son lo suficientemente cómodas o livianas como para no ser problemáticas a la hora de caminar grandes distancias con ellas a cuestas. No tienen preferencia entre el día y la noche, aunque sienten fascinación por los momentos en que el cielo se pinta de los colores de atardeceres, amaneceres y eclipses. Se sienten a gusto actuando en la libertad de ser auténticos, sin sonreír por agradar, ni hablar por no incomodar con el silencio. Les agradan los lugares no modificados por el hombre, e interactuar con animales y plantas.

Valores de Habilidades:

    * Mínimo Percepción 7
    * Máximo Presencia 5


Códigos de Habilidades:

    * Mínimo Percepción B
    * Máximo Presencia C


Defensa Natural:
-1 contra frío y calor.

Habilidades Especiales:
Poseen un Sexto sentido muy agudo, que les permite intuír el peligro justo antes de que se haga presente. Si pasan largo tiempo en reclusión en ambiente salvaje, ganan la habilidad de sentir la presencia de seres vivos a su alrededor inmediato, siempre y cuando no lleven encima nada metálico.

Requerimientos Adicionales:
Máximo de Riqueza 5, en la escala socio-económica medieval, el estatus social máximo que pueden alcanzar, debido al poco interés en las posesiones y el poder político, es el de un miembro de gremio.

Ventajas Raciales:

    * Cuando el Hijo de Gaia se encuentra expuesto a la visión de un atardecer, un amanecer, o durante un eclipse, puede recibir la bendición de Gaia en una acción determinada. En términos de juego, pueden tener una carta como TrumpBonus en una acción que elijan, o negar un fallo catastrófico producido por jugar una carta dragón.
    * Trump Bonus en acciones de Razonamiento y Presencia en ambientes salvajes.

Desventajas Raciales:
No Trump Bonus en acciones de Presencia con personajes de Riqueza mayor a 5 (estatus social mayor que el de un miembro de gremio).

Role-playing:
El rol de "ranger" resulta especialmente atrayente para estos seres. Suelen no tener Personalidad de aura blanca.
Aunque la sociedad de este medioevo en Auka está conformada por humanos y unas razas que son ligeras modificaciones de los propios humanos (pero no tan drásticas como para que sean notorias a primera vista), creo que hay otras cosas que definir.

Me gustó lo propuesto por el de The Order of the Stick: que haya varias culturas de humanos. Hay una raza misteriosa de comerciantes tipo Ictio-Sapiens (ver Waterworld), que no tienen forma de comunicarse con nadie de los continentes conocidos y comercian cosas exóticas. Hay tribus de Gnolls que acechan desde las montañas de nieve, y quién sabe que otra criatura fea.. pero ninguna suficientemente inteligente como para formar una sociedad. Nada de "pueblos de orcos", "pueblos de ogros", pueblos de hobgoblins", simplemente monstruos que a veces vienen en la noche... y no se sabe de donde vienen.

El centro de los problemas está en la sociedad misma, con los matices sutiles de los espíritus de las 3 fuerzas, y una que otra criatura que acecha en la noche (típicos terrores del medioevo).
*[[Ciudades y construcciones]]
*[[Campos, llanuras y desiertos]]
*[[bosques]]
*[[Montañas y colinas]]
*[[Islas y promontorios]]
*[[Tierras, reinos y regiones]]
*[[Lagos y ríos]]
*[[Mares y Océanos]]
*[[Otros]]
;Artículos
:[[Gentes de Auka]]
:[[¿WiseOnes cómo NPCs?]]
:[[The Wise Ones]]
:[[Gaia Child]]
:[[Moon Child]]
:[[Sun Child]]
:[[Conflicto entre "Sabios" y Gaia]]
:[[La Raza de "Sabios"]]
Ciertamente [[Auka]] es un sistema y un setting para jugadores que han madurado y no quieren andar por ahí sacando hechizos a diestra y siniestra, "bajándose" a todo el mundo... o para jugadores que quieran evolucionar hacia un tipo de roleplay más dramático y menos extraordinario.
¿Por qué lo digo? Porque es en cierta forma como Mage "The Ascension". Mientras más poderoso el hechizo, más [[Peligros]] acarrea el uso de la [[Magia]].
Así que si queremos que nuestro personaje salga gritando "Por Gaiaaaaa!" estilo los muntchkins de Werewolf The Apocalypse, tiene que ser por una buena razón, estar muy dispuesto a morir (pues será muy probable que esto ocurra), y además hacerlo con mucha experiencia (en los skills apropiados) y con apoyo de "los espíritus". En otras palabras, no será cosa de todos los días, ni de todos los meses, este tipo de heroísmos kamikaze.
Así que... señores: Sistema prohibido para jugadores Hack&Slash!
Si eso es lo que tenemos ganas de jugar (es válido!) quedémonos jugando D&D, Exalted o Werewolf!.
Los que hasta ahora hayan participado sólo en juegos de ese estilo, podrían jugar en este setting para calmar sus ánimos y jugar personajes con recursos y capacidades limitadas.
En especial, manipular energías mágicas es arriesgado, ya que este poder viene gran responsabilidad! como diría nuestro amigo Parker... ;D
¿Por qué lo estoy haciendo así? porque me ha empezado a fastidiar la idea de que la magia sea simplemente una cosa de coser y cantar. Gandalf lo pensaba mucho antes de resolver un asunto con magia! y estamos hablando de GANDALF!!!!!!!
Creo que el mundo de los Juegos de Rol fantásticos está sobrepoblado de sistemas donde la magia es el instrumento para salvar todo escoyo, por que es facil hacerla.
Unos tienen que lidiar con pactos, y cada "spellcasting" debe evaluarse en función de esos pactos. Otros tienen que rogar un milagro "in situ", vaya usted a saber si se lo conceden o no! Otros tienen poderes, pero no saben para qué se los dieron, pero evidentemente no es para que los usen como les da la gana. Otros tienen que permanentemente alimentar una amistad y camaradería con los espíritus salvajes que no creen en pactos, ni toman "bandos" respecto a Luna y Sol. No hay libertad para el ejercicio de la magia, sino una sociedad plagada de superstición y [[Peligros]].
La [[Magia]] no está fácil. Y lo no mágico está tan difícil como se supone que lo era en el oscurantismo. Viajar de un poblado a otro, sólo, es tarea arriesgada. No hay tienditas para "comprar espadas y pociones de curación". Llegar a un lugar y encontrar gente común, con espadas a la vista, en seguida significa desconfianza, y que alguien avise al Barón, Duque, o Señor Feudal que corresponda.
Son tiempos difíciles en [[Auka]]
/***
| Name|HideWhenPlugin|
| Description|Allows conditional inclusion/exclusion in templates|
| Version|3.0 ($Rev: 1845 $)|
| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source|http://mptw.tiddlyspot.com/#HideWhenPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
For use in ViewTemplate and EditTemplate. Example usage:
{{{<div macro="showWhenTagged Task">[[TaskToolbar]]</div>}}}
{{{<div macro="showWhen tiddler.modifier == 'BartSimpson'"><img src="bart.gif"/></div>}}}
***/
//{{{

window.removeElementWhen = function(test,place) {
	if (test) {
		removeChildren(place);
		place.parentNode.removeChild(place);
	}
};

merge(config.macros,{

	hideWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( eval(paramString), place);
	}},

	showWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !eval(paramString), place);
	}},

	hideWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( tiddler.tags.containsAll(params), place);
	}},

	showWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !tiddler.tags.containsAll(params), place);
	}},

	hideWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( tiddler.tags.containsAny(params), place);
	}},

	showWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !tiddler.tags.containsAny(params), place);
	}},

	hideWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( tiddler.tags.containsAll(params), place);
	}},

	showWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !tiddler.tags.containsAll(params), place);
	}},

	hideWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0]), place);
	}},

	showWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !(store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0])), place);
	}}

});

//}}}
Colocar información sobre Historia
Como dije, la magia será algo costoso. Un spellcaster (puro) será raro. No como en los demás juegos o settings... donde cada party tiene un wizard y un clérigo como mínimo. El DM pregunta típicamente: "¿nadie quiere sacar un mago? ¡necesitan un mago para este módulo!... bueno, entonces lo pongo como NPC..."

No.

Acá... un mago será tan raro como un atleta olímpico lo es en nuestro mundo moderno. O un ganador de un concurso internacional.

En principio nadie puede desde "cero" ser un spellcaster. Puede tener roles "afines" a cierto tipo de magia... como astrónomos, sacerdotes, herbolistas, hermitaños, astrólogos, gitanos,... pero no directamente estar dedicado a "castear"... Sino usar pequeñs cantidades de magia asociadas a sus actividades. Por ejemplo: un herbolista puede manejar la energía mágica (de gaia) que está imbuída en las hierbas. Esto es un poco como en mythus... que hay "magia" de pequeña intensidad asociada a las actividades humanas.
Uno que sea estudioso de las matemáticas, podría estudiar un terreno donde se combatirá, y ver los reportes de los espías donde dicen qué tipo de dotación de armas y soldados tiene el otro ejército, y fajarse durante semanas para "despertar" cierta magia de adivinación, que le permita al ejército suyo (si se deja aconsejar) , tener alguna ventaja frente a sus contrarios.

Un alquimista podría trabajar con sus equipos una sustancia que cuando se ponga en contacto con una ligera chispa, se despierte al elemento fuego (pólvora?).

Una persona, meditando largo tiempo, puede lograr tener más concentración para hacer un trabajo difícil. Un poeta podrá lograr efectos emocionales sutiles sobre su audiencia, o sobre los que lean su poema en el momento adecuado.

Son todos efectos "pequeños", logrados con mucho esfuerzo y siguiendo los métodos del skill asociado.

De allí, a que alguien sea un mago o clérigo, hay un trecho largo. Pero posible.

Sin embargo, olvídense de magos haciendo teleport, o clérigos reviviendo gente.

Ser un full-spellcaster es algo que tomará más tiempo, y los efectos serán MUY pero MUY sutiles, comparados incluso con mundos de magia "débil" como SAGA. Predominarán los efectos mágicos de pequeñas actividades que despiertan "magia", aunque la mayoría de los que lo hagan no estén conscientes de las fuerzas que están "despertando" levemente.
;Artículos
:[[Similitud entre un Juego de Rol y otros tipos de Juegos]]
:[[Diferencias entre un Juego de Rol y otro tipo de Juegos]]
:[[Relación entre Jugador y Narrador]]
:[[Dinámica de un Juego de Rol]]
:[[Requerimientos para Jugar Rol]]
:[[Temáticas de Juegos de Rol]]
:[[Ejemplo de Juego de Rol]]
No puedo olvidarme, ya que me he fajado tanto con las razas de hijos de las 3 fuerzas, de la raza de "Sabios", que enseñaron hace tiempo a las gentes de Auka cómo hacer hechicería, y la existencia de las 3 fuerzas.

Se que son muy debiluchos, y dados hacia la magia, y que NO SON ELFOS! (estoy cansado del cliché!.. aunque yo mismo caiga en otros clichés!). Saben los nombres verdaderos de las cosas, y no le han dicho todo a las gentes de Auka... pues no les conviene. Se reservan el conocimiento formal de la existencia de la fuerza Gaia, ... por lo que la mayoría de las personas no saben de la existencia de la fuerza Gaia,... sino que los obligan a basar su fe en el Sol y en la Luna.

Estos "Sabios" saben de Gaia, y han aprendido a torturarla, pues es la única forma en que pueden obtener su poder. Es decir, han aprendido a ser Wizards de Gaia... pactando de forma injusta. No se de donde vienen, pero creo que puede que sean seres que anteriormente fueron humanos, y la codicia con que manejaron el tema de la magia los opuso a Gaia, y eso con los años los fue deformando en su forma física. No se si parecen gnomos, viejitos, o qué... pero deben ser una cosa estéticamente no muy agradable.

A ver qué se me ocurre!
/***
|''Name:''|LegacyStrikeThroughPlugin|
|''Description:''|Support for legacy (pre 2.1) strike through formatting|
|''Version:''|1.0.2|
|''Date:''|Jul 21, 2006|
|''Source:''|http://www.tiddlywiki.com/#LegacyStrikeThroughPlugin|
|''Author:''|MartinBudden (mjbudden (at) gmail (dot) com)|
|''License:''|[[BSD open source license]]|
|''CoreVersion:''|2.1.0|
***/

//{{{
// Ensure that the LegacyStrikeThrough Plugin is only installed once.
if(!version.extensions.LegacyStrikeThroughPlugin) {
version.extensions.LegacyStrikeThroughPlugin = {installed:true};

config.formatters.push(
{
	name: "legacyStrikeByChar",
	match: "==",
	termRegExp: /(==)/mg,
	element: "strike",
	handler: config.formatterHelpers.createElementAndWikify
});

} //# end of "install only once"
//}}}
/***
| Name|LessBackupsPlugin|
| Description|Intelligently limit the number of backup files you create|
| Version|3.0 ($Rev: 2320 $)|
| Date|$Date: 2007-06-18 22:37:46 +1000 (Mon, 18 Jun 2007) $|
| Source|http://mptw.tiddlyspot.com/#LessBackupsPlugin|
| Author|Simon Baird|
| Email|simon.baird@gmail.com|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!!!Description
You end up with just backup one per year, per month, per weekday, per hour, minute, and second.  So total number won't exceed about 200 or so. Can be reduced by commenting out the seconds/minutes/hours line from modes array

!!!Notes
Works in IE and Firefox only.  Algorithm by Daniel Baird. IE code by by Saq Imtiaz.
!!!Code
***/
//{{{
window.getSpecialBackupPath = function(backupPath) {

	var MINS  = 60 * 1000;
	var HOURS = 60 * MINS;
	var DAYS  = 24 * HOURS;

	// comment out the ones you don't want
	var modes = [
		["YYYY",  365*DAYS], // one per year for ever
		["MMM",   31*DAYS],  // one per month
		["ddd",   7*DAYS],   // one per weekday
		//["d0DD",  1*DAYS],   // one per day of month
		["h0hh",  24*HOURS], // one per hour
		["m0mm",  1*HOURS],  // one per minute
		["s0ss",  1*MINS],   // one per second
		["latest",0]         // always keep last version. (leave this).
	];

	var now = new Date();

	for (var i=0;i<modes.length;i++) {

		// the filename we will try
		var specialBackupPath = backupPath.replace(/(\.)([0-9]+\.[0-9]+)(\.html)$/,
						'$1'+now.formatString(modes[i][0]).toLowerCase()+'$3')

		// open the file

		try {
			if (config.browser.isIE) {
				var fsobject = new ActiveXObject("Scripting.FileSystemObject")
				var fileExists  = fsobject.FileExists(specialBackupPath);
				if (fileExists) {
					var fileObject = fsobject.GetFile(specialBackupPath);
					var modDate = new Date(fileObject.DateLastModified).valueOf();
				}
			}
			else {
				netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
				var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
				file.initWithPath(specialBackupPath);
				var fileExists = file.exists();
				if (fileExists) {
					var modDate = file.lastModifiedTime;
				}
			}
		}
		catch(e) {
			// give up
			return backupPath;
		}

		// expiry is used to tell if it's an 'old' one. Eg, if the month is June and there is a
		// June file on disk that's more than an month old then it must be stale so overwrite
		// note that "latest" should be always because the expiration period is zero (see above)
		var expiry = new Date(modDate + modes[i][1]);
		if (!fileExists || now > expiry)
			return specialBackupPath;
	}
}

// hijack the core function
window.getBackupPath_orig = window.getBackupPath;
window.getBackupPath = function(localPath) {
	return getSpecialBackupPath(getBackupPath_orig(localPath));
}

//}}}
Okey... aclaro lo referente a The Order of the Stick.

The Order of the Stick no es un setting, ni nada. Es un Web-comic (excelente!). En la página, en la sección "Gaming", hay varios artículos. La última serie de artículos, llamada "The World", tiene 9 posts de Rich Burlew, referidos a "The New World". Allí, él comparte con los lectores el proceso mental que él sigue para crear ese nuevo setting, reflejando las decisiones, criterios, arrepentimientos, etcétera.

Fue leyendo estos artículos que sentí completa sintonía con la mayoría de las inquietudes de él. Muchas nacidas dentro de mi desde hace mucho tiempo, y otras sin tanta historia de hibernar en mi cerebro, pero que igualmente hice mías al leer, y con mis propios matices he incorporado en "Auka".

Él propone allí dos dioses: uno Yin y otro Yang, como referencia al modelo del símbolo del TaiChi. Yo propongo tres, incluyendo a Gaia, como una diosa olvidada, y que completa un trío con cierta similiridad con los "Tres Tesoros" del taoismo.



Él propone dos razas de humanos "especiales" y yo tres. Él propone a los gnomos como la raza antígua y sabia, y yo propongo a los "Antígüos". Yo propongo adicionalmente que en su origen fueron humanos, dándole mi propio matiz.

Él propone jugar en sistema d20 el setting, yo propongo jugar en SAGA.

Yo incorporo la idea de los "planos" superpuestos, inspirada en ArsMagica, mientras que él se mantiene, en principio, en el mismo plano.

En fin... la lista es larga, pero lo importante es reconocer que hay muchas cosas en esos artículos que me inspiraron mis propias versiones. Es necesario hacer el reconocimiento, en especial porque es un trabajo muy bien hecho por este Rich Burlew.

Yo estoy formándome mi propia versión de la magia, con druidas, rangers, místicos, y skills que manejan magia pero sin que el usuario sea spellcaster, por ejemplo.

Y bueno, ahí vamos... dándole más sabor a este mundo. Cada vez tengo más ganas de jugar!
/***
|Name|LoadTiddlersPlugin|
|Source|http://www.TiddlyTools.com/#LoadTiddlersPlugin|
|Documentation|http://www.TiddlyTools.com/#LoadTiddlersPluginInfo|
|Version|3.6.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides||
|Description|macro for automated updates or one-click installations of tiddlers from remote sources|
!!!!!Documentation
>see [[LoadTiddlersPluginInfo]]
!!!!!Configuration
<<<
__password-protected server settings //(optional, if needed)//:__
>username: <<option txtRemoteUsername>> password: <<option txtRemotePassword>>
>{{{usage: <<option txtRemoteUsername>> <<option txtRemotePassword>>}}}
>''note: these settings are also used by [[ExternalTiddlersPlugin]] and [[ImportTiddlersPlugin]]''
<<<
!!!!!Revision History
<<<
2008.01.07 [3.6.0] added 'init' option to automatically invoke plugin tiddlers as soon as they are loaded (without needing save/reload)
|please see [[LoadTiddlersPluginHistory]] for additional revision details|
2005.07.20 [1.0.0] Initial Release
<<<
!!!!!Code
***/
//{{{
version.extensions.loadTiddlers = {major: 3, minor: 6, revision: 0, date: new Date(2008,1,7)};

config.macros.loadTiddlers = {
	label: "",
	prompt: "add/update tiddlers from '%0'",
	lockedTag: "noReload",	// if existing tiddler has this tag value, don't overwrite it, even if inbound tiddler is newer
	askMsg: "Please enter a local path/filename or a remote URL",
	openMsg: "Opening %0",
	openErrMsg: "Could not open %0 - error=%1",
	readMsg: "Read %0 bytes from %1",
	foundMsg: "Found %0 tiddlers in %1",
	nochangeMsg: "'%0' is up-to-date... skipped.",
	lockedMsg: "'%0' is tagged '%1'... skipped.",
	skippedMsg: "skipped (cancelled by user)",
	loadedMsg: "Loaded %0 of %1 tiddlers from %2",
	reportTitle: "ImportedTiddlers",
	warning: "Warning!!  Processing '%0' as a systemConfig (plugin) tiddler may produce unexpected results! Are you sure you want to proceed?",
	handler: function(place,macroName,params) {
		var label=(params[0] && params[0].substr(0,6)=='label:')?params.shift().substr(6):this.label;
		var prompt=(params[0] && params[0].substr(0,7)=='prompt:')?params.shift().substr(7):this.prompt;
		var filter="updates";
		if (params[0] && (params[0]=='all' || params[0]=='new' || params[0]=='changes' || params[0]=='updates'
			|| params[0].substr(0,8)=='tiddler:' || params[0].substr(0,4)=='tag:'))
			filter=params.shift();
		var src=params.shift(); if (!src || !src.length) return; // filename is required
		var quiet=(params[0]=="quiet"); if (quiet) params.shift();
		var ask=(params[0]=="confirm"); if (ask) params.shift();
		var force=(params[0]=="force"); if (force) params.shift();
		var init=(params[0]=="init"); if (init) params.shift();
		var noreport=(params[0]=="noreport"); if (noreport) params.shift();
		this.newTags=[]; if (params[0]) this.newTags=params; // any remaining params are used as "autotags"
		if (label.trim().length) {
			// link triggers load tiddlers from another file/URL and then applies filtering rules to add/replace tiddlers in the store
			createTiddlyButton(place,label.format([src.replace(/%20/g," ")]),prompt.format([src.replace(/%20/g," ")]), function() {
				if (src=="ask") src=prompt(this.askMsg);
				config.macros.loadTiddlers.loadFile(src,config.macros.loadTiddlers.doImport,{quiet:quiet,ask:ask,filter:filter,force:force,init:init,noreport:noreport});
			})
		}
		else {
			// load tiddlers from another file/URL and then apply filtering rules to add/replace tiddlers in the store
			if (src=="ask") src=prompt(this.askMsg);
			config.macros.loadTiddlers.loadFile(src,config.macros.loadTiddlers.doImport,{quiet:quiet,ask:ask,filter:filter,force:force,init:init,noreport:noreport});
		}
	},
	fileExists: function(theFile) {
		var found=false;
		// DEBUG: alert('testing fileExists('+theFile+')...');
		if(window.Components) {
			try { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); }
			catch(e) { return false; } // security access denied
			var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
			try { file.initWithPath(theFile); }
			catch(e) { return false; } // invalid directory
			found = file.exists();
		}
		else { // use ActiveX FSO object for MSIE 
			var fso = new ActiveXObject("Scripting.FileSystemObject");
			found = fso.FileExists(theFile)
		}
		// DEBUG: alert(theFile+" "+(found?"exists":"not found"));
		return found;
	},
	loadFile: function(src,callback,params) {
		var quiet=params.quiet;
		if (src==undefined || !src.length) return null; // filename is required
		if (!quiet) clearMessage();
		if (!quiet) displayMessage(this.openMsg.format([src.replace(/%20/g," ")]));
		if (src.substr(0,5)!="http:" && src.substr(0,5)!="file:") { // if src is relative (i.e., not a URL)
			if (!this.fileExists(src)) { // if file cannot be found, might be relative path.. try fixup
				var pathPrefix=document.location.href;  // get current document path and trim off filename
				var slashpos=pathPrefix.lastIndexOf("/"); if (slashpos==-1) slashpos=pathPrefix.lastIndexOf("\\"); 
				if (slashpos!=-1 && slashpos!=pathPrefix.length-1) pathPrefix=pathPrefix.substr(0,slashpos+1);
				src=pathPrefix+src;
				if (pathPrefix.substr(0,5)!="http:") src=getLocalPath(src);
			}
		}
		if (src.substr(0,4)!="http" && src.substr(0,4)!="file") { // if not a URL, read from local filesystem
			var txt=loadFile(src);
			if ((txt==null)||(txt==false)) // file didn't load
				{ if (!quiet) displayMessage(this.openErrMsg.format([src.replace(/%20/g," "),"(unknown)"])); }
			else {
				if (!quiet) displayMessage(this.readMsg.format([txt.length,src.replace(/%20/g," ")]));
				if (callback) callback(true,params,convertUTF8ToUnicode(txt),src,null);
			}
		} else {
			var name=config.options.txtRemoteUsername; var pass=config.options.txtRemotePassword;
			var x=doHttp("GET",src,null,null,name,pass,callback,params,null)
		}
	},
	readTiddlersFromHTML: function(html) {
		// for TW2.2+
		if (TiddlyWiki.prototype.importTiddlyWiki!=undefined) {
			var remoteStore=new TiddlyWiki();
			remoteStore.importTiddlyWiki(html);
			return remoteStore.getTiddlers("title");	
		}
	},
	doImport: function(status,params,html,src,xhr) {
		var quiet=params.quiet;
		var ask=params.ask;
		var filter=params.filter;
		var force=params.force;
		var init=params.init;
		var noreport=params.noreport;
		var tiddlers = config.macros.loadTiddlers.readTiddlersFromHTML(html);
		var count=tiddlers?tiddlers.length:0;
		var querypos=src.lastIndexOf("?"); if (querypos!=-1) src=src.substr(0,querypos);
		if (!quiet) displayMessage(config.macros.loadTiddlers.foundMsg.format([count,src.replace(/%20/g," ")]));
		store.suspendNotifications();
		var count=0;
		if (tiddlers) for (var t=0;t<tiddlers.length;t++) {
			var inbound = tiddlers[t];
			var theExisting = store.getTiddler(inbound.title);
			if (inbound.title==config.macros.loadTiddlers.reportTitle)
				continue; // skip "ImportedTiddlers" history from the other document...
			if (theExisting && theExisting.tags.contains(config.macros.loadTiddlers.lockedTag)) {
				if (!quiet) displayMessage(config.macros.loadTiddlers.lockedMsg.format([theExisting.title,config.macros.loadTiddlers.lockedTag]));
				continue; // skip existing tiddler if tagged with 'noReload'
			}
			// apply the all/new/changes/updates filter (if any)
			if (filter && filter!="all") {
				if ((filter=="new") && theExisting) // skip existing tiddlers
					continue;
				if ((filter=="changes") && !theExisting) // skip new tiddlers
					continue;
				if ((filter.substr(0,4)=="tag:") && inbound.tags.indexOf(filter.substr(4))==-1) // must match specific tag value
					continue;
				if ((filter.substr(0,8)=="tiddler:") && inbound.title!=filter.substr(8)) // must match specific tiddler name
					continue;
				if (!force && store.tiddlerExists(inbound.title) && ((theExisting.modified.getTime()-inbound.modified.getTime())>=0))
					{ if (!quiet) displayMessage(config.macros.loadTiddlers.nochangeMsg.format([inbound.title])); continue; }
			}
			// get confirmation if required
			if (ask && !confirm((theExisting?"Update":"Add")+" tiddler '"+inbound.title+"'\nfrom "+src.replace(/%20/g," ")))
				{ tiddlers[t].status=config.macros.loadTiddlers.skippedMsg; continue; }
			// DO IT!
			var tags=Array.concat(inbound.tags,config.macros.loadTiddlers.newTags);
	                store.saveTiddler(inbound.title, inbound.title, inbound.text, inbound.modifier, inbound.modified, tags, inbound.fields, true, inbound.created);
	                store.fetchTiddler(inbound.title).created = inbound.created; // force creation date to imported value - needed for TW2.1.3 or earlier
			tiddlers[t].status=theExisting?"updated":"added"
			if (init && tags.contains("systemConfig") && !tags.contains("systemConfigDisable")) {
				var ok=true;
				if (ask||!quiet) ok=confirm(config.macros.loadTiddlers.warning.format([inbound.title]))
				if (ok) { // run the plugin
					try { window.eval(inbound); tiddlers[t].status+=" (plugin initialized)"; }
					catch(ex) { displayMessage(config.messages.pluginError.format([exceptionText(ex)])); }
				}
			}
			count++;
		}
		store.resumeNotifications();
		if (count) {
			// refresh display
			store.setDirty(true); store.notifyAll();
			// generate a report
			if (!noreport) config.macros.loadTiddlers.report(src,tiddlers,count,quiet);
		}
		// always show final message when tiddlers were actually loaded
		if (!quiet||count) displayMessage(config.macros.loadTiddlers.loadedMsg.format([count,tiddlers.length,src.replace(/%20/g," ")]));
	},
	report: function(src,tiddlers,count,quiet) {
		// format the new report content
		var newText = "On "+(new Date()).toLocaleString()+", ";
		newText += config.options.txtUserName+" loaded "+count+" tiddlers ";
		newText += "from\n[["+src+"|"+src+"]]:\n";
		newText += "<<<\n";
		for (var t=0; t<tiddlers.length; t++)
			if (tiddlers[t].status)
				newText += "#[["+tiddlers[t].title+"]] - "+tiddlers[t].status+"\n";
		newText += "<<<\n";
		// get current report (if any)
		var title=config.macros.loadTiddlers.reportTitle;
		var currText="";
		var theReport = store.getTiddler(title);
		if (theReport) currText=((theReport.text!="")?'\n----\n':"")+theReport.text;
		// update the ImportedTiddlers content and show the tiddler
		store.saveTiddler(title, title, newText+currText, config.options.txtUserName, new Date(), theReport?theReport.tags:null, theReport?theReport.fields:null);
		if (!quiet) { story.displayTiddler(null,title,1,null,null,false); story.refreshTiddler(title,1,true); }
	}
}
//}}}
;Artículos
:[[Uso de la Magia]]
:[[Intensidad de la Magia]]
:[[Magia - exprimirla, mendigarla, soportarla, asumirla, generarla...]]
:[[Disciplina Mágica vs. Metafísica]]
:[[Pactos, Familiares, y efectos del uso de la magia]]
:[[Sorcerers y sus Familiares]]
En Auka la Magia es distinta a los diferentes RPGs de fantasía medieval:

Wizards: realizan pactos con los que obligan a los espíritus de las fuerzas "divinas" (Sol, Luna... y posiblemente Gaia), para que les hagan favores,... lo cuál vienen a ser los hechizos. No son "científicos" sobrenaturales. Son los propios hechiceros que hacen pactos con quién sabe qué! y bueno... hay pactos mutuamente beneficiarios... y pactos verdaderamente injustos. La sociedad los tiene relegados, pues si los Dioses son Sol y Luna... pues... manipular a los Dioses no luce como muy buen! aunque en el fondo esos espíritus fueron puestos por Sol y Luna para eso mismo. Tienen que castear como los de DarkSun... escondiditos! o los agarra la inquisición... Estos tipos castean a punta de Palabras, Nombres Verdaderos, y vericuetos de los pactos... digamos... leguleyerías! Es decir: con Reasoning.

Clérigos: se portan bien, procuran entender bien las fuerzas "divinas" (Sol, Luna... y no se si Gaia), para poder luego rogarles aunque sea un milagrito... que vienen a ser los hechizos de magia divina. No son los clérigos de D&D. El milagrito ni de casualidad se los da Sol, Luna ni Gaia... mucho menos... ellos están más allá de eso! se los dan los espíritus de esas fuerzas. Estos jalamecates castean con Spirit.. que refleja su entendimiento de las fuerzas, y voluntad para portarse bien! al menos a los ojos de su Dios.

Sorcerers: no hicieron nada... no pidieron nada... simplemente algún espíritu loco, o una fuerza divina (Sol, Luna... y definitivamente Gaia no!) decidió darles el "talento" de manejar la magia, y no saben porqué, ni quién, ni para qué se la dio. Son vistos como "iluminados" o "bendecidos", aunque no se sepa bien que esperar de ellos, ni ellos por qué deben soportar esa "responsabilidad". Al ser "bendecidos" con ese regalote... algo cambió.. algo proyectan,.. tienen una secreta confianza en si mismos... y no es que casteen gracias a la simpatía, pero esta es reflejo de lo que les ocurrió. Castean en base a Presence.

Druidas: son los que decidieron "conectarse" con el mundo que les rodea... con sus criaturas, con los latidos de la tierra y el susurro de las olas del mar. Su conexión con Gaia les hace ver lo mágico de las cosas simples, y en vez de temer a los espíritus de Gaia, duendes, hadas, árboles que hablan, simplemente asumen que son un espíritu más.. y a veces piden, a veces, pactan, a veces reciben un favor sin pedirlo. Su conexión con el mundo se refleja en su alta capacidad para percibir lo visible y lo invisible, y para interpretarlo. Castean en base a Perception.

Místicos: son los que principalmente ven hacia si mismos, hacia el centro de su ser, su espíritu. El poder que logran sacar de él, es accesible a todo el mundo... si tan solo supieran de lo que son capaces por ellos mismos sin necesidad de los demás espíritus y fuerzas! Básicamente pueden pensarse como gente con poderes psiónicos. Castean con Spirit también. Tan sólo confían en ellos mismos, y su gran potencial y propia divinidad.
[[Bienvenida]]
[[Cambios Recientes]]
!Secciones
[[Auka]]
[[Juegos de Rol]]
[[Magia]]
[[Habitantes]]
[[Roles]]
[[Geografía]]
[[Flora y Fauna]]
[[Items]]
[[Historia]]
[[Política]]
[[Culturas]]
[[Lenguajes]]
[[Referencias]]
!Links Externos
[[Página de Auka|http://o3auka.googlepages.com]]
[[Blog de O3|http://ozono27.blogspot.com]]
[[Página de Auka|http://o3auka.googlepages.com]]
[[Blog de Auka|http://o3mundos.blogspot.com]]


TW <<version>>

[img[imagen|http://o3auka.googlepages.com/auka-vertical.jpg]]

los lobos pueden ser criaturas de los demonios, y pueden querer robar niños.
Los bosques están encantados por espíritus que vuelven locos a los hombres.
Los padres chequean 2 veces las ventanas y puertas en la noche, para asegurarse de que no entre "nada". Los sacerdotes piden protección a su dios para proteger a Sus hijos. Tiempos de Tumulto e ignorancia. La mayoría no se aleja más de 5 millas de casa. Aventureros y caballeros viajan por las tierras en grupos. Los inquisidores van por el mundo con el fanatismo en sus ojos, buscando sígnos de blasfemia y heregía. Los nobles toman ofensas como justificativos de batalla.
Vastas regiones salvajes continuan sin ser exploradas. Nadie sabe qué es lo que merodea en los bosques. Todos tienen una historia de horror que contar y una advertencia para losviajeros. Cuando el sol se pone, la oscuridad es tan abrumadora que se traga sus manos ante su rostro.
La noche tiene los ecos de los bandidos, segudiores de cultos extraños, bajo capas oscuras, desafiando a las iglesias.
El sol del verano amenaza con derretir las almas y el aliento.

Estas son sensaciones tomadas de Werewolf DarkAges, que aplican perfectamente para Auka. Este es el "sabor" oscurantista que tiene el mundo. No es simplemente que el conocimiento esté oculto para la mayoría. Es que el mundo es un lugar extraño y peligroso, y para las masas, la salvación de su alma es asunto que deben al trabajo de sus pastores: los clérigos, y a "portarse bien".
These are the MonkeyPirateTiddlyWiki plugins that are here so far. (Except for UploadPlugin which comes from http://tiddlywiki.bidix.info/). They have all been rewritten to take advantage of the new features of TiddlyWiki 2.1. (Pre 2.1 plugins can be found over at [[the old site|Old Stuff]].)

*[[MptwLayoutPlugin]]
*[[TagglyTaggingPlugin]]
*[[ExtendTagButtonPlugin]]
*[[RenameTagsPlugin]]
*[[QuickOpenTagPlugin]]
*[[NewMeansNewPlugin]]
*[[LessBackupsPlugin]]
*[[SelectPalettePlugin]]
*[[SaveCloseTiddlerPlugin]]
*[[NewHerePlugin]]
*[[ToggleTagPlugin]]
*[[HideWhenPlugin]]
*[[CloseOnCancelPlugin]]
*[[ConfigTweaksPlugin]]
*[[UploadPlugin]]
Nombre de la Raza:
Hijo de Luna

Comentarios Generales:
Humanos entre cuyos ancentros hubo sangre de algún espíritu de Luna. Son gente gracil, encantadora, con don de palabra, y conectados con las emociones propias y las de quienes les rodean. Tienen capacidad parar recordar historias y poder de convencimiento. No son muy dados al liderazgo, y una vez pierden la credibilidad, se les hace difícil recuperarla. En combate son dados a estrategias disuasivas, fintas, y el sigilo.

Descripción Básica:
Son de contextura esbelta y delgada, movimientos fluídos y precisos. Su mirada es magnética, astuta y en ocasiones traviesa.

Altura:
Suelen ser igualmente altos, o quizá ligeramente más bajos que la media humana.

Peso:
Suelen ser un poco más livianos que la media, pero no por mala nutrición sino por contextura liviana.

Cabello:
Tiende a ser oscuro. En algunos casos inclusive puede haber mechones plateados con brillo metálico.

Ojos:
Son de color plateado metálico, en una gama que va desde los ojos grises pizarra con destellos ocasionales metálicos, hasta el plateado casi puramente blanco. Sin embargo, este color puede pasar desapercibido la mayor parte del tiempo. Es fácilmente notable, sin embargo, cuando el Hijo de Luna se encuentra expuesto al la Luna en horas nocturnas, y el cielo está despejado, o durante toda la noche, si es día de Luna llena o Eclipse de Sol.

Piel:
Tiende a ser naturalmente más pálida de lo usual.

Espectativa de Vida:
120 años.

Notas:
Prefieren ropas, armadura y armas de colores hermosos y balanceados, en ocasiones prefiriendo colores oscuros. Prefieren las armas discretas, fácilmente disimuladas por la ropa o la capa. Suelen ser de hábitos principalmente nocturnos. Se sienten cómodos siendo centro de atención, expresando su sensibilidad mediante alguna forma de arte.

Valores de Habilidades:

    * Mínimo Presencia 7
    * Máximo Resistencia o Fuerza 5


Códigos de Habilidades:

    * Mínimo Presencia B
    * Máximo Resistencia y Agilidad C


Defensa Natural:
-2 contra daño basado en frío

Habilidades Especiales:
Ven normalmente en la oscuridad, cuando hay aunque sea un poco de luz de luna o de estrellas.

Requerimientos Adicionales:
Pericia de tipo Artístico.

Ventajas Raciales:

    * Cuando el Hijo de Luna se encuentra expuesto al la Luna en horas nocturnas, y el cielo está despejado, o durante toda la noche, si es día de Luna llena o Eclipse de Sol, pueden recibir la bendición de la Luna en una acción determinada. En términos de juego, pueden tener una carta como TrumpBonus en una acción que elijan, o negar un fallo catastrófico producido por jugar una carta dragón.
    * Trump Bonus en acciones de Presencia cuando se esté tratando de persuadir, entretener, influír en emociones, o realizar una presentación artística.

Desventajas Raciales:
Una vez se descubre la distorción de una verdad en sus palabras, no posee TrumpBonus para recuperar su credibilidad.

Role-playing:
El rol de "bardo" resulta especialmente atrayente para estos seres. Suelen no tener Naturaleza y Personalidad de aura blanca al mismo tiempo.
/***
| Name|MptwLayoutPlugin|
| Description|A package containing templates and css for the MonkeyPirateTiddlyWiki layout|
| Version|3.0 ($Rev: 2721 $)|
| Source|http://mptw.tiddlyspot.com/#MptwLayoutPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!Notes
Presumes you have TagglyTaggingPlugin installed. To enable this you should have a PageTemplate containing {{{[[MptwPageTemplate]]}}} and similar for ViewTemplate and EditTemplate.
***/
//{{{
// used in MptwViewTemplate
config.mptwDateFormat = 'DD/MM/YY';
config.mptwJournalFormat = 'Journal DD/MM/YY';
//config.mptwDateFormat = 'MM/0DD/YY';
//config.mptwJournalFormat = 'Journal MM/0DD/YY';

config.shadowTiddlers.GettingStarted += "\n\nSee also MonkeyPirateTiddlyWiki.";

merge(config.annotations,{
	MptwEditTemplate: "Contains the default MPTW EditTemplate. If you want to customise this rename it to EditTemplate",
	MptwViewTemplate: "Contains the default MPTW ViewTemplate. If you want to customise this rename it to ViewTemplate",
	MptwPageTemplate: "Contains the default MPTW PageTemplate. If you want to customise this rename it to PageTemplate",
	MptwStyleSheet:   "Contains the default MPTW ~StyleSheet. Designed to be included in StyleSheet tiddler using the double square bracketted notation like this: {{{[[MptwStyleSheet]]}}}"
});

//}}}

//{{{
merge(config.shadowTiddlers,{

'MptwEditTemplate':[
 "<!--{{{-->",
 "<!--- http://mptw.tiddlyspot.com/#MptwEditTemplate ($Rev: 2720 $) --->",
 "<div class=\"toolbar\" macro=\"toolbar +saveTiddler saveCloseTiddler closeOthers -cancelTiddler cancelCloseTiddler deleteTiddler\"></div>",
 "<div class=\"title\" macro=\"view title\"></div>",
 "<div class=\"editLabel\">Title</div><div class=\"editor\" macro=\"edit title\"></div>",
 "<div macro='annotations'></div>",
 "<div macro=\"showWhenExists EditPanelTemplate\">[[EditPanelTemplate]]</div>",
 "<div class=\"editLabel\">Content</div><div class=\"editor\" macro=\"edit text\"></div>",
 "<div class=\"editLabel\">Tags</div><div class=\"editor\" macro=\"edit tags\"></div>",
 "<div class=\"editorFooter\"><span macro=\"message views.editor.tagPrompt\"></span><span macro=\"tagChooser\"></span></div>",
 "<!--}}}-->"
].join("\n"),

'MptwPageTemplate':[
 "<!--{{{-->",
 "<!-- http://mptw.tiddlyspot.com/#MptwPageTemplate ($Rev: 1829 $) -->",
 "<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>",
 "	<div class='headerShadow'>",
 "		<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;",
 "		<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>",
 "	</div>",
 "	<div class='headerForeground'>",
 "		<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;",
 "		<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>",
 "	</div>",
 "</div>",
 "<!-- horizontal MainMenu -->",
 "<div id='topMenu' refresh='content' tiddler='MainMenu'></div>",
 "<!-- original MainMenu menu -->",
 "<!-- <div id='mainMenu' refresh='content' tiddler='MainMenu'></div> -->",
 "<div id='sidebar'>",
 "	<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>",
 "	<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>",
 "</div>",
 "<div id='displayArea'>",
 "	<div id='messageArea'></div>",
 "	<div id='tiddlerDisplay'></div>",
 "</div>",
 "<!--}}}-->"
].join("\n"),

'MptwStyleSheet':[
 "/*{{{*/",
 "/* http://mptw.tiddlyspot.com/#MptwStyleSheet ($Rev: 2720 $) */",
 "",
 "/* a contrasting background so I can see where one tiddler ends and the other begins */",
 "body {",
 "	background: [[ColorPalette::TertiaryLight]];",
 "}",
 "",
 "/* sexy colours and font for the header */",
 ".headerForeground {",
 "	color: [[ColorPalette::PrimaryPale]];",
 "}",
 ".headerShadow, .headerShadow a {",
 "	color: [[ColorPalette::PrimaryMid]];",
 "}",
 "",
 "/* separate the top menu parts */",
 ".headerForeground, .headerShadow {",
 "	padding: 1em 1em 0;",
 "}",
 "",
 ".headerForeground, .headerShadow {",
 "	font-family: 'Trebuchet MS' sans-serif;",
 "	font-weight:bold;",
 "}",
 ".headerForeground .siteSubtitle {",
 "	color: [[ColorPalette::PrimaryLight]];",
 "}",
 ".headerShadow .siteSubtitle {",
 "	color: [[ColorPalette::PrimaryMid]];",
 "}",
 "",
 "/* make shadow go and down right instead of up and left */",
 ".headerShadow {",
 "	left: 1px;",
 "	top: 1px;",
 "}",
 "",
 "/* prefer monospace for editing */",
 ".editor textarea, .editor input {",
 "	font-family: 'Consolas' monospace;",
 "	background-color:[[ColorPalette::TertiaryPale]];",
 "}",
 "",
 "",
 "/* sexy tiddler titles */",
 ".title {",
 "	font-size: 250%;",
 "	color: [[ColorPalette::PrimaryLight]];",
 "	font-family: 'Trebuchet MS' sans-serif;",
 "}",
 "",
 "/* more subtle tiddler subtitle */",
 ".subtitle {",
 "	padding:0px;",
 "	margin:0px;",
 "	padding-left:0.5em;",
 "	font-size: 90%;",
 "	color: [[ColorPalette::TertiaryMid]];",
 "}",
 ".subtitle .tiddlyLink {",
 "	color: [[ColorPalette::TertiaryMid]];",
 "}",
 "",
 "/* a little bit of extra whitespace */",
 ".viewer {",
 "	padding-bottom:3px;",
 "}",
 "",
 "/* don't want any background color for headings */",
 "h1,h2,h3,h4,h5,h6 {",
 "	background: [[ColorPalette::Background]];",
 "	color: [[ColorPalette::Foreground]];",
 "}",
 "",
 "/* give tiddlers 3d style border and explicit background */",
 ".tiddler {",
 "	background: [[ColorPalette::Background]];",
 "	border-right: 2px [[ColorPalette::TertiaryMid]] solid;",
 "	border-bottom: 2px [[ColorPalette::TertiaryMid]] solid;",
 "	margin-bottom: 1em;",
 "	padding:1em 2em 2em 1.5em;",
 "}",
 "",
 "/* make options slider look nicer */",
 "#sidebarOptions .sliderPanel {",
 "	border:solid 1px [[ColorPalette::PrimaryLight]];",
 "}",
 "",
 "/* the borders look wrong with the body background */",
 "#sidebar .button {",
 "	border-style: none;",
 "}",
 "",
 "/* this means you can put line breaks in SidebarOptions for readability */",
 "#sidebarOptions br {",
 "	display:none;",
 "}",
 "/* undo the above in OptionsPanel */",
 "#sidebarOptions .sliderPanel br {",
 "	display:inline;",
 "}",
 "",
 "/* horizontal main menu stuff */",
 "#displayArea {",
 "	margin: 1em 15.7em 0em 1em; /* use the freed up space */",
 "}",
 "#topMenu br {",
 "	display: none;",
 "}",
 "#topMenu {",
 "	background: [[ColorPalette::PrimaryMid]];",
 "	color:[[ColorPalette::PrimaryPale]];",
 "}",
 "#topMenu {",
 "	padding:2px;",
 "}",
 "#topMenu .button, #topMenu .tiddlyLink, #topMenu a {",
 "	margin-left: 0.5em;",
 "	margin-right: 0.5em;",
 "	padding-left: 3px;",
 "	padding-right: 3px;",
 "	color: [[ColorPalette::PrimaryPale]];",
 "	font-size: 115%;",
 "}",
 "#topMenu .button:hover, #topMenu .tiddlyLink:hover {",
 "	background: [[ColorPalette::PrimaryDark]];",
 "}",
 "",
 "/* make 2.2 act like 2.1 with the invisible buttons */",
 ".toolbar {",
 "	visibility:hidden;",
 "}",
 ".selected .toolbar {",
 "	visibility:visible;",
 "}",
 "",
 "/* experimental. this is a little borked in IE7 with the button ",
 " * borders but worth it I think for the extra screen realestate */",
 ".toolbar { float:right; }",
 "",
 "/* Tagger Plugin users uncomment this.  from sb56637 */",
 "/*",
 ".popup li a {",
 "   display:inline;",
 "}",
 "*/",
 "",
 "/* make it print a little cleaner */",
 "@media print {",
 "	#topMenu {",
 "		display: none ! important;",
 "	}",
 "	/* not sure if we need all the importants */",
 "	.tiddler {",
 "		border-style: none ! important;",
 "		margin:0px ! important;",
 "		padding:0px ! important;",
 "		padding-bottom:2em ! important;",
 "	}",
 "	.tagglyTagging .button, .tagglyTagging .hidebutton {",
 "		display: none ! important;",
 "	}",
 "	.headerShadow {",
 "		visibility: hidden ! important;",
 "	}",
 "	.tagglyTagged .quickopentag, .tagged .quickopentag {",
 "		border-style: none ! important;",
 "	}",
 "	.quickopentag a.button, .miniTag {",
 "		display: none ! important;",
 "	}",
 "}",
 "/*}}}*/"
].join("\n"),

'MptwViewTemplate':[
 "<!--{{{-->",
 "<!--- http://mptw.tiddlyspot.com/#MptwViewTemplate ($Rev: 2247 $) --->",
 "",
 "<div class='toolbar'>",
 "	<span macro=\"showWhenTagged systemConfig\">",
 "		<span macro=\"toggleTag systemConfigDisable . '[[disable|systemConfigDisable]]'\"></span>",
 "	</span>",
 "	<span macro=\"showWhenTagged palette\">",
 "		<span macro=\"setPalette\"></span>",
 "	</span>",
 "	<span style=\"padding:1em;\"></span>",
 "	<span macro='toolbar closeTiddler closeOthers +editTiddler deleteTiddler > fields syncing permalink references jump'></span> <span macro='newHere label:\"new here\"'></span>",
 "	<span macro='newJournalHere {{config.mptwJournalFormat?config.mptwJournalFormat:\"MM/0DD/YY\"}}'></span>",
 "</div>",
 "",
 "<div class=\"tagglyTagged\" macro=\"tags\"></div>",
 "",
 "<div class='titleContainer'>",
 "	<span class='title' macro='view title'></span>",
 "	<span macro=\"miniTag\"></span>",
 "</div>",
 "",
 "<div class='subtitle'>",
 "	<span macro='view modifier link'></span>,",
 "	<span macro='view modified date {{config.mptwDateFormat?config.mptwDateFormat:\"MM/0DD/YY\"}}'></span>",
 "	(<span macro='message views.wikified.createdPrompt'></span>",
 "	<span macro='view created date {{config.mptwDateFormat?config.mptwDateFormat:\"MM/0DD/YY\"}}'></span>)",
 "</div>",
 "",
 "<div macro=\"showWhenExists ViewPanelTemplate\">[[ViewPanelTemplate]]</div>",
 "",
 "<div macro=\"hideWhen tiddler.tags.containsAny(['css','html','pre','systemConfig']) && !tiddler.text.match('{{'+'{')\">",
 "	<div class='viewer' macro='view text wikified'></div>",
 "</div>",
 "<div macro=\"showWhen tiddler.tags.containsAny(['css','html','pre','systemConfig']) && !tiddler.text.match('{{'+'{')\">",
 "	<div class='viewer'><pre macro='view text'></pre></div>",
 "</div>",
 "",
 "<div macro=\"showWhenExists ViewDashboardTemplate\">[[ViewDashboardTemplate]]</div>",
 "",
 "<div class=\"tagglyTagging\" macro=\"tagglyTagging\"></div>",
 "",
 "<!--}}}-->"
].join("\n")

});
//}}}
Type the text for 'MundosParalelos'
/***
| Name:|NewHerePlugin|
| Description:|Creates the new here and new journal macros|
| Version:|3.0 ($Rev: 1845 $)|
| Date:|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source:|http://mptw.tiddlyspot.com/#NewHerePlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{
merge(config.macros, {
	newHere: {
		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			wikify("<<newTiddler "+paramString+" tag:[["+tiddler.title+"]]>>",place,null,tiddler);
		}
	},
	newJournalHere: {
		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			wikify("<<newJournal "+paramString+" tag:[["+tiddler.title+"]]>>",place,null,tiddler);
		}
	}
});

//}}}
/***
| Name:|NewMeansNewPlugin|
| Description:|If 'New Tiddler' already exists then create 'New Tiddler (1)' and so on|
| Version:|1.0 ($Rev: 2263 $)|
| Date:|$Date: 2007-06-13 04:22:32 +1000 (Wed, 13 Jun 2007) $|
| Source:|http://mptw.tiddlyspot.com/empty.html#NewMeansNewPlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{

String.prototype.getNextFreeName = function() {
       var numberRegExp = / \(([0-9]+)\)$/;
       var match = numberRegExp.exec(this);
       if (match) {
               var num = parseInt(match[1]) + 1;
               return this.replace(numberRegExp," ("+num+")");
       }
       else {
               return this + " (1)";
       }
}

config.macros.newTiddler.getName = function(newName) {
       while (store.getTiddler(newName))
               newName = newName.getNextFreeName();
       return newName;
}


config.macros.newTiddler.onClickNewTiddler = function()
{
	var title = this.getAttribute("newTitle");
	if(this.getAttribute("isJournal") == "true") {
		var now = new Date();
		title = now.formatString(title.trim());
	}

	title = config.macros.newTiddler.getName(title); // <--- only changed bit

	var params = this.getAttribute("params");
	var tags = params ? params.split("|") : [];
	var focus = this.getAttribute("newFocus");
	var template = this.getAttribute("newTemplate");
	var customFields = this.getAttribute("customFields");
	story.displayTiddler(null,title,template,false,null,null);
	var tiddlerElem = document.getElementById(story.idPrefix + title);
	if(customFields)
		story.addCustomFields(tiddlerElem,customFields);
	var text = this.getAttribute("newText");
	if(typeof text == "string")
		story.getTiddlerField(title,"text").value = text.format([title]);
	for(var t=0;t<tags.length;t++)
		story.setTiddlerTag(title,tags[t],+1);
	story.focusTiddler(title,focus);
	return false;
};

//}}}
Pensando en lo referente a las organizaciones encargadas de la enseñanza de la magia, hay varias cosas que ya pueden irse definiendo.
En primer lugar, debe haber varias. No debe haber sólo una por cada "método" de magia (wizardry, sorcery, priestcraft, druidism y mysticism) . De hecho, estoy cada vez más convencido de que la enseñanza de sorcery, druidism y mysticism definitivamente es más afin con la vieja escuela de alumno-maestro, en lugar de una estructura de enseñanza formal.

Wizardry

1.- División entre las 3 fuerzas

En principio podría pensar simplemente en dos escuelas de wizardry: una de Luna y otra de Sol (ambas clandestinísimas!). Si hay una escuela de Gaia wizards probablemente sólo sería de "WiseOnes", y sería la más engimática y secreta.

Gaia Wizards

    Estos serían los que aún mantienen la tradición funesta de hacer pactos con espíritus de Gaia, que en un principio fue precisamente la práctica por la cuál las fuerzas de Gaia dejaron de ayudarlos, y empezaron a tener como raza ese aspecto deforme. Aquellos que de generación en generación han transmitido esta práctica de padres a hijos, ya deben tener una deformación monstruosa. Cada pacto posiblemente les hace más similares a un animal, pero a una aberración de lo que uno puede llamar "animal".
    Conversando esto con BisteckEncebollado, coincidimos en que esto nos recordó al problema de los Gangrels (clan de Vampire, de World of Darkness), que consiste en que van asumiendo características animales de cuando en cuando, por lo que en principio no deben abusar mucho de convertirse en animales.
    Esta secta de Gaia Wizards sería la semilla perfecta para leyendas de pueblo. Yo diría que siendo ellos realmente más que ignorados por Gaia (como la raza de Wiseones en general), estos serían odiados. Por ende, su energía vital podría ser sumamente difícil de obtener. Quizá tendrían que obtenerla de formas poco comunes. Robar energía vital suena mucho a vampirismo, que es un mito medieval bastante arquetípico. Me gusta el matiz que tendría este "vampirismo". No necesariamente robarían carne. Podrían usar cualquier método. Podrían robar "energía" mediante "adoración", o por canibalismo, o por chupa-sangres, o robando emociones, creo que podría haber varias formas. Entiendo que los "Kindred of the East" de World of Darkness tenían varias formas de robar "Chi", por lo que no se limitaban a chupar sangre. Esto me dará otras ideas. En todo caso, los tipos de esta secta podrían ser la fuente de la mayoría de los mitos y leyendas. Eso si: tienen que ser muy escurridizos y ocultos. Quizá haya varias sub-sectas... dependiendo del tipo de castigo de Gaia, y posiblemente dependiendo del tipo de estrategia para obtener energía vital.
    Serían seres que generarían altísimo rechazo en los animales (en el mejor de los casos los espantarían) y los hechizos siempre dejarían un rastro en la vida circundante (plantas marchitas, alguien enfermo... etc). Son definitivamente serían gente de poca moral. !Ya veré si consigo fumarme alguna forma de que uno de estos se redima con Gaia!. Lo que si tengo claro, es que estos definitivamente serían NPCs.
    Obviamente podría haber una orden (MUCHO más secreta) de Gaia Wizards que sólo existan para detener a los Gaia Wizards malos (eh... la mayoría), y luego suicidarse. Quizá son los que buscan redención.
    Me comenta BisteckEncebollado que estos lucen como Gaia Wizards anti-tribu! LOL. Esto de "anti-tribu" es un concepto de Vampire The Masquerade (World of Darkness). Él se refirió en particular a la relación que hay entre vampiros setitas (del clan de Seth) y los children de Osiris, una línea de vampiros dedicada a cazar setitas.


Sun Wizards

    Esto de la ética de los hechiceros, me lleva a reflexionar que usualmente las escuelas de magia agrupan gente con un pensamiento moral similar,... por lo que entre los Sun Wizards, tendríamos a los Sun Wizards "buenos", los Sun Wizards "neutrales", y los Sun Wizards "malos"... digamos que ambiciosos maquiavélicos, para no satanizarlos tanto. Estos serían, entre las 3 facciones, Wizards cuyos pactos son con espíritus Sun. Probablemente esto implica que el tipo de efectos que logran necesariamente son afines a las fuerzas Sun. No esperemos a uno de estos señores activando un hechizo de invisibilidad. Sin embargo si serían los que más se acercarían a un Fireball, por ejemplo. La luz, lo frontal, lo que revela verdades, lo que impone, lo ofensivo, lo activo, sería lo característico de los hechizos. También los hechizos de protección, obviamente, pero nunca como algo desapercibido. Un hechizo de protección Sun sería evidente. Un hechizo similar al "Shield" de D&D, sería visible como un escudo de energía.


Moon Wizards

    Acá tendríamos también al menos las 3 facciones según el ethos. Pero los hechizos tendrían en común, características afines a Luna. Serían hechizos que fácilmente pasarían desapercibidos. ¡Esto podría hacer que estos wizards fuesen menos fácilmente presa de las faenas inquisitorias, definitivamente!. Serían hechizos muy asociados al mundo de los sueños, las ilusiones, las fantasías, la confusión de realidad con falsedad, lo subrepticio, pero también en su aspecto más arquetípicamente admirado, lo compasivo. Provocar fascinación, y en general, manipular las emociones y el inconsciente, podrían ser cosa frecuente en estos magos. No hay que entender esto como malo, intrínsicamente. O digamos... no necesariamente habría mala intención. Estos podrían ser los que empujaran a un jóven a dejar que su amor se manifieste por encima de su miedo, y deje de desperdiciar los años que podría estar compartiendo con la dama que complementa a su alma. También serían los más capaces de devolver la noción de compasión, alegría y virtud a un ser ensimismado en su propia oscuridad. Es necesario que enfatice esto, porque no es mi idea que lo "moon", por ser relacionado a lo "oscuro" y "misterioso", y meterse con las emociones, implique mala intención. Lo que si es cierto, es que el rol del que utiliza hechicería para complementar sus habilidades como ladrón... ¡necesariamente tendría que ser Moon!

2.- Elementalismo

Aparte de tener ese sexteto de magos "buenos", "neutrales", y "malos", de los aspectos Sun y Moon, podríamos tener a unos que definitivamente vean la magia menos como algo místico (aunque hagan su pacto), y más como algo "científico". Que vieran el pacto como simple puerta para tener un dominio más dentro del mundo material. Normalmente la gente interactúa con el aire respirando, y con la tierra caminando sobre ella, actividades totalmente desprovistas de enfoque moral (en principio). Estos considerarían que los pactos no implican algo inmoral, porque si no... ¿por qué Luna y Sol dispusieron a estos espíritus que disfrutan los pactos? Simplemente usan esa herramienta para interactuar más intimamente con su ambiente físico. Estos ni siquiera me los imagino como "neutrales", sino como "indiferentes", desde el punto de vista ético. No significa que no tengan su ética, sino que esta no tiene NADA que ver con su relación con la magia. Como dije, tendrían una visión más "científica". Trabajarían sobre lo inerte, más que en la vida, emociones, encantamientos o adivinaciones. Serían los propios estudiosos de rocas, que de tanto analizar una roca y todas sus propiedades, empiezan una relación con el espíritu de la roca, y logran empezar a "sentir" a travéz de la roca, luego podrían empezar a "controlar" el elemento tierra, luego podrían lograr crear y destruír, y quizá hasta llegarían al punto de entrar en ella o convertir parte de ellos en ese elemento. Bueno, esto es algo que definitivamente no estoy seguro de dejar que ocurra, pues implicaría un nivel de magia muy alto. Ya dije que nada de Teleports y Fireballs, así que debería revisar los límites de estos hechiceros Elementalistas, ¡que, por supuesto, vendrían en su versión Moon y en su versión Sun!.


Sorcery

1.- Auto-didactas

Lo más natural, es que la persona, al empezar a manifestar sus poderes mágicos, consiga una forma de trabajar con ellos. No es normal conocer a un "maestro", encontrarlo, y que además desee un discípulo. Estos magos solitarios tendrían métodos bastante peculiares para controlar la energía mágica, y una relación bastante caótica con el espíritu que lo "bendijo". Obviamente los habría en su versión Moon, y en su versión Sun. No hay duda de eso. Esta categoría abarcaría con más frecuencia a practicantes "parciales" de magia, más que "Full-Practitioners", debido a que descubrir la rueda uno sólo es más dificil que tomando un cursito.






2.- Discípulos

Acá enumero entonces a los que aprenden con un Maestro. La mayoría de los "Full-Practitioners" probablemente aprenderían de esta forma. Un Maestro, absolutamente dedicado a su discípulo, es mucho más efectivo que un Maestro dedicado 10 estudiantes. Probablemente lo característico de estos magos, es que tendrían el estilo particular del Maestro. Su manera de hacer magia, para alguien que conociera al Maestro, evidenciaría su linaje. Posiblemente heredaría de su Maestro el foco en cierto tipo de hechizos, y la poca práctica (o incluso ignorancia) en algunos otros aspectos de la magia. Estos Maestros podrían llegar a ser famosos y legendarios. En todo caso no son personas perseguidas, sino tratadas como "iluminados". Algunos Maestros estarían de incógnitos en la sociedad, con una identidad falsa, fingiendo ser gente común. Otros estarían recluídos en alguna montaña (no escondidos). Otros podrían ser devotos y tener un templo. Algunos incluso serían también clérigos, posiblemente figuras importantes dentro de la iglesia, en especial si adicionalmente su dominio del priestcraft también es total.


3.- Estudiantes

Para los practicantes de sorcery, ya dije que no pensaba que hubiese escuelas. Sin embargo, dado que esta es una magia mucho más libre (aunque impredecible, porque depende del ánimo del espíritu que esté proporcionando el poder), quizá, podría haber escuelas de sorcery enfocados en la magia realizada por métodos asociados a talentos personales: como los SpellDancers... gente que sólo puede castear si baila y/o canta... (si queremos darle color al asunto). Para los bardos aplicaria esa ultima. Esta sería una escuela de ARTES mágicas, con énfasis en Arte. Tendrías estudiantes que usarían Geomancia principalmente como método de "escultura"! No se si estos serían de la misma escuela. Probablemente me decida por un "no" como respuesta. Sin embargo estas escuelas, serían quizá partes "ocultas" detrás de una escuela de bardos, la escuela de escultura, etc. Sin embargo lo "oculto" de estas escuelas no se debe a la inquisición, sino a la privacidad. Los miembos son personas que tienen el talento innato de la magia, y atraviesan procesos internos que no son incumbencia de los que sólo vienen a aprender música, por ejemplo. No los veo como "Full-Practitioners", ya que su dedicación no es total hacia la magia, sino un matiz de su talento artístico o profesional. Quizá alguno de los estudiantes podría contactar, mediante la escuela, a algún maestro, y dedicarse de lleno a la magia.
Orestes Manzanilla
ozono27.blogspot.com
La ironía de la no-aceptación de los wizards

Ya había comentado que en Auka los practicantes de "sorcery", son considerados "iluminados" o "bendecidos", aunque las personas comunes no sepan muy bien que esperarse de ellos (porque el ser iluminados no implica que sean bien intencionados). Sin embargo, en general la mayoría de los sorcerers que no tienen buenas intenciones, o no se ocupan de mantenerlas, capitalizan bien su "estatus", manteniendo su fachada lo suficiente como para no ganarse el odio de la comunidad.
En la mayoría de los mundos de fantasía épica (llevados a juego de rol), los wizards son temidos y respetados (en general), tanto como los grandes científicos de la actualidad, mientras que los sorcerers son, en general, sólo temidos por los comunes, y despreciados por los wizards por su forma "poco seria" de hacer la magia. Esto me gusta. Es irónico, en cierta forma.


Pactos de Wizardry

En definitiva, parte del proceso de hacer la magia distinta a la magia simplemente "tecnológica" de otros settings, no sólo está el hecho de hacerla débil, sino también hacer que su uso no sea indiferente de las relaciones con las fuerzas que se manejan, ya que no son simple energía eléctrica inconsciente puesta a funcionar a nuestro modo, sino energías "conscientes", de alguna manera.


Efectos secundarios del pacto

De Ars Magica me gustó el hecho de que el hecho de conjurar un hechizo, implica la aparición de algún efecto "interesante", que podría evidenciar el uso de la magia. Ejemplos de estos efectos, pueden ser cosas molestas como un hedor particular, un resplandor poco discreto, o alguna cosa que sea metáfora de las cosas que están en juego mediante el pacto.


Lazo con el Familiar

La concretación del pacto, en la que un practicante se vuelve un "full-practitioner" de la hechicería, es el momento en que se hace presente el "Familiar", y se forja el enlace con él. Éste animal o criatura sería la manifestación física del pacto con el espíritu, aunque no contenedor del mismo. Sería en como un espíritu de menor rango, que queda a cargo y cuido del hechicero, y que al mismo tiempo es mensajero (aunque la comunicación no sea verbal) del espíritu al cuál se ha prometido algo. Algunas características del hechicero serán "traspasadas" al familiar, lo que podría en algún momento implicar que la criatura sea fácilmente asociable con su "maestro". De igual forma, el hechicero tendría que asumir algunas características (físicas, mentales o espirituales) de la criatura. La cantidad de "características" intercambiadas serían proporcionales a la magnitud del pacto, y por ende, proporcionales al poder del hechicero.


Efectos secundarios del lazo con el Familiar

Me luce que, al momento de realizarse el pacto, los animales (no se si todos, o sólo los de especies asociadas a la del familiar, o las especies asociadas a los enemigos de la especie del familiar) deberían estar incómodos o nerviosos alrededor del hechicero.
Ejemplo: el hechicero tiene como familiar a un ratón. Podría asumir que ante la presencia del hechicero sienten incomodidad...

    * todos los animales
    * los roedores
    * los gatos

Me gusta la tercera opción, o una mezcla entre la 2da y la 3ra. Los gatos huirían desaforados, y los ratones pudieran estar realmente furiosos ante su presencia. Quizá, ante una acción exitosa por parte del familiar, el hechicero podría ganarse a los roedores lo suficiente como para obtener información de ellos, o incluso apoyo. No lo sé aún.
¿Ahora, cómo se lleva a cabo el proceso de hacer un "pacto"?

El "How To" de un Pacto

Estaba pensando que los wizards trabajaran en base a "palabras de poder" y los "nombres verdaderos" de los "espíritus". Si un wizard descubre el nombre de un espíritu, puede convocarlo, y entablar una cierta relación con él. Debe captar el interés del espíritu (que en principio puede sentirse importunado), ganarse su respeto, y conseguir unos términos que interesen al espíritu. Mientras los términos sean más potencialmente provechosos para los intereses del espíritu, y más arriesgados para el hechicero, el nivel de magia que podría manejar el hechicero sería superior.
Un pacto con un espíritu "perturbado", podría implicar

    * Nunca ayudar a los inocentes
    * Ante la oportunidad, engañar a los desprevenidos

Y ese sería un pacto que daría mucho menos poderoso que uno más restrictivo, como por ejemplo:

    * Nunca más ver el Sol.
    * Arriesgar hasta la vida por salvar a cualquier persona fiel a Luna.

Adrede utilicé en el segundo ejemplo un pacto que podría haber sido realizado con un espíritu relativamente "benigno". El extremo de un pacto de estos, podría ser ofrecer la propia alma, si el contrato llega a romperse por parte del hechicero.


Las Palabras y la Magia

El espíritu proporcionaría al hechicero, en sus períodos de estudio, los nombres verdaderos (palabras de poder) necesarias para realizar los efectos. O, quizá, en realidad el propio espíritu podría utilizar la energía que ha depositado en el mago, y él mismo utilizar las palabras para lograr los efectos. De esta forma, cada hechizo sería un favor del espíritu. Éste le daría al mago las palabras con las qué hacer la petición, más no las palabras que mueven la energía.
Sin embargo, el mago tendría un conocimiento limitado de palabras de poder, que le permitirían mover ciertas cantidades de energía de manera poco compleja, sin la asistencia del espíritu. Estas serían las mismas que usaba antes del pacto. Sólo que al haber un pacto, el reservorio de energía a canalizar es mucho mayor.


El desgaste de hacer hechicería

Cada acceso a la energía mágica que contiene el hechicero, debería provocar una oportunidad de que el mismo se agote. En términos de reglas de SAGA, si el hechicero fallase un chequeo de "Endurance", el hechizo le quitaría tantas cartas de la mano, como las necesarias para asumir un daño igual al número de puntos por los que se falló el chequeo.
Pongamos que la dificultad es 4 más la cantidad de spellpoints del hechizo. Si el hechizo es de 5 puntos de magia (equivalente a un hechizo tipo "cantrip" de D&D), el chequeo de Endurance sería 9. Supongamos que el chequeo da un total de 6, fallando por 3 puntos la dificultad. El jugador debería soltar tantas cartas como las necesarias para que la suma de los valores sea mayor o igual a 3. Estas se recuperarían luego de un cierto tiempo de descanso (15 minutos?).

Supersticiones fundadas en Pactos

Lo dicho respecto a los Familiares y el rechazo de los animales, podría hacer que las gentes temerosas de la magia, y los inquisidores fuesen especialmente perspicases ante las personas que ante ellos sean capaces de generar mucha agresividad o miedo por parte de algún animal.
Adicionalmente, es posible que en general los animales "sin dueño", que típicamente pueden ser familiares (ratas, ratones, comadrejas, lobos, buhos, gatos,...) sean señal de "mal agüero".


Relación con el espíritu luego del contrato



Es importante aclarar, que la forja del pacto, y la forja del lazo con el Familiar, son cosas que deberían jugarse "haciendo role-play", no simplemente "pasando el chequeo". Cada acción y justificación para el uso de la magia, sería seguido de cerca por el espíritu, y notificado en todo caso por el Familiar. El ánimo general del espíritu respecto al comportamiento del hechicero puede reflejarse en la simpatía/antipatía que manifieste el Familiar para con el hechicero.
<div class='header'>
<div class='titleLine'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div macro='gradient vert #ffffff #cc9900'><a> </a><div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
</div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
De acuerdo. BisteckEncebollado me pregunta con preocupación qué cosas deberían en principio amenazar a los humanos, y en particular a los héroes. Mi respuesta, luego de pensarlo un poco, puedo resumirla de la siguiente forma:

   1. La principal amenaza son los propios humanos, de otras organizaciones, de otros reinos, de otras culturas. Esto abarca a los humanos de algunas organizaciones de ética discutible, como los Gaia Wizards. Estos últimos en muchas de sus variantes ocuparían el nicho de los hombres mitad bestia mitad animal, y de los monstruos "chupa-sangre", y devoradores de hombres. Entre las culturas, hay tribus bárbaras de humanos inclinados a arrasar con poblados, tomando lo que les llame la atención (bienes materiales, y hombres/mujeres a ser torturados de vuelta en "casa").
   2. En segundo lugar, los animales, los espíritus, y los desastres naturales. Adicionalmente están los monstruos cómo tal, que en Auka no son goblinoides ni gigantes, sino seres salvajes pero lo suficientemente hábiles como para construír herramientas rudimentarias. Sin embargo, su inteligencia y nivel de organización social sería más bien equiparable con el de los chimpacés, y no con el de humanos. Esto aún está por definir, pero por los momentos lo dejo así. Hay animales salvajes super-desarrollados, o versiones de los antecesores de los animales que existen actualmente, como el tigre dientes de sable, osos que miden 4 metros de altura, etc. Entre ellos habrá algunos que estén afectados por los espíritus de moral retorcida de cualquiera de las 3 fuerzas.

Esta fue mi respuesta, ahora resumida y ordenada. Me preguntaron con cierta nostalgia de otros settings: ¿y las criaturas míticas, como dragones, grifos, quimeras, etc?
Mi respuesta es que estos sólo serían criaturas habitantes de algún plano Sun, Moon o Gaia. Igual que los espíritus con aspecto de "ángeles" y "demonios".
comillas incluídas....
Uno podría inadvertidametne "entrar" en un plano paralelo, mientras transita una zona de alta influencia de la fuerza asociada a ese plano (un portal) y empezar a ver vainas raras. En particular, criaturas de estas "en carne y hueso". El que tenga "visiones" de estos planos, sin entrar en él, podría verlas pero "borrosas", o nunca terminar de detallarlas bien. En efecto, dudaría sobre lo que "realmente" vio.
Esto debe asutar, y mucho! y probablemente los que tengan estas visiones sientan verguenza de estar teniendo visiones sobre criaturas de "cuentos de niños". Otros, que no sientan esa vergüenza, probablemente sean tenidos en cuenta como locos.
También, ciertas drogas factibles de fabricar mediante alquimia o herbalismo, si se manejan bien las energías mágicas intrínsecas en los ingredientes, deberían permitir ver cosas de esos planos.
Puede que el que tome el brebaje, estando en una montaña donde "pasan cosas raras", descubra que lo que reposa bajo sus pies, no es la tierra de la montaña, sino una superficie interminable, cubierta de escamas rojas. Probablemente, en ese caso, la montaña encantada sea, en el plano Sun, un dragón "great wyrm".
Cómo sería la montaña "encantada" en el plano material? Bueno, sería la propia montaña en la que "pasan cosas raras", hay templos de civilizaciones antigüas, o que tienen actividad volcánica y/o minas de gemas de alto poder mágico, etc. No sería raro que hubiesen relatos de "apariciones" de seres extraños.
Pero insisto. El que entre a un plano de estos, vería cosas muy confusas y caóticas. No entendería del todo como caminar, o cómo funcionan las cosas. Porbablemente sólo alguien con entrenamiento mágico pueda entender qué es lo que está pasando, lo suficiente como permanecer sereno aunque todo luzca tan extraño.
En el plano "material", un campesino puede ver sólo un remolino de viento que se lleva las hojas y todo queda en silencio, pero un practicante de magia, o visionario, puede en ese momento tener la suerte de ver que se trataba de una ninfa que pasó por ahí corriendo en el plano de Gaia.
Un árbol podría ser un Ent. con ojos boca, largos pies con los que da zancadas, y todo eso! Sin embargo, como la correspondencia entre espacio-tiempo material y espacio-tiempo en otros planos NO ES 1 a 1, aunque el árbol (o el great wyrm) camine, el árbol (o la montaña) no tiene por qué moverse en el plano "material". Acá puede que simplemente "luzca distinto".
También quiero aclarar que los espíritus "malos" están en los 3 planos, y los "buenos" también
un dragón en plano Sun, podría ser malo y ególatra, dictatorial. Un espíritu bueno de Sol, podría tener el estereotipo de un ángel tipo Uriel, Rafael.... reflejando luz, fuego, combatividad....
Un espíritu malo en Gaia, podría ser como los bichos feos de Princesa Mononoke, o como una químera, una mantícora. Posiblemente también como un fauno. Un espíritu benigno de Gaia podría lucir como un hada.
Un espíritu bueno de Luna, podría también ser angelical, pero de esos tipo alas de algodón, irradiando paz, mensajes crípticos, sueños,... tipo Arcangel Gabriel quizás.
Un espíritu malo de Sol podría parecer un demonio de fuego,.. o un dragón rojo "great wyrm"! ;o)
Un espíritu cruel de Luna podría parecer un demonio oscuro, deforme, evasivo, asqueroso....
Las "apariencias", y armas como garras, dientes, etc, en los 3 planos, no son características importantes. Es un mundo confuso, y quizá la forma en que los humanos ven a los espíritus depende mucho de lo que ellos lleven dentro. Lo importante de los poderes de estos seres estará en los aspectos espirituales-mentales que físicos.
En principio, nada de "calcular el daño de la garra del dragón", "el breath weapon", etc. Son espíritus. Lo que si habría que tener claro, es cuáles serían las habilidades mágicas, y los puntos en Reasoning, Spirit, Presence y Perception de los entes, así como los puntos de afinidad con las 3 fuerzas.
Type the text for 'PendienteTiddlyWiki'
<<plugins>>
Colocar info sobre política
;Artículos:
:[[¿WiseOnes cómo NPCs?]]
Estos son posibles Roles... que pongo acá para estimular mi imaginación... jeje. Algunos son de ArsMagica, otros de Mythus, y otros de DragonLance (SAGA), y es una lista que no debe ser un "menú de opciones" sino un recopilatorio de ejemplos, de nombres de roles:

Nota: puse entre paréntesis las formas de magia que podría usar total o parcialmente

    * Adivino
    * Alquimista (wizardry-sorcery)
    * Aprendiz de Hechicero (wizardry)
    * Aprendiz de Mago (sorcerery)
    * Arquero
    * Artista urbano
    * Asceta (priesthood - mysticism)
    * Asesino
    * Astrólogo
    * Bandido
    * Bardo (sorcery)
    * Boticario
    * Caballero
    * Caballero del Sol (priestcraft)
    * Caballero Errante
    * Caballero Fugado
    * CambiaFormas (mysticism - druidism - sorcery-priestcraft)
    * Cantinero
    * Cazador
    * Charlatán/Estafador
    * Clérigo o Sacerdote (Según la orden) (priestcraft)
    * Cocinero
    * Colmillo de Gaia (druidism)
    * Creyente (priestcraft)
    * Curandero (priesthood-druidism-mysticism)
    * Embajador
    * Ermitaño
    * Escolta
    * Explorador
    * Filósofo
    * Gladiador
    * Guerrero Aventurero
    * Guerrero Bárbaro
    * Guerrero de la Luna (sorcery)
    * Guerrero Mago (sorcery)
    * Guerrero Místico (mysticism)
    * Hechicero (según la orden secreta) (wizardry)
    * Hechicero de Batalla (wizardry)
    * Hechicero Independiente
    * Hechicero Itinerante
    * Informante
    * Ingeniero
    * Jinete
    * Ladrón Arcano (sorcery - mysticism)
    * Ladrón de Gremio
    * Ladrón
    * Mago (según escuela o "corriente" del mentor) (sorcery)
    * Mago de Batalla (sorcery)
    * Mago Independiente
    * Mago Itinerante
    * Mago-Místico (sorcery - mysticism)
    * Malechor
    * Marinero
    * Médico
    * Médico-Brujo (wizardry - druidism-mysticism)
    * Medium
    * Mercader
    * Mercenario
    * Músico
    * Teurgo
    * Trovador / Juglar
    * Mendigo
    * Místico (mysticism)
    * Místico de la Tierra (mysticism - sorcery -druidism-priestcraft)
    * Místico Independiente
    * Místico Vagabundo
    * Monje (mysticism)
    * Montaraz (druidism)
    * Noble
    * Noble Desplazado
    * Penitente (priestcraft)
    * Pirata
    * Pirata de Río
    * Poeta
    * Rebelde
    * Sabio(a) (mysticism - druidism - priestcraft)
    * Shamán Bárbaro (druidism - sorcery - priestcraft)
    * Silvicultor (eh... así se traduce Forester?) (druidism)
    * Sirviente Leal
    * Soldado
    * SwashBuckler
    * Vendedor de Hechizos (sorcerery - wizardry - mysticism)
    * Vigilante / Guardia

A algunos, si uno quiere, los podemos sub-clasificar entre Sun, Moon y Gaia (aunque algunos sólo entre Sun y Moon, otros sólo entre Sun y Gaia, otros entre Moon y Gaia). Esto puede ser importante, sobre todo teniendo en cuenta que aún no he definido las estructuras de poder político y religioso, ni las culturas, ni sus tipos de tecnología, ni las instituciones que hay asociadas a cada profesión en cada reino.

La idea, repito, no es "agarrar uno de la lista", sino pensar en el personaje que TU quieres jugar, y si ninguno de esos aplica, crearlo junto al narrador. Esa es la idea.

Cosas importantes, al pensar en el rol, pueden ser cosas como definir el grado de Esencia de las 3 fuerzas que tiene el personaje, pues puede ser restrictivo respecto al tipo de magia que usa. También la afiliación a una organización en particular, y su fe.

Pienso fusilarme gran parte de lo que hizo Rich Burlew en cuanto a política, adaptándolo según los cambios que yo he hecho en mi setting respecto al de él.
/***
| Name|QuickOpenTagPlugin|
| Description|Changes tag links to make it easier to open tags as tiddlers|
| Version|3.0.1 ($Rev: 2342 $)|
| Date|$Date: 2007-07-05 10:57:49 +1000 (Thu, 05 Jul 2007) $|
| Source|http://mptw.tiddlyspot.com/#QuickOpenTagPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{
config.quickOpenTag = {

	dropdownChar: (document.all ? "\u25bc" : "\u25be"), // the little one doesn't work in IE?

	createTagButton: function(place,tag,excludeTiddler) {
		// little hack so we can to <<tag PrettyTagName|RealTagName>>
		var splitTag = tag.split("|");
		var pretty = tag;
		if (splitTag.length == 2) {
			tag = splitTag[1];
			pretty = splitTag[0];
		}
		
		var sp = createTiddlyElement(place,"span",null,"quickopentag");
		createTiddlyText(createTiddlyLink(sp,tag,false),pretty);
		
		var theTag = createTiddlyButton(sp,config.quickOpenTag.dropdownChar,
                        config.views.wikified.tag.tooltip.format([tag]),onClickTag);
		theTag.setAttribute("tag",tag);
		if (excludeTiddler)
			theTag.setAttribute("tiddler",excludeTiddler);
    		return(theTag);
	},

	miniTagHandler: function(place,macroName,params,wikifier,paramString,tiddler) {
		var tagged = store.getTaggedTiddlers(tiddler.title);
		if (tagged.length > 0) {
			var theTag = createTiddlyButton(place,config.quickOpenTag.dropdownChar,
                        	config.views.wikified.tag.tooltip.format([tiddler.title]),onClickTag);
			theTag.setAttribute("tag",tiddler.title);
			theTag.className = "miniTag";
		}
	},

	allTagsHandler: function(place,macroName,params) {
		var tags = store.getTags(params[0]);
		var filter = params[1]; // new feature
		var ul = createTiddlyElement(place,"ul");
		if(tags.length == 0)
			createTiddlyElement(ul,"li",null,"listTitle",this.noTags);
		for(var t=0; t<tags.length; t++) {
			var title = tags[t][0];
			if (!filter || (title.match(new RegExp('^'+filter)))) {
				var info = getTiddlyLinkInfo(title);
				var theListItem =createTiddlyElement(ul,"li");
				var theLink = createTiddlyLink(theListItem,tags[t][0],true);
				var theCount = " (" + tags[t][1] + ")";
				theLink.appendChild(document.createTextNode(theCount));
				var theDropDownBtn = createTiddlyButton(theListItem," " +
					config.quickOpenTag.dropdownChar,this.tooltip.format([tags[t][0]]),onClickTag);
				theDropDownBtn.setAttribute("tag",tags[t][0]);
			}
		}
	},

	// todo fix these up a bit
	styles: [
"/*{{{*/",
"/* created by QuickOpenTagPlugin */",
".tagglyTagged .quickopentag, .tagged .quickopentag ",
"	{ margin-right:1.2em; border:1px solid #eee; padding:2px; padding-right:0px; padding-left:1px; }",
".quickopentag .tiddlyLink { padding:2px; padding-left:3px; }",
".quickopentag a.button { padding:1px; padding-left:2px; padding-right:2px;}",
"/* extra specificity to make it work right */",
"#displayArea .viewer .quickopentag a.button, ",
"#displayArea .viewer .quickopentag a.tiddyLink, ",
"#mainMenu .quickopentag a.tiddyLink, ",
"#mainMenu .quickopentag a.tiddyLink ",
"	{ border:0px solid black; }",
"#displayArea .viewer .quickopentag a.button, ",
"#mainMenu .quickopentag a.button ",
"	{ margin-left:0px; padding-left:2px; }",
"#displayArea .viewer .quickopentag a.tiddlyLink, ",
"#mainMenu .quickopentag a.tiddlyLink ",
"	{ margin-right:0px; padding-right:0px; padding-left:0px; margin-left:0px; }",
"a.miniTag {font-size:150%;} ",
"#mainMenu .quickopentag a.button ",
"	/* looks better in right justified main menus */",
"	{ margin-left:0px; padding-left:2px; margin-right:0px; padding-right:0px; }", 
"#topMenu .quickopentag { padding:0px; margin:0px; border:0px; }",
"#topMenu .quickopentag .tiddlyLink { padding-right:1px; margin-right:0px; }",
"#topMenu .quickopentag .button { padding-left:1px; margin-left:0px; border:0px; }",
"/*}}}*/",
		""].join("\n"),

	init: function() {
		// we fully replace these builtins. can't hijack them easily
		window.createTagButton = this.createTagButton;
		config.macros.allTags.handler = this.allTagsHandler;
		config.macros.miniTag = { handler: this.miniTagHandler };
		config.shadowTiddlers["QuickOpenTagStyles"] = this.styles;
		store.addNotification("QuickOpenTagStyles",refreshStyles);
	}
}

config.quickOpenTag.init();

//}}}
;Artículos
:[[Lo sacado de The Order of the Stick]]
Con este simple ejemplo ya tenemos una idea de lo que es en realidad un
juego de Rol; un juego en el que cada uno de los jugadores representa un
papel determinado. Estos juegos suelen tener como denominador común la
presencia de un director de juego. Este papel es el más importante ya que
sobre él recae la responsabilidad del juego, ya que representa todo lo que
interviene en una situación excepto los demás personajes, que son
interpretados por el resto de jugadores.

Lo importante de la cuestión viene al explicar qué se hace además de
representar un personaje. Ud, como jugador, adoptará el papel de un
personaje y guiará a este personaje a lo largo de una aventura. Tomará
decisiones, interactuará con otros jugadores y personajes, y
esencialmente, pretenderá ser su personaje durante el transcurso del
juego. Esto no significa que deberá saltar, golpear cosas o actuar como su
personaje, sino que cuando a su personaje le toque hacer algo, o tomar
alguna decisión, usted elegirá un curso apropiado de acción, imaginando que está en esa situación.
/***
| Name:|RenameTagsPlugin|
| Description:|Allows you to easily rename or delete tags across multiple tiddlers|
| Version:|3.0 ($Rev: 1845 $)|
| Date:|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source:|http://mptw.tiddlyspot.com/#RenameTagsPlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
Rename a tag and you will be prompted to rename it in all its tagged tiddlers.
***/
//{{{
config.renameTags = {

	prompts: {
		rename: "Rename the tag '%0' to '%1' in %2 tidder%3?",
		remove: "Remove the tag '%0' from %1 tidder%2?"
	},

	removeTag: function(tag,tiddlers) {
		store.suspendNotifications();
		for (var i=0;i<tiddlers.length;i++) {
			store.setTiddlerTag(tiddlers[i].title,false,tag);
		}
		store.resumeNotifications();
		store.notifyAll();
	},

	renameTag: function(oldTag,newTag,tiddlers) {
		store.suspendNotifications();
		for (var i=0;i<tiddlers.length;i++) {
			store.setTiddlerTag(tiddlers[i].title,false,oldTag); // remove old
			store.setTiddlerTag(tiddlers[i].title,true,newTag);  // add new
		}
		store.resumeNotifications();
		store.notifyAll();
	},

	storeMethods: {

		saveTiddler_orig_renameTags: TiddlyWiki.prototype.saveTiddler,

		saveTiddler: function(title,newTitle,newBody,modifier,modified,tags,fields) {
			if (title != newTitle) {
				var tagged = this.getTaggedTiddlers(title);
				if (tagged.length > 0) {
					// then we are renaming a tag
					if (confirm(config.renameTags.prompts.rename.format([title,newTitle,tagged.length,tagged.length>1?"s":""])))
						config.renameTags.renameTag(title,newTitle,tagged);

					if (!this.tiddlerExists(title) && newBody == "")
						// dont create unwanted tiddler
						return null;
				}
			}
			return this.saveTiddler_orig_renameTags(title,newTitle,newBody,modifier,modified,tags,fields);
		},

		removeTiddler_orig_renameTags: TiddlyWiki.prototype.removeTiddler,

		removeTiddler: function(title) {
			var tagged = this.getTaggedTiddlers(title);
			if (tagged.length > 0)
				if (confirm(config.renameTags.prompts.remove.format([title,tagged.length,tagged.length>1?"s":""])))
					config.renameTags.removeTag(title,tagged);
			return this.removeTiddler_orig_renameTags(title);
		}

	},

	init: function() {
		merge(TiddlyWiki.prototype,this.storeMethods);
	}
}

config.renameTags.init();

//}}}
Físicamente, los jugadores y el Director de Juego pueden estar sentados
cómodamente en el piso, la grama o alrededor de una mesa. Los jugadores
necesitan lugar para colocar sus papeles, sus notas, lápices, dados, libros
de reglas o de historia, o de armas, o dibujos... así como los refrescos y
los pasapalos. El Director de Juego necesita más espacio para sus mapas,
libros y notas, pertinentes a la historia, y al mundo en el que la misma tiene lugar (incluyendo sus habitantes).
;Artículos
:[[Magia - exprimirla, mendigarla, soportarla, asumirla, generarla...]]
:[[Efectos de Sol, Luna y Gaia en Roles]]
:[[Roles vs. Clases (estilo D&D)]]
:[[Posibles Roles]]
¿Qué es un Rol? ¿en qué se diferencia de una clase?

Un rol es una forma corta de describir un personaje, y el tipo de cosas que hace, cuando aventurea,.. y cuando no. También qué tipo de cosas se le dificultan, y qué tipo de cosas tiende a preferir. Un buen ejemplo de un rol puede ser: "Caballero", "Shaman", "Noble", "Cantinero", "Explorador", "Soldado", "Hermitaño".

Primero debe dársele un nombre al Rol, y posiblemente un "adjetivo" al nombre del rol. Por ejemplo, en vez de decidir que un personaje es un "Místico", podría uno añadirle el adjetivo de "Místico del Mar", decidiendo en ese momento que el místico se inspira en el mar, en sus meditaciones, o tiene algún tipo de especialidad en uso de misticismo en ambiente marítimo o costero.

En SAGA Companion dan el ejemplo del "Caballero Intrépido" y el "Caballero Cuzado". Ambos evocan más que la imágen de un simple caballero. Cuando un piensa en el Cruzado, piensa en un caballero devoto a su iglesia, o a su lord. Un "Caballero Intrépido", por otro lado, podría ser uno más bien solitario, que busca sólo la gloria del triunfo ante dificultades abrumadoras.

En general, describir un rol, no debería ser TAN específico como para que uno se pregunte si se está definiendo al rol, o directamente al personaje. En general, uno se plantea que el rol puede ser descrito con una simple frase o dos, que permitan a quién las lea, tener una idea de qué tipo de aventurero es el personaje. Puede ser tan sencillo como el nombre de la profesión a la que el personaje se ha dedicado.

Por ejemplo: El caballero curzado es un caballero que se dedica a realizar misiones para honrar a su lord o a su iglesia.

El rol por lo general implica una "actitud" del aventurero, que lo hace distinto de los demás roles. Un Caballero cruzado podría ser el tipo de persona que aprocecha cada oportunidad para evangelizar sobre la superioridad de su fe y creencias.

Usualmente el rol implica una apariencia, ya sea por el tipo de vida, armas, vestimenta o accesorios que lleva el aventurero, o por alguna característica física inusual.

Un rol, a menudo implica alguna restricción respecto a la Raza. Por ejemplo, un druida, en Auka, no podría ser de la raza de "Los Antigüos". Un Paladín no podría ser un MoonChild.

Siempre un Rol implica que una persona tenga un mínimo en algunas habilidades, y un máximo en otras (para balancear el asunto). También implica un mínimo de skill-levels en cosas asociadas a su rol, y posiblemente un máximo en otras disciplinas, reflejando la dificultad que tiene para los de ese rol, acometer esas disciplinas. Ejemplo: para un Heretic Wizard, con toda seguridad le será muy difícil tener más de 2 skill-levels en armas de melee, o armas de misil. El estudio y dedicación hacia la magia hacen difícil la práctica de estas disciplinas marciales y físicas.

Hay otras cosas que pueden exigirse como requerimiento. Por ejemplo un cantinero no puede ser de estatus social "Noble". Un Guerrero Bárbaro, no puede ser un habitante usual de una ciudad. Un mercader debe tener más estatus social que un esclavo.

Adicionalmente a los requerimientos, por lo general vienen las ventajas y desventajas del rol. Cada vez que un héroe realiza una acción asociada a la ventaja, tiene un bono que hace más fáciles las cosas. Un buen ejemplo de esto, es que en SAGA (DragonLance) los "Aéstetas" (cronistas y bibliotecarios) tienen un "Trump Bonus" para recordar eventos y circunstancias pasadas. Un caballero podría tener un "trump bonus" cada vez que use su espada para atacar.

Como desventajas, pueden tomarse elementos que tengan o no que ver con las ventajas. Por ejemplo, en SAGA un "caballero de Solamnia" tiene como ventaja trump-bonus para "cerrar rango" (acercarse) a un oponente. Puede que la desventaja sea no disfrutar nunca de trump-bonus en ataques a misil. Esto en cierta forma ambas cosas son "complementarias". Sin embargo podrían no tener nada que ver, como por ejemplo, que no tuviera "trump-bonus" en acciones de Presencia con personas que no sean de su religión.

Creo que en este sentido, habrá que disculparme por haber abusado tanto de los términos asociados a "clases" (wizard, druid, sorcerer, mystic, rogue, fighter, bard, paladin, ranger). No significa que un rol no pueda coincidir con el nombre de una clase. Por el contrario, posiblemente los roles más frecuentes sean alguna modificación leve de los nombres de esas clases. La idea es no ser tan restrictivos como las clases de los settings de Calabozos y Dragones: el guerrero, el mago, el ladrón, y el clérigo... con sus variaciones. Cada uno como un "kit" con skills que deben usar, y poderes que deben tener y aprender a medida que "crecen".

Nótese que el sistema de roles puede "abarcar" a las clases tradicionales del D&D. Por ejemplo, si fuese a crear un rol al que voy a llamar "Ranger", si quisiera emular a la clase ranger, haría simplemente que este personaje tuviera uso "parcial" de la magia druídica, y que tuviese mucho talento en skills asociados a la naturaleza y al combate.

Así pues, perdonenme por la poca claridad con que he tratado el tema de los "roles" y "clases" hasta ahora. Por los momentos dejaré que la etiqueta siga siendo "clases" y no "roles", porque la idea de "clases" la entiende todo el mundo.
/***
| Name|SaveCloseTiddlerPlugin|
| Description|Provides two extra toolbar commands, saveCloseTiddler and cancelCloseTiddler|
| Version|3.0 ($Rev: 2134 $)|
| Date|$Date: 2007-04-30 16:11:12 +1000 (Mon, 30 Apr 2007) $|
| Source|http://mptw.tiddlyspot.com/#SaveCloseTiddlerPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
To use these you must add them to the tool bar in your EditTemplate
***/
//{{{
merge(config.commands,{

	saveCloseTiddler: {
		text: 'done/close',
		tooltip: 'Save changes to this tiddler and close it',
		handler: function(e,src,title) {
			config.commands.saveTiddler.handler(e,src,title);
			config.commands.closeTiddler.handler(e,src,title);
			return false;
		}
	},

	cancelCloseTiddler: {
		text: 'cancel/close',
		tooltip: 'Undo changes to this tiddler and close it',
		handler: function(e,src,title) {
			config.commands.cancelTiddler.handler(e,src,title);
			config.commands.closeTiddler.handler(e,src,title);
			return false;
		}
	}

});

//}}}
/***
| Name|SelectPalettePlugin|
| Description|Lets you easily change colour palette|
| Version|3.0 ($Rev: 1845 $)|
| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source|http://mptw.tiddlyspot.com/#SelectPalettePlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
/***
!!Usage:
{{{<<<selectPalette>>}}}
<<selectPalette>>

!!WARNING
Will overwrite your ColorPalette tiddler.
***/

//{{{

merge(config.macros,{

	setPalette: {

		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			var paletteName = params[0] ? params[0] : tiddler.title;
			createTiddlyButton(place,"apply","Apply this palette",function(e) {
				config.macros.selectPalette.updatePalette(tiddler.title);
				return false;
			});
		}
	},

	selectPalette: {

		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			createTiddlyDropDown(place,this.onPaletteChange,this.getPalettes());
		},

		getPalettes: function() {
			var result = [
				{caption:"-palette-", name:""},
				{caption:"(Default)", name:"(default)"}
			];
			var tagged = store.getTaggedTiddlers("palette","title");
			for(var t=0; t<tagged.length; t++) {
				var caption = tagged[t].title;
				var sliceTitle = store.getTiddlerSlice(caption,"Name");
				if (sliceTitle)
					caption = sliceTitle;
				result.push({caption:sliceTitle, name:tagged[t].title});
			}
			return result;
		},

		onPaletteChange: function(e) {
			config.macros.selectPalette.updatePalette(this.value);
			return true;
		},

		updatePalette: function(title) {
			if (title != "") {
				store.deleteTiddler("ColorPalette");
				if (title != "(default)")
					store.saveTiddler("ColorPalette","ColorPalette",store.getTiddlerText(title),
								config.options.txtUserName,undefined,"");
				this.refreshPalette();
				if(config.options.chkAutoSave)
					saveChanges(true);
			}
		},

		refreshPalette: function() {
			config.macros.refreshDisplay.onClick();
		}
	}
});

config.shadowTiddlers.OptionsPanel = "<<selectPalette>>\n\n" + config.shadowTiddlers.OptionsPanel;

//}}}
¿En qué se parece un Juego de Rol a otro tipo de Juegos?
Los juegos de Rol son una mezcla entre un juego de tablero y una
representación de teatro. En realidad, la parte más divertida del juego,
que es la que le da nombre y le hace especial, es la parte en que los
jugadores "representan a los personajes" con los que juegan.

Es decir, imagínese que en una partida de Monopoly además de tirar dados,
comprar casas hoteles y propiedades y arruinarse o conseguir que se arruine
el resto, sus acciones debe representarlas como si fuera una situación
real. ("Hola buenas tardes venía yo andando por el Paseo del Prado y me he
dicho: ¡Vaya este es un sitio bonito! ¿Sabría usted si está en venta?) Es
decir, en el rol todo lo que se hace o dice lo está haciendo o diciendo su
personaje en ese mundo imaginario
Cuaderno no-lineal para anotaciones de un mundo ficticio
[img[auka|http://o3auka.googlepages.com/auka-spheres_small.jpg]] O3's Auka Wiki
http://www.tiddlywiki.com/
Me preguntaron por ahí... ¿Cómo se forja el link entre un Sorcerer y su Familiar?
La pregunta es importante, porque hasta ahora he dicho que los Wizards los llaman, y establecen el link. Sin embargo, el Sorcerer no lo busca. La respuesta que me surge ante esta inquietud es que para el Sorcerer, el Familiar sería un animal que "encarna" parcialmente al espíritu, pero que se le aparece por iniciativa propia al sorcerer, mientras este está en sus pasos de aprender a dominar "el don" (los primeros tropiezos pueden ser MUY entretenidos!). El animal va y viene, mira desde lejos, mira desde cerca. Al principio escurridizo, y luego toma confianza. Posteriormente puede brindar alguna intuición sobre algún problema relacionado con la magia.
Este animal, que al principio da la sensación de "me sigue siempre, pero no se por qué", empieza a aparecer en sueños, en los cuales habla de manera "críptica". Poco a poco esto va evolucionando en un compañerismo y entendimiento más fluído.
Se mantiene el hecho de que el Familiar empieza a cambiar asumiendo alguna característica del sorcerer, y viceversa. También se mantiene le hecho de que la simpatía o antipatía que manifieste el animal con el practicante de sorcery, depende de qué tanto esté actuando éste a favor de los intereses del espíritu.
Copiar codigo de
http://checkettsweb.com/tw/spanishtw.htm

Copiar luego corrección de 
http://www.presionblogosferica.com/2007/08/09/una-de-tiddlywiki/

Asignar el Tag: "systemConfig"

Sin embargo da error
Error: Invalid character

Como no encontré solución, lo desactivé.
/***
|''Name:''|SparklinePlugin|
|''Description:''|Sparklines macro|
***/
//{{{
if(!version.extensions.SparklinePlugin) {
version.extensions.SparklinePlugin = {installed:true};

//--
//-- Sparklines
//--

config.macros.sparkline = {};
config.macros.sparkline.handler = function(place,macroName,params)
{
	var data = [];
	var min = 0;
	var max = 0;
	var v;
	for(var t=0; t<params.length; t++) {
		v = parseInt(params[t]);
		if(v < min)
			min = v;
		if(v > max)
			max = v;
		data.push(v);
	}
	if(data.length < 1)
		return;
	var box = createTiddlyElement(place,"span",null,"sparkline",String.fromCharCode(160));
	box.title = data.join(",");
	var w = box.offsetWidth;
	var h = box.offsetHeight;
	box.style.paddingRight = (data.length * 2 - w) + "px";
	box.style.position = "relative";
	for(var d=0; d<data.length; d++) {
		var tick = document.createElement("img");
		tick.border = 0;
		tick.className = "sparktick";
		tick.style.position = "absolute";
		tick.src = "data:image/gif,GIF89a%01%00%01%00%91%FF%00%FF%FF%FF%00%00%00%C0%C0%C0%00%00%00!%F9%04%01%00%00%02%00%2C%00%00%00%00%01%00%01%00%40%02%02T%01%00%3B";
		tick.style.left = d*2 + "px";
		tick.style.width = "2px";
		v = Math.floor(((data[d] - min)/(max-min)) * h);
		tick.style.top = (h-v) + "px";
		tick.style.height = v + "px";
		box.appendChild(tick);
	}
};


}
//}}}
/***
!TiddlyWiki Classic Color Scheme
Designed by Jeremy Ruston
http://tiddlystyles.com/#theme:Classic

To use this color scheme copy the [[ClassicTiddlyWiki]] contents into a tiddler and name it 'StyleSheet' also grab the [[ClassicTemplate]] and copy its contents into a tiddler named 'PageTemplate'.

!Colors Used
*@@bgcolor(#630):color(#fff): #630@@
*@@bgcolor(#930): #930@@
*@@bgcolor(#996633): #963@@
*@@bgcolor(#c90): #c90@@
*@@bgcolor(#cf6): #cf6@@
*@@bgcolor(#cc9): #cc9@@
*@@bgcolor(#ba9): #ba9@@
*@@bgcolor(#996): #996@@
*@@bgcolor(#300):color(#fff): #300@@
*@@bgcolor(#000000):color(#fff): #000@@
*@@bgcolor(#666): #666@@
*@@bgcolor(#888): #888@@
*@@bgcolor(#aaa): #aaa@@
*@@bgcolor(#ddd): #ddd@@
*@@bgcolor(#eee): #eee@@
*@@bgcolor(#ffffff): #fff@@
*@@bgcolor(#f00): #f00@@
*@@bgcolor(#ff3): #ff3@@
!Generic Rules /%==============================================%/
***/
/*{{{*/
body {
 background: #fff;
 color: #000;
}

a{
 color: #963;
}

a:hover{
 background: #963;
 color: #fff;
}

a img{
 border: 0;
}

h1,h2,h3,h4,h5 {
 background: #cc9;
}
/*}}}*/
/***
!Header /%==================================================%/
***/
/*{{{*/
.header{
 background: #300;
}

.titleLine {
 color: #fff;
 padding: 5em 0em 1em .5em;
}

.titleLine a {
 color: #cf6;
}

.titleLine a:hover {
 background: transparent;
}
/*}}}*/
/***
!Main Menu /%=================================================%/
***/
/*{{{*/
#mainMenu .button {
 color: #930;
}

#mainMenu .button:hover {
 color: #cf6;
 background: #930;
}

#mainMenu li{
 list-style: none;
}
/*}}}*/
/***
!Sidebar options /%=================================================%/
~TiddlyLinks and buttons are treated identically in the sidebar and slider panel
***/
/*{{{*/
#sidebar {
 background: #c90;
 right: 0;
}

#sidebarOptions a{
 color: #930;
 border: 0;
 margin: 0;
 padding: .25em .5em;
}

#sidebarOptions a:hover {
 color: #cf6;
 background: #930;
}

#sidebarOptions a:active {
 color: #930;
 background: #cf6;
}

#sidebarOptions .sliderPanel {
 background: #eea;
 margin: 0;
}

#sidebarOptions .sliderPanel a {
 color: #930;
}

#sidebarOptions .sliderPanel a:hover {
 color: #cf6;
 background: #930;
}

#sidebarOptions .sliderPanel a:active {
 color: #930;
 background: #cf6;
}
/*}}}*/
/***
!Sidebar tabs /%=================================================%/
***/
/*{{{*/
.tabSelected,.tabContents {
 background: #eea;
 border: 0;
}

.tabUnselected {
 background: #c90;
}

#sidebarTabs {
 background: #c90;
}

#sidebarTabs .tabSelected{
 color: #cf6;
 background: #963;
}

#sidebarTabs .tabUnselected {
 color: #cf6;
 background: #930;
}

#sidebarTabs .tabContents{
 background: #963;
}

#sidebarTabs .txtMoreTab .tabSelected,
#sidebarTabs .txtMoreTab .tabSelected:hover{
 background: #930;
 color: #cf6;
}

#sidebarTabs .txtMoreTab .tabUnselected,
#sidebarTabs .txtMoreTab .tabUnselected:hover{
 background: #300;
 color: #cf6;
}

#sidebarTabs .txtMoreTab .tabContents {
 background: #930;
}

#sidebarTabs .tabContents a {
 color: #cf6;
 border: 0;
}

#sidebarTabs .button.highlight,
#sidebarTabs .tabContents a:hover {
 background: #cf6;
 color: #300;
}
/*}}}*/
/***
!Message Area /%=================================================%/
***/
/*{{{*/
#messageArea {
 background: #930;
 color: #fff;
}

#messageArea a:link, #messageArea a:visited {
 color: #c90;
}

#messageArea a:hover {
 color: #963;
 background: transparent;
}

#messageArea a:active {
 color: #fff;
}
/*}}}*/
/***
!Popup /%=================================================%/
***/
/*{{{*/
.popup {
 background: #eea;
 border: 1px solid #930;
}

.popup hr {
 color: #963;
 background: #963;
 border-bottom: 1px;
}

.popup li.disabled {
 color: #ba9;
}

.popup li a, .popup li a:visited {
 color: #300;
}

.popup li a:hover {
 background: #930;
 color: #eea;
}
/*}}}*/
/***
!Tiddler Display /%=================================================%/
***/
/*{{{*/
.tiddler .button {
 color: #930;
}

.tiddler .button:hover {
 color: #cf6;
 background: #930;
}

.tiddler .button:active {
 color: #fff;
 background: #c90;
}

.shadow .title {
 color: #888;
}

.title {
 color: #422;
}

.subtitle {
 color: #866;
}

.toolbar {
 color: #aaa;
}

.toolbar a,
.toolbar a:hover{
 border: 0;
}

.tagging, .tagged {
 border: 1px solid #fff;
 background-color: #ffc;
}

.selected .tagging, .selected .tagged {
 border: 1px solid #aa6;
 background-color: #ffc;
}

.tagging .listTitle, .tagged .listTitle {
color: #999999;
}

.footer {
 color: #ddd;
}

.selected .footer {
 color: #888;
}

.sparkline {
 background: #eea;
 border: 0;
}

.sparktick {
 background: #930;
}

.errorButton {
 color: #ff0;
 background: #f00;
}

.zoomer {
 color: #963;
 border: 1px solid #963;
}
/*}}}*/
/***
''The viewer is where the tiddler content is displayed'' /%------------------------------------------------%/
***/
/*{{{*/
.viewer .button {
 background: #c90;
 color: #300;
 border-right: 1px solid #300;
 border-bottom: 1px solid #300;
}

.viewer .button:hover {
 background: #eea;
 color: #c90;
}

.viewer .imageLink{
 background: transparent;
}

.viewer blockquote {
 border-left: 3px solid #666;
}

.viewer table {
 border: 2px solid #303030;
}

.viewer th, thead td {
 background: #996;
 border: 1px solid #606060;
 color: #fff;
}

.viewer td, .viewer tr {
 border: 1px solid #606060;
}

.viewer pre {
 border: 1px solid #963;
 background: #eea;
}

.viewer code {
 color: #630;
}

.viewer hr {
 border: 0;
 border-top: dashed 1px #606060;
 color: #666;
}

.highlight, .marked {
 background: #ff3;
}
/*}}}*/
/***
''The editor replaces the viewer in the tiddler'' /%------------------------------------------------%/
***/
/*{{{*/
.editor input {
 border: 1px solid #000;
}

.editor textarea {
 border: 1px solid #000;
 width: 100%;
}

.editorFooter {
 color: #aaa;
}

.editorFooter a {
 color: #930;
}

.editorFooter a:hover {
 color: #cf6;
 background: #930;
}

.editorFooter a:active {
 color: #fff;
 background: #c90;
}
/*}}}*/
Nombre de la Raza:
Hijo del Sol

Comentarios Generales:
Humanos entre cuyos ancentros hubo sangre de algún espíritu del Sol. Son gente fiera en batalla, con capacidad de liderazgo. Es difícil que pasen desapercibidos, y tienden a no renunciar a una batalla una vez que la comienzan. Suelen ser amantes de la honestidad a toda prueba.

Descripción Básica:
Son de contextura fuerte e imponente, movimientos que denotan firmeza, confianza y tenacidad. Su mirada es inusualmente intensa.

Altura:
Suelen ser más altos que la media humana.

Peso:
Suelen ser un poco más pesados que la media, pero no por tendencia al sobrepeso, sino por la facilidad con que desarrollan musculatura.

Cabello:
Tiende a ser claro. En algunos casos inclusive puede haber mechones dorados con brillo metálico.

Ojos:
Son de color dorado metálico, en una gama que va desde el dorado muy brillante y claro, hasta el dorado casi cobrizo. Sin embargo, este color puede pasar desapercibido la mayor parte del tiempo. Es fácilmente notable, sin embargo, cuando el Hijo del Sol se encuentra expuesto al Sol en horas cercanas al medio-día, y el cielo está despejado.

Piel:
Tiende a ser naturalmente bronceada.

Espectativa de Vida:
120 años.

Notas:
Prefieren ropas, armadura y armas de colores brillantes y/o metálicos. Suelen ser de hábitos principalmente diurnos. Se sienten cómodos participando en las decisiones, o liderizando grupos de personas.

Valores de Habilidades:

    * Mínimo Fuerza 7
    * Máximo Agilidad o Destreza 5


Códigos de Habilidades:

    * Mínimo Presencia B
    * Máximo Destreza C


Defensa Natural:
-2 contra daño basado en fuego

Habilidades Especiales:
Ven normalmente aunque sus ojos estén viendo directamente una fuente de luz muy brillante (incluyendo el Sol).

Requerimientos Adicionales:
Etiqueta.

Ventajas Raciales:

    * Durante las horas cercanas al mediodía, pueden recibir la bendición del Sol en una acción determinada. En términos de juego, pueden tener una carta como TrumpBonus en una acción que elijan, o negar un fallo catastrófico producido por jugar una carta dragón.
    * Trump Bonus en acciones de Presencia cuando se esté tratando de transmitir, revelar o imponer la Verdad.


Desventajas Raciales:
Para abandonar un combate, debe realizar un chequeo de Espíritu, contra una dificultad igual a 8 más el valor de Fuerza del oponente más fuerte. Si falla, se queda combatiendo.

Role-playing:
El rol de "paladín" resulta especialmente atrayente para estos seres. Suelen tener Naturaleza y Personalidad de aura blanca.
/***
| Name|TagglyTaggingPlugin|
| Description|tagglyTagging macro is a replacement for the builtin tagging macro in your ViewTemplate|
| Version|3.1 ($Rev: 2351 $)|
| Date|$Date: 2007-07-12 10:18:02 +1000 (Thu, 12 Jul 2007) $|
| Source|http://mptw.tiddlyspot.com/#TagglyTaggingPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!Notes
See http://mptw.tiddlyspot.com/#TagglyTagging
***/
//{{{
config.taggly = {

	// for translations
	lingo: {
		labels: {
			asc:        "\u2191", // down arrow
			desc:       "\u2193", // up arrow
			title:      "title",
			modified:   "modified",
			created:    "created",
			show:       "+",
			hide:       "-",
			normal:     "normal",
			group:      "group",
			commas:     "commas",
			sitemap:    "sitemap",
			numCols:    "cols\u00b1", // plus minus sign
			label:      "Tagged as '%0':",
			excerpts:   "excerpts",
			contents:   "contents",
			sliders:    "sliders",
			noexcerpts: "title only"
		},

		tooltips: {
			title:    "Click to sort by title",
			modified: "Click to sort by modified date",
			created:  "Click to sort by created date",
			show:     "Click to show tagging list",
			hide:     "Click to hide tagging list",
			normal:   "Click to show a normal ungrouped list",
			group:    "Click to show list grouped by tag",
			sitemap:  "Click to show a sitemap style list",
			commas:   "Click to show a comma separated list",
			numCols:  "Click to change number of columns",
			excerpts: "Click to show excerpts",
			contents: "Click to show entire tiddler contents",
			sliders:  "Click to show tiddler contents in sliders",
			noexcerpts: "Click to show entire title only"
		}
	},

	config: {
		showTaggingCounts: true,
		listOpts: {
			// the first one will be the default
			sortBy:     ["title","modified","created"],
			sortOrder:  ["asc","desc"],
			hideState:  ["show","hide"],
			listMode:   ["normal","group","sitemap","commas"],
			numCols:    ["1","2","3","4","5","6"],
			excerpts:   ["noexcerpts","excerpts","contents","sliders"]
		},
		valuePrefix: "taggly.",
		excludeTags: ["excludeLists","excludeTagging"],
		excerptSize: 50,
		excerptMarker: "/%"+"%/"
	},

	getTagglyOpt: function(title,opt) {
		var val = store.getValue(title,this.config.valuePrefix+opt);
		return val ? val : this.config.listOpts[opt][0];
	},

	setTagglyOpt: function(title,opt,value) {
		if (!store.tiddlerExists(title))
			// create it silently
			store.saveTiddler(title,title,config.views.editor.defaultText.format([title]),config.options.txtUserName,new Date(),null);
		// if value is default then remove it to save space
		return store.setValue(title,
			this.config.valuePrefix+opt,
			value == this.config.listOpts[opt][0] ? null : value);
	},

	getNextValue: function(title,opt) {
		var current = this.getTagglyOpt(title,opt);
		var pos = this.config.listOpts[opt].indexOf(current);
		// a little usability enhancement. actually it doesn't work right for grouped or sitemap
		var limit = (opt == "numCols" ? store.getTaggedTiddlers(title).length : this.config.listOpts[opt].length);
		var newPos = (pos + 1) % limit;
		return this.config.listOpts[opt][newPos];
	},

	toggleTagglyOpt: function(title,opt) {
		var newVal = this.getNextValue(title,opt);
		this.setTagglyOpt(title,opt,newVal);
	}, 

	createListControl: function(place,title,type) {
		var lingo = config.taggly.lingo;
		var label;
		var tooltip;
		var onclick;

		if ((type == "title" || type == "modified" || type == "created")) {
			// "special" controls. a little tricky. derived from sortOrder and sortBy
			label = lingo.labels[type];
			tooltip = lingo.tooltips[type];

			if (this.getTagglyOpt(title,"sortBy") == type) {
				label += lingo.labels[this.getTagglyOpt(title,"sortOrder")];
				onclick = function() {
					config.taggly.toggleTagglyOpt(title,"sortOrder");
					return false;
				}
			}
			else {
				onclick = function() {
					config.taggly.setTagglyOpt(title,"sortBy",type);
					config.taggly.setTagglyOpt(title,"sortOrder",config.taggly.config.listOpts.sortOrder[0]);
					return false;
				}
			}
		}
		else {
			// "regular" controls, nice and simple
			label = lingo.labels[type == "numCols" ? type : this.getNextValue(title,type)];
			tooltip = lingo.tooltips[type == "numCols" ? type : this.getNextValue(title,type)];
			onclick = function() {
				config.taggly.toggleTagglyOpt(title,type);
				return false;
			}
		}

		// hide button because commas don't have columns
		if (!(this.getTagglyOpt(title,"listMode") == "commas" && type == "numCols"))
			createTiddlyButton(place,label,tooltip,onclick,type == "hideState" ? "hidebutton" : "button");
	},

	makeColumns: function(orig,numCols) {
		var listSize = orig.length;
		var colSize = listSize/numCols;
		var remainder = listSize % numCols;

		var upperColsize = colSize;
		var lowerColsize = colSize;

		if (colSize != Math.floor(colSize)) {
			// it's not an exact fit so..
			upperColsize = Math.floor(colSize) + 1;
			lowerColsize = Math.floor(colSize);
		}

		var output = [];
		var c = 0;
		for (var j=0;j<numCols;j++) {
			var singleCol = [];
			var thisSize = j < remainder ? upperColsize : lowerColsize;
			for (var i=0;i<thisSize;i++) 
				singleCol.push(orig[c++]);
			output.push(singleCol);
		}

		return output;
	},

	drawTable: function(place,columns,theClass) {
		var newTable = createTiddlyElement(place,"table",null,theClass);
		var newTbody = createTiddlyElement(newTable,"tbody");
		var newTr = createTiddlyElement(newTbody,"tr");
		for (var j=0;j<columns.length;j++) {
			var colOutput = "";
			for (var i=0;i<columns[j].length;i++) 
				colOutput += columns[j][i];
			var newTd = createTiddlyElement(newTr,"td",null,"tagglyTagging"); // todo should not need this class
			wikify(colOutput,newTd);
		}
		return newTable;
	},

	createTagglyList: function(place,title) {
		switch(this.getTagglyOpt(title,"listMode")) {
			case "group":  return this.createTagglyListGrouped(place,title); break;
			case "normal": return this.createTagglyListNormal(place,title,false); break;
			case "commas": return this.createTagglyListNormal(place,title,true); break;
			case "sitemap":return this.createTagglyListSiteMap(place,title); break;
		}
	},

	getTaggingCount: function(title) {
		// thanks to Doug Edmunds
		if (this.config.showTaggingCounts) {
			var tagCount = store.getTaggedTiddlers(title).length;
			if (tagCount > 0)
				return " ("+tagCount+")";
		}
		return "";
	},

	getExcerpt: function(inTiddlerTitle,title,indent) {
    if (!indent)
			indent = 1;
		if (this.getTagglyOpt(inTiddlerTitle,"excerpts") == "excerpts") {
			var t = store.getTiddler(title);
			if (t) {
				var text = t.text.replace(/\n/," ");
				var marker = text.indexOf(this.config.excerptMarker);
				if (marker != -1) {
					return " {{excerpt{<nowiki>" + text.substr(0,marker) + "</nowiki>}}}";
				}
				else if (text.length < this.config.excerptSize) {
					return " {{excerpt{<nowiki>" + t.text + "</nowiki>}}}";
				}
				else {
					return " {{excerpt{<nowiki>" + t.text.substr(0,this.config.excerptSize) + "..." + "</nowiki>}}}";
				}
			}
		}
		else if (this.getTagglyOpt(inTiddlerTitle,"excerpts") == "contents") {
			var t = store.getTiddler(title);
			if (t) {
				return "\n{{contents indent"+indent+"{\n" + t.text + "\n}}}";
			}
		}
		else if (this.getTagglyOpt(inTiddlerTitle,"excerpts") == "sliders") {
			var t = store.getTiddler(title);
			if (t) {
				return "<slider slide>\n{{contents{\n" + t.text + "\n}}}\n</slider>";
			}
		}
		return "";
	},

	notHidden: function(t,inTiddler) {
		if (typeof t == "string") 
			t = store.getTiddler(t);
		return (!t || !t.tags.containsAny(this.config.excludeTags) ||
				(inTiddler && this.config.excludeTags.contains(inTiddler)));
	},

	// this is for normal and commas mode
	createTagglyListNormal: function(place,title,useCommas) {

		var list = store.getTaggedTiddlers(title,this.getTagglyOpt(title,"sortBy"));

		if (this.getTagglyOpt(title,"sortOrder") == "desc")
			list = list.reverse();

		var output = [];
		var first = true;
		for (var i=0;i<list.length;i++) {
			if (this.notHidden(list[i],title)) {
				var countString = this.getTaggingCount(list[i].title);
				var excerpt = this.getExcerpt(title,list[i].title);
				if (useCommas)
					output.push((first ? "" : ", ") + "[[" + list[i].title + "]]" + countString + excerpt);
				else
					output.push("*[[" + list[i].title + "]]" + countString + excerpt + "\n");

				first = false;
			}
		}

		return this.drawTable(place,
			this.makeColumns(output,useCommas ? 1 : parseInt(this.getTagglyOpt(title,"numCols"))),
			useCommas ? "commas" : "normal");
	},

	// this is for the "grouped" mode
	createTagglyListGrouped: function(place,title) {
		var sortBy = this.getTagglyOpt(title,"sortBy");
		var sortOrder = this.getTagglyOpt(title,"sortOrder");

		var list = store.getTaggedTiddlers(title,sortBy);

		if (sortOrder == "desc")
			list = list.reverse();

		var leftOvers = []
		for (var i=0;i<list.length;i++)
			leftOvers.push(list[i].title);

		var allTagsHolder = {};
		for (var i=0;i<list.length;i++) {
			for (var j=0;j<list[i].tags.length;j++) {

				if (list[i].tags[j] != title) { // not this tiddler

					if (this.notHidden(list[i].tags[j],title)) {

						if (!allTagsHolder[list[i].tags[j]])
							allTagsHolder[list[i].tags[j]] = "";

						if (this.notHidden(list[i],title)) {
							allTagsHolder[list[i].tags[j]] += "**[["+list[i].title+"]]"
										+ this.getTaggingCount(list[i].title) + this.getExcerpt(title,list[i].title) + "\n";

							leftOvers.setItem(list[i].title,-1); // remove from leftovers. at the end it will contain the leftovers

						}
					}
				}
			}
		}

		var allTags = [];
		for (var t in allTagsHolder)
			allTags.push(t);

		var sortHelper = function(a,b) {
			if (a == b) return 0;
			if (a < b) return -1;
			return 1;
		};

		allTags.sort(function(a,b) {
			var tidA = store.getTiddler(a);
			var tidB = store.getTiddler(b);
			if (sortBy == "title") return sortHelper(a,b);
			else if (!tidA && !tidB) return 0;
			else if (!tidA) return -1;
			else if (!tidB) return +1;
			else return sortHelper(tidA[sortBy],tidB[sortBy]);
		});

		var leftOverOutput = "";
		for (var i=0;i<leftOvers.length;i++)
			if (this.notHidden(leftOvers[i],title))
				leftOverOutput += "*[["+leftOvers[i]+"]]" + this.getTaggingCount(leftOvers[i]) + this.getExcerpt(title,leftOvers[i]) + "\n";

		var output = [];

		if (sortOrder == "desc")
			allTags.reverse();
		else if (leftOverOutput != "")
			// leftovers first...
			output.push(leftOverOutput);

		for (var i=0;i<allTags.length;i++)
			if (allTagsHolder[allTags[i]] != "")
				output.push("*[["+allTags[i]+"]]" + this.getTaggingCount(allTags[i]) + this.getExcerpt(title,allTags[i]) + "\n" + allTagsHolder[allTags[i]]);

		if (sortOrder == "desc" && leftOverOutput != "")
			// leftovers last...
			output.push(leftOverOutput);

		return this.drawTable(place,
				this.makeColumns(output,parseInt(this.getTagglyOpt(title,"numCols"))),
				"grouped");

	},

	// used to build site map
	treeTraverse: function(title,depth,sortBy,sortOrder) {

		var list = store.getTaggedTiddlers(title,sortBy);
		if (sortOrder == "desc")
			list.reverse();

		var indent = "";
		for (var j=0;j<depth;j++)
			indent += "*"

		var childOutput = "";
		for (var i=0;i<list.length;i++)
			if (list[i].title != title)
				if (this.notHidden(list[i].title,this.config.inTiddler))
					childOutput += this.treeTraverse(list[i].title,depth+1,sortBy,sortOrder);

		if (depth == 0)
			return childOutput;
		else
			return indent + "[["+title+"]]" + this.getTaggingCount(title) + this.getExcerpt(this.config.inTiddler,title,depth) + "\n" + childOutput;
	},

	// this if for the site map mode
	createTagglyListSiteMap: function(place,title) {
		this.config.inTiddler = title; // nasty. should pass it in to traverse probably
		var output = this.treeTraverse(title,0,this.getTagglyOpt(title,"sortBy"),this.getTagglyOpt(title,"sortOrder"));
		return this.drawTable(place,
				this.makeColumns(output.split(/(?=^\*\[)/m),parseInt(this.getTagglyOpt(title,"numCols"))), // regexp magic
				"sitemap"
				);
	},

	macros: {
		tagglyTagging: {
			handler: function (place,macroName,params,wikifier,paramString,tiddler) {
				var refreshContainer = createTiddlyElement(place,"div");
				// do some refresh magic to make it keep the list fresh - thanks Saq
				refreshContainer.setAttribute("refresh","macro");
				refreshContainer.setAttribute("macroName",macroName);
        			refreshContainer.setAttribute("title",tiddler.title);
				this.refresh(refreshContainer);
			},

			refresh: function(place) {
				var title = place.getAttribute("title");
				removeChildren(place);
				if (store.getTaggedTiddlers(title).length > 0) {
					var lingo = config.taggly.lingo;
					config.taggly.createListControl(place,title,"hideState");
					if (config.taggly.getTagglyOpt(title,"hideState") == "show") {
						createTiddlyElement(place,"span",null,"tagglyLabel",lingo.labels.label.format([title]));
						config.taggly.createListControl(place,title,"title");
						config.taggly.createListControl(place,title,"modified");
						config.taggly.createListControl(place,title,"created");
						config.taggly.createListControl(place,title,"listMode");
						config.taggly.createListControl(place,title,"excerpts");
						config.taggly.createListControl(place,title,"numCols");
						config.taggly.createTagglyList(place,title);
					}
				}
			}
		}
	},

	// todo fix these up a bit
	styles: [
"/*{{{*/",
"/* created by TagglyTaggingPlugin */",
".tagglyTagging { padding-top:0.5em; }",
".tagglyTagging li.listTitle { display:none; }",
".tagglyTagging ul {",
"	margin-top:0px; padding-top:0.5em; padding-left:2em;",
"	margin-bottom:0px; padding-bottom:0px;",
"}",
".tagglyTagging { vertical-align: top; margin:0px; padding:0px; }",
".tagglyTagging table { margin:0px; padding:0px; }",
".tagglyTagging .button { visibility:hidden; margin-left:3px; margin-right:3px; }",
".tagglyTagging .button, .tagglyTagging .hidebutton {",
"	color:[[ColorPalette::TertiaryLight]]; font-size:90%;",
"	border:0px; padding-left:0.3em;padding-right:0.3em;",
"}",
".tagglyTagging .button:hover, .hidebutton:hover, ",
".tagglyTagging .button:active, .hidebutton:active  {",
"	border:0px; background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]];",
"}",
".selected .tagglyTagging .button { visibility:visible; }",
".tagglyTagging .hidebutton { color:[[ColorPalette::Background]]; }",
".selected .tagglyTagging .hidebutton { color:[[ColorPalette::TertiaryLight]] }",
".tagglyLabel { color:[[ColorPalette::TertiaryMid]]; font-size:90%; }",
".tagglyTagging ul {padding-top:0px; padding-bottom:0.5em; margin-left:1em; }",
".tagglyTagging ul ul {list-style-type:disc; margin-left:-1em;}",
".tagglyTagging ul ul li {margin-left:0.5em; }",
".editLabel { font-size:90%; padding-top:0.5em; }",
".tagglyTagging .commas { padding-left:1.8em; }",
"/* not technically tagglytagging but will put them here anyway */",
".tagglyTagged li.listTitle { display:none; }",
".tagglyTagged li { display: inline; font-size:90%; }",
".tagglyTagged ul { margin:0px; padding:0px; }",
".excerpt { color:[[ColorPalette::TertiaryDark]]; }",
"div.tagglyTagging table,",
"div.tagglyTagging table tr,",
"td.tagglyTagging",
" {border-style:none!important; }",
".tagglyTagging .contents { border-bottom:2px solid [[ColorPalette::TertiaryPale]]; padding:0 1em 1em 0.5em;",
"  margin-bottom:0.5em; }",
".tagglyTagging .indent1  { margin-left:3em;  }",
".tagglyTagging .indent2  { margin-left:4em;  }",
".tagglyTagging .indent3  { margin-left:5em;  }",
".tagglyTagging .indent4  { margin-left:6em;  }",
".tagglyTagging .indent5  { margin-left:7em;  }",
".tagglyTagging .indent6  { margin-left:8em;  }",
".tagglyTagging .indent7  { margin-left:9em;  }",
".tagglyTagging .indent8  { margin-left:10em; }",
".tagglyTagging .indent9  { margin-left:11em; }",
".tagglyTagging .indent10 { margin-left:12em; }",
"/*}}}*/",
		""].join("\n"),

	init: function() {
		merge(config.macros,this.macros);
		config.shadowTiddlers["TagglyTaggingStyles"] = this.styles;
		store.addNotification("TagglyTaggingStyles",refreshStyles);
	}
};

config.taggly.init();

//}}}

/***
InlineSlidersPlugin
By Saq Imtiaz
http://tw.lewcid.org/sandbox/#InlineSlidersPlugin

// syntax adjusted to not clash with NestedSlidersPlugin

***/
//{{{
config.formatters.unshift( {
	name: "inlinesliders",
	// match: "\\+\\+\\+\\+|\\<slider",
	match: "\\<slider",
	// lookaheadRegExp: /(?:\+\+\+\+|<slider) (.*?)(?:>?)\n((?:.|\n)*?)\n(?:====|<\/slider>)/mg,
	lookaheadRegExp: /(?:<slider) (.*?)(?:>)\n((?:.|\n)*?)\n(?:<\/slider>)/mg,
	handler: function(w) {
		this.lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart ) {
			var btn = createTiddlyButton(w.output,lookaheadMatch[1] + " "+"\u00BB",lookaheadMatch[1],this.onClickSlider,"button sliderButton");
			var panel = createTiddlyElement(w.output,"div",null,"sliderPanel");
			panel.style.display = "none";
			wikify(lookaheadMatch[2],panel);
			w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
		}
   },
   onClickSlider : function(e) {
		if(!e) var e = window.event;
		var n = this.nextSibling;
		n.style.display = (n.style.display=="none") ? "block" : "none";
		return false;
	}
});

//}}}
/***
|''Name:''|TagsTreePlugin|
|''Description:''|Displays tags hierachy as a tree of tagged tiddlers.<br>Can be used to create dynamic outline navigation.|
|''Version:''|1.0.1|
|''Date:''|Jan 04,2008|
|''Source:''|http://visualtw.ouvaton.org/VisualTW.html|
|''Author:''|Pascal Collin|
|''License:''|[[BSD open source license|License]]|
|''~CoreVersion:''|2.1.0|
|''Browser:''|Firefox 2.0; InternetExplorer 6.0|
!Demo
On the plugin [[homepage|http://visualtw.ouvaton.org/VisualTW.html]] :
*Try to tag some <<newTiddler>> with a tag displayed in the menu and edit MainMenu.
*Look at some tags like [[Plugins]] or [[menu]].
!Installation
#import the plugin, ''TAG AS "systemConfig"''
#save and reload,
#optionally, edit TagsTreeStyleSheet.
! Usage
{{{<<tagsTree>>}}} macro accepts the following //optional// parameters.
|!#|!parameter|!description|!by default|
|1|{{{root}}}|Uses {{{root}}} tag as tree root|- In a //tiddler// content or template : uses the tiddler as root tag.<br>- In the //page// content or template (by ex MainMenu) : displays all untagged tags.|
|2|{{{excludeTag}}}|Excludes all such tagged tiddlers from the tree|Uses default excludeLists tag|
|3|{{{level}}}|Expands nodes until level {{{level}}}.<br>Value {{{0}}} hides expand/collapse buttons.|Nodes are collapsed on first level|
|4|{{{depth}}}|Hierachy depth|6 levels depth (H1 to H6 header styles)|
|5|{{{sortField}}}|Alternate sort field. By example : "index".|Sorts tags and tiddlers alphabetically (on their title)|
|6|{{{labelField}}}|Alertnate label field. By example : "label".|Displays tiddler's title|

!Useful addons
*[[FieldsEditorPlugin]] : //create//, //edit//, //view// and //delete// commands in toolbar <<toolbar fields>>.
*[[TaggerPlugin]] : Provides a drop down listing current tiddler tags, and allowing toggling of tags.
!Advanced Users
You can change the global defaults for TagsTreePlugin, like default {{{level}}} value or level styles, by editing or overriding the first config.macros.tagsTree attributes below.
!Code
***/
//{{{
config.macros.tagsTree = {
	expand : "+",
	collapse : "–",
	depth : 6,
	level : 1,
	sortField : "",	
	labelField : "",
	styles : ["h1","h2","h3","h4","h5","h6"],
	trees : {}
}

config.macros.tagsTree.handler = function(place,macroName,params,wikifier,paramString,tiddler)
{
	var root = params[0] ? params[0] : (tiddler ? tiddler.title : null);
	var excludeTag = params[1] ? params[1] : "excludeTagsTree";
	var level = params[2] ? params[2] : config.macros.tagsTree.level;
	var depth = params[3] ? params[3] : config.macros.tagsTree.depth;
	var sortField = params[4] ? params[4] : config.macros.tagsTree.sortField;
	var labelField = params[5] ? params[5] : config.macros.tagsTree.labelField;
	var showButtons = (level>0);
	var id = config.macros.tagsTree.getId(place);
	if (config.macros.tagsTree.trees[id]==undefined) config.macros.tagsTree.trees[id]={};
	config.macros.tagsTree.createSubTree(place,id,root,excludeTag,[],level>0 ? level : 1,depth, sortField, labelField,showButtons);
}

config.macros.tagsTree.createSubTree = function(place, id, root, excludeTag, ancestors, level, depth, sortField, labelField,showButtons){
	var childNodes = root ? this.getChildNodes(root, ancestors) : this.getRootTags(excludeTag);
	var isOpen = (level>0) || (!showButtons);
	if (root && this.trees[id][root]!=undefined) isOpen = this.trees[id][root]; 
	if (root && ancestors.length) {
		var t = store.getTiddler(root);
		if (childNodes.length && depth>0) {
			var wrapper = createTiddlyElement(place , this.styles[Math.min(Math.max(ancestors.length,1),6)-1],null,"branch");
			if (showButtons) {
				b = createTiddlyButton(wrapper, isOpen ? config.macros.tagsTree.collapse : config.macros.tagsTree.expand, null, config.macros.tagsTree.onClick);
				b.setAttribute("treeId",id);
				b.setAttribute("tiddler",root);					
			}
			createTiddlyText(createTiddlyLink(wrapper, root),t&&labelField ? t.fields[labelField] ? t.fields[labelField] : root : root);
		}
		else 
			createTiddlyText(createTiddlyLink(place, root,false,"leaf"),t&&labelField ? t.fields[labelField] ? t.fields[labelField] : root : root);
	}
	if (childNodes.length && depth) {
		var d = createTiddlyElement(place,"div",null,"subtree");
		d.style.display= isOpen ? "block" : "none";
		if (sortField)
			childNodes.sort(function(a, b){
				var fa=a.fields[sortField];
				var fb=b.fields[sortField];
				return (fa==undefined && fb==undefined) ? a.title < b.title ? -1 : a.title > b.title ? 1 : 0 : (fa==undefined && fb!=undefined) ? 1 :(fa!=undefined && fb==undefined) ? -1 : fa < fb ? -1 : fa > fb ? 1 : 0;
			})
		for (var cpt=0; cpt<childNodes.length; cpt++)
			this.createSubTree(d, id, childNodes[cpt].title, excludeTag, ancestors.concat(root), level-1, depth-1, sortField, labelField, showButtons);	
	}	
}

config.macros.tagsTree.onClick = function(e){
	var id = this.getAttribute("treeId");
	var tiddler = this.getAttribute("tiddler");	
	var n = this.parentNode.nextSibling;
	var isOpen = n.style.display != "none";
	if(config.options.chkAnimate && anim && typeof Slider == "function")
		anim.startAnimating(new Slider(n,!isOpen,null,"none"));
	else
		n.style.display = isOpen ? "none" : "block";
	this.firstChild.nodeValue = isOpen ? config.macros.tagsTree.expand : config.macros.tagsTree.collapse;
	config.macros.tagsTree.trees[id][tiddler]=!isOpen;
	return false;
}

config.macros.tagsTree.getChildNodes = function(root ,ancestors){
	var childs = store.getTaggedTiddlers(root);
	var result = new Array();
	for (var cpt=0; cpt<childs.length; cpt++)
		if (childs[cpt].title!=root && ancestors.indexOf(childs[cpt].title)==-1) result.push(childs[cpt]);
	return result;
}

config.macros.tagsTree.getRootTags = function(excludeTag){
	var tags = store.getTags(excludeTag);
	tags.sort(function(a,b) {return a[0].toLowerCase() < b[0].toLowerCase() ? -1 : (a[0].toLowerCase() == b[0].toLowerCase() ? 0 : +1);});
	var result = new Array();
	for (var cpt=0; cpt<tags.length; cpt++) {
		var t = store.getTiddler(tags[cpt][0]);
		if (!t || t.tags.length==0) result.push(t ? t : {title:tags[cpt][0],fields:{}});
	}
	return result;
}

config.macros.tagsTree.getId = function(element){
	while (!element.id && element.parentNode) element=element.parentNode;
	return element.id ? element.id : "<html>";
}

config.shadowTiddlers.TagsTreeStyleSheet = "/*{{{*/\n";
config.shadowTiddlers.TagsTreeStyleSheet +=".leaf, .subtree {display:block; margin-left : 0.5em}\n";
config.shadowTiddlers.TagsTreeStyleSheet +=".subtree {margin-bottom:0.5em}\n";
config.shadowTiddlers.TagsTreeStyleSheet +="#mainMenu {text-align:left}\n";
config.shadowTiddlers.TagsTreeStyleSheet +=".branch .button {border:1px solid #DDD; color:#AAA;font-size:9px;padding:0 2px;margin-right:0.3em;vertical-align:middle;text-align:center;}\n";
config.shadowTiddlers.TagsTreeStyleSheet +="/*}}}*/";

store.addNotification("TagsTreeStyleSheet", refreshStyles); 

config.shadowTiddlers.MainMenu="<<tagsTree>>"

config.shadowTiddlers.PageTemplate = config.shadowTiddlers.PageTemplate.replace(/id='mainMenu' refresh='content' /,"id='mainMenu' refresh='content' force='true' ")

//}}}
Los juegos de Rol podemos clasificarlos según su temática en tres grandes
bloques:

*Los juegos medieval-fantásticos. Como es lógico el tema es una sociedad entre las prehistóricas y la época del renacimiento. Magia y espada.
Los juegos de ciencia-ficción y tecnología. Estos juegos se desarrollan en el futuro o presente-idealizado donde la tecnología está por todos lados. Robots, naves espaciales, sables laser, viajes intergaláticos o interdimensionales y posiblemente ciber-implantes ocupan el lugar de la magia en estas historias.
*Los juegos góticos o de terror. Se centran en la existencia de seres sobrenaturales como vampiros, hadas, hombres-lobos, espíritus y mounstros que coexisten con la humanidad. Suelen estar ambientados en una realidad paralela en tiempos desde el oscurantismo, hasta el presente o futuro cercano, pudiendo mezclarse eventualmente con otros géneros. ¿Qué haría usted si derrepente tuviese que alimentarse de sangre humana para seguir existiendo?
*Aquellos juegos de ambientes diversos, tales como el mundo de los dibujos animados (¿recuerdan el engaño de Roger Rabbit?), las Campañas de Alejandro Magno, la Revolución Francesa, la Segunda Guerra Mundial, y temas de películas como Matrix, Starwars, Expedientes X. 

Existen sin embargo, Juegos de Rol para casi todo tema que la literatura, el cine o en general la mente humana pueda recrear.
Nombre de la Raza:
Los Antíguos

Comentarios Generales:
Hace ya más de mil años que los Antíguos dejaron de ser humanos. Su semejanza no deja de ser evidente, pero son lo suficientemente diferentes como para que las gentes de Auka tengan la convicción de que vienen de otro sitio [Nota posterior al post: al encontrar estas imágenes me pareció interesante adoptar este look para esta raza, pero aún no me he decidido. Estas imágenes son de "The Wheel of Time". Los de la raza que luce así se llaman Ogier. Sin embargo más que fusilármelos, estoy considerando la idea de que la forma detrás de las arrugas sea esta de las imágenes. En Auka el que luce más joven de estos dos y está a la izquierda, podría tener 13 años de edad. Me los imagino con menos orejas, y piel grisácea]. No son rudos ni resistentes, prefiriendo las actividades intelectuales y místicas. Son gente paciente, con alta capacidad de raciocinio y fuerza de voluntad. Tienden, sin embargo, a ser distraídos y olvidadizos con las cosas de la cotidianidad. Poco se dejan llevar por las emociones. Tienen gran poder de convencimiento, basado en intrincados argumentos.

Descripción Básica:
Suelen tener el cabello con más canas que con cabello del color que tuvieron de jóvenes. Su poca resistencia física y fuerza vienen acompañados con una altísima tendencia a tener una joroba, que se hace empezar a notar en la pubertad. Su piel se arruga con mucha rapidez, por lo que aparentan siempre el triple de la edad que realmente tienen. Suelen ser poco resistentes a la actividad física prolongada, y no tener significativa fuerza muscular. Su mirada es insualmente profunda, llena de sabiduría e inteligencia, pero, a diferencia de los Hijos de Gaia, transmite una calma, serenidad, y desapasionamiento tan arraigado, que muchos se preguntan si realmente son seres capaces de sentir pasión.

Altura:
Tienden a ser menos altos que la media humana.

Peso:
No hay tendencia particular al sobrepeso ni a ser esbeltos.

Cabello:
Puede ser de cualquier color, pero siempre las canas predominan. El bello facial es bastante frecuente, por lo que la mayoría de los hombres de esta raza se dejan una larga barba, al llegar a la adultez.

Ojos:
Grises.

Piel:
Blanca, y con una textura que refleja una edad 3 veces mayor a la actual.

Espectativa de Vida:
200 años.

Notas:
Prefieren ropas cómodas, formales y rodearse de libros y elementos alusivos a la religión que profesen. No son muy adeptos a armadura y armas.

Valores de Habilidades:
Mínimo Espíritu y Razonamiento 7
Máximo Agilidad y Resistencia 5

Códigos de Habilidades:
Mínimo Espíritu y Razonamiento C
Máximo Agilidad y Resistencia B
Máximo Percepción C

Defensa Natural:
+2 en chequeos para resistir ataques mentales y espirituales.

Habilidades Especiales:

    * Si tienen a mano los libros necesarios, o material de foco religioso necesario, gana +4 a una acción de Razonamiento o Espíritu (respectivamente). Esta habilidad la puede utilizar en un día tantas veces como cartas tenga en mano el jugador.
    * Son la única raza que puede manejar la magia simultáneamente como Wizard y como Clérigo.


Requerimientos Adicionales:

    * Mínimo de Riqueza 4, en la escala socio-económica medieval, el estatus social mínimo que tienen, por el hecho de ser de esta raza, es el de comerciantes.
    * Al menos un skill "académico".
    * Al menos un skill que involucre de alguna forma algún tipo de magia.


Ventajas Raciales:

    * Si pasa un Check de dificultad 8 de Razonamiento (opuesto por el Espíritu del "oponente"), puede ganar un Trump Bonus en un chequeo de Presencia para convencer, persuadir o negociar, reflejando el uso de complejos argumentos.
    * Tienen Trump Bonus para acciones de Razonamiento y Percepción referentes a la magia.


Desventajas Raciales:

    * No tienen Trump Bonus en acciones realizadas en ambientes salvajes.
    * No tienen Trump Bonus en ataques realizados en cuerpo a cuerpo.
    * No pueden tener el rol de Druida ni el de Ranger.


Role-playing:
El rol de wizard y el de clérigo son muy atractivos para los miembros de esta raza.
/***
| Name|ToggleTagPlugin|
| Description|Makes a checkbox which toggles a tag in a tiddler|
| Version|3.0 ($Rev: 1845 $)|
| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source|http://tiddlyspot.com/mptw/#ToggleTagMacro|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!Usage
{{{<<toggleTag }}}//{{{TagName TiddlerName LabelText}}}//{{{>>}}}
* TagName - the tag to be toggled, default value "checked"
* TiddlerName - the tiddler to toggle the tag in, default value the current tiddler
* LabelText - the text (gets wikified) to put next to the check box, default value is '{{{[[TagName]]}}}' or '{{{[[TagName]] [[TiddlerName]]}}}'
(If a parameter is '.' then the default will be used)

Examples:

|Code|Description|Example|h
|{{{<<toggleTag>>}}}|Toggles the default tag (checked) in this tiddler|<<toggleTag>>|
|{{{<<toggleTag TagName>>}}}|Toggles the TagName tag in this tiddler|<<toggleTag TagName>>|
|{{{<<toggleTag TagName TiddlerName>>}}}|Toggles the TagName tag in the TiddlerName tiddler|<<toggleTag TagName TiddlerName>>|
|{{{<<toggleTag TagName TiddlerName 'click me'>>}}}|Same but with custom label|<<toggleTag TagName TiddlerName 'click me'>>|
|{{{<<toggleTag . . 'click me'>>}}}|dot means use default value|<<toggleTag . . 'click me'>>|
Notes:
* If TiddlerName doesn't exist it will be silently created
* Set label to '-' to specify no label
* See also http://mgtd-alpha.tiddlyspot.com/#ToggleTag2

!Known issues
* Doesn't smoothly handle the case where you toggle a tag in a tiddler that is current open for editing

***/
//{{{

merge(config.macros,{

	toggleTag: {

		doRefreshAll: true,
		createIfRequired: true,
		shortLabel: "[[%0]]",
		longLabel: "[[%0]] [[%1]]",

		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			var tag = (params[0] && params[0] != '.') ? params[0] : "checked";
			var title = (params[1] && params[1] != '.') ? params[1] : tiddler.title;
			var defaultLabel = (title == tiddler.title ? this.shortLabel : this.longLabel);
			var label = (params[2] && params[2] != '.') ? params[2] : defaultLabel;
			label = (label == '-' ? '' : label);
			var theTiddler =  title == tiddler.title ? tiddler : store.getTiddler(title);
			var cb = createTiddlyCheckbox(place, label.format([tag,title]), theTiddler && theTiddler.isTagged(tag), function(e) {
				if (!store.tiddlerExists(title)) {
					if (config.macros.toggleTag.createIfRequired) {
						var content = store.getTiddlerText(title); // just in case it's a shadow
						store.saveTiddler(title,title,content?content:"",config.options.txtUserName,new Date(),null);
					}
					else 
						return false;
				}
				store.setTiddlerTag(title,this.checked,tag);
				return true;
			});
		}
	}
});

//}}}
/***
|Name|UnsavedChangesPlugin|
|Source|http://www.TiddlyTools.com/#UnsavedChangesPlugin|
|Version|3.1.1|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides|TiddlyWiki.prototype.setDirty,store.saveTiddler,store.removeTiddler|
|Description|show droplist of tiddlers that have changed since the last time the document was saved|
Display a droplist of tiddlers that have been changed since the last time the document was saved.  The list includes all new/modified tiddlers as well as those changed with "minor edits" enabled and any tiddlers that you import during the session, regardless of their modification date.
!!!!!Usage
<<<
{{{<<unsavedChanges>>}}} or {{{<<unsavedChanges list separator>>}}}
When no parameters are provided, the full "control panel" interface is displayed.  However, if the ''"list"'' keyword is used, then a simple space-separated list of ~TiddlyLinks is rendered instead.  You can also specify an optional alternative ''separator'' value that can be used in place of the default space characters.  For example, you can specify {{{"<br>"}}} as the separator in order to display each link, one per line.

When a control panel interface is displayed, and tiddlers are changed in any way, the droplist contents (and related command links) are automatically updated to reflect those changes.  Depending upon what other plugins are installed, the related command links will vary:
* If [[NestedSlidersPlugin]] is installed, droplist is contained in a ''SLIDER''.
* If [[LoadTiddlersPlugin]] is installed, a ''REVERT'' button is added.
* If [[NewDocumentPlugin]] is installed, a ''SAVE AS'' link is added.
* If [[UploadPlugin]] is installed, an ''UPLOAD'' (or ''save to web'') link is added.
* If [[TrashPlugin]] is installed and there are tiddlers tagged with<<tag Trash>>, an ''EMPTY TRASH'' link is added.
Note: only one instance of the unsaved changes droplist will be displayed at any given time.  If the macro is invoked when the droplist is already rendered elsewhere in the document, the list is //moved// to the current macro location.  Subsequently re-rendering the previous container will move the droplist back to that location.
<<<
!!!!!Examples
<<<
^^//note: the following examples will not display any output unless there are already unsaved changes in the current document.//^^
{{{<<unsavedChanges>>}}}
<<unsavedChanges>>
----
{{{<<unsavedChanges list>>}}}
<<unsavedChanges list>>
----
{{{<<unsavedChanges list "<br>">>}}}
<<unsavedChanges list "<br>">>
<<<
!!!!!Revision History
<<<
''2007.12.22 [3.1.1]'' hijack removeTiddler() instead of low-level deleteTiddler() to correct tracking and refresh handling issues.  in saveTiddler(), check for 'tiddler rename' (title!=newtitle) and adjust list accordingly.
''2007.12.21 [3.1.0]'' added support for {{{<<unsavedChanges list separator>>}}} usage to unsaved tiddlers as a simple list of links, embedded in tiddler content (e.g., [[MainMenu]])
''2007.12.20 [3.0.0]'' rewrite to track ALL changed tiddlers, including imports and minor edits, regardless of saved modification dates.  Also, rewrote display logic to directly refresh macro output instead of triggering a page refresh.  The entire process is MUCH more efficient now.
''2007.08.02 [2.0.0]'' converted from inline script
''2007.01.01 [1.0.0]'' initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.unsavedChanges= {major: 3, minor: 1, revision: 0, date: new Date(2007,12,21)};

// hijack store.setDirty() function (force display update after saving the file)
// note: do NOT hijack the prototype function.  This hijack should only be applied to
// the main 'store' instance only (i.e., don't refresh when loading temporary store
// as part of ImportTiddlers processing)
if (store.showUnsaved_setDirty==undefined) {
	store.showUnsaved_setDirty=store.setDirty;
	store.setDirty = function(flag) {
		var refresh=this.isDirty() && !flag; // 'dirty' to 'clean', force a refresh...
		this.showUnsaved_setDirty.apply(this,arguments); // but change the flag first.
		if (refresh) {
			config.macros.unsavedChanges.changed=[]; // clear changed list
			config.macros.unsavedChanges.render(); // refresh droplist
		}
	}
}

// hijack store.saveTiddler() and store.deleteTiddler() function to track 'changed' tiddlers
if (store.showUnsaved_saveTiddler==undefined) {
	store.showUnsaved_saveTiddler=store.saveTiddler;
	store.saveTiddler=function(title,newtitle) {
		if (title!=newtitle) {
			var i=config.macros.unsavedChanges.changed.indexOf(title);
			if (i!=-1) config.macros.unsavedChanges.changed.splice(i,1); // remove old from list
		} 
		var i=config.macros.unsavedChanges.changed.indexOf(newtitle);
		if (i!=-1) config.macros.unsavedChanges.changed.splice(i,1); // remove new title from list
		config.macros.unsavedChanges.changed.push(newtitle); // add new title to END of list
		var t=this.showUnsaved_saveTiddler.apply(this,arguments);
		if (!this.notificationLevel) config.macros.unsavedChanges.render(); // refresh droplist
		return t;
	}
}
if (store.showUnsaved_removeTiddler==undefined) {
	store.showUnsaved_removeTiddler=store.removeTiddler;
	store.removeTiddler=function(title) {
		var i=config.macros.unsavedChanges.changed.indexOf(title);
		if (i!=-1) config.macros.unsavedChanges.changed.splice(i,1); // remove from list
		this.showUnsaved_removeTiddler.apply(this,arguments);
		if (!this.notificationLevel) config.macros.unsavedChanges.render(); // refresh droplist
	}
}
config.macros.unsavedChanges = {
	changed: [], // list of currently unsaved tiddler titles
	handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		// no params? render droplist, buttons and command links at current location
		if (!params[0]) { this.render(place); return; }
		// otherwise, output a simple list of TiddlyLinks (with optional alternative separator)
		wikify("[["+this.changed.join("]]"+(params[1]||" ")+"[[")+"]]",place);
	},
	render: function(place) { // show composite droplist+buttons+commands
		// create or retrieve output wrapper (note: single instance by ID)
		var wrapper=document.getElementById("unsavedChanges_display");
		if (!place && !wrapper) return; // no where to put output... do nothing!
		if (!wrapper) wrapper=createTiddlyElement(null,"span","unsavedChanges_display");
		if (place && wrapper) place.insertBefore(wrapper,null); // move output to current location
		removeChildren(wrapper); // make sure its empty
		if (!this.changed.length) return; // no changes to display... we're done!
		var out=this.getPanel();
		wikify(out,wrapper);
	},
	getPanel: function () {
		// gather changed tiddlers (in reverse order - most recent first)
		var tids=[]; for (var i=this.changed.length-1; i>=0; i--)
			{ var t=store.getTiddler(this.changed[i]); if (t) tids.push(t); }
		tids.sort(function(a,b){return a.modified<b.modified?-1:(a.modified==b.modified?0:1);}); // sort by date
		// generate formatted droplist content
 		var list=''; var item='<option value="%0">%1 - %0</option>';
		for (var i=tids.length-1; i>=0; i--)
			list+=item.format([tids[i].title,tids[i].modified.formatString('YYYY.0MM.0DD 0hh:0mm:0ss')]);
		// display droplist, buttons, and related command links
		var out=''; var c=this.changed.length;
		var summary='There %0 %1 unsaved tiddler%2...'.format([c==1?'is':'are',c,c==1?'':'s'])
		if (version.extensions.nestedSliders) out+='+++(unsaved)['+summary+'|show/hide a list of changed tiddlers]...';
		else out+=summary+"\n";
		out+='<html><form style="display:inline"><!--\
			--><select size="1" name="list" title="select a tiddler to view" \
				onchange="var v=this.value; if (!v.length) return; story.displayTiddler(null,v); \
					window.scrollTo(0,ensureVisible(document.getElementById(story.idPrefix+v)));"><!--\
			-->'+list+'<!--\
			--></select><!--\
			--><input type="button" value="goto" \
				onclick="var v=this.form.list.value; if (!v.length) return; story.displayTiddler(null,v); \
					var t=document.getElementById(story.idPrefix+v); if (t) window.scrollTo(0,ensureVisible(t));">';
		if (version.extensions.loadTiddlers)  {
			out+='<input type="button" value="revert" title="import the last saved version of this tiddler" \
				onclick="var v=this.form.list.value; if (!v.length) return; \
					var t=\'<\'+\'<loadTiddlers [[tiddler:\'+v+\']] \'+document.location.href+\' confirm force noreport>\'+\'>\'; \
					var e=document.getElementById(\'executeRevert\'); if (e) e.parentNode.removeChild(e); \
					e=document.createElement(\'span\'); e.id=\'executeRevert\'; wikify(t,e);">';
		}
		out+='</form></html>';
		if (!readOnly) {
			out+='\n{{small{';
			out+='<<saveChanges>>';
			if (config.macros.newDocument) out+=' | <<newDocument ask all>>'; // NewDocumentPlugin
			if (config.macros.upload) out+=' | <<upload>>'; // UploadPlugin
			if (config.macros.emptyTrash && store.getTaggedTiddlers("Trash").length) out+=' | <<emptyTrash>>'; // TrashPlugin
			out+='}}}';
		}
		if (version.extensions.nestedSliders) out+='===';
		return out;
	}
};
//}}}
/***
<<tiddler UploadPluginDoc>>
!Code
***/
//{{{
version.extensions.UploadPlugin = {
	major: 3, minor: 3, revision: 3, 
	date: new Date(2006,6,30),
	type: 'macro',
	source: 'http://tiddlywiki.bidix.info/#UploadPlugin',
	docs: 'http://tiddlywiki.bidix.info/#UploadPluginDoc'
};
//}}}

////+++!![config.lib.file]

//{{{
if (!config.lib) config.lib = {};
if (!config.lib.file) config.lib.file= {
	author: 'BidiX',
	version: {major: 0, minor: 1, revision: 0}, 
	date: new Date(2006,3,9)
};
config.lib.file.dirname = function (filePath) {
	var lastpos;
	if ((lastpos = filePath.lastIndexOf("/")) != -1) {
		return filePath.substring(0, lastpos);
	} else {
		return filePath.substring(0, filePath.lastIndexOf("\\"));
	}
};
config.lib.file.basename = function (filePath) {
	var lastpos;
	if ((lastpos = filePath.lastIndexOf("#")) != -1) 
		filePath = filePath.substring(0, lastpos);
	if ((lastpos = filePath.lastIndexOf("/")) != -1) {
		return filePath.substring(lastpos + 1);
	} else
		return filePath.substring(filePath.lastIndexOf("\\")+1);
};
window.basename = function() {return "@@deprecated@@";};
//}}}
////===

////+++!![config.lib.log]

//{{{
if (!config.lib) config.lib = {};
if (!config.lib.log) config.lib.log= {
	author: 'BidiX',
	version: {major: 0, minor: 1, revision: 0}, 
	date: new Date(2006,3,9)
};
config.lib.Log = function(tiddlerTitle, logHeader) {
	if (version.major < 2)
		this.tiddler = store.tiddlers[tiddlerTitle];
	else
		this.tiddler = store.getTiddler(tiddlerTitle);
	if (!this.tiddler) {
		this.tiddler = new Tiddler();
		this.tiddler.title = tiddlerTitle;
		this.tiddler.text = "| !date | !user | !location |" + logHeader;
		this.tiddler.created = new Date();
		this.tiddler.modifier = config.options.txtUserName;
		this.tiddler.modified = new Date();
	if (version.major < 2)
		store.tiddlers[tiddlerTitle] = this.tiddler;
	else
		store.addTiddler(this.tiddler);
	}
	return this;
};

config.lib.Log.prototype.newLine = function (line) {
	var now = new Date();
	var newText = "| ";
	newText += now.getDate()+"/"+(now.getMonth()+1)+"/"+now.getFullYear() + " ";
	newText += now.getHours()+":"+now.getMinutes()+":"+now.getSeconds()+" | ";
	newText += config.options.txtUserName + " | ";
	var location = document.location.toString();
	var filename = config.lib.file.basename(location);
	if (!filename) filename = '/';
	newText += "[["+filename+"|"+location + "]] |";
	this.tiddler.text = this.tiddler.text + "\n" + newText;
	this.addToLine(line);
};

config.lib.Log.prototype.addToLine = function (text) {
	this.tiddler.text = this.tiddler.text + text;
	this.tiddler.modifier = config.options.txtUserName;
	this.tiddler.modified = new Date();
	if (version.major < 2)
	store.tiddlers[this.tiddler.tittle] = this.tiddler;
	else {
		store.addTiddler(this.tiddler);
		story.refreshTiddler(this.tiddler.title);
		store.notify(this.tiddler.title, true);
	}
	if (version.major < 2)
		store.notifyAll(); 
};
//}}}
////===

////+++!![config.lib.options]

//{{{
if (!config.lib) config.lib = {};
if (!config.lib.options) config.lib.options = {
	author: 'BidiX',
	version: {major: 0, minor: 1, revision: 0}, 
	date: new Date(2006,3,9)
};

config.lib.options.init = function (name, defaultValue) {
	if (!config.options[name]) {
		config.options[name] = defaultValue;
		saveOptionCookie(name);
	}
};
//}}}
////===

////+++!![PasswordTweak]

//{{{
version.extensions.PasswordTweak = {
	major: 1, minor: 0, revision: 2, date: new Date(2006,3,11),
	type: 'tweak',
	source: 'http://tiddlywiki.bidix.info/#PasswordTweak'
};
//}}}
/***
!!config.macros.option
***/
//{{{
config.macros.option.passwordCheckboxLabel = "Save this password on this computer";
config.macros.option.passwordType = "password"; // password | text

config.macros.option.onChangeOption = function(e)
{
	var opt = this.getAttribute("option");
	var elementType,valueField;
	if(opt) {
		switch(opt.substr(0,3)) {
			case "txt":
				elementType = "input";
				valueField = "value";
				break;
			case "pas":
				elementType = "input";
				valueField = "value";
				break;
			case "chk":
				elementType = "input";
				valueField = "checked";
				break;
		}
		config.options[opt] = this[valueField];
		saveOptionCookie(opt);
		var nodes = document.getElementsByTagName(elementType);
		for(var t=0; t<nodes.length; t++) {
			var optNode = nodes[t].getAttribute("option");
			if (opt == optNode) 
				nodes[t][valueField] = this[valueField];
		}
	}
	return(true);
};

config.macros.option.handler = function(place,macroName,params)
{
    var opt = params[0];
	var size = 15;
	if (params[1])
		size = params[1];
    if(config.options[opt] === undefined) {
        return;}
    var c;
    switch(opt.substr(0,3)) {
		case "txt":
			c = document.createElement("input");
			c.onkeyup = this.onChangeOption;
			c.setAttribute ("option",opt);
			c.size = size;
			c.value = config.options[opt];
			place.appendChild(c);
			break;
		case "pas":
			// input password
			c = document.createElement ("input");
			c.setAttribute("type",config.macros.option.passwordType);
			c.onkeyup = this.onChangeOption;
			c.setAttribute("option",opt);
			c.size = size;
			c.value = config.options[opt];
			place.appendChild(c);
			// checkbox link with this password "save this password on this computer"
			c = document.createElement("input");
			c.setAttribute("type","checkbox");
			c.onclick = this.onChangeOption;
			c.setAttribute("option","chk"+opt);
			place.appendChild(c);
			c.checked = config.options["chk"+opt];
			// text savePasswordCheckboxLabel
			place.appendChild(document.createTextNode(config.macros.option.passwordCheckboxLabel));
			break;
		case "chk":
			c = document.createElement("input");
			c.setAttribute("type","checkbox");
			c.onclick = this.onChangeOption;
			c.setAttribute("option",opt);
			place.appendChild(c);
			c.checked = config.options[opt];
			break;
	}
};
//}}}
/***
!! Option cookie stuff
***/
//{{{
window.loadOptionsCookie_orig_PasswordTweak = window.loadOptionsCookie;
window.loadOptionsCookie = function()
{
	var cookies = document.cookie.split(";");
	for(var c=0; c<cookies.length; c++) {
		var p = cookies[c].indexOf("=");
		if(p != -1) {
			var name = cookies[c].substr(0,p).trim();
			var value = cookies[c].substr(p+1).trim();
			switch(name.substr(0,3)) {
				case "txt":
					config.options[name] = unescape(value);
					break;
				case "pas":
					config.options[name] = unescape(value);
					break;
				case "chk":
					config.options[name] = value == "true";
					break;
			}
		}
	}
};

window.saveOptionCookie_orig_PasswordTweak = window.saveOptionCookie;
window.saveOptionCookie = function(name)
{
	var c = name + "=";
	switch(name.substr(0,3)) {
		case "txt":
			c += escape(config.options[name].toString());
			break;
		case "chk":
			c += config.options[name] ? "true" : "false";
			// is there an option link with this chk ?
			if (config.options[name.substr(3)]) {
				saveOptionCookie(name.substr(3));
			}
			break;
		case "pas":
			if (config.options["chk"+name]) {
				c += escape(config.options[name].toString());
			} else {
				c += "";
			}
			break;
	}
	c += "; expires=Fri, 1 Jan 2038 12:00:00 UTC; path=/";
	document.cookie = c;
};
//}}}
/***
!! Initializations
***/
//{{{
// define config.options.pasPassword
if (!config.options.pasPassword) {
	config.options.pasPassword = 'defaultPassword';
	window.saveOptionCookie('pasPassword');
}
// since loadCookies is first called befor password definition
// we need to reload cookies
window.loadOptionsCookie();
//}}}
////===

////+++!![config.macros.upload]

//{{{
config.macros.upload = {
	accessKey: "U",
	formName: "UploadPlugin",
	contentType: "text/html;charset=UTF-8",
	defaultStoreScript: "store.php"
};

// only this two configs need to be translated
config.macros.upload.messages = {
	aboutToUpload: "About to upload TiddlyWiki to %0",
	errorDownloading: "Error downloading",
	errorUploadingContent: "Error uploading content",
	fileNotFound: "file to upload not found",
	fileNotUploaded: "File %0 NOT uploaded",
	mainFileUploaded: "Main TiddlyWiki file uploaded to %0",
	urlParamMissing: "url param missing",
	rssFileNotUploaded: "RssFile %0 NOT uploaded",
	rssFileUploaded: "Rss File uploaded to %0"
};

config.macros.upload.label = {
	promptOption: "Save and Upload this TiddlyWiki with UploadOptions",
	promptParamMacro: "Save and Upload this TiddlyWiki in %0",
	saveLabel: "save to web", 
	saveToDisk: "save to disk",
	uploadLabel: "upload"	
};

config.macros.upload.handler = function(place,macroName,params){
	// parameters initialization
	var storeUrl = params[0];
	var toFilename = params[1];
	var backupDir = params[2];
	var uploadDir = params[3];
	var username = params[4];
	var password; // for security reason no password as macro parameter
	var label;
	if (document.location.toString().substr(0,4) == "http")
		label = this.label.saveLabel;
	else
		label = this.label.uploadLabel;
	var prompt;
	if (storeUrl) {
		prompt = this.label.promptParamMacro.toString().format([this.dirname(storeUrl)]);
	}
	else {
		prompt = this.label.promptOption;
	}
	createTiddlyButton(place, label, prompt, 
						function () {
							config.macros.upload.upload(storeUrl, toFilename, uploadDir, backupDir, username, password); 
							return false;}, 
						null, null, this.accessKey);
};
config.macros.upload.UploadLog = function() {
	return new config.lib.Log('UploadLog', " !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |" );
};
config.macros.upload.UploadLog.prototype = config.lib.Log.prototype;
config.macros.upload.UploadLog.prototype.startUpload = function(storeUrl, toFilename, uploadDir,  backupDir) {
	var line = " [[" + config.lib.file.basename(storeUrl) + "|" + storeUrl + "]] | ";
	line += uploadDir + " | " + toFilename + " | " + backupDir + " |";
	this.newLine(line);
};
config.macros.upload.UploadLog.prototype.endUpload = function() {
	this.addToLine(" Ok |");
};
config.macros.upload.basename = config.lib.file.basename;
config.macros.upload.dirname = config.lib.file.dirname;
config.macros.upload.upload = function(storeUrl, toFilename, uploadDir, backupDir, username, password)
{
	// parameters initialization
	storeUrl = (storeUrl ? storeUrl : config.options.txtUploadStoreUrl);
	toFilename = (toFilename ? toFilename : config.options.txtUploadFilename);
	backupDir = (backupDir ? backupDir : config.options.txtUploadBackupDir);
	uploadDir = (uploadDir ? uploadDir : config.options.txtUploadDir);
	username = (username ? username : config.options.txtUploadUserName);
	password = config.options.pasUploadPassword; // for security reason no password as macro parameter
	if (storeUrl === '') {
		config.macros.upload.defaultStoreScript;
	}
	if (config.lib.file.dirname(storeUrl) === '') {
		storeUrl = config.lib.file.dirname(document.location.toString())+'/'+storeUrl;
	}
	if (toFilename === '') {
		toFilename = config.lib.file.basename(document.location.toString());
	}

	clearMessage();
	// only for forcing the message to display
	 if (version.major < 2)
		store.notifyAll();
	if (!storeUrl) {
		alert(config.macros.upload.messages.urlParamMissing);
		return;
	}
	
	var log = new this.UploadLog();
	log.startUpload(storeUrl, toFilename, uploadDir,  backupDir);
	if (document.location.toString().substr(0,5) == "file:") {
		saveChanges();
	}
	displayMessage(config.macros.upload.messages.aboutToUpload.format([this.dirname(storeUrl)]), this.dirname(storeUrl));
	this.uploadChanges(storeUrl, toFilename, uploadDir, backupDir, username, password);
	if(config.options.chkGenerateAnRssFeed) {
		//var rssContent = convertUnicodeToUTF8(generateRss());
		var rssContent = generateRss();
		var rssPath = toFilename.substr(0,toFilename.lastIndexOf(".")) + ".xml";
		this.uploadContent(rssContent, storeUrl, rssPath, uploadDir, '', username, password, 
			function (responseText) {
				if (responseText.substring(0,1) != '0') {
					displayMessage(config.macros.upload.messages.rssFileNotUploaded.format([rssPath]));
				}
				else {
					if (uploadDir) {
						rssPath = uploadDir + "/" + config.macros.upload.basename(rssPath);
					} else {
						rssPath = config.macros.upload.basename(rssPath);
					}
					displayMessage(config.macros.upload.messages.rssFileUploaded.format(
						[config.macros.upload.dirname(storeUrl)+"/"+rssPath]), config.macros.upload.dirname(storeUrl)+"/"+rssPath);
				}
				// for debugging store.php uncomment last line
				//DEBUG alert(responseText);
			});
	}
	return;
};

config.macros.upload.uploadChanges = function(storeUrl, toFilename, uploadDir, backupDir, 
		username, password) {
	var original;
	if (document.location.toString().substr(0,4) == "http") {
		original =  this.download(storeUrl, toFilename, uploadDir, backupDir, username, password);
		return;
	}
	else {
		// standard way : Local file
		
		original = loadFile(getLocalPath(document.location.toString()));
		if(window.Components) {
			// it's a mozilla browser
			try {
				netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
				var converter = Components.classes["@mozilla.org/intl/scriptableunicodeconverter"]
									.createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
				converter.charset = "UTF-8";
				original = converter.ConvertToUnicode(original);
			}
			catch(e) {
			}
		}
	}
	//DEBUG alert(original);
	this.uploadChangesFrom(original, storeUrl, toFilename, uploadDir, backupDir, 
		username, password);
};

config.macros.upload.uploadChangesFrom = function(original, storeUrl, toFilename, uploadDir, backupDir, 
		username, password) {
	var startSaveArea = '<div id="' + 'storeArea">'; // Split up into two so that indexOf() of this source doesn't find it
	var endSaveArea = '</d' + 'iv>';
	// Locate the storeArea div's
	var posOpeningDiv = original.indexOf(startSaveArea);
	var posClosingDiv = original.lastIndexOf(endSaveArea);
	if((posOpeningDiv == -1) || (posClosingDiv == -1))
		{
		alert(config.messages.invalidFileError.format([document.location.toString()]));
		return;
		}
	var revised = original.substr(0,posOpeningDiv + startSaveArea.length) + 
				allTiddlersAsHtml() + "\n\t\t" +
				original.substr(posClosingDiv);
	var newSiteTitle;
	if(version.major < 2){
		newSiteTitle = (getElementText("siteTitle") + " - " + getElementText("siteSubtitle")).htmlEncode();
	} else {
		newSiteTitle = (wikifyPlain ("SiteTitle") + " - " + wikifyPlain ("SiteSubtitle")).htmlEncode();
	}
	revised = revised.replace(new RegExp("<title>[^<]*</title>", "im"),"<title>"+ newSiteTitle +"</title>");
	var response = this.uploadContent(revised, storeUrl, toFilename, uploadDir, backupDir, 
		username, password, function (responseText) {
					if (responseText.substring(0,1) != '0') {
						alert(responseText);
						displayMessage(config.macros.upload.messages.fileNotUploaded.format([getLocalPath(document.location.toString())]));
					}
					else {
						if (uploadDir !== '') {
							toFilename = uploadDir + "/" + config.macros.upload.basename(toFilename);
						} else {
							toFilename = config.macros.upload.basename(toFilename);
						}
						displayMessage(config.macros.upload.messages.mainFileUploaded.format(
							[config.macros.upload.dirname(storeUrl)+"/"+toFilename]), config.macros.upload.dirname(storeUrl)+"/"+toFilename);
						var log = new config.macros.upload.UploadLog();
						log.endUpload();
						store.setDirty(false);
					}
					// for debugging store.php uncomment last line
					//DEBUG alert(responseText);
				}
			);
};

config.macros.upload.uploadContent = function(content, storeUrl, toFilename, uploadDir, backupDir, 
		username, password, callbackFn) {
	var boundary = "---------------------------"+"AaB03x";		
	var request;
	try {
		request = new XMLHttpRequest();
		} 
	catch (e) { 
		request = new ActiveXObject("Msxml2.XMLHTTP"); 
		}
	if (window.netscape){
			try {
				if (document.location.toString().substr(0,4) != "http") {
					netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');}
			}
			catch (e) { }
		}		
	//DEBUG alert("user["+config.options.txtUploadUserName+"] password[" + config.options.pasUploadPassword + "]");
	// compose headers data
	var sheader = "";
	sheader += "--" + boundary + "\r\nContent-disposition: form-data; name=\"";
	sheader += config.macros.upload.formName +"\"\r\n\r\n";
	sheader += "backupDir="+backupDir
				+";user=" + username 
				+";password=" + password
				+";uploaddir=" + uploadDir
				+ ";;\r\n"; 
	sheader += "\r\n" + "--" + boundary + "\r\n";
	sheader += "Content-disposition: form-data; name=\"userfile\"; filename=\""+toFilename+"\"\r\n";
	sheader += "Content-Type: " + config.macros.upload.contentType + "\r\n";
	sheader += "Content-Length: " + content.length + "\r\n\r\n";
	// compose trailer data
	var strailer = new String();
	strailer = "\r\n--" + boundary + "--\r\n";
	var data;
	data = sheader + content + strailer;
	//request.open("POST", storeUrl, true, username, password);
	request.open("POST", storeUrl, true);
	request.onreadystatechange = function () {
				if (request.readyState == 4) {
				     if (request.status == 200)
						callbackFn(request.responseText);
					else
						alert(config.macros.upload.messages.errorUploadingContent);
				}
		};
	request.setRequestHeader("Content-Length",data.length);
	request.setRequestHeader("Content-Type","multipart/form-data; boundary="+boundary);
	request.send(data); 
};


config.macros.upload.download = function(uploadUrl, uploadToFilename, uploadDir, uploadBackupDir, 
	username, password) {
	var request;
	try {
		request = new XMLHttpRequest();
	} 
	catch (e) { 
		request = new ActiveXObject("Msxml2.XMLHTTP"); 
	}
	try {
		if (uploadUrl.substr(0,4) == "http") {
			netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
			}
		else {
			netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
		}
	} catch (e) { }
	//request.open("GET", document.location.toString(), true, username, password);
	request.open("GET", document.location.toString(), true);
	request.onreadystatechange = function () {
		if (request.readyState == 4) {
			if(request.status == 200) {
				config.macros.upload.uploadChangesFrom(request.responseText, uploadUrl, 
					uploadToFilename, uploadDir, uploadBackupDir, username, password);
			}
			else
				alert(config.macros.upload.messages.errorDownloading.format(
					[document.location.toString()]));
		}
	};
	request.send(null);
};

//}}}
////===

////+++!![Initializations]

//{{{
config.lib.options.init('txtUploadStoreUrl','store.php');
config.lib.options.init('txtUploadFilename','');
config.lib.options.init('txtUploadDir','');
config.lib.options.init('txtUploadBackupDir','');
config.lib.options.init('txtUploadUserName',config.options.txtUserName);
config.lib.options.init('pasUploadPassword','');
config.shadowTiddlers.UploadPluginDoc = "[[Full Documentation|http://tiddlywiki.bidix.info/l#UploadPluginDoc ]]\n"; 


//}}}
////===

////+++!![Core Hijacking]

//{{{
config.macros.saveChanges.label_orig_UploadPlugin = config.macros.saveChanges.label;
config.macros.saveChanges.label = config.macros.upload.label.saveToDisk;

config.macros.saveChanges.handler_orig_UploadPlugin = config.macros.saveChanges.handler;

config.macros.saveChanges.handler = function(place)
{
	if ((!readOnly) && (document.location.toString().substr(0,4) != "http"))
		createTiddlyButton(place,this.label,this.prompt,this.onClick,null,null,this.accessKey);
}

//}}}
////===
Estamos hablando de un mundo donde tu no tienes armas mágicas. Nada de tiendas donde compras una "espada +1". Puede que logres "encantar" por un tiempito un arma, pero sólo eso.

Hay items sagrados MUY puntuales, por supuesto. Pero la magia es más una herramienta que una fuente de mejoramiento tecnológico. Ningún uso de la magia deja de mover "hilos" y
traer consecuencias, dependiendo de cómo y para qué se usó la magia en cada momento.

En principio, Para usar magia, se requiere de una Disciplina mágica (por ejemplo "Wizardry"). El primer Skill-Level sólo proporciona una habilidad similar a la de una Disciplina Metafísica, pero asociada a la primera escuela de magia que el mago desea dominar. El resto del conocimiento es sólo teórico. No puede ser "Full Practitioner" basándose sólo en este nivel de Disciplina.

Luego, todo "skill-level" más allá del primero, debe ser gastado específicamente en una escuela (o esfera).

Si te compraste wizardry (transmutation), y wizardry (enchantment), tendrás igual cantidad de poder mágico que uno que gastó los dos skill-levels en la misma escuela (misma cantidad de spellpoints). Sin embargo, el chequeo para hacer un hechizo de cualquiera de ambas escuelas, será una categoría más fácil para el que se compro los 2 skill-levels en la misma escuela, reflejando que es especialista.

Por ejemplo, el rol es a dificultad 8 con cada escuela, para el que compró 2 escuelas. El que tiene dos skill-levels en una sóla escuela, tendría dificultad 4.

Ambos tendrían tantos spellpoints como

(N° skills mágicos)*Quests + Ability

La cantidad de Puntos de Magia que puede usar en un día un usuario de la magia, sería calculado con esta fórmula si se es "Partial Spellcaster":

Spellpoints = skills * Quests

Esto refleja que sólo manejas lo que te permiten estrictamente tus procedimientos con esa herramienta que representa la disciplina propiamente dicha (mágica o metafísica)

Para un "Full-Practitioner" la cantidad de Puntos de Magia sería calculada así:

Spellpoints = [ (Ability-4) + skills ] * Quests

Esto refleja que influye tu energía personal. Nota: "Ability - 4" es el indicador de qué tan sobresaliente es el personaje en esa habilidad. En otras palabras, tener un punto más de inteligencia que el promedio, te vale como un skill adicional....

Esto en general proporciona menos spellpoints que el sistema de magia de SAGA (DragonLance). Falta ver si tengo que revisar lo que representa cada renglón en la tabla de Dificultades Mágicas de SAGA, o puedo utilizarla como está.
[[MptwViewTemplate]]
Type the text for 'culturas'
Type the text for 'enemigos'
Type the text for 'excludeLists'
Type the text for 'excludeSearch'
Type the text for 'excludeTag'
Type the text for 'gaia'
Type the text for 'habitantes'
Type the text for 'magia'
Type the text for 'politica'
Type the text for 'roles'
Type the text for 'rpgs'
Type the text for 'systemConfig'
Type the text for 'systemTiddlers'
WhiteWizard me ha comentado en uno de los posts, opinando que los "Sabios" lucen demasiado poderosos como para ser raza disponible para jugar. Adicionalmente me comenta que la idea de que el mundo esté controlado como un títere, cuyos hilos sean movidos por los poderosos "Sabios" o "Antigüos", le luce extremadamente apetecible.
Mi opinión respecto a esto, es que no me parecen demasiado poderosos... si restringimos ese poder y conocimiento a la cúpula o cogoyo de "Sabios", dejando al resto como simples seres de una raza reconocida como antiguos (piensen en cómo a los elfos en Tierra Media se les llama "La gente hermosa", o "La gente antígua", sin que ello implique que son dioses). El reconocimiento, más que por ser antigüos, es por haber traído un conocimiento mucho más viejo que los registros de los humanos. En realidad, este reconocimiento les vale un estatus per se mayor al que pudiera tener un humano común.
Pensé por un momento en hacer a los Sabios físicamente menos favorecidos que los hombres típicos (más débiles, o más bajitos, o ambos, o con deficiencias de percepción). Esto pudiera darle a la relación humanos - sabios un aire de mutualismo. Unos proporcionan conocimiento, leyes, tecnología, guía espiritual, y los otros ofrecen fertilidad (pensaría en los "Sabios" como gente que raras veces produce descendencia) y mano de obra para empuñar armas.
Esto en cierta forma, como me indicó BisteckEncebollado en una conversa, podría ser como una resaca del cliché de "un mago es débil y hay que tener un fighter para cuidarlo",… algo así como la hermandad Raistlin - Caramon.
Ya Rich Burlew en "The New World" pensó en esta raza como parecidos a los gnomos, cosa que en principio me negué a implementar, porque no me agradaba la diferencia sustancial que hay entre gnomos y hombres. Pero la idea en general no es que sean enfermizos, sino simplemente poco dados a la marcialidad.
La posible "dependencia" que pudieran tener los Sabios respecto a los humanos, habría que tener mucho cuidado en como controlarla.
En si, creo que es necesario compartir algo acá, que comparto con Rich Burlew en "The New World". Estoy cansado de los Elfos como raza "mágica". Casi cualquier variedad de elfos que uno pueda inventar (y aún reconocer como élficos) ya existe en otros settings. Los enanos no me convencen, porque los veo distanciados de los conceptos de Sol, Luna y Gaia.... bastante incompatibles con los tres conceptos, creo yo. Los Halflings son, en esto concuerdo con Rich también, un plagio demasiado frontal a Tolkien. Rich comenta que los gnomos, sin embargo nunca han sido más que un comic relief en la mayoría de los settings. Por qué no darles un aire de grandeza y hacerlos excelentes magos y sabios, en lugar de sólo ilusionistas? se pregunta Rich. Y también manifiesta inquietud respecto a evitar el cliché de los gnomos inventores-locos. Yo concuerdo en que la idea es atractiva, pero no puedo evitar entonces pensar en esta propuesta, y no recordar a los gnomos de Harry Potter.
En lo que si puedo concordar respecto a esta idea "Gnómica" de Rich Burlew, es en que cada reino de este mundo tendría una significativa población de la raza de "sabios". Él los ve como una raza básicamente absorvida en la civilización humana desde tiempos antiguos. Las dos razas son básicamente inseparables, comenta Rich. Los "sabios" (para él.. los gnomos) trajeron conocimiento y magia a los humanos, mientras que los humanos seguridad y fuerza. En la época del juego los "sabios" podrían equipararse a los sacerdotes en la época de Carlo Magno. Estarían definitivamente separados de las políticas hereditarias, y sin embargo innegablemente envueltos en la política. No son ni nobles ni gente común. Son sólo... "sabios". Incluso hoy, en nuestro día moderno, los curas son vistos al mismo tiempo como "pobres" (en el sentido de que uno no los imagina gastando grandes cantidades dinero para SU comodidad), y como ricos (en el sentido de que su conexión con la institución religiosa les provee de iglesias con lujos y alimento sin ningún tipo de escasez, salvo la que haya producto de la propia elección).
BisteckEncebollado me comentó que pensar en que los humanos eran los que "protegían" a los "Sabios", implicaba que en cualquier momento, si a los humanos les da la gana, … ¡Adios Sabios!
Yo creo que lo que hace poco probable ese escenario (en el mediano plazo) es que las cúpulas de "Sabios" tienen mucha información que los humanos no saben, saben a medias, o no comprenden realmente. Adicionalmente, tienen tradición como guías espirituales.. y en tiempos medievales, un guía espiritual era quien te podía ayudar para asegurar tu vida más allá de la muerte.
La iglesia medieval, antes de tener caballeros, estaba militarmente indefensa. Pero al ser cuna de conocimiento y religión, ya eso daba suficiente motivo como para temerles. El "temor a Dios" se manifiesta entonces en un temor a los clérigos.
Cada indivíduo quiere salvarse, de algo que no ve, no entiende, pero sabe que lo gobierna todo. Se siente indefenso.
Mientras no salga un Lutero (como comenta BisteckEncebollado) todo indica que este tipo de "poder" podría darle equilibrio y estabilidad a la posición de los "Sabios".
En el momento de juego, la iglesia Moon tendría a sus guerreros sagrados, y la iglesia Sun tendría a sus paladines… su propio anillo de seguridad y brazo armado.
Tienen su inquisición, que les permite controlar a los revoltosos cabezas calientes, que podrían revelar aquello que no debe ser revelado.
BisteckEncebollado me comentó que de tanto leer "MoonChild", "SunChild", y "GaiaChild", se había olvidado de los humanos.
Creo importante decir que los AukaChildren: (1) no son culturas aparte (2) no son frecuentes (3) son difíciles de diferenciar de los humanos normales.
Por lo tanto, entran en el saco de "los humanos".
Eh... bueno... :o)
Son tan diferenciables de los humanos comunes, como lo podían ser los Numenorianos de los humanos comunes de la Tierra Media, en la época de la Guerra del Anillo.
…sólo que sin ser una cultura aparte.