Class TutorialIsland
java.lang.Object
games.stendhal.server.maps.quests.AbstractQuest
games.stendhal.server.maps.quests.TutorialIsland
- All Implemented Interfaces:
IQuest
Creates a sandboxed map for new players to progress through
a tutorial scenario. Player will be teleported to island on
login automatically if this quest has not been completed.
TODO:
- create JUnit test
- finish NPC interaction step
- teach about buying/selling
- teach about questing
- teach about producing
- create item usage tutorial step
- teach about using healing items
- teach about using scrolls
- teach about using tools
- teach about equipping items
- create combat tutorial step
- teach about stats
- teach about weapon rate
- teach about targeting
- teach about ranged attacks
- teach about element susceptibilities
- teach about status effects & status resistant items
- create tool usage tutorial step
- teach about fishing
- teach about mining
- teach about harvesting
- create pets tutorial step
- create chat commands tutorial step
- create achievement for finishing tutorial
- create admin script to reset/restart tutorial
- rewared karma for completing tutorial
- check if player is new & make sure all equipment & items are removed
- can detect if player is new by checking visited zones
- make sure new players are teleported directly to tutorial island &
not to int_semos_guard_house or int_semos_town_hall
- give new players weapon & armor after tutorial is complete
- make sure any items given to player during tutorial have itemdata
and are removed from player & ground when tutorial is finished
- handle player dieing in tutorial zone
- make visible in travel log
-
Field Summary
Fields inherited from class games.stendhal.server.maps.quests.AbstractQuest
npcs, questInfo -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidadds the quest to the game world (e.g.voiddismantleIsland(Player player) getHistory(Player player) Gets a the quest history for the given player, written in the first person.getName()Returns the name of the quest.Returns the starter NPC for the quest, or null if there is noneThe slot-name in !quests.booleanDenotes whether quest details should be included in travel log.voidstartTutorialForPlayer(Player player) Methods inherited from class games.stendhal.server.maps.quests.AbstractQuest
fillQuestInfo, fillQuestInfo, fillQuestInfo, fillQuestInfo, getCompletedCount, getFormattedHistory, getHint, getMinLevel, getQuestInfo, getRegion, isCompleted, isRepeatable, isStarted, isVisibleOnQuestStatus, removeFromWorld, updatePlayer
-
Constructor Details
-
TutorialIsland
public TutorialIsland()
-
-
Method Details
-
addToWorld
public void addToWorld()Description copied from interface:IQuestadds the quest to the game world (e.g. by placing SpeakerNPCs there)- Specified by:
addToWorldin interfaceIQuest- Specified by:
addToWorldin classAbstractQuest
-
getHistory
Description copied from interface:IQuestGets a the quest history for the given player, written in the first person.- Parameters:
player- Player- Returns:
- list of history item-names
-
isVisibleOnQuestStatus
public boolean isVisibleOnQuestStatus()Description copied from class:AbstractQuestDenotes whether quest details should be included in travel log. Override to create custom checks.- Specified by:
isVisibleOnQuestStatusin interfaceIQuest- Overrides:
isVisibleOnQuestStatusin classAbstractQuest- Returns:
- `true` if details should be included.
-
getSlotName
Description copied from class:AbstractQuestThe slot-name in !quests.- Specified by:
getSlotNamein interfaceIQuest- Specified by:
getSlotNamein classAbstractQuest- Returns:
- the slot's name
-
getName
Description copied from interface:IQuestReturns the name of the quest.- Specified by:
getNamein interfaceIQuest- Specified by:
getNamein classAbstractQuest- Returns:
- name
-
getNPCName
Description copied from class:AbstractQuestReturns the starter NPC for the quest, or null if there is none- Specified by:
getNPCNamein interfaceIQuest- Overrides:
getNPCNamein classAbstractQuest- Returns:
- NPC name, or null for quests with no starter NPC
-
startTutorialForPlayer
-
dismantleIsland
-