- UID
- 84897
- 帖子
- 528
- 主題
- 528
- 精華
- 0
- 積分
- 552
- 楓幣
- 5591
- 威望
- 549
- 存款
- 0
- 贊助金額
- 0
- 推廣
- 0
- GP
- 549
- 閱讀權限
- 50
- 性別
- 保密
- 在線時間
- 51 小時
- 註冊時間
- 2014-11-29
- 最後登入
- 2015-2-8
|
2013/11/30 增加修改(1-1)、更新修改(2)修改(3)~說明在4樓
修正當人物坐標~
RO伺服器 跟 OP 不一樣時
造成卡住不動的Bug~
請注意: 以下修改涉及主程式修改,
稍有不慎恐會造成 Openkore 無法執行,若無把握請勿嘗試,
建議修改前先備份該相關檔案,以備不時之需(Sofax222 大大的語錄)
開啟檔案 srcTaskRoute.pm
=====修改(1) =====
原程式碼修改成- } elsif ($self->{index} == 0) {
複製代碼 修改 01 行~避免卡住
開啟檔案 srcNetworkReceiveServerType0.pm
=====修改(2) =====
原程式碼- # Perform trigger actions
- if ($sourceID eq $accountID) {
- $char->{time_cast} = time;
- $char->{time_cast_wait} = $wait / 1000;
- delete $char->{cast_cancelled};
- }
複製代碼 修改成- # Perform trigger actions
- if ($sourceID eq $accountID) {
- $char->{time_cast} = time;
- $char->{time_cast_wait} = $wait / 1000;
- delete $char->{cast_cancelled};
- }
- if (my $player = ($accountID eq $sourceID && $char) || $playersList->getByID($sourceID) || $slavesList->getByID($sourceID)) {
- if ($player->{pos}{x} != $player->{pos_to}{x} || $player->{pos}{y} != $player->{pos_to}{y}) {
- %{$player->{pos}} = %{calcPosition($player)};
- %{$player->{pos_to}} = %{$player->{pos}};
- $player->{time_move_calc} = 0;
- if ($char->{party} && $char->{party}{users} && $char->{party}{users}{$sourceID}) {
- %{$char->{party}{users}{$sourceID}{pos}} = %{$player->{pos}};
- $char->{party}{users}{$sourceID}{online} = 1;
- }
- }
- }
複製代碼 複製代碼
增加 07 - 18 行~
開啟檔案 srcMisc.pm
=====修改(3) =====
原程式碼- if ($damage == 0) {
- ($accountID eq $targetID ? $monster->{missedYou} : $monster->{missedToPlayer}{$targetID}) += 1;
- $player->{missedFromMonster}{$sourceID}++;
- }
複製代碼 修改成- if ($damage == 0) {
- ($accountID eq $targetID ? $monster->{missedYou} : $monster->{missedToPlayer}{$targetID}) += 1;
- $player->{missedFromMonster}{$sourceID}++;
- } elsif ($damage > 0
- && ($player->{pos}{x} != $player->{pos_to}{x} || $player->{pos}{y} != $player->{pos_to}{y})
- && !$player->statusActive('EFST_ENDURE')) {
- %{$player->{pos}} = %{calcPosition($player)};
- %{$player->{pos_to}} = %{$player->{pos}};
- $player->{time_move_calc} = 0;
- if ($char->{party} && $char->{party}{users} && $char->{party}{users}{$targetID}) {
- %{$char->{party}{users}{$targetID}{pos}} = %{$player->{pos}};
- $char->{party}{users}{$targetID}{online} = 1;
- }
- }
複製代碼 增加 04 - 15 行~
被攻擊時~又不在"霸體狀態"時~
計算出實際座標~
視地形 & LAG 情況~誤差約0 ~ 2 格
開啟檔案 srcNetworkReceive.pm
=====修改(4) =====
原程式碼- use strict;
- use Network::PacketParser; # import
- use base qw(Network::PacketParser);
- use encoding 'utf8';
複製代碼
|
|