Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Planet generation #57

Merged
merged 10 commits into from
Jul 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
178 changes: 178 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@ bindgen = "0.69.4"
http = "1.1.0"
bytes = "1.6.0"
http-body-util = "0.1.2"
nalgebra = "0.33.0"
v = "0.1.0"
rayon = "1.10.0"

[[bin]]
name = "horizon"
Expand Down
2 changes: 1 addition & 1 deletion PebbleVault
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ Horizon implements a robust event propagation mechanism to facilitate communicat

#### Coordinate Management and Region Mapping

- **Spatial Coordinates**: Horizon uses a 64-bit floating-point coordinate system to manage server positions within a simulated universe. Each server instance covers a cubic light year, and coordinates are stored relative to avoid overflow issues.
- **Spatial Coordinates**: Horizon uses a 64-bit floating-point coordinate system to manage server positions within a simulated universe. Each server instance covers a cubic light year, and coordinates are stored relativistically to avoid overflow issues.

- **Region Mapping**: Servers are organized into a grid-based region map, where each region corresponds to a specific set of spatial coordinates. This mapping enables efficient routing of events between servers, as servers can quickly determine which neighboring servers should receive specific events based on their region coordinates.

Expand Down
2 changes: 1 addition & 1 deletion TerraForge
37 changes: 37 additions & 0 deletions planned-modules.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
## Modules

### SentientCore
**Description:**
SentientCore serves as the foundational framework for managing non-player character (NPC) behavior and decision-making within the game world. It includes sophisticated algorithms for NPC movement and pathfinding, crucial for creating believable and interactive NPCs. The module implements complex AI behaviors using behavior trees, allowing NPCs to respond dynamically to player actions and environmental changes.

### BotDirector
**Description:**
BotDirector is responsible for managing bots across various game modes. It handles tasks such as deploying bots to practice scenarios, replacing missing players temporarily, or balancing teams in competitive modes. This module ensures that bot behavior aligns with game objectives and provides a seamless experience for players interacting with bots.

### GuildComms
**Description:**
GuildComms focuses on creating and managing guilds or clans within the game. It provides dedicated chat channels for guild members to communicate effectively. The module also supports scheduling and managing guild events, activities, and resources, fostering community interaction and cooperation among guild members.

### BidMaster
**Description:**
BidMaster is a framework designed for managing in-game auctions and bidding processes. It facilitates the creation, management, and closure of auctions for various items or services within the game economy. This module ensures fair and transparent bidding mechanics, contributing to a vibrant player-driven market environment.

### RecipeSmith
**Description:**
RecipeSmith handles the intricate mechanics of recipes and crafting within the game. It manages crafting resources, materials, and recipes required for creating items or enhancing player capabilities. The module also oversees crafting queues and timing, ensuring that players can engage meaningfully in the crafting process without overwhelming server resources.

### WeatherWeaver
**Description:**
WeatherWeaver simulates dynamic weather patterns and their impacts on gameplay. It generates weather conditions such as rain, snow, storms, or clear skies based on in-game environmental factors. This module adds depth to gameplay by introducing weather-related challenges and opportunities that players must navigate and adapt to.

### Chronos
**Description:**
Chronos manages day and night cycles within the game world. It controls the passage of time, influencing gameplay elements such as visibility, NPC behavior patterns, and resource availability. The module ensures that day-night transitions occur smoothly, enhancing immersion and strategic planning for players.

### SkillScript
**Description:**
SkillScript implements character skills and progression systems within the game. It defines and manages skill trees, abilities, and character development paths that players can pursue. The module tracks skill progression, calculates skill effects, and facilitates the customization of player characters based on their chosen gameplay styles and preferences.

### HomeStead
**Description:**
HomeStead focuses on creating and managing player-owned houses, properties, or bases within the game universe. It provides tools for players to acquire, customize, and maintain their virtual homes. The module supports features such as property auctions, decoration options, and functionalities that enhance the personalization and investment of players in their in-game residences.
Loading
Loading