Jump to content

General advice for designing the mechanical systems


Erik

Recommended Posts

Engineering in Vintage Story

Split of the mechanical energy system and the mechanical computing system.

This is one of the most important things, because both systems try to archive very
different things which would benefit from very different mechanics. The energy system
cares about rotation speed, torque and maybe inertia, which are useless in a computational
system, which that needs binary states, like the direction of rotation.
Other than that, splitting the two would also make performance optimization easier,
allowing for bigger and better machines.
Furthermore the split is also helpful on a game design side, as it emphasizes the
split of functionality very well.

Material split for mechanical energy and computing system.

To make the split more evident for the player, I suggest using different materials
for the energy and the computing system: Wood for energy and brass for computing.

The energy system should pose interesting problems for the player.

It is very important that using mechanical energy needs to pose engineering problems
for the player to solve. Otherwise, mechanical energy would be a pretty dull
cosmetic addition. As mechanical energy is compromised of at least two variables,
being speed and torque, converting and balancing these could present an interesting
engineering challenge. Fluctuating energy output on certain generators could make
automatic gearbox-adjusting a new and interesting engineering challenge,
when certain energy consumers need a specific minimum or maximum value of one
of the two variables to function or change behaviour when receiving different values.

Mechanical computing should be based around the geneva drive.

The geneva drive is a gear mechanism that turns constant rotation into
intermittent rotary motion. It is used in mechanical clocks and therefore allows
for the very cool name of "clockwork engineering" to be used for mechanical
computing. As mechanical computing is driven by a clock, it further emulates
real electrical computing. Geneva drive could be operated at different speeds
using different speed of mechanical energy to provide different clockwork tick speeds.
The torque provided to the geneva drive could limit the number of components 
driven by it, not working at all when the torque provided is too low.

Gear rotation direction as a binary unit for clockwork engineering.

Unlike redstone, clockwork engineering shouldn't violate the conservation of
energy completely, so the on-off state can't be efficiently used for binary
computing, without making clockwork computers huge. Therefore gear rotation
should be used as the primary binary unit, as inverting it is as easy as
placing two gears next to each other.

Mechanical sensors should be present to provide single clockwork ticks.

As clockwork circuits only operate when ticking, they would need to check
constantly for changes at sensors. This would add a lot of unnecessary computation
efforts, which could result in bad performance, as well as making simple
tasks much more complex. To oppose this, mechanical sensors should be able to
provide single clockwork ticks. The sensors shouldn't produce power out of nothing,
so there should always be some mechanical explanation for a tick, like an
entity detector being a piston that pushes down and therefore produces a mechanical
signal turned into a clockwork tick.

Torque as a variable sensor output.

The sensors could also output different values of torque, depending on the measured
thing, i.e. a heavy entity, item or block would provide a higher torque for the
tick. This would play further into the realisms side and could also have some practical
uses, like clockwork circuits being so large, that they only activate when the sensor
provides a certain torque. To make systems like this possible, a clockwork resistor
block, which adds addition torque requirements to the clockwork circuit, would be useful.
Furthermore, to make sensors actually useful for processing weak signals, geneva drives
may have a mode to activate for a tick, when they get ticked. This allows having a weak 
signal with a weak torque triggering a geneva drive to provide a single tick with a
torque based on the torque input by mechanical energy.

Any mechanical (automation) block should have a very general and simple functionality.

General means is that a block should always have more than one application.
Simple means that single blocks should only be able to solve very small and simple 
problems, bigger more specialized problems should be solved by combining simple 
functionalities of the single blocks in interesting ways. After all, 
engineering should always be a puzzle for players to solve and not a solution they 
get after grinding materials. This should apply to all aspects of engineering 
(automation, mechanical computing, mechanical power) in Vintage Story, never providing
players with a simple "Automatic farm"-block.
Simple functionality also has the side effect of making blocks easier to understand.

  • Like 2
Link to comment
Share on other sites

  • 3 weeks later...
  • 5 months later...

Important note here, IMO: In survival mode, which is all about managing your resources and "upkeeping" various aspects such as your health, nutritional wellbeing, replacing broken tools, etc. the engineering system should be a DIFFERENT kind of upkeep, not ELIMINATE the need for upkeep.

In some games, once you have something automated, you can just walk away from it and reap infinite rewards. In real life, things break down eventually - so for instance, perhaps gear axles will rust and slow down over continued use and will need to somehow be greased/maintained or else the machine will perhaps slow down or even seize up entirely (leaving abandoned machines to eventually cease working). This would upgrade you to a better FORM of upkeep, but still REQUIRE some kind of upkeep, which will keep us from getting bored after solving an engineering problem.

For instance, if we create a windmill to grind our grains for us, and it can just run forever without any sort of maintenance or upkeep, it won't feel particularly rewarding anymore to grind grain as opposed to before when, although operating the quern by hand is a pain, it feels rewarding.

Hopefully this is helpful input.

Link to comment
Share on other sites

3 hours ago, ThreeHeadedDingo said:

