Adjusted audio events for earlier camp unlocks. Removed bass line for earlier versions of the camp song, reintroduce after chapter 2 is completed. Added placeholder Artificer sprite. Added Artificer dialog. Updated world map with a chapter 2 base location for convenience. Connect new connection points between map locations correctly. Adjust connection point unlock conditions and layer unlock conditions to their new chapter 2 levels. Release Build 10399.

removeExposedPackKey
sigonasr2 4 months ago
parent 7100bec234
commit 14bad7cf69
  1. 6
      Adventures in Lestoria/Adventures in Lestoria.tiled-project
  2. 3
      Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters
  3. 2
      Adventures in Lestoria/AdventuresInLestoria.cpp
  4. 26
      Adventures in Lestoria/Chapter 2.txt
  5. 22
      Adventures in Lestoria/Crawler_Artificer.txt
  6. 3
      Adventures in Lestoria/NPC.cpp
  7. 3
      Adventures in Lestoria/State_GameHub.cpp
  8. 30
      Adventures in Lestoria/State_OverworldMap.cpp
  9. 1
      Adventures in Lestoria/State_OverworldMap.h
  10. 2
      Adventures in Lestoria/Version.h
  11. 15
      Adventures in Lestoria/assets/Campaigns/Hub_v2.tmx
  12. 51
      Adventures in Lestoria/assets/Campaigns/World_Map.tmx
  13. 25
      Adventures in Lestoria/assets/config/NPCs.txt
  14. 5
      Adventures in Lestoria/assets/config/Player.txt
  15. 7
      Adventures in Lestoria/assets/config/audio/bgm.txt
  16. 1
      Adventures in Lestoria/assets/config/audio/events.txt
  17. 3
      Adventures in Lestoria/assets/config/levels.txt
  18. BIN
      Adventures in Lestoria/assets/npcs/Artificer.png
  19. BIN
      x64/Release/Adventures in Lestoria.exe

@ -268,7 +268,8 @@
"CAMPAIGN_2_B1", "CAMPAIGN_2_B1",
"BOSS_2", "BOSS_2",
"BOSS_2_B", "BOSS_2_B",
"STORY_2_1" "STORY_2_1",
"STORY_2_2"
], ],
"valuesAsFlags": false "valuesAsFlags": false
}, },
@ -472,7 +473,8 @@
"None", "None",
"Blacksmith", "Blacksmith",
"PotionCrafting", "PotionCrafting",
"TravelingMerchant" "TravelingMerchant",
"Artificer"
], ],
"valuesAsFlags": false "valuesAsFlags": false
}, },

@ -1154,6 +1154,9 @@
<ClCompile Include="PoisonBottle.cpp"> <ClCompile Include="PoisonBottle.cpp">
<Filter>Source Files\Bullet Types</Filter> <Filter>Source Files\Bullet Types</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="Chapter 2.txt">
<Filter>Configurations\Story</Filter>
</ClCompile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="cpp.hint" /> <None Include="cpp.hint" />

@ -335,7 +335,7 @@ bool AiL::OnUserCreate(){
GameSettings::Initialize(); GameSettings::Initialize();
#endif #endif
State_OverworldMap::SetStageMarker("starting_map_name"_S); State_OverworldMap::SetStageMarker("Player.Starting Location"_S);
STEAMINPUT( STEAMINPUT(
SteamInput()->Init(false); SteamInput()->Init(false);
Input::LoadSteamButtonIcons(); Input::LoadSteamButtonIcons();

@ -0,0 +1,26 @@
===ARTIFICER_INTRO===
{BACKGROUND commercial_assets/Forest Clearing Campsite_Day.png}
[Artificer]
Hello adventurer! Welcome to my artificing station! I have not met you yet, may I have the pleasure of knowing your name?
[You]
Hello, my name is [You].
[Artificer]
Excellent! Nice to meet you, [You]. At my station you have the ability to refine and fix up imperfect jewelry discovered while exploring!
Disassemble rings that are undesirable to you and retrieve fragments of them, then use the Refine station to empower your equipment further!
This should let you get some use out of all those extra rings you're carrying around, eh?
[You]
Great, I think I could make good use of this. Thank you.
===ARTIFICER_HELP===
[Artificer]
At this station you have the ability to refine and fix up imperfect jewelry discovered while exploring!
Disassemble rings that are undesirable to you and retrieve fragments of them, then use the Refine station to empower your equipment further!
You can make use of those extra rings you have been piling up!

@ -4,12 +4,32 @@ Artificer
- Unlocks an additional feature after Chapter 3 - Bonus Boss - Unlocks an additional feature after Chapter 3 - Bonus Boss
- Is available in the hub area - Is available in the hub area
Artificer unlocks after beating chapter 2 bonus boss.
Player heads to camp.
Camera pans over to the Artificer's station, and a new NPC appears there.
Then camera pans back over to the player
The leave buttons are disabled and a tutorial prompt to visit the artificer appears.
You go to the artificer and talk to them.
Artificer explains that your accessories' stats may not have reached their full potential yet and can be refined.
You can disassemble previously obtained rings to get ring fragments, then refine your rings to increase its power further.
Artificer: Hello adventurer! Welcome to my artificing station! May I have the pleasure of knowing your name?
[YOU]: Hello, my name is ____.
Artificer: Excelent! Nice to meet you, [YOU]. Here you have the ability to refine and fix up imperfect jewelry discovered along your journey!
Artificer: Break down rings that are undesirable to you to retrieve fragments, then use the Refining station to empower your equipment further!
Artificer: This will let you get use out of all those extra rings you may be carrying around, eh?
Artificer has 4 Dialog Options Artificer has 4 Dialog Options
- Repair/Enhance (Name may change in the future) - Repair/Enhance/(Refine?) (Name may change in the future)
- Disassemble - Disassemble
- Enchant (Requieres Chapter 3 - Bonus boss) - Enchant (Requieres Chapter 3 - Bonus boss)
- Help (Runs through the explanation again.)
- Leave - Leave
(Whichever is greater): Always go up by 20%/Always go up by 1
Enhancing Gear Enhancing Gear
- increases the stats of an item. - increases the stats of an item.
- Increases a random stat by a random amount that did not reach its cap. (cant go higher then 20% of its current amount in on Enhance attempt and cant go higher then the max stat value of the item) - Increases a random stat by a random amount that did not reach its cap. (cant go higher then 20% of its current amount in on Enhance attempt and cant go higher then the max stat value of the item)

@ -83,6 +83,9 @@ void Monster::STRATEGY::NPC(Monster&m,float fElapsedTime,std::string strategy){
}else }else
if(m.npcData.function=="TravelingMerchant"){ if(m.npcData.function=="TravelingMerchant"){
Menu::OpenMenu(MenuType::MERCHANT); Menu::OpenMenu(MenuType::MERCHANT);
}else
if(m.npcData.function=="Artificer"){
Menu::OpenMenu(MenuType::MERCHANT);
} }
} }
}else{ }else{

@ -68,6 +68,9 @@ void State_GameHub::OnStateChange(GameState*prevState){
} }
void State_GameHub::OnLevelLoad(){ void State_GameHub::OnLevelLoad(){
game->UpdateDiscordStatus("Camp",game->GetPlayer()->GetClassName()); game->UpdateDiscordStatus("Camp",game->GetPlayer()->GetClassName());
if(Unlock::IsUnlocked("STORY_2_2")){
Audio::SetAudioEvent("Chapter3Unlock");
}else
if(Unlock::IsUnlocked("STORY_1_3")){ if(Unlock::IsUnlocked("STORY_1_3")){
Audio::SetAudioEvent("Chapter2Unlock"); Audio::SetAudioEvent("Chapter2Unlock");
}else }else

@ -63,8 +63,10 @@ void State_OverworldMap::OnStateChange(GameState*prevState){
game->ResetCompletedStageFlag(); game->ResetCompletedStageFlag();
if(Unlock::IsUnlocked("STORY_1_3")){ justUnlockedChapter2=false;
if(Unlock::IsUnlocked("STORY_1_3")&&game->GetCurrentChapter()==1){
game->SetChapter(2); game->SetChapter(2);
justUnlockedChapter2=true;
} }
game->LoadLevel("WORLD_MAP"); game->LoadLevel("WORLD_MAP");
@ -74,6 +76,7 @@ void State_OverworldMap::OnLevelLoad(){
Menu::CloseAllMenus(); Menu::CloseAllMenus();
} }
game->GetPlayer()->ForceSetPos(currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16}); game->GetPlayer()->ForceSetPos(currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16});
if(justUnlockedChapter2)SetStageMarker("Player.Chapter 2 Unlock Set Location"_S);
playerTargetPos=currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16}; playerTargetPos=currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16};
game->GetPlayer()->UpdateWalkingAnimation(DOWN); game->GetPlayer()->UpdateWalkingAnimation(DOWN);
game->GetPlayer()->SetState(State::FORCE_WALK); game->GetPlayer()->SetState(State::FORCE_WALK);
@ -101,6 +104,7 @@ void State_OverworldMap::OnUserUpdate(AiL*game){
if(geom2d::line<float>(game->GetPlayer()->GetPos(),playerTargetPos).length()<2){ if(geom2d::line<float>(game->GetPlayer()->GetPos(),playerTargetPos).length()<2){
game->GetPlayer()->SetPos(playerTargetPos); game->GetPlayer()->SetPos(playerTargetPos);
}else{ }else{
game->GetPlayer()->SetAnimationBasedOnTarget("WALK",playerTargetPos);
game->GetPlayer()->SetPos(game->GetPlayer()->GetPos()+util::pointTo(game->GetPlayer()->GetPos(),playerTargetPos)*playerMoveSpd*game->GetElapsedTime()); game->GetPlayer()->SetPos(game->GetPlayer()->GetPos()+util::pointTo(game->GetPlayer()->GetPos(),playerTargetPos)*playerMoveSpd*game->GetElapsedTime());
} }
} }
@ -116,18 +120,6 @@ void State_OverworldMap::OnUserUpdate(AiL*game){
if(mouseUsed){ if(mouseUsed){
UpdateCurrentConnectionPoint(cp); UpdateCurrentConnectionPoint(cp);
playerTargetPos=currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16}; playerTargetPos=currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16};
float angleTo=util::angleTo(game->GetPlayer()->GetPos(),playerTargetPos);
if(angleTo>=-3*PI/4&&angleTo<-PI/4){
game->GetPlayer()->UpdateWalkingAnimation(UP);
}else
if(angleTo<PI/4&&angleTo>=-PI/4){
game->GetPlayer()->UpdateWalkingAnimation(RIGHT);
}else
if(angleTo>=PI/4&&angleTo<3*PI/4){
game->GetPlayer()->UpdateWalkingAnimation(DOWN);
}else{
game->GetPlayer()->UpdateWalkingAnimation(LEFT);
}
if(abs(game->KEY_SCROLLHORZ_L.Analog())>=0.2f||abs(game->KEY_SCROLLVERT_L.Analog()>=0.2f))analogMove=true; if(abs(game->KEY_SCROLLHORZ_L.Analog())>=0.2f||abs(game->KEY_SCROLLVERT_L.Analog()>=0.2f))analogMove=true;
goto doneNavigating; goto doneNavigating;
}else{ }else{
@ -148,18 +140,6 @@ void State_OverworldMap::OnUserUpdate(AiL*game){
if(Unlock::IsUnlocked(neighbor.unlockCondition)&&targetDirection==directionInd){ if(Unlock::IsUnlocked(neighbor.unlockCondition)&&targetDirection==directionInd){
UpdateCurrentConnectionPoint(neighbor); UpdateCurrentConnectionPoint(neighbor);
playerTargetPos=currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16}; playerTargetPos=currentConnectionPoint->rect.pos+currentConnectionPoint->rect.size/2+vf2d{0,16};
float angleTo=util::angleTo(game->GetPlayer()->GetPos(),playerTargetPos);
if(angleTo>=-3*PI/4&&angleTo<-PI/4){
game->GetPlayer()->UpdateWalkingAnimation(UP);
}else
if(angleTo<PI/4&&angleTo>=-PI/4){
game->GetPlayer()->UpdateWalkingAnimation(RIGHT);
}else
if(angleTo>=PI/4&&angleTo<3*PI/4){
game->GetPlayer()->UpdateWalkingAnimation(DOWN);
}else{
game->GetPlayer()->UpdateWalkingAnimation(LEFT);
}
if(abs(game->KEY_SCROLLHORZ_L.Analog())>=0.2f||abs(game->KEY_SCROLLVERT_L.Analog()>=0.2f))analogMove=true; if(abs(game->KEY_SCROLLHORZ_L.Analog())>=0.2f||abs(game->KEY_SCROLLVERT_L.Analog()>=0.2f))analogMove=true;
goto doneNavigating; goto doneNavigating;
} }

@ -48,6 +48,7 @@ class State_OverworldMap:public GameState{
const float playerMoveSpd=48.0; const float playerMoveSpd=48.0;
bool analogMove=false; bool analogMove=false;
float mosaicAmt=0.f; float mosaicAmt=0.f;
bool justUnlockedChapter2{false};
public: public:
State_OverworldMap(); State_OverworldMap();
static std::vector<ConnectionPoint>connections; static std::vector<ConnectionPoint>connections;

@ -39,7 +39,7 @@ All rights reserved.
#define VERSION_MAJOR 1 #define VERSION_MAJOR 1
#define VERSION_MINOR 2 #define VERSION_MINOR 2
#define VERSION_PATCH 3 #define VERSION_PATCH 3
#define VERSION_BUILD 10391 #define VERSION_BUILD 10399
#define stringify(a) stringify_(a) #define stringify(a) stringify_(a)
#define stringify_(a) #a #define stringify_(a) #a

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<map version="1.10" tiledversion="1.10.2" class="Map" orientation="orthogonal" renderorder="right-down" width="70" height="60" tilewidth="12" tileheight="12" infinite="0" nextlayerid="9" nextobjectid="3"> <map version="1.10" tiledversion="1.10.2" class="Map" orientation="orthogonal" renderorder="right-down" width="70" height="60" tilewidth="12" tileheight="12" infinite="0" nextlayerid="9" nextobjectid="4">
<properties> <properties>
<property name="Backdrop" propertytype="Backdrop" value="forest"/> <property name="Backdrop" propertytype="Backdrop" value="forest"/>
<property name="Background Music" propertytype="BGM" value="base_camp"/> <property name="Background Music" propertytype="BGM" value="base_camp"/>
@ -207,7 +207,7 @@
</layer> </layer>
<layer id="5" name="Layer 4 (Artificer)" class="EventLayer" width="70" height="60"> <layer id="5" name="Layer 4 (Artificer)" class="EventLayer" width="70" height="60">
<properties> <properties>
<property name="Layer Unlock Condition" propertytype="Level" value="STORY_2_1"/> <property name="Layer Unlock Condition" propertytype="Level" value="BOSS_2_B"/>
</properties> </properties>
<data encoding="csv"> <data encoding="csv">
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
@ -418,7 +418,6 @@
<property name="Function" propertytype="NPCFunction" value="Blacksmith"/> <property name="Function" propertytype="NPCFunction" value="Blacksmith"/>
<property name="NPC Name" value="Greg"/> <property name="NPC Name" value="Greg"/>
<property name="Roaming Range" type="int" value="300"/> <property name="Roaming Range" type="int" value="300"/>
<property name="Spawn Flag" type="int" value="1"/>
<property name="Spritesheet" value="Greg.png"/> <property name="Spritesheet" value="Greg.png"/>
<property name="Unlock Condition" propertytype="Level" value="STORY_1_2"/> <property name="Unlock Condition" propertytype="Level" value="STORY_1_2"/>
</properties> </properties>
@ -444,5 +443,15 @@
<point/> <point/>
</object> </object>
<object id="2" name="Player Spawn" type="PlayerSpawnLocation" x="373" y="384" width="24" height="24"/> <object id="2" name="Player Spawn" type="PlayerSpawnLocation" x="373" y="384" width="24" height="24"/>
<object id="3" name="Artificer (NPC)" type="NPC" x="519" y="516">
<properties>
<property name="Function" propertytype="NPCFunction" value="Artificer"/>
<property name="NPC Name" value="Artificer"/>
<property name="Roaming Range" type="int" value="300"/>
<property name="Spritesheet" value="Artificer.png"/>
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_2_B1"/>
</properties>
<point/>
</object>
</objectgroup> </objectgroup>
</map> </map>

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<map version="1.10" tiledversion="1.10.2" class="Map" orientation="orthogonal" renderorder="left-down" width="250" height="177" tilewidth="4" tileheight="4" infinite="0" nextlayerid="5" nextobjectid="32"> <map version="1.10" tiledversion="1.10.2" class="Map" orientation="orthogonal" renderorder="left-down" width="250" height="177" tilewidth="4" tileheight="4" infinite="0" nextlayerid="5" nextobjectid="34">
<properties> <properties>
<property name="Background Music" propertytype="BGM" value="overworld"/> <property name="Background Music" propertytype="BGM" value="overworld"/>
<property name="Level Type" propertytype="LevelType" value="World Map"/> <property name="Level Type" propertytype="LevelType" value="World Map"/>
@ -436,12 +436,12 @@
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10923,10924,10878,10879,10927,10928,10929,10877,10931,10932,10933,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10923,10924,10878,10879,10927,10928,10929,10877,10931,10932,10933,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10936,10937,10891,10892,10940,10941,10942,10890,10944,10945,10946,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10936,10937,10891,10892,10940,10941,10942,10890,10944,10945,10946,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10949,10950,10951,10952,10953,10954,10955,10956,10957,10958,10959,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10949,10950,10951,10952,10953,10954,10955,10956,10957,10958,10959,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10820,10821,10821,10821,10822,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10820,10821,10821,10821,10822,0,0,0,0,10820,10821,10821,10821,10822,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10820,10821,10822,10849,10850,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10910,10911,10912,10913,10914,10915,10916,10917,10918,10919,10920,0,0,10910,10911,10912,10913,10914,10915,10916,10917,10918,10919,10920,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,0,0,0,0,10820,10821,10822,10849,10850,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10910,10911,10912,10913,10914,10915,10916,10917,10918,10919,10920,0,0,10910,10911,10912,10913,10914,10915,10916,10917,10918,10919,10920,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,10849,10850,0,10833,10834,10824,10834,10835,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10833,10834,10835,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10820,10821,10821,10821,10822,0,0,0,0,0,0,10923,10872,10874,10875,10927,10928,10929,10877,10931,10932,10933,10849,10850,10923,10872,10874,10875,10927,10928,10929,10878,10879,10932,10933,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,10849,10850,0,10833,10834,10824,10834,10835,0,10849,10850,0,10833,10834,10829,10834,10835,0,10849,10850,0,10849,10850,0,10849,10850,0,10833,10834,10835,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10820,10821,10821,10821,10822,0,0,0,0,0,0,10923,10872,10874,10875,10927,10928,10929,10877,10931,10932,10933,10849,10850,10923,10872,10874,10875,10927,10928,10929,10878,10879,10932,10933,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,10833,10834,10837,10834,10835,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10846,10847,10848,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,10936,10885,10887,10888,10940,10941,10942,10890,10944,10945,10946,10862,10863,10936,10885,10887,10888,10940,10941,10942,10891,10892,10945,10946,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,10833,10834,10837,10834,10835,0,10862,10863,0,10833,10834,10842,10834,10835,0,10862,10863,0,10862,10863,0,10862,10863,0,10846,10847,10848,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,10936,10885,10887,10888,10940,10941,10942,10890,10944,10945,10946,10862,10863,10936,10885,10887,10888,10940,10941,10942,10891,10892,10945,10946,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,10833,10834,10824,10834,10835,10849,10850,0,10849,10850,0,10949,10950,10951,10952,10953,10954,10955,10956,10957,10958,10959,0,0,10949,10950,10951,10952,10953,10954,10955,10956,10957,10958,10959,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,0,10849,10850,10833,10834,10824,10834,10835,10849,10850,0,10849,10850,0,10949,10950,10951,10952,10953,10954,10955,10956,10957,10958,10959,0,0,10949,10950,10951,10952,10953,10954,10955,10956,10957,10958,10959,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10846,10847,10847,10847,10848,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,10833,10834,10837,10834,10835,10862,10863,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10846,10847,10847,10847,10848,0,0,0,0,10846,10847,10847,10847,10848,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,0,10862,10863,10833,10834,10837,10834,10835,10862,10863,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10833,10834,10834,10834,10835,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10846,10847,10847,10847,10848,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10849,10850,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10846,10847,10847,10847,10848,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10862,10863,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
@ -573,7 +573,7 @@
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_1"/> <property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_1"/>
</properties> </properties>
</object> </object>
<object id="5" name="Story I" type="StagePlate" x="344" y="476" width="20" height="24"> <object id="5" name="Story I-I" type="StagePlate" x="344" y="476" width="20" height="24">
<properties> <properties>
<property name="Connection 1 - North" type="object" value="8"/> <property name="Connection 1 - North" type="object" value="8"/>
<property name="Connection 2 - East" type="object" value="8"/> <property name="Connection 2 - East" type="object" value="8"/>
@ -591,7 +591,7 @@
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_2"/> <property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_2"/>
</properties> </properties>
</object> </object>
<object id="7" name="Story II" type="StagePlate" x="236" y="592" width="20" height="24"> <object id="7" name="Story I-II" type="StagePlate" x="236" y="592" width="20" height="24">
<properties> <properties>
<property name="Connection 3 - South" type="object" value="6"/> <property name="Connection 3 - South" type="object" value="6"/>
<property name="Connection 4 - West" type="object" value="6"/> <property name="Connection 4 - West" type="object" value="6"/>
@ -600,9 +600,9 @@
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_2"/> <property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_2"/>
</properties> </properties>
</object> </object>
<object id="8" name="Camp" type="StagePlate" x="416" y="416" width="20" height="24"> <object id="8" name="Camp I" type="StagePlate" x="416" y="416" width="20" height="24">
<properties> <properties>
<property name="Connection 1 - North" type="object" value="20"/> <property name="Connection 1 - North" type="object" value="33"/>
<property name="Map" propertytype="Level" value="HUB"/> <property name="Map" propertytype="Level" value="HUB"/>
<property name="Type" propertytype="StageType" value="HUB"/> <property name="Type" propertytype="StageType" value="HUB"/>
<property name="Unlock Condition" propertytype="Level" value="STORY_1_1"/> <property name="Unlock Condition" propertytype="Level" value="STORY_1_1"/>
@ -662,7 +662,7 @@
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_7"/> <property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_1_7"/>
</properties> </properties>
</object> </object>
<object id="16" name="Story III" type="StagePlate" x="160" y="612" width="20" height="24"> <object id="16" name="Story I-III" type="StagePlate" x="160" y="612" width="20" height="24">
<properties> <properties>
<property name="Map" propertytype="Level" value="STORY_1_3"/> <property name="Map" propertytype="Level" value="STORY_1_3"/>
<property name="Type" propertytype="StageType" value="STORY"/> <property name="Type" propertytype="StageType" value="STORY"/>
@ -690,7 +690,7 @@
<property name="Connection 1 - North" type="object" value="21"/> <property name="Connection 1 - North" type="object" value="21"/>
<property name="Map" propertytype="Level" value="CAMPAIGN_2_1"/> <property name="Map" propertytype="Level" value="CAMPAIGN_2_1"/>
<property name="Type" propertytype="StageType" value="DUNGEON"/> <property name="Type" propertytype="StageType" value="DUNGEON"/>
<property name="Unlock Condition" propertytype="Level" value="STORY_1_3"/> <property name="Unlock Condition" propertytype="Level" value="STORY_2_1"/>
</properties> </properties>
</object> </object>
<object id="21" name="Stage II-II" type="StagePlate" x="217" y="205" width="42" height="14"> <object id="21" name="Stage II-II" type="StagePlate" x="217" y="205" width="42" height="14">
@ -755,23 +755,23 @@
</object> </object>
<object id="28" name="Boss II" type="StagePlate" x="237" y="137" width="30" height="22"> <object id="28" name="Boss II" type="StagePlate" x="237" y="137" width="30" height="22">
<properties> <properties>
<property name="Connection 4 - West" type="object" value="29"/> <property name="Connection 4 - West" type="object" value="32"/>
<property name="Map" propertytype="Level" value="BOSS_2"/> <property name="Map" propertytype="Level" value="BOSS_2"/>
<property name="Type" propertytype="StageType" value="BOSS"/> <property name="Type" propertytype="StageType" value="BOSS"/>
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_2_8"/> <property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_2_8"/>
</properties> </properties>
</object> </object>
<object id="29" name="Story IV" type="StagePlate" x="229" y="105" width="18" height="22"> <object id="29" name="Story II-I" type="StagePlate" x="273" y="249" width="18" height="22">
<properties> <properties>
<property name="Connection 1 - North" type="object" value="20"/>
<property name="Connection 4 - West" type="object" value="20"/>
<property name="Map" propertytype="Level" value="STORY_2_1"/> <property name="Map" propertytype="Level" value="STORY_2_1"/>
<property name="Type" propertytype="StageType" value="STORY"/> <property name="Type" propertytype="StageType" value="STORY"/>
<property name="Unlock Condition" propertytype="Level" value="BOSS_2"/> <property name="Unlock Condition" propertytype="Level" value="STORY_1_3"/>
</properties> </properties>
</object> </object>
<object id="30" name="Boss B-II" type="StagePlate" x="289" y="49" width="30" height="22"> <object id="30" name="Boss B-II" type="StagePlate" x="289" y="49" width="30" height="22">
<properties> <properties>
<property name="Connection 3 - South" type="object" value="0"/>
<property name="Connection 4 - West" type="object" value="0"/>
<property name="Map" propertytype="Level" value="BOSS_2_B"/> <property name="Map" propertytype="Level" value="BOSS_2_B"/>
<property name="Type" propertytype="StageType" value="BOSS"/> <property name="Type" propertytype="StageType" value="BOSS"/>
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_2_B1"/> <property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_2_B1"/>
@ -785,5 +785,20 @@
<property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_2_5"/> <property name="Unlock Condition" propertytype="Level" value="CAMPAIGN_2_5"/>
</properties> </properties>
</object> </object>
<object id="32" name="Story II-II" type="StagePlate" x="229" y="105" width="18" height="22">
<properties>
<property name="Map" propertytype="Level" value="STORY_2_1"/>
<property name="Type" propertytype="StageType" value="STORY"/>
<property name="Unlock Condition" propertytype="Level" value="BOSS_2"/>
</properties>
</object>
<object id="33" name="Camp II" type="StagePlate" x="308" y="248" width="20" height="24">
<properties>
<property name="Connection 4 - West" type="object" value="29"/>
<property name="Map" propertytype="Level" value="HUB"/>
<property name="Type" propertytype="StageType" value="HUB"/>
<property name="Unlock Condition" propertytype="Level" value="STORY_1_3"/>
</properties>
</object>
</objectgroup> </objectgroup>
</map> </map>

@ -75,6 +75,31 @@ NPCs
RIGHT = 1, 0.1, OneShot RIGHT = 1, 0.1, OneShot
} }
Hurt Sound = Monster Hurt
Death Sound = Slime Dead
Walk Sound = Slime Walk
}
Artificer
{
Strategy = NPC
#Size of each animation frame
SheetFrameSize = 24,24
# Setting this to true means every four rows indicates one animation, the ordering of the directions is: NORTH, EAST, SOUTH, WEST
4-Way Spritesheet = False
Animations
{
# Frame Count, Frame Speed (s), Frame Cycling (Repeat,OneShot,PingPong,Reverse)
# Animations must be defined in the same order as they are in their sprite sheets
# The First Four animations must represent a standing, walking, attack, and death animation. Their names are up to the creator.
DOWN = 1, 0.1, OneShot
UP = 1, 0.1, OneShot
LEFT = 1, 0.1, OneShot
RIGHT = 1, 0.1, OneShot
}
Hurt Sound = Monster Hurt Hurt Sound = Monster Hurt
Death Sound = Slime Dead Death Sound = Slime Dead
Walk Sound = Slime Walk Walk Sound = Slime Walk

@ -4,7 +4,10 @@ Player
MoveSpd = 100 MoveSpd = 100
# Game Map Starting Location # Game Map Starting Location
Starting Location = Story I Starting Location = Story I-I
# Which stage plate to set the player at when chapter 2 is unlocked.
Chapter 2 Unlock Set Location = Camp II
# Player Class Minimap Image offset # Player Class Minimap Image offset
Minimap Image Offset = 12,11 Minimap Image Offset = 12,11

@ -93,9 +93,10 @@ BGM
Events Events
{ {
Default Volume = 60%,60%,0%,0%,0%,0%,0%,0%,60%,60% Default Volume = 0%,60%,0%,0%,0%,0%,0%,0%,60%,60%
BlacksmithUnlock = 60%,60%,60%,0%,0%,0%,0%,60%,60%,60% BlacksmithUnlock = 0%,60%,60%,0%,0%,0%,0%,60%,60%,60%
Chapter2Unlock = 80%,80%,60%,0%,100%,70%,0%,60%,80%,60% Chapter2Unlock = 0%,80%,60%,0%,100%,70%,0%,60%,80%,60%
Chapter3Unlock = 80%,100%,100%,0%,100%,100%,60%,80%,100%,80%
} }
} }

@ -4,6 +4,7 @@ Events
TitleScreenLoaded = "Occurs when the title screen intro is done" TitleScreenLoaded = "Occurs when the title screen intro is done"
BlacksmithUnlock = "Blacksmith appears in the camp." BlacksmithUnlock = "Blacksmith appears in the camp."
Chapter2Unlock = "Chapter 2 is unlocked (beat the demo)" Chapter2Unlock = "Chapter 2 is unlocked (beat the demo)"
Chapter3Unlock = "Chapter 3 is unlocked (After beating the Stone Golem)"
SFX SFX
{ {

@ -1,8 +1,5 @@
map_path = assets/Campaigns/ map_path = assets/Campaigns/
# The starting node that all players begin on.
starting_map_name = Story I
Levels Levels
{ {
# Optionally specify # Optionally specify

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Loading…
Cancel
Save