Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411478 Posts in 69369 Topics- by 58424 Members - Latest Member: FlyingFreeStudios

April 23, 2024, 06:12:58 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsThe Alchemist - an alchemy shack-building game
Pages: [1]
Print
Author Topic: The Alchemist - an alchemy shack-building game  (Read 3283 times)
stryfe
Level 0
**



View Profile
« on: January 27, 2017, 06:52:19 AM »


About the game

The Alchemist is a game where you grow your alchemy shack and learn the properties of the nature around you to create your own recipes for wealth, healing or domination.

The concept is heavily inspired by Dwarf Fortress and Rimworld, with base-building and micromanagement elements.

I'm currently developing it solo using Monogame. Coffee



Current concept

  • Build your shack and get your equipment ready to cook
  • Learn the properties of dozens of ingredients, from headaches cure to mind control
  • Trade your potions to get better equipment, staff or rare ingredients
  • Send adventurers on quests to gather ingredients
  • Train your own apprentices so they learn how to cook your recipes



Posts

02.14.17 - Documentation, I love you
02.01.17 - Character controlling, Inventory and Ingredient Generation!
01.27.17 - Structure modelling



Media (Updated 01/02/2017)

These are some current screenshots with placeholder graphics:




My (recently cleaned and rearranged) board (because Trello is too mainstream #jk)




Who am I

My name is Guilherme 'Stryfe' Paz and I've been a software developer for the last 8 years, without any focus in games.
In January, 2016, I started a medical treatment that withdrew me from my job and college indefinitely. From then til now, since I'm at home full time, my main focus has been treating myself and studying gamedev, both of which I've done succesfully! Beer!

I've had some projects and finished prototypes of most kind of games I like. That has enabled me to discover and experience much of what I know today about the technicalities of gamedev, and that's why for the first time I'm tackling something with the intention of actually make a finished, polished game.

I watch the forum for a bit more than an year now. I'm kind of a lurker, and for that I apologize, since the main idea of the forums is helping each other. I hope I become more active and lose this shy instinct of interacting with people with a foreign language!  Smiley



Where is the game now

Still in basic gameplay and prototyping. I have some building, job cycles and creating some potions from resources which tests the main idea (you can see them above), but I'm not totally sure of the main game design loop.

A struggle I've been having was about the main design idea: to be a lone alchemist in the woods, providing your discovered potions to the villages nearby to cure people. This could work, but with the idea of multiple jobs (hauling items, mixing potions, trading) it would be necessary to have more people around. I started to think about hiring staff, but I'm not totally happy with this concept.



So...

I'm thankful for everyone who read any of this, and I'd be very grateful if you care to drop a comment. I'll be posting regularly as I develop, feel free to ask anything you find interesting. Cheers!
« Last Edit: February 14, 2017, 04:28:33 AM by gstryfe » Logged

stryfe
Level 0
**



View Profile
« Reply #1 on: January 27, 2017, 02:49:24 PM »

ECIS - Entity Component I-decide-what-goes-where System

Since the start of the development, I've been using a Mocker class to simulate data. Instead of going through all the trouble of starting with XML writing/reading, I just create all data hard-coded, on the flight. That's ~250 lines of messy variable assigning! So fun to debug when a tree starts holding objects inside it like a chest.

As the title suggests, I was deeply inspired by the ECS paradigm (this is a good series of articles about it). The thing is: I don't need the whole flexibility ECS brings, and as much as this paradigm is flexible, it can get really messy if you're overly ambitious about the paradigm you're using (that's me).

Following along some thoughts I saw in the Rimworld development and some moonman snippets, I tried to incorporate behaviour in the Component model, information in a Definition class and the instance at hand in an Entity object. Apply some C# generics to send messages to specific components and you're good to go.

That's basically how everything is defined:

Quote from: Defining a wooden chest behaviour
// Wooden Chest
BuildingDef bDef = new BuildingDef("wooden_chest");
bDef.name = "Wooden chest";
bDef.spriteName = "chest";

ComponentDef comp = new ComponentDef("Container");
comp.parameters["maxCapacity"] = "7";
bDef.components.Add(comp);

