Skip to content

Commit 5c9acb5

Browse files
Merge pull request #8484 from sruon/s2c_mission
S2C: MISSION
2 parents f376e11 + dd43099 commit 5c9acb5

20 files changed

Lines changed: 898 additions & 496 deletions

src/map/enums/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@ set(ENUMS_SOURCES
66
${CMAKE_CURRENT_SOURCE_DIR}/item_types.h
77
${CMAKE_CURRENT_SOURCE_DIR}/item_lockflg.h
88
${CMAKE_CURRENT_SOURCE_DIR}/key_items.h
9+
${CMAKE_CURRENT_SOURCE_DIR}/mission_log.h
910
${CMAKE_CURRENT_SOURCE_DIR}/music_slot.h
1011
${CMAKE_CURRENT_SOURCE_DIR}/msg_basic.h
1112
${CMAKE_CURRENT_SOURCE_DIR}/msg_std.h
1213
${CMAKE_CURRENT_SOURCE_DIR}/packet_c2s.h
1314
${CMAKE_CURRENT_SOURCE_DIR}/packet_s2c.h
1415
${CMAKE_CURRENT_SOURCE_DIR}/party_kind.h
16+
${CMAKE_CURRENT_SOURCE_DIR}/quest_log.h
1517
${CMAKE_CURRENT_SOURCE_DIR}/synthesis_effect.h
1618
${CMAKE_CURRENT_SOURCE_DIR}/synthesis_result.h
1719
PARENT_SCOPE

src/map/enums/mission_log.h

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/*
2+
===========================================================================
3+
4+
Copyright (c) 2025 LandSandBoat Dev Teams
5+
6+
This program is free software: you can redistribute it and/or modify
7+
it under the terms of the GNU General Public License as published by
8+
the Free Software Foundation, either version 3 of the License, or
9+
(at your option) any later version.
10+
11+
This program is distributed in the hope that it will be useful,
12+
but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
GNU General Public License for more details.
15+
16+
You should have received a copy of the GNU General Public License
17+
along with this program. If not, see http://www.gnu.org/licenses/
18+
19+
===========================================================================
20+
*/
21+
22+
#pragma once
23+
24+
enum class MissionLog : uint8_t
25+
{
26+
Sandoria = 0,
27+
Bastok = 1,
28+
Windurst = 2,
29+
Zilart = 3,
30+
ToAU = 4,
31+
WoTG = 5,
32+
CoP = 6,
33+
Assault = 7,
34+
Campaign = 8,
35+
ACP = 9,
36+
AMK = 10,
37+
ASA = 11,
38+
SoA = 12,
39+
RoV = 13,
40+
// TODO: TVR
41+
};
42+
43+
// Client-side MISSION packet 'Port' values for completed missions.
44+
// Not all storylines use this system. See GP_SERV_COMMAND_MISSION::MISSION for details.
45+
enum class MissionComplete : uint16_t
46+
{
47+
Campaign1 = 0x0030,
48+
Campaign2 = 0x0038,
49+
Nations = 0x00D0,
50+
ToAU_WoTG = 0x00D8,
51+
};

src/map/enums/quest_log.h

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
/*
2+
===========================================================================
3+
4+
Copyright (c) 2025 LandSandBoat Dev Teams
5+
6+
This program is free software: you can redistribute it and/or modify
7+
it under the terms of the GNU General Public License as published by
8+
the Free Software Foundation, either version 3 of the License, or
9+
(at your option) any later version.
10+
11+
This program is distributed in the hope that it will be useful,
12+
but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
GNU General Public License for more details.
15+
16+
You should have received a copy of the GNU General Public License
17+
along with this program. If not, see http://www.gnu.org/licenses/
18+
19+
===========================================================================
20+
*/
21+
22+
#pragma once
23+
24+
// Indices as used in CCharEntity::m_questLog
25+
enum class QuestLog : uint8_t
26+
{
27+
Sandoria = 0,
28+
Bastok = 1,
29+
Windurst = 2,
30+
Jeuno = 3,
31+
OtherAreas = 4,
32+
Outlands = 5,
33+
AhtUrghan = 6,
34+
CrystalWar = 7,
35+
Abyssea = 8,
36+
Adoulin = 9,
37+
Coalition = 10,
38+
};
39+
40+
// Client-side MISSION packet 'Port' values for completed quests.
41+
enum class QuestComplete : uint16_t
42+
{
43+
Sandoria = 0x0090,
44+
Bastok = 0x0098,
45+
Windurst = 0x00A0,
46+
Jeuno = 0x00A8,
47+
OtherAreas = 0x00B0,
48+
Outlands = 0x00B8,
49+
AhtUrghan = 0x00C0,
50+
CrystalWar = 0x00C8,
51+
Abyssea = 0x00E8,
52+
Adoulin = 0x00F8,
53+
Coalition = 0x0108,
54+
};
55+
56+
// Client-side MISSION packet 'Port' values for quests in progress.
57+
enum class QuestOffer : uint16_t
58+
{
59+
Sandoria = 0x0050,
60+
Bastok = 0x0058,
61+
Windurst = 0x0060,
62+
Jeuno = 0x0068,
63+
OtherAreas = 0x0070,
64+
Outlands = 0x0078,
65+
AhtUrghan = 0x0080,
66+
CrystalWar = 0x0088,
67+
Abyssea = 0x00E0,
68+
Adoulin = 0x00F0,
69+
Coalition = 0x0100,
70+
};

0 commit comments

Comments
 (0)