Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

namuwikitext #4

Closed
lovit opened this issue Aug 27, 2020 · 11 comments
Closed

namuwikitext #4

lovit opened this issue Aug 27, 2020 · 11 comments
Assignees

Comments

@lovit
Copy link
Member

lovit commented Aug 27, 2020

  • wikitext-2, wikitext-103 는 multiline texts 형식으로 위키피디아의 텍스트와 카테고리 이름을 정제한 데이터 (참고)
  • 나무위키에는 온라인에서 사용되는 문체가 포함된 다양한 종류의 문서들이 존재. 이를 wikitext 형식의 데이터로 가공하여 재배포
@lovit
Copy link
Member Author

lovit commented Aug 27, 2020

wikitext 형식

  • Head level 을 = 로 구분
  • 문장 내 ,, . 은 개별 문자로 띄어주나 한글로 기술된 문서에서 문장 종료지점을 확언할 수 없다는 이 기능은 제공하지 않아도 좋음
  • 문장 간에는 구분이 없고, 문단 간에는 구분이 있음
  • head 와 paragraph 사이에는 빈 줄 추가. 내용이 없는 paragraph 는 두줄 띄어쓰기 후 다음 내용 기술
 = Robert Boulter = 
 
 Robert Boulter is an English film , television and theatre actor . He had a guest @-@ starring role on the television series The Bill in 2000 . This was followed by a starring role in the play Herons written by Simon Stephens , which was performed in 2001 at the Royal Court Theatre . He had a guest role in the television series Judge John Deed in 2002 . In 2004 Boulter landed a role as " Craig " in the episode " Teddy 's Story " of the television series The Long Firm ; he starred alongside actors Mark Strong and Derek Jacobi . He was cast in the 2005 theatre productions of the Philip Ridley play Mercury Fur , which was performed at the Drum Theatre in Plymouth and the Menier Chocolate Factory in London . He was directed by John Tiffany and starred alongside Ben Whishaw , Shane Zaza , Harry Kent , Fraser Ayres , Sophie Stanton and Dominic Hall . 
 In 2006 , Boulter starred alongside Whishaw in the play Citizenship written by Mark Ravenhill . He appeared on a 2006 episode of the television series , Doctors , followed by a role in the 2007 theatre production of How to Curse directed by Josie Rourke . How to Curse was performed at Bush Theatre in the London Borough of Hammersmith and Fulham . Boulter starred in two films in 2008 , Daylight Robbery by filmmaker Paris Leonti , and Donkey Punch directed by Olly Blackburn . In May 2008 , Boulter made a guest appearance on a two @-@ part episode arc of the television series Waking the Dead , followed by an appearance on the television series Survivors in November 2008 . He had a recurring role in ten episodes of the television series Casualty in 2010 , as " Kieron Fletcher " . Boulter starred in the 2011 film Mercenaries directed by Paris Leonti . 
 
 = = Career = = 
 
 
 = = = 2000 – 2005 = = = 
 
 In 2000 Boulter had a guest @-@ starring role on the television series The Bill ; he portrayed " Scott Parry " in the episode , " In Safe Hands " . Boulter starred as " Scott " in the play Herons written by Simon Stephens , which was performed in 2001 at the Royal Court Theatre . A review of Boulter 's performance in The Independent on Sunday described him as " horribly menacing " in the role , and he received critical reviews in The Herald , and Evening Standard . He appeared in the television series Judge John Deed in 2002 as " Addem Armitage " in the episode " Political Expediency " , and had a role as a different character " Toby Steele " on The Bill . 
 He had a recurring role in 2003 on two episodes of The Bill , as character " Connor Price " . In 2004 Boulter landed a role as " Craig " in the episode " Teddy 's Story " of the television series The Long Firm ; he starred alongside actors Mark Strong and Derek Jacobi . Boulter starred as " Darren " , in the 2005 theatre productions of the Philip Ridley play Mercury Fur . It was performed at the Drum Theatre in Plymouth , and the Menier Chocolate Factory in London . He was directed by John Tiffany and starred alongside Ben Whishaw , Shane Zaza , Harry Kent , Fraser Ayres , Sophie Stanton and Dominic Hall . Boulter received a favorable review in The Daily Telegraph : " The acting is shatteringly intense , with wired performances from Ben Whishaw ( now unrecognisable from his performance as Trevor Nunn 's Hamlet ) , Robert Boulter , Shane Zaza and Fraser Ayres . " The Guardian noted , " Ben Whishaw and Robert Boulter offer tenderness amid the savagery . " 
 
 = = = 2006 – present = = = 
 
 In 2006 Boulter starred in the play Citizenship written by Mark Ravenhill . The play was part of a series which featured different playwrights , titled Burn / Chatroom / Citizenship . In a 2006 interview , fellow actor Ben Whishaw identified Boulter as one of his favorite co @-@ stars : " I loved working with a guy called Robert Boulter , who was in the triple bill of Burn , Chatroom and Citizenship at the National . He played my brother in Mercury Fur . " He portrayed " Jason Tyler " on the 2006 episode of the television series , Doctors , titled " Something I Ate " . Boulter starred as " William " in the 2007 production of How to Curse directed by Josie Rourke . How to Curse was performed at Bush Theatre in the London Borough of Hammersmith and Fulham . In a review of the production for The Daily Telegraph , theatre critic Charles Spencer noted , " Robert Boulter brings a touching vulnerability to the stage as William . " 
 Boulter starred in two films in 2008 , Daylight Robbery by filmmaker Paris Leonti , and Donkey Punch directed by Olly Blackburn . Boulter portrayed a character named " Sean " in Donkey Punch , who tags along with character " Josh " as the " quiet brother ... who hits it off with Tammi " . Boulter guest starred on a two @-@ part episode arc " Wounds " in May 2008 of the television series Waking the Dead as character " Jimmy Dearden " . He appeared on the television series Survivors as " Neil " in November 2008 . He had a recurring role in ten episodes of the television series Casualty in 2010 , as " Kieron Fletcher " . He portrayed an emergency physician applying for a medical fellowship . He commented on the inherent difficulties in portraying a physician on television : " Playing a doctor is a strange experience . Pretending you know what you 're talking about when you don 't is very bizarre but there are advisers on set who are fantastic at taking you through procedures and giving you the confidence to stand there and look like you know what you 're doing . " Boulter starred in the 2011 film Mercenaries directed by Paris Leonti . 
 
 = = Filmography = = 
 
 
 = = = Film = = = 
 
 
 = = = Television = = = 
 
 
 = = = Theatre = = = 
 

