Corrowland: Difference between revisions

From Adam Colton
Jump to navigation Jump to search
No edit summary
No edit summary
Line 215: Line 215:
*Wheels
*Wheels
*Differentials
*Differentials
=10/8 Thoughts=
Make the environment a classic (WOW, D3) mesh with some tools to modify it - shovels, axes. Parts snap together Lego/Kerbal style. Now, to build a building, you flatten the world mesh then lay "the first stone" and everything builds on that. Things like tools and vehicles can be in a "use" mode or a "modify" mode (perhaps not necessary).
To mix DF/MC you have a character and your control shifts between direct and command. Fundamentally everything is command, but some commands feel more like operation - so walking around could be first person and feel like Minecraft (or 3rd person). Then you could give a complex command like "build this" or "go over there" and the character would start doing that - you could switch to a second person perspective and move the camera to anywhere within a meter of your character. You can also tack commands on in this mode. So if you were building something, you could command that a part be placed and while the characters is going to get that part, you could be looking at the piece of work and figuring out the details of the part-after-that.
Most classic MMOs place hard limits on skills. But the real world places limits by having it take a LOT of time to master something. I think we can go this route. To truly master a skill will take complexity and many high-level, valuable tools. We can do some manipulation of the world to make sure only so many of these come into existence. Special items can be created by risking these tools (as opposed to wear). So to craft a master-blacksmith-hammer, you need a greater-blacksmith-hammer, and you will lose it and there's only a 50% chance that you will succeed (or perhaps a 10% chance of master-level, 40% chance of greater-level, 30% rare-level, and 20% common-level).
Everything should have purpose - and a lot of little calculations that add up. A rug may reduce fatigue when walking on it, it may help regulate temperature, provide happiness. Food and potions should overlap. A heavy meal will mean it is longer until you are hungry again, but it also means you are slower for a while. A master-baker can make bread that staves off hunger longer without the slowing effect, perhaps buffing against fatigue. But a loaf of bread of that quality requires wheat grown in well-cultivated soil. The land had to be fertile to begin with, then a high level plow needed to be used - top quality grain, harvest by a scythe (again - quality). It needs to be threshed and milled. The water needs to come from a pure source, held in a high quality and clean container (another chance to imbue the final product). Starter is mixed in, the bowl matters, the oven matters, the wood to fuel the oven - and the axe it was cut with, where it grew. All of these factors will effect a single loaf of bread. The idea being that the wealth to acquire all these things is too high, there detailed use too complicated for a single player. Instead a baker will buy high quality flour, bread and water and own top quality bowls, spoons, pans and an oven and will use these to make a high quality loaf of bread. But a loaf of bread of this quality would be valuable to players looking to get an edge in a battle, or when crafting a master-piece.


[[Category:Code]]
[[Category:Code]]
[[Category:Projects]]
[[Category:Projects]]

Revision as of 19:52, 8 October 2012

This is my rouge like game. Player starts in an overworld. As they explore they can build structures, fight enemies and acquire items. There is no leveling, the skill is inherent to the player and their items. The game is pseudo real time. The world moves at 1 fps. The focus is on strategy rather than APS.

Development

In Progress

Nothing right now, I'm going to make Spacechess as a learning project in Go first. If, after completing that, I feel I'm ready to start on this I will set an in progress list. I may choose to create an intermediate project for more practice, but I hope that is not necessary.

Backlog

Basic Plans

The first version will simply be a field where you can move around and fight enemies. Enemies will spawn in a range of 3x3 screens, excluding the screen you are on. The screen is 40x30 tiles with each tile being 20x20.

Architecture

Most 'events' actually happen on the server, command line like. The gui acts to make the game convenient. I want to extend this out to include chains of actions. For instance, to make a hammer you would need to make a hammer-head and a short handle then combine them. And the tools required to make these would depend on the material. But rather than force all of that on the user, they can select "Make Hammer" and choose the material and the gui will take care of the specific commands.

Maps

Maps come in several varieties. The primary is over-world which is a torus. All maps will be limited in scope (even if very large). The first two I will implement are over-world and cave. Maps are saved as map chunks, pieces of the world that have been generated.