Global.Defs.Set<BuildingDef>(bDef);

...

Building chest = Spawner.Spawn<Building>("wooden_chest");

// yeah I use a static Global-master-centered class, let a bro breath

This is the process to define Terrains (water, grass, manufactured floors), Buildings (chests, benches, trees, walls), Items (bottles, ingredients, equipment) and Pawns (anything that 'lives'). The last name is borrowed from Rimworld, since I couldn't find any other name that defines so well a figure that moves and does actions.

My next step will be just wrap all this in XML files. That way it'll be much easier to add a bunch of stuff and mess around with the components and values in a more straightforward way.
Logged

nu_muso
Level 1
*


View Profile
« Reply #2 on: January 27, 2017, 08:17:55 PM »

I love, love, love this idea! I'm genuinely looking forward to seeing where you take things Coffee
Logged
stryfe
Level 0
**



View Profile
« Reply #3 on: January 28, 2017, 11:28:46 AM »

I love, love, love this idea! I'm genuinely looking forward to seeing where you take things Coffee
Thanks a lot, nu_muso! I'm actually also looking forward on what this can become. It's all about creativity from now on!  Coffee
Logged

stryfe
Level 0
**



View Profile
« Reply #4 on: February 01, 2017, 10:03:38 AM »

Player control, Inventory and Ingredient Generation!

Character control

These last 2 days I've been refactoring some stuff that wasn't working properly and I decided to redesign the main "DF/RW inspired" part of the game. Although the initial idea was what I'll present in this post, when I clicked "New project" in Visual Studio I was aiming for a macro management base building game.

I decided to go for a "player controls 1 character" paradigm because the idea behind Dwarf Fortress and RimWorld is to focus your efforts in your base, be it a fortress or a colony. That wouldn't apply in the context of the game; the idea is to control an alchemist and it's minions, and designing jobs would be 2 minutes of gaming and 10 of watching. I realized that if I would to focus on being an alchemist, I couldn't focus mainly in base building.

That's why I present to you The magnificent Alchemist being controlled by a tired programmer:


I'm still faster than you!

As you can see in the gif above, I tried to tone down the tiles saturation and brightness. These are, obviously, placeholder art, but I wanted to check how the game could look with a darker ambience and I liked the result, even with the placeholder.



Inventory

Now, a gif of the inventory system that took me quite a while to perfect, but is working really well!

Please don't crash, please don't crash...

The UI is looking quite dull and has no labels in it, but I decided to focus in mechanisms before polishing anything.
If anyone gets interested in know how the UI work, I can post some snippets later. Hand Metal Left



Ingredient generation

Lastly, I focused a lot in the ingredient generation.
The main idea of the game is having a variety of procedurally generated items that will serve as the ingredients of your alchemy endeavours. That said, one can point out that it would be really simple to toss a lot of names inside an array and take out a lot of combinations, but I tried to give meaning to these lovely pieces of the world.

The most important aspect of the items are the properties they have. These properties are things like Poison, Cure, Instant Death, Mana Regeneration... and they influentiate what the ingredient does (duh), it's morale (good, evil, neutral) and how expensive it would be. The final product (a potion, for instance) will have the property of the item.

How I tried to name these generated ingredients is another subject, but ultimately the item tend to have a name related to what it does, how rare it is, etc. Let me know if anyone want to have a grasp and I post it here.  Smiley

I leave you guys with some funny named generated items:

Quote
[.] Thin Orc Blood
[.] Plant of Agony
[.] Viper Jelly
[.] Thick Vampire Nail
[.] Damned Cactus
[.] Healthy Jelly
[.] Immortal Fruit
[.] Translucent Earth Fruit
[.] Good Fang of Justice
[.] Archaic Water
[.] River Meat
[.] Moon Emblem
Logged

Pixel Noise
Level 10
*****



View Profile WWW
« Reply #5 on: February 01, 2017, 06:16:51 PM »

This sounds awesome! Really like what you've described for the mechanics. Excited to see more  Beer!

About the main design loop - is there an "end" goal to this, or a way to "win"? Or is this the sort of game where you just happily build your empire over time? Because if that's the case, then somehow involving an online/multiplayer component would probably help motivate people to compete, etc.

P.S. Also, since you mentioned it - your English is great! No need to be shy.
Logged

Pixel Noise - professional composition/sound design studio.
 https://soundcloud.com/pixel-noise
 https://twitter.com/PixelNoiseMusic
 https://pixelnoisemusic.bandcamp.com/

Recently completed the ReallyGoodBattle OST!  https://www.youtube.com/watch?time_continue=2&v=vgf-4DjU5q
stryfe
Level 0
**



View Profile
« Reply #6 on: February 02, 2017, 09:44:30 AM »

This sounds awesome! Really like what you've described for the mechanics. Excited to see more  Beer!

About the main design loop - is there an "end" goal to this, or a way to "win"? Or is this the sort of game where you just happily build your empire over time? Because if that's the case, then somehow involving an online/multiplayer component would probably help motivate people to compete, etc.

P.S. Also, since you mentioned it - your English is great! No need to be shy.

Thanks, Pixel Noise! I'm very glad you find it interesting.

I actually tried to design how would it be the end of the game. I don't think an endless game would work with what I have in mind at the moment, unless it had a multiplayer aspect like you mentioned (but my wife forbid me of going too crazy because I always get overwhelmed :lol).

Being a single player 'campaign' kinda game, I imagined some sort of 'Philosopher's Stone quest'. You'd have all the resources in the game to develop your own strategy on what do create and use, and the goal would be to develop a unique item that would lead to one of the endings. Let's see if that's appealing!

PS: Thanks! Always trying to improve. Smiley
Logged

Pixel Noise
Level 10
*****



View Profile WWW
« Reply #7 on: February 02, 2017, 04:18:03 PM »

Yeah, OK! So with the alternate ending idea - maybe you can give the player options of how they want to play the game, like if they want to prioritize building their business, or just researching really rare formulas, etc - and then whichever path they have the most "points" in, is the item and ending they end up getting?
Logged

Pixel Noise - professional composition/sound design studio.
 https://soundcloud.com/pixel-noise
 https://twitter.com/PixelNoiseMusic
 https://pixelnoisemusic.bandcamp.com/

Recently completed the ReallyGoodBattle OST!  https://www.youtube.com/watch?time_continue=2&v=vgf-4DjU5q
stryfe
Level 0
**



View Profile
« Reply #8 on: February 02, 2017, 07:57:48 PM »

Yeah, OK! So with the alternate ending idea - maybe you can give the player options of how they want to play the game, like if they want to prioritize building their business, or just researching really rare formulas, etc - and then whichever path they have the most "points" in, is the item and ending they end up getting?

That's correct! The first concept is at least a "good" and "evil" ending, since the generated ingredients can do good and bad things at the moment. Consider that if you intend to craft healing and curing items for adventurers and villages you're able to create an 'Elixir of Life' that can cure the world; if you're focusing in crafting poison essences and necromancy runes you're going to the 'Necronomicon' path which will turn you into The Lich. That sort of thing. Smiley

Of course the "alchemy" topic opens a lot of possibilities, and I'd like very much to explore them!  Coffee
Logged

stryfe
Level 0
**



View Profile
« Reply #9 on: February 02, 2017, 08:10:22 PM »

To sum up the day, I finalized the very first version of the, well, potion crafting!  Coffee



The Alchemist is taking the tool (an empty bottle) and the ingredient called "Archaic Blood" that has the "Tranquility" property. For now, the mixing system is just checking which kind of product the tool creates (potion, rune, homunculus), getting the name of the ingredient and it's property, creating an Archaic Lesser Potion that has the Tranquility property. This has very important implications such as who is the buyer of this potion and what you can do with it.

This is obviously the first and simplest version of the system, but at least now you can actually make something other than walk around! Cheers! Coffee
Logged

Mixer
Level 1
*


I've never really known what to put here.


View Profile WWW
« Reply #10 on: February 03, 2017, 02:29:24 AM »

