Adding missing component pages

This commit is contained in:
Griatch 2020-07-08 22:52:46 +02:00
parent 7f79c61bb9
commit 22743055fe
17 changed files with 73 additions and 50 deletions

View file

@ -37,6 +37,16 @@ URL_REMAPS = {
"Howto/Starting/Adding-Command-Tutorial": "Adding-Commands", "Howto/Starting/Adding-Command-Tutorial": "Adding-Commands",
"Starting/Adding-Command-Tutorial": "Adding-Commands", "Starting/Adding-Command-Tutorial": "Adding-Commands",
"Adding-Command-Tutorial": "Adding-Commands", "Adding-Command-Tutorial": "Adding-Commands",
"CmdSet": "Command-Sets",
"Spawner": "Spawner-and-Prototypes",
"issue": "github:issue",
"issues": "github:issue",
"bug": "github:issue",
"bug-report": "github:issue",
"Components/Components-Overview": "Component-Overview",
"Components-Overview": "Component-Overview",
"Concepts/Concepts-Overview": "Concept-Overview",
"Concepts-Overview": "Concept-Overview",
} }
@ -95,9 +105,9 @@ def create_toctree():
# normal reference-links [txt](urls) # normal reference-links [txt](urls)
ref_regex = re.compile(r"\[(?P<txt>[\w -\[\]]+?)\]\((?P<url>.+?)\)", re.I + re.S + re.U) ref_regex = re.compile(r"\[(?P<txt>[\w -\[\]]+?)\]\((?P<url>.+?)\)", re.I + re.S + re.U + re.M)
# in document references # in document references
ref_doc_regex = re.compile(r"\[(?P<txt>[\w -]+?)\]:\s+?(?P<url>.+?)(?=$|\n)", re.I + re.S + re.U) ref_doc_regex = re.compile(r"\[(?P<txt>[\w -]+?)\]:\s+?(?P<url>.+?)(?=$|\n)", re.I + re.S + re.U + re.M)
def _sub(match): def _sub(match):
# inline reference links # inline reference links

View file

@ -0,0 +1,3 @@
# Channels
TODO: Channels are covered in [Communications](Communications) right now.

View file

@ -0,0 +1,3 @@
# Outputfuncs
TODO. For now info about outputfuncs are found in [OOB](../Concept/OOB).

View file

@ -0,0 +1,3 @@
# Server component
TODO: This is currently in [Portal-and-Server](Portal-And-Server).

View file

@ -0,0 +1,3 @@
# Webserver
TODO: There is no central docs for this component yet.

View file

@ -0,0 +1,3 @@
# Multisession modes
TODO: This is covered in various places before.

View file

@ -336,7 +336,7 @@ the
- `issue`, `bug-report`, `feature-request` - links to the same github issue select page. - `issue`, `bug-report`, `feature-request` - links to the same github issue select page.
If you find a problem, make a [bug report](issue)! If you find a problem, make a [bug report](github:issue)!
This will generate a link to https://github.com/evennia/evennia/issues/new/choose. This will generate a link to https://github.com/evennia/evennia/issues/new/choose.

View file

@ -54,12 +54,12 @@ The flat API is defined in `__init__.py` [viewable here](github:evennia/__init__
- [evennia.DefaultRoom](api:evennia.objects.objects#evennia.objects.objects.DefaultRoom) - base class for rooms ([docs](Component/Objects#Room)) - [evennia.DefaultRoom](api:evennia.objects.objects#evennia.objects.objects.DefaultRoom) - base class for rooms ([docs](Component/Objects#Room))
- [evennia.DefaultExit](api:evennia.objects.objects#evennia.objects.objects.DefaultExit) - base class for exits ([docs](Component/Objects#Exit)) - [evennia.DefaultExit](api:evennia.objects.objects#evennia.objects.objects.DefaultExit) - base class for exits ([docs](Component/Objects#Exit))
- [evennia.DefaultScript](api:evennia.scripts.scripts#evennia.scripts.scripts.DefaultScript) - base class for OOC-objects ([docs](Component/Scripts)) - [evennia.DefaultScript](api:evennia.scripts.scripts#evennia.scripts.scripts.DefaultScript) - base class for OOC-objects ([docs](Component/Scripts))
- [evennia.DefaultChannel](api:evennia.comms.comms#evennia.comms.comms.DefaultChannel) - base class for in-game channels ([docs](Channels)) - [evennia.DefaultChannel](api:evennia.comms.comms#evennia.comms.comms.DefaultChannel) - base class for in-game channels ([docs](Component/Channels))
### Commands ### Commands
- [evennia.Command](api:evennia.commands.command#evennia.commands.command.Command) - base [Command](Component/Commands) class. See also `evennia.default_cmds.MuxCommand` - [evennia.Command](api:evennia.commands.command#evennia.commands.command.Command) - base [Command](Component/Commands) class. See also `evennia.default_cmds.MuxCommand`
- [evennia.CmdSet](api:evennia.commands.cmdset#evennia.commands.cmdset.CmdSet) - base [Cmdset](CmdSet) class - [evennia.CmdSet](api:evennia.commands.cmdset#evennia.commands.cmdset.CmdSet) - base [Cmdset](Component/Command-Sets) class
- [evennia.default_cmds](api:Default-Command-Help) - access all default command classes as properties - [evennia.default_cmds](api:Default-Command-Help) - access all default command classes as properties
- [evennia.syscmdkeys](api:Commands#System-Commands) - access system command keys as properties - [evennia.syscmdkeys](api:Commands#System-Commands) - access system command keys as properties
@ -70,7 +70,7 @@ The flat API is defined in `__init__.py` [viewable here](github:evennia/__init__
- [evennia.gametime](api:evennia.utils.gametime) - server run- and game time ([docs](Component/Coding-Utils#gametime)) - [evennia.gametime](api:evennia.utils.gametime) - server run- and game time ([docs](Component/Coding-Utils#gametime))
- [evennia.logger](api:evennia.utils.logger) - logging tools - [evennia.logger](api:evennia.utils.logger) - logging tools
- [evennia.ansi](api:evennia.utils.ansi) - ansi coloring tools - [evennia.ansi](api:evennia.utils.ansi) - ansi coloring tools
- [evennia.spawn](api:evennia.prototypes.spawner#evennia.prototypes.spawner.Spawn) - spawn/prototype system ([docs](Spawner)) - [evennia.spawn](api:evennia.prototypes.spawner#evennia.prototypes.spawner.Spawn) - spawn/prototype system ([docs](Component/Spawner-and-Prototypes))
- [evennia.lockfuncs](api:evennia.locks.lockfuncs) - default lock functions for access control ([docs](Component/Locks)) - [evennia.lockfuncs](api:evennia.locks.lockfuncs) - default lock functions for access control ([docs](Component/Locks))
- [evennia.EvMenu](api:evennia.utils.evmenu#evennia.utils.evmenu.EvMenu) - menu system ([docs](Component/EvMenu)) - [evennia.EvMenu](api:evennia.utils.evmenu#evennia.utils.evmenu.EvMenu) - menu system ([docs](Component/EvMenu))
- [evennia.EvTable](api:evennia.utils.evtable#evennia.utils.evtable.EvTable) - text table creater - [evennia.EvTable](api:evennia.utils.evtable#evennia.utils.evtable.EvTable) - text table creater

View file

@ -42,8 +42,7 @@ new and better command system of your own design.
## Can I test it somewhere? ## Can I test it somewhere?
Evennia's demo server can be found at [demo.evennia.com](http://demo.evennia.com). If you prefer to Evennia's demo server can be found at [demo.evennia.com](http://demo.evennia.com). If you prefer to
connect to the demo via your own telnet client you can do so at `silvren.com`, port `4280`. Here is connect to the demo via your own telnet client you can do so at `silvren.com`, port `4280`.
a [screenshot](Screenshot).
Once you installed Evennia yourself it comes with its own tutorial - this shows off some of the Once you installed Evennia yourself it comes with its own tutorial - this shows off some of the
possibilities _and_ gives you a small single-player quest to play. The tutorial takes only one possibilities _and_ gives you a small single-player quest to play. The tutorial takes only one

View file

@ -99,7 +99,7 @@ There is usually no need to know the details of Django's database handling in or
it will handle most of the complexity for you under the hood using what we call it will handle most of the complexity for you under the hood using what we call
[typeclasses](Glossary#typeclass). But should you need the power of Django you can always get it. [typeclasses](Glossary#typeclass). But should you need the power of Django you can always get it.
Most commonly people want to use "raw" Django when doing more advanced/custom database queries than Most commonly people want to use "raw" Django when doing more advanced/custom database queries than
offered by Evennia's [default search functions](Howto/Starting/Tutorial-Searching-For-Objects). One will then need offered by Evennia's [default search functions](Howto/Starting/Part1/Searching-Things). One will then need
to read about Django's _querysets_. Querysets are Python method calls on a special form that lets to read about Django's _querysets_. Querysets are Python method calls on a special form that lets
you build complex queries. They get converted into optimized SQL queries under the hood, suitable you build complex queries. They get converted into optimized SQL queries under the hood, suitable
for your current database. [Here is our tutorial/explanation of Django queries](Tutorial-Searching- for your current database. [Here is our tutorial/explanation of Django queries](Tutorial-Searching-

View file

@ -6,10 +6,10 @@
If you cannot find what you are looking for in the If you cannot find what you are looking for in the
[online documentation](index), here's what to do: [online documentation](index), here's what to do:
- If you think the documentation is not clear enough, create a [documentation ticket](issue). - If you think the documentation is not clear enough, create a [documentation ticket](github:issue).
- If you have trouble with a missing feature or a problem you think is a bug, look through the - If you have trouble with a missing feature or a problem you think is a bug, look through the
the list of known [issue][issues] if you can't find your issue in the list, make a the list of known [issue][issues] if you can't find your issue in the list, make a
new one [here](bug-report). new one [here](github:issue).
- If you need help, want to start a discussion or get some input on something you are working on, - If you need help, want to start a discussion or get some input on something you are working on,
make a post to the [discussions group][group] This is technically a 'mailing list', but you don't make a post to the [discussions group][group] This is technically a 'mailing list', but you don't
need to use e-mail; you can post and read all messages just as easily from your browser via the need to use e-mail; you can post and read all messages just as easily from your browser via the
@ -28,7 +28,7 @@ Evennia is open-source and non-commercial. It relies on the time donated by its
- Spread the word! If you like Evennia, consider writing a blog post about it. - Spread the word! If you like Evennia, consider writing a blog post about it.
- Take part in the Evennia community! Join the [chat][chat] or [forum][group]. - Take part in the Evennia community! Join the [chat][chat] or [forum][group].
- Report problems you find or features you'd like to our [issue tracker](issues). - Report problems you find or features you'd like to our [issue tracker](github:issue).
```important:: ```important::
Just the simple act of letting developers know you are out there using their program helps a lot. Just the simple act of letting developers know you are out there using their program helps a lot.

View file

@ -56,7 +56,6 @@ text editors and IDEs with refactoring, syntax highlighting and all other conven
collaborative development of an Evennia game is done in the same way most professional collaborative collaborative development of an Evennia game is done in the same way most professional collaborative
development is done in the world, meaning all the best tools can be used. development is done in the world, meaning all the best tools can be used.
## `@parent` vs `@typeclass` and `@spawn` ## `@parent` vs `@typeclass` and `@spawn`
Inheritance works differently in Python than in softcode. Evennia has no concept of a "master Inheritance works differently in Python than in softcode. Evennia has no concept of a "master
@ -88,8 +87,8 @@ another which is again somewhat remniscent at least of the *effect* of `@parent
based inheritance of MUSH. based inheritance of MUSH.
There are other differences for sure, but that should give some feel for things. Enough with the There are other differences for sure, but that should give some feel for things. Enough with the
theory. Let's get down to more practical matters next. To install, see the [Getting Started theory. Let's get down to more practical matters next. To install, see the
instructions](Getting-Started). [Getting Started instructions](../Setup/Setup-Quickstart).
## A first step making things more familiar ## A first step making things more familiar
@ -211,10 +210,10 @@ for-roleplaying-sessions) that can be of interest.
An important aspect of making things more familiar for *Players* is adding new and tweaking existing An important aspect of making things more familiar for *Players* is adding new and tweaking existing
commands. How this is done is covered by the [Tutorial on adding new commands](Adding-Command- commands. How this is done is covered by the [Tutorial on adding new commands](Adding-Command-
Tutorial). You may also find it useful to shop through the `evennia/contrib/` folder. The [Tutorial Tutorial). You may also find it useful to shop through the `evennia/contrib/` folder. The
world](Tutorial-World-Introduction) is a small single-player quest you can try (its not very MUSH- [Tutorial world](Starting/Part1/Tutorial-World-Introduction) is a small single-player quest you can try (its not very MUSH-
like but it does show many Evennia concepts in action). Beyond that there are [many more like but it does show many Evennia concepts in action). Beyond that there are [many more tutorials](Howto-Overview)
tutorials](Tutorials) to try out. If you feel you want a more visual overview you can also look at to try out. If you feel you want a more visual overview you can also look at
[Evennia in pictures](https://evennia.blogspot.se/2016/05/evennia-in-pictures.html). [Evennia in pictures](https://evennia.blogspot.se/2016/05/evennia-in-pictures.html).
… And of course, if you need further help you can always drop into the [Evennia … And of course, if you need further help you can always drop into the [Evennia

View file

@ -26,12 +26,12 @@ defaults for our particular use-case. Below we will flesh out these components f
## Starting out ## Starting out
We will assume you start from scratch. You need Evennia installed, as per the [Getting We will assume you start from scratch. You need Evennia installed, as per the [Setup Quickstart](../Setup/Setup-Quickstart)
Started](Getting-Started) instructions. Initialize a new game directory with `evennia init instructions. Initialize a new game directory with `evennia init
<gamedirname>`. In this tutorial we assume your game dir is simply named `mygame`. You can use the <gamedirname>`. In this tutorial we assume your game dir is simply named `mygame`. You can use the
default database and keep all other settings to default for now. Familiarize yourself with the default database and keep all other settings to default for now. Familiarize yourself with the
`mygame` folder before continuing. You might want to browse the [First Steps Coding](First-Steps- `mygame` folder before continuing. You might want to browse the
Coding) tutorial, just to see roughly where things are modified. [First Steps Coding](Starting/Starting-Part1) tutorial, just to see roughly where things are modified.
## The Game Master role ## The Game Master role
@ -266,8 +266,8 @@ more automated ways. Exactly what is the best/easiest way depends on the sheet o
We will here show two examples using the *EvTable* and *EvForm* utilities.Later we will create We will here show two examples using the *EvTable* and *EvForm* utilities.Later we will create
Commands to edit and display the output from those utilities. Commands to edit and display the output from those utilities.
> Note that due to the limitations of the wiki, no color is used in any of the examples. See [the > Note that due to the limitations of the wiki, no color is used in any of the examples. See
text tag documentation](TextTags) for how to add color to the tables and forms. > [the text tag documentation](../Concept/TextTags) for how to add color to the tables and forms.
#### Making a sheet with EvTable #### Making a sheet with EvTable
@ -686,8 +686,8 @@ implemented.
## Rooms ## Rooms
Evennia comes with rooms out of the box, so no extra work needed. A GM will automatically have all Evennia comes with rooms out of the box, so no extra work needed. A GM will automatically have all
needed building commands available. A fuller go-through is found in the [Building needed building commands available. A fuller go-through is found in the [Building tutorial](Starting/Part1/Building-Quickstart).
tutorial](Building-Quickstart). Here are some useful highlights: Here are some useful highlights:
* `@dig roomname;alias = exit_there;alias, exit_back;alias` - this is the basic command for digging * `@dig roomname;alias = exit_there;alias, exit_back;alias` - this is the basic command for digging
a new room. You can specify any exit-names and just enter the name of that exit to go there. a new room. You can specify any exit-names and just enter the name of that exit to go there.

View file

@ -3,7 +3,7 @@
The documents in this section aims to teach how to use Evennia in a tutorial or The documents in this section aims to teach how to use Evennia in a tutorial or
a step-by-step way. They often give hints on about solving a problem or implementing a step-by-step way. They often give hints on about solving a problem or implementing
a particular feature or concept. They will often refer to the a particular feature or concept. They will often refer to the
[components](Components/Components-Overview) or [concepts](Concepts/Concepts-Overview) [components](../Component/Component-Overview) or [concepts](../Concept/Concept-Overview)
docs for those that want to dive deeper. docs for those that want to dive deeper.
## The Starting Tutorial ## The Starting Tutorial
@ -32,38 +32,29 @@ in mind for your own game, this will give you a good start.
1. [Introduction & Overview](Starting/Starting-Part2) 1. [Introduction & Overview](Starting/Starting-Part2)
1. [On planning a game](Starting/Part2/Game-Planning) 1. [On planning a game](Starting/Part2/Game-Planning)
1. [Multisession modes](Multi-session-modes) 1. [Multisession modes](Unimplemented.md)
1. [Layout of our tutorial game](Game-Tutorial-Planning) 1. [Layout of our tutorial game](#)
1. [Making use of contribs](Using-Contribs) 1. [Making use of contribs](Starting/Starting-Part3)
1. [Making a custom Character](Starting/Implementing-a-game-rule-system)
### Part 3: How we get there 1. [Character generation](#)
1. [Resolving skills and challenges](#)
1. [Introduction & Overview](Starting/Starting-Part3) 1. [NPCs and mobiles](Starting/Coordinates)
1. [Where to put code](Starting/First-Steps-Coding) 1. [Quests and Zones](#)
1. [Adding a first command](Starting/Part1/Adding-Commands)
1. [Parsing strings](Starting/Parsing-command-arguments,-theory-and-best-practices)
1. [Making a custom Character](Starting/Adding-Object-Typeclass-Tutorial)
1. [The rules of the game](Starting/Implementing-a-game-rule-system)
1. [Character generation](Character-Generkation)
1. [Resolving skills and challenges](Skills-and-Challenges)
1. [NPCs and mobiles](NPCs-and-Mobiles)
1. [On grids and coordinates](Starting/Coordinates)
1. [Quests and Zones](Quests-and-Zones)
1. [A Combat system](Combat-System) 1. [A Combat system](Combat-System)
### Part 4: Using what we created ### Part 4: Using what we created
1. [Introduction & Overview](Starting/Starting-Part4) 1. [Introduction & Overview](Starting/Starting-Part4)
1. [Building the tech demo](Building-the-tech-demo) 1. [Building the tech demo](#)
1. [Creating a game world](Creating-a-game-world) 1. [Creating a game world](#)
### Part 5: Showing the world ### Part 5: Showing the world
1. [Introduction & Overview](Starting/Starting-Part5) 1. [Introduction & Overview](Starting/Starting-Part5)
1. [Add a web page](Starting/Add-a-simple-new-web-page) 1. [Add a web page](Starting/Add-a-simple-new-web-page)
1. [More on adding web features](Starting/Web-Tutorial) 1. [More on adding web features](Starting/Web-Tutorial)
1. [Taking your game online](Taking-your-game-online) 1. [Taking your game online](#)
1. [Next steps](Where-to-Go-from-here) 1. [Next steps](#)
## FAQs ## FAQs

View file

@ -159,7 +159,7 @@ be the same after a server reboot.
[Account](../../../Component/Accounts) represents the player connecting to the game. It holds information like email, [Account](../../../Component/Accounts) represents the player connecting to the game. It holds information like email,
password and other out-of-character details. password and other out-of-character details.
- [channels.py](github:evennia/game_template/typeclasses/channels.py) (Python-path: `typeclasses.channels`) - - [channels.py](github:evennia/game_template/typeclasses/channels.py) (Python-path: `typeclasses.channels`) -
[Channels](Channels) are used to manage in-game communication between players. [Channels](../../../Component/Channels) are used to manage in-game communication between players.
- [objects.py](github:evennia/game_template/typeclasses/objects.py) (Python-path: `typeclasses.objects`) - - [objects.py](github:evennia/game_template/typeclasses/objects.py) (Python-path: `typeclasses.objects`) -
[Objects](../../../Component/Objects) represent all things having a location within the game world. [Objects](../../../Component/Objects) represent all things having a location within the game world.
- [characters.py](github:evennia/game_template/typeclasses/characters.py) (Python-path: `typeclasses.characters`) - - [characters.py](github:evennia/game_template/typeclasses/characters.py) (Python-path: `typeclasses.characters`) -

View file

@ -0,0 +1,6 @@
# Unimplemented
```warning:: This page has not been written yet.
```
Return to the [front page](index).

View file

@ -18,6 +18,7 @@
- [Component/Batch Command Processor](Component/Batch-Command-Processor) - [Component/Batch Command Processor](Component/Batch-Command-Processor)
- [Component/Batch Processors](Component/Batch-Processors) - [Component/Batch Processors](Component/Batch-Processors)
- [Component/Bootstrap Components and Utilities](Component/Bootstrap-Components-and-Utilities) - [Component/Bootstrap Components and Utilities](Component/Bootstrap-Components-and-Utilities)
- [Component/Channels](Component/Channels)
- [Component/Coding Utils](Component/Coding-Utils) - [Component/Coding Utils](Component/Coding-Utils)
- [Component/Command Sets](Component/Command-Sets) - [Component/Command Sets](Component/Command-Sets)
- [Component/Commands](Component/Commands) - [Component/Commands](Component/Commands)
@ -46,6 +47,7 @@
- [Component/TickerHandler](Component/TickerHandler) - [Component/TickerHandler](Component/TickerHandler)
- [Component/Typeclasses](Component/Typeclasses) - [Component/Typeclasses](Component/Typeclasses)
- [Component/Webclient](Component/Webclient) - [Component/Webclient](Component/Webclient)
- [Component/Webserver](Component/Webserver)
- [Concept/Async Process](Concept/Async-Process) - [Concept/Async Process](Concept/Async-Process)
- [Concept/Banning](Concept/Banning) - [Concept/Banning](Concept/Banning)
- [Concept/Bootstrap & Evennia](Concept/Bootstrap-&-Evennia) - [Concept/Bootstrap & Evennia](Concept/Bootstrap-&-Evennia)
@ -56,6 +58,7 @@
- [Concept/Guest Logins](Concept/Guest-Logins) - [Concept/Guest Logins](Concept/Guest-Logins)
- [Concept/Internationalization](Concept/Internationalization) - [Concept/Internationalization](Concept/Internationalization)
- [Concept/Messagepath](Concept/Messagepath) - [Concept/Messagepath](Concept/Messagepath)
- [Concept/Multisession modes](Concept/Multisession-modes)
- [Concept/New Models](Concept/New-Models) - [Concept/New Models](Concept/New-Models)
- [Concept/OOB](Concept/OOB) - [Concept/OOB](Concept/OOB)
- [Concept/Soft Code](Concept/Soft-Code) - [Concept/Soft Code](Concept/Soft-Code)