I have two conflicting goals here. The world should be able to grow to accommodate new players, but that growth should be centrally controlled so that players cannot simply walk for hours in one direction and cause the server to balloon out of control.

Notes

I want a focus on a massive tech tree. Building of tools to make tools to acquire items to make more tools. This is very minecraft inspired. Unlike minecraft, I want the over world separate from dungeons and fortresses. As you go deeper (or higher) into these structures the difficulty of the enemies will increase as will the rareity of the drops.

Inventory

You can only carry two items at a time (or one two-handed item). You can equip items. This includes a toolbelt and backpack. Items have a volume and weight. The size of the backpack determines how much volume it can hold and the material determines the weight. Weight will also slow you down (only relevant in battle). You can put down the pack, but that takes a turn. Equipping anything from the pack takes a turn, but anything from the toolbelt is instant. Early on, I want to be able to build wagons and push/pull them around so that you can move loads of equipment

Real-Time and Minions

Taken from Reamde, the game will happen in real time and you can never leave. So you can give your character tasks to do and even if you're logged out, they will continue to do them. This will be very Dwarf Fortress style. Also from Reamde, you can build hierarchical relationships between characters and any task given to a character can be carried out by minions. The game will have perma-death, sort of. A character can die and they will drop everything on them, all commands given to them will be forgotten and the relationships will lost. But because characters have no level, it's not a huge loss.

MMO

Some features are necessary to make the game "mmo"ish.

Locks

Locks on chests and doors are account based. So if a character locks a door and dies, you still have access to your stuff. You can also create groups and assign access to a whole group.

Cement

A cement block can be placed and mined like a normal block, but over time it starts taking longer to destroy until it reaches a maximum. The idea is that you can build a fortress or castle (with a locked door) and it will be very difficult for other character to destroy.

Trades

Characters can trade. Possibly create contracts? Outstanding offers? Stores? This also requires currency.

Reputation and History

Players and some possessions will track reputation and history. Valued possessions (tools and weapons of a high enough quality) will track their history. Created, owned, sold, stolen and given. Players will track certain elements of their history (kills, high quality crafted items, trades) and this will be summarized into a reputation.

Factions

Initially I was against factions, but if I make it so that you cannot attack anyone in an allied faction, then some zones become safe by default.

Goals

I don't want leveling. The player levels, not the character, and they do it by learning about the game. The max level is determined by the complexity of the game.

Players should be able to have a real effect. This is the tough part - I want a structure where players can work together and build social hierarchies and the players who are most invested can have massive impact. Towns are not placed by the server, players build them.

Vehicles

I've wanted to be able to do vehicles in game (and I still want to) but looking at Minecraft, it would be possible to do some "Moving Castles" if moving a block didn't break the Redstone or the torches.

The simplest one that I think would be reasonable to implement and be a lot of fun would be boats. If people could build large sail boats, I think that would be fun.

Tools

In order to expand the tech-tree, there will be a lot of emphasis on tools. Like DF, there will be a quality aspect to everything. The quality of tools will be one of the factors in the quality of the materials they produce. Tools will also be used in a toolbench. Similar to the MC workbench, but with a few dedicated tool slots. So to make a piston, it may require a hammer and pliers. Tools can be swapped, but they can be left in the toolbench.

I do like the Terreria model where you don't have to lay things out specifically - if you have the supplies, tools and are at the right work bench, you're just shown a list of things that you can make (and what they cost). Falls in the "making the game more fun" category, while still leaving the complexity of requiring you to know what is need to produce something.

Magic

Magic is rare. It's not exactly powerful - a basic 'fireball' spell would be roughly as powerful as an arrow or bold, but would "cost" dozens of times more. The advantage of magic is the ability to infinitely compound it.

The basic tool of magic is the wand or staff. Each has a capacity, magnitude and a spell. A single wand will only cast one spell. A basic wand will cast a small fire ball. A very powerful wand would cast a fireball powerful enough to lay siege to a fortress (blow a hole in a cemented stone wall).

To charge a wand requires that you 'spend' a crystal - diamond, topaz, ruby. These crystals can hold energy (at different conversion and loss rates). The basic process would be to build a charging stand, place a crystal in it along with an energy source (coal, sunlight) and let the crystal absorb the energy. The crystal will charge until it's absorption rate is equal to it's loss rate. When the crystal is removed from the charging stand, it starts losing energy. When the crystal is imbued into the wand the crystal is destroyed and the wand holds the energy (at no loss).

Extensions on this may be the ability to transfer energy from several crystals into one, yielding a much higher conversion (but the curve would peak quickly then drop slowly, unlike normal charging that would peak and plane). Or you may focus light from several tiles using reflectors. There could be temporary modifiers to the change rate (change not loss, this allows a crystal to be charged then 'frozen' temporarily allowing players to reasonably work with a powerful crystal before it loses most of it's energy).

A highly complex operation may use many reflectors to focus light onto several crystals, which are then all frozen and transferred to a central location and all their energy is transferred to a single crystal. This would allow one crystal to be hundreds of times more powerful than a normally charged one.

Combat

This will be one of the keys. This needs to be fun for an 'average' player. Lots of monsters with interesting techniques for fighting them - like the old SNES games, you have to learn the holes in their patterns and exploit them.

I'm not exactly a 'normal' player (I don't like most of the games other people do) so I'll need to build a test bed that people like. This seems divided into 'tactics' and 'strategy'. Not sure about the exact division, but strategy seems to be the plan and tactics the execution. One of the big challenges will be how to have player ranks with out levels so that advanced players aren't simply slaughtering less skilled players. The other half is that I don't want to ban bots but I want to keep the game fun for people. How do you design a system that is tactics heavy, strategically interesting and tuned so that people have the upper hand over computers? Look to Go.

As stated earlier, there is no leveling. So I need to make a combat system that is 'technique' heavy and equipment heavy.

Tools and Weapons

  • Hand saw
  • pick axe
  • hand plane
  • crucible (made from clay)
  • brick molds
  • trowel
  • chisel
  • pliers
  • tongs (blacksmith)
  • anvil

To make a table, you would have to chop down a tree (axe) process to planks (draw knife, saw) process to finished planks (hand plane) then construct a table (small hammer, saw) but that would also require nails or dowels. Branches can be converted to dowels with just a utility knife.

Components

Most tools are composed of a few components. These components can be made separately, and depending on their type, may be made at different stations. You may, for instance, make an iron hammer-head at an anvil and a wood handle at a workbench. Blades are made either full-tang, partial-tang or no-tang. Full tang takes more materials, but is stronger. You can also use a cloth handle on a full-tang blade, where a partial or no requires a rigid handle.

Hammers

  • Claw
  • Mallet
  • Sledge
  • Blacksmith

Knives

  • draw knife (remove bark from wood)
  • Puukko knife (utility knife)
  • diamond knife (infinite durability)
  • hunting knife (for skinning)
  • Kukri (multi-purpose, weapon and utility)


Swords

Swords are made of a blade, handle, guard and pommel. The guard and pommel are optional. Handles are standard (same as all other one or two handed handles). Blades are as follows

  • Estoc - W:1, H:0, S:3, D:1
  • Khopesh - w:2, h:2, s:0, d:2
  • Scimitar - w:2, h:2, s:1, d:2
  • Falcata - w:2, h:3, s:1, d:3
  • Gladius - w:1, h:2, s:2, d:2
  • Claymore - w:3, h:3, s:1, d:2
  • Claymore - w:2, h:3, s:1, d:2
  • Dao - w:2, h:1, s:1, d:1
  • Katana - w:2, h:3: s:3, d:3

To balance these, the material they are made with will have to come into consideration. So the material will effect the durability and the blades that can be made, but not the damage (though as wear increases, damage will decrease). So the Katana can only be made from wrought iron. Where a gladius can be made of any metal and a dao of any metal or stone. These will all need to be rebalanced at some point.

Key

  • W - weight 1-3< 1=light, 3=heavy
  • H - Hacking 0-3
  • S - Stabbing 0-3, a stab of 3 against no armor is fatal, though not instantly
  • D - Defense 1-3

Guard

  • Basket
  • Cross
  • Dish?

Axe

  • Epsilon
  • Bardiche
  • Francisca
  • Labrys (doubles durability)
  • Tomahawk
  • Felling - for cutting down trees
  • Broad - for cutting logs
  • Hatchet - multi-purpose 1-hand wood axe

Pole Arms

Like swords, pole-arms can be used for hacking or stabbing. They are much slower than a sword but have a greater reach.

  • Halberd
  • Spear

Other Weapons

  • Bow
  • crossbow
  • sling
  • javelin

Future Notes

  • Armor (and clothing)
  • shields
  • belts and bags

Metals

  • copper
  • bronze (copper & tin)
  • brass (zinc & copper)
  • zinc
  • tin
  • lead
  • solder (tin & lead)
  • pig iron
  • steel
  • wrought iron
  • gold
  • silver

Pure iron is not available because it's too hard to purify.

Gems & Crystals

  • diamond
  • quartz
  • lapiz lazuli
  • opal
  • ruby
  • sapphire
  • topaz
  • aquamarine
  • emerald
  • jade
  • obsidian

Rocks

Just look at this page http://en.wikipedia.org/wiki/List_of_rock_types

Soil

http://en.wikipedia.org/wiki/File:SoilTexture_USDA.png

  • silt
  • sand
  • clay
  • loam

Flux

  • none (carbon monoxide)
  • limestone (produces quicklime)

Clock-work

I'm considering clockwork instead of redstone. The way that energy would be conveyed would be with rotating shafts. Each part in the system will have a force, resistance and dampening - dampening being a linear increase in resistance in proportion to rotational speed. I believe by setting the system up this way, it should be possible to solve the equations fairly easily for how fast each component will spin. A good basic test would be any gear-locked system.

Parts

  • Gear-box
  • Belts
  • Wheels
  • Differentials

10/8 Thoughts

Make the environment a classic (WOW, D3) mesh with some tools to modify it - shovels, axes. Parts snap together Lego/Kerbal style. Now, to build a building, you flatten the world mesh then lay "the first stone" and everything builds on that. Things like tools and vehicles can be in a "use" mode or a "modify" mode (perhaps not necessary).

To mix DF/MC you have a character and your control shifts between direct and command. Fundamentally everything is command, but some commands feel more like operation - so walking around could be first person and feel like Minecraft (or 3rd person). Then you could give a complex command like "build this" or "go over there" and the character would start doing that - you could switch to a second person perspective and move the camera to anywhere within a meter of your character. You can also tack commands on in this mode. So if you were building something, you could command that a part be placed and while the characters is going to get that part, you could be looking at the piece of work and figuring out the details of the part-after-that.

Most classic MMOs place hard limits on skills. But the real world places limits by having it take a LOT of time to master something. I think we can go this route. To truly master a skill will take complexity and many high-level, valuable tools. We can do some manipulation of the world to make sure only so many of these come into existence. Special items can be created by risking these tools (as opposed to wear). So to craft a master-blacksmith-hammer, you need a greater-blacksmith-hammer, and you will lose it and there's only a 50% chance that you will succeed (or perhaps a 10% chance of master-level, 40% chance of greater-level, 30% rare-level, and 20% common-level).

Everything should have purpose - and a lot of little calculations that add up. A rug may reduce fatigue when walking on it, it may help regulate temperature, provide happiness. Food and potions should overlap. A heavy meal will mean it is longer until you are hungry again, but it also means you are slower for a while. A master-baker can make bread that staves off hunger longer without the slowing effect, perhaps buffing against fatigue. But a loaf of bread of that quality requires wheat grown in well-cultivated soil. The land had to be fertile to begin with, then a high level plow needed to be used - top quality grain, harvest by a scythe (again - quality). It needs to be threshed and milled. The water needs to come from a pure source, held in a high quality and clean container (another chance to imbue the final product). Starter is mixed in, the bowl matters, the oven matters, the wood to fuel the oven - and the axe it was cut with, where it grew. All of these factors will effect a single loaf of bread. The idea being that the wealth to acquire all these things is too high, there detailed use too complicated for a single player. Instead a baker will buy high quality flour, bread and water and own top quality bowls, spoons, pans and an oven and will use these to make a high quality loaf of bread. But a loaf of bread of this quality would be valuable to players looking to get an edge in a battle, or when crafting a master-piece.