Difference between revisions of "Castelian (NES)/Game Mechanics"

From SDA Knowledge Base

Jump to: navigation, search
(Created page with "==Difficulty differences== There are two difficulties in the game, "Novice" (default) and "Hero". * The molecule enemies move twice as fast on hero difficulty. This saves time...")
 
(Enemy behavior)
Line 14: Line 14:
  
 
==Enemy behavior==
 
==Enemy behavior==
The game can only store four enemies in memory at the same time (including the molecule). When an enemy goes below the screen, it gets de-spawned (exception being the molecule) and a new enemy can take its place when the screen has scrolled sufficiently in the vertical direction to reach its spawn point. The enemies always spawn in the same order and their spawn locations and movements are predictable with one exception. There is some variation to the initial movement of the destroyable ball enemies. What affects the triggering of their start of movement has not been described yet.<br /><br />
+
===Enemy spawning===
 +
The game can only store four enemies in memory at the same time (including the molecule). When an enemy goes below the screen, it gets de-spawned (exception being the molecule) and a new enemy can take its place when the screen has scrolled sufficiently in the vertical direction to reach its spawn point. The enemies always spawn in the same order and their spawn locations are always the same.
 +
 
 +
===Enemy movements===
 +
The movements are predictable with one exception. There is some variation to the initial movement of the destroyable ball enemies. What affects the triggering of their start of movement has not been described yet.
 +
 
 +
===The molecule===
 +
Whenever there are less than four enemies active in memory and the molecule is not one of them, a timer counts down every game frame (= every 3 actual frames) from 125 (decimal). When it reaches -1, the molecule will spawn.<br /><br />
  
 
==RAM-addresses==
 
==RAM-addresses==

Revision as of 14:45, 3 June 2019

Difficulty differences

There are two difficulties in the game, "Novice" (default) and "Hero".

  • The molecule enemies move twice as fast on hero difficulty. This saves time in some places and loses time in other places compared to novice difficulty. Overall, it favors playing on hero by a few seconds.
  • The in-game timer ticks down every 15 game frames (= 45 frames + random lag frames) on hero and every 20 game frames (= 60 frames + random lag frames) on novice. Since the timer is converted into points at the end of each tower, this favors hero difficulty by a few seconds over the course of a run (3 frames saved per avoided tick on the timer).
  • Extra lives are awarded every 5.000 points on Novice and every 10.000 points on Hero. This is unlikely to have any consequence for a speedrun though.

Overall, hero is clearly the faster of the two difficulties.

End-of-level countdowns

There are three countdowns after each level and each tick of countdown costs 3 frames (or more if random lag is added). The first one, the timer, is self-explanatory. The other two are:

  • Technique - Starts at 100 and is reduced by 2 for every hit.
  • Extras - Starts at 0. 5 is always added upon level completion and 2 is added for every destroyed enemy.


Enemy behavior

Enemy spawning

The game can only store four enemies in memory at the same time (including the molecule). When an enemy goes below the screen, it gets de-spawned (exception being the molecule) and a new enemy can take its place when the screen has scrolled sufficiently in the vertical direction to reach its spawn point. The enemies always spawn in the same order and their spawn locations are always the same.

Enemy movements

The movements are predictable with one exception. There is some variation to the initial movement of the destroyable ball enemies. What affects the triggering of their start of movement has not been described yet.

The molecule

Whenever there are less than four enemies active in memory and the molecule is not one of them, a timer counts down every game frame (= every 3 actual frames) from 125 (decimal). When it reaches -1, the molecule will spawn.

RAM-addresses

12A/122 - x/y of the main character
125/12B - x/y of enemy #1
126/12C - x/y of enemy #2
127/12D - x/y of enemy #3
128/12E - x/y of enemy #4
164 - molecule timer

The y-coordinates for the main character are different from the ones for the enemies, but this has no other effect than being a slight inconvenience from a practical point-of-view.

Personal tools