Oh this looks really nice. I love the fact you've taken a pretty unique approach with the alchemist character, potion crafting and stuff. I honestly think the sprites look pretty good so far, minimal, even if you said they're placeholder. Of course the mixer UI will need some work Smiley Good luck, love the concept :D

PS - Your HD art is AWESOME. Reason why I clicked your sig.
Logged

My twitter is @5Mixer.
I'm currently making a dungeon game, check it out :D
https://forums.tigsource.com/index.php?topic=59139.0
stryfe
Level 0
**



View Profile
« Reply #11 on: February 03, 2017, 08:53:10 PM »

Oh this looks really nice. I love the fact you've taken a pretty unique approach with the alchemist character, potion crafting and stuff. I honestly think the sprites look pretty good so far, minimal, even if you said they're placeholder. Of course the mixer UI will need some work Smiley Good luck, love the concept :D

PS - Your HD art is AWESOME. Reason why I clicked your sig.

Thanks, Mixer! I tried to put a bit of effort so the placeholder is at least something, but I'm glad you liked it. I'll probably stick to something along these lines.

Art is not my best virtue, but I'm trying hard to get some work done, and the sig/logo was a lot of effort to get by. I'm glad it turned out to be something "likable". Coffee
Logged

Pixel Noise
Level 10
*****



View Profile WWW
« Reply #12 on: February 03, 2017, 09:09:20 PM »

That's correct! The first concept is at least a "good" and "evil" ending, since the generated ingredients can do good and bad things at the moment. Consider that if you intend to craft healing and curing items for adventurers and villages you're able to create an 'Elixir of Life' that can cure the world; if you're focusing in crafting poison essences and necromancy runes you're going to the 'Necronomicon' path which will turn you into The Lich. That sort of thing. Smiley

Of course the "alchemy" topic opens a lot of possibilities, and I'd like very much to explore them!  Coffee

I get it - very cool! That should offer a lot of replay incentive too. I'd definitely run through it multiple times to see how different paths affected the world, story, ending.
Logged

Pixel Noise - professional composition/sound design studio.
 https://soundcloud.com/pixel-noise
 https://twitter.com/PixelNoiseMusic
 https://pixelnoisemusic.bandcamp.com/

Recently completed the ReallyGoodBattle OST!  https://www.youtube.com/watch?time_continue=2&v=vgf-4DjU5q
stryfe
Level 0
**



View Profile
« Reply #13 on: February 14, 2017, 04:27:22 AM »

After a week of procrastination, I'm back in development. Most of my avoidance in working in the project last week was because of design choices I couldn't (and wasn't physically and mentally able to) make.



Documentation, I love you

This week I present the The Alchemist Development Wiki:



I decided to try this out because the design choices I had to make (such as what to keep in the definition of a model and what kind of categories should be present or even would a Product be an Item or a different model) were always only in my mind. Eventually I thought something useful, but had only my Sublime opened where I would scribble something that'd be unreadable later.

With a dev wiki, I can center my scribbles in one organized space and read it like I'm a player. The design is there, and if it seems odd in the player's view, it'd probably be better if the design change to a more understandable paradigm.



Nothing fancy this week, I know, but it's something I think can be important to develop a nice design. Cheers! Coffee
« Last Edit: February 14, 2017, 04:34:15 AM by gstryfe » Logged

LozzaDawg
Level 0
**

I make games, amongst other things.


View Profile WWW
« Reply #14 on: March 06, 2017, 01:37:38 PM »

This game looks great so far! First, I love the inventory and crafting system, the drag and drop is really a really intuitive mechanic. Secondly, i'm a fan of the tile size (is it 16x16, looks like it), the minimalist look works well.
This is being really picky, but for some reason the sprites look slightly too small for the inventory slots. But that's just a tiny complaint on my part.
Lastly, I really love the concept of this game, mixing base building with alchemy, and the way you're approaching the ingredients is really neat. The development wiki looks really nice as well!
Keep up the great work! Beer!
Logged

Twitter is @Jordan_DiPalma

H I T   OR   M I S S,   I    G U E S S   T H E Y   N E V E R   M I S S,  
H   U   H?
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic