This commit is contained in:
nora 2023-04-18 15:45:35 +02:00
parent fa77644b0d
commit 2f5f7f5371
24 changed files with 0 additions and 165 deletions

View file

@ -1,44 +0,0 @@
diff --git a/src/tiles.rs b/src/tiles.rs
index 4b6288e..5e62b95 100644
--- a/src/tiles.rs
+++ b/src/tiles.rs
@@ -52,6 +52,7 @@ impl Bg {
h: 0,
},
layer: (),
+ blend_graphic: String::new(),
}
}
}
@@ -76,6 +77,7 @@ impl Mid {
h: 32,
}),
},
+ blend_graphic: String::new(),
}
}
}
@@ -92,6 +94,7 @@ impl Fg {
h: 0,
},
layer: (),
+ blend_graphic: String::new(),
}
}
}
@@ -145,6 +148,7 @@ where
pub graphic_name: String,
pub tex_rect: IntRect,
pub layer: Layer::SpecificDef,
+ pub blend_graphic: String,
}
#[derive(Debug, Inspect, Default, Serialize, Deserialize)]
@@ -179,6 +183,7 @@ where
graphic_name: Default::default(),
tex_rect: Default::default(),
layer: Layer::SpecificDef::default(),
+ blend_graphic: String::new(),
}
}
}

View file

@ -1,11 +0,0 @@
Tile
9 bits bg
9 bits mid
9 bits fg 32 bits
3 bits slope
2 bits fg state (0: fg has ore, 1: bg has ore, 2: both have ores)
5 bits liquid type
6 bits paint 16 bits
5 bits reserved

View file

@ -1,82 +0,0 @@
# Premise
- Evil source at bottom of playable map
- Evil is surging upwards
- Player is the one tasked with going to the bottom and destroying evil source
- Very long way to bottom
- Going deeper = main source progression
- Barriers to going deeper, gotta craft gear, etc. to be able to go deeper
- Tower defense elements, have to craft and set up defensive structures
# Details
## Timing
Timing is tick based.
Every frame is considered a tick.
The game is locked at 60 fps to simplify implementation.
## Scale
Player character is slightly below 1.5 m height.
1 meter = 2 blocks.
1 block = 0.5 meters.
Player character is about 3 blocks high. (slightly less so they fit comfortably)
## Map Size
World is roughly 100,000x100,000 blocks large.
I've done some measurements and I believe it's large enough that it should convey
the scale of digging very deep, which is what the game is about.
Layer below 30 km is the mantle (after which the game is named).
The evil source is at about 35 km.
The final goal is the evil source, so player is expected to mine about 35 km deep to beat the game.
1 meter = two tiles. 35 km = 70,000 tiles deep.
There could be some post-endgame content from 35-40 kms deep.
Very unbreakable bottom or lava lake or whatever is at 80,000 blocks (40 km) deep.
## Biomes
Only a few surface biomes
- At center is forest biome
- On one side:
- Jungle
- Desert
- On other side:
- Longer stretch of forest biome than other side
- Ice biome
All other biome variety should come from going deeper.
Progressively more difficult variants of each biome as you go down.
30 km is mantle level, at which point no ice or sand or such reaches.
It's all mantle level specific biomes all the way horizontally.
## Number of stuff
- At least 50 ore types + 50 gem/etc. types. Copper/Coal could be an ore-gem/etc. pair for example.
- On average, one new pair every 750 meters, up to 37 kilometers.
The last stretch of 3 km to the bottom is a "buffer zone" of no new content, just more of the same.
- The rate of new pairs could start out quicker, for example every 300 meters or so,
to make early-game less boring, but gradually become less frequent, up to a kilometer gap.
- At least 50 stone types
- Maybe background tiles and other stuff, like different break overlay animations
# Multiplayer
Multiplayer adds a lot of complexity, so I'm going to develop the prototype of the game without
any multiplayer support.
But if people like the general idea, they can help create a multiplayer version eventually.
# Crafting
- You need a workstation to be able to craft anything.
This incentivizes building bases and retreating to them, instead of the "nomad"
lifetyle many games of this kind allow.
- Most stations don't have inventory items that can be pre-crafted and placed.
Instead, they have to be constructed on the spot, taking construction time.
This discourages building makeshift crafting areas in the middle of nowhere.
# Supported platforms
- Windows
- Linux
Other platforms can be supported if community helps support them.

View file

@ -1,15 +0,0 @@
Various random ideas that aren't (yet) part of the design
- Character is 1.5 blocks tall
- Can crawl to fit inside 1 block tall gaps
- Multiple tile layers.
- Back layer
- Wall layer
- Ore/misc insert layer
- No world hopping.
Characters are worlds are linked together, like in Minecraft.
- No respawn after quit&save. Player character continues where it left off.

View file

@ -1,13 +0,0 @@
Game has different worlds you can generate.
Each world has its own folder.
Each folder has:
- Player file (player.dat)
- Subfolder for regions (regions/)
Each region subfolder has:
x.y.rgn files for each chunk, where x and y are the region coordinates.
# Regions
A region stores multiple chunks in a single file for more optimized storage.
Current plan is to store 8 chunks in a region, in other words, 1024*1024 blocks.
Around one million blocks, compressed with zstd compression.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 746 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 962 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 694 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 355 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
tiles.dat

Binary file not shown.