AllureOfTheStars / Allure

Allure of the Stars is a near-future Sci-Fi roguelike and tactical squad combat game written in Haskell; please offer feedback, e.g., after trying out the web frontend version at
http://allureofthestars.com
GNU Affero General Public License v3.0
211 stars 16 forks source link

Add NPC to first level to help guide new players #107

Open bulbousBullfrog opened 3 years ago

bulbousBullfrog commented 3 years ago

Create an NPC on first level with a short mysterious/cryptic message to give a hint to the player on how to escape. This came up as an idea after noticing that finding the blowtorch needed to open the welded door wasn't apparent for new players.

NPC should:

This helps to guide the player for the first lock-key task of leaving the first three floors; ensuring that upon seeing the unique with the same name will more likely encourage a battle for his item(blowtorch). The message could hint at the 'bumping' effect ubiquitous in roguelikes and should get the player interested in the item. At the same time it should be short, as there is already a lot of new information being presented to the new player, and the dialogue should not reveal too much information, which should motivate the player to find out more. Additional information on the NPC could be 'hidden' away in his lore, encouraging the user to find out more about the flavor and setting of the game.

Mikolaj commented 3 years ago

Perfect. Perhaps the unique can also reiterate that going up (the blocked stairs) is desirable (something nice is there, or just the way out). I've found some players just assumed the blocked stairs are where they came from and never to be unlocked, particularly that it ties into the roguelike habit of only going down. So, I image, some players, after talking to the unique, could check out the bocked stairs, read in its description again about the blowtorch and so remember the thing. We might even mention [placeholder name] in the welded stairs description if it's not too much.

Also, perhaps the unique could, rarely, talk on its own, e.g., ask the player to come closer --- it's spammy, but if the player decides to kill it from afar or never get close, then the lesson is lost. Such periodic messages are easy to implement in content. Harder (engine change) would be to react to ranged hits or to proximity. The easiest are to speak instead (or in addition) to own melee attacks.

Mikolaj commented 3 years ago

See also https://github.com/LambdaHack/LambdaHack/issues/184 and the Smiling Robot that recently started speaking a bit.

Mikolaj commented 3 years ago

With the speaking Smiling Robot, there are very many hints available, but the initial level unique is steel needed, even if not so desperately. Namely, if the player waltzes through the first 3 levels without reading any messages and without inspecting any tiles, he may still be stuck and wonder over the initial level looking for a clue, but not inspecting the blocked staircase nor looking at the other levels. In that case, only a stream of nagging messages on the very initial level has a chance to help him and that's the purpose of the NPC.

Best if there's some thematic relation to the Smiling Robot and if the messages are somehow not distracting and confusing when the player just starts the game and has no chance of opening the stairs. If that helps, we can assume the player characters have already hear the Smiling Robot on their way up, but didn't not investigate. Or they may have not heard him --- perhaps he was inactive at that time and only turned on by the ship activating and flying off. Perhaps the NPC is aware of the Smiling Robot or himself a servant robot, whether stationary or mobile, but not leaving the level (may be hard to code right now, but if needed, the content can be changed to enable that).