Skip to content

Incorrectish/Conquer-World

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installation

Requirements:

  1. Git
  2. Rust compiler
  3. Cargo

Installation instructions:
git clone https://github.com/Incorrectish/Conquer-World/ ./Conquer-World
cd Conquer-World
cargo run 

After running these three commands, you should see a screen like this: Tue Jan  3 03:49:58 PM PST 2023

You should also hear music playing. If you do, the process was successful. If not, you might have misentered one of the previous commands, or you may be missing either git, rustc, or cargo.


Player Abilities

Ability Description
Directions Press WASD to change directions
Movement Press the arrow keys to move in the corresponding direction
Melee Press M to deal damage in the direction you are facing
Slam Press Z to deal damage to all eight squares around you
Lightning Click a tile and press L to summon lightning
Projectiles Press Space to spawn a projectile that travels in the direction that the player is facing
Building Click a tile within one tile of the player and press B to build a wall on that square
Fire Press F to summon a wave of fire in the direction that the player is facing
Heal Press H to heal
Teleport Click a square and press T to teleport to that tile
Missiles Press X to spawn a missile that tracks the closest enemies to it and deals massive damage

Warning: The rest of this file contains massive spoilers for the game and mechanics. Don't read on if you want the most interesting experience











General Game Model

The game takes place on a 7x7 grid of "worlds", as shown below Tue Jan  3 03:54:11 PM PST 2023 Where M marks a mini boss and F marks a final boss. The player field of vision is one "world", and crossing a boundary shifts the field of vision into the next world Unlike most games, which are based on time, every mechanic in our game takes place around actions. Every single entity and object in the game takes one action for every action that the player takes. So for example, using an ability or moving up would be one action, and each enemy would make one move towards you and every projectile would make one move in it's intended direction.

World Generation

The program uses depth first search and probabalistic random generation to create unique lakes and mountains at runtime. Mountains are uncrossable by most enemies, and lakes are crossable by major enemies and projectiles. Further documentation is availible in the function gen_lakes in src/world.rs.

Enemies

There are 3 different types of enemies

Enemy Description
Chaser Relentlessly chases the player, and attacks the player with melees
Bomber Gets close to the player and explodes, dealing damage if the player is in the explosion radius
Major Chases the player, can move through walls, mountains, and lakes. Deals a lot of damage, but is larger and easier to damage

Player Abilities


Lightning
lightning
Projectiles
projectiles
Heal
heal
Invisibility
invis
Missile
missile
Teleport
teleport
Fire
fire


Bosses and Mechanics

Laser Grid Boss
lasergrid
Spawns grid of lasers with short activation time. Stay away from the lasers to avoid damage. Two types of enemies in this room, majors and bombers. Kill all enemies in the room to activate a boss damage phase. Repeat until boss is dead.

Chasing Boss
ChasingBoss
Relentlessly chases the player, spawns stun wels around the room. Stepping in a stun well temporarily prevents a player from acting. Stepping in the path of the boss provokes it to do a charge attack, which kills you if you get caught. It leaves behind a trail of fire which should be avoided. Damage the boss once it has charged into a wall. No enemies in this room.

SlidingLaser Boss
slidinglaser
The boss creates a full map range laser horizontally or vertically depending on the players position and creates a full map range laser and begins moving towards the player vertically or horizontally. Additionally, asteroids will spawn every few turns which linger for a couple of turns and do damage to the player if stood in. Once the boss has finished it's laser animation, a short damage phase will begin. Chasers and majors spawn in this room.

Blackout Boss
Blackout
Creates safe zones around the dungeon that the player must get into before the timer expires. If the player doesn't reach the zone by the time the blackout effect happens(timer expiring), the player will instantly die. Damage specific parts of the boss that glow yellow to activate this damage phase. Only chasers spawn in this room.


Final Boss
This boss is by far the hardest and it combines mechanics of all the previous bosses. The mechanics aren't shown, because the boss is an interesting surprise for players.

About

Cool Tile and Turn based 2 Dimensional Game

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages