• SEARCH

    통합검색
  • GAMEZONE
    • 커뮤니티
      • 공지사항
      • 유저게시판
        • 등업게시판
        • 출석체크
        • 정회원 무료자료실
      • 스크린샷
      • 인증자료실
    • 리니지
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 메이플스토리
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 바람의나라
      • 자유게시판
      • 홍보게시판
      • 자료게시판
        • 유틸자료실
        • 소스자료실
        • 클라이언트
        • 팩 자료실
      • 연구게시판
        • 개발내역
        • 질문과답변
        • 기타
      • 강의게시판
        • DR
        • CR
        • 구버전
        • 클라이언트 개조
        • 노하우 게시판
        • 게임공략 & 팁
    • 다크에덴
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 믹스마스터
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 라그나로크
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 기타게임
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 게임강의
    • 비베&포토샵
      • 자유게시판
      • 자료실
        • 일반자료실
        • 포인트 자료실
      • 노하우게시판
      • 포토샵게시판
    • 모바일
      • 게임공략
      • 포인트 자료실
      • 유틸자료실
      • 자유게시판
  • 리니지
    • 리니지 ()
    • Netty 4.1.11 최신 버전 적용하기

      • 검은손
      • 2018.04.21 - 17:40 366

    Netty3 - > Netty4 넘어오게되면서 적용하는 소스도 좀 바뀌었는데요 
    제가 직접 사용했었던 소스는 팩자체가 너무 달라서 그대로 올릴수없어 인터넷에 떠도는 공개팩 주워서 
    새로 구현후 테스트 마치고 배포합니다. 팩은 일팩인데 정확히는 잘모르겠습니다. 
    저는 에바, 로봇 ,코어 등 이런 명칭으로 분류하지않고 그냥 일팩 으로 통합합니다.  
     
    첨부파일 압축을 풀면 Netty 폴더안 4개파일 , CircleArray.java, netty-all-4.1.11.Final.jar 가 들어있는데 
    예전에 성능 향상을 위해서  xx연구소등 에 원형배열 이라는  CircleArray 를 구현하는방법과 예제소스를 공개했었는데요
    그부분도 같이 적용해놨습니다. 전체적으로 굴러다니던 공개팩에다가 구현한 소스이기때문에 본인 팩에 맞게끔 수정을 하셔야합니다.
    최대한 편하게 주석처리를 해놨으니 잘살펴보시기바람니다.
     
     
    먼저 netty-all-4.1.11.Final.jar 파일을 팩 폴더 의 lib 폴더안에 넣어주세요 
    (라이브러리를 적용하는 방법은 따로 설명드리진 않겠습니다. 수정해야할부분 : 이클립스 의 라이브러리 적용,build.xml, ServerStart.bat)
     
     
    Netty 폴더 와 CircleArray.java 를 통으로 l1j.server.network 위치에 넣어주세요 network폴더가 없으면 만드셔도 되고 
    적당한 위치에 넣은후 각 소스파일의 package 등 경로를 수정하셔도 무방합니다.
     
    - 적용하시는 중에 모르는 부분이나 잘안되는부분이 있다면 언제든 말씀하시면 도움을 드리겠습니다-
     
    Server.java
    import 추가

    import io.netty.bootstrap.ServerBootstrap;
    import io.netty.buffer.PooledByteBufAllocator;
    import io.netty.channel.Channel;
    import io.netty.channel.ChannelInitializer;
    import io.netty.channel.ChannelOption;
    import io.netty.channel.ChannelPipeline;
    import io.netty.channel.EventLoopGroup;
    import io.netty.channel.nio.NioEventLoopGroup;
    import io.netty.channel.socket.SocketChannel;
    import io.netty.channel.socket.nio.NioServerSocketChannel; 
    import io.netty.util.internal.SystemPropertyUtil; 
    import l1j.server.network.Netty.InProtocolHandler;
    import l1j.server.network.Netty.OutProtocolHandler;
    import l1j.server.network.Netty.PacketDecoder; 
    import l1j.server.network.Netty.PacketEncoder; 
     
      
    ServerBootstrap , Channel 변수 추가  

    private static ServerBootstrap sb;
    private static Channel channel; 
     
      
    startGameServer() 함수 내부 수정 및 추가 mina 관련 부분은 삭제 또는 주석처리해주세요 

    try {
    /**클라연결 쓰레드*/
    EventLoopGroup bossGroup = new NioEventLoopGroup(1);
      
    /**io처리 쓰레드 (쓰레드 : cpu core * 2) */
    EventLoopGroup workerGroup = new NioEventLoopGroup(Math.max(1, SystemPropertyUtil.getInt("io.netty.eventLoopThreads",
    Runtime.getRuntime().availableProcessors() * 2)));
    sb = new ServerBootstrap();
    sb.group(bossGroup, workerGroup)
    .channel(NioServerSocketChannel.class)
    .childHandler(new ChannelInitializer<SocketChannel>(){//childHandler
    @Override
    protected void initChannel(SocketChannel ch)
    throws Exception {
    ChannelPipeline p = ch.pipeline();
    p.addLast("decode", new PacketDecoder());
    p.addLast("encoder", new PacketEncoder());
    p.addLast(new OutProtocolHandler(), new InProtocolHandler());
    }
    });
    /**
    * 각종 설정등은 해당서버 와 컴퓨터 환경에따라 달라질수있으므로 
    * 부수적인 부분은 모두 생략하겠습니다.
    **/
    sb.option(ChannelOption.TCP_NODELAY, true); 
    sb.option(ChannelOption.SO_KEEPALIVE, false); 
    sb.option(ChannelOption.SO_BACKLOG, 512);
      
    /**포트 번호 설정 및 오픈*/
    channel = sb.bind(Config.GAME_SERVER_PORT).sync().channel();
      
    } catch (InterruptedException e) {
     e.printStackTrace();
    }  
      
      
     
    LineageClient.java   
    import 추가

    import io.netty.buffer.ByteBuf; 
    import io.netty.channel.Channel; 
      
      
    적당한 위치에 추가, LineageEncryption 부분은 리니지 암호화 클래스이며 사용하시는게 다르면 그에 맞게 수정해주시면됩니다.

    public Channel channel;
    public LineageEncryption le; 
      
    LineageClient 생성자 부분은 이미 있는걸 수정하셔도 되고 각팩에 알맞게 수정하시기바람니다. 
    추가되는부분은 channel = _channel;, le = key; 부분입니다.

    /**
     * LineageClient 생성자 
     * @param session
     * @param key
     */
    public LineageClient(Channel _channel, LineageEncryption key){
    channel = _channel;
    le = key;
    if (Config.AUTOMATIC_KICK > 0) {
    observer.start();
    }
    packetHandler = new PacketHandler(this);
    _threadPool.execute(hcPacket);
    _threadPool.execute(movePacket); 
    } 
      
     
    sendPacket 함수 수정 

    /** 
     * 패킷 전송
     * @param bp
     */
    public synchronized void sendPacket(ServerBasePacket bp){
    try{
    channel.writeAndFlush(bp);
    } catch (Exception e) {}
    }
       출처 투데이

    Attached file
    Netty 4.1.7z 3.12MB 1
    이 게시물을..
    N
    0
    0
    • 덩크시즌1-2떼쟁
    • 12
      검은손

    검은손 님의 최근 글

    284 체이스 클라이언트 239 5 2019 11.05 284 체이스팩 354 9 2019 11.05 Netty 4.1.11 최신 버전 적용하기 366 2018 04.21 SP(순정 버전) 367 2018 04.21 요기요서버 팩 257 2018 04.21

    검은손 님의 최근 댓글

    감사합니다 2024 02.28 ㄳ 2024 02.23 감사합니다 2024 02.03 ㄳㄳ 2024 02.02 감사합니다 2024 02.02
    글쓴이의 서명작성글 감추기 
    댓글 쓰기 에디터 사용하기 닫기
    • view_headline 목록
    • 14px
    • 덩크시즌1-2
    • 목록
      view_headline
    × CLOSE
    기본 (2,072) 제목 날짜 수정 조회 댓글 추천 비추
    분류 정렬 검색
    • 포인트 획득 공지
      4
      2026.04.24 - 19:48 3357 4
    • 링크 업로드 관련 공지
      7
      2026.03.25 - 21:56 3633 7
    • 인증메일 공지
      2
      2026.03.15 - 16:42 3542 2
    • 파일링크 및 인증메일 발송 관련 문의 안내
      8
      2026.03.14 - 22:03 4037 8
    • 포인트 게시판 안내
      2026.02.28 - 19:14 4706
    • 게임존 사이트 변경 사항 안내
      9
      2026.02.26 - 01:07 6387 9
    2072
    2.0 제나 개인수정 통파일 7/7 끝
    스트릭스 2026.05.03 - 12:35 135
    2071
    2.0 제나 개인수정 통파일 6/7
    스트릭스 2026.05.03 - 12:33 63
    2070
    2.0 제나 개인수정 통파일 5/7
    스트릭스 2026.05.03 - 12:31 64
    2069
    2.0 제나 개인수정 통파일 4/7
    스트릭스 2026.05.03 - 12:30 41
    2068
    2.0 제나 개인수정 통파일 3/7
    스트릭스 2026.05.03 - 12:28 37
    2067
    2.0 제나 개인수정 통파일 2/7
    스트릭스 2026.05.03 - 12:26 38
    2066
    2.0 제나 개인수정 통파일 1/7
    스트릭스 2026.05.03 - 12:24 141
    2065
    샤샤팩,클라 1-22
    Diorl 2026.04.30 - 22:17 87
    2064
    샤샤팩,클라 1-21
    Diorl 2026.04.30 - 22:16 38
    2063
    샤샤팩,클라 1-20
    Diorl 2026.04.30 - 22:15 33
    2062
    샤샤팩,클라 1-19
    Diorl 2026.04.30 - 22:15 37
    2061
    샤샤팩,클라 1-18
    Diorl 2026.04.30 - 22:14 38
    2060
    샤샤팩,클라 1-17
    Diorl 2026.04.30 - 22:13 25
    2059
    샤샤팩,클라 1-16
    Diorl 2026.04.30 - 22:12 36
    2058
    샤샤팩,클라 1-15
    Diorl 2026.04.30 - 22:11 20
    2057
    샤샤팩,클라 1-14
    Diorl 2026.04.30 - 22:11 32
    2056
    샤샤팩,클라 1-13
    Diorl 2026.04.30 - 22:10 29
    2055
    샤샤팩,클라 1-12
    Diorl 2026.04.30 - 22:10 23
    2054
    샤샤팩,클라 1-11
    Diorl 2026.04.30 - 22:09 30
    2053
    샤샤팩,클라 1-10
    Diorl 2026.04.30 - 22:09 37
    2052
    샤샤팩,클라 1-9...
    Diorl 2026.04.30 - 22:08 19
    2051
    샤샤팩,클라 1-9
    Diorl 2026.04.30 - 22:07 24
    2050
    샤샤팩,클라 1-8
    Diorl 2026.04.30 - 22:06 25
    2049
    샤샤팩,클라 1-7
    Diorl 2026.04.30 - 22:06 41
    2048
    샤샤팩,클라 1-6
    Diorl 2026.04.30 - 22:05 23
    2047
    샤샤팩,클라 1-5
    Diorl 2026.04.30 - 22:05 31
    2046
    샤샤팩,클라 1-4
    Diorl 2026.04.30 - 22:04 32
    2045
    샤샤팩,클라 1-3
    Diorl 2026.04.30 - 22:04 25
    2044
    샤샤팩,클라 1-2
    Diorl 2026.04.30 - 22:03 38
    2043
    샤샤팩,클라 1-1
    Diorl 2026.04.30 - 22:03 73
    2042
    덩크시즌1-20
    떼쟁 2026.04.20 - 02:20 120
    2041
    덩크시즌1-19
    떼쟁 2026.04.20 - 02:19 83
    2040
    덩크시즌1-18
    떼쟁 2026.04.20 - 02:18 64
    2039
    덩크시즌1-17
    떼쟁 2026.04.20 - 02:17 46
    2038
    덩크시즌1-16
    떼쟁 2026.04.20 - 02:17 53
    2037
    덩크시즌1-15
    떼쟁 2026.04.20 - 02:16 35
    2036
    덩크시즌1-14
    떼쟁 2026.04.20 - 02:16 34
    2035
    덩크시즌1-13
    떼쟁 2026.04.20 - 02:15 35
    2034
    덩크시즌1-12
    떼쟁 2026.04.20 - 02:14 42
    2033
    덩크시즌1-11
    떼쟁 2026.04.20 - 02:14 43
    2032
    덩크시즌1-10
    떼쟁 2026.04.20 - 02:13 40
    2031
    덩크시즌1-9
    떼쟁 2026.04.20 - 02:13 56
    2030
    덩크시즌1-8
    떼쟁 2026.04.20 - 02:12 42
    2029
    덩크시즌1-7
    떼쟁 2026.04.20 - 02:12 37
    2028
    덩크시즌1-6
    떼쟁 2026.04.20 - 02:11 46
    2027
    덩크시즌1-5
    떼쟁 2026.04.20 - 02:11 40
    2026
    덩크시즌1-4
    떼쟁 2026.04.20 - 02:10 50
    2025
    덩크시즌1-3
    떼쟁 2026.04.20 - 02:10 46
    2024
    덩크시즌1-2
    떼쟁 2026.04.20 - 02:09 42
    2023
    덩크시즌1-1
    떼쟁 2026.04.20 - 02:09 103
    • 1 2 3 4 5 6 7 8 9 10 .. 42
    • / 42 GO
  • GAMEZONE
 GAMEZONE all rights reserved.
by OrangeDay