Skip to content

Commit fe175ef

Browse files
committed
README and difficult adjustements
1 parent 19a0afe commit fe175ef

File tree

7 files changed

+82
-13
lines changed

7 files changed

+82
-13
lines changed

Extras/horarios.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -138,11 +138,11 @@ Ma 30
138138
Mi 31
139139
- 2 niveles mas, y sistema para que el nivel pueda predefinir defensas - 3:00 hs
140140
- seleccion de niveles y easyTouchButton - 1:10 hs
141-
- Arreglar compilacion para android botones tactiles, despues de 8 horas - 30 min
142-
- Resolucion adaptable y pantalla completa en android - 1:50
141+
- Arreglar compilacion para android botones tactiles, despues de 8 horas - 0:30 hs
142+
- Resolucion adaptable y pantalla completa en android - 1:50 hs
143143
- En game over la aplicacion se cierra - 0:45 hs
144-
- arreglar zoom con dos dedos - 21:00
145-
- explicacion del juego y posteo en reddit
144+
- arreglar zoom con dos dedos - 0:50 hs
145+
- explicacion del juego y posteo en reddit y dificultad aumentada - 21:50
146146
- Despues de ganar/perder no se pueden poner torres NO SOLUCIONADO- 1:40 hs
147147

148148
# Cosas que estoy posponiendo

