mirror of
https://github.com/evennia/evennia.git
synced 2026-03-17 13:26:30 +01:00
146 lines
8.3 KiB
Markdown
146 lines
8.3 KiB
Markdown
|
|
# 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.md).
|
|||
|
|
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.
|