close_btn
로그인, 회원가입후 더 많은 혜택을 누리세요 로그인 회원가입 닫기

S_ServerVersion

 

/*
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 * 02111-1307, USA.
 *
 * http://www.gnu.org/copyleft/gpl.html
 */
package l1j.server.server.serverpackets;

import l1j.server.Config;
import l1j.server.server.Opcodes;

public class S_ServerVersion extends ServerBasePacket {
 private static final String S_SERVER_VERSION = "[S] ServerVersion";

 private static final int CLIENT_LANGUAGE = Config.CLIENT_LANGUAGE;

 /** 系統時間驗證 */
 private static final int UPTIME = 1327204035;// (int) (System.currentTimeMillis() / 1000);

 /** 服務器版本. */
 private static final int SERVER_VERSION = 120913203;

 /** 緩存版本. */
 private static final int CACHE_VERSION = 120913200;

 /** 認證(身份驗證)版本. */
 private static final int AUTH_VERSION = 2010083002;

 /** NPC版本. */
 private static final int NPC_VERSION = 120913201;
 
 /** 伺服器驗證. */
 private static final int SERVER_TYPE = 490882;

 public S_ServerVersion() {
  writeC(Opcodes.S_OPCODE_SERVERVERSION);
  writeC(0x00);
  writeC(0x01);//TODO 第幾個伺服器
  writeD(SERVER_VERSION);//TODO 3.63Cserver version
  writeD(CACHE_VERSION);//TODO 3.63Ccache version
  writeD(AUTH_VERSION);//TODO 3.63Cauth version
  writeD(NPC_VERSION);//TODO 3.63npc version
  writeD(0x0);//TODO server start time
  writeC(0x00);//TODO 未知封包
  writeC(0x00);//TODO 未知封包
  writeC(CLIENT_LANGUAGE);
  writeD(SERVER_TYPE);
  writeD(UPTIME);
  writeH(0x01);
 }

 @Override
 public byte[] getContent() {
  return getBytes();
 }

 @Override
 public String getType() {
  return S_SERVER_VERSION;
 }
}

 

S_Bookmarks


/*
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 * 02111-1307, USA.
 *
 * http://www.gnu.org/copyleft/gpl.html
 */
package l1j.server.server.serverpackets;

import java.util.logging.Logger;

import l1j.server.server.Opcodes;

/**
 * 角色座標名單
 */
public class S_Bookmarks extends ServerBasePacket {
 private static final String _S__1F_S_Bookmarks = "[S] S_Bookmarks";

 private static Logger _log = Logger.getLogger(S_Bookmarks.class.getName());

 private byte[] _byte = null;

 public S_Bookmarks(String name, int map, int bX, int bY, int id) {
  buildPacket(name, map, bX, bY, id);
 }

 private void buildPacket(String name, int map, int bX, int bY, int id) {
  writeC(Opcodes.S_OPCODE_BOOKMARKS);
  writeS(name);
  writeH(map);
  writeH(bX);
  writeH(bY);
  writeD(id);
 }

 @Override
 public byte[] getContent() {
  if (_byte == null) {
   _byte = getBytes();
  }

  return _byte;
 }

 @Override
 public String getType() {
  return _S__1F_S_Bookmarks;
 }
}

S_BookMarkLogin

/*
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 * 02111-1307, USA.
 *
 * http://www.gnu.org/copyleft/gpl.html
 */

package l1j.server.server.serverpackets;

import java.util.ArrayList;

import l1j.server.server.Opcodes;
import l1j.server.server.templates.L1BookMark;

/**
 * 登陸時記憶封包
 * @author 透明的冰
 */

public class S_BookMarkLogin extends ServerBasePacket{

 public S_BookMarkLogin(ArrayList<L1BookMark> bookmarks) {
  writeC(Opcodes.S_OPCODE_DELPETMENU);
  writeC(0x2a);
  writeH(0x80);
  writeC(0x02);
  for (int i = 0; i < 127; i++) {
   writeC(0xff);
  }
  writeH(122);//TODO 數量
  writeH(bookmarks.size());
  L1BookMark bookmark = null;
  for (int i = 0; i < bookmarks.size(); i++) {
   bookmark = bookmarks.get(i);
   writeD(bookmark.getId());
   writeS(bookmark.getName());
   writeH(bookmark.getMapId());
   writeH(bookmark.getLocX());//TODO 記憶的X軸
   writeH(bookmark.getLocY());//TODO 記憶的Y軸
  }
 }
 @Override
 public byte[] getContent() {
  return getBytes();
 }
}

C_UseSkill

/*
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 * 02111-1307, USA.
 *
 * http://www.gnu.org/copyleft/gpl.html
 */

package l1j.server.server.clientpackets;

import static l1j.server.server.model.skill.L1SkillId.ABSOLUTE_BARRIER;
import static l1j.server.server.model.skill.L1SkillId.CALL_CLAN;
import static l1j.server.server.model.skill.L1SkillId.FIRE_WALL;
import static l1j.server.server.model.skill.L1SkillId.LIFE_STREAM;
import static l1j.server.server.model.skill.L1SkillId.MASS_TELEPORT;
import static l1j.server.server.model.skill.L1SkillId.MEDITATION;
import static l1j.server.server.model.skill.L1SkillId.RUN_CLAN;
import static l1j.server.server.model.skill.L1SkillId.TELEPORT;
import static l1j.server.server.model.skill.L1SkillId.TRUE_TARGET;

import java.util.logging.Logger;

import l1j.server.Config;
import l1j.server.server.ActionCodes;
import l1j.server.server.ClientThread;
import l1j.server.server.datatables.SkillsTable;
import l1j.server.server.model.AcceleratorChecker;
import l1j.server.server.model.L1World;
import l1j.server.server.model.Instance.L1PcInstance;
import l1j.server.server.model.skill.L1SkillUse;
import l1j.server.server.serverpackets.S_ServerMessage;

// Referenced classes of package l1j.server.server.clientpackets:
// ClientBasePacket

public class C_UseSkill extends ClientBasePacket {

 private static Logger _log = Logger.getLogger(C_UseSkill.class.getName());

 public C_UseSkill(byte abyte0[], ClientThread client) throws Exception {
  super(abyte0);
  int row = readC();
  int column = readC();
  int skillId = (row * 8) + column + 1;
  String charName = null;
  String message = null;
  int targetId = 0;
  int targetX = 0;
  int targetY = 0;
  L1PcInstance pc = client.getActiveChar();

  if (pc.isTeleport() || pc.isDead()) {
   return;
  }
  if (!pc.getMap().isUsableSkill()) {
   pc.sendPackets(new S_ServerMessage(563)); // \f1ここでは使えません。
   return;
  }
  if (!pc.isSkillMastery(skillId)) {
   return;
  }

  // 要求間隔をチェックする
  if (Config.CHECK_SPELL_INTERVAL) {
   int result;
   // FIXME どのスキルがdir/no dirであるかの判断が適当
   if (SkillsTable.getInstance().getTemplate(skillId).getActionId() == ActionCodes.ACTION_SkillAttack) {
    result = pc.getAcceleratorChecker().checkInterval(AcceleratorChecker.ACT_TYPE.SPELL_DIR);
   } else {
    result = pc.getAcceleratorChecker().checkInterval(AcceleratorChecker.ACT_TYPE.SPELL_NODIR);
   }
   if (result == AcceleratorChecker.R_DISCONNECTED) {
    return;
   }
  }

  if (abyte0.length > 4) {
   try {
    if (skillId == CALL_CLAN || skillId == RUN_CLAN) { // コールクラン、ランクラン
     charName = readS();
    } else if (skillId == TRUE_TARGET) { // トゥルーターゲット
     targetId = readD();
     targetX = readH();
     targetY = readH();
     message = readS();
    } else if (skillId == TELEPORT || skillId == MASS_TELEPORT) {
     targetId = readH();//TODO BookmarkMapID
     targetX = readH();//TODO BookmarkX
     targetY = readH();//TODO BookmarkY
    } else if (skillId == FIRE_WALL || skillId == LIFE_STREAM) { // ファイアーウォール、ライフストリーム
     targetX = readH();
     targetY = readH();
    } else {
     targetId = readD();
     targetX = readH();
     targetY = readH();
    }
   } catch (Exception e) {
    // _log.log(Level.SEVERE, "", e);
   }
  }

  if (pc.hasSkillEffect(ABSOLUTE_BARRIER)) { // アブソルート バリアの解除
   pc.killSkillEffectTimer(ABSOLUTE_BARRIER);
   pc.startHpRegeneration();
   pc.startMpRegeneration();
   pc.startMpRegenerationByDoll();
  }
  pc.killSkillEffectTimer(MEDITATION);

  try {
   if (skillId == CALL_CLAN || skillId == RUN_CLAN) { // コールクラン、ランクラン
    if (charName.isEmpty()) {
     // 名前が空の場合クライアントで弾かれるはず
     return;
    }

    L1PcInstance target = L1World.getInstance().getPlayer(charName);

    if (target == null) {
     // メッセージが正確であるか未調査
     pc.sendPackets(new S_ServerMessage(73, charName)); // \f1%0はゲームをしていません。
     return;
    }
    if (pc.getClanid() != target.getClanid()) {
     pc.sendPackets(new S_ServerMessage(414)); // 同じ血盟員ではありません。
     return;
    }
    targetId = target.getId();
    if (skillId == CALL_CLAN) {
     // 移動せずに連続して同じクラン員にコールクランした場合、向きは前回の向きになる
     int callClanId = pc.getCallClanId();
     if (callClanId == 0 || callClanId != targetId) {
      pc.setCallClanId(targetId);
      pc.setCallClanHeading(pc.getHeading());
     }
    }
   }
   L1SkillUse l1skilluse = new L1SkillUse();
   l1skilluse.handleCommands(pc, skillId, targetId, targetX, targetY,message, 0, L1SkillUse.TYPE_NORMAL);

  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

Opcodes

/*
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 * 02111-1307, USA.
 *
 * http://www.gnu.org/copyleft/gpl.html
 */
package l1j.server.server;

public class Opcodes {

 public Opcodes() {
 }
 /** 3.63C測試 Client Packet */

 /** 3.3新地圖系統 */
 public static final int C_OPCODE_MAPSYSTEM = 41;//59;//254;

 /** 登入伺服器OK */
 public static final int C_OPCODE_LOGINTOSERVEROK = 75;//118;//196;

 /** 要求打開郵箱 */
 public static final int C_OPCODE_MAIL = 22;//73;//46;

 /** 要求登入測試 ( 接收伺服器版本 ) */
 public static final int C_OPCODE_CLIENTVERSION = 127;//211;//160;

 /** 要求血盟數據(例如盟標) */
 public static final int C_OPCODE_CLAN = 246;//156;//197;

 /** 要求離開遊戲 */
 public static final int C_OPCODE_QUITGAME = 104;//66;//30;

 /** 要求使用一般聊天頻道 */
 public static final int C_OPCODE_CHAT = 190;//193;//146;

 /** 要求角色移動 */
 public static final int C_OPCODE_MOVECHAR = 95;//163;//190;

 /** 要求給予角色血盟階級 C_Rank */
 public static final int C_OPCODE_SECOND_PLEDGE = 88;//244;//113;

 /** 要求角色攻擊 */
 public static final int C_OPCODE_ATTACK = 68;//120;//165;

 /** 要求使用遠距武器 */
 public static final int C_OPCODE_ARROWATTACK = 247;//243;

 /** 要求進入遊戲 */
 public static final int C_OPCODE_LOGINTOSERVER = 131;//20;//63;

 /** 要求更新時間 */
 public static final int C_OPCODE_KEEPALIVE = 182;//245;//176;

 /** 要求使用物品 */
 public static final int C_OPCODE_USEITEM = 44;//0;//106;

 /** 要求使用技能 */
 public static final int C_OPCODE_USESKILL = 115;//94;//206;

 /** 要求自動登錄伺服器 與 師徒系統*/
 public static final int C_OPCODE_AUTOLOGIN = 162;//62;//204;

 /** 要求紀錄快速鍵 */
 public static final int C_OPCODE_CHARACTERCONFIG = 129;//129;//42;

 /** 要求切換角色 (到選人畫面) */
 public static final int C_OPCODE_CHANGECHAR = 237;//112;//227;

 /** 要求讀取公佈欄 */
 public static final int C_OPCODE_BOARD = 73;//247;//13;

 /** 要求閱讀佈告單個欄訊息 */
 public static final int C_OPCODE_BOARDREAD = 59;//13;//55;

 /** 要求使用密語聊天頻道 */
 public static final int C_OPCODE_CHATWHISPER = 122;//172;//171;

 /** 要求物件對話視窗結果 */
 public static final int C_OPCODE_NPCACTION = 37;//33;//178;

 /** 要求丟棄物品 */
 public static final int C_OPCODE_DROPITEM = 54;//4;//52;

 /** 要求物件對話視窗 */
 public static final int C_OPCODE_NPCTALK = 58;//184;//21;

 /** 要求使用廣播聊天頻道 */
 public static final int C_OPCODE_CHATGLOBAL = 62;//176;//210;

 /** 要求刪除物品 */
 public static final int C_OPCODE_DELETEINVENTORYITEM = 209;//107;//39;

 /** 要求撿取物品 */
 public static final int C_OPCODE_PICKUPITEM = 188;//131;//92;

 /** 要求開關門  */
 public static final int C_OPCODE_DOOR = 199;//77;//143;

 /** 要求列表物品取得 */
 public static final int C_OPCODE_RESULT = 40;//115;//115;

 /** 要求刪除角色 */
 public static final int C_OPCODE_DELETECHAR = 10;//50;//188;

 /** 要求查詢血盟成員 */
 public static final int C_OPCODE_PLEDGE = 225;//18;//252;

 /** 要求創造角色 */
 public static final int C_OPCODE_NEWCHAR = 253;//93;//245;

 /** 玩家傳送鎖定 (回溯檢測用)*/
 public static final int C_OPCODE_TELEPORTLOCK = 226;//7;//134;

 /** 要求維修物品清單 */
 public static final int C_OPCODE_FIX_WEAPON_LIST = 106;//151;//183;

 /** 要求學習魔法(金幣) */
 public static final int C_OPCODE_SKILLBUY = 173;//9;//140;

 /** 要求傳送 更新周圍物件 ( 無動畫傳送後 ) */
 public static final int C_OPCODE_TELEPORT = 242;//25;//225;

 /** 要求開個人商店 */
 public static final int C_OPCODE_SHOP = 16;//198;//69;

 /** 要求改變角色面向 */
 public static final int C_OPCODE_CHANGEHEADING = 65;//205;//234;

 /** 要求死亡後重新開始 */
 public static final int C_OPCODE_RESTART = 71;//55;//103;

 /** 要求查詢遊戲人數 */
 public static final int C_OPCODE_WHO = 49;//157;//8;

 /** 要求攻擊指定物件(寵物&召喚) */
 public static final int C_OPCODE_SELECTTARGET = 155;//38;//96;

 /** 要求變更倉庫密碼 && 送出倉庫密碼 */
 public static final int C_OPCODE_WAREHOUSELOCK = 81;//147;//137;

 /** 要求賦予封號 */
 public static final int C_OPCODE_TITLE = 96;//79;//195;

 /** 要求查詢PK次數 */
 public static final int C_OPCODE_CHECKPK = 137;//83;//230;

 /** 要求新增好友 */
 public static final int C_OPCODE_ADDBUDDY = 99;//135;//175;

 /** 要求增加記憶座標 */
 public static final int C_OPCODE_ADDBOOKMARK = 134;//29;//255;

 /** 要求刪除記憶座標 */
 public static final int C_OPCODE_BOOKMARKDELETE = 223;//23;//149;

 /** 要求寫入公佈欄訊息 */
 public static final int C_OPCODE_BOARDWRITE = 14;//8;//28;

 /** 要求刪除公佈欄內容 */
 public static final int C_OPCODE_BOARDDELETE = 12;//63;//29;

 /** 要求給予物品 */
 public static final int C_OPCODE_GIVEITEM = 244;//250;//98;

 /** 要求寵物回報選單(顯示寵物背包物品窗口) */
 public static final int C_OPCODE_PETMENU = 217;//160;//127;

 /** 要求查詢朋友名單 */
 public static final int C_OPCODE_BUDDYLIST = 60;//132;//222;

 /** 要求刪除好友 */
 public static final int C_OPCODE_DELBUDDY = 211;//72;//233;

 /** 要求退出觀看模式 */
 public static final int C_OPCODE_EXIT_GHOST = 210;//154;//59;

 /** 要求角色表情動作 */
 public static final int C_OPCODE_EXTCOMMAND = 157;//182;//108;

 /** 要求驅逐人物離開血盟 */
 public static final int C_OPCODE_BANCLAN = 222;//200;//118;

 /** 要求確定數量選取 */
 public static final int C_OPCODE_AMOUNT = 109;//67;//62;

 /** 要求使用拒絕名單(開啟指定人物訊息)/exclude 名字*/
 public static final int C_OPCODE_EXCLUDE = 101;//37;//72;

 /** 要求點選項目的結果 */
 public static final int C_OPCODE_ATTR = 61;//10;//5;

 /** 要求交易(個人) */
 public static final int C_OPCODE_TRADE = 103;//181;//19;

 /** 要求交易(添加物品) */
 public static final int C_OPCODE_TRADEADDITEM = 241;//188;//211;

 /** 要求完成交易(個人) */
 public static final int C_OPCODE_TRADEADDOK = 110;//170;//50;

 /** 要求加入血盟 */
 public static final int C_OPCODE_JOINCLAN = 30;;//224;//217;

 /** 要求創立血盟 */
 public static final int C_OPCODE_CREATECLAN = 154;//148;//166;

 /** 要求取消交易(個人) */
 public static final int C_OPCODE_TRADEADDCANCEL = 167;//88;//94;

 /** 要求個人商店 (物品列表) */
 public static final int C_OPCODE_PRIVATESHOPLIST = 193;//123;//105;

 /** 要求決鬥 */
 public static final int C_OPCODE_FIGHT = 47;//41;//38;

 /** 要求邀請加入隊伍(要求創立隊伍) 3.3新增委任隊長功能*/
 public static final int C_OPCODE_CREATEPARTY = 66;//16;//145;

 /** 要求隊伍對話控制(命令/chatparty) */
 public static final int C_OPCODE_CAHTPARTY = 113;//61;//2;

 /** 要求脫離隊伍 */
 public static final int C_OPCODE_LEAVEPARTY = 204;//43;//84;

 /** 要求結婚 (指令 /求婚)*/
 public static final int C_OPCODE_PROPOSE = 185;//201;//33;

 /** 要求鼠標右鍵傳入洞穴 */
 public static final int C_OPCODE_ENTERPORTAL = 249;//239;//229;

 /** 要求配置城牆上弓手 */
 public static final int C_OPCODE_PUTBOWSOLDIER = 7;//45;//104;

 /** 要求僱傭傭兵列表 (購買) */
 public static final int C_OPCODE_HIRESOLDIER = 170;//17;//105;

 /** 要求查看隊伍 */
 public static final int C_OPCODE_PARTYLIST = 42;//190;//174;

 /** 要求領出資金 */
 public static final int C_OPCODE_DRAWAL = 192;//232;//108;

 /** 要求存入資金 */
 public static final int C_OPCODE_DEPOSIT = 35;//206;//109;

 /** 要求踢出隊伍 */
 public static final int C_OPCODE_BANPARTY = 70;//213;//170;

 /** 要求釣魚收桿 */
 public static final int C_OPCODE_FISHCLICK = 26;//161;//23;

 /** 要求上傳盟標 */
 public static final int C_OPCODE_EMBLEM = 107;//253;//9;

 /** 要求物品維修/取出寵物 */
 public static final int C_OPCODE_SELECTLIST = 238;//166;//205;

 /** 要求宣戰 */
 public static final int C_OPCODE_WAR = 235;//;//100;//246;

 /** 要求脫離血盟 */
 public static final int C_OPCODE_LEAVECLANE = 121;//102;//220;

 /** 要求學習魔法完成 */
 public static final int C_OPCODE_SKILLBUYOK = 207;//177;

 /** 要求重置人物點數 */
 public static final int C_OPCODE_CHARRESET = 236;//125;//-1016;

 /** 要求設置治安管理 */
 public static final int C_OPCODE_CASTLESECURITY = 125;//76;//-1011;

 /** 要求血盟推薦數據 */
 public static final int C_OPCODE_CLAN_RECOMMEND = 228;

 /** 要求下一步 ( 公告資訊 ) */
 public static final int C_OPCODE_COMMONCLICK = 53;//;//178;//1013;

 /** 要求登入伺服器 */
 public static final int C_OPCODE_LOGINPACKET = 57;//199;//191;

 /** 要求召喚到身邊(gm) */
 public static final int C_OPCODE_CALL = 144;//90;//179;

 /** 要求使用寵物裝備 */
 public static final int C_OPCODE_USEPETITEM = 213;//49;//-1014;

 /** 要求寄送簡訊 未用 */
 public static final int C_OPCODE_SMS = 45;//122;//82;

 /** 要求下一頁 ( 公佈欄 )*/
 public static final int C_OPCODE_BOARDNEXT = 221;//98;//49;

 /** 要求船票數量 */
 public static final int C_OPCODE_SHIP = 117;//97;//-101;

 /** 要求選擇 變更攻城時間 */
 public static final int C_OPCODE_SELECTWARTIME = 150;//44;//103;

 /** 要求配置已僱傭 傭兵  選擇配置數量*/
 public static final int C_OPCODE_PUTHIRESOLDIERLIST = 138;//208;//

 /** 要求配置已僱傭 傭兵 OK */
 public static final int C_OPCODE_PUTHIRESOLDIER = 172;//138;//107;

 /** 要求稅收設定封包 */
 public static final int C_OPCODE_TAXRATE = 200;//165;//1010;

 /** 要求治安管理  OK*/
 public static final int C_OPCODE_SETCASTLESECURITY = 149;//177;//1012;


 /** 進入遊戲 */
 public static final int S_OPCODE_LOGINTOGAME = 131;//27;//163;

 /** 重置設定 */
 public static final int S_OPCODE_CHARRESET = 33;//57;//130;

 /** 界面寵物控制菜單消失 */
 public static final int S_OPCODE_DELPETMENU = 33;//57;//130;

 /** 角色資訊 */
 public static final int S_OPCODE_CHARLIST = 184;//167;//15;

 /** 物品名單 */
 public static final int S_OPCODE_INVLIST = 180;//51;//204;

 /** 物品顯示名稱 */
 public static final int S_OPCODE_ITEMNAME = 195;//230;//225;

 /** 初始化OpCode */
 public static final int S_OPCODE_INITPACKET = 161;//206;//180;

 /** 角色選擇視窗 / 開啟拒絕名單 (封包盒子) */
 public static final int S_OPCODE_PACKETBOX = 40;//29;//249;
 public static final int S_OPCODE_ACTIVESPELLS = 40;//29;//249;
 public static final int S_OPCODE_SKILLICONGFX = 40;//29;//249;
 public static final int S_OPCODE_UNKNOWN2 = 40;//29;//249;


 /** 魔法攻擊力與魔法防禦力 */
 public static final int S_OPCODE_SPMR = 174;//85;//210;

 /** 增加魔法進魔法名單 */
 public static final int S_OPCODE_ADDSKILL = 48;//61;//108;

 /** 角色屬性與能力值 */
 public static final int S_OPCODE_OWNCHARSTATUS = 145;//238;//255;

 /** 更新角色所在的地圖 */
 public static final int S_OPCODE_MAPID = 150;//82;//113;

 /** 物件封包 */
 public static final int S_OPCODE_CHARPACK = 3;//39;//176;

 /** 伺服器版本 */
 public static final int S_OPCODE_SERVERVERSION = 151;//106;//221;

 /** 丟棄物品封包 */
 public static final int S_OPCODE_DROPITEM = 3;//39;//176;

 /** 角色狀態 (2) */
 public static final int S_OPCODE_OWNCHARSTATUS2 = 216;//203;//41;

 /** 更新目前遊戲時間 ( 遊戲時間 ) */
 public static final int S_OPCODE_GAMETIME = 194;//17;//38;

 /** 物件刪除 */
 public static final int S_OPCODE_REMOVE_OBJECT = 185;//75;//169;

 /** 登入狀態 */
 public static final int S_OPCODE_LOGINRESULT = 51;//109;//5;

 /** 角色列表 */
 public static final int S_OPCODE_CHARAMOUNT = 126;//103;//62;

 /** 廣播聊天頻道  */
 public static final int S_OPCODE_GLOBALCHAT = 10;//124;//137;

 /** 廣播聊天頻道 / 伺服器訊息 ( 字串 ) */
 public static final int S_OPCODE_SYSMSG = 10;//124;//137;

 /** 伺服器訊息 ( 行數 ) / ( 行數, 附加字串 ) */
 public static final int S_OPCODE_SERVERMSG = 14;//242;//212;

 /** 一般聊天頻道 */
 public static final int S_OPCODE_NORMALCHAT = 76;//81;//216;

 /** 非玩家聊天頻道 { 一般 & 大喊 } NPC */
 public static final int S_OPCODE_NPCSHOUT = 133;//251;//119;

 /** 郵件封包 */
 public static final int S_OPCODE_MAIL = 1;//113;//231;

 /** 物件移動 */
 public static final int S_OPCODE_MOVEOBJECT = 122;//137;//80;

 /** 正義值更新 */
 public static final int S_OPCODE_LAWFUL = 140;//56;//36;

 /** 角色封號 */
 public static final int S_OPCODE_CHARTITLE = 202;//127;//233;

 /** 角色記憶座標名單 */
 public static final int S_OPCODE_BOOKMARKS = 11;//97;//70;

 /** 魔法購買 (金幣) */
 public static final int S_OPCODE_SKILLBUY = 222;//25;//90;

 /** 物品可用次數 */
 public static final int S_OPCODE_ITEMAMOUNT = 127;//227;//97;

 /** 物品狀態更新 */
 public static final int S_OPCODE_ITEMSTATUS = 127;//227;//97;

 /** 物件動作種類 ( 短時間 ) */
 public static final int S_OPCODE_DOACTIONGFX = 218;//189;//72;

 /** 產生動畫 [ 物件 ] */
 public static final int S_OPCODE_SKILLSOUNDGFX = 232;//95;//254;

 /** 物件面向 */
 public static final int S_OPCODE_CHANGEHEADING = 199;//77;//124;

 /** 物件屬性 (門 開關)*/
 public static final int S_OPCODE_ATTRIBUTE = 35;//138;//60;

 /** 物件攻擊 */
 public static final int S_OPCODE_ATTACKPACKET = 142;//67;//240;

 /** 角色盟徽 */
 public static final int S_OPCODE_EMBLEM = 50;//140;//202;

 /** 產生動畫 [ 地點 ] */
 public static final int S_OPCODE_EFFECTLOCATION = 112;//132;//159;

 /** 魔法 | 物品效果 { 加速纇 } */
 public static final int S_OPCODE_SKILLHASTE = 149;//185;//24;

 /** 效果圖示 { 水底呼吸 } */
 public static final int S_OPCODE_BLESSOFEVA = 12;//52;//0;

 /** 產生對話視窗 */
 public static final int S_OPCODE_SHOWHTML = 119;//135;//105;

 /** 物品購買 */
 public static final int S_OPCODE_SHOWSHOPBUYLIST = 254;//4;//206;

 /** 體力更新 */
 public static final int S_OPCODE_HPUPDATE = 42;//245;//47;

 /** 魔力更新 */
 public static final int S_OPCODE_MPUPDATE = 73;//195;//126;

 /** 物品增加封包 */
 public static final int S_OPCODE_ADDITEM = 63;//37;//149;

 /** 物品刪除 */
 public static final int S_OPCODE_DELETEINVENTORYITEM = 148;//38;//156;

 /** NPC物品販賣 */
 public static final int S_OPCODE_SHOWSHOPSELLLIST = 170;//9;//53;

 /** NPC外型改變 */
 public static final int S_OPCODE_POLY = 164;//100;//182;

 /** 物件動作種類 ( 長時間 ) */
 public static final int S_OPCODE_CHARVISUALUPDATE = 113;//118;//220;

 /** 損壞武器名單 */
 public static final int S_OPCODE_SELECTLIST = 208;//129;//147;

 /** 人物回碩檢測  OR 傳送鎖定 ( 無動畫 ) */
 public static final int S_OPCODE_TELEPORTLOCK = 135;//102;//8;

 /** 要求傳送 ( NPC傳送反手 ) */
 public static final int S_OPCODE_TELEPORT = 4;//50;//170;

 /** 魔法效果 - 暗盲咒術 { 編號 } */
 public static final int S_OPCODE_CURSEBLIND = 238;//144;//178;

 /** 遊戲天氣 */
 public static final int S_OPCODE_WEATHER = 193;//239;//42;

 /** 角色皇冠 */
 public static final int S_OPCODE_CASTLEMASTER = 66;//48;//85;

 /** 角色防禦 & 屬性防禦 更新 */
 public static final int S_OPCODE_OWNCHARATTRDEF = 15;//26;//226;

 /** 倉庫物品名單 */
 public static final int S_OPCODE_SHOWRETRIEVELIST = 250;//70;//248;

 /** 選項封包 { Yes | No } */
 public static final int S_OPCODE_YES_NO = 155;//24;//160;

 /** 交易狀態 */
 public static final int S_OPCODE_TRADESTATUS = 239;//46;//181;

 /** 物件復活 */
 public static final int S_OPCODE_RESURRECTION = 227;//7;//13;

 /** 物件血條 */
 public static final int S_OPCODE_HPMETER = 128;//33;//150;

 /** 交易封包 */
 public static final int S_OPCODE_TRADE = 77;//2;//146;

 /** 增加交易物品封包 */
 public static final int S_OPCODE_TRADEADDITEM = 86;//40;//131;

 /** 改變物件名稱 */
 public static final int S_OPCODE_CHANGENAME = 204;//175;//104;

 /** 選擇一個目標 */
 public static final int S_OPCODE_SELECTTARGET = 177;//5;//239;

 /** 魔法效果 : 中毒 { 編號 } */
 public static final int S_OPCODE_POISON = 93;//91;//183;

 /** 魔法動畫 { 精準目標 } */
 public static final int S_OPCODE_TRUETARGET = 110;//6;//138;

 /** 魔法效果 : 防禦纇 */
 public static final int S_OPCODE_SKILLICONSHIELD = 69;//44;//81;

 /** 物品資訊訊息 { 使用String-h.tbl } */
 public static final int S_OPCODE_IDENTIFYDESC = 43;//224;//76;

 /** 海底波紋(第三段加速) */
 public static final int S_OPCODE_LIQUOR = 31;//23;//120;

 /** 魔法 | 物品效果圖示 { 勇敢藥水纇 } */
 public static final int S_OPCODE_SKILLBRAVE = 200;//198;//3;

 /** 力量提升封包 */
 public static final int S_OPCODE_STRUP = 120;//31;//25;

 /** 敏捷提升封包 */
 public static final int S_OPCODE_DEXUP = 28;//253;//103;

 /** 血盟小屋名單 */
 public static final int S_OPCODE_HOUSELIST = 24;//252;//51;

 /** 血盟小屋地圖 [ 地點 ] */
 public static final int S_OPCODE_HOUSEMAP = 44;//101;//188;

 /** 物件亮度 */
 public static final int S_OPCODE_LIGHT = 53;//177;//1;

 /** 撥放音效 */
 public static final int S_OPCODE_SOUND = 84;//161;//172;

 /** 拍賣公告欄選取金幣數量     選取物品數量 */
 public static final int S_OPCODE_INPUTAMOUNT = 253;//141;//136;

 /** 要求使用密語聊天頻道 */
 public static final int S_OPCODE_WHISPERCHAT = 255;//157;//75;

 /** 角色名稱變紫色 */
 public static final int S_OPCODE_PINKNAME = 252;//162;//174;

 /** 魔法效果 : 詛咒類 { 編號 } 麻痺,癱瘓 */
 public static final int S_OPCODE_PARALYSIS = 165;//226;//253;

 /** 角色個人商店 { 購買 } */
 public static final int S_OPCODE_PRIVATESHOPLIST = 190;//28;

 /** 夜視功能 */
 public static final int S_OPCODE_ABILITY = 116;//114;//144;

 /** 範圍魔法 */
 public static final int S_OPCODE_RANGESKILLS = 16;//174;//201;

 /** 佈告欄 ( 訊息列表 ) */
 public static final int S_OPCODE_BOARD = 64;//45;//189;

 /** 佈告欄( 訊息閱讀 ) */
 public static final int S_OPCODE_BOARDREAD = 56;//194;//195;

 /** 物件隱形 & 現形 */
 public static final int S_OPCODE_INVIS = 57;//3;//186;

 /** 角色創造失敗 */
 public static final int S_OPCODE_NEWCHARWRONG = 153;//19;//74;

 /** 創造角色封包 */
 public static final int S_OPCODE_NEWCHARPACK = 212;//197;//141;

 /** 角色移除 [ 非立即 ] */
 public static final int S_OPCODE_DETELECHAROK = 5;//231;//222;

 /** 移除魔法出魔法名單 */
 public static final int S_OPCODE_DELSKILL = 18;//146;//30;

 /** 動作自帶魔法動畫的範圍魔法封包(無指定動畫) */
 public static final int S_OPCODE_NO_GFX_RANGE_ATTACK = 8;//22;//37;

 /** 物品狀態 (祝福 & 詛咒)*/
 public static final int S_OPCODE_ITEMCOLOR = 144;//98;//236;

 /** 公告視窗 */
 public static final int S_OPCODE_COMMONNEWS = 30;//249;//145;

 /** 配置牆上弓手  */
 public static final int S_OPCODE_PUTBOWSOLDIERLIST = 240;//131;//241;

 /** 經驗值更新封包 */
 public static final int S_OPCODE_EXP = 121;//229;//59;

 /** 畫面正中出現紅色字(Account ? has just logged in form)*/
 public static final int S_OPCODE_REDMESSAGE = 90;//53;//237;

 /** 圍城時間設定 */
 public static final int S_OPCODE_WARTIME = 49;//232;//247;

 /** 取出城堡寶庫金幣 (1) */
 public static final int S_OPCODE_DRAWAL = 224;//16;//96;

 /** 存入資金城堡寶庫 (2) */
 public static final int S_OPCODE_DEPOSIT = 203;//84;//58;

 /** 稅收設定封包 */
 public static final int S_OPCODE_TAXRATE = 72;//128;//43;

 /** 配置擁有 傭兵名單 */
 public static final int S_OPCODE_PUTSOLDIERLIST = 256;//43;//33;

 /** 僱傭傭兵 傭兵名單(購買列表) */
 public static final int S_OPCODE_HIRESOLDIER = 210;//213;//16;

 /** 配置傭兵 */
 public static final int S_OPCODE_PUTHIRESOLDIER = 39;//14;//200;

 /** 立即中斷連線 */
 public static final int S_OPCODE_DISCONNECT = 95;//15;//175;

 /** 血盟戰爭訊息 { 編號, 血盟名稱, 目標血盟名稱 } */
 public static final int S_OPCODE_WAR = 123;//55;//123;

 /** 藍色訊息 { 使用String-h.tbl } 紅色字(地獄顯示字)*/
 public static final int S_OPCODE_BLUEMESSAGE = 59;//171;//177;
}
 

 

 

 

[출처] 대만옵코드 S_ServerVersion 올려달라는분이 잇어서여~~나머지는 기억부분 소스인듯.. (비공개 카페)

 

번호 제목 글쓴이 날짜 조회 수
공지 소스자료는 직접 올려주세요 게임존 2017.06.06 550
459 글말 고대물품 준희미니 2016.07.05 35
458 UI6차 [롤코] 글루딘 고대물품 관련 준희미니 2016.07.05 30
457 롤코 소스 간략화 준희미니 2016.07.05 32
456 3.63대만 접속기 옵코드 대만사이트서 공개 되어잇네여 준희미니 2016.07.05 223
455 짜집기 리치인형 준희미니 2016.07.05 49
» 대만옵코드 S_ServerVersion 올려달라는분이 잇어서여~~나머지는 기억부분 소스인듯.. 준희미니 2016.07.05 112
453 S_EquipmentWindow 패킷오류수정에바에맞게 준희미니 2016.07.05 33
452 인형레이스번호 준희미니 2016.07.05 42
451 [수정]18세님꺼 장비 장착 룬 적용 안되시는분... 준희미니 2016.07.05 50
450 계급: %s(으)로 계급 임명함 or 계급: %s을(를) %s(으)로 임명함 file 준희미니 2016.07.05 33
449 3.63c 수호기사 /가입 허용 준희미니 2016.07.05 29
448 몹트렙 준희미니 2016.07.05 74
447 매칭 조금덧붙인부분 준희미니 2016.07.05 58
446 매칭 덧붙인부분 준희미니 2016.07.05 13
445 매칭 덧붙인부분(포기 준희미니 2016.07.05 22
444 .정리 오류나는분 준희미니 2016.07.05 75
443 싸이 인형 입니다 준희미니 2016.07.05 77
442 배틀존 용기사 변신 준희미니 2016.07.05 38
441 짜집기 트리플애로우^^;; 준희미니 2016.07.05 82
440 짜집기 언케니닷지 준희미니 2016.07.05 46
439 짜집기 대마법사의모자 준희미니 2016.07.05 42
438 펌 핫식스 힘이 불끈 준희미니 2016.07.05 31
437 안톤 끝내 포기하면서 허접한 제작 주문서 올랴보아요 준희미니 2016.07.05 64
436 안톤 먹튀하시는분들 보세요 초보소스 준희미니 2016.07.05 61
435 UI6 안톤NPC _ 멸마 제작관련 준희미니 2016.07.05 49
434 인던초기화 준희미니 2016.07.05 61
433 인챈트 웨폰 / 블래스 아머 버프창 표시 준희미니 2016.07.05 130
432 인챈표기실시간 [1] 준희미니 2016.07.05 119
431 속강에 스펠도넣긔-ㅁ-ㅋ 준희미니 2016.07.05 38
430 mapids.sql 준희미니 2016.07.05 43
429 textmapreader 및 mapid 및 map파일 준희미니 2016.07.05 45
428 기억의 구슬 창 패킷 file 준희미니 2016.07.05 77
427 만월의정기나 리퍼같은거 엘원몹인분 준희미니 2016.07.05 27
426 신생아님요청 준희미니 2016.07.05 41
425 던전초기화 준희미니 2016.06.29 114
424 npc삭제하기 준희미니 2016.06.29 133
423 인던초기화(끌어올림 준희미니 2016.06.29 42
422 [수정1] 데스나이트 불검 커스텀 버전 준희미니 2016.06.29 193
421 린드비오르 갑옷 라이브화 (7/10 업데이트 적용 준희미니 2016.06.29 111
420 크리티컬 마법이펙트입니다; 고생들하세용 준희미니 2016.06.29 163
419 유저에게 스톰워크를 쓸 수 있도록 해주자 준희미니 2016.06.29 96
418 [UI6] 레벨업 버프 효과 준희미니 2016.06.29 56
417 댄싱 블레이즈 (야매) 준희미니 2016.06.29 62
416 운영자 파티 준희미니 2016.06.29 51
415 지혜의 물약 리뉴얼 준희미니 2016.06.29 65
414 만인첸시 속성 안되시는분들 있으셔서 홧팅 준희미니 2016.06.29 52
413 속성 변환 주문서(보내기는 아이디공개 합니다.) 준희미니 2016.06.29 52
412 10주년 아이템 강화하자 //질문있습니다 준희미니 2016.06.29 28
411 오림시스템[해양전] 준희미니 2016.06.29 68
410 쥬니a님 요청자료 준희미니 2016.06.29 73