README.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# Robolve
2+
**A tower deffense game with robots, that evolve.**
3+
4+
Robolve is not finished yet, it's a prototype for a personal project, so be
5+
aware of crazy robots walking away to who-knows-where, and other strange things.
6+
7+
## What is?
8+
9+
Robolve is a tower deffense game, in which the robot waves are generated through
10+
a [*"Genetic Algorithm"*](http://www.ai-junkie.com/ga/intro/gat1.html), so the
11+
waves adapt to your deffenses, and you can adapt to the waves customizing your
12+
deffenses. (e.g. if you have many fire deffenses, the waves will start to turn
13+
to the water element, because water > fire)
14+
15+
## What is a genetic algorithm?
16+
17+
A genetic algorithm, to make it short, is a specific kind of algorithm that
18+
shines in finding solutions to dynamic problems, where the problem is always
19+
changing (In this case the problem is the player), it is not used to get
20+
deterministics results (like solving a lineal ecuation), but to obtain a good
21+
enough aproximation to the solution.
22+
23+
There are called Genetic because they try to imitate the behaviour of evolution
24+
having individuals (possible solutions), that have a certain level of adaptation
25+
(how good they are), and this individuals are combined between them following
26+
the survival of the fittest approach (better solutions pass down their genes
27+
to the next generation).
28+
29+
In robolve, the robots are the individuals, the waves are the generations, and
30+
how good the robots perform is the level of fitness. The genes in the robots are
31+
their parts, their elements, their attack speeds, their damage, all their stats.
32+
33+
To know more about genetic algorithms read this three page article:
34+
[http://www.ai-junkie.com/ga/intro/gat1.html](http://www.ai-junkie.com/ga/intro/gat1.html)
35+
36+
## How to play / Downloads
37+
38+
For now you can play Robolve in this ways:
39+
- **Android:** greater than 4.4, download and install the .apk:
40+
[https://mega.nz/#!x1sCWTqa!8gTskCOKfjAIRRLTMiWEkXDdbpI4PScUJJTgnQY2l2A](https://mega.nz/#!x1sCWTqa!8gTskCOKfjAIRRLTMiWEkXDdbpI4PScUJJTgnQY2l2A)
41+
- **Linux:** 64 bits, download the zip, extract and run the "MyGame" executable: [https://mega.nz/#!BxtCnDCI!PJtK1mmMecXWf2RSVjhHrYcearF9X6uGJ_BvAPURjJc](https://mega.nz/#!BxtCnDCI!PJtK1mmMecXWf2RSVjhHrYcearF9X6uGJ_BvAPURjJc)
42+
- **Browser:** firefox/chrome, you can play robolve directly from this link: [robolve.tk](http://robolve.tk)
43+
44+
Note: robolve.tk refers to a Public dropbox folder, Public dropbox folders
45+
will be removed on October 3th this year (2016), so if I haven't update this
46+
readme by that time, let me know opening an issue.
47+
48+
There are currently 3 levels select one and play.
49+
- Placing a deffense costs $300
50+
- Modifying a deffense attribute costs $100
51+
- Destroying a turret gives you $50
52+
- Killing a robot gives you $30
53+
54+
There are 3 elements that act like rock, paper and scissors
55+
56+
*electric > water > fire > electric > water ...*
57+
58+
- A deffense with an advantaged element compared to the target robot, hits double damage
59+
- A deffense with a disadvantaged element compared to the target robot, hits half damage
60+
- A deffense with the same element as the target robot hits normally
61+
62+
The robots that have wheels are flying robots (Yup, thats right)
63+
The robot with normal legs are walking robots
64+
A turret can only hit one type of robot (flying or walkin), choose wisely
65+
66+
A final recomendation, after winning/loosing a level, it is better if you restart
67+
Robolve (close and open / reload the page) because there are still many bugs in the game
68+
69+
I hope you enjoy Robolve!

res/map/map1.tmx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<map version="1.0" orientation="isometric" renderorder="right-down" width="20" height="20" tilewidth="128" tileheight="64" nextobjectid="54">
33
<properties>
4-
<property name="wavesCounts" value="10,10,10,20,20,20,20,20,30,30,20,40,50"/>
5-
<property name="wavesIntervals" value="5,5,5,5,5,5,5,5,5,5,5,5,5"/>
4+
<property name="wavesCounts" value="10,10,20,20,25,25,28,29,30,34,36,38,40,50"/>
5+
<property name="wavesIntervals" value="10,5,5,5,5,5,5,5,5,5,5,5,5,5"/>
66
</properties>
77
<tileset firstgid="1" name="landscape" tilewidth="132" tileheight="132" tilecount="70">
88
<image source="tilesheet.png" width="924" height="1320"/>

res/map/map2.tmx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<map version="1.0" orientation="isometric" renderorder="right-down" width="20" height="20" tilewidth="128" tileheight="64" nextobjectid="54">
33
<properties>
4-
<property name="wavesCounts" value="10,10,10,20,20,20,20,20,30,30,20,40,50"/>
5-
<property name="wavesIntervals" value="5,5,5,5,5,5,5,5,5,5,5,5,5"/>
4+
<property name="wavesCounts" value="10,15,20,25,30,35,40,45,50"/>
5+
<property name="wavesIntervals" value="5,5,5,5,5,5,5,5,5"/>
66
</properties>
77
<tileset firstgid="1" name="landscape" tilewidth="132" tileheight="132" tilecount="70">
88
<image source="tilesheet.png" width="924" height="1320"/>

res/map/map3.tmx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<map version="1.0" orientation="isometric" renderorder="right-down" width="20" height="20" tilewidth="128" tileheight="64" nextobjectid="55">
33
<properties>
4-
<property name="wavesCounts" value="20,25,30,35,40,45,50,50,50,50,50,50,50"/>
5-
<property name="wavesIntervals" value="5,5,5,5,5,5,5,5,5,5,5,5,5"/>
4+
<property name="wavesCounts" value="20,25,30,50,50"/>
5+
<property name="wavesIntervals" value="5,5,5,5,5"/>
66
</properties>
77
<tileset firstgid="1" name="landscape" tilewidth="132" tileheight="132" tilecount="70">
88
<image source="tilesheet.png" width="924" height="1320"/>

src/game.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,7 +362,7 @@ var Level = cc.LayerGradient.extend({ // TODO Ir archivando historial de oleadas
362362
this.robots[i].removeFromParent();
363363
this.robots.splice(i, 1);
364364
deletion = true;
365-
this.base.money += 50;
365+
this.base.money += 30;
366366
this.hud.ig.refresh();
367367
}
368368
// if (deletion) {

src/robot.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ var Robot = cc.Sprite.extend({
1111

1212
//Possible (p) stats //TODO definir valores reales //TODO apply fuzzy logic
1313
pTurnProb: {0: 0.25, 1: 0.5, 2: 0.9},
14-
pLife: {0: 300, 1: 400, 2: 500},
14+
pLife: {0: 500, 1: 600, 2: 700},
1515
pElement: {
1616
"electric": cc.color(255, 231, 0 ,255),
1717
"fire": cc.color(227, 43, 0, 255),
1818
"water": cc.color(1, 179, 255, 255)
1919
},
2020
pRange: {0: 75, 1: 150},
2121
pTerrain: {0: 'walk',1: 'fly'},
22-
pSpeed: {0: 0.25, 1: 0.5, 2: 1.0}, //TODO PORQUE?!?!?! velocidades 0.88 - 0.93 traen el bug (0,10) Y velocidad 0.1, hace que para linux y android tengan tambien el bug, pero el javascript si.
22+
pSpeed: {0: 0.35, 1: 0.75, 2: 1.0}, //TODO PORQUE?!?!?! velocidades 0.88 - 0.93 traen el bug (0,10) Y velocidad 0.1, hace que para linux y android tengan tambien el bug, pero el javascript si.
2323
pDamage: {0: 5, 1: 15, 2:20},
2424
pAttackSpeed: {0: 0.5, 1: 1.0, 2: 2.0},
2525

0 commit comments

Comments
 (0)