마법 모드에 들어갈 물레와 직조기 텍스쳐를 짜고 있는데


이게 보고 해도 힘드네요. 삐뚤어진 부분이 있으면 바로 잡아줘야 하고...


여러분은 이런 쌩고생 하지 마시길 바랍니다.



역시 세렌 블로그 방문자가 해결력이 세계 제이이이이이이일!




_人人 人人_

> 돌연사 <

 ̄Y^Y^Y^Y^Y ̄


이유 : 몰라


아시는분 제보좀

'럽홀의 이야기' 카테고리의 다른 글

후 완전 힘드네요.  (12) 2014.11.29
감사합니다 고쳤습니다.  (9) 2014.11.28
모딩강좌는 주말에만 올릴 생각입니다.  (3) 2014.11.25
그들이 온다.  (9) 2014.11.23
다음 모딩 강좌가  (1) 2014.11.23

제곧내.


저도 일상에 집중할 필요성을 느꼈고


조금 더 나아가서 제가 만들고 싶은 모드를 만들 시간을 가진 다음에 좀 더 다듬어서 모딩 강좌 퀄리티를 올릴 생각입니다.


휴가를 빌어 모딩강좌의 퀄리티를 올린다!

'럽홀의 이야기' 카테고리의 다른 글

감사합니다 고쳤습니다.  (9) 2014.11.28
정성들여 만들었던 텍스쳐가..  (2) 2014.11.28
그들이 온다.  (9) 2014.11.23
다음 모딩 강좌가  (1) 2014.11.23
간단하게 말씀드리겠습니다.  (5) 2014.11.21



안녕하세요. 럽홀입니다.


우\연히 옛날 남자친구 ㄴㄴ구글플러스를 봤는데

ㄴㅇㅁ러ㅏㄴ어람너함나히ㅓㅁ니ㅏㅇ하ㅣㄴ머히ㅏㅓㅁ너ㅏㅣㅎㄹ

ㄹㅇㄴ호렇농러ㅏ혼ㅇ러ㅏ혼ㅇ러ㅏ호ㅓ랑놓ㅇ



두개의...패키지...와...두개의...클래스를....만듭니다.

위에 있는 RegistryHandmill은 레시피들을 관리하고

밑에 있는 RecipeHandmill은 말 그대로 레시피입니다.


자바의 클래스는 쉽게 말해서 사용자가 선언할 수 있는 변수형 타입입니다.

저는 Recipe라는 변수를 선언한 것이지요.

어차피 다 0과 1쪼가리들 뿐입니다.



대충 이렇게 만들어줍시다. 

뭐 특별하게 아이템에서 어떤 능력을 사용하거나 그러진 않았고 온니 Java로만 짠 부분입니다. 마크 모딩을 모르셔도 이해하는 부분이에요.




사실 위에꺼 하기 전에 이걸 먼저 설계해야 합니다 뿌잉뿌잉



그리고 기계로 갈아서 나오는 더스트가 있어야겠졈.

새로운 아이템을 하나 만들어줍니다.



구리 가루를 추가하였습니다.


이렇게 레지스트리를 하나 더 만들었습니다. 

아 참 Items와 Blocks를 다 Item과 Block으로 바꿨습니다. 하지 않으셔도 되지만 전 이런거 꼭 고쳐야 하는 성격이라

고치는거 좀 귀찮으니 안하실분들은 안하셔도 됩니다.



LoveHolyTech 클래스에서 초기화하는 부분에도 추가를 시켰습니다.



이번 기계를 만들면서 아이템을 받을 공간이 하나 필요하다고 생각했습니다.

그래서 아이템 슬롯이 있다는것을 알려주는 ISideedInventory를 받아서 넣어줬습니다.

그리고 인벤토리 내용을 저장하는 배열을 하나 선언을 했구요.

volume값은 진행도입니다. 얼마나 갈아졌는지 진행바를 기록해주는 부분이죠.

그리고 이제 인벤토리에 아이템이 있으면 그 아이템을 엔티티화 해서 월드에 뿌려준 다음에 (그러니까 땅바닥에 톡 튀어 나옵니다 ㄲㄲ)

인벤토리에 있던걸 하나 깎습니다. 레시피대로 나오게 되죠.


그 밑에 NBT 부분은 이제 아이템과 volume, rotation값을 저장해줍니다.

NBT를 저장하지 않으면 게임을 저장하고 나갔다가 들어오면 아이템이 사라지는 극현상이 일어날수 있으니까 꼭 추가해줘야합니다.

나머지 밑 부분은 ISideedInventory를 가져오면 따라오는 메소드들인데 적당히 보면 뭐가 뭔지 알수 있습니다. 알수 없으면... 포기하세요 모딩;



BlockHandmill 부분에도 마찬가지로 좀 바꿨습니다.

그냥 블록을 누르는게 아니고 쉬프트 + 블록을 오른쪽 클릭 하였을때 돌아가도록 해놨습니다. (나중에 GUI를 열땐 그냥 오른쪽 클릭으로 하기 위해서)

Volume값을 1씩 증가시켜주고 Rotation값을 0.4씩 증가시킵니다.

위에 import 부분은 Keyboard를 입력받기 위해서 사용되었습니다.


이렇게하면?



WTF?


제가 잘못짰습니다. TileEntityHandmill 55번째 줄을 봅시다.



이런 젠장... 생각해보니까 inventory를 초기화를 안해줘서 Nullpointer exception이 뜬거 같습니다. 헤헿




생성자를 하나 만들어서 냅다 초기화하는 부분을 넣었습니다.



0아이템을 넣기 위해서 호퍼를 달아줬습니다.



제가 구리광물 2스택을 넣었는데 벌써 한스택은 다 들어갔습니다.

이제 더 이상 들어가지 않아요. 한번 갈아봅시당




오오 튀어나왔습니다.




이렇게 안에 인벤이 갈아졌으니까 아이템이 더 들어갔습니다. 

(처음에 튀어나온 구리 가루가 호퍼로 바로 들어가버려서 스샷을 못찍어서 두번째 간걸 스샷을 찍었습니다 -_-;;)



오늘 따라 참 우울한 날이네요.



스샷 찍을 비석을 위해 자신의 아이를 태우는 무서운 사람



이거 왜 쓰고 있냐 럽홀


직관적이고 판타스틱한 GUI를 만드십쇼.




안녕 럽홀




에고고 극혐 텍스쳐!




BlockHandmill 부분에 이렇게 넣어줍니다.



그림을 준비합니다.




오오..



안녕하세요 로페카 최강 귀염둥이 럽홀입니다.


이번에는 클래스를 추가하거나 패키지를 만드는 부분은 안보여드리고 텍스트로만 적겠습니다.

제가 너무 힘들고.. 이번엔 제가 먼저 짜고 따로 강의를 드리는거라서 어쩔수가 없습니다.


이전 강의때 만든 정성을 갈아 만든 모델 텍스쳐는 여기다 넣어둡시다.

src/main/resources/assets/loveholytech/textures/blocks 입니다.




패키지와 클래스입니다. 이대로 만들어주시면 됩니다.

여기다가 저번에 JAVA로 저장한 내용을 넣고 약간만 변경시켜주시면 됩니다.



빨간색 체크되어 있는 부분은 원본 소스가 원래 에러를 뿜뿜하기 때문에 이렇게 수정을 해주셔야 합니다.

그리고 네모 부분은 우리가 렌더를 사용하기 위해서 필요한 부분인데 새로 짠 부분입니다.

setRotation은 저번에 썼던 techne 프로그램에서 파란색 구를 중심으로 돌아가는 부분입니다.

Shape2와 Shape3이 어처구니 부분이였으니 이 부분은 돌려줘야 하겠죠?


이제 TileEntityHandmill 부분입니다. 뭔가 추가된게 많죠?

틱 처리 부분(updateEntity)에는 rotation이 6.4를 넘으면 0으로 가게 합니다.

rotation는 회전을 관리해주는 변수이고 6.4를 넘었다는것은 한바퀴를 돌았다라는 뜻이기 때문입니다.

그리고 setRotation과 getRotation은 외부에서 rotation의 값에 접근하기 위해서 사용되는 메소드입니다.

그 아래 readFromNBT와 writeToNBT는 블록의 NBT에 내용을 기록하기 위해 사용됩니다.

그 밑에 두개의 메소드는 서버와 클라이언트 사이에 있는 데이터를 통합시키기 위해서 사용되는 부분입니다. 꼭 추가하셔야 합니다.



렌더링을 위한 패키지 loveholy.loveholytech.render 를 만들어줍시다.

그리고 밑에 있는 아이템 렌더링을 맡는 ItemRenderHandmill 과 RenderHandmill 부분을 생성합니다.

이제 렌더링을 맡는 RenderHandmill을 편집합시다.

ResourceLocation texture를 선언하여 아까 저장해놨던 경로를 입력해주시면 됩니다.


나머지 부분은 공간을 확보하고 텍스쳐를 입힌 다음에

타일엔티티에서 회전값을 받아서 모델을 렌더링하는 부분입니다.


ItemRenderHandmill 부분입니다.

아이템을 렌더링할때에는 좀 더 작게 렌더링해야 하기 떄문에 특수한 처리가 필요합니다.

이렇게 적어두시면 됩니다.


BlockHandmill 부분도 꽤 손을 봤습니다.

onBlockActivated는 오른쪽 클릭을 했을때 인데

이 부분에서 클릭했을때 회전값을 올려주기로 했습니다.

그리고 getRenderType은 따로 렌더링 하고 있다고 하기 위해서 -1을 리턴하였고

이게 완전히 네모 모양인가를 알려주는 메소드에도 마찬가지로 false

이게 일반 블록 렌더링을 쓸건지 물어보는 부분도 마찬가지로 false를 하게 해놨습니다.



렌더링을 위해서 이게 클라이언트인지, 서버인지 가려주는 부분이 필요합니다.

그 역할이 proxy라는 놈들이 해주는데요. 이 패키지를 추가하고

두개의 클래스를 추가해줍시다.


CommonProxy 부분입니다. 

여긴 메소드가 있다~ 라는 것만 알려주면 되기 떄문에 내용은 텅텅 비워도 괜찮습니다.



ClientProxy 부분입니다. Client만 사용하는 것들을 여기다가 구현을 하시면 되는데요.

일딴 렌더러를 만들고 그걸 레지스트리에 등록을 합니다.

그리고 마찬가지로 아이템도 등록을 해주어야겠죠.



LoveHolyTech 클래스 부분으로 넘어와서 이 빨간색 상자 세개를 꼭 추가시켜줍니다.

맨 위에 부분은 별 상관이 없는데(나중에 쓰게 될거 같아서 넣었는데 쓰게 되면 설명해드리겠습니다.)

두번째 상자 부분은 이제 등록된 부분을 어딜 참고를 할지 선택하는 부분입니다.

그리고 세번째는 렌더러를 호출하는 부분이죠.


자 이제 완성. 실행해볼까염? ㅎㅎ



돌아라 낙오자여



안녕하냐해. 럽홀이다헤.


Techne라는 프로그램을 이용해서 모델을 만들어보도록 하겠습니다.


Techne는 


Techne.zip


를 눌러서 다운받으시면 됩니다.



적당하게 만듭니다. 저기는 width랑 height이 64/32로 나와있는데 128 / 64로 만듭시다.



적당하게 큐브를 만듭니다.



두부를 만듭니다(일본에는 stone을 두부라고 부릅니다. 우리가 말도 안되는 꾸븐돌이라고 부르듯)

왼쪽에 보시면 여러가지 값을 입력해두는 부분이 있는데 하나 하나씩 설명 드리곘습니다.

Dimensions

크기 입니다. 순서대로 x y z의 크기입니다. 저는 지상에서 높이 y 10정도 그리고 가로 세로가 16으로 꽉 차는 두부를 만들었습니다.

Position

저기 보이는 파란색 공의 위치입니다. 저는 14로 두었습니다.

Offset

두부와 공과의 위치입니다. 저는 저 파란색 공이 중앙에 위치하게 설정해놨습니다.

Offset

오른쪽 상단에 보면 텍스쳐가 있습니다.이걸 옮겨주는겁니다. 저는 일단 이 두부를 만드는건 기본값으로 설정해놨습니다.


맷돌을 만들려면 어처구니가 필요하겠졈. 어처구니를 만들어봅시다.



이미지 재탕 ><




짜잔. 이렇게 Cube를 2개 더 만들어서 어처구니를 만들었습니다.

일딴 어처구니의 텍스쳐 오프셋을 조금 이동시키겠습니다.


Shape2의 offset 위치입니다.

Shape3의 offset 위치입니다.


이제 텍스쳐를 뒤집어 씌워봅시다.



지금 있는 텍스쳐 맵을 저장을 합니다.




T윗부분

B아랫부분

L왼쪽

F앞쪽

R오른쪽

B뒤쪽



정성을 갈아 넣어라



텍스쳐를 불러들여와봅시다.




예상 외로 그렇게 극혐이진 않습니다.



이제 자바로 저장해서 다음 강좌때 써먹으면 됩니다.


Incommmmmmmmmmmmmmmming!!!!



잇힝 ㅇ럽홀



저번에 말씀드렸다시피 레지스트리 부분을 싹 다 넘겨버렸습니다.


넘겨진 부분의 소스입니다. 참 보기 좋아졌졈.



클래스를 하나 만듭시다. 이게 나중에 기계가 될거에요.



블록 이름은 핸드밀... 맷돌이라는 뜻이졈



소스에 주석을 대충 떡칠해봤습니다. 아직 타일 엔티티를 추가 안시켰으니 보통 블럭이랑 소스가 거진 다를게 없는데

icon 부분이 배열로 선언되어 있습니다. 이건 왜냐? 나중에 보심 알게 됩니다.



패키지를 하나 만듭니다.



패키지 이름은 타일엔티티. 타일엔티티를 모아둘 패키지입니다.



타일엔티티에 클래스를 하나 만듭시다.



핸드밀이 가지는 타일엔티티입니다.


간단하게 틱이 연산되는 부분에 volume값을 계속 올려주다가 5000이 넘으면 다시 볼륨값을 0으로 셋하는 부분을 짰습니다.

밑에 부분은 볼륨에 접근하는 부분이구요. 간단하죠?




다시 블록으로 돌아와서.. 아까 오타난 protected를 public으로 고쳐줍니다 (ㅠㅠ)

그리고 생성자의 안쪽 4번째 줄을 보면 타일엔티티를 등록하는 부분이 있습니다. 중요하니 꼭 넣으세염!

그리고 타일 엔티티를 생성하는 부분입니다. 이렇게 리턴을 해주시면 됩니다.

다음에는 onBlockActivated라는 메소드인데요. 

이 메소드는 블록이 활성화되었을때(즉 오른쪽 클릭을 하였을 때) 작동하는 메소드입니다.

저는 그 작동된 곳에 타일엔티티(당연히 그 블록은 죽었다 깨어나도 핸드밀이라는 타일 엔티티를 가지겠졈)를 생성하고

volum값을 받아와서 플레이어에게 출력시켜주는 코드를 짰습니다.



핸드밀의 텍스쳐부분은 이렇게 만들었습니다. 나중에 보시면 이해하실거에염.




이것도 역시 Blocks에 등록시켜주어야 합니다.



짜잔!

정면에서 찍은 부분입니다.



오른쪽에서 쳐다봤습니다.



뒷면에서 쳐다봤습니다.



아랫면입니다.


즉 아이콘을 등록시키는 부분과 getIcon을 보면

이게 면 마다 다른 텍스쳐를 입힐수 있다는 겁니다(!!!!!!!)

우왕 짱이다.




오른쪽 클릭을 하니 Volume값을 계속 출력을 해줍니다.


오옹. 다음엔 커스텀 텍스쳐를 한번 입혀보죵.



럽홀하세요. 안녕입니다.



클래스를 하나 추가해줍시다.


Registry를 관리하는 클래스를 하나 추가해봅시다. 나중에 여유나면 Registry 여기로 다 옮겨야겠군요.



요런 정적 메소드를 하나 만듭니다. 설명은 주석으로 되어있죠?



메인에서 init 이벤트일때 Furnace 레시피를 추가하도록 합시다.


구워진다



구워졌다.




이걸 같이 하면서 타일 엔티티를 설명할지 타일엔티티를 먼저 짜고 설명할지 고민되고 있습니다.


일단 강좌 내용이 따라하기만 하면 어렵지 않다는 사실을 판단하였고 이정도 설명으로 계속 쓰도록 하겠습니다.



안녕하세요 럽홀입니다.


괴를 만들어봤으니 광물을 추가시켜봐야겠졈.



패키지를 만듭니다.



블록을 관리하는 패키지를 만듭니다.



그 패키지 안에 클래스를 생성합니다.



광물 블럭을 생산하는 클래스를 만듭니다.



생성자는(오타가 났는데 protected가 아니라 public입니다.) 이 광물의 속성과 여러가지를 설정합니다. 읽어 보시면 알아요.

맨 밑에 아이콘을 등록하는 부분 두개가 있습니다. 

아이콘은 서버에 필요 없기 때문에 Side.CLIENT를 박아서 클라이언트에만 동작하게 설정해둡니다. (안그럼 서버 동작시 에러남)



클래스를 하나 더 생성을 합니다.



블록들을 관리해주는 클래스입니다.



여기서 구리 광물을 추가시켜줍니다.



당연히 아이템 처럼 이벤트도 등록시켜주어야 합니다.



당연하게도 언어 파일도 수정을 해 줍시다.



아이콘을 등록시켰으니 저 경로에 아이콘을 나두시면 됩니다.




광물이 생성되었습니다.

하지만 이걸로 끝이 아닙니다. 

광물은 크리탭에서 꺼내오는게 아니라 땅에 박혀 있어야 하기 때문이죠.



패키지를 생성해줍시다.



세계를 관리하는 패키지를 생성해줍시다.



클래스를 생성합니다.



클래스 이름은 광물을 젠시키는 역할이다 라고 해서 OreGenerator로 하였습니다.



월드가 생성될때 generate가 발생을 하고 이 월드가 무슨 월드인지 확인하는 부분을 넣었습니다.

그리고 확인이 끝나면 for문을 통해서 광물을 젠 시켰습니다.

chunkY의 nextInt를 잘 조절하면 광물 높이를 변경할 수 있습니다.



이벤트를 만들었으니 등록시켜야겠죠.



오오 오지게 많이 나오는구만 -ㅅ-;;



안녕하세요. 럽홀입니다.


간단하게 서버 명령어를 추가하는걸 짜볼려고 합니다.




우리는 배운 사람이니 파일을 나눌줄 알아야 합니다.

패키지를 하나 생성합시다.



패키지 이름은 cmd로 두구요.



이제 클래스를 하나 생성을 합니다.



저는 역시.. 다른 모더들이 쓰는 방법대로 이름을 지었습니다.




생성자는 생성되어서 명령어들을 생성을 합니다.

CompareTo는 별로 중요하지 않으니 넘어가고

getCommandName은 말 그대로 명령어 이름을 가져오는 부분입니다.

Usage는 사용법을 출력하는 부분이구요.

Aliases는 명령어 목록을 불러오는 부분입니다.


가장 중요한 부분인 processCommand 부분입니다.

이 부분을 이용해서 커맨드를 이용한 마법의 구현... 이런것도 하시는 분들이 있던데, 뭐 그런것도 구현이 가능하긴 합니다만 간단하게

일딴 커맨드를 보낸 놈이 플레이어인지 확인합니다(서버가 커맨드를 보낼수도 있으니)

그리고 사람이 맞다면(EntityPlayer라는 상속하거나 그 클래스라면) 객체를 따로 생성 한 다음에

명령어의 길이값(그러니까 /loveholytech <샬라샬라>인데 샬라샬라 부분을 띄워쓰기로 나눠서 나온 길이값)이 0이면

Hello, Useername 을 출력하고

아니고 입력한게 있다면 그 입력값중 맨 처음값 (띄워쓰기 된 부분중 맨 처음)을 Input과 함께 출력하는 부분입니다.


나머지 부분은 별로 그렇게 중요한 부분이지 않아서 저렇게 나두고 써도 상관이 없어요.


LoveHolyTech.java로 돌아와서 이 부분을 추가시켜줍니다.

이 부분은 서버가 불러와졌을때 실행되는 이벤트인데

그때 이벤트에서 서버 명령어를 추가시킵니다. 그 명령어는 우리가 짰던 CommandCommon()입니다.



잘 되네요.



안녕하세요. 럽홀입니다.


이전 포스팅을 보면 여러 광물을 추가하기 위해선 그 클래스를 여러개 복사, 붙여넣기식으로 만들었어야 하죠.

그런건 프로그래머들에게 비효율적이라고 욕을 쳐먹는 행동입니다.


그래서 약간 능독적인 ItemIngot클래스를 재구성하면서

Ore Dictionary에도 자동으로 등록되고 Infomation부분도 추가시키는걸 구현해보았습니다.


따로 메타태그는 사용하지 않았습니다. 1.8버전부터 메타태그가 사라진다고 해서요. 이렇게 하는게 쉽기도 합니다.



한줄식 자세하게 설명드리겠습니다.


13번째 줄

Item을 상속받은 ItemIngot 클래스를 설계합니다.


15에서 16번째 줄

능동적인 아이템 추가를 위해서 UnlocalizedName과 Infomation에 출력할 내용들을 저장하는 변수를 선언합니다.


17에서 24번째 줄

super를 사용해 Item클래스의 생성자를 호출하고

메터리얼 탭 부분에 이 아이템을 추가시킵니다.

그리고 argument(인자)로 받은 값을 선언한 변수에 대입시키고

광물 사전에도 등록을 시킵니다.


26에서 42번째 줄

저번에 설명드렸으니 이 부분은 생략합니다. 이전 강좌를 보시길 바랍니다.

바뀐 부분은 능동적인 아이템 생성을 위해서 받아온 값으로 설계하였습니다.


44에서 47번째 줄

이 부분이 새로 추가된 부분인데 마우스로 아이템 위에 올렸을 때 추가적으로 표시되는 정보를 추가할 수 있는 메소드입니다.

list 부분에 add로 String을 넣으면 내용이 추가됩니다.



이렇게 적으면 Infomation 부분에 색상을 입히는것도 가능합니다.



LoveHolyTechItems.java 의 registerItems라는 메소드입니다.

argument를 수정했으니 이 부분도 마찬가지로 수정을 해 줍시다.



en_US.lang 부분도 마찬가지로 수정해줍시다.


짜잔~



이걸 응용해서 광물들 마구 추가해보도록 합시다.


Q. 강좌 언제까지 쓰실껀가요 존나 영양가 ㅇ벗네;


A. 세렌이 모딩 가능할때까지

이 내용은 절대적으로 공식 입장이 아니고 제 개인적인 내용입니다.



저희들은 쉽게 시간을 내서 글을 쓸 수 있는게 아닙니다.


여기 등록되어 있는 모든 사람들(세렌,오딘,저,나크,사수생,모기)는 바쁜 사람들입니다.

특히 세렌과 오딘님은 직장을 다니고 있고 저 또한 직장을 가지고 있는 사람입니다.


이런 바쁜 일상속에서 다들 시간을 쪼개서 글을 쓰고 있는 겁니다.


세렌님이 말씀하셨듯이 이 블로그는 재생중에 있으며 계속 꾸준히 오시는 분들을 잡아두기에 매우 죄송한 상황입니다.

하지만 저희가 글을 복구하는건 의무가 아니라는 사실을 잊지 말아주셨으면 합니다.


쓸대 없는글 읽느라 수고했어.

'럽홀의 이야기' 카테고리의 다른 글

그들이 온다.  (9) 2014.11.23
다음 모딩 강좌가  (1) 2014.11.23
모바일에서 댓글이 이상하다고 하길래  (3) 2014.11.20
소개 :: RG 블로거들  (6) 2014.11.20
인간은  (1) 2014.11.17



안녕하세요. 럽홀입니다.


사실 이 강의를 보면서 여러분이 써멀이나... 그런류의 대단한 모드는 만들진 못할겁니다. 저도 못하구요.

하지만 그렇다고 완전히 도움이 안되는것도 아닙니다. 그리고 이런것들을 하는게 절대로 정석이지도 않구요.


그럼 구리 주괴를 추가해보도록 하겠습니다.


1. Item을 관리하는 클래스 만들기




Item 객체들을 모아둘 클래스를 만듭니다. 저는 LoveHolyTechItems라고 했습니다.



소스를 대충 이런 모양으로 짭니다.

1번째 줄

패키지의 이름입니다. 지금 이 파일은 loveholy.loveholytech 패키지에 속해져 있습니다.

3번째 줄

아이템을 게임에 등록시키기 위한 클래스를 불러옵니다.

4번째 줄

Item 객체를 생성하기 위해서 필요한 클래스를 불러옵니다.


7번째 줄

IngotCopper를 생성합니다. 이제 게임레지스트리가 진행되면 이 아이템으로 레시피나 속성에 접근이 가능합니다.

11번째 줄

Item을 상속받은 ItemIngotCopper(밑에서 설계할것입니다)를 IngotCopper에 넣습니다.

12번째 줄

게임에 아이템을 등록시킵니다.



ItemIngotCopper는 아직 만들어지지 않은 클래스입니다.

마우스를 위에다 올리면 quick fixes available 창이 뜨는데요.

빨간색 테두리 부분을 누릅니다.



취향에 따라서 패키지 부분을 수정하시면 됩니다. 전 items 패키지를 새로 만들어서 아이템들을 다 저기로 몰아 넣기로 했습니다.



요렇게 써줍니다. 대충 Item을 상속 받아서 이름을 바꾸고 아이콘을 바꾸게 설정하였습니다.

12번째 줄

상속을 한 Item클래스의 생성자를 호출하는 super클래스입니다.

13번째 줄

이 아이템을 Materials 탭에 넣습니다.


16번째 줄에서 26번째 줄

아이템이 가지는 고유 이름을 지정하는 부분입니다.

28번째에서 32번째 줄

아이템의 이미지 경로를 지정해줍니다.



모드의 메인이 되는 부분에 이 이벤트를 추가를 합니다. 그래야 아이템을 등록을 합니다.

이 이벤트에서는 블록, 아이템 등록 등등을 맡는 역할을 합니다.



이 경로에다 아이템 텍스쳐를 잘 쑤셔 박습니다.



잘 추가 되었습니다. 하지만 이름이 이상하죠.



리소스 위에서 폴더를 하나 만듭니다.



폴더 이름은 lang입니다.



lang에 파일을 하나 만듭니다.



파일 이름은 en_US.lang입니다.



요렇게 적어주시면 됩니다.

이렇게 언어파일을 만들 수 있습니다.

ko_KR.lang을 쓰면 한글도 지정할 수 있습니다.



그럼 이렇게 바뀝니다.


아 강좌 쓰기 너무 힘들다

바로 모바일 스킨으로 바꿨습니다.



'럽홀의 이야기' 카테고리의 다른 글

다음 모딩 강좌가  (1) 2014.11.23
간단하게 말씀드리겠습니다.  (5) 2014.11.21
소개 :: RG 블로거들  (6) 2014.11.20
인간은  (1) 2014.11.17
나는 한다  (6) 2014.11.16

여기는 바로 상고로의 본진입니다. 성역이며, 세렌의 보금자리이죠.


이름 : 누리 포니 성애자 블로그

링크 : http://yoyo7326.tistory.com/

내용 : 소년가장 사밥이 운영하는 길드 소속 멤버. 접률 최악의 마이너로써 요즘 바인딩 오브 아이작 리버스 깬다고 싱글벙글


이름 : 모드와 모드와 모드

링크 : http://minetechmod.tistory.com/

내용 : 지금 시즌에서 상고로와 함께하고 있는 메이꿔판덴의 본진. 여기는 모드 강좌가 주라면 저기는 건축강좌가 아마 주가 되지 않을까 싶음.


이름 : Guild Supernova

링크 : http://minecraftmods.tistory.com/

내용 : 프로닐, 쿨감이 길드 마스터로 있는 초신성 블로그. 왕성한 길드 활동력을 보이고 있지만 막상 블로그는 삭막하기 그지 없다.


사실 블로깅 하는 곳이 적네요. 저도 개인 블로그가 있지만 이제 개인적으로 쓸 내용까지 여기 블로그에 채우고 있으니..


제가 사람들 달달 볶아서 글쓰게 하게 시키고 있으니 조금만 기다려주세요!


※ 오딘 : 아니 RopecaMinecraftServer 를 왜 자꾸 쓰는거여... RopecaGames 로 바뀐지가 언젠데

'럽홀의 이야기' 카테고리의 다른 글

간단하게 말씀드리겠습니다.  (5) 2014.11.21
모바일에서 댓글이 이상하다고 하길래  (3) 2014.11.20
인간은  (1) 2014.11.17
나는 한다  (6) 2014.11.16
[Majestry S2] 자기소개와 지금 길드 현황 1부  (19) 2014.11.13

상고로드림 소속인 Azruine입니다.  한글로는 사수생이라고 읽으시면 됩니다^~^


앞으로 저도 강좌를 조금씩 쓸텐데, 자주 쓰이고 오래된 기술 모드들 위주로 써나갈 듯 싶습니다. 플러스 알파로 현재 배우고 있는 사움도 다룰지도?


원래대로면 오늘부터 마팩과 써멀, 그 외 날아간 구 강좌들을 쓰고 있어야 하지만...


안타깝게도 컴퓨터가 날아간 관계로 강좌는 목요일 저녁 ~ 내지는 금요일 저녁부터 올라올 예정입니다. 망할 까탈리스트.

'사수생 이야기' 카테고리의 다른 글

싱글 근황  (3) 2016.11.13
오랜만에 고양이  (10) 2016.08.09
번역하는 분들...  (8) 2015.04.01
마크 말고  (12) 2015.02.25
시험이 끝나지 않아  (0) 2014.12.10






















'오딘의 이야기' 카테고리의 다른 글

RopecaGames 3기 모집 종료  (38) 2014.12.11
세렌님이 오늘 한짓  (6) 2014.11.24
블로그 글 작성자 정리  (4) 2014.11.18
차 타이밍 벨트를 바꿨습니다.  (8) 2014.11.15
사고뭉치 세렌....  (15) 2014.11.06



0. 들어가기 전에


이 강좌는 님들이 Java에 대한 기본적인 것을 알고 있다는 전제하에 쓰여진 강좌이기 때문에

어떤어떤거 이렇게 응용하고 싶은데 어떻게 하나요? 라는 질문은 받고 따로 강좌를 쓰거나 답변을 드리겠지만

Syntax 에러에 대해서는 절대로 질문을 받지 않습니다.


괜히 사람 암걸리게 하지 마세요.


1. 환경 구축하기


포지 모드 개발 환경을 조성하기 위해서는 포지 다운로드 페이지에서 src를 받아주어야 합니다.



저 같은 경우엔 항상 Recommended(추천된, 추천하는) 버전을 사용합니다. 지금 1230버전으로 강좌를 진행하겠습니다.

Java에 대한 기본적인 것을 알고 있다는 전제가 깔려 있기 때문에 eclipse와 JDK가 설치되어 있다고 믿겠습니다.


2. 압축풀기



적당한 곳에 압축을 풉니다. 저는 D:\LoveHolyTech\ 폴더에 풀겠습니다.


3. 작업공간과 eclipse 프로젝트 파일 생성하기



쉬프트를 누른채로 오른쪽 클릭을 하면 여기서 명령어창 열기라는게 보일껍니다. (한글로 비슷한게 있을거에요.)

이걸 눌러줍시다.



gradlew setupDecompWorkspace


이렇게 하시면 gradle가 자동으로 작업공간을 만들어줍니다.

시간이 걸리는 작업이니 기다려주시고

10분 이상이 걸린다 싶을때 아래의 문제점을 확인해보세요.


1. JDK가 설치가 되지 않았다 -> JDK 설치

2. JDK가 설치가 되었으나 버전이 1.8이다. -> 1.7 JDK설치




gradlew eclipse


저는 작업공간 만드는데에 4분 정도가 걸렸습니다.

이제 eclipse 프로젝트를 생성하면 됩니다.


4. Eclipse 실행



이클립스를 실행하면 이런 창이 뜹니다. 압축을 풀어둔 폴더에 eclipse 폴더를 선택하여 OK를 눌러주시면 됩니다.



이클립스를 실행하였을때 이런 과정이 뜨지 않고 바로 예전 프로젝트가 열린다면 파일(File)->작업공간 변경(Switch Workspace)->기타(Other)를 눌러서 열어주시면 됩니다.


5. 소스 편집



원래 있던 소스를 삭제합니다. 기본적으로 적혀 있는 더미 파일입니다.



그 다음에 패키지를 만들어 줍니다.



보통 패키지 이름은 알아서 정하시면 됩니다. 보통 모더들이 선호하는 방식은 Author.ModName 이니 그 방법을 따르도록 하겠습니다.



클래스를 추가시켜줍니다.



클래스 이름을 지정을 합니다.

저희가 만드는건 Init이벤트를 담당하고 모드의 중요한 필드와 메소드를 만드는 부분입니다.

보통 모더들이 이 클래스를 만들 때 모드의 이름을 적으니 저도 그렇게 쓰도록 하겠습니다.



패키지 탐색기(Pakage Explorer)를 통해서 생성한 class를 연 다음에 이렇게 소스를 짰습니다.

간단하게 FMLInit 이벤트가 발생할때 Hello World를 출력하는 소스를 짰습니다.

아무 에러가 없이 위와 비슷하게 만들어졌다면 성공하신 겁니다.


이제 src/main/resources 에 들어가서 기본정보들을 수정해줍니다.


6. 빌드하기



build.gradle 이라는 파일을 텍스트 편집기를 통해 엽니다.



21번째 줄과 22번째 줄을 수정을 팝니다.

group에는 아까 만들었던 패키지를 적어주시면 되고

archivesBaseName은 아무거나 적어주셔도 상관 없지만 저는 모드 이름을 적었습니다.

그리고 저장을 합니다.



gradlew build


이제 아까의 명령어 창으로 돌아와서 위의 명령어를 입력합니다.

이렇게 하시면 5분 이내외로 빌드가 완성이 됩니다.



빌드가 성공적으로 완료가 되었습니다.



빌드가 성공한 파일은 압축을 푼 위치\build\libs에 위치하고 있습니다.

이제 이걸 복사하여 mods 폴더로 옮겨서 마인크래프트를 실행하시면 됩니다.


7. 완성



자신이 원하는대로 코딩이 되었는가를 확인합니다.


이제 이렇게 하시면 모딩을 하실 환경이 조성된겁니다.

사실 이클립스의 Run버튼을 눌러서 바로 마인크래프트 실행이 가능합니다만 그렇게 하면 매우 불안정하기 때문에 빌드를 해서 직접 확인하시는 것을 추천해드립니다.


다음 강좌에는 여기서 좀 더 살을 붙여서 아이템을 하나 생성해보도록 하겠습니다.


 본 글은 [Botania r1.3-135] 버전을 기준으로 작성되었습니다.


Q. 데이블룸을 염료로 만들 수 있나요?


A. 아뇨 못만듭니다.


Q. 데이블룸을 벌들이 꽃으로 인식하나요?


A. 아뇨 인식안합니다. 데이블룸을 포함한 모든 보타니아의 꽃은 인식하지 못합니다.


* 한글화가 일부 되어있지만, 작성자가 익숙치 않은 관계로 영문으로 작성합니다.

* 한글로 번역된 이름도 병행 표기하였습니다.

* 공략의 모든 내용은 사전에 들어있으며, 조합법 검색은 NEI 활용을 적극 권장합니다.


보타니아의 마나생산 꽃


지난 글에 보타니아의 기초를 다루었습니다.

보타니아를 본격적으로 하려면 마나가 많이 필요한데요.

기초에서 다루어진 데이블룸과 나이트쉐이드로는 마나 생산속도가 너무 느려서 보타니아를 즐기기에는 무리가있습니다.

그렇기에 이번 글에서는 마나를 생산하는 꽃에대해서 알아보도록 하겠습니다.


총 10가지의 꽃이 있습니다.



들어가는 재료(꽃잎, 룬)에 따라서 단계를 나누어 보도록 하겠습니다.


단계

 이름

 재료[각주:1]

 1

 Daybloom, Nightshade

 + 꽃잎

 2

 Endoflame, Hydroangeas

 + 마나 꽃잎

 3

 Rosa Arcana, Thermalily

 + 1차 룬

 4

 Gourmaryllis

 + 2차 룬

 5

 Entropinnyum, Kekimurus, Munchdew

 + 3차 룬





Daybloom과 Nightshade



지난 글에서도 알아보았지만, 다시한번 다루어보겠습니다.


두 꽃 모두 낮/밤 시간동안 마나를 생산하며, 다른 자원의 소모는 없습니다.



대신, 수직,수평으로 동일한 꽃들이 배치 되어있을 경우, 마나 생산량이 0이되는 패널티가 있습니다.



패널티를 없애고 두 꽃으로 효율적으로 발전하기 위해서는 위의 사진과 같이 배치하는게 이상적입니다.




Endoflame과 Hydroangeas



2단계의 꽃들입니다.

이 꽃들을 만들기 위해서는 마나 꽃잎이 필요합니다.

마나 꽃잎은 마나가 충분한 일반 마나 풀신비로운 꽃잎을 투척하면 만들 수 있습니다.


마나 꽃잎(Mana Petal)



아무 꽃잎 1개


마나 꽃잎을 만드는법을 알아보았으니 2단계의 꽃들을 알아봅시다.

우선은 Endoflame(불먹이꽃) 부터...


불먹이꽃(Endoflame)



붉은색 꽃잎 1개, 붉은색 마나 꽃잎 1개, 갈색 꽃잎 1개, 갈색 마나 꽃잎 1개, 밝은 회색 꽃잎 1개


이름에서 알 수 있듯이 엔드오플레임의 경우 화력으로 마나를 생산하는 꽃입니다.

다른 모드들의 화력발전기와 같이 탈 수 있는 아이템(목재, 석탄 등)으로 마나를 생산합니다.

이 꽃이 아이템을 받아먹는 방식이 특이(?) 하다고 할수있는데요.

GUI를 열어서 넣어주는 방식이 아닌 주변에 아이템을 던져놓으면 알아서 집어먹습니다.(!)

* 용암 양동이와 BloodMagic의 라바 크리스탈, Railcraft의 파이어스톤은 집어먹지 않습니다.



바닐라 드롭퍼와 타이머(바닐라 및 모드)를 이용해서 자동으로 연료를 투척하여 발전할 수 있습니다.


다음 Hydroangeas(물먹이꽃)을 알아봅시다.


물먹이꽃(Hydroangeas)



파란색 꽃잎 1개, 파란색 마나 꽃잎 1개, 하늘색 꽃잎 2개, 하늘색 마나 꽃잎 1개, 분홍색 꽃잎 1개


이 꽃도 이름에서와 같이 하이드로앵거스는 물을 사용해서 마나를 생산하는 꽃입니다.

물을 이용해서 발전하지만 물 양동이나 물 탱크로부터 직접 물을 끌어서 사용하지 않습니다.

꽃과 동일한 높이3x3 범위 안에 인접한 물 소스 블록을 소모하고 마나를 생산합니다.

낮과 밤에 관계없이 물만 있다면 마나를 생산하고, 비가 온다면 약간의 생산에 보너스가 있습니다.



설명은 3x3 범위(8블록)를 사용한다고 하지만 실질적으로 사용 가능한 위치는 4블럭(구석)입니다.

저런식으로 물을 가둬놓지 않으면, 꽃이 쓸려나가요.

위의 사진은 2x2의 무한 물을 두었지만, 추천 크기는 3x3의 무한 물입니다.

이유는 동일 선상의 하이드로앵거스꽃이 물을 잡아먹는순간 무한 물이 망가져서, 마나 생산이 멈출 수 있기때문입니다.

 2x2 사이즈에서도 BuildCraft의 플루이드 게이트로 계속 공급해주는 방법이 있긴하지만, 효율이 나쁜관계로 추천드리지 않습니다.

* 물 양동이, 물 셀 등 물을 보관하는 아이템을 사용하지 않습니다.

* 리퀴드 파이프, 덕트, 노드에 연결되지 않습니다.

* Pressure Pipes의 무한 물 블럭도 인식하지 못합니다.



이런식으로 층을 쌓는게 그나마 공간을 절약할 수 있는 방법입니다.




Thaumcraft의 아케인 스파를 이용한다면 1x1 크기로 4개의 꽃을 사용하는 배치가 가능합니다. Tip.Etihw





Rosa Arcana와 Thermalily



3단계의 꽃들입니다.

이 꽃들을 만들기 위해서는 을 만들어야합니다.

룬을 만드는 법은 다음 강좌에서 다루도록 하겠습니다.


우선 Rosa Arcana(신비로운 장미)를 알아봅시다.


신비로운 장비(Rosa Arcana)



마나의 룬 1개, 분홍색 꽃잎 1개, 분홍색 마나 꽃잎 2개, 연두색 꽃잎 1개, 보라색 꽃잎 1개, 보라색 마나 꽃잎 1개


드디어 이름만으로 기능을 알 수 없는 꽃이..

로사 아르카나의 경우는 플레이어의 경험치를 흡수(!)하여 마나를 생산하는 꽃입니다.

꽃을 중심으로 3x3 범위 안에 있는 모든 플레이어의 경험치를 빨아들입니다.

* 경험치 구슬, 인챈트 병, 액체 경험치, 몬스터 에센스는 사용하지 않습니다.



로사 아르카나는 딱히 효율적인 배치가 없습니다만, 길드원의 경험치를 훔쳐갈수 있기에 경고문을 붙이시길 권장합니다. 함정으로 사용한다면?


다음 Thermalily(열백합)을 알아봅시다.


열백합(Thermalily)



불의 룬 1개, 흙의 룬 1개, 빨간색 꽃잎 1개, 주황색 꽃잎 1개, 주황색 마나 꽃잎 1개


써멀릴리의 경우 또(!) 이름에서 알 수 있듯이 용암으로 마나를 생산하는 꽃입니다.

하이드로앵거스와 마찬가지로 동일 높이에 존재하는 용암 소스 블록을 소모합니다.(하이드로앵거스 용암.ver)

* 용암 양동이, 용암 셀, 용암 탱크는 사용하지 않습니다.



하이드로 앵거스와 비슷하게 배치를 하면됩니다.

위에서 알려드린것처럼 Thaumcraft의 아케인 스파를 사용하셔도됩니다.



이런식으로 BuildCraft의 플루이드 게이트를 이용하셔도됩니다.

또 BloodMagic의 용암 생성 리츄얼을 이용할수도 있습니다.




Gourmaryllis



4단계의 꽃입니다.

이 꽃을 만들기 위해서는 1차 룬 2개를 조합하여 만드는 2차 룬이 필요합니다.

꽃이 하나 밖에 없으니 바로 넘어갑시다.


고르마릴리스(Gourmaryllis)



여름의 룬 1개, 불의 룬 1개, 빨간색 꽃잎 1개, 노란색 꽃잎 1개, 노란색 마나 꽃잎 2개, 밝은 회색 꽃잎 1개, 밝은 회색 마나 꽃잎 1개


고르마릴리스는 음식을 먹고 마나를 생산하는 꽃입니다.

엔드오플레임과 같이 주변에 떨어져있는 음식들을 집어먹습니다.

음식이 허기를 회복시켜주는 양에 따라서 마나생산 시간이 차이가 납니다.

* 케이크는 사용하지 않습니다.



엔드오플레임과 같이 드롭퍼등을 섞어서 사용하여 자동화를 할 수 있습니다.



 Entropinnyum과 Kekimurus와 Munchdew



5단계의 꽃들입니다.

이 꽃들을 만들기 위해서 1차 룬과 2차 룬 1개씩을 조합하여 만드는 3차 룬이 필요합니다.


우선 Entropinnyum(엔트로피늄)을 알아봅시다.


엔트로피늄(Entropinnyum)



분노의 룬 1개, 불의 룬 1개, 빨간색 꽃잎 1개, 빨간색 마나 꽃잎 1개, 회색 꽃잎 1개, 회색 마나 꽃잎 1개, 하얀색 꽃잎 1개, 하얀색 마나 꽃잎 1개


엔트로피늄은 주변 TNT의 폭발력을 흡수(!)하여 마나를 생산하는 꽃입니다.

폭발력을 흡수하면 블럭들이 파괴되지 않습니다.(오오)

마나가 가득차있어서 폭발력을 흡수 할 수 없는 경우엔 지형이 파괴됩니다.(당연히)

* Applied Energistics의 Tiny TNT의 폭발력도 흡수합니다.

* 크리퍼나 다른 모드의 폭발은 흡수하지 못합니다.



이 꽃도 딱히 좋은 배치법은 없습니다.

편한 방법은 Thaumcraft로 와딩을해놓고 펑펑펑... 하시면 되겠습니다.


다음 꽃으로는 Kekimurus(케키머러스)를 알아봅시다.


케키머러스(Kekimurus)



식탐의 룬 1개, 하얀색 꽃잎 1개, 하얀색 마나 꽃잎 1개, 주황색 꽃잎 1개, 주황색 마나 꽃잎 1개, 갈색 마나 꽃잎 2개


케키머러스는 케이크를 소모하여 마나를 생산합니다.(위에서 케이크를 못쓴이유)

주변에 설치되어있는 케이크를 한입씩(?) 먹습니다.

* Forbidden Magic의 사우믹 케이크는 사용하지 않습니다.

* 아이템화 되어있는 케이크는 사용하지 않습니다.



Botania의 블럭 배치 꽃이라던가, Thaumcraft의 골렘이라던지 다른 여러 모드들의 블록 배치기(오토노머스 액티베이터 라던가)등을 활용하여 자동화를 할 수 있습니다.


마지막으로 Munchdew(먼치듀)를 알아봅시다.


먼치듀(Munchdew)



식탐의 룬 1개, 연두색 꽃잎 1개, 연두색 마나 꽃잎 1개, 초록색 꽃잎 1개, 빨간색 꽃잎 1개, 빨간색 마나 꽃잎 1개, 하얀색 꽃잎 1개, 하얀색 마나 꽃잎 1개


먼치듀는 주변의 나뭇잎 블록을 소모하고 마나를 생산하는 꽃입니다.

17x17x16 범위내의 나뭇잎들을 인식합니다.

가위로 캐낸뒤에 재설치한 나뭇잎들도 인식됩니다.



* 나뭇잎 판정이나는 모든 블럭(포레,사움,팅커,황혼 등)을 인식합니다.

케키머러스와 같이 자동으로 블럭을 배치해주는 시스템으로 나뭇잎을 자동으로 배치해준다면, 자동화가 가능합니다.



질문은 댓글로 달아주신다면 답글을 달아드리거나, 다음 공략글에서 답변해드리도록 하겠습니다.

오탈자라던지 잘못된 정보가 있을경우 알려주시면 바로 수정해드리겠습니다.

  1. 단계가 올라갈수록 항목의 재료가 추가적으로 요구될 수 있습니다. [본문으로]

'마법 계열 > Botania' 카테고리의 다른 글

[Botania] 1. 보타니아의 기초  (6) 2014.11.14

오딘 : 블로그 관리 및 정리 및 작성자 채찍질 하기

세렌 : 본 블로그의 주인 취미 생활 영유

Loveholy : AE, 싸움 기계화 공략

Nark : 싸움, 보타니아 등 마법 계열 공략

Mozitaka : 유배중

'오딘의 이야기' 카테고리의 다른 글

RopecaGames 3기 모집 종료  (38) 2014.12.11
세렌님이 오늘 한짓  (6) 2014.11.24
말없이 상고로판뗀을 찍어 올린다.  (5) 2014.11.20
차 타이밍 벨트를 바꿨습니다.  (8) 2014.11.15
사고뭉치 세렌....  (15) 2014.11.06

군인은 분류가 필요 없습니다.


노드와 함께하지



부들부들...


내가 기계치라니... 부들부들....


안녕하세요. 럽홀입니다.


AE가 AE2로 진화하면서 많은 것들이 바뀌었는데요.

단순히 쿼츠만 많다고 모든 부품들을 만들 수 없게 되었습니다.

모든 작업에 시간이 들고, 노력이 들고, 등골 브레이킹이 들어가고, 스카이 스톤을 찾기 위해

위험한 모험까지 해야 하는 상황이 되었습니다.


그리고 부품을 만드는 방법도 많이 까다로워지고 많아졌습니다.

세투스 크리스탈을 차징 시키고, 그리고 씨앗을 만들어 물에 담궈 키워야 하고... 등등


하지만 그렇다고 해서 자동화가 안되는건 아닙니다!

아니, 이 강좌를 보시는 분들 앞엔 자동화, 그것은 불가능한게 아닙니다!



1. 부품들


AE2 기계들을 만들기 위해 사용되는 부품들을 알아 보겠습니다.



Charged Certus Quartz Crystal 입니다.


자연상태로도 존재하고 있는 광물입니다. 저는 Charger라는 기계를 이용해서 Certus Quartz Crystal을 Charging 시켜 만들고 있습니다.





Printed Logic Circuit 입니다.


이 아이템은 Inscriber라는 특수한 기계에 틀을 넣고 금괴를 넣어서 만들 수 있습니다.



조합법입니다.


흰색 틀 같은것들은 AE2에서 추가한 운석들을 뒤져보시면 나옵니다.



Printed Silicon 입니다.


마찬가지로 Inscriber를 통해서 만들 수 있습니다.



조합법입니다.



Printed Calculation Circuit입니다.



아마 자동화중에서 제일 까다로운 녀석이 아닐까 합니다. 


재료로 Pure Certus Quartz Crystal이 들어가는데 얘를 만들려면 Water Crafting이라는 기술이 들어가야 하기 때문이죠.


AE2 Stuff 모드가 있으면 간단히 자동화를 하겠지만 없다는 가정하에 자동화를 해보도록 하겠습니다.



Printed Engineering Circuit 입니다.



조합 방법은 이것.


여기까지가 틀을 이용해서 찍어내는 레시피입니다.

그 다음은 찍어낸 것들을 이용해서 만들어내는 레시피입니다.





이렇게 3개 있습니다. 이 3개가 AE 컴퍼넌트나 다른 기타 Panel, Interface를 만드는데 많이 쓰입니다.


이제 이것들을 자동화해야 합니다.


2. Inscriber



설치하면 이렇게 생겼습니다. 꼭 AE랑 연결되어 있어야 작동하니 이 점 유의하고 설치하세요.





아이템을 넣으면 오른쪽 게이지바가 차 오르기 시작합니다. 게이지바가 다 차오르면 블록이 위랑 아래가 붙으면서 착! 하고 아이템이 완성됩니다.


이 Inscriber는 치명적인 단점이 있는데요. 어떻게 하든 아이템이 한 슬롯에 1개 초과는 들어가지 않으며

만약 어떤 방법을 이용해서(라우터리본의 라우터) 1개 초과의 아이템을 넣으면 작동을 멈춰버립니다. ㅠㅠ

하지만 아이템을 넣는 방법은 있습니다.




위 그림에서 화살표 색상과 슬롯 색상이 같은 것들끼리 대응됩니다.


즉 저 슬롯에서 뭔가를 빼거나 넣거나 하기 위해선 저 부분을 이용해야 한다는 뜻이죠.


이것을 이용해서 설계를 하시면 됩니다.



제가 설계한 첫번째는 프린트된 것들을 찍어내는 부분입니다.


틀은 소모가 되지 않는 놈들이기 때문에 Inscriber안에 넣어두시면 됩니다.



제일 앞에 있는 기계를 열어봤습니다. Printed Calculation Circuit을 만드는 부분인데요.


빨간색 슬롯은 뒷부분이라고 말씀드렸듯이 인터페이스를 통해서 받아옵니다. 물론 무작정 만드는거라면 인터페이스에 빼오게 한 다음 파이프로 연결해도 괜찮겠지만

지금은 패턴이라는 것을 이용해서 인터페이스를 통해 바로 기계로 아이템이 들어가도록 해두었습니다.


파란색 슬롯 부분은 앞면이고 아이템이 빠져나오는 부분입니다. 파이프로 아이템을 뽑아내서 인터페이스에 넣도록 설계하였습니다.






정면과 대각선, 후면을 찍은 스크린샷입니다.


정면 부분 스크린샷에 왼쪽 아래에 보면 크래프팅 터미널 비슷하게 생긴 터미널이 보이실거에요.


ME Pattern Terminal이라는 것인데 AE1의 패턴 인코더와 터미널을 함쳐둔거라 생각하시면 됩니다. 



만드는 방법은 ME Crafting Terminal과 Engineering Processor를 조합해주시면 만들 수 있습니다.


그러면 이제 패턴을 만들어보기 전에 Blank Pattern이 필요합니다. 써멀의 사이클릭 어셈블러를 이용하기 위한 스키마틱과 비슷하다고 생각하시면 됩니다.



Blank Pattern 을 만드는 방법입니다. Quartz Glass가 필요하고 중앙에 들어가는 Certus Quartz는 Charged나 Pure나 Normal이든 상관 없습니다.


자 이제 그러면 ME Pattern Terminal을 열어봅시다.


ME Pattern Terminal 의 GUI입니다.

빨간색 부분은 크래프팅으로 만들어지는지 기계를 통해서 만들어지는지 확인하는 부분인데

지금 기계에 인터페이스를 붙여서 쓰고 있기 때문에 Processing Pattern 으로 맞추면 됩니다.

노란색 부분엔 기계에 들어가는 아이템을 넣어주면 됩니다.

연두색 부분엔 기계에서 출력되는 아이템을 넣어주시면 됩니다.

하늘색 부분은 Blank Pattern을 넣어두는 부분입니다.

파란색 부분은 위에 화살표 버튼을 누르면 Blank Pattern에 패턴이 새겨지게 되는데 그 패턴이 나오는 곳입니다.




만들어진 패턴은 쉬프트를 누르면 아이콘이 변합니다.


이제 이 패턴을 인터페이스에 넣으면 됩니다.



기계 뒷부분에 달아둔 인터페이스입니다.



이렇게 넣어주시면 됩니다.


그리고 이런 설계를 돌리기 위해서는 컴퓨터가 필요합니다.



싼게 비지떡이니 제일 싼걸 여러개 붙이는게 좋습니다.



대충 여기다 설치했습니다.


이제 자동화가 끝났습니다.


엥? 무슨 자동화가 끝났냐구요? 아까 패턴 터미널을 열어보도록 합시다.



이렇게 Craft라는 부분이 생겼습니다. 이걸 한번 눌러봅시다.



그럼 몇개를 만들지 창이 뜹니다. 1개를 일단 만들어봅시다. Next를 누르면 됩니다.



파란색 창은 이 조합 계획이 얼마나 용량을 차지하는지 알려줍니다.

빨간색 부분은 이 조합 계획에 필요한 아이템들과 만들어지는 아이템을 보여줍니다.

연두색 버튼은 어떤 CPU로 쓸지 정해주는 부분입니다. 자동으로 두시면 됩니다.


이제 Start 버튼을 눌러봅시다.



이때 CPU를 눌러보면 지금 계획된 조합들을 볼 수 있습니다.



오 잘 들어가서 잘 찍혀 나오는군요.



재료로 금이 하나 소모되고 완성된 아이템이 ME로 들어왔습니다.


이제 이런것들을 응용해서 AE로 자동화를 쉽게 할 수 있습니다.

멍청하게 한꺼번에 재료를 많이 만들 필요도 없이 자동화를 이용하여 그때 그때 필요한 만큼만 만들어 쓰도록 합시다!


소금목욕

+ Recent posts