Important note here, IMO: In survival mode, which is all about managing your resources and "upkeeping" various aspects such as your health, nutritional wellbeing, replacing broken tools, etc. the engineering system should be a DIFFERENT kind of upkeep, not ELIMINATE the need for upkeep.

 In some games, once you have something automated, you can just walk away from it and reap infinite rewards. In real life, things break down eventually - so for instance, perhaps gear axles will rust and slow down over continued use and will need to somehow be greased/maintained or else the machine will perhaps slow down or even seize up entirely (leaving abandoned machines to eventually cease working). This would upgrade you to a better FORM of upkeep, but still REQUIRE some kind of upkeep, which will keep us from getting bored after solving an engineering problem.

 For instance, if we create a windmill to grind our grains for us, and it can just run forever without any sort of maintenance or upkeep, it won't feel particularly rewarding anymore to grind grain as opposed to before when, although operating the quern by hand is a pain, it feels rewarding.

 Hopefully this is helpful input.

Machine maintenance is something that is still in somewhat active discussion. I personally am very against it. The game is a sandbox survival game not a pure survival game, if everything would decay and require maintenance, the players freedom would be heavily limited. Why should machines decay when a player build house doesn't? They both serve a purpose, protection or production, and thus generate some rewards. Decaying every achievement of a player is just frustrating and maintenance tasks are often extremely repetitive and boring. People want to build machines, because they want to remove or lessen some repetitive and boring gameplay loops.

I'm however not fully against maintenance, however all maintenance should be able to be automated. Maintenance like supplying your boiler with fuel and your mill with grain. Full automation of even a single system, like an automated farm, should be difficult, coming with many engineering problems to overcome, while partial automation is comparatively easy. This signals a shift in gameplay, as the old struggle of manually doing things is replaced by the struggle to solve new problems with machines. Having to run around with a cleaning rag, polishing every gear of every machine simply doesn't fit here from a gameplay perspective, apart from being probably hugely annoying.

Not to imagine how frustrating it will be for people on servers, who may log in after a week, only to find all of their machines broken.

There will come a point in every game where the player will have reached the end of the progression and there is nothing new left to do or archive. Repetitive, hollow routine tasks will not keep the player invested, it might just drive him away from the game. The things he should be doing now is what he wants, it's a sandbox, he can finally build something without being limited by the survival aspects of the game, the game needs no arbitrary gameplay loop to keep him invested now.

Link to comment
Share on other sites

I'm on THD's end of things.   But only for certain critical items.  Every segment of shaft and gear should not be maintained.  That's too many pieces.  But critical pieces I think should wear out, and need replaced every so often.  Not on as short a timescale as a tool - much, much longer.   But I think anvils should wear out eventually for instance.  And once we have steam power, things like seals and bearings perhaps.  Things that you do not have many of to worry about.  Ideally there would be graphical indicators as the time approaches.  Streaks of oil perhaps.  Or maybe a knocking sound to a steam engine.   I think it could be a fun and immersive part of the game.

Link to comment
Share on other sites

As Redram says, I didn't mean to imply that every single piece of a machine would need constant tending to, however I hope you guys eventually agree that machines require some sort of maintenance that includes other established gameplay loops. Maintenance that requires active player participation, but is less "work" for the player overall than if they had to perform the automated task themselves. So it's an upgrade to your workflow, but isn't something that puts an end to the player needing to participate to keep things going.

I suppose my worries come from looking at Minecraft, where the systems of automation (and a lot of the gameplay, to be honest) is really poorly conceived - redstone is just "magic infinite power" and once a task is automated, it simply removes gameplay. Of course, Minecraft has much larger problems than that right up front (like how easy it is to acquire ungodly amounts of food just by manual farming and thus defeat the purpose of survival right away) but, just for comparison's sake.

As a small aside, I'm loving the game right now. I always wanted what amounted to a polished, standalone "terrafirmacraft: the game" that wasn't held back by the numerous issues Minecraft has and my input is born purely out of my excitement that such a game now exists. I've only had Vintage Story for 2 days and have already put in easily 10+ hours.

Edited by ThreeHeadedDingo
Link to comment
Share on other sites

I simply don't see a need to add some maintenance that is not automatable. Most players would probably chose not to fully automate everything, because it would be a huge and difficult task. So most players would therefore have to do some maintenance, but not because they have to, but because they chose to, because they found it easier to once in a while add fertilizer themselves than to automate it. And why should players not be able to chose to fully automate it?

Link to comment
Share on other sites

To me it depends on the verisimilitude the devs are shooting for.  Replacing a piston in a steam engine is not a matter of having a box shoot a piston toward the engine, which is basically how minecraft does stuff.   irl you've gotta unbolt stuff, redo seals.   If firing machine parts out of boxes is the level that they go for, so be it.  But at that point ya, you may as well just not even do it really, it's cartoonish.  Tyron has spoken in the past of a 'survive and automate' mode, that as I understand it would have a more extensive (not realistic for timeframe) suite of equipment.   I'm of course fine with whatever in that mode, since it's geared toward automation.

Edited by redram
Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.