여러 스토리 스레드가있는 RPG 게임을 설계했습니다. 즉, 사용자의 선택에 따라 일부 일이 발생하거나 발생하지 않을 수 있으므로 여러 가지 방법으로 동일한 일을 달성 할 수 있으며 결말이 다를 수 있습니다.
나는 잘 작동하지만 하나의 큰 결함이있는 간단한 결정 엔진을 구현했습니다. 결정을 내리는 순간 이야기는 즉시 결정에 영향을 미치므로 먼 미래에 영향을 줄 결정을 내릴 수 없습니다. . 스토리는 트리 구조의 분기처럼 전개되므로 다음 노드를 항상 알아야합니다. 후드 아래에서 결정은 대기열을 사용하여 구현됩니다. 각 노드는 이전 노드와 다음 노드에 대해 알고 있습니다 (또는 결정 노드 인 경우 사용자 입력이 다음 노드를 설정하기를 기다립니다).
복잡한 의사 결정 엔진이있는 많은 게임을 보았는데 어떻게 만들어 졌는지 궁금합니다. 물건을 정말 쉽게 만드는 특별한 디자인이 있습니까? 누구든지 비슷한 일을 하고이 문제를 해결하는 방법에 대한 힌트를 줄 수 있습니까?
업데이트 1 :
중요한 점은 스토리 코드를 어떻게 든 독립적으로 유지하여 외부 파일에서 조작 할 수 있도록하는 것입니다. 나는 이것을 엔진으로 사용할 계획이므로 가능한 선택조차도 외부 파일에서 가져와야합니다. 코드는 완전히 추상적이어야합니다.
또한 디자인 솔루션, 그것을하는 좋은 방법, 다른 사람들이 그것을 어떻게했는지, 어떻게했는지에 관심이 있습니다.
if (isTree)
하거나 유지할 isTree
수 없습니다. 무슨 말인지 알아? 여러 이야기를 제공하는 선택 엔진과 비슷합니다.
isTree=true
나중에 학교 동료와 싸우는 것과 같은 다른 일을합니다. 그가 엉덩이를 차기 때문에 이제 트리의 존재에 영향을주는 2 개의 변수 isTree==true' and
didFightBrat == false`가 있습니다. 무슨 말인지 알아? 그리고 사슬은 영원히 계속 될 수 있으며, 나무의 존재는 알려지지 않은 수의 요인에 의해 영향을받을 수 있습니다. 무슨 말인지 알아?