查看: 681|回復: 20

[經驗] 新手教学贴(什么都可以问)

[複製鏈接]

13

主題

136

帖子

3090

金錢

暗殺軍王.史雷佛

Rank: 8Rank: 8

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
45
積分
3226
在線時間
29 小時
相冊
0
日誌
0
好友
3
QQ
發表於 2024-4-10 07:09 | 顯示全部樓層 |閱讀模式
有任何问题可以留言,请尽量不要贴图,以文字形式描述遇到的问题为佳,因为是在内地,不翻墙经常看不到图片。


不定期会上来回答问题并与大家相互学习。

问题包括但不限于源码、变身档编译(包括跑步、残影编译)等等,但是登陆器方面确实不懂,可能解答不了。


PS:
本人不卖版本,对天堂纯属情怀。


先分享一个解决容易造成CPU爆炸的代码写法吧。

如果你要从世界获取一个物件来长期使用,请不要使用 for (xxxx xx : world.get().getXXX(X) 的代码,而应该在最初期就把这个对象定义下来。

比如,你要一个随身助手,或者随身祭司(奶妈)等等,或者获取一个固定的怪物目标。

可以使用类似 L1Character XXX
XXX = World.get().getFindObjId(objid)
或者
pc.XXX = this(物件) 之类
之后调用这个对象的时候就直接使用 XXX 即可
尤其是

  1. for (L1Object obj : World.get().getAllObj())  {
  2.         if (obj.getXXX() == xxx) {
  3.                 dosomething();
  4.         }
  5. }
複製代碼

这样的代码,一定要慎用。
假设,你要写两只编号分别为 123、321的BOSS靠近后产生特殊效果(比如靠近十码内无敌),就一定不能用这种循环写法,哪怕是32核的CPU,也会在极短时间内爆掉。
那么应该怎么写呢?
我们在L1NpcInstance先定义一个变量,比如 isCloseBoss
在怪物出生或者你需要它变成这样的时候就给它定义好,直接


  1. switch(npc.getNpcId()) {
  2.         case 123:
  3.         case 312:
  4.                 setCloseBoss(true);
  5.                 break;
  6. }
複製代碼

  1. if (npc.isCloseBoss) dosomething();
複製代碼


以上呢,是我经历过多次爆CPU后抓线程抓出来的一点经验,哪怕是连续攻击封包中的,都建议不要使用 World.get().getFindObjId(targetAttackId),表面看是瞬间的事,实际上还是遍历了一次世界编号,然后到 targetAttackId 才停止的,世界物件太多可能就会对资源使用造成影响,累积过多可能还会造成频繁GC,然后爆内存。
当尽量减少这些低效代码之后,伺服端连续几天不重启都不会有什么烦恼了。
同样的道理,如果是写自动打怪,建议直接用 getKnownObjects()去寻找目标,而不要用World循环,可以减少很多重复的运算,以此类推,各种重复的代码,我们也应该把它整理成一个方法来调用,这样看起来舒心,新添加东西时引用也方便。
做版本,最重要的是想法,是创新,而不是代码能力,写代码也一样,很多能实现目标的代码,我们也要看它是不是够简洁,够直接,够粗暴。




上一篇︰一登入遊戲就掛點...有請大大救命啊!!!
下一篇︰請問1.82想改天M變身
http://starway.freebbs.tw/index.php

14

主題

131

帖子

9893

金錢

巨蟻女皇

Rank: 9Rank: 9Rank: 9

威望
1
精華
0
貢獻
1
鑽石
0
閱讀權限
55
積分
10027
在線時間
31 小時
相冊
0
日誌
0
好友
0
發表於 2024-4-10 07:13 | 顯示全部樓層
有誰能分享8.8c的登入器

回復 支持 反對

使用道具 舉報

30

主題

772

帖子

2565

金錢

暗殺軍王.史雷佛

Rank: 8Rank: 8

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
45
積分
3337
在線時間
161 小時
相冊
0
日誌
0
好友
1
發表於 2024-4-10 07:40 | 顯示全部樓層
謝謝大大教學
感謝您

回復 支持 反對

使用道具 舉報

0

主題

76

帖子

1774

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
1812
在線時間
47 小時
相冊
0
日誌
0
好友
0
發表於 2024-4-10 07:54 | 顯示全部樓層
本帖最後由 jacker78251 於 2024-4-10 07:57 編輯

請問使用l1j 3.80 版本模擬器及登入器
登入時, 是先進入賬號密碼, 而不是先跑遊戲動畫
發現把 Login.cfg 的 beanfunLogin = 1 改成 0
就會變成遊戲動畫先, 如正常的遊戲啟動

但是, 輸入帳密後, 會卡主
爬文 有看到有人說把模擬器內config 資料夾的pack.properties 中的 auth 改成 false
但是這個版本好像沒有這個pack.properties 設定檔

請問該如何解決呢~?

點評

这是基础常识性的问题了,beanfunLogin是限定创建账号,只能以你在文件中预留的指定账号登录,pack.properties是用登陆器编码器加密创建的。  發表於 2024-4-10 18:28
回復 支持 反對

使用道具 舉報

11

主題

5萬

帖子

4425

金錢

法利昂

Rank: 12Rank: 12Rank: 12

威望
5
精華
0
貢獻
0
鑽石
0
閱讀權限
70
積分
59349
在線時間
413 小時
相冊
0
日誌
0
好友
0
發表於 2024-4-10 08:21 | 顯示全部樓層
感謝大大分享

回復 支持 反對

使用道具 舉報

64

主題

858

帖子

1萬

金錢

巨蟻女皇

Rank: 9Rank: 9Rank: 9

威望
5
精華
0
貢獻
0
鑽石
0
閱讀權限
55
積分
14036
在線時間
212 小時
相冊
0
日誌
0
好友
3
發表於 2024-4-10 08:31 | 顯示全部樓層
jacker78251 發表於 2024-4-10 07:54
請問使用l1j 3.80 版本模擬器及登入器
登入時, 是先進入賬號密碼, 而不是先跑遊戲動畫
發現把 Login.cfg 的 ...

編碼器解決 , 用編碼器創造

回復 支持 反對

使用道具 舉報

0

主題

76

帖子

1774

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
1812
在線時間
47 小時
相冊
0
日誌
0
好友
0
發表於 2024-4-10 19:26 | 顯示全部樓層
勇於發言 發表於 2024-4-10 08:31
編碼器解決 , 用編碼器創造

Login.cfg 我是從編碼器 編出來後改成 0 的@@

回復 支持 反對

使用道具 舉報

0

主題

76

帖子

1774

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
1812
在線時間
47 小時
相冊
0
日誌
0
好友
0
發表於 2024-4-10 19:33 | 顯示全部樓層
jacker78251 發表於 2024-4-10 07:54
請問使用l1j 3.80 版本模擬器及登入器
登入時, 是先進入賬號密碼, 而不是先跑遊戲動畫
發現把 Login.cfg 的 ...

这是基础常识性的问题了,beanfunLogin是限定创建账号,只能以你在文件中预留的指定账号登录,pack.properties是用登陆器编码器加密创建的。

大大請問, 那如果我想實現, 先進入遊戲動畫, 再進行輸入帳號密碼, 該往哪個方向研究呢?
感謝回覆


回復 支持 反對

使用道具 舉報

1

主題

50

帖子

1278

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
1328
在線時間
34 小時
相冊
0
日誌
0
好友
1
發表於 2024-4-11 17:14 | 顯示全部樓層
請問你是如何擴建人物裝備視窗格子數量的?我看你的影片人物裝備視窗可以穿滿..

[發帖際遇]: diorlive 在網吧通宵,花了 7 金錢. 幸運榜 / 衰神榜
回復 支持 反對

使用道具 舉報

13

主題

136

帖子

3090

金錢

暗殺軍王.史雷佛

Rank: 8Rank: 8

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
45
積分
3226
在線時間
29 小時
相冊
0
日誌
0
好友
3
QQ
 樓主| 發表於 2024-4-11 21:01 | 顯示全部樓層
diorlive 發表於 2024-4-11 17:14
請問你是如何擴建人物裝備視窗格子數量的?我看你的影片人物裝備視窗可以穿滿.. ...

需要对应版本主程式的支持才可以哦


363因为UI的问题,没有办法做到,除非自己改UI,但我尝试过,发现改过的UI无法生效,对主程式研究比较少,所以也没弄明白是什么原因。
7.6版本以上的UI可以改,这点可以确定。

http://starway.freebbs.tw/index.php
回復 支持 反對

使用道具 舉報

1

主題

50

帖子

1278

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
1328
在線時間
34 小時
相冊
0
日誌
0
好友
1
發表於 2024-4-11 21:30 | 顯示全部樓層
Lin-JN 發表於 2024-4-11 21:01
需要对应版本主程式的支持才可以哦

謝謝回覆

我是380, 卡在沒有足夠的 idx 位置可以使用XD


看樣子 760 以下只能改登入器了...O_Q


點評

3.8应该是可以修改UI的  發表於 2024-4-12 00:13
[發帖際遇]: diorlive 撿了錢沒交公 金錢 降了 3 . 幸運榜 / 衰神榜
回復 支持 反對

使用道具 舉報

0

主題

30

帖子

1465

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
1493
在線時間
40 小時
相冊
0
日誌
0
好友
0
發表於 2024-4-12 02:38 | 顯示全部樓層
覺醒的特效 有辦法使用核心做到完美的跟隨效果嗎 (別人也看得很順)

# 補充一下 l1j 380版本 公版登入器

回復 支持 反對

使用道具 舉報

13

主題

136

帖子

3090

金錢

暗殺軍王.史雷佛

Rank: 8Rank: 8

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
45
積分
3226
在線時間
29 小時
相冊
0
日誌
0
好友
3
QQ
 樓主| 發表於 2024-4-12 03:54 | 顯示全部樓層
Java大神 發表於 2024-4-12 02:38
覺醒的特效 有辦法使用核心做到完美的跟隨效果嗎 (別人也看得很順)

# 補充一下 l1j 380版本 公版登入器

不明白你说的”觉醒“是个什么东西。

如果是类似一个跟随的effect的话,这个是没办法做到100%的,因为你需要考虑每个PC的网络延迟。

尽量让effect所使用的图档和角色图档数量一致助移动时间一致(帧数协调),就可以最大程度上协调双方移动速度,但这也是不可能的,因为玩家会使用变身。

so,无解,毕竟天堂不是传奇,简单的套图就可以。

唯一真正能够100%解决移速协调的,只有在变身档里面套影子挂件,但这个办法明显不可取,太繁琐了。

所以,还是忍受一下偶尔二者移动时偶尔的偏离吧。



http://starway.freebbs.tw/index.php
回復 支持 反對

使用道具 舉報

24

主題

248

帖子

658

金錢

妖魔

Rank: 4

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
35
積分
906
在線時間
81 小時
相冊
0
日誌
0
好友
5
發表於 2024-4-16 00:40 | 顯示全部樓層
大神好。
想請問關於武器魔法特效問題
我在一把武器,想用上巴拉卡斯-範圍流星雨
進入遊戲攻擊怪物,魔法特效都沒有出來
已經把機率設定為100%了

有些魔法可以顯現出來
有些就不行,

請問我該怎麼設定,材都有辦法顯現出來。
還是哪個環節錯誤。


也新增在DB,weapon_skill

回復 支持 反對

使用道具 舉報

13

主題

136

帖子

3090

金錢

暗殺軍王.史雷佛

Rank: 8Rank: 8

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
45
積分
3226
在線時間
29 小時
相冊
0
日誌
0
好友
3
QQ
 樓主| 發表於 2024-4-18 00:49 | 顯示全部樓層
新手上路 發表於 2024-4-16 00:40
大神好。
想請問關於武器魔法特效問題
我在一把武器,想用上巴拉卡斯-範圍流星雨

每个版本的 weapon_skill 功能不一定相同,主要看作者。


有的是必须写skill_id,然后特效使用的是 skill 里面的 castgfx 或者 castgfx2。
有的则是写skill_id,特效使用skill对应的特效,如果skill_id为0,则使用weapon_skill里面设定的特效。
还有的无视skill自身的特效,直接使用weapon_skill里面设定的特效。
有的需要写skill_id,有些则完全不用……

还有的weapon_skill可能会支持多个不同的effect特效,可能同时出现多个,也可能限制一次只出现一种,等等。
总之,得看你的版本是如何设定的。

http://starway.freebbs.tw/index.php
回復 支持 反對

使用道具 舉報

12

主題

397

帖子

7564

金錢

巨蟻女皇

Rank: 9Rank: 9Rank: 9

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
55
積分
7961
在線時間
115 小時
相冊
0
日誌
0
好友
0
發表於 2024-4-18 20:18 | 顯示全部樓層
感謝無私的教學

回復 支持 反對

使用道具 舉報

35

主題

165

帖子

2070

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
2235
在線時間
36 小時
相冊
0
日誌
0
好友
1
發表於 2024-4-20 19:58 | 顯示全部樓層
大神,我想问问,3.81的76戒指和81戒指位置,当第三第四个戒指戴起来的时候,应该给客户端发送什么封包信息才可以让戒指显示到76和81的位置?

回復 支持 反對

使用道具 舉報

35

主題

165

帖子

2070

金錢

妖魔鬥士

Rank: 6Rank: 6

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
40
積分
2235
在線時間
36 小時
相冊
0
日誌
0
好友
1
發表於 2024-4-20 21:37 | 顯示全部樓層
xinjiemail11 發表於 2024-4-20 19:58
大神,我想问问,3.81的76戒指和81戒指位置,当第三第四个戒指戴起来的时候,应该给客户端发送什么封包信息 ...

好吧,搞定了,DEBUG一段一段改代码真要命。。。

點評

666,厉害了  發表於 2024-4-20 22:36
回復 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊會員

本版積分規則

天堂私服列表

45客服

Archiver| 45天堂私服論壇   分享到微博! 分享到臉書! 分享到噗浪! 分享到維特! 分享到Google+! 分享到LINE!

45天堂私服發佈站 ©    天堂私服架設教學  提供最新天堂私服最新資訊

流量最高、品質最好、服務最優、玩家首選、最新天堂私服資訊,都在45天堂私服發佈站.    免責聲明

Sitetag
line客服聯繫
掃一掃二碼
Line客服聯繫
24H專人回覆
返回頂部 返回列表