Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2 3

Author Topic: Earthsage; Physics-heavy platforming digging game thing project  (Read 6256 times)

Eagleon

  • Bay Watcher
    • View Profile
    • Soundcloud

WARNING: Long, rambling idea thread that isn't much use to anyone.

I've been toying with this idea on and off for a year or so, amongst several others, and recently it's gotten to the point in planning where I believe it might be possible the way I want it. There's no real programming that's been done on it yet - I really didn't want it to fizzle out after finding out that my vague planning is unworkable with the engine I had made. But I've started to create the skeleton of some parts of it, and since I very rarely post and mostly lurk, I thought I'd share with you guys what I'm doing (besides making a strong AI, but that's another thread)

Earthsage is (will be?) a heavily atmospheric game in which the player delves deep into an ancient crater that is inexplicably (for the sake of variety) not very geologically sensible; the tongue in cheek reason for this is that this is a potential mine for magical crystals, extremely valuable commodities that are not strictly legal for any but those the King gives permits to. The crystals constantly give off a field of energy which alters their environment in subtle ways. The idea is influenced heavily by Clonk Rage, Dwarf Fortress (of course), Liero, Falling Sand Game, and The Incredible Machine, to name a few.

In their natural form, the crystals don't do much. Maybe warm their surroundings a bit, or make plants grow faster. But when they're ground into lenses, prisms, and other forms, their powers are magnified and can be used in precise ways. For instance, one of the first tools the player will make is a melt-gun; a void crystal (which blocks and absorbs most energy put into it like a black hole, but can violently explode if too much is put in at once depending on its quality) is placed in front of a fire crystal lens, which is placed in front of a mana crystal. These activate passive forms like lenses with their own strength, and also carry a charge like a wire if placed between two other crystals. The void crystal is attached to a trigger mechanism lifting it out of the way when pulled, and the result is a finely focused thermal drilling tool.

The player has a skill called Engineering that gives you mostly randomly chosen ideas for inventions such as these that can be carried with you at all times, but you may also place crystals, lenses, prisms, etc manually in the environment, and they'll interact with each other in scripted ways. As the number of types of crystals are fairly limited, the system would be manageable, although extensive.

Your goals are your own - within the crater are other Sages that want the crystals there for their own use, as well as a great deal of riches in the form of metal ores, ampure (a very tough semicrystalline material used in this world for armor and decorative purposes), and the crystals themselves. There would be all sorts of underground features, from dank pools with strange subterranian toads living on their banks, to magma chambers created by large lodes of fire crystals in their center, to verdant caverns of slowly growing green life crystal. All crystals would influence the mood of their surroundings, glowing and mixing together with other light sources.

The surface would exist as a sort of testing ground; creatures there are mutated by the strange energies of the huge mana crystal at the center of the crater, more powerful than most of what you'd encounter underground, and there's a dragon waiting as one of the biggest challenges in the game. There's also merchants waiting just before the rim to deal with you, and if you can manage the engineering required, you can even sell them huge useless blocks of dirt by dropping them onto the wagon they've parked by the edge. If you manage to break it they'd come after you.

Which brings us to the next big part of the game, and the one that would probably be the most difficult to implement - the terrain can fall and roll around, crushing whatever is beneath it, melting in heat, dissolving in acid, etc. etc. Now, anyone can dream of something like this, but I believe I have a way that it might be possible.

To start with, the whole map (which is very, very large. Think on the order of 25 km wide and down an arbitrary amount) is compressed using BSP techniques. The map would not be pregenerated; instead, as you dug there would be a certain (small) chance that you encountered a new feature appropriate to what area you're in. The feature would then be placed in a way that didn't impact what was already there. This way, I could have areas with active conflicts as the player enters them, but if he waited too long one side of the conflict wouldn't have dominated before he got there.

The map is composed of block tiles that are traversed smoothly by players and enemies; in-memory position data is kept track on a rougher per-tile basis, and as entities move they cycle their x,y positions from 0 to 255 within the tile, but otherwise if the player went out of visual sight of an entity, its movements would become abstracted so that it didn't have to do all the acceleration and collision calculations all the time. Collision is not pixel-perfect; rather, each tile type (there are 32, counting two that objects never intersect) has a polygon defined past which the player or other objects may not move. The tile types I have laid out are here


this is a reduced-size guide I made for creating my tile sets - each tile set would contain up to eight variations in graphical style

For terrain that falls, I will be able to trace the outline of a multi-tile block and create a simple polygon that can then be passed to either my own or an external physics library. The tiles are eliminated and an image is generated that falls and rotates with the new entity. The best part about this is that I only need to store three bytes of information per static tile: what block type it is (I have 3 bits left over after the 5 I use for terrain information), what material it is, and how much damage has been done to it. The rest (crystal effects, heat, etc) can be handled more sparsely, as for the most part these are rare, localized events.

There's more I've written down for all this, but I've rambled long enough. I had wondered if anyone was interested in something like this. Not that I'm motivated much by that (there's no guarantee I'll stick with this long enough to put all the planned features, or even make it playable :P), but Bay12's forums are a diverse place, and I think that feedback from it is likely to be valuable :)
Logged
Agora: open-source, next-gen online discussions with formal outcomes!
Music, Ballpoint
Support 100% Emigration, Everyone Walking Around Confused Forever 2044

inaluct

  • Bay Watcher
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #1 on: April 19, 2009, 07:08:27 pm »

It sounds great! The only issue I can think of might be a lack of enough simple objects to make with the crystals. The melt gun, for instance, requires three crystals of specific types. The player would have to hunt around for those three if they wanted a melt gun. I think that the idea would benefit from having other things that are functionally similar to the melt gun but don't use that combination of crystals be available.
Logged

The Mad Engineer

  • Bay Watcher
  • Tock.
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #2 on: April 19, 2009, 07:17:45 pm »

Forget just mining, etc.

If you could manage the terrain collapse, you could create a worms-esque system.  Make a huge death lazer that slices the terrain in half, collapsing everything above it.  Create a terrain generater engine, making walls to ward off enemies.

If you really went in depth with the system, maybe you could simulate the generation of stalagtites/mites...

Hard-to-implement-yet-cool idea: With the crystals, instead of assigning presorted machines that you can build with them, assign them an EFFECT (This crystal focuses light in this direction, this crystal creates heat, this crystal causes grass to grow).  If the player wants to create a lazer-powered stomping machine, they have to invent it themselves. It would create a larger sense of satisfaction and sandbox experience.


This is a fantastic idea you've got, btw...

Gunner-Chan

  • Bay Watcher
  • << IT'S TIME >>
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #3 on: April 19, 2009, 07:28:41 pm »

You should get together with the procedural caves guy, this concept plus his generator would be very awesome.
Logged
Diamonds are combustable, because they are made of Carbon.

Eagleon

  • Bay Watcher
    • View Profile
    • Soundcloud
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #4 on: April 19, 2009, 08:16:16 pm »

You should get together with the procedural caves guy, this concept plus his generator would be very awesome.
I saw his thread; it kind of startled me because I was poking at working at the same thing at the time. I honestly am learning this stuff as I go. The idea I was turning around in my head was to take a perlin noise layer, subject it to some sort of contour lines filter, choose one loop in the resulting image, and convert it to a polygon that could be used to pick which tiles to draw. That's a ways away though; first I have to get a foundation that uses the tiles I laid out as options to refuse to generate things in a way that doesn't look like random crap. They all have to flow together properly or else bits of the graphics in the terrain will have straight edges, and that's not the visual style I want. The first test of this will probably be the mouse being used to draw acceptable terrain like a paint program.

Forget just mining, etc.

If you could manage the terrain collapse, you could create a worms-esque system.  Make a huge death lazer that slices the terrain in half, collapsing everything above it.  Create a terrain generater engine, making walls to ward off enemies.

If you really went in depth with the system, maybe you could simulate the generation of stalagtites/mites...

Hard-to-implement-yet-cool idea: With the crystals, instead of assigning presorted machines that you can build with them, assign them an EFFECT (This crystal focuses light in this direction, this crystal creates heat, this crystal causes grass to grow).  If the player wants to create a lazer-powered stomping machine, they have to invent it themselves. It would create a larger sense of satisfaction and sandbox experience.


This is a fantastic idea you've got, btw...

Thanks ^^ That's really what I was originally going for with the crystals. What I'd really like to see is something in the spirit of those crazy people that have tried to make basic computers within DF. I've always loved electronics and stuff, and I wanted to make some crystals act as capacitors, resistors, transistors, even (maybe) logic gates. Ideally there would also be stuff that isn't quite possible in the real world too, like paired sympathetic crystals transferring an effect at very large distances, or stuff that plays a little with the physics. I want the very largest of void crystal explosions to suck off bits of the surrounding terrain and make lasting areas of altered gravity.

It sounds great! The only issue I can think of might be a lack of enough simple objects to make with the crystals. The melt gun, for instance, requires three crystals of specific types. The player would have to hunt around for those three if they wanted a melt gun. I think that the idea would benefit from having other things that are functionally similar to the melt gun but don't use that combination of crystals be available.

Yeah, that still needs a little exploration. You should be able to buy crystals from other Sages using the money you've earned from mining (you'd start with a simple pick that can also be used as a weapon), and the ones near the crater's edges would really be the friendliest to deal with. I've also considered a territory system for the AI; other Sages really wouldn't like you encroaching on their dig site and stealing their crystals. This should be fairly simple to apply - entities that create territories would make invisible markers in each large block as they dig or move around.
Logged
Agora: open-source, next-gen online discussions with formal outcomes!
Music, Ballpoint
Support 100% Emigration, Everyone Walking Around Confused Forever 2044

Hawkfrost

  • Bay Watcher
  • It's way too late to stop.
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #5 on: April 19, 2009, 08:27:03 pm »

Sounds like a great idea, I hope something comes out of it.

Will there be a good diversity in monsters, underground features and tools/weapons?
Logged

Eagleon

  • Bay Watcher
    • View Profile
    • Soundcloud
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #6 on: April 19, 2009, 08:44:57 pm »

That was the plan :3 It'd be very atmosphere oriented with a lot of diversity in environment, despite being underground, and it's you against whatever nastiness you encounter. I definitely would put in a decent amount of sharp things, hehe. I think that it's not too implausible to have material types (and thus terrain) be moddable, along with feature generation. Now that I think of it, material type per-block can be stored as a pointer to its definition, so my previous self-limit of 256 material types isn't that important after all.

I think I'd eventually go ahead with the polygon-from-potentially freehand lines idea so that people can just input an outline of an underground bunker if they wanted to, make a feature definition with some conditions on its possible placement as well as what spawns inside it where, and have python scripts control what material each block is set as; the simplest would just set it all as one material, but you could also make it look for specific features mathematically, or bleed in some of the terrain the player dug through part of the way in.
Logged
Agora: open-source, next-gen online discussions with formal outcomes!
Music, Ballpoint
Support 100% Emigration, Everyone Walking Around Confused Forever 2044

Poltifar

  • Bay Watcher
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #7 on: April 20, 2009, 03:01:40 am »

You mentioned something about other metals and resources being found in the crater. It would be nice if the player could also mine those, like gold and silver, to fund their purchases of other stuff from the merchants. Even better, it would be great if metals like iron or the 'ampure' you mentioned could be used in contraptions they make.

Also, any plans to make this game multiplayer (in the long run)?
Logged
Quote
<@Poltifar> yeah i've played life for almost 23 years
<@Poltifar> i specced myself into a corner, i should just reroll
<@Akroma> eh
<@Akroma> just play the minigames until your subscription runs out

Eagleon

  • Bay Watcher
    • View Profile
    • Soundcloud
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #8 on: April 20, 2009, 09:17:12 am »

I don't really know yet. I'll try to keep the procedures and objects general enough that it's possible. There are bound to be at least some issues with the movement abstractions, and cheating might be a problem. How big these are is an unknown. But the structure seems to lend itself well to it - you have two edges if you're looking at the crater from the side, after all. The players could be from competing nations, or even different races. Plans were to include an ancient formian nest as a competing force deep underground, and their surface-dwelling descendents might want to go down and say hello. They could team up and dig together, or make traps and automated defenses and gradually dig towards each other for a big final conflict. It'd be nice to have.
Logged
Agora: open-source, next-gen online discussions with formal outcomes!
Music, Ballpoint
Support 100% Emigration, Everyone Walking Around Confused Forever 2044

Bromor Neckbeard

  • Bay Watcher
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #9 on: April 22, 2009, 05:01:35 pm »

Sounds intriguing.  I like the idea of a game with the physics emphasis of, say, Worms or Cortex Command and the "exploring the underground" aspect of Dwarf Fortress.  If you get this into a playable state, I'll be glad to help you beta-test it.  I hope more comes of this than just a forum topic, because it's a fine idea.
Logged

sonerohi

  • Bay Watcher
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #10 on: April 23, 2009, 04:14:29 pm »

If the King himself is making this happen, he'd want it done right, right? So could bases be made, and staff hired, to help you persist? So instead of having to learn armorsmithing for yourself, you could hire a blacksmith.

A way to counter it is to limit the blacksmith 2-3 levels below the player, and instead of one of those 'instant making abilities' posessed by the players, he requires you to come back and get it later.
Logged
I picked up the stone and carved my name into the wind.

filiusenox

  • Bay Watcher
  • Prince of Light
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #11 on: April 26, 2009, 12:56:07 am »

Bloody hell.I was looking for a game like this.
Logged
"No, I'm being obstinate for the sake of I hate you."

Eagleon

  • Bay Watcher
    • View Profile
    • Soundcloud
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #12 on: April 27, 2009, 02:39:35 pm »

If the King himself is making this happen, he'd want it done right, right? So could bases be made, and staff hired, to help you persist? So instead of having to learn armorsmithing for yourself, you could hire a blacksmith.

A way to counter it is to limit the blacksmith 2-3 levels below the player, and instead of one of those 'instant making abilities' posessed by the players, he requires you to come back and get it later.

Permits are for any kind of use of the crystals at all. They're to keep the kingdom's supply high, limiting exports, and to somewhat keep track of the largest concentrations, as they're an extremely valuable commodity in warfare. They're not as unusual to have as a knighthood, but they are a status symbol.

The explanation for your own presence is that you received a permit due to a display of ingenuity in one of several fields that caught the attention of one of the king's Sages, and at least an outward appearance of loyalty to the King. No one expected you to actually use it for anything but a mundane business, as for the most part expeditions to the crater and other mines are funded by much more powerful entities, if they're funded at all. The place is very, very dangerous after all, especially near the center. It's also in the territory that the Kingdom has been putting peaceful exiles in for a hundred years or so back, which is starting to bite the king in the ass as they get more organized.

But yeah, I guess I can see hiring NPCs somehow. I don't want things to become too close to DF, but if I'm going to have autonomous Sage npcs, I might as well take advantage of the work that would have to be done to allow for that. He's going to want to be paid more than he'd make on his own in a safer place, though, and you'd have to send word back home somehow with the traders, saying you're looking for skilled labor.

News from the front: Work is happening on this. I have a classification system for the tiles which should make writing code to use them easier, I've made a writeup for what the tutorial for making graphics files might look like (to be released, as I haven't decided what all will be included or even how they'll be handled yet), and I've found what looks like something that might work for a physics library to build on: Box2D (http://www.box2d.org/index.html). I'd be doing some work on it myself, as it's not enough for fluids or attractive/repellant forces, but I'm looking at the code when my mind starts rejecting the other work I'm doing, hehe.
Logged
Agora: open-source, next-gen online discussions with formal outcomes!
Music, Ballpoint
Support 100% Emigration, Everyone Walking Around Confused Forever 2044

Eagleon

  • Bay Watcher
    • View Profile
    • Soundcloud
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #13 on: May 01, 2009, 10:41:50 pm »

UPDATE:
BljdgnkirngilksjASJIFSLJKGNKJ GDSD OH GOD THE MATHS

Ahem.

There are some problems with how I wanted to do the tiles. Namely, rather than 32 tiles as I originally planned for, seamless digging without convoluted and unrealistic terrain smoothing requires upwards of 36 more tiles. This means more artistic work to create tilesets, more work to make the generators for the terrain, more work to make sure everything meshes absolutely smoothly (kinda), draws properly (probably), and translates to physics objects well (definitely).

In other words, a hell of a big headache that probably wouldn't look any better than if I just used a texture with alpha maps for tiles instead.

So that's what I decided to do, going with my original plan to have each tile use two bits per quadrant for how it's been mined. That is, before realizing that it still leaves a great deal of work in regards to terrain generation and translating the whole thing to polygons, not to mention making sure it snaps to surrounding terrain properly as it's dug away. As I mentioned in the first post, I have other things I'm working on, so I could either spend months getting these very basic mechanics ready, then several more months creating acceptable environment definitions to generate terrain, or I can reduce the complexity of the system.

If anyone thinks they can come up with an elegant solution for making the quad-based tiles work, I'm open to discussing it. Otherwise, I'm doing myself and future development in this a favor by reducing the tiles to being based on which sides have been mined instead.

This means that there will be sixteen tiles per tile page. Each side represents an isosceles right triangle out of the whole square.

Spoiler (click to show/hide)

It's sadly clunky, but it allows for actual textured graphics, which means there can be stuff done to make it less ugly hopefully. Since there are so few tiles, it'd be much easier work to create many variations in the terrain, and even transitions between different terrain types (something I was dreading). It also has the advantage of using only four bits(!) per tile, meaning I can use the other four bits left in the byte-per-tile to store other information.

And it will allow me to proceed with actually developing the damned thing :P

Other ponderings - Box2d seems to allow for ropes. This makes me dream of a piton gun; shoot one end into an anchor point, shoot the other into a physical object like a block of terrain or an enemy, and it'll swing around with appropriate force. If it's too heavy, it could yank the piton out at either end (if fired from too far away) or break the rope. Fun! Lots of possibilities there.
« Last Edit: May 01, 2009, 10:48:42 pm by Eagleon »
Logged
Agora: open-source, next-gen online discussions with formal outcomes!
Music, Ballpoint
Support 100% Emigration, Everyone Walking Around Confused Forever 2044

LegoLord

  • Bay Watcher
  • Can you see it now?
    • View Profile
Re: Earthsage; Physics-heavy platforming digging game thing project
« Reply #14 on: May 01, 2009, 11:07:49 pm »

This sounds so freakin' sweet!  Magic laser drills!  You won me over with that.  Seriously, this is an awesome idea and I hope progress on it goes well for you.
Logged
"Oh look there is a dragon my clothes might burn let me take them off and only wear steel plate."
And this is how tinned food was invented.
Alternately: The Brick Testament. It's a really fun look at what the bible would look like if interpreted literally. With Legos.
Just so I remember
Pages: [1] 2 3