@lovit
Copy link
Member Author

lovit commented Aug 27, 2020

나무위키 데이터베이스의 라이센스입니다. 무상/영구적 사용이 가능합니다. wikitext 형식으로 재배포 가능합니다.

2. 저작권의 제한

본 이용허락의 어떠한 조항도 최초판매의 원칙을 비롯한, 저작권법 또는 기타 법률에 의하여 인정되는 저작권자의 배타적인 권리의 제한에 따르는 귀하의 이익을 축소 또는 제한하거나 금지하지 않습니다.

3. 이용허락

본 이용허락의 조건에 따라 이용허락자는, 다음과 같이 (저작권의 존속기간동안) 귀하가 저작물을 이용하도록, 저작물의 전세계적, 무상, 비배타적, 영구적인 이용을 허락합니다.

저작물의 복제, 편집저작물을 작성하거나 데이터베이스를 제작하기 위한 저작물의 이용, 편집저작물이나 데이터베이스에 포함되어 있는 저작물의 복제
2차적 저작물의 작성 및 복제
저작물(편집저작물 또는 데이터베이스에 포함된 저작물을 포함) 및 그 복제물의 배포, 전송, 전시, 공연 및 방송
2차적 저작물 및 그 복제물의 배포, 전송, 전시, 공연 및 방송
본 이용허락에 따라 저작물을 이용할 수 있는 권리는 현재 알려져 있거나 장래 개발되는 모든 매체 및 형식으로 행하여질 수 있습니다. 이러한 권리에는 저작물을 각기 다른 매체 및 형식으로 이용하기 위하여 기술적으로 수정하는 것도 포함됩니다. 이용허락자는 본 이용허락에 따른 저작물의 이용에 대하여 저작인격권을 행사하지 않습니다. 본 이용허락에 의하여 이용허락자가 명시적으로 허락하지 않는 저작물의 이용에 관한 권리는 이용허락자에게 유보됩니다.

LICENSE.txt

@lovit
Copy link
Member Author

lovit commented Aug 27, 2020

  • sample data 001/1.json
  • 원문
{
  "contributors": [
    "anatra95",
    "chkong1998",
    "huwieblusnow",
    "Iviyuki",
    "kirby10",
    "kiri47",
    "max0243",
    "namubot",
    "ruby3141",
    "1.229.200.194",
    "110.46.34.123",
    "121.165.63.239",
    "175.127.134.2",
    "218.54.117.149"
  ],
  "namespace": "0",
  "text": "[[분류:세계수의 미궁 시리즈]]\n\n[목차]\n\n'''{{{+1 !!ああっと!!}}}'''\n\n== 개요 ==\n[[파일:3444050440.jpg|width=60%]]\n▲[[신 세계수의 미궁 2 파프니르기사|신 세계수의 미궁 2]]에서 뜬 !!아앗!!\n\n[[세계수의 미궁 시리즈]]에 전통으로 등장하는 대사. [[세계수의 미궁 2 제왕의 성배|2편]]부터 등장했으며 훌륭한 [[사망 플래그]]의 예시이다.\n\n세계수의 모험가들이 탐험하는 던전인 수해의 구석구석에는 채취/벌채/채굴 포인트가 있으며, 이를 위한 채집 스킬에 투자하면 제한된 채집 기회에서 보다 큰 이득을 챙길 수 있다. 그러나 분배할 수 있는 스킬 포인트는 한정되어 있기 때문에 채집 스킬에 투자하는 만큼 전투 스킬 레벨은 낮아지게 된다.[* 다만 채집 시스템은 신 세계수 시리즈의 그리모어 복제, 복합 채집 스킬인 야생의 감, 5편의 종족 특유 스킬, 크로스의 1레벨이 만렙인 채집 스킬 등으로 편의성이 점차 나아져서 채집 스킬 때문에 스킬 트리가 내려가는 일은 점점 줄어들었다.] !!아앗!!이 발생하는 과정을 요약하면 다음과 같다.\n\n 1. 채집용 캐릭터들로 이루어진 약한 파티(ex: [[레인저(세계수의 미궁 2)|레인저]] 5명)가 수해에 입장한다.\n 1. 필드 전투를 피해 채집 포인트에 도착한 후 열심히 아이템을 캐는 중에...\n 1. '''!!아앗!!''' ~~라플레시아가 나타났다!~~\n 이때 등장하는 것은 [[FOE(세계수의 미궁 시리즈)|FOE]]는 아니지만 '''훨씬 위층에 등장하는 강력한 필드 몬스터이며 선제 공격을 당하게 된다!'''\n 1. '''으앙 죽음'''(hage)\n\n여담으로 !!아앗!!의 유래는 1인칭 던전 크롤러의 원조 [[위저드리]]에서 함정을 건드렸을 때 나오는 대사 Oops!(おおっと!)라고 한다.\n\n== 각 작품에서의 모습 ==\n=== [[세계수의 미궁 2 제왕의 성배]] ===\n!!아앗!!의 악랄함은 첫 등장한 작품이자 시리즈 중에서도 불친절하기로 정평이 난 2편이 절정이었다. 그야말로 위의 !!아앗!! 시퀀스 그대로, 묻지도 따지지도 않고 채집할 때마다 일정 확률로 '''강제로''' 전투에 돌입해야 했다. 게다가 이럴 때 쓰라고 있는 레인저의 스킬 '위험 감지(중간 확률로 적의 선제 공격을 무효화)'는 정작 작동하지 않는다!\n\n참고로 2편에서 채집 도중 !!아앗!!이 뜰 확률은 [[http://www.atlusnet.jp/topic/detail/910|고작 1%다.]] [[던파확률의 법칙|낮아 보이는 확률이어도 플레이 중 한 번이라도 일어나는 것]]을 경험하는 체감 확률을 고려하여 확률을 설정한다고.\n\n=== [[세계수의 미궁 3 성해의 내방자]] ===\n다행히 채집 중 낮은 확률로 \"좋은 아이템을 얻을 수 있을 것 같지만... 주변에서 몬스터들의 기척이 느껴진다.\"는 메시지가 뜨고 이때 운이 좋으면 레어 아이템을 얻을 수 있지만 반대의 경우 적과 싸우게 되는 것으로 조정되었다.\n\n=== [[세계수의 미궁 4 전승의 거신]] ===\n기본적인 것은 3편과 같지만, 4편에서는 움직이지 않고 채집할 때도 턴이 경과하도록 조정되었기 때문에 주변에 있는 FOE를 잊고 채집에 몰두하다가 FOE와 부딪히면 FOE 버전 !!아앗!!이 뜬다. 그리고 난이도 CASUAL로 플레이시, FOE로 인한 !!아앗!!을 제외하면 절대로 발생하지 않는다.\n\n=== [[신 세계수의 미궁 밀레니엄의 소녀|신 세계수의]] [[신 세계수의 미궁 2 파프니르기사|미궁 시리즈]] ===\n채집 방식이 한 턴으로 끝나는 구조[* 채집으로 한 번 아이템을 획득하면 \"다시, (채집 스킬)에 의해...\"가 뜨면서 한꺼번에 획득되는 구조.]로 바뀐 덕분인지 강제 조우로 다시 회귀해버렸다(...). 그나마 위험 감지 먹통과 같은 버그성 난점들은 수정되었다. 그 이후에 나온 [[세계수의 미궁 5 오랜 신화의 끝]]과 시리즈의 집대성 작품이자 3DS 마지막 작품인 [[세계수의 미궁 X]]도 마찬가지.\n\n=== [[페르소나 Q 섀도우 오브 더 래버린스]] ===\n세계수 시스템을 기반으로 한 [[페르소나 시리즈]]와의 콜라보 작품인 페르소나 Q에서도 등장한다. 3, 4편과 같이 파워 스폿에서 채집 도중 메시지가 뜨며, 실패하면 파티에 참가하고 있는 멤버 중 한 명의 [[http://nico.ms/sm25683358|!!아앗!! 하는 음성]] ~~또는 [[코로마루|개소리]]~~과 함께 그 던전의 '강적'인 거대 [[섀도(페르소나 시리즈)|섀도우]]가 나타난다.\n\n그러나 내비 전용 스킬인 뱀눈 노려보기(위험 감지와 같은 효과)와 채집 보조 스킬은 파티의 전투력에 전혀 지장을 주지 않으며, '대안심'을 달면 거의 볼 일이 없어져서 초중반 이후에는 존재감이 급격히 줄어든다.",
  "title": "!!아앗!!"
}

