summaryrefslogtreecommitdiff
path: root/README
blob: 71547bda9339936ccf7d7181eb7b259bc1792fe9 (plain)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
 -*- org -*-

* Lisparuga

  An Ikaruga demake created for the [[https://itch.io/jam/spring-2016-lisp-game-jam][Spring 2016 Lisp Game Jam]].

** Gameplay

   Lisparuga is a minimalistic Ikaruga clone.  The player can switch
   between a light ship and a dark ship with the push of a button.
   Bullets are either light or dark.  When the player is light, dark
   bullets kill and light bullets are absorbed.  Vice versa when the
   player is dark.  Dark bullets deal 2x damage to light enemies and
   vice versa.

   For simplicity, the player will fight waves of enemies with a boss
   fight at the end.  The next wave enters when the current wave has
   been defeated.

** Requirements

   - [[https://gnu.org/s/guile][GNU Guile]] 2.1.2 or greater
   - [[https://dthompson.us/pages/software/sly.html][Sly]] 0.2.0 or greater

** Building and running

   Lisparuga uses the GNU build system, so building is
   straightforward:

   #+BEGIN_SRC sh
     ./configure
     make
     ./pre-inst-env guile game.scm
   #+END_SRC

** Graphic design

   All graphics use the Dawnbringer 16 color palette.

*** Player sprite

    The player sprite is 16x16 and has 3 frames: moving forward,
    moving left, moving right.

*** Enemy sprites

    Each enemy sprite has only 3 frames.  The first two are the normal
    sprite frames.  Two frames are used so that the enemy can
    "breathe" and appear as if it's moving and isn't just static.  The
    third frame is flashed when the enemy has been hit by a bullet.

*** Explosion sprites

    Need both small and large explosion animations.  Perhaps some
    explosion animation on OpenGameArt can be recolored.

** Design resources

   http://shmuptheory.blogspot.com/2010/02/anatomy-of-shmup.html
   http://www.gamasutra.com/blogs/AttilioCarotenuto/20150930/254963/Designing_smart_meaningful_SHMUPs.php