MineYoshi wrote:About all those tecnical aspects: I have a question, will the "CO2" and "Smoke" be done in C++ or Lua? I have that question but i don't know... Also, this of the "Smoke" will be hardcoded? Or it'll be justly a mod?
Byakuren wrote:I don't think maintaining your light adds to the gameplay. Survival games don't necessarily have to be simulations…
SegFault22 wrote:Well, first it would require a total overhaul of the existing system…
SegFault22 wrote:MineYoshi wrote:About all those tecnical aspects: I have a question, will the "CO2" and "Smoke" be done in C++ or Lua? I have that question but i don't know... Also, this of the "Smoke" will be hardcoded? Or it'll be justly a mod?
Well, first it would require a total overhaul of the existing system (most likely a fork, because it is substantially different), for this to even make sense. You know how we can have nodeboxes of pretty much any shape? Well, imagine that now all nodes entirely consist of nodeboxes of any possible shape, each node can contain more than one, and they can fit together seamlessly - for example, a node that is half dirt and half sand. For simplicity, only one node would exist, being an empty placeholder for "volumes" of "material", where materials are registered similarly to how we register nodes now, except with a few more parameters. In the dirt/sand example, you would have one volume of the node consisting of dirt, and another consisting of sand - you can subtract mass from the dirt part, without directly affecting the sand (except it may fall by gravity, if there's sand above where the dirt is removed, but that's kinda complicated).
Then, all nodes made of wood can take any shape, and we can subtract mass from them (shrink them), convert some of the mass to a different solid material (charring, ashes) or even a gaseous material (CO2). The difference between the solid materials and gaseous materials, is that gaseous materials don't have a definite density or shape, so they can spread out and fill whatever empty space is available, or even mix with other gases. So when you light a wood node on fire, it immediately starts converting wood matter into char and some amount of CO2 and heat, which then converts to some amount of ashes and a lot more CO2 and heat. In order for fire to make sense, though, there will need to be some way to keep up with the distribution of heat in nodes (it's hottest where the fire is), and keep up with heat dissipation by conduction (if the fire goes out, it starts to cool off, embers stop glowing).
That way, using flint and steel on the top of a wood node raises a small part of it to far beyond the combustion temperature (of wood), which then catches on fire and starts converting to char, ashes and CO2. Since the CO2 is extremely hot when it is generated in the fire, if gives off light and turns opaque-looking from the light output, because it is above the (universal) incandescence temperature; and hot gases flow upward, so we get realistic-looking flames without having to directly animate anything.
However, this would basically turn the game into a "reality simulator", if we go too far and make everything look as close to the real-world as possible (which is not too difficult with the system I described) - we should be careful to keep stuff like flint and steel OP enough, for example you don't need to catch a tiny spark in some charcloth to start a fire, instead the flint and steel basically places a considerable ball of incandescent plasma-air wherever you right-click with it, instantly igniting combustible materials. And, we can have materials which don't exist in the periodic system, such as mese and adamantium - and tools would still be insanely fast compared to the real world, but instead of seeing a node crack-up until it disappears, chunks of volume of the material you are pointing at get removed from a node until there isn't any more of it in the node, and this happens fast enough that the total dig-time for a node full of dirt is the same as it was before when digging a dirt node in the "old system".
You can probably see why it would be best to put this into a fork, instead of the default game - such as the immense complexity involved in programming "all of this", how it is almost entirely different from the existing node system and would make the game look and feel a lot different (while it would still be a voxel game, though), and the insane quantity of processing resources needed just to run the server end of this system (rendering it all on the client side, especially the part where volume is quickly subtracted from a node as you "dig" at it, would be an extreme load poossibly requiring several high-end GPU cards just to get a considerable framerate). It would probably be safe to say that it will be many years before this is even possible, even if all of the programming were finished already.
So, until then, the existing fire system seems effective - if we really want char and ashes and CO2, we could create (in the C++ part of the engine) a special texture effect for combustible nodes, where the texture slowly turns black as it burns, and when it is completely black it starts to turn gray, until finally replacing the node with a small layer of ashes, also releasing a CO2/smoke node every so often (which looks like smoke, being somewhat transparent but gray in color), which would float up and linger around (when two CO2 nodes become stacked upside-down on a ceiling, the one closest to the ceiling moves to the side to allow the one under it to move up) - or, instead of the moving nodes method, CO2/smoke could be a fluid with "negative viscosity", which the engine handles differently by making it flow up instead of down (like this stuff from some other place) - so a source node is placed above every fire, and when the fire goes out, the source node degenerates and the "flowing smoke" clears away like flowing water when the source is removed.
It is always best to keep the combustion products from being hard-coded into the C++ part, because someone may want to modify how CO2 works or change its properties, or make different combustion product gases which behave similarly, but are produced by special materials.
Also, players should not be able to breathe in smoke, just like they can not breathe in water, but we may have to implement that differently because smoke has a density similar to air, not water, and you can technically breathe it, unlike water.
MineYoshi wrote:First, ya' need to remember that this good idea can become a very laggy game...
Second, if the mapgen sometimes explode my little AMD Athlon x64, i think that generating the map in those "little n' cute" blocks (or also called "mass") will make the game unplayable... If sometimes both games ("MineCraft" and Minetest) have lag due to mapgen, this becomes a pretty crazy idea for my Hardware...
Also if the map is generated by "chunks" and technically there is "mass" in every block, with different materials, maybe in one "block"... I don't know how exactly big could be this "chunks" and also it can become laggy...
But if you decide to justly choose the normal mapgen, and make every block become mass, then it couldn't be that bad...
SegFault22 wrote:MineYoshi wrote:First, ya' need to remember that this good idea can become a very laggy game...
Second, if the mapgen sometimes explode my little AMD Athlon x64, i think that generating the map in those "little n' cute" blocks (or also called "mass") will make the game unplayable... If sometimes both games ("MineCraft" and Minetest) have lag due to mapgen, this becomes a pretty crazy idea for my Hardware...
Also if the map is generated by "chunks" and technically there is "mass" in every block, with different materials, maybe in one "block"... I don't know how exactly big could be this "chunks" and also it can become laggy...
But if you decide to justly choose the normal mapgen, and make every block become mass, then it couldn't be that bad...
It is reasonable that we would not see this system implemented, or anything like it, until times when the "regular" capacity of RAM chips averages to several terabytes apiece (probably with a new serial interface), capacity of common hard drives (or their replacement) is some hundreds of terabytes, common processor speed is in the terahertz range, common number of processor cores reaches 64 or more, and common network speed is in the range of dozens of gigabytes per second. We may even need 128-bit processor architecture, to process twice as much data each cycle (of course we wouldn't need it to address more memory, because a 64-bit processor can address about 1.84*10^16 bytes (~16 exabytes).
MineYoshi wrote:Ask somebody that if you can use a bit a supercomputer. Some universities sometimes have really powerful ones. Those computers are the only one who can run Windows 10 without any lag, but i guess that only will be for a day, then the 12 PM updates will make it get sick...
Or justly try the same but in a way that don't be so laggy, likely trying to divide a block in 4 pieces, and try to test that as mass. Don't start by the big, start by the little, so everything becomes easier to understand, and when you do a really powerful game you know better how everything works.
duane wrote:Add some goblins to your game. Not only will they steal torches, they'll mine out your constructions unless you watch them closely. And in some of my mods, they start fires on their own.
Hi, my username is azekill_DIABLO and i'm an exelent bug-maker(yeah...i know...i have a bad reputation)
azekill_DIABLO wrote:Stop breakin world with your goblins.
SegFault22 wrote:Maybe we should just forget about this until it becomes viable, and find some other way to remove torches reasonably (lantern which burns fuel like a furnace to produce light but said fuel lasting much longer, maybe?) or implement a more reasonable way to produce lighting (the lantern) while keeping torches, but nerf them so that they require one whole stick apiece to make (less like minecraft), their brightness decreases over time as they reduce burning due to running out of stuff to burn, and when they are done all that is left is a "torch stub" (half of a stick) that has to be recycled with that composting mod (possibly modified so that instead of dirt, it produces some material that is more rich in nutrients - possibly persuading an overhaul of how plants grow in soil, such that they remove nutrients in order to grow, and below a certain level the node transforms into a lesser node that has the same nutrient value, but takes longer for plants to remove nutrients, until finally "dirt dust" is reached, which has no nutrient value. Plants would have a chance to "request" nutrients from the soil, said soil having a chance to remove one from its nutrient value and make the plant grow one stage, and the chance that the soil will do that depends on what kind it is - compost is best, rich dirt is slightly lower, fertile dirt is somewhat lower, dirt is significantly lower, depleted dirt is much lower, and dust dirt doesn't do anything when the plant tries to take nutrients so nothing grows in it)
Is this too much?
MineYoshi wrote:I think that justly a computer can do all the math, but try to emulate a "reality" is something out of the range...
That idea of the plants is good, i should admit...
TumeniNodes wrote:.... and then right click with flint&steel to light them?
Me Me and Me wrote:TumeniNodes wrote:.... and then right click with flint&steel to light them?
I've wondered why torches are crafted with nothing that makes fire, like flint, but only with coal & sticks.
Hi, my username is azekill_DIABLO and i'm an exelent bug-maker(yeah...i know...i have a bad reputation)
TenPlus1 wrote:Would this help: viewtopic.php?f=9&t=15721
Users browsing this forum: Google [Bot] and 5 guests