====== NPCs ====== NPCs (Non-Player Characters) are friendly characters that assist the hero in Remixed Dungeon. ==== Description ==== NPCs are special characters that interact with the hero in beneficial ways. Unlike mobs, they don't attack the hero and often provide helpful services or information. ==== NPC Types ==== * **Shopkeepers** - Sell items and buy unwanted equipment * **Quest Givers** - Provide quests for rewards * **Guides** - Offer advice or special services * **Helpers** - Provide special assistance or effects ==== Common NPCs ==== * [[en:rpd:shopkeeper_npc|Shopkeeper]] - Sells items in shops * [[en:rpd:wandmaker_npc|Wandmaker]] - Creates and upgrades wands * [[en:rpd:ghost_npc|Ghost]] - Provides quests and information * [[en:rpd:imp_npc|Imp]] - Helps with various tasks * [[en:rpd:princess_npc|Princess]] - Important story figure * [[en:rpd:necromancer_npc|Necromancer]] - Specialized NPC for Necromancer class ==== Common Mechanics ==== * **Interactions**: NPCs can be talked to for services or information * **Services**: Various NPCs provide different services like selling, upgrading, or questing * **Locations**: NPCs appear in specific locations in the dungeon * **Story Elements**: NPCs often advance the game's narrative elements ==== Code References ==== * NPC Base Class: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/mobs/npcs/NPC.java|NPC.java]] - Base implementation * Character System: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/Char.java|Char.java]] - How all characters work * Interaction System: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/mobs/npcs/NPC.java#L40-L60|NPC interaction code]] - How NPCs interact * Sprite System: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/sprites/NPCSprites.java|NPC sprites]] - Visual representations * String Resources: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values/strings_all.xml|strings_all.xml]] - All NPC-related text ==== See Also ==== * [[en:rpd:mobs|Mobs]] * [[en:rpd:hero|Hero]] * [[en:rpd:shops|Shops]] * [[en:rpd:quests|Quests]] {{tag> rpd npcs characters }}