Documentation
¶
Index ¶
Constants ¶
View Source
const ( MapleVersion = 28 ClientHeaderSize = 4 InterserverHeaderSize = 4 OpcodeLength = 1 )
Generic Constants
View Source
const ( MaxItemStack = 200 SkinID = 0x01 FaceID = 0x02 // Eyes HairID = 0x04 PetID = 0x08 LevelID = 0x10 JobID = 0x20 StrID = 0x40 DexID = 0x80 IntID = 0x100 LukID = 0x200 HpID = 0x400 MaxHpID = 0x800 MpID = 0x1000 MaxMpID = 0x2000 ApID = 0x4000 SpID = 0x8000 ExpID = 0x10000 FameID = 0x20000 MesosID = 0x40000 BeginnerHpAdd = int16(12) BeginnerMpAdd = int16(10) WarriorHpAdd = int16(24) WarriorMpAdd = int16(4) MagicianHpAdd = int16(10) MagicianMpAdd = int16(6) BowmanHpAdd = int16(20) BowmanMpAdd = int16(14) ThiefHpAdd = int16(20) ThiefMpAdd = int16(14) AdminHpAdd = 150 AdminMpAdd = 150 BeginnerJobID = 0 WarriorJobID = 100 FighterJobID = 110 CrusaderJobID = 111 PageJobID = 120 WhiteKnightJobID = 121 SpearmanJobID = 130 DragonKnightJobID = 131 MagicianJobID = 200 FirePoisonWizardJobID = 210 FirePoisonMageJobID = 211 IceLightWizardJobID = 220 IceLightMageJobID = 221 ClericJobID = 230 PriestJobID = 231 BowmanJobID = 300 HunterJobID = 310 RangerJobID = 311 CrossbowmanJobID = 320 SniperJobID = 321 ThiefJobID = 400 AssassinJobID = 410 HermitJobID = 411 BanditJobID = 420 ChiefBanditJobID = 421 GmJobID = 500 SuperGmJobID = 510 // Weapon type constants (itemID / 10000) WeaponType1HSword = 130 WeaponType1HAxe = 131 WeaponType1HBW = 132 WeaponTypeDagger = 133 WeaponTypeWand = 137 WeaponTypeStaff = 138 WeaponType2HSword = 140 WeaponType2HAxe = 141 WeaponType2HBW = 142 WeaponTypeSpear = 143 WeaponTypePolearm = 144 WeaponTypeBow = 145 WeaponTypeCrossbow = 146 WeaponTypeClaw = 147 // Equipment slot constants WeaponSlot = -11 // Stat gain constants for manual AP allocation BeginnerApHpGain = 8 BeginnerApMpGain = 6 WarriorApHpGain = 20 WarriorApMpGain = 4 MagicianApHpGain = 8 MagicianApMpGain = 18 BowmanApHpGain = 16 BowmanApMpGain = 10 ThiefApHpGain = 16 ThiefApMpGain = 10 DefaultApHpGain = 10 DefaultApMpGain = 10 // INT multipliers for MP calculation IntMpMultiplierNormal = 1 IntMpMultiplierMagician = 2 IntMpDivisor = 200 // Job class divisors JobClassDivisor = 100 JobBranchDivisor = 10 // Mastery constants MasteryDisplayDivisor = 2 // Recharge bonus constants ClawMasteryRechargeMultiplier = 10 MaxHpValue = 32767 MaxMpValue = 32767 MaxPartySize = 6 MaxGuildSize = 255 GuildCreateDialogue byte = 0x02 GuildInvite byte = 0x05 GuildAcceptInvite byte = 0x06 GuildLeave byte = 0x07 GuildExpel byte = 0x08 GuildNoticeChange byte = 0x10 GuildUpdateTitleNames byte = 0x0D GuildRankChange byte = 0x0E GuildEmblemChange byte = 0x0F GuildContractSign byte = 0x1E GuildRejectInvite byte = 0x37 QuestLostItem = 0x00 QuestStarted = 0x01 QuestCompleted = 0x02 QuestForfeit = 0x03 QuestActionSuccess byte = 4 QuestActionUnknownError byte = 5 QuestActionInventoryFull byte = 6 QuestActionNotEnoughMesos byte = 7 QuestActionFailedRetrieveEquippedItem byte = 8 QuestActionCannotCarryMoreThanOne byte = 9 FameNotifySource = 0x00 FameIncorrectUser = 0x01 FameUnderLevel = 0x02 FameThisDay = 0x03 FameThisMonth = 0x04 FameNotifyTarget = 0x05 SummonRemoveReasonCancel = 0x01 SummonRemoveReasonKeepBuff = 0x02 SummonRemoveReasonReplaced = 0x04 SummonAttackMob = 0x06 SummonTakeDamage = 0xFF StorageEquipTab = 0x04 StorageUseTab = 0x08 StorageSetupTab = 0x10 StorageEtcTab = 0x20 StorageCashTab = 0x40 MessengerEnter byte = 0x00 MessengerEnterResult byte = 0x01 MessengerLeave byte = 0x02 MessengerInvite byte = 0x03 MessengerInviteResult byte = 0x04 MessengerBlocked byte = 0x05 MessengerChat byte = 0x06 MessengerAvatar byte = 0x07 MessengerMigrated byte = 0x08 ReactorWarp = 0 ReactorSpawn = 1 ReactorDrop = 2 ReactorSpawnNPC = 6 ReactorRunScript = 10 PlayerEffectLevelUp = 0 PlayerEffectSkillOnSelf = 1 PlayerEffectSkillOnOther = 2 PlayerEffectQuestEffect = 3 PlayerEffectInventoryChanged = 3 PlayerEffectPet = 4 PlayerEffectExpCharm = 6 PlayerEffectPortal = 7 PlayerEffectJobChange = 8 PetRemoveNone byte = 0 PetRemoveHungry byte = 1 PetRemoveExpire byte = 2 )
View Source
const ( MiniRoomCreate byte = 0 MiniRoomInvite byte = 2 MiniRoomDeclineInvite byte = 3 MiniRoomEnter byte = 4 MiniRoomEnterResult byte = 5 MiniRoomChat byte = 6 MiniRoomAvatar byte = 9 MiniRoomLeave byte = 10 MiniRoomOpen byte = 11 MiniRoomTradePutItem byte = 13 MiniRoomTradePutMesos byte = 14 MiniRoomTradeAccept byte = 15 MiniRoomAddShopItem byte = 18 MiniRoomBuyShopItem byte = 19 MiniRoomPlayerShopItemResult byte = 0x14 MiniRoomPlayerShopSoldItem byte = 0x16 MiniRoomMoveItemShopToInv byte = 23 )
View Source
const ( MiniRoomTypeNone byte = 0 MiniRoomTypeOmok byte = 1 MiniRoomTypeMatchCards byte = 2 MiniRoomTypeTrade byte = 3 MiniRoomTypePlayerShop byte = 4 MiniRoomTypeEntrustedShop byte = 5 )
View Source
const ( MiniRoomEnterRoomAlreadyClosed byte = 0x01 MiniRoomEnterFullCapacity byte = 0x02 MiniRoomEnterOtherRequests byte = 0x03 MiniRoomEnterCantWhileDead byte = 0x04 MiniRoomEnterCantInMiddleEvent byte = 0x05 MiniRoomEnterUnableToDoIt byte = 0x06 MiniRoomEnterOtherItemsAtPoint byte = 0x07 MiniRoomEnterCantEstablishRoom byte = 0x0A MiniRoomEnterTradeOnSameMap byte = 0x09 MiniRoomEnterNotEnoughMesos byte = 0x0F MiniRoomEnterCantStartGameHere byte = 0x0B MiniRoomEnterBuiltAtMainTown byte = 0x0C MiniRoomEnterUnableEnterTournament byte = 0x0D MiniRoomEnterIncorrectPassword byte = 0x10 )
View Source
const ( PlayerShopNotEnoughInStock byte = 1 PlayerShopNotEnoughMesos byte = 2 PlayerShopPriceTooHighForTrade byte = 3 PlayerShopBuyerNotEnoughMoney byte = 4 PlayerShopCannotCarryMoreThanOne byte = 5 PlayerShopInventoryFull byte = 6 )
View Source
const ( MiniRoomLeaveReason byte = 0 MiniRoomCantEstablish byte = 1 MiniRoomCancel byte = 2 MiniRoomClosed byte = 3 MiniRoomExpelled byte = 4 MiniRoomForcedLeave byte = 5 MiniRoomTradeSuccess byte = 6 MiniRoomTradeFail byte = 7 MiniRoomTradeInventoryFull byte = 8 MiniRoomTradeWrongMap byte = 9 MiniRoomPlayerShopOutOfStock byte = 10 )
View Source
const ( GameWin byte = 0 GameTie byte = 1 GameForfeit byte = 2 )
View Source
const ( MatchCardsSizeSmall byte = 0 MatchCardsSizeMedium byte = 1 MatchCardsSizeLarge byte = 2 )
View Source
const ( RoomMaxPlayers = 2 OmokBoardSize = 15 MatchCardsPairsSmall = 6 MatchCardsPairsMedium = 10 MatchCardsPairsLarge = 15 RoomOwnerSlot = 0 RoomGuestSlot = 1 RoomLeaveTradeCancelled = 0x02 RoomYellowChatExpelled = 0 RoomYellowChatMatchedCards = 9 RoomChatTypeChat = 8 RoomChatTypeNotice = 7 RoomPacketShowWindow = 0x05 RoomPacketJoin = 0x04 RoomPacketLeave = 0x0A RoomEnterClosed = 0x01 RoomEnterFull = 0x02 RoomEnterBusy = 0x03 RoomEnterNotAllowedDead = 0x04 RoomEnterNotAllowedEvent = 0x05 RoomEnterThisCharNotAllow = 0x06 RoomEnterNoTradeATM = 0x07 RoomEnterTradeSameMap = 0x09 RoomEnterCannotCreateHere = 0x0A RoomEnterCannotStartHere = 0x0B RoomEnterStoreFMOnly = 0x0C RoomEnterGarbageFloorFM = 0x0D RoomEnterMayNotEnterStore = 0x0E RoomEnterStoreMaint = 0x0F RoomEnterGarbageTradeMsg = 0x11 RoomPacketInvite = 0x02 RoomPacketInviteResult = 0x03 RoomPacketShowAccept = 0x0F RoomPacketMemoryStart = 0x0C RoomRequestTie byte = 42 RoomRequestTieResult byte = 43 RoomForfeit byte = 44 RoomRequestUndo byte = 46 RoomRequestUndoResult byte = 47 RoomRequestExitDuringGame byte = 48 RoomUndoRequestExit byte = 49 RoomReadyButtonPressed byte = 50 RoomUnready byte = 51 RoomOwnerExpell byte = 52 RoomGameStart byte = 53 RoomGameResult byte = 54 RoomChangeTurn byte = 55 RoomPlacePiece byte = 56 RoomInvalidPlace byte = 57 RoomSelectCard byte = 60 )
View Source
const ( // Broadcast message types BroadcastNotice byte = 0x00 // Blue text no highlight BroadcastPopupBox byte = 0x01 // Pop-up text window BroadcastMegaphone byte = 0x02 // Blue text with highlight BroadcastSuperMegaphone byte = 0x03 // Red text with bright pink highlight BroadcastHeader byte = 0x04 // Scrolling header BroadcastRedText byte = 0x05 // Red text with no highlight BroadcastBlue byte = 0x06 // Blue text without [Notice] )
View Source
const ( ItemMesoMagnet = 1812000 ItemItemPouch = 1812001 ItemRegTeleportRock = 5040000 ItemVIPTeleportRock = 5041000 ItemAPReset = 5050000 ItemSPResetFirstJob = 5050001 ItemSPResetSecondJob = 5050002 ItemSPResetThirdJob = 5050003 ItemMegaphone = 5071000 ItemSuperMegaphone = 5072000 ItemHeartSMegaphone = 5073000 ItemSkullSMegaphone = 5074000 ItemWeatherSnow = 5120000 ItemWeatherFlowers = 5120001 ItemWeatherSoap = 5120002 ItemWeatherSnowFlakes = 5120003 ItemWeatherPresents = 5120004 ItemWeatherChocolate = 5120005 ItemWeatherFlower = 5120006 ItemWeatherCandy = 5120007 ItemWeatherLeaves = 5120008 ItemWeatherFireworks = 5120009 ItemSafetyCharm = 5130000 ItemPetNameTag = 5170000 ItemWaterOfLife = 5180000 )
View Source
const ( TeleportRockRegSlots = 5 // Regular teleport rocks have 5 slots TeleportRockVIPSlots = 10 // VIP teleport rocks have 10 slots TeleportRockVIPFlag byte = 0x01 // VIP flag in packet TeleportRockRegFlag byte = 0x00 // Regular flag in packet TeleportRockModeAdd byte = 0x03 // Server response mode for add TeleportRockModeDel byte = 0x02 // Server response mode for delete )
Teleport rock constants
View Source
const ( LoginResultSuccess byte = 0x00 LoginResultBanned byte = 0x02 LoginResultDeletedOrBlocked byte = 0x03 LoginResultInvalidPassword byte = 0x04 LoginResultNotRegistered byte = 0x05 LoginResultSystemError byte = 0x06 LoginResultAlreadyOnline byte = 0x07 LoginResultSystemError9 byte = 0x09 LoginResultTooManyRequests byte = 0x0A LoginResultOlderThan20 byte = 0x0B LoginResultValidLogin byte = 0x0C LoginResultMasterCannotLogin byte = 0x0D LoginResultWrongGatewayKR byte = 0x0E LoginResultProcessingKR byte = 0x0F LoginResultVerifyEmail byte = 0x10 LoginResultGatewayEN byte = 0x17 LoginResultVerifyEmail21 byte = 0x15 LoginResultEULA byte = 0x17 )
Login result codes
View Source
const ( AutoRegisterDefaultGender byte = 0 AutoRegisterDefaultDOB int = 11111111 AutoRegisterDefaultEULA byte = 0 AutoRegisterDefaultAdminLevel int = 0 AutoRegisterDefaultIsBanned int = 0 AutoRegisterDefaultNX int = 0 AutoRegisterDefaultMaplePoints int = 0 AutoRegisterDefaultIsLoggedIn int = 0 AutoRegisterDefaultPIN string = "1111" )
Auto-registration default values
View Source
const ( MobSummonTypeFake int8 = -4 MobSummonTypeRevive int8 = -3 MobSummonTypeRegen int8 = -2 MobSummonTypeInstant int8 = -1 MobSummonTypeJrBalrog int8 = 0 MobSummonTypePoof int8 = 1 )
View Source
const ( MobBalrog int32 = 8130100 MobCrimsonBalrog int32 = 8150000 MobPapalatusBall int32 = 8500000 MobPapalatus int32 = 8500001 MobPapalatusClock int32 = 8500002 MobPianus int32 = 8520000 MobPianusAlt int32 = 8510000 MobMushmom int32 = 6130101 MobZombieMushmom int32 = 6300005 MobZakumArm1 int32 = 8800003 MobZakumArm2 int32 = 8800004 MobZakumArm3 int32 = 8800005 MobZakumArm4 int32 = 8800006 MobZakumArm5 int32 = 8800007 MobZakumArm6 int32 = 8800008 MobZakumArm7 int32 = 8800009 MobZakumArm8 int32 = 8800010 MobZakum1Body int32 = 8800000 MobZakum2Body int32 = 8800001 MobZakum3Body int32 = 8800002 )
View Source
const ( MapFreeMarket int32 = 910000000 MapBossPapulatus int32 = 220080001 MapBossPapulatusReturn int32 = 220080000 MapBossPianus int32 = 230040420 MapBossZakum int32 = 280030000 MapBossZakumReturn int32 = 211042300 MapKerningPQ int32 = 103000800 MapLudiPQ int32 = 922010100 // Invalid map ID used for portal removal InvalidMap int32 = 999999999 MapStationEllinia int32 = 101000300 MapStationOrbis int32 = 200000100 MapStationOrbisEllinaPlatform int32 = 200000111 MapStationOrbisLudiPlatform int32 = 200000121 MapStationLudi int32 = 220000100 MapStationLudiOrbisPlatform int32 = 220000110 MapBoatElliniaDeparture int32 = 101000301 MapBoatElliniaFlight int32 = 200090010 MapBoatElliniaFlightCabin int32 = 200090011 MapBoatOrbisElliniaDeparture int32 = 200000112 MapBoatOrbisElliniaFlight int32 = 200090000 MapBoatOrbisElliniaFlightCabin int32 = 200090001 MapBoatOrbisLudiDeparture int32 = 200000122 MapBoatOrbisLudiFlight int32 = 200090100 MapBoatLudiDeparture int32 = 220000111 MapBoatLudiFlight int32 = 200090110 )
View Source
const ( PortalFreeMarketEnter = "market00" PortalFreeMarketLeave = "out00" PortalPapulatus = "in00" PortalPianus = "boss00" PortalZakum = "ps00" )
View Source
const ( CashShopNX byte = 0x00 CashShopMaplePoints byte = 0x01 CashShopErrorUnknown byte = 0x00 CashShopErrorUnknownDC1 byte = 80 CashShopErrorTimeRanOutTryAgain byte = 81 CashShopErrorUnknownDC2 byte = 82 CashShopErrorNotEnoughCash byte = 83 CashShopErrorCantGiftUnder14 byte = 84 CashShopErrorExceededGiftPriceLimit byte = 85 CashShopErrorExceededNumberOfCashItems byte = 86 CashShopErrorCheckNameOrGenderRestrictions byte = 87 CashShopErrorCheckCouponNumber byte = 88 CashShopErrorRegisterCouponAtWebsite byte = 91 CashShopErrorGenderRestrictionCoupon byte = 92 CashShopErrorCouponOnlyForRegularItemsNoGifting byte = 93 CashShopErrorCheckFullInventory byte = 94 CashShopErrorPremiumInternetCafeOnly byte = 95 CashShopErrorIneligibleRecipientNameOrGender byte = 96 CashShopErrorItemsNotAvailableAtThisHour byte = 97 CashShopErrorOutOfStock byte = 98 CashShopErrorExceededSpendingLimit byte = 99 CashShopErrorNotEnoughMesos byte = 100 CashShopErrorInvalidDateOfBirth byte = 102 )
View Source
const ( InventoryEquip = 1 InventoryUse = 2 InventorySetup = 3 InventoryEtc = 4 InventoryCash = 5 InventoryBaseSlotSize = 24 InventoryMaxSlotSize = 255 )
View Source
const ( PortalDeath int32 = 0 PortalNormal int32 = -1 )
View Source
const (
TeleportToName = 0x01
)
Variables ¶
View Source
var ExpTable = [...]int32{}/* 200 elements not displayed */
View Source
var WORLD_NAMES = [...]string{"Scania", "Bera", "Broa", "Windia", "Khaini", "Bellocan", "Mardia", "Kradia", "Yellonde", "Demethos", "Galicia", "El Nido", "Zenith", "Arcania", "Chaos", "Nova", "Renegates"}
Functions ¶
This section is empty.
Types ¶
Click to show internal directories.
Click to hide internal directories.