@lovit
Copy link
Member Author

lovit commented Aug 27, 2020

  • 링크는 [[, ]] 사이에 존재. | 뒤에가 텍스트
[[레인저(세계수의 미궁 2)|레인저]]
  • 이미지도 링크로 표현. 파일: 이 존재하면 완전 삭제해도 무방
[[파일:3444050440.jpg|width=60%]
  • ~~ 로 중앙 라인 표현
  • ''' 로 굵은 글씨체
  • [*, ] 는 footnote

@lovit lovit self-assigned this Aug 27, 2020
@lovit
Copy link
Member Author

lovit commented Aug 27, 2020

(WIP) 전처리 코드: 각 항목을 개별 문서로 분리

import json
import os
import numpy as np
from glob import glob
from tqdm import tqdm


def split_namuwiki(namuwiki_dump_path, data_root):
    with open(namuwiki_dump_path, 'rb') as f:
        namuwiki = json.load(f)

    print(len(namuwiki))  # 752884

    def get_path(index): 
        suffix = '{:07}'.format(index)[-3:] 
        path = f'{data_root}/{suffix}/{index}.json'
        return path

    def check_dir(path):
        dirname = os.path.abspath(os.path.dirname(path))
        if not os.path.exists(dirname):
            os.makedirs(dirname)

    iterator = tqdm(namuwiki, desc='split namuwiki')
    for index, item in enumerate(iterator):
        path = get_path(index)
        check_dir(path)
        with open(path, 'w', encoding='utf-8') as f:
            json.dump(item, f, ensure_ascii=False, indent=2, sort_keys=True)


def to_wikitext(data_root, wikitext_path, num_samples, random_seed):
    paths = sorted(glob(f'{data_root}/*/*.json'))
    n = len(paths)
    np.random.seed(random_seed)
    indices = np.random.permutation(n)[:num_samples]
    paths = [paths[i] for i in indices]
    raise NotImplementedError('text parser 가 필요합니다.')


namuwiki_dump_path = 'namuwiki200302.json'
data_root = 'path/to/namuwiki/data/'

@lovit
Copy link
Member Author

lovit commented Aug 29, 2020

class NamuwikitextData(KorpusData):
    titles : List[str]

    def __init__(self, texts, titles):
        if len(texts) != len(titles):
            raise ValueError('`texts` and `titles` must be same length')
        self.texts = texts  # including '\n' in a text
        self.titles = titles

@lovit
Copy link
Member Author

lovit commented Sep 5, 2020

전처리 코드: JSON 에서 wikitext 형식으로 데이터 가져오기

import re

def split(s, begin_marker, end_marker):
    b = s.index(begin_marker)
    e = s.index(end_marker, b)
    prefix = s[:b]
    suffix = s[e + len(end_marker):]
    sub = s[b + len(begin_marker) : e]
    return prefix, sub, suffix


def detach_links(s):
    while '[[' in s and ']]' in s:
        prefix, sub, suffix = split(s, '[[', ']]')
        if sub[:2] == '파일':
            sub = ''
        if '|' in sub:
            sub = sub.split('|', 1)[-1]
        s = f'{prefix}{sub}{suffix}'
    return s


def detach_markers(s, begin_marker, end_marker):
    while (begin_marker in s) and (end_marker in s):
        prefix, sub, suffix = split(s, begin_marker, end_marker)
        s = f'{prefix}{sub}{suffix}'
    return s


def space_markers(s, begin_marker, end_marker):
    s = s.replace(begin_marker, f' {begin_marker} ')
    s = s.replace(end_marker, f' {end_marker} ')
    return s


def space_header(s):
    s = s.strip()
    if not s:
        return s
    if s[0] == '=' and s[-1] == '=':
        s = f"\n{s.replace('=', ' =')}\n"
    return s


def normalize(s):
    s = detach_links(s)
    s = detach_markers(s, '{{{', '}}}')
    s = detach_markers(s, "'''", "'''")
    s = detach_markers(s, '[*', ']')
    s = detach_markers(s, '~~', '~~')
    s = space_markers(s, '(', ')')
    s = space_header(s)
    return s

def get_wikitext_from(json_data):
    title = json_data['title']
    text = json_data['text']
    if '==' not in text:
        return ''
    text = text[text.index('=='):]
    text = '\n'.join(normalize(line) for line in text.split('\n'))
    wikitext = f' = {title} =\n\n{text}'
    return wikitext

(sample) 001/1.json

{'contributors': ['anatra95',
  'chkong1998',
  'huwieblusnow',
  'Iviyuki',
  'kirby10',
  'kiri47',
  'max0243',
  'namubot',
  'ruby3141',
  '1.229.200.194',
  '110.46.34.123',
  '121.165.63.239',
  '175.127.134.2',
  '218.54.117.149'],
 'namespace': '0',
 'text': '[[분류:세계수의 미궁 시리즈]]\n\n[목차]\n\n\'\'\'{{{+1 !!ああっと!!}}}\'\'\'\n\n== 개요 ==\n[[파일:3444050440.jpg|width=60%]]\n▲[[신 세계수의 미궁 2 파프니르기사|신 세계수의 미궁 2]]에서 뜬 !!아앗!!\n\n[[세계수의 미궁 시리즈]]에 전통으로 등장하는 대사. [[세계수의 미궁 2 제왕의 성배|2편]]부터 등장했으며 훌륭한 [[사망 플래그]]의 예시이다.\n\n세계수의 모험가들이 탐험하는 던전인 수해의 구석구석에는 채취/벌채/채굴 포인트가 있으며, 이를 위한 채집 스킬에 투자하면 제한된 채집 기회에서 보다 큰 이득을 챙길 수 있다. 그러나 분배할 수 있는 스킬 포인트는 한정되어 있기 때문에 채집 스킬에 투자하는 만큼 전투 스킬 레벨은 낮아지게 된다.[* 다만 채집 시스템은 신 세계수 시리즈의 그리모어 복제, 복합 채집 스킬인 야생의 감, 5편의 종족 특유 스킬, 크로스의 1레벨이 만렙인 채집 스킬 등으로 편의성이 점차 나아져서 채집 스킬 때문에 스킬 트리가 내려가는 일은 점점 줄어들었다.] !!아앗!!이 발생하는 과정을 요약하면 다음과 같다.\n\n 1. 채집용 캐릭터들로 이루어진 약한 파티(ex: [[레인저(세계수의 미궁 2)|레인저]] 5명)가 수해에 입장한다.\n 1. 필드 전투를 피해 채집 포인트에 도착한 후 열심히 아이템을 캐는 중에...\n 1. \'\'\'!!아앗!!\'\'\' ~~라플레시아가 나타났다!~~\n 이때 등장하는 것은 [[FOE(세계수의 미궁 시리즈)|FOE]]는 아니지만 \'\'\'훨씬 위층에 등장하는 강력한 필드 몬스터이며 선제 공격을 당하게 된다!\'\'\'\n 1. \'\'\'으앙 죽음\'\'\'(hage)\n\n여담으로 !!아앗!!의 유래는 1인칭 던전 크롤러의 원조 [[위저드리]]에서 함정을 건드렸을 때 나오는 대사 Oops!(おおっと!)라고 한다.\n\n== 각 작품에서의 모습 ==\n=== [[세계수의 미궁 2 제왕의 성배]] ===\n!!아앗!!의 악랄함은 첫 등장한 작품이자 시리즈 중에서도 불친절하기로 정평이 난 2편이 절정이었다. 그야말로 위의 !!아앗!! 시퀀스 그대로, 묻지도 따지지도 않고 채집할 때마다 일정 확률로 \'\'\'강제로\'\'\' 전투에 돌입해야 했다. 게다가 이럴 때 쓰라고 있는 레인저의 스킬 \'위험 감지(중간 확률로 적의 선제 공격을 무효화)\'는 정작 작동하지 않는다!\n\n참고로 2편에서 채집 도중 !!아앗!!이 뜰 확률은 [[http://www.atlusnet.jp/topic/detail/910|고작 1%다.]] [[던파확률의 법칙|낮아 보이는 확률이어도 플레이 중 한 번이라도 일어나는 것]]을 경험하는 체감 확률을 고려하여 확률을 설정한다고.\n\n=== [[세계수의 미궁 3 성해의 내방자]] ===\n다행히 채집 중 낮은 확률로 "좋은 아이템을 얻을 수 있을 것 같지만... 주변에서 몬스터들의 기척이 느껴진다."는 메시지가 뜨고 이때 운이 좋으면 레어 아이템을 얻을 수 있지만 반대의 경우 적과 싸우게 되는 것으로 조정되었다.\n\n=== [[세계수의 미궁 4 전승의 거신]] ===\n기본적인 것은 3편과 같지만, 4편에서는 움직이지 않고 채집할 때도 턴이 경과하도록 조정되었기 때문에 주변에 있는 FOE를 잊고 채집에 몰두하다가 FOE와 부딪히면 FOE 버전 !!아앗!!이 뜬다. 그리고 난이도 CASUAL로 플레이시, FOE로 인한 !!아앗!!을 제외하면 절대로 발생하지 않는다.\n\n=== [[신 세계수의 미궁 밀레니엄의 소녀|신 세계수의]] [[신 세계수의 미궁 2 파프니르기사|미궁 시리즈]] ===\n채집 방식이 한 턴으로 끝나는 구조[* 채집으로 한 번 아이템을 획득하면 "다시, (채집 스킬)에 의해..."가 뜨면서 한꺼번에 획득되는 구조.]로 바뀐 덕분인지 강제 조우로 다시 회귀해버렸다(...). 그나마 위험 감지 먹통과 같은 버그성 난점들은 수정되었다. 그 이후에 나온 [[세계수의 미궁 5 오랜 신화의 끝]]과 시리즈의 집대성 작품이자 3DS 마지막 작품인 [[세계수의 미궁 X]]도 마찬가지.\n\n=== [[페르소나 Q 섀도우 오브 더 래버린스]] ===\n세계수 시스템을 기반으로 한 [[페르소나 시리즈]]와의 콜라보 작품인 페르소나 Q에서도 등장한다. 3, 4편과 같이 파워 스폿에서 채집 도중 메시지가 뜨며, 실패하면 파티에 참가하고 있는 멤버 중 한 명의 [[http://nico.ms/sm25683358|!!아앗!! 하는 음성]] ~~또는 [[코로마루|개소리]]~~과 함께 그 던전의 \'강적\'인 거대 [[섀도(페르소나 시리즈)|섀도우]]가 나타난다.\n\n그러나 내비 전용 스킬인 뱀눈 노려보기(위험 감지와 같은 효과)와 채집 보조 스킬은 파티의 전투력에 전혀 지장을 주지 않으며, \'대안심\'을 달면 거의 볼 일이 없어져서 초중반 이후에는 존재감이 급격히 줄어든다.',
 'title': '!!아앗!!'}

(wikitext)

 = !!아앗!! =


 = = 개요  = =


▲신 세계수의 미궁 2에서 뜬 !!아앗!!

세계수의 미궁 시리즈에 전통으로 등장하는 대사. 2편부터 등장했으며 훌륭한 사망 플래그의 예시이다.

세계수의 모험가들이 탐험하는 던전인 수해의 구석구석에는 채취/벌채/채굴 포인트가 있으며, 이를 위한 채집 스킬에 투자하면 제한된 채집 기회에서 보다 큰 이득을 챙길 수 있다. 그러나 분배할 수 있는 스킬 포인트는 한정되어 있기 때문에 채집 스킬에 투자하는 만큼 전투 스킬 레벨은 낮아지게 된다. 다만 채집 시스템은 신 세계수 시리즈의 그리모어 복제, 복합 채집 스킬인 야생의 감, 5편의 종족 특유 스킬, 크로스의 1레벨이 만렙인 채집 스킬 등으로 편의성이 점차 나아져서 채집 스킬 때문에 스킬 트리가 내려가는 일은 점점 줄어들었다. !!아앗!!이 발생하는 과정을 요약하면 다음과 같다.

1. 채집용 캐릭터들로 이루어진 약한 파티 ( ex: 레인저 5명 ) 가 수해에 입장한다.
1. 필드 전투를 피해 채집 포인트에 도착한 후 열심히 아이템을 캐는 중에...
1. !!아앗!! 라플레시아가 나타났다!
이때 등장하는 것은 FOE는 아니지만 훨씬 위층에 등장하는 강력한 필드 몬스터이며 선제 공격을 당하게 된다!
1. 으앙 죽음 ( hage )

여담으로 !!아앗!!의 유래는 1인칭 던전 크롤러의 원조 위저드리에서 함정을 건드렸을 때 나오는 대사 Oops! ( おおっと! ) 라고 한다.


 = = 각 작품에서의 모습  = =


 = = = 세계수의 미궁 2 제왕의 성배  = = =

!!아앗!!의 악랄함은 첫 등장한 작품이자 시리즈 중에서도 불친절하기로 정평이 난 2편이 절정이었다. 그야말로 위의 !!아앗!! 시퀀스 그대로, 묻지도 따지지도 않고 채집할 때마다 일정 확률로 강제로 전투에 돌입해야 했다. 게다가 이럴 때 쓰라고 있는 레인저의 스킬 '위험 감지 ( 중간 확률로 적의 선제 공격을 무효화 ) '는 정작 작동하지 않는다!

참고로 2편에서 채집 도중 !!아앗!!이 뜰 확률은 고작 1%다. 낮아 보이는 확률이어도 플레이 중 한 번이라도 일어나는 것을 경험하는 체감 확률을 고려하여 확률을 설정한다고.


 = = = 세계수의 미궁 3 성해의 내방자  = = =

다행히 채집 중 낮은 확률로 "좋은 아이템을 얻을 수 있을 것 같지만... 주변에서 몬스터들의 기척이 느껴진다."는 메시지가 뜨고 이때 운이 좋으면 레어 아이템을 얻을 수 있지만 반대의 경우 적과 싸우게 되는 것으로 조정되었다.


 = = = 세계수의 미궁 4 전승의 거신  = = =

기본적인 것은 3편과 같지만, 4편에서는 움직이지 않고 채집할 때도 턴이 경과하도록 조정되었기 때문에 주변에 있는 FOE를 잊고 채집에 몰두하다가 FOE와 부딪히면 FOE 버전 !!아앗!!이 뜬다. 그리고 난이도 CASUAL로 플레이시, FOE로 인한 !!아앗!!을 제외하면 절대로 발생하지 않는다.


 = = = 신 세계수의 미궁 시리즈  = = =

채집 방식이 한 턴으로 끝나는 구조 채집으로 한 번 아이템을 획득하면 "다시,  ( 채집 스킬 ) 에 의해..."가 뜨면서 한꺼번에 획득되는 구조.로 바뀐 덕분인지 강제 조우로 다시 회귀해버렸다 ( ... ) . 그나마 위험 감지 먹통과 같은 버그성 난점들은 수정되었다. 그 이후에 나온 세계수의 미궁 5 오랜 신화의 끝과 시리즈의 집대성 작품이자 3DS 마지막 작품인 세계수의 미궁 X도 마찬가지.


 = = = 페르소나 Q 섀도우 오브 더 래버린스  = = =

세계수 시스템을 기반으로 한 페르소나 시리즈와의 콜라보 작품인 페르소나 Q에서도 등장한다. 3, 4편과 같이 파워 스폿에서 채집 도중 메시지가 뜨며, 실패하면 파티에 참가하고 있는 멤버 중 한 명의 !!아앗!! 하는 음성 또는 개소리과 함께 그 던전의 '강적'인 거대 섀도우가 나타난다.

그러나 내비 전용 스킬인 뱀눈 노려보기 ( 위험 감지와 같은 효과 ) 와 채집 보조 스킬은 파티의 전투력에 전혀 지장을 주지 않으며, '대안심'을 달면 거의 볼 일이 없어져서 초중반 이후에는 존재감이 급격히 줄어든다.

@lovit
Copy link
Member Author

lovit commented Sep 6, 2020

현재 작업중인 namuwikitext 의 샘플입니다. @ratsgo @hungry-wook

wikitext_sample.txt

@lovit
Copy link
Member Author

lovit commented Sep 6, 2020

몇 가지 수정된 namuwikitext 샘플입니다. 제거하다 남았던 markup language 부분들을 제거했습니다. @ratsgo @hungry-wook

wikitext_sample.txt

@lovit
Copy link
Member Author

lovit commented Sep 6, 2020

아래의 repository 에 namuwikitext corpus 를 오픈했습니다.

https://github.com/lovit/namuwikitext

Korpora 에서 사용할 수 있도록 개발이 완료되면 Korpora 연동 이슈를 마무리할 예정입니다.

ratsgo added a commit that referenced this issue Sep 7, 2020
@lovit
Copy link
Member Author

lovit commented Sep 7, 2020

@ratsgo Github release 에 파일을 올릴 수가 있습니다. 이를 통하여 namuwikitext repo 에서는 aws 에서 github release download 로 링크를 수정하였습니다. Korpora 는 내일 작업하겠습니다.

관련 커밋: https://github.com/lovit/namuwikitext/blob/master/namuwikitext/utils.py#L24

lovit pushed a commit that referenced this issue Sep 8, 2020
lovit added a commit that referenced this issue Sep 8, 2020
lovit added a commit that referenced this issue Sep 8, 2020
@lovit lovit mentioned this issue Sep 8, 2020
3 tasks
ratsgo added a commit that referenced this issue Sep 8, 2020
@lovit lovit closed this as completed Sep 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant