Tag Archives: indie game

Feature – Crafting and Research

Overview

There was never any question that Crea would have a crafting system and from day one I knew what I wanted out of it. The goal was to make discovery a key component and not have players be dependent on a wiki. Since then it has been a matter of how will it work. For a long time I thought I knew exactly how it would; however, after implementing it and facing several design issues I decided to step back and redesign.

Before being able to craft an item you must first learn what materials are needed. This can be done two ways. The simpler but less common way is to acquire a recipe/schematic that reveals all materials needed to craft the item. These recipes will be rare and only found as dungeon or boss loot. The usual route to learning an item’s recipe is through researching.

As we have always planned, researching is done through the Researcher NPC. When you talk to the Researcher you are presented with the simple research dialog.

There is one item slot where you can drop a material in and click “Research”. By doing so you research the capabilities of that material. This is not free though and does consume one of the material. The result is that a single recipe is revealed. However, if the recipe has multiple materials then all must be researched before the entire recipe is available.

The “Materials” button opens a window that shows the progress of each material so you know when you’ve fully researched a material.

Once a item recipe is available you can easily craft it by opening your craft window, selecting the item and clicking “Craft”.

crea_crafting

Modding

Both the crafting and researching systems are fully implemented in Python and consequently are completely moddable. Since these systems are hundreds of lines long I’ll forgo including them in this post, but they can easily be found and edited with the game. However, the majority of modding regarding these system will be done with creating item recipes.

An item recipe is always defined with the item and can be as simple as the following:

craft = Craft(category='Armor', subcategory='Chest', level=4, experience=30, service='Anvil')
craft.material('mods/base/item/recipes/smelting/copper_ingot.ce', 6)
add(craft)

Recipes can be much more involved with several additional attributes.

craft = Craft(category='Basics', subcategory='Essentials', level=1, experience=15)
# Any number of materials can be listed.
# craft.material('path/to/content.ce, quantity)
craft.material('mods/base/item/materials/wood.ce', 1)
# Recipes can have multiple results based on the quality of the craft.
# result(quantity, quality) - This is a short hand.
# Here the player will receive 4 of this item always since quality is always 0+.
craft.result(4, 0)
# and here the player receives one additional quantity if quality is 50+.
craft.result(5, 50)
# Results can also be created long hand.
# By doing this it is possible to expand on the yielded items and their quantity.
# This result occurs at quality of 100+ and will yield 5 lumber and even another item!
result = CraftResult()
result.quality = 100
result.items.append(InventoryItem("mods/base/item/basics/essential/lumber.ce", 5))
result.items.append(InventoryItem("mods/base/item/basics/essential/super_lumber.ce", 1))
craft.results.append(result)
# Sets if a recipe can be learned through research. Defaults to True.
craft.isResearchable = False
add(craft)

Realms

waycrystal

Because Crea’s biomes are randomly generated, they are always totally new worlds for players to explore. However, after playing in one world for awhile it starts to become too familiar. While it it’s wonderful to start from scratch and create a totally new world every once in awhile, sometimes players just want another dungeon to delve into. To remedy this, Crea will have what we are calling realms.

A realm is an entirely new area to explore separate from the main world but still accessible by special means. New realms can become available through exploration, unlocked by completing a quest, killing a boss, or any other means imaginable. Traveling between the world and realms is done through the use of Way Crystals; large crystals that mysteriously allow teleportation.

waycrystal

In Crea, certain rules apply to worlds, such that as players can build anywhere or that the world size is always very large. Realms, however, don’t have to stick to these rules. One realm could be as small as a single room. Maybe another realm doesn’t allow construction. By breaking the rules, realms enable the creation of areas and scenarios that were impossible before.

My favorite aspect to realms is that since they are loosely connected to the world they can be added and updated alongside existing worlds. For example, you could install a mod and through a quest gain access to an entirely new dungeon. Later you could get an update for this mod that builds additional content onto the dungeon. So realms can be continually evolving without interfering with the main world.

We plan to fully take full advantage of realms. Dungeons are a perfect fit. Some dungeons will be at a set level, while others grow in levels with your character so they will always provide a challenge. Most dungeons will be procedurally generated but some could be hand-crafted. All of the dungeons will be updated alongside existing worlds.

Dungeons are not the only use case though. We are considering some boss fights to be in special realms or perhaps at the end of a dungeon. We are also thinking other special areas could find themselves in realms. Casino?

Realms are currently planned for Beta Phase 3.

Upcoming Beta in Humble Store

Beta (phase 1) is finally in sight. We hope to have it released in about a week. As we mentioned in our earlier roadmap post, Phase 1 will include Windows/Mac/Linux support, multiplayer, leveling, skills, combat, crafting, randomly generated worlds with several biomes, character customization and our beautiful day/night cycle. Note that this phase of the beta is private. Crea will become publicly available starting with phase 2.

So far we have had only a handful of people regularly testing the alpha. Meanwhile, there are about 70 early beta testers eagerly waiting. Going from 5 to 70 testers could be a bit overwhelming for us, so we are planning to incrementally add beta testers. This will help us keep up with bug reports, so there isn’t a huge deluge of reports all at once. Also by doing it this way, we can fix any big game-breaking bugs without exposing everyone to them. We are planning to invite a group of early beta backers ($50+ Kickstarter Backers), if you are an early beta backer and want to be subjected to the earliest beta stage then send Jasson a message on the forums.

Starting with the beta, Crea will be distributed through the Humble Store! This does not mean we are going to be in a Humble Bundle. What it does mean is that you will be able to download the game through your Humble Store account. Steam keys can be easily claimed through the Humble Store if/when Crea is published on Steam. Also we will be selling Crea through the Humble Store via a widget on our site, siegegames.com. The widget will look something like this.

Crea Humble Store Widget

We know that you guys have been patiently waiting for a chance to play Crea, and we are super excited to be able to finally start sharing it with you. Thanks for your continued support and encouragement!

Update Time!

It has been far too long since I posted an update. I don’t have too much exciting news to share at the moment; however, I figured I could mention what I have been working on at least.

For the last month I have been slowly figuring out how to make multiplayer better. It has been a long road involving switching from TCP to UDP and all the insanity that contains. Things are finally starting to shape up though. I have it mostly stable while testing with myself and will start stress testing it soon.

Shared access to Treasure Chest

All other features are in place for the first beta phase and we are working on adding in more content (biomes, monsters, items, and so on). In fact, this is exactly what our new developer is working on now. We will introduce him properly on the blog once we are past the trial period.

Some much more exciting updates are just around the corner. Stay tuned!

Seeking Developer

This position has been filled! Thanks again to all that applied.

After much internal debate, I have decided to look for an additional team member. This is a programmer/designer position for Crea and would preferably be long term (4+ months). Here are some details.

Requirements

  • Advanced scripting knowledge
  • Game design sense
  • Available to work for 20+ hours a week for the next few months (at least)
  • (major plus) Familiar with Python and/or C++

Duties

  • Implement content using the modding API (Python)
  • Design content such as items, monsters, biomes and so on
  • Help write modding tutorials and documentation
  • If you know C++ then you can help with the game engine as well.

Compensation

  • Upfront payment and/or profit sharing (To be negotiated)

Location

  • San Francisco area but remote work is fine.

If you are interested or have any questions, then please contact me at [email protected]. Be sure to include details about yourself and any projects you have worked on.

NOTE: The roadmap I posted yesterday was made under the assumption that I do not find another developer.

Updated Roadmap

It has been awhile since I posted an update regarding our release schedule. I want to thank everyone for their patience. Here is what we have planned.

Beta Phase 1 (Early Beta)

  • Time Frame: Early April
  • Duration: 4-6 weeks
  • Availability: Only $50+ Kickstarter Backers
  • Features: Windows/Mac/Linux support, Multiplayer, Leveling, Skills, Combat, Crafting, Generated Worlds, Character Customization, Day/Night Cycle

Beta Phase 2

  • Time Frame: Mid May
  • Duration: 4-6 weeks
  • Availability: $25 Kickstarter Backers. Publicly available for $25. (contains game, digital soundtrack, and digital artbook.)
  • Additions: NPCs, Researching, Grafting and additional Biomes, Monsters, Equipment, Items, Skills, etc.

Beta Phase 3

  • Time Frame: Late June
  • Duration: 4-8 weeks
  • Availability: $10+ Kickstarter Backers. Publicly available for $10. (game only)
  • Additions: Official Mod Support, Bosses and more content.

Release

  • Time Frame: August
  • Availability: Can be purchased by anyone for $15.
  • Additions: Quests, Mounts, Second Playable Race and more.

Some things to note

  • Any of this is subject to change but I have waited to post it until I was reasonably certain on the time frames.
  • Updates between releases will be posted on a weekly basis
  • Beta Phase 3 marks the official mod support. At this point I will do my best to provide all details regarding mod changes, provide mod API documentation and additional features such as in-game mod management. Before this it is still very possible to mod Crea.

EDIT: I have updated the original estimates to better reflect our current status.

NPCs in Crea

 

lineup1In Crea, there will be several NPCs with whom to interact. This week Kelley started working on some of the NPC art. Above we have the Researcher, Nun, Grafter, Merchant and Cartographer. Here is a brief description of each NPC. Much more information will be posted about each one individually in the future. (Note: NPCs will be introduced in Beta.)

  • The Researcher helps with crafting. Supply him with materials and he will return the favor by providing you with new item recipes.
  • The Nun heals HP and grants buffs.
  • The Grafter enhances your equipment through the use of catalysts and essences.
  • The Merchant sells items.
  • The Cartographer provides you with a map and upgrades for it.

lineup2