mirror of
https://github.com/evennia/evennia.git
synced 2026-03-16 21:06:30 +01:00
Recovered my old where-do-I-begin article from Imaginary Realities and adopted it into tutorial
This commit is contained in:
parent
eca9ed4d78
commit
7015b4992d
8 changed files with 182 additions and 29 deletions
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
**Part 1: What we have**
|
||||
A tour of Evennia and how to use the tools, including an introduction to Python.
|
||||
Part 2: `What we want <./Starting-Part2.html>`_
|
||||
Part 2: `What we want <../Part2/Starting-Part2.html>`_
|
||||
Planning our tutorial game and what to think about when planning your own in the future.
|
||||
Part 3: `How we get there <./Starting-Part3.html>`_
|
||||
Part 3: `How we get there <../Part3/Starting-Part3.html>`_
|
||||
Getting down to the meat of extending Evennia to make our game
|
||||
Part 4: `Using what we created <./Starting-Part4.html>`_
|
||||
Part 4: `Using what we created <../Part4/Starting-Part4.html>`_
|
||||
Building a tech-demo and world content to go with our code
|
||||
Part 5: `Showing the world <./Starting-Part5.html>`_
|
||||
Part 5: `Showing the world <../Part5/Starting-Part5.html>`_
|
||||
Taking our new game online and let players try it out
|
||||
```
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
[prev lesson](./Starting-Part2) | [next lesson](./Planning-The-Tutorial-Game)
|
||||
[prev lesson](./Planning-Where-Do-I-Begin) | [next lesson](./Planning-The-Tutorial-Game)
|
||||
|
||||
# On Planning a Game
|
||||
|
||||
This lesson will be less hands-on and more introspective. We'll go through some general things to think
|
||||
about when planning your game. In the following lessons we'll apply this to plan out the tutorial-game we will
|
||||
be making.
|
||||
Last lesson we asked ourselves some questions about our motivation. In this one we'll present
|
||||
some more technical questions to consider. In the next lesson we'll answer them for the sake of
|
||||
our tutorial game.
|
||||
|
||||
Note that the suggestions on this page are just that - suggestions. Also, they are primarily aimed at a lone
|
||||
hobby designer or a small team developing a game in their free time.
|
||||
|
|
@ -209,4 +209,4 @@ have made their dream game a reality!
|
|||
|
||||
In the next lesson we'll make use of these general points and try to plan out our tutorial game.
|
||||
|
||||
[prev lesson](./Starting-Part2) | [next lesson](./Planning-The-Tutorial-Game)
|
||||
[prev lesson](./Planning-Where-Do-I-Begin) | [next lesson](./Planning-The-Tutorial-Game)
|
||||
|
|
|
|||
149
docs/source/Howto/Starting/Part2/Planning-Where-Do-I-Begin.md
Normal file
149
docs/source/Howto/Starting/Part2/Planning-Where-Do-I-Begin.md
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
[prev lesson](./Starting-Part2) | [next lesson](./Game-Planning)
|
||||
|
||||
# Where do I begin?
|
||||
|
||||
The good news is that following this Starting tutorial is a great way to begin making an Evennia game.
|
||||
|
||||
The bad news is that everyone's different and when it comes to starting your own game there is no
|
||||
one-size-fits-all answer. Instead we will ask a series of questions
|
||||
to help you figure this out for yourself. It will also help you evaluate your own skills and maybe
|
||||
put some more realistic limits on how fast you can achieve your goals.
|
||||
|
||||
> The questions in this lesson do not really apply to our tutorial game since we know we are doing it
|
||||
> to learn Evennia. If you just want to follow along with the technical bits you can skip this lesson and
|
||||
> come back later when you feel ready to take on making your own game.
|
||||
|
||||
## What is your motivation for doing this?
|
||||
|
||||
So you want to make a game. First you need to make a few things clear to yourself.
|
||||
|
||||
Making a multiplayer online game is a _big_ undertaking. You will (if you are like most of us) be
|
||||
doing it as a hobby, without getting paid. And you’ll be doing it for a long time.
|
||||
|
||||
So the very first thing you should ask yourself (and your team, if you have any) is
|
||||
_why am I doing this_? Do some soul-searching here. Here are some possible answers:
|
||||
|
||||
- I want to earn recognition and fame from my online community and/or among my friends.
|
||||
- I want to build the game so I can play and enjoy it myself.
|
||||
- I want to build the same game I already play but without the bad people.
|
||||
- I want to create a game so that I can control it and be the head honcho.
|
||||
- A friend or online acquaintance talked me into working on it.
|
||||
- I work on this because I’m paid to (wow!)
|
||||
- I only build this for my own benefit or to see if I can pull it off.
|
||||
- I want to create something to give back to the community I love.
|
||||
- I want to use this project as a stepping-stone towards other projects (like a career in game design
|
||||
or programming).
|
||||
- I am interested in coding or server and network architectures, making a MUD just seems to be a good
|
||||
way to teach myself.
|
||||
- I want to build a commercial game and earn money.
|
||||
- I want to fulfill a life-long dream of game making.
|
||||
|
||||
There are many other possibilities. How “solid” your answer is for a long-term development project
|
||||
is up to you. The important point is that you ask yourself the question.
|
||||
|
||||
**Help someone else instead** - Maybe you should _not_ start a new project - maybe you're better off
|
||||
helping someone else or improve on something that already exists. Or maybe you find you are more of a
|
||||
game engine developer than a game designer.
|
||||
|
||||
**Driven by emotion** - Some answers may suggest that you are driven by emotions of revenge or disconcert. Be careful with that and
|
||||
check so that's not your _only_ driving force. Those emotions may have abated later when the project
|
||||
most needs your enthusiasm and motivation.
|
||||
|
||||
**Going commercial** - If your aim is to earn money, your design goals will likely be very different from
|
||||
those of a person who only creates as a hobby or for their own benefit. You may also have a much stricter
|
||||
timeline for release.
|
||||
|
||||
Whichever your motivation, you should at least have it clear in your own mind. It’s worth to make
|
||||
sure your eventual team is on the same page too.
|
||||
|
||||
## What are your skills?
|
||||
|
||||
Once you have your motivations straight you need to take a stock of your own skills and the skills
|
||||
available in your team, if you have any.
|
||||
|
||||
Your game will have two principal components and you will need skills to cater for both:
|
||||
|
||||
- The game engine / code base - Evennia in this case.
|
||||
- The assets created for using the game engine (“the game world”)
|
||||
|
||||
### The game engine
|
||||
|
||||
The game engine is maintained and modified by programmers (coders). It represents the infrastructure
|
||||
that runs the game - the network code, the protocol support, the handling of commands, scripting and
|
||||
data storage.
|
||||
|
||||
If you are just evaluating Evennia, it's worth to do the following:
|
||||
|
||||
- Hang out in the community/forums/chat. Expect to need to ask a lot of “stupid” questions as you start
|
||||
developing (hint: no question is stupid). Is this a community in which you would feel comfortable doing so?
|
||||
- Keep tabs on the manual (you're already here).
|
||||
- How's your Python skills? What are the skills in your team? Do you or your team already know it or are
|
||||
you willing to learn? Learning the language as you go is not too unusual with Evennia devs, but expect it
|
||||
to add development time. You will also be worse at predicting how 'hard' something is to do.
|
||||
- If you don’t know Python, you should have gotten a few tastes from the first part of this tutorial. But
|
||||
expect to have to refer to external online tutorials - there are many details of Python that will not be
|
||||
covered.
|
||||
|
||||
### Asset creation
|
||||
|
||||
Compared to the level of work needed to produce professional graphics for an MMORPG, detailed text
|
||||
assets for a mud are cheap to create. This is one of the many reasons muds are so well suited for a
|
||||
small team.
|
||||
|
||||
This is not to say that making “professional” text content is easy though. Knowing how to write
|
||||
imaginative and grammatically correct prose is only the minimal starting requirement. A good asset-
|
||||
creator (traditionally called a “builder”) must also be able to utilize the tools of the game engine
|
||||
to its fullest in order to script events, make quests, triggers and interactive, interesting
|
||||
environments.
|
||||
|
||||
Assuming you are not coding all alone, your team’s in-house builders will be the first ones to actually
|
||||
“use” your game framework and build tools. They will stumble on all the bugs. This means that you
|
||||
need people who are just not “artsy” or “good with words”. Assuming coders and builders are not the
|
||||
same people (common for early testing), builders need to be able to collaborate well and give clear
|
||||
and concise feedback.
|
||||
|
||||
If you know your builders are not tech-savvy, you may need to spend more time making easier
|
||||
build-tools and commands for them.
|
||||
|
||||
## So, where do I begin, then?
|
||||
|
||||
Right, after all this soul-searching and skill-inventory-checking, let’s go back to the original
|
||||
question. And maybe you’ll find that you have a better feeling for the answer yourself already:
|
||||
|
||||
- Keep following this tutorial and spend the time
|
||||
to really understand what is happening in the examples. Not only will this give you a better idea
|
||||
of how parts hang together, it may also give you ideas for what is possible. Maybe something
|
||||
is easier than you expected!
|
||||
- Introduce yourself in the IRC/Discord chat and don't be shy to ask questions as you go through
|
||||
the tutorial. Don't get hung up on trying to resolve something that a seasoned Evennia dev may
|
||||
clear up for you in five minutes. Also, not all errors are your faults - it's possible the
|
||||
tutorial is unclear or has bugs, asking will quickly bring those problems to light, if so.
|
||||
- If Python is new to you, you should complement the tutorial with third-party Python references
|
||||
so you can read, understand and replicate example code without being completely in the dark.
|
||||
|
||||
Once you are out of the starting tutorial, you'll be off to do your own thing.
|
||||
|
||||
- The starting tutorial cannot cover everything. Skim through the [Evennia docs](../../../index).
|
||||
Even if you don't read everything, it gives you a feeling for what's available should you need
|
||||
to look for something later. Make sure to use the search function.
|
||||
- You can now start by expanding on the tutorial-game we will have created. In the last part there
|
||||
there will be a list of possible future projects you could take on. Working on your own, without help
|
||||
from a tutorial is the next step.
|
||||
|
||||
As for your builders, they can start getting familiar with Evennia's default build commands ... but
|
||||
keep in mind that your game is not yet built! Don't set your builders off on creating large zone projects.
|
||||
If they build anything at all, it should be small test areas to agree on a homogenous form, mood
|
||||
and literary style.
|
||||
|
||||
## Conclusions
|
||||
|
||||
Remember that what kills a hobby game project will usually be your own lack of
|
||||
motivation. So do whatever you can to keep that motivation burning strong! Even if it means
|
||||
deviating from what you read in a tutorial like this one. Just get that game out there, whichever way
|
||||
works best for you.
|
||||
|
||||
In the next lesson we'll go through some of the technical questions you need to consider. This should
|
||||
hopefully help you figure out more about the game you want to make. In the lesson following that we'll
|
||||
then try to answer those questions for the sake of creating our little tutorial game.
|
||||
|
||||
[prev lesson](./Starting-Part2) | [next lesson](./Game-Planning)
|
||||
|
|
@ -2,25 +2,28 @@
|
|||
|
||||
```sidebar:: Tutorial Parts
|
||||
|
||||
Part 1: `What we have <./Starting-Part1.html>`_
|
||||
Part 1: `What we have <../Part1/Starting-Part1.html>`_
|
||||
A tour of Evennia and how to use the tools, including an introduction to Python.
|
||||
**Part 2: What we want**
|
||||
Planning our tutorial game and what to think about when planning your own in the future.
|
||||
Part 3: `How we get there <./Starting-Part3.html>`_
|
||||
Part 3: `How we get there <../Part3/Starting-Part3.html>`_
|
||||
Getting down to the meat of extending Evennia to make our game
|
||||
Part 4: `Using what we created <./Starting-Part4.html>`_
|
||||
Part 4: `Using what we created <../Part4/Starting-Part4.html>`_
|
||||
Building a tech-demo and world content to go with our code
|
||||
Part 5: `Showing the world <./Starting-Part5.html>`_
|
||||
Part 5: `Showing the world <../Part5/Starting-Part5.html>`_
|
||||
Taking our new game online and let players try it out
|
||||
```
|
||||
|
||||
## Lessons for Part 2
|
||||
|
||||
In Part two of the Starting tutorial we'll step back and plan out the kind of tutorial
|
||||
game we want to make. This is a more 'theoretical' part where we won't do any hands-on
|
||||
programming.
|
||||
|
||||
1. Introduction & Overview (you are here)
|
||||
1. [Where do I begin](./Planning-Where-Do-I-Begin)
|
||||
1. [On planning a game](./Game-Planning)
|
||||
1. [Planning to use some useful Contribs](./Planning-Some-Useful-Contribs)
|
||||
|
||||
In Part two of the Starting tutorial we'll step back and plan out the kind of tutorial
|
||||
game we want to make. In the process we'll go through the common questions of "where to start"
|
||||
and "what to think about" when creating a multiplayer online text game. We'll also look at
|
||||
some useful Evennia settings to tweak and designs to consider.
|
||||
In the process we'll go through the common questions of "where to start"
|
||||
and "what to think about" when creating a multiplayer online text game.
|
||||
|
|
@ -2,15 +2,15 @@
|
|||
|
||||
```sidebar:: Tutorial Parts
|
||||
|
||||
Part 1: `What we have <./Starting-Part1.html>`_
|
||||
Part 1: `What we have <../Part1/Starting-Part1.html>`_
|
||||
A tour of Evennia and how to use the tools, including an introduction to Python.
|
||||
Part 2: `What we want <./Starting-Part2.html>`_
|
||||
Part 2: `What we want <../Part2/Starting-Part2.html>`_
|
||||
Planning our tutorial game and what to think about when planning your own in the future.
|
||||
**Part 3: How we get there**
|
||||
Getting down to the meat of extending Evennia to make our game
|
||||
Part 4: `Using what we created <./Starting-Part4.html>`_
|
||||
Part 4: `Using what we created <../Part4/Starting-Part4.html>`_
|
||||
Building a tech-demo and world content to go with our code
|
||||
Part 5: `Showing the world <./Starting-Part5.html>`_
|
||||
Part 5: `Showing the world <../Part5/Starting-Part5.html>`_
|
||||
Taking our new game online and let players try it out
|
||||
```
|
||||
In part three of the Evennia Starting tutorial we will go through the creation of several key parts
|
||||
|
|
|
|||
|
|
@ -2,15 +2,15 @@
|
|||
|
||||
```sidebar:: Tutorial Parts
|
||||
|
||||
Part 1: `What we have <./Starting-Part1.html>`_
|
||||
Part 1: `What we have <../Part1/Starting-Part1.html>`_
|
||||
A tour of Evennia and how to use the tools, including an introduction to Python.
|
||||
Part 2: `What we want <./Starting-Part2.html>`_
|
||||
Part 2: `What we want <../Part2/Starting-Part2.html>`_
|
||||
Planning our tutorial game and what to think about when planning your own in the future.
|
||||
Part 3: `How we get there <./Starting-Part3.html>`_
|
||||
Part 3: `How we get there <../Part3/Starting-Part3.html>`_
|
||||
Getting down to the meat of extending Evennia to make our game to make a tech-demo
|
||||
**Part 4: Using what we created**
|
||||
Using the tech-demo and world content to go with our code
|
||||
Part 5: `Showing the world <./Starting-Part5.html>`_
|
||||
Part 5: `Showing the world <../Part5/Starting-Part5.html>`_
|
||||
Taking our new game online and let players try it out
|
||||
```
|
||||
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
```sidebar:: Tutorial Parts
|
||||
|
||||
Part 1: `What we have <./Starting-Part1.html>`_
|
||||
Part 1: `What we have <../Part1/Starting-Part1.html>`_
|
||||
A tour of Evennia and how to use the tools, including an introduction to Python.
|
||||
Part 2: `What we want <./Starting-Part2.html>`_
|
||||
Part 2: `What we want <../Part2/Starting-Part2.html>`_
|
||||
Planning our tutorial game and what to think about when planning your own in the future.
|
||||
Part 3: `How we get there <./Starting-Part3.html>`_
|
||||
Part 3: `How we get there <../Part3/Starting-Part3.html>`_
|
||||
Getting down to the meat of extending Evennia to make our game
|
||||
Part 4: `Using what we created <./Starting-Part4.html>`_
|
||||
Part 4: `Using what we created <../Part4/Starting-Part4.html>`_
|
||||
Building a tech-demo and world content to go with our code
|
||||
**Part 5: Showing the world**
|
||||
Taking our new game online and let players try it out
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue