-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
39 lines (39 loc) · 2.04 KB
/
Copy pathindex.html
File metadata and controls
39 lines (39 loc) · 2.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>evoTanks</title>
<script src="./evoTanks/bundle.js" charset="utf-8"></script>
<link rel="stylesheet" href="./assets/css/map.css">
<link rel="stylesheet" href="./assets/css/tank.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>
<!-- <img src ="../assets/img/snakes.png"/>
<img src ="../assets/img/snakes2.png"/> -->
<img src="./assets/img/logo.png" class="logo"/>
<div class="sub-title">
AI Tanks that improve as they play...
</div>
<div class="container">
<div class="controls">
<img src="./assets/img/controls.png" />
</div>
<div id="map">
</div>
<div class="scoreBoard">
Player:<div id="score0" class="red score">0</div>
Tanki:<div id="score1" class="blue score">0</div>
</div>
</div>
<div class="description">
<h2> What the heck is this? </h2>
<p> evoTanks is a cross between a 2d tank shooter game and a genetics simulation.
At its core it allows a human player to face off against a constantly improving AI.</p>
<h3> The AI </h3>
<p>At its base the Tanki's AI is built with path-finding(breadth first search), targeting, and bullet avoidance logic. On top of this, the AI also has a number of adjustable traits wich modulate its agressiveness, sensitivity to incoming bullets, and targeting range. For the first 10 rounds the game generates AI with randomly selected traits. After a base population has been established winning AI are allowed to pass on their genes sucessssive generations through a genetic inheritance algorithm. Overtime the AI i able to effectively adapt its behvaviour to a given style of play.</p>
<h3> The Map </h3>
<p>To insure an enjoyable user experience and to prevent the AI from stagnating at a local optimum, a new map is randomly generated for each round. Maps are randomly generated using a recusrive division algorithm.</p>
</div>
</body>
</html>