mirror of
https://github.com/evennia/evennia.git
synced 2026-03-18 22:06:30 +01:00
297 lines
No EOL
18 KiB
HTML
297 lines
No EOL
18 KiB
HTML
|
||
<!DOCTYPE html>
|
||
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||
|
||
<title>1. Where do I begin? — Evennia 2.x documentation</title>
|
||
<link rel="stylesheet" href="../../../_static/nature.css" type="text/css" />
|
||
<link rel="stylesheet" href="../../../_static/pygments.css" type="text/css" />
|
||
<script id="documentation_options" data-url_root="../../../" src="../../../_static/documentation_options.js"></script>
|
||
<script src="../../../_static/jquery.js"></script>
|
||
<script src="../../../_static/underscore.js"></script>
|
||
<script src="../../../_static/doctools.js"></script>
|
||
<script src="../../../_static/language_data.js"></script>
|
||
<link rel="shortcut icon" href="../../../_static/favicon.ico"/>
|
||
<link rel="index" title="Index" href="../../../genindex.html" />
|
||
<link rel="search" title="Search" href="../../../search.html" />
|
||
<link rel="next" title="2. On Planning a Game" href="Beginner-Tutorial-Game-Planning.html" />
|
||
<link rel="prev" title="Part 2: What we want" href="Beginner-Tutorial-Part2-Overview.html" />
|
||
</head><body>
|
||
|
||
|
||
|
||
|
||
<div class="related" role="navigation" aria-label="related navigation">
|
||
<h3>Navigation</h3>
|
||
<ul>
|
||
<li class="right" style="margin-right: 10px">
|
||
<a href="../../../genindex.html" title="General Index"
|
||
accesskey="I">index</a></li>
|
||
<li class="right" >
|
||
<a href="../../../py-modindex.html" title="Python Module Index"
|
||
>modules</a> |</li>
|
||
<li class="right" >
|
||
<a href="Beginner-Tutorial-Game-Planning.html" title="2. On Planning a Game"
|
||
accesskey="N">next</a> |</li>
|
||
<li class="right" >
|
||
<a href="Beginner-Tutorial-Part2-Overview.html" title="Part 2: What we want"
|
||
accesskey="P">previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="../../../index.html">Evennia 2.x</a> »</li>
|
||
<li class="nav-item nav-item-1"><a href="../../Howtos-Overview.html" >Tutorials and Howto’s</a> »</li>
|
||
<li class="nav-item nav-item-2"><a href="../Beginner-Tutorial-Overview.html" >Beginner Tutorial</a> »</li>
|
||
<li class="nav-item nav-item-3"><a href="Beginner-Tutorial-Part2-Overview.html" accesskey="U">Part 2: What we want</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">1. </span>Where do I begin?</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="document">
|
||
|
||
<div class="documentwrapper">
|
||
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
||
<div class="sphinxsidebarwrapper">
|
||
<p class="logo"><a href="../../../index.html">
|
||
<img class="logo" src="../../../_static/evennia_logo.png" alt="Logo"/>
|
||
</a></p>
|
||
<div id="searchbox" style="display: none" role="search">
|
||
<h3 id="searchlabel">Quick search</h3>
|
||
<div class="searchformwrapper">
|
||
<form class="search" action="../../../search.html" method="get">
|
||
<input type="text" name="q" aria-labelledby="searchlabel" />
|
||
<input type="submit" value="Go" />
|
||
</form>
|
||
</div>
|
||
</div>
|
||
<script>$('#searchbox').show(0);</script>
|
||
<h3><a href="../../../index.html">Table of Contents</a></h3>
|
||
<ul>
|
||
<li><a class="reference internal" href="#">1. Where do I begin?</a><ul>
|
||
<li><a class="reference internal" href="#what-is-your-motivation-for-doing-this">1.1. What is your motivation for doing this?</a></li>
|
||
<li><a class="reference internal" href="#what-are-your-skills">1.2. What are your skills?</a><ul>
|
||
<li><a class="reference internal" href="#the-game-engine">1.2.1. The game engine</a></li>
|
||
<li><a class="reference internal" href="#asset-creation">1.2.2. Asset creation</a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#so-where-do-i-begin-then">1.3. So, where do I begin, then?</a></li>
|
||
<li><a class="reference internal" href="#conclusions">1.4. Conclusions</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
|
||
<h4>Previous topic</h4>
|
||
<p class="topless"><a href="Beginner-Tutorial-Part2-Overview.html"
|
||
title="previous chapter">Part 2: What we want</a></p>
|
||
<h4>Next topic</h4>
|
||
<p class="topless"><a href="Beginner-Tutorial-Game-Planning.html"
|
||
title="next chapter"><span class="section-number">2. </span>On Planning a Game</a></p>
|
||
<div role="note" aria-label="source link">
|
||
<!--h3>This Page</h3-->
|
||
<ul class="this-page-menu">
|
||
<li><a href="../../../_sources/Howtos/Beginner-Tutorial/Part2/Beginner-Tutorial-Planning-Where-Do-I-Begin.md.txt"
|
||
rel="nofollow">Show Page Source</a></li>
|
||
</ul>
|
||
</div><h3>Links</h3>
|
||
<ul>
|
||
<li><a href="https://www.evennia.com/docs/latest/index.html">Documentation Top</a> </li>
|
||
<li><a href="https://www.evennia.com">Evennia Home</a> </li>
|
||
<li><a href="https://github.com/evennia/evennia">Github</a> </li>
|
||
<li><a href="http://games.evennia.com">Game Index</a> </li>
|
||
<li>
|
||
<a href="https://discord.gg/AJJpcRUhtF">Discord</a> -
|
||
<a href="https://github.com/evennia/evennia/discussions">Discussions</a> -
|
||
<a href="https://evennia.blogspot.com/">Blog</a>
|
||
</li>
|
||
</ul>
|
||
<h3>Doc Versions</h3>
|
||
<ul>
|
||
|
||
<li><a href="Beginner-Tutorial-Planning-Where-Do-I-Begin.html">2.x (main branch)</a></li>
|
||
<ul>
|
||
<li><a href="../1.3.0/index.html">1.3.0 (v1.3.0 branch)</a></li>
|
||
|
||
<li><a href="../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||
|
||
|
||
</ul>
|
||
|
||
</div>
|
||
</div>
|
||
<div class="bodywrapper">
|
||
<div class="body" role="main">
|
||
|
||
<section class="tex2jax_ignore mathjax_ignore" id="where-do-i-begin">
|
||
<h1><span class="section-number">1. </span>Where do I begin?<a class="headerlink" href="#where-do-i-begin" title="Permalink to this headline">¶</a></h1>
|
||
<p>The good news is that following this Starting tutorial is a great way to begin making an Evennia game.</p>
|
||
<p>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.</p>
|
||
<blockquote>
|
||
<div><p>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.</p>
|
||
</div></blockquote>
|
||
<section id="what-is-your-motivation-for-doing-this">
|
||
<h2><span class="section-number">1.1. </span>What is your motivation for doing this?<a class="headerlink" href="#what-is-your-motivation-for-doing-this" title="Permalink to this headline">¶</a></h2>
|
||
<p>So you want to make a game. First you need to make a few things clear to yourself.</p>
|
||
<p>Making a multiplayer online game is a <em>big</em> 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.</p>
|
||
<p>So the very first thing you should ask yourself (and your team, if you have any) is
|
||
<em>why am I doing this</em>? Do some soul-searching here. Here are some possible answers:</p>
|
||
<ul class="simple">
|
||
<li><p>I want to earn recognition and fame from my online community and/or among my friends.</p></li>
|
||
<li><p>I want to build the game so I can play and enjoy it myself.</p></li>
|
||
<li><p>I want to build the same game I already play but without the bad people.</p></li>
|
||
<li><p>I want to create a game so that I can control it and be the head honcho.</p></li>
|
||
<li><p>A friend or online acquaintance talked me into working on it.</p></li>
|
||
<li><p>I work on this because I’m paid to (wow!)</p></li>
|
||
<li><p>I only build this for my own benefit or to see if I can pull it off.</p></li>
|
||
<li><p>I want to create something to give back to the community I love.</p></li>
|
||
<li><p>I want to use this project as a stepping-stone towards other projects (like a career in game design
|
||
or programming).</p></li>
|
||
<li><p>I am interested in coding or server and network architectures, making a MUD just seems to be a good
|
||
way to teach myself.</p></li>
|
||
<li><p>I want to build a commercial game and earn money.</p></li>
|
||
<li><p>I want to fulfill a life-long dream of game making.</p></li>
|
||
</ul>
|
||
<p>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.</p>
|
||
<p><strong>Help someone else instead</strong> - Maybe you should <em>not</em> 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.</p>
|
||
<p><strong>Driven by emotion</strong> - 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 <em>only</em> driving force. Those emotions may have abated later when the project
|
||
most needs your enthusiasm and motivation.</p>
|
||
<p><strong>Going commercial</strong> - 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.</p>
|
||
<p>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.</p>
|
||
</section>
|
||
<section id="what-are-your-skills">
|
||
<h2><span class="section-number">1.2. </span>What are your skills?<a class="headerlink" href="#what-are-your-skills" title="Permalink to this headline">¶</a></h2>
|
||
<p>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.</p>
|
||
<p>Your game will have two principal components and you will need skills to cater for both:</p>
|
||
<ul class="simple">
|
||
<li><p>The game engine / code base - Evennia in this case.</p></li>
|
||
<li><p>The assets created for using the game engine (“the game world”)</p></li>
|
||
</ul>
|
||
<section id="the-game-engine">
|
||
<h3><span class="section-number">1.2.1. </span>The game engine<a class="headerlink" href="#the-game-engine" title="Permalink to this headline">¶</a></h3>
|
||
<p>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.</p>
|
||
<p>If you are just evaluating Evennia, it’s worth to do the following:</p>
|
||
<ul class="simple">
|
||
<li><p>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?</p></li>
|
||
<li><p>Keep tabs on the manual (you’re already here).</p></li>
|
||
<li><p>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.</p></li>
|
||
<li><p>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.</p></li>
|
||
</ul>
|
||
</section>
|
||
<section id="asset-creation">
|
||
<h3><span class="section-number">1.2.2. </span>Asset creation<a class="headerlink" href="#asset-creation" title="Permalink to this headline">¶</a></h3>
|
||
<p>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.</p>
|
||
<p>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.</p>
|
||
<p>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.</p>
|
||
<p>If you know your builders are not tech-savvy, you may need to spend more time making easier
|
||
build-tools and commands for them.</p>
|
||
</section>
|
||
</section>
|
||
<section id="so-where-do-i-begin-then">
|
||
<h2><span class="section-number">1.3. </span>So, where do I begin, then?<a class="headerlink" href="#so-where-do-i-begin-then" title="Permalink to this headline">¶</a></h2>
|
||
<p>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:</p>
|
||
<ul class="simple">
|
||
<li><p>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!</p></li>
|
||
<li><p>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.</p></li>
|
||
<li><p>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.</p></li>
|
||
</ul>
|
||
<p>Once you are out of the starting tutorial, you’ll be off to do your own thing.</p>
|
||
<ul class="simple">
|
||
<li><p>The starting tutorial cannot cover everything. Skim through the <a class="reference internal" href="../../../index.html"><span class="doc std std-doc">Evennia docs</span></a>.
|
||
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.</p></li>
|
||
<li><p>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.</p></li>
|
||
</ul>
|
||
<p>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.</p>
|
||
</section>
|
||
<section id="conclusions">
|
||
<h2><span class="section-number">1.4. </span>Conclusions<a class="headerlink" href="#conclusions" title="Permalink to this headline">¶</a></h2>
|
||
<p>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.</p>
|
||
<p>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.</p>
|
||
</section>
|
||
</section>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="related" role="navigation" aria-label="related navigation">
|
||
<h3>Navigation</h3>
|
||
<ul>
|
||
<li class="right" style="margin-right: 10px">
|
||
<a href="../../../genindex.html" title="General Index"
|
||
>index</a></li>
|
||
<li class="right" >
|
||
<a href="../../../py-modindex.html" title="Python Module Index"
|
||
>modules</a> |</li>
|
||
<li class="right" >
|
||
<a href="Beginner-Tutorial-Game-Planning.html" title="2. On Planning a Game"
|
||
>next</a> |</li>
|
||
<li class="right" >
|
||
<a href="Beginner-Tutorial-Part2-Overview.html" title="Part 2: What we want"
|
||
>previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="../../../index.html">Evennia 2.x</a> »</li>
|
||
<li class="nav-item nav-item-1"><a href="../../Howtos-Overview.html" >Tutorials and Howto’s</a> »</li>
|
||
<li class="nav-item nav-item-2"><a href="../Beginner-Tutorial-Overview.html" >Beginner Tutorial</a> »</li>
|
||
<li class="nav-item nav-item-3"><a href="Beginner-Tutorial-Part2-Overview.html" >Part 2: What we want</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">1. </span>Where do I begin?</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="footer" role="contentinfo">
|
||
© Copyright 2023, The Evennia developer community.
|
||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||
</div>
|
||
</body>
|
||
</html> |