멍멍이네 블로그

1. sudo apt update

2. sudo apt full-upgrade

최신 버전으로 라즈베리파이 업데이트.

 

3. sudo reboot

업뎃 후 재부팅

 

4. mkdir -v ~/폴더명
마크 서버 세팅 폴더 생성

 

5. cd 폴더명

 

6. 자바 설치(마크 1.17 버전 이상 설치 시 자바 1.16 버전 이상 필요함)

7. 자바 패스 등록

자바 세팅

 

8. wget 으로 마크 서버 다운

9. nogui로 한번 실행

10. sudo nano eula.txt   실행 후 false -> true 수정

(소프트웨어 사용 동의)

 

11. nogui 없이 실행.

 

12. 마크 포트 25565 (or 설정 바꿨다면, 바꾼 포트) 포트 포워딩

 

 

 

 

자세한 글들은 구글링 후 동영상 참고 바랍니다.

다만 이번 설치 시 몇 가지 개인적으로 수정했던 부분을 말씀드리는데, 안 되면 그 부분들 참고하시길 바랍니다.

 

주의사항 1.

마크 1.17 버전 이상의 서버는 자바 1.16 버전 이상 설치해야 실행 가능합니다.

따라서, 다른 글을 참고하여 진행 시 자바 설치 부분은 많은 글들에 있는 8 버전이나 11 버전이 아닌 16 버전 이상을 설치하시길 바랍니다.

 

주의사항 2.

wget으로 github에서 자바 설치 시 404 not found 에러가 뜨더군요.

깃허브에서 직접 설치하시길 추천드립니다(저는 그렇게 해서 해결했습니다)

 

주의사항 3.

/world/session.lock: already locked (possibly by other Minecraft instance?)

 

session.lock 관련 에러가 뜰 경우. world 폴더에 보면 session.lock 파일이 있는데, 그것만 지우고 다시 실행시켜봅니다.

이미 session.lock이 있다고 에러뜨길래 지우고 다시 서버를 실행했더니 잘 되네요.

폭염이 심한 어느 여름.

많은 나라가 열돔 현상 & 온난화 기후 때문에 고통받는 중...

지인이 배달시켜준 고기 덕분에 기운차리고 오늘도 글을 씁니다 ^^ㅎ

(스포 - 돼지갈비 JMT)

 

 

 

맛있긴 한데, 포장&배달 전문이라 아쉽네요... 친구들 불러서 가고 싶었는데 아쉽네요~(그냥 그렇다고요...)

(3단계. 사적 모임 오후 6시 이전에.. 4명이던가... 다들 방역 수칙 꼭 잘 지키고 건강 조심하세요~♥)

 

 

 

 

우와.. 너무 저렴해서 의심이 갈 정도네요!

1인분이 280g인 것도 놀라운데, 11000원이네요~!!

제가 아는 1인분은 100~160g 심지어 8000원 정도... (매장 식사 기준)

(단, 배달 기본 25000원 이상인 듯. 메뉴판 참고)

배달 시 추가 요금 붙는 거 생각해도 괜찮아 보이고요~ 

아쉽지만 포장&배달 전문점이라, 매장 식사는 안 된다고 들었습니다 (아쉽네요)

 

 

 

6인분 + 콜라 시켰습니다~(서비스로 누룽지도..? ㅎㅎ 없다고 당황하시면 안 됩니다!!!)

두 개로 나눠서 온 것 보니, 각각 3인분씩 들어있나 봅니다.

 

 

 

 

고기 한 포장(?)을 개봉해보니.. 빼곡히 들어있네요 ^^ㅎ

갈비라 뼈가 들어있는 건 당연한 것 치고는 양이 상당히 많아요~

어디라고는 못 하겠지만, 여기저기 시켜본 것 치고는 역대급이라고 할 수 있네요 ㅎ

(심지어 어떤 가게는 포장 시 포장비용으로 한 포장지에 600원씩 추가로 받던데 말이죠)

- 어디가 맞다 틀리다 라고 할 수는 없지만, 대부분의 근처 가게들은 포장 픽업 시 추가 할인 or 양 더 많이 주던데요~ 추가 비용 받는 건 살짝 맘에 안 들긴 하죠...(이 가게는 아닙니다)

 

 

 

 

* 후기 *

지인분이 시켜준 고깃집.. 되게 맛있었어요~

아쉬웠던 점이라면, 양이나 가격이 되게 맘에 들어서, 먹으면서...

1. 주변 지인들에게 광주 놀러 오면 여기 강추요!
2. 광주 맛집 소개해달라고 하면 무조건 여기다...

3. 친구들아 코로나 잠잠해지면 여기 가보자!

이렇게 카톡 돌리고 있는데, 지인분께서 말씀하시길, 포장&배달만 된다고 하네요 (시무룩)

메뉴판 밑에 포장, 배달 전문점이라고 있었는데 이제 봤네요 ㅠ_ㅠ

 

검색해보니, 왜 이제 알았나 싶을 정도로 좋은 글도 많이 있네요 ^^ㅎ

 

광주 맛집 강추. 고깃집!! 담양식 돼지갈비 "갈비굽는집" 꼭 추천합니다!!

 

 

 

 

 

담양식 숯불돼지갈비. 갈비굽는집.

 

'오프라인 > 맛을 찾아서~' 카테고리의 다른 글

광주 첨단 라운지펍 OIC  (0) 2022.10.08
[오꾸닭] 운남점 방문 후기.  (0) 2021.04.12
[BHC] 포테킹 후라이드  (0) 2021.04.12
[호야분식] 이전 후...  (0) 2021.04.12
[분식] 호야분식 이전소식 ㅜ_ㅜ  (0) 2020.10.26

비주얼 같은 경우 NuGet 솔루션 패키지 관리에서 다운 받아서 사용했습니다.

(유니티에서 보자면... 에셋 스토어 - 무료 패키지 같은 느낌... 이랄까요!)

https://hungry2s.tistory.com/204?category=526895

 

 

그런데 유니티에서는 어떻게 써야 할지 찾아보았습니다.

유니티는 직접 코딩하거나 라이브러리를 다운 받아서(혹은 만들거나) 사용하고자 했는데, 더 쉬운 자료가 있네요.

굳이 힘들게 할 필요 없으니 이용해볼까 합니다.

 

 

이 엑셀 리드의 메커니즘은.

1. 엑셀 파일을 실행 후 다른 이름으로 저장 - csv(쉼표로 분리)로 저장 시 csv 파일로 저장이 됩니다.

2. csv 파일은 엑셀 파일의 각 열을 쉼표로 분리하여 저장합니다.

3. 저장된 데이터를 split(쉼표)로 잘라서 사용. - 끝 -

 

엑셀의 1행에는 header(머리말)이 들어가도록 돼 있어서, 보기도 쉽네요.

(리더기는 2행 1열부터 읽음)

 

엑셀 리드 코딩은 간단합니다.

구글링 합시다.

 

출처 : https://github.com/tikonen/blog/tree/master/csvreader

(2014년 9월 13일 자 글)

 

using UnityEngine;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text.RegularExpressions;

public class CSVReader
{
	static string SPLIT_RE = @",(?=(?:[^""]*""[^""]*"")*(?![^""]*""))";
	static string LINE_SPLIT_RE = @"\r\n|\n\r|\n|\r";
	static char[] TRIM_CHARS = { '\"' };

	public static List<Dictionary<string, object>> Read(string file)
	{
		var list = new List<Dictionary<string, object>>();
		TextAsset data = Resources.Load (file) as TextAsset;

		var lines = Regex.Split (data.text, LINE_SPLIT_RE);

		if(lines.Length <= 1) return list;

		var header = Regex.Split(lines[0], SPLIT_RE);
		for(var i=1; i < lines.Length; i++) {

			var values = Regex.Split(lines[i], SPLIT_RE);
			if(values.Length == 0 ||values[0] == "") continue;

			var entry = new Dictionary<string, object>();
			for(var j=0; j < header.Length && j < values.Length; j++ ) {
				string value = values[j];
				value = value.TrimStart(TRIM_CHARS).TrimEnd(TRIM_CHARS).Replace("\\", "");
				object finalvalue = value;
				int n;
				float f;
				if(int.TryParse(value, out n)) {
					finalvalue = n;
				} else if (float.TryParse(value, out f)) {
					finalvalue = f;
				}
				entry[header[j]] = finalvalue;
			}
			list.Add (entry);
		}
		return list;
	}
}

 

그리고 필요한 곳에서

List<Dictionary<string, object>> 변수명 = CSVReader.Read("파일명(확장자x)");

선언 후 데이터를 사용하면 된다.

for(int i=0; i<data_dialog.Count; i++)
{
	Debug.Log("i : " + i + " [ " + 변수명[i]["damage"].ToString() + " ] " + " [ " + data_dialog[i]["hp"].ToString() + " ] ");
}

(ex) i : 1 [ 1 ]  [ 1 ] 

이런 식으로 출력된다.

 

다만, 필요에 따라 수정이 필요할 듯하다.

* 파일 경로 *

- 기본적으로 Resources.Load를 사용하기 때문에 Resources 폴더에 있는 csv를 사용하는 장점이자 단점이 있다.

서버나 다른 경로에서 읽어오기 위해서 stream으로 변경해서 사용하는 게 더 활용도가 높을 듯.