This is meant to be design doc and bible for the untitled RL project, as such it may be subject to change/evolution
Interrupted by Dmitry, will finish later
Where’s the Fun?
Apparently the first and foremost thing to consider when designing a game, is to locate where the fun is and how to maximize on it. After interviewing some mates, and reflecting on my own experiences with the sort of fun that I’m trying to cultivate I’ve come up with a few vectors of fun to focus on.
|Dungeoneering||Having to navigate environmental hazards, monsters, different layouts, and kill bosses makes exploring dungeons a fun thing to do. So we’ll aim to make exploring dungeons as much as possible.|
|Tactics||Having to use your brain to survive encounters with powerful monsters, or navigate between several monsters and environmental hazards. Exploiting things like elemental or thematic strengths/weaknesses, or whatever bullshit you happen to have access to at that particular instance.|
|Silliness||Anything can happen, and often does. The random nature of life in the Zone and general wackiness of shit that could happen, which almost makes sense but not quite can often be a source of great entertainment.|
|Feeling of Progression||Numbers getting bigger, and the feeling of progress when you get a strong new piece of equipment, or manage to get a skill level to certain height that you’ve been aiming for.|
Abstract - Game Experience
The game begins with character generation. You’ll be asked to customize(? perhaps this will be difficult to implement), and name your character, as well as decide on a callsign, race, class, and religion. You’ll also delegate some initial skill points out, and select a couple feats.
Next you’ll be asked some personal/psychological questions about your tastes, fears, childhood development, etc. This will be used to generate some of your enemies/allies throughout the game, and it will affect the layout of the Great Tower in which you face yourself. Ascending this tower will probably be endgame content. I’m thinking once you reach the 100th floor or something you’ll have a chance to enter the Chamber of Reflection where you’ll be tested by Abraxas. If you succeed that’ll count as an “ascension” and you’ll have beaten the game. But that doesn’t mean the game is over, because it’ll be a sandbox. Afterwards the tower will become endless.
Optionally, there will be starting “bundles” that consist of race/class/religion/skills/stats and starting equipment and pets. Some might act as a quick start mode, or a challenge mode. Others may just be thematic or amusing/degenerate.
Gameplay, interacting with the world
The game will take place from a top down perspective consistent with roguelike conventions. The user interface will consist of the typical hp/mp/xp bars as well as the currently loaded map. Additional elements may be optionally enabled/added later. More complicated interactions will be driven by menus and bound keys. These will also by typical of roguelikes, such as up/down/left/right/numpad for movement, ‘g’et, ‘a’ctivate, ‘e’at, ‘D’ig, ‘i’nteract etc.
All monsters/npcs will be similar to the player character insofar as the sort of objects they are. Consequently they’ll all have the same type of stats, inventories, status effects, etc.
There will be a world map broken into multiple regions representing different countries or landmasses.
On the world map there will be 5 types of locations:
- Towns/cities, which contain questgivers, shops, and plot. These are fixed and don’t appear/disappear (except unless we require it in the story, but that’s unlikely)
- Story dungeons, which exist to provide static artifacts or aid with game progression. The state of these remains the same unless you acquire an artifact that allows you to reset them at the cost of making them more difficult.
- Conditional towns/dungeons, which appear when certain pre-requisites or environmental conditions are met (weather, moon phase, date, achievements, etc.)
- Randomly generated dungeons, which will appear and disappear after a certain amount of time
- Player owned locations, such as farms, player base, etc.
In addition to those locations, there will also be random encounters/events as you travel. Random events will also occur while the player character is actually inside of a location and not on the world map, but those will be drawn from a different pool.
The lore explanation for non-story dungeons appearing and disappearing is something called the Flux, which is also responsible for anything that doesn’t seem normal.
Additional gameplay elements in no particular order (to be elaborated on later):
- Pets/companions, which can be hired/tamed/fused/married/dissassembled/sold/etc. I want it to function much like Elona’s pet system, but more robust and more well thought out. Customizable speech (players can submit their templates to be included as part of the base game) and AI (conditionals, similar to the gambit system from FFXII) pet/pvp arena (possibly online, benefits from participating)
- Reincarnation or children as a NG+
- Punishment for dying (stat loss, fame loss, curses/wounds that don’t heal)
- Gathering resources and crafting crafting crafting
- Maybe a gacha that you can put some resources towards, from which you can earn randarts or cute pets
At first I was pretty deadset on having unicode style graphics, because I really liked the idea of simply representing everything with kanji and having them be colour coded based on elements. But now it’s very likely that we’ll be leveraging an extant engine, so we may end up using tiles/sprites.
I’m open to input on this
Maps / Locations
Frankly, I’m not sure how we’re going to accomplish mapgen, there are a lot of well-documented algorithms used for this, so the implementation won’t be difficult. It’s just a matter of deciding what we like best.
Dungeons will all have a danger level, a type, and a modifier/mood. The danger level will determine the tier/relative strength of the enemies, the type will determine the tileset and shape/layout, and the pool of monsters and loot that appears in the dungeon as well as the frequency/type of traps. The modifier/mood will have random effects on the dungeons based on which one you get. Some will be things like “you can only enter alone” or “you can’t use spells of a certain type” or “you can’t heal.” I guess think of PoE map modifiers. The harder the dungeon, the more modifiers, but more/better loot.
On that note, the basic things that you’ll find in every dungeon/map:
- Monsters (some of which will be passive or non-aggro)
- Loot (including chests or containers, some of which may be locked, or require you to kill certain things to open them)
- Resources to gather
- A boss
Something I’ve been considering is racial (or trait based) advantages/disadvantages based on terrain. So like a merfolk might be better adapted to an aqueous environment. Or Elves might thrive in the forest. Stuff like that. I’m also very interested in weather affecting outdoor maps.
The Player Character
Re-hasing what was said above about the player character, the PC will basically consist of the following things:
|Name||Self explanatory||Might use this for global broadcasts about people accomplishing things or dying|
|Alias/Callsign||Will be used as a sobriquet when referring to a given player||Might use this for global broadcasts about people accomplishing things or dying|
|Backstory||This will just be the character’s description backstory, can be either randomly generated, part of a bundle, or written by the player||Purely cosmetic.|
|Race||The character’s race, this will mostly affect things like vision/line-of-sight low-light vision, starting bonuses to skills, terrain/weather advantages, etc.||This will probably be unchangable, but maybe at some point you can fuse or alter yourself|
|Class||Same as race, but I’ve been thinking about some of the mechanics||I’ve been considering have this be like certain FF/DQ games where you can change class throughout the course of the game and once you master a skill you can use it while any class. It’s either that, or just having Class set in stone and unchangable, but you only get like 1 special trait and a few special actions or feats from it and everything else is universal. If we do go the “you can change classes” route, what about multiclassing or prestige classes? Good lord.|
|Religion||This will function a lot like religion in Elona, where based on your piety or relationship with your god you earn rewards, and gain stat benefits or a trait||The main difference from Elona, is that I was thinking you could start as the practicioner of a religion of your choice at the start of the game to save you some time. Maybe if you play as a priest you start with extra piety, lol.|
|Skills||Skills will basically affect everything that stats do not. You can break down “things that affect actions and their calculations” into four categories. Simple stats, complex stats, equipments, and skills.||Not all skills will be available by default, your starting skills will be based on your race and class, and then you’ll have to learn the rest of them later. Not sure if there should be class exclusive skills or not, probably not.|
|Special Actions||Will be unlocked based on level/stat/skill requirements, some will be class related, most will not. They will be usable actions/skills that consume MP or stamina (if we want a stamina system)||Also called ‘spacts’|
|Other Considerations||I’ve been thinking about hunger, thirst, nutrition as possible things to include.|
All of these things will require a lot of feedback. Please don’t be reserved.
Monster and Pets
The idea is that all living entities in the game will have the same sort of stats/inventory/skills/feats/races/classes as player characters, and you can interact with them the same. Once you tame or otherwise add an entity to your party, you unlock more ways to interact with them based on your synergy and affection. Some of the things I’ve been thinking you can do with them:
- Get married, and breed, produce a gene file or child for a later playthrough
- Alchemically break them down, and get resources that you can either use for crafting, or summoning/creating another monster/pet
- Customize them, their dialogue, appearance(?), equipment, AI, etc.
- Fusion: Frankly, this seems like something very difficult to implement. I’m thinking that the way it’ll work is that it will affect stat potentials, “traits,” available body parts (for the sake of equipment), and race/class.