나는

2013-03-14 3 views
-7

은 그것은 "무작위로"여러 가지 "방"을 포함하는 79x20 그리드에 터널을 생성 해하고 로그 류 "던전"을 생성하기위한 팁을해야합니다. 기본적으로 하나의 터널을 그리는 여러 함수를 만들었습니다. 무작위로 숫자를 선택하는 함수를 만들었고이 숫자에 따라 단일 경로를 만드는 이러한 함수를 호출하여 터널 네트워크를 만듭니다. 나는

너희들은 내가 지금 생성 얻을 수있는 던전을하고 필요하지 않은 여분의 터널 ('#')를 제거하려고 시도해야한다고 생각합니까? 또는 생성 된 방을 가져 와서 한 방에서 다른 방으로 터널을 만드는 방법을 찾아야합니까?

세부 사항 : 요구는 79x20 그리드의 "방"을 생성하는 MT()를 사용하여도된다

. 각 방에는 최소 16 개의 "타일"('.'로 표시)이 있어야합니다. 각 던전은 무작위로 생성되어야합니다. 각 지하 감옥 층에는 최소 200 개의 방 타일이 있어야합니다. 이 부분은 몇 시간이 걸렸지 만 너무 심하게 고생하지는 않았습니다. 그리드를 4 개의 섹션으로 나눈 다음 각 섹션에 16 개 이상의 타일을 무작위로 배치하는 기능을 설정했습니다. 그런 다음 2D char 벡터를 통과하고 '.'수를 계산하는 함수를 만들었습니다. chars. 200보다 작 으면 전체 격자를 지우고 터널/룸을 재생성하는 다른 함수를 호출합니다.

+4

야, 지점으로 이동 : 2 그래서 나는 위키가

Roguebasin 또한 로그 류 게임의 하드 부분에 대한 프로그래밍 팁을 제공 많은 기사 많이있다) 오래된 생각합니다. 나는 당신의 질문에서 무작위로 문장을 읽었으며 그 대부분은 실제 문제를 기술합니다. 당신이 원하는 것을 이해하기 전에 평생을 읽어야 만한다면 누군가가 당신을 도울 수 없을 것입니다. – mfontanini

+0

내가 그렇게해도, 아무도 많은 것을 제안 할 수있을 것 같습니다. – ModdedLife

+3

아마도 올바른 질문을하지 않을 것입니다. – mfontanini

답변

3

첫째 - 힘내세요! 인생의 모든 시점은 실수를 저지르는 것입니다. 왜냐하면 당신이 처음으로 손을 움직이지 않는 것을 경험하지 않으면 배울 수 없기 때문입니다. 음악을 작곡하기 시작했을 때 무엇을해야할지 몰랐습니다. 아무 데나 나갈 수 있기 전에 먼저하지 않은 모든 일을해야했습니다. :)

더 중요한 것은, 그것은 빨아 일을 할 괜찮습니다. 우리 모두는 멍청한 것들을 만듭니다. 짜증나는 것을 만들었을 때, 당신이 잘못한 것을 알아 내서 미래를 위해 무엇을 잘해야하는지 알 수 있습니다. 내 옛날 노래는 모두 끔찍한 말로서, 나는 그 반대의 사실을 의미하지 않는다. 벽돌이 내 개인적인 발전의 길에 놓여있다. 난 아무것도 만들 그래서 내가 더 잘받지 않습니다 수 없습니다 - 나는 은 내가 갇혀있을 것이다 빨아 일을하지 않으면! 절차 적으로 생성지도와 같은 어떤 사소한 솔루션 어려운 문제에 직면했을 때


, 나는 기존의 구현이 작동하는 방법을 설정합니다.

기본적으로 http://brogue.wikia.com/wiki/Level_Generation#Digging_the_Level

, 당신은 방에서 시작, 객실/복도의 임의의 모서리를 선택하고 복도가 끝나는 생성 할 : 예를 들어

는 브로그는 아주 잘 작동하는 간단한 던전 생성 알고리즘을 가지고 그 방향의 새 방에서 뭔가를 겹치면 포기하고 새로운 임의의 장소를 시도합니다. 그것은 레벨이 룸과 복도에 밀집되어있는 경향이있는 충분한 시간을 시도합니다. 그러나이 디자인은 루프가없는 트리 구조를 생성하므로 추가 회랑을 추가하여 루프를 보장합니다.

브로그의 소스 코드는 여기에 있습니다 :

https://sites.google.com/site/broguegame/

(단, 레벨 생성기 1.7에서 변경 있습니다.

http://www.roguebasin.roguelikedevelopment.org/index.php?title=Dungeon-Building_Algorithm

+0

나는 고마워! 마감일을 이미 놓쳤을 때 나는 너무 초조해하고 압도적으로 다가옵니다. 모든 것은 이것의 위에 만들어집니다. 그리고 나는 이미 많은 시간을 할애하여 일을 시도했지만 여전히 작동시킬 수는 없습니다. 나는이 기사를 통해 확실히 볼 것이다. 감사. – ModdedLife

+2

@ModdedLife 학교 나 대학에서 수업을 듣지 못하면 인생을 망치지 않습니다. 학교 나 대학에서 좀 더 오래 머물 것이라는 의미입니다. 끝나기 전에 대학에서 과정을 교환하는 사람도 있습니다. 마지막으로 1 ~ 3 년이 걸릴 수 있습니다. 그러나 그것이 결국 당신을 더 나은 사람으로 만드는 것이 중요합니다. 지금은 그렇지 않습니다